/* Cinematic, real-time second brain. The poster is always the fallback. */
.hero-experience{position:relative;isolation:isolate;min-height:820px;height:calc(100svh - var(--bar-h));max-height:1100px;overflow:hidden;background:#e6e8e3;color:#17271d}
.experience-media{position:absolute;inset:0;z-index:-2}
.experience-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.experience-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:0;transition:opacity .6s}
.hero-experience[data-render="ready"] .experience-canvas{opacity:1}
.scene-readability{position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#f1f0e654,transparent 54%),linear-gradient(0deg,#152c226e,transparent 24%)}
.experience-copy{position:absolute;top:clamp(65px,9vh,110px);left:0;right:0;z-index:3;pointer-events:none}
.experience-copy>*{pointer-events:auto}
.experience-category{font:500 .75rem var(--mono);letter-spacing:.035em;text-transform:uppercase;color:#334c3d;margin-bottom:25px;max-width:45ch}
.experience-copy h1{font-family:var(--poster);font-stretch:85%;font-weight:780;text-transform:uppercase;letter-spacing:-.025em;font-size:clamp(4rem,6.1vw,6.4rem);line-height:.93;margin:0;width:56%;text-wrap:balance;color:#17241c;text-shadow:0 0 30px #f3f0e366}
.experience-lede{font:400 clamp(1rem,1.4vw,1.25rem)/1.45 var(--sans);max-width:36ch;margin-top:28px;color:#243c2c;text-shadow:0 0 12px #f6f1e9,0 0 3px #f6f1e9}
.experience-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px;max-width:520px}
.experience-primary{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:14px 20px;background:#1c3026;color:#f3f6ec;border:1px solid #334a3e;border-radius:5px;font:500 .84rem var(--sans);box-shadow:inset 0 1px 0 #ffffff1a,0 10px 24px #20362616;transition:transform .25s,background .25s;text-decoration:none}
.experience-primary:hover{background:#2e4838;transform:translateY(-2px)}
.experience-secondary{font:500 .77rem var(--sans);color:#203a2a;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#6d8067;text-shadow:0 0 7px #f6f1e9}
.scene-manipulator{position:absolute;z-index:2;left:48%;right:0;top:7%;bottom:23%;cursor:grab;touch-action:pan-y;outline:none;border-radius:30px}
.scene-manipulator.is-dragging{cursor:grabbing}
.scene-manipulator:focus-visible{outline:1px solid #edf3dbb3;outline-offset:-18px}
.scene-gesture{position:absolute;left:50%;bottom:0;transform:translateX(-50%);font:.62rem var(--mono);white-space:nowrap;color:#e8f1de;text-shadow:0 2px 7px #163329;background:#23392a66;border:1px solid #ffffff38;border-radius:30px;padding:7px 11px;backdrop-filter:blur(10px)}
.scene-result{position:absolute;left:40px;bottom:145px;width:calc(48% - 40px);max-width:570px;z-index:3;border-left:1px solid #f1fae680;padding:10px 12px 10px 18px;color:#f1f7e9;background:linear-gradient(90deg,#253e2d7d,#253e2d08);border-radius:0 12px 12px 0;text-shadow:0 1px 8px #1b3026}
.scene-result-kicker{font:.61rem var(--mono);display:block;color:#e3efd9;margin-bottom:7px}
.scene-result strong{display:block;font:500 1.04rem/1.3 var(--sans);max-width:28ch}
.scene-result p{font:.73rem/1.45 var(--sans);margin-top:6px;max-width:65ch;color:#e3ecd9}
.scene-story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;margin-top:13px;padding-top:11px;border-top:1px solid #eaf5dc33}
.scene-story li{font:.64rem/1.35 var(--sans);color:#d7e4d1;opacity:.65}
.scene-story b{display:block;font:400 .52rem var(--mono);margin-bottom:4px;color:#e7f5d5}
.scene-story li.is-current,.scene-story li.is-done{opacity:1}
.scene-story li.is-current b{color:#f9f5c5}
.scene-gesture{top:6px;bottom:auto}
.scene-console{position:absolute;bottom:60px;left:0;right:0;z-index:4;display:flex;align-items:center;gap:28px}
.scene-modes{display:flex;gap:4px;border:1px solid #ffffff59;border-radius:40px;background:#eef6e63d;box-shadow:inset 0 1px 0 #ffffff80;backdrop-filter:blur(18px);padding:5px;flex:none}
.scene-modes button{padding:10px 15px;min-height:42px;border-radius:30px;background:transparent;border:0;color:#eff8e9;font:500 .73rem var(--sans);cursor:pointer;text-shadow:0 1px 4px #15302166}
.scene-modes button[aria-pressed="true"]{color:#294331;text-shadow:none;background:linear-gradient(160deg,#fffffff5,#e8f0e5e6);box-shadow:0 3px 8px #1a321b26,inset 0 1px 0 white}
.scene-modes{position:absolute;right:40px;top:110px;z-index:4;max-width:48%;background:#f2f6ed73;flex-wrap:wrap;justify-content:center}
.scene-modes button{color:#344e3b;text-shadow:none}
.scene-assembly{flex:1;max-width:310px;margin-left:auto}
.scene-assembly-labels{display:flex;justify-content:space-between;font:.62rem var(--mono);color:#f3f8ed;text-shadow:0 1px 8px #102e1c;margin-bottom:3px}
.scene-assembly input{appearance:none;-webkit-appearance:none;width:100%;height:28px;cursor:ew-resize;margin:0;background:transparent;touch-action:pan-y}
.scene-assembly input::-webkit-slider-runnable-track{height:3px;border-radius:4px;background:#f1f8e7a3;box-shadow:0 1px 4px #17332280}
.scene-assembly input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:24px;height:24px;margin-top:-10px;border-radius:50%;border:1px solid #fff;background:radial-gradient(circle at 30% 15%,white,#c1d4bba3 70%,#eaf5dc);box-shadow:inset 0 1px 2px white,0 3px 10px #132a1c4d}
.scene-assembly input::-moz-range-track{height:3px;background:#f1f8e7a3}.scene-assembly input::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#e5efda;border:1px solid white}
.scene-replay{display:grid;place-items:center;width:42px;height:42px;flex:none;border:1px solid #ffffff73;border-radius:50%;background:#eef8e321;backdrop-filter:blur(12px);color:white;font-size:23px;cursor:pointer}
.scene-ambience{font:.65rem var(--sans);color:#f2f7e9;padding:10px 14px;min-height:38px;border:1px solid #ffffff66;border-radius:25px;background:#edf7e51f;backdrop-filter:blur(10px);cursor:pointer}
.scene-ambience:disabled{opacity:.65;cursor:default}
.scene-action-label{position:absolute;right:6%;top:205px;z-index:3;padding:7px 11px;border:1px solid #ffffff60;border-radius:25px;background:#f1f6ec73;backdrop-filter:blur(14px);color:#31503a;font:.66rem var(--sans);pointer-events:none}
.scene-footnote{position:absolute;left:40px;bottom:32px;z-index:3;font:.54rem var(--mono);color:#eef5e5;text-shadow:0 1px 5px #173022}
.hero-experience[data-render="fallback"] .scene-manipulator{pointer-events:none}
.hero-experience[data-render="fallback"] .scene-console{opacity:.4;pointer-events:none}
.page-home .bar{background:#e5e7e34d}
.page-home .bar:not([data-scrolled])[data-tone="dark"],.page-home .bar:not([data-scrolled])[data-tone="dark"] .links a,.page-home .bar:not([data-scrolled])[data-tone="dark"] .menu-btn{color:#182b20;--halo-rgb:230 232 225}
.hero-experience :is(a,button,input):focus-visible{outline:2px solid #e9f2dc;outline-offset:5px}
.experience-copy :is(a,button):focus-visible{outline-color:#31563c}
@media(width<=1100px){
 .experience-copy h1{font-size:clamp(3.8rem,6.1vw,5.6rem);width:57%}.experience-copy{top:65px}
 .experience-lede{max-width:31ch;font-size:1.05rem}.experience-actions{max-width:350px;gap:19px}
 .scene-modes button{padding:10px 10px;font-size:.65rem}.scene-console{gap:18px}.scene-result{max-width:510px;bottom:150px}
}
@media(width<=1100px){
 .hero-experience{height:1140px;min-height:0;max-height:none}
 .experience-media img{object-position:82% center}
 .scene-readability{background:linear-gradient(#e9ece6f5 0%,#e9ece6d9 29%,#e9ece600 53%),linear-gradient(0deg,#1b322ca6,transparent 30%)}
 .experience-copy{top:32px}.experience-category{font-size:.6rem;max-width:none;margin-bottom:19px}
 .experience-copy h1{width:100%;font-size:clamp(3.05rem,9.5vw,4.8rem);max-width:14ch;line-height:.96}
 .experience-lede{font-size:.96rem;max-width:34ch;margin-top:21px;text-shadow:0 0 7px #e9ece6}
 .experience-actions{gap:17px;margin-top:21px;max-width:none}.experience-primary{min-height:46px;font-size:.73rem;padding:12px 15px}.experience-secondary{font-size:.69rem}
 .scene-manipulator{left:0;right:0;top:40%;bottom:30%}.scene-gesture{font-size:.5rem;bottom:0;max-width:95%;text-align:center}
 .scene-gesture{top:0;bottom:auto}
 .scene-result{left:16px;right:16px;width:auto;max-width:none;bottom:175px;padding:10px 12px}
 .scene-result-kicker{font-size:.53rem}.scene-result strong{font-size:.9rem;max-width:none}.scene-result p{font-size:.66rem;max-width:55ch}
 .scene-story{gap:8px;margin-top:10px;padding-top:9px}.scene-story li{font-size:.57rem}
 .scene-console{bottom:55px;display:grid;grid-template-columns:1fr 35px;gap:10px 14px}
 .scene-modes{grid-column:1/-1;width:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:4px;gap:2px;border-radius:22px}
 .scene-modes button{font-size:.55rem;line-height:1.3;padding:8px 3px;min-height:43px;overflow-wrap:anywhere}
 .scene-modes{left:16px;right:16px;top:400px;width:auto;max-width:none}
 .scene-assembly{width:100%;max-width:none;margin:0}.scene-assembly-labels{font-size:.53rem}
 .scene-replay{width:32px;height:32px;font-size:20px}.scene-footnote{left:16px;right:16px;bottom:30px;font-size:.44rem}
 .scene-ambience{grid-column:1/-1;justify-self:start;font-size:.58rem;min-height:32px;padding:8px 12px}
 .scene-action-label{top:520px;right:20px;font-size:.57rem;max-width:75%}
}
@media(760px<width<=1100px){
 .experience-copy h1{font-size:4rem;max-width:20ch}
 .experience-lede{max-width:49ch;font-size:1.05rem}
 .scene-modes{top:400px;left:40px;right:40px}
 .scene-modes button{font-size:.73rem}
 .scene-result{left:40px;right:40px}
 .scene-action-label{right:40px}
}
@media(width<=380px){.hero-experience{height:1190px}.experience-copy h1{font-size:2.85rem}.experience-lede{max-width:30ch}.scene-modes button{font-size:.5rem}.scene-result p{max-width:44ch}.scene-result{bottom:180px}.scene-manipulator{top:41%;bottom:32%}}
@media(width<=380px){.scene-modes{top:490px}}
@media(width<=380px){.scene-action-label{top:600px}}
.expertise-section{background:var(--paper);padding:80px 0 70px;scroll-margin-top:75px}
.expertise-heading{display:grid;grid-template-columns:1fr 1fr;gap:15px 50px;margin-bottom:44px}
.expertise-heading>p:first-child{grid-column:1/-1;font:.75rem var(--mono);color:var(--ink-2)}
.expertise-heading h2{font:600 clamp(2rem,3.5vw,3.2rem)/1.08 var(--sans);letter-spacing:-.045em}
.expertise-heading>p:last-child{font:400 1rem/1.6 var(--sans);max-width:54ch;align-self:end;color:var(--ink-2)}
.expertise-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px}
.expertise-grid article{border-top:1px solid var(--rule-strong);padding-top:20px;display:flex;flex-direction:column;align-items:flex-start}
.expertise-kind{font:.65rem var(--mono);color:var(--ink-2);margin-bottom:17px}
.expertise-grid h3{font:600 1.12rem/1.2 var(--sans);letter-spacing:-.025em;margin-bottom:14px}
.expertise-grid article>p:not(.expertise-kind){font:.85rem/1.55 var(--sans);color:var(--ink-2);margin-bottom:18px}
.expertise-grid button{margin-top:auto;font:500 .75rem var(--sans);padding:10px 0;border:0;border-bottom:1px solid var(--rule-strong);background:none;color:var(--ink);cursor:pointer;min-height:44px}
.expertise-contact{display:inline-block;margin-top:35px;font:500 .85rem var(--sans);text-decoration:underline;text-underline-offset:6px}
.expertise-pricing-note{padding-top:36px;padding-bottom:65px;font:.85rem/1.6 var(--sans);color:var(--ink-2)}
@media(width<=1000px){.expertise-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}}
@media(width<=650px){.expertise-section{padding:55px 0}.expertise-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.expertise-grid{grid-template-columns:1fr;gap:24px}.expertise-grid h3{font-size:1.2rem}.expertise-grid article>p:not(.expertise-kind){max-width:50ch}.expertise-kind{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.hero-experience *{transition:none!important;animation:none!important}}
:root[data-motion="reduce"] .hero-experience *{transition:none!important;animation:none!important}
