/* Homepage experience layer, 2026-10-29. Scoped to the homepage.
   Leaves the canonical shared header, 250 Side bodies and generated domain index intact. */
body.ss-experience{background:#f1eee6;color:#1d2f27}
.ss-experience #portfolio-main{overflow:clip}
.ss-experience .ss-exp-hero,.ss-experience .ss-exp-journeys,.ss-experience .ss-exp-connection{isolation:isolate}
.ss-experience .ss-exp-shell{max-width:1320px;width:calc(100% - 96px);margin:0 auto}
.ss-experience :is(.ss-exp-hero,.ss-exp-journeys,.ss-exp-connection) :is(h1,h2,h3,p){margin:0}
.ss-experience :is(.ss-exp-hero,.ss-exp-journeys,.ss-exp-connection) a:focus-visible,
.ss-experience :is(.ss-exp-hero,.ss-exp-journeys,.ss-exp-connection) :is(input,button):focus-visible{outline:3px solid #e79262;outline-offset:4px}
.ss-experience :is(.ss-exp-hero,.ss-exp-journeys,.ss-exp-connection) a{color:inherit}
.ss-exp-eyebrow,.ss-exp-section-kicker{font:800 11px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.14em}
.ss-exp-hero{background:radial-gradient(ellipse 50% 95% at 30% 0%,#264438 0%,transparent 95%),#142d25;color:#f2efe5;padding:var(--ss-header-to-hero-gap,72px) 0 34px}
.ss-exp-hero-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(350px,.84fr);gap:clamp(30px,5vw,74px);align-items:start}
.ss-exp-intro{padding-top:3px;min-width:0}
.ss-exp-eyebrow{color:#c5c7ab!important;margin-bottom:22px!important}
.ss-exp-intro h1{font:400 clamp(56px,6.5vw,94px)/.99 var(--serif);letter-spacing:-.064em;max-width:860px;overflow-wrap:break-word}
.ss-exp-intro h1 em,.ss-exp-section-heading h2 em,.ss-exp-connection h2 em{font-weight:400;color:#dba98a;font-style:italic}
.ss-exp-intro h1 em{white-space:nowrap}
.ss-exp-lead{max-width:650px;color:#d2dfd5;font:400 clamp(16px,1.35vw,19px)/1.57 var(--sans);margin-top:25px!important}
.ss-exp-context{display:flex;align-items:center;gap:11px 14px;flex-wrap:wrap;margin-top:32px!important;color:#a6c1af;font:700 11px/1.5 var(--sans)}
.ss-exp-separator{width:5px;height:5px;border-radius:50%;background:#cb9874;flex:none}
.ss-exp-search-card{background:#e4ecdf;color:#1e3c2a;border:1px solid #b6c9b8;border-radius:8px;padding:clamp(21px,2.55vw,35px);box-shadow:15px 15px 0 rgba(8,24,17,.16);min-width:0}
.ss-exp-search-top{display:flex;justify-content:space-between;gap:15px;align-items:center;font:800 10px/1.5 var(--sans);letter-spacing:.13em;color:#58755e}
.ss-exp-search-top span:last-child{font-size:19px;font-weight:400}
.ss-exp-search-card h2{font:400 clamp(36px,3.45vw,52px)/1.03 var(--serif);letter-spacing:-.05em;margin-top:24px!important}
.ss-exp-search-card>p{color:#536a58;font:400 14px/1.5 var(--sans);margin-top:13px!important;max-width:43ch}
.ss-exp-search-form{margin-top:26px}
.ss-exp-search-form label{display:block;font:750 12px/1.4 var(--sans);margin-bottom:9px;color:#254837}
.ss-exp-search-line{display:flex;min-height:55px;background:#fff;border:1px solid #a2b5a1;border-radius:5px;overflow:hidden;transition:box-shadow .2s,border-color .2s}
.ss-exp-search-line:focus-within{border-color:#396a49;box-shadow:0 0 0 3px #a1bca7}
.ss-exp-search-line input{flex:1;min-width:0;min-height:53px;outline:none;border:none;background:#fff;padding:12px 13px;font:400 14px/1.4 var(--sans);color:#21352a}
.ss-exp-search-line input::placeholder{color:#6b7c6f}
.ss-exp-search-line input:focus-visible{outline:3px solid #e79262;outline-offset:-3px}
.ss-exp-search-line button{border:0;border-left:1px solid #274a35;min-width:84px;padding:0 14px;display:flex;align-items:center;justify-content:center;gap:13px;background:#254934;color:#fff;font:750 13px/1 var(--sans);cursor:pointer}
.ss-exp-search-line button:hover{background:#397251}
.ss-exp-search-status{font:500 13px/1.5 var(--sans);color:#355740;margin-top:13px!important}
.ss-exp-search-status[hidden],.ss-exp-search-results[hidden]{display:none!important}
.ss-exp-search-results{list-style:none;margin:10px 0 0;padding:0;border:1px solid #b4c9b5;background:#f9fbf5;border-radius:5px;max-height:310px;overflow-y:auto}
.ss-exp-search-results li+li{border-top:1px solid #dce5d9}
.ss-exp-search-results a{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:12px 13px;text-decoration:none}
.ss-exp-search-results a:hover,.ss-exp-search-results a:focus-visible{background:#e5f0e3}
.ss-exp-result-main{display:flex;flex-direction:column;gap:3px}
.ss-exp-result-main strong{font-size:14px;font-weight:750;color:#203c2a}
.ss-exp-result-main small{font-size:12px;line-height:1.4;color:#5c6e5e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ss-exp-result-arrow{font-size:15px;color:#4c6c53}
.ss-exp-examples{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;align-items:center}
.ss-exp-examples>span{flex-basis:100%;font:800 10px/1.5 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:#667d6b}
.ss-exp-examples a{display:inline-flex;padding:8px 9px;border:1px solid #bdcebb;border-radius:4px;background:#f8faf5;text-decoration:none;font:650 11px/1.2 var(--sans)}
.ss-exp-examples a:hover{background:#fff;border-color:#91af94}
.ss-exp-search-all{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:17px;margin-top:23px;border-top:1px solid #b6c8b5;text-decoration:none;font:750 12px/1.3 var(--sans)}
.ss-exp-search-all:hover{color:#b15a39!important}
.ss-exp-side-entrances{display:grid;grid-template-columns:1fr 1fr;margin-top:38px;border-top:1px solid #53705f;border-bottom:1px solid #53705f}
.ss-exp-side-entrance{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:clamp(12px,2vw,28px);padding:22px 22px 22px 0;text-decoration:none;min-width:0;transition:background-color .2s}
.ss-exp-side-entrance+.ss-exp-side-entrance{border-left:1px solid #53705f;padding-left:26px}
.ss-exp-side-entrance:hover{background:rgba(255,255,255,.045)}
.ss-exp-entrance-number{white-space:nowrap;font:750 10px/1.7 var(--sans);letter-spacing:.1em;color:#c5be9b}
.ss-exp-entrance-main{display:flex;flex-direction:column;gap:6px;min-width:0}
.ss-exp-entrance-main strong{font:400 clamp(20px,1.95vw,27px)/1.15 var(--serif);letter-spacing:-.035em;color:#f3f1e8}
.ss-exp-entrance-main>span{font:400 12px/1.5 var(--sans);color:#bfcfc2}
.ss-exp-entrance-arrow{font-size:20px;color:#c9ad84}
.ss-exp-journeys{padding:90px 0 100px;background:#f1eee6;color:#1d3027}
.ss-exp-section-heading{display:grid;grid-template-columns:1.2fr .75fr;column-gap:75px;row-gap:20px;align-items:end;margin-bottom:44px}
.ss-exp-section-heading .ss-exp-section-kicker{grid-column:1/-1;margin-bottom:0!important;color:#955945}
.ss-exp-section-heading h2,.ss-exp-connection h2{font:400 clamp(45px,4.8vw,73px)/1.045 var(--serif);letter-spacing:-.055em}
.ss-exp-section-heading h2 em{color:#af6347}
.ss-exp-section-heading>p:last-child{font:400 16px/1.6 var(--sans);color:#59685f;max-width:430px}
.ss-exp-journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ss-exp-journey{display:flex;flex-direction:column;min-width:0;background:#e1e8de;padding:28px 29px 31px;border:1px solid #c7d4c6;min-height:390px}
.ss-exp-journey-contribute{background:#eae5da;border-color:#d3cbba}
.ss-exp-journey-apply{background:#e2e3d9;border-color:#cbcfc2}
.ss-exp-journey-index{font:800 10px/1.5 var(--sans);color:#63785c;letter-spacing:.13em}
.ss-exp-journey-mark{font:400 clamp(58px,6.5vw,94px)/1 var(--serif);letter-spacing:-.09em;color:#74967a;margin:28px 0 23px;position:relative;display:flex;align-items:center;gap:14px}
.ss-exp-journey-contribute .ss-exp-journey-mark{color:#b57d68;font-style:italic}
.ss-exp-journey-apply .ss-exp-journey-mark{color:#537a67}
.ss-exp-journey-mark span{font-size:25px;letter-spacing:0;align-self:flex-start;padding-top:13px;color:#9da995}
.ss-exp-journey h3{font:400 clamp(27px,3vw,37px)/1.08 var(--serif);letter-spacing:-.04em;color:#1d3829;margin-bottom:12px!important}
.ss-exp-journey>p{font:400 14px/1.58 var(--sans);color:#4d6152;margin-bottom:24px!important}
.ss-exp-journey>a{margin-top:auto;border-top:1px solid #b2c0ae;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:15px;font:750 13px/1.4 var(--sans);text-decoration:none}
.ss-exp-journey>a:hover{color:#9c503a}
.ss-exp-connection{background:#dfe7dd;color:#223a2d;padding:91px 0 97px}
.ss-exp-connection-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(48px,8vw,120px);align-items:start}
.ss-exp-connection-intro .ss-exp-section-kicker{color:#8f5d45;margin-bottom:26px!important}
.ss-exp-connection h2 em{color:#af6347}
.ss-exp-connection-intro>p:not(.ss-exp-section-kicker){font:400 16px/1.72 var(--sans);max-width:530px;color:#52675a;margin-top:25px!important}
.ss-exp-connection-intro>a{display:inline-flex;gap:45px;align-items:center;border-bottom:1px solid #678577;text-decoration:none;font:750 13px/1.3 var(--sans);margin-top:27px;padding-bottom:8px}
.ss-exp-connection-intro>a:hover{color:#a45c42}
.ss-exp-connection-paths{border-top:1px solid #9cad99}
.ss-exp-connection-path{display:grid;grid-template-columns:1fr auto;gap:8px 20px;border-bottom:1px solid #9cad99;padding:24px 8px 25px;text-decoration:none}
.ss-exp-connection-path:hover{background:#d2decf}
.ss-exp-connection-path>span{grid-column:1/-1;font:800 10px/1.5 var(--sans);color:#84745b;letter-spacing:.12em}
.ss-exp-connection-path strong{font:400 26px/1.13 var(--serif);letter-spacing:-.035em;color:#244430}
.ss-exp-connection-path small{grid-column:1;font:400 13px/1.5 var(--sans);color:#5b7060}
.ss-exp-connection-path b{grid-column:2;grid-row:2/4;font:400 21px/1 var(--sans);color:#4e7556}
.ss-experience .atlas-entry{scroll-margin-top:14px;background:#17372c;color:#f2efe5}
.ss-experience .atlas-entry-head{color:#c4cbbf}
.ss-experience .domain-gate-meta small{color:#bfcfc2}
.ss-experience .atlas-index{background:#f1eee6}
@media(max-width:1150px){
 .ss-experience .ss-exp-shell{width:calc(100% - 56px)}
 .ss-exp-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:32px}
 .ss-exp-intro h1{font-size:clamp(53px,6.3vw,75px)}
 .ss-exp-side-entrance{grid-template-columns:1fr auto;gap:9px}
 .ss-exp-entrance-number{grid-column:1/-1}
 .ss-exp-entrance-main{grid-row:2}
 .ss-exp-entrance-arrow{grid-column:2;grid-row:2}
 .ss-exp-section-heading{gap:25px}
 .ss-exp-journey{padding:22px}
}
@media(max-width:850px){
 .ss-experience .ss-exp-shell{width:calc(100% - 38px)}
 .ss-exp-hero{padding-top:var(--ss-header-to-hero-gap-mobile,48px)}
 .ss-exp-hero-grid{grid-template-columns:1fr;gap:27px}
 .ss-exp-intro h1{max-width:760px;font-size:clamp(51px,8.7vw,76px)}
 .ss-exp-lead{max-width:700px}
 .ss-exp-context{margin-top:19px!important}
 .ss-exp-search-card{max-width:none;box-shadow:none}
 .ss-exp-search-card h2{margin-top:15px!important}
 .ss-exp-search-form{margin-top:17px}
 .ss-exp-side-entrances{margin-top:26px}
 .ss-exp-journeys,.ss-exp-connection{padding:68px 0}
 .ss-exp-section-heading,.ss-exp-connection-grid{grid-template-columns:1fr;gap:20px}
 .ss-exp-section-heading>p:last-child{max-width:620px}
 .ss-exp-journey-grid{gap:10px}
 .ss-exp-journey{min-height:355px;padding:18px}
 .ss-exp-journey-mark{font-size:62px}
 .ss-exp-journey h3{font-size:27px}
 .ss-exp-connection-grid{gap:32px}
}
@media(max-width:620px){
 .ss-exp-intro h1{font-size:clamp(36px,9vw,55px);line-height:1.06}
 .ss-exp-lead{font-size:15px;margin-top:16px!important}
 .ss-exp-hero{padding-bottom:24px}
 .ss-exp-search-card{padding:20px 19px}
 .ss-exp-search-card h2{font-size:38px}
 .ss-exp-search-card>p{font-size:13px}
 .ss-exp-search-line input{font-size:16px}
 .ss-exp-search-line button{min-width:74px;padding-inline:10px}
 .ss-exp-side-entrances{display:flex;flex-direction:column;margin-top:20px}
 .ss-exp-side-entrance,.ss-exp-side-entrance+.ss-exp-side-entrance{padding:15px 4px;border-left:none}
 .ss-exp-side-entrance+.ss-exp-side-entrance{border-top:1px solid #53705f}
 .ss-exp-entrance-number{font-size:10px}
 .ss-exp-entrance-main strong{font-size:23px}
 .ss-exp-journey-grid{grid-template-columns:1fr;gap:10px}
 .ss-exp-journey{min-height:0;padding:22px}
 .ss-exp-journey-mark{margin:13px 0 11px;font-size:55px}
 .ss-exp-journey>a{margin-top:19px}
 .ss-exp-section-heading h2,.ss-exp-connection h2{font-size:clamp(39px,9.3vw,58px)}
 .ss-exp-context{gap:6px 10px;font-size:10px}
 .ss-exp-connection-path strong{font-size:24px}
}
@media(max-width:360px){
 .ss-exp-intro h1{font-size:34px}
 .ss-exp-search-line input{padding-inline:9px;font-size:16px}
 .ss-exp-search-line button{min-width:66px;gap:6px;font-size:12px}
 .ss-exp-entrance-main strong{font-size:21px}
 .ss-exp-examples a{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 .ss-exp-side-entrance,.ss-exp-search-line{transition:none}
}
