*{box-sizing:border-box}html,body{margin:0;background:#030407;color:#f2f5f8;font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif}body{--serif:"Iowan Old Style",Baskerville,Georgia,serif;--display:"Avenir Next","Helvetica Neue",Arial,sans-serif;--dur-slow:450ms;--ease-in:cubic-bezier(.16,1,.3,1);--final:1;--interaction:1;--slice:1;--sheen:-130%;--chrome:linear-gradient(145deg,#fff,#b1becb 40%,#ecf3f9 65%,#98a5b3);font-size:16px;-webkit-font-smoothing:antialiased}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button:focus-visible,a:focus-visible{outline:2px solid #dce8f4;outline-offset:4px}.standalone{height:70px;border-bottom:1px solid #24303b;display:flex;align-items:center;justify-content:space-between;padding:0 5%;font-size:13px}.languages{display:flex;gap:5px}.languages button{height:44px;width:44px;background:transparent;border:1px solid #34414e;border-radius:50%;font-size:12px}.languages .on{background:#d7e0ea;color:#080d14}.forge{position:relative;min-height:580px;height:calc(100svh - 70px);display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.75fr);grid-template-rows:minmax(0,1fr) auto;align-items:center;column-gap:25px;padding:36px max(4%,20px) 26px;overflow:hidden;background:radial-gradient(ellipse at 70% 45%,#182331 0,#090e15 34%,#030407 70%)}.embed .standalone{display:none}.embed .forge{height:100svh;min-height:0}.story{position:relative;z-index:4;align-self:center;padding-bottom:25px}.step{font-size:12px;font-weight:600;letter-spacing:.17em;color:#a3b4c6;margin-bottom:26px}h1{font-size:clamp(33px,4.2vw,66px);font-weight:550;letter-spacing:-.065em;line-height:1.04;margin:0 0 22px;overflow-wrap:normal;color:#dce5ee;background:var(--chrome);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}#caption{font-size:clamp(16px,1.6vw,22px);line-height:1.45;margin:0;max-width:26ch}.phase-detail{font-size:13px;color:#94a2b2;line-height:1.65;max-width:33ch;margin-top:22px;min-height:65px}.stage{position:relative;width:100%;height:100%;max-height:650px;min-height:220px;perspective:1400px;display:grid;place-items:center}.halo{position:absolute;width:80%;aspect-ratio:1;border:1px solid #adc6df25;border-radius:50%;transform:rotateX(69deg) translateZ(-110px);background:radial-gradient(ellipse,#b4d1f210,transparent 68%);pointer-events:none}.halo.outer{width:105%;background:none;border-color:#adc6df10}.sculpture{position:relative;width:clamp(265px,42vw,670px);aspect-ratio:1.48;transform-style:preserve-3d;transform:rotateX(52deg) rotateZ(-25deg);transition:transform 700ms cubic-bezier(.4,0,.2,1)}.pane{position:absolute;inset:0;border:1px solid #d3e2f277;border-radius:15px;background:linear-gradient(145deg,#d7e6f022,#141d291a 42%,#b3cbe533);box-shadow:inset 0 0 18px #d7e6f012,0 20px 45px #0004;backface-visibility:hidden;transform:translateZ(var(--z,0px));transition:transform 700ms cubic-bezier(.4,0,.2,1),opacity 300ms var(--ease-in)}.glass-back{--z:-100px}.palette{--z:-50px}.typography{--z:0px}.wireframe{--z:50px}.image-plane{--z:100px}.website{--z:150px}.corner{position:absolute;bottom:7%;left:7%;font-size:11px;letter-spacing:.16em;color:#a9bfd5}.swatches{position:absolute;inset:12%;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}.swatches span{height:100%;padding:10px;background:var(--swatch);font-size:11px;font-weight:600;display:flex;flex-direction:column;justify-content:space-between;border-radius:5px;border:1px solid #ffffff44}.swatches span:nth-child(2){height:88%}.swatches span:nth-child(3){height:76%}.swatches span:nth-child(4){height:64%}.swatches small{font-size:8px;font-weight:400}.typography{padding:7%;background:linear-gradient(140deg,#46566c88,#08111dcc)}.type-top{display:flex;align-items:baseline;gap:15px;height:62%;border-bottom:1px solid #e1edfa4a}.type-top b{font-size:clamp(85px,12vw,170px);font-weight:500;letter-spacing:-.08em;line-height:.9}.type-top i{font-family:var(--serif);font-size:clamp(66px,9vw,130px);color:#b7c9da}.type-bottom{display:flex;justify-content:space-between;align-items:end;padding-top:5%;font-size:clamp(17px,2.2vw,33px);line-height:1.05}.type-bottom i{font-family:var(--serif)}.type-bottom small{font-size:10px;letter-spacing:.1em}.wireframe{background:linear-gradient(#93abc918 1px,transparent 1px),linear-gradient(90deg,#93abc918 1px,transparent 1px),#0a152499;background-size:28px 28px}.wire-nav{position:absolute;left:7%;right:7%;top:8%;height:8%;border:1px solid #bacbdc}.wire-title{position:absolute;left:7%;top:29%;width:45%;height:24%;border:1px solid #bacbdc}.wire-button{position:absolute;left:7%;top:59%;width:24%;height:9%;border:1px solid #bacbdc;border-radius:30px}.wire-cards{position:absolute;left:7%;right:7%;bottom:7%;height:18%;display:flex;gap:8px}.wire-cards i{flex:1;border:1px solid #bacbdc}.image-plane{overflow:hidden}.image-plane>img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) brightness(.8)}.image-title{position:absolute;top:24%;left:8%;font:400 clamp(35px,5vw,74px)/.9 var(--serif);letter-spacing:-.04em;text-shadow:0 2px 30px #000}.website{background:#0b1119;overflow:hidden;border-color:#abbccc}.browser{height:25px;background:#111923;border-bottom:1px solid #2d3b4a;display:flex;gap:5px;align-items:center;padding:0 10px}.browser i{width:4px;height:4px;border:1px solid #a4b6c9;border-radius:50%}.browser>span{position:absolute;left:25%;right:25%;text-align:center;font-size:8px;color:#adc0d2}.site-holder{position:absolute;inset:25px 4px 4px;overflow:hidden;border-radius:0 0 10px 10px}.phone{position:absolute;z-index:5;right:0;bottom:12%;width:22%;aspect-ratio:.49;border-radius:21px;padding:5px;background:linear-gradient(145deg,#78899d,#111923 30%,#3b4b60);border:1px solid #b7c6d799;box-shadow:0 20px 45px #0009;overflow:hidden;opacity:0;transform:translateY(16px);transition:transform 700ms cubic-bezier(.4,0,.2,1),opacity 300ms var(--ease-in)}.phone>img{width:100%;height:69%;object-fit:cover;border-radius:17px 17px 0 0;filter:brightness(.65)}.phone-island{position:absolute;z-index:2;top:8px;left:36%;right:36%;height:6px;background:#05080d;border-radius:5px}.phone-mark{position:absolute;top:10%;left:13%;font:italic 17px var(--serif);color:white}.phone-title{position:absolute;top:25%;left:12%;font:25px/.9 var(--serif);letter-spacing:-.05em}.phone-bottom{height:32%;padding:7% 5%;background:#f0ede6;color:#18202a;font:italic 13px var(--serif);text-align:center}.phone-bottom>div{display:flex;gap:5px;height:65%;margin-top:7%}.phone-bottom img{width:50%;object-fit:cover;border-radius:4px}.signature{position:absolute;bottom:2%;left:50%;transform:translate(-50%,12px);display:flex;align-items:center;gap:10px;opacity:0;transition:opacity 300ms var(--ease-in),transform 450ms var(--ease-in)}.signature img{width:36px;height:36px;border-radius:50%}.signature span{font-size:9px;letter-spacing:.2em;white-space:nowrap}.signature small{font-size:7px;color:#a8b5c5}.steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;width:100%;position:relative;z-index:8;margin-top:25px}.steps button{display:flex;flex-direction:column;align-items:start;justify-content:center;gap:7px;min-height:66px;padding:10px 11px;border:1px solid #2d3946;border-radius:9px;background:#0c1119;color:#a4b1c0;font-size:12px;text-align:left;cursor:pointer}.steps button b{font-size:10px;letter-spacing:.12em;font-weight:500}.steps button[aria-current="step"]{background:linear-gradient(155deg,#f2f6fb,#9dabb9 62%,#e8f0f7);color:#090f17;border-color:#d1deec}.steps button:hover{border-color:#a4b9d1}.progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#111c2a}.progress i{height:100%;display:block;transform-origin:left;transform:scaleX(var(--progress,0));background:linear-gradient(90deg,#687f99,#e0efff)}
    .final-site{position:absolute;z-index:2;inset:0;padding:1.2%;background:#d8d1c5;color:#171815;opacity:var(--final,0);overflow:hidden}
    .retreat-page{height:100%;overflow:hidden;border-radius:17px;background:#f5f2ec;box-shadow:0 18px 48px rgba(8,13,16,.2);transition:box-shadow var(--dur-slow) var(--ease-in)}
    .retreat-hero{position:relative;height:62%;margin:1.2%;overflow:hidden;border-radius:14px;color:#fff;background:#0c2230}.retreat-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;filter:saturate(.82) contrast(1.03) brightness(.84);transform:scale(calc(1.055 - var(--interaction,0) * .025)) translateY(calc((1 - var(--interaction,0)) * 4px))}.retreat-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,14,22,.46),rgba(3,14,22,.08) 48%,rgba(3,14,22,.19)),linear-gradient(0deg,rgba(2,9,14,.56),transparent 44%)}
    .retreat-nav{position:absolute;z-index:2;left:2.2%;right:2.2%;top:3.7%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;font-size:clamp(.34rem,.58vw,.55rem)}.retreat-mark{display:grid;place-items:center;width:24px;height:24px;border:1px solid rgba(255,255,255,.48);border-radius:50%;font-family:var(--serif);font-style:italic}.retreat-menu{display:flex;gap:2px;padding:2px;border:1px solid rgba(255,255,255,.6);border-radius:99px;background:rgba(8,24,33,.13);backdrop-filter:blur(7px)}.retreat-menu span{padding:5px 10px;border-radius:99px}.retreat-menu span:first-child{background:#fff;color:#172028}.retreat-phone{justify-self:end;font-size:.4rem;letter-spacing:.04em}
    .retreat-status{position:absolute;z-index:2;left:2.4%;top:24%;display:flex;align-items:center;gap:5px;font-size:.4rem}.retreat-status::before{content:"";width:4px;height:4px;border-radius:50%;background:#77e18b;box-shadow:0 0 8px rgba(119,225,139,.8)}
    .retreat-title{position:absolute;z-index:2;left:2.3%;top:29%;margin:0;font:italic 400 clamp(2rem,4.9vw,5rem)/.79 var(--serif);letter-spacing:-.055em}.retreat-title span{display:block}
    .retreat-tags{position:absolute;z-index:2;right:2.1%;top:32%;width:24%;display:grid;grid-template-columns:1fr 1fr;gap:4px}.retreat-tags span{padding:5px 7px;border:1px solid rgba(255,255,255,.63);border-radius:99px;background:rgba(4,16,24,.12);backdrop-filter:blur(6px);font-size:.35rem;text-align:center;white-space:nowrap}.retreat-address{position:absolute;z-index:2;right:2.2%;bottom:14%;max-width:18ch;font-size:.42rem;line-height:1.3;text-align:right}
    .retreat-booking{position:absolute;z-index:3;left:2.2%;right:2.2%;bottom:3.7%;display:grid;grid-template-columns:1fr 1fr 1.1fr .88fr;align-items:end;gap:3%}.booking-field{padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.65)}.booking-field small{display:block;font-size:.3rem}.booking-field b{display:block;margin-top:3px;font-size:.44rem;font-weight:450}.booking-button{display:flex;align-items:center;justify-content:center;height:27px;border-radius:99px;background:#fff;color:#171815;font-size:.42rem;font-weight:700;box-shadow:0 8px 22px rgba(0,0,0,.18)}
    .retreat-about{height:35.5%;padding:1.4% 1.3% 2.1%;background:#f5f2ec}.retreat-about h5{margin:0 0 1.7%;font:italic 400 clamp(1.25rem,2.6vw,2.7rem)/1 var(--serif);text-align:center;letter-spacing:-.05em}.retreat-about h5 em{font-weight:300;color:#b6894b}.retreat-cards{height:74%;display:grid;grid-template-columns:.7fr 1fr 1.08fr .95fr .8fr;gap:1.45%;align-items:end}.retreat-card{position:relative;overflow:hidden;border-radius:9px;background:#edece8}.retreat-card.one{height:73%;padding:10% 9%;display:flex;align-items:flex-end}.retreat-card.one::before{content:"";position:absolute;left:18%;top:11%;width:57%;aspect-ratio:1;background:url("../assets/retreat-lake-interior.webp") center/cover no-repeat;clip-path:polygon(50% 0,100% 29%,88% 100%,12% 100%,0 29%);filter:saturate(.86) contrast(.96)}.retreat-card.one b{position:relative;z-index:1;font:500 .42rem/1.15 var(--display)}.retreat-card.one em{color:#b9833f;font-style:normal}.retreat-card.photo-a{height:59%;background:url("../assets/retreat-architect-desk.webp") center/cover no-repeat}.retreat-card.photo-a span{position:absolute;right:5%;bottom:5%;padding:4px 7px;border-radius:99px;background:#fff;font-size:.3rem}.retreat-card.photo-b{height:100%;background:url("../assets/retreat-modern-bedroom.webp") center/cover no-repeat}.retreat-card.photo-b::after{content:"";position:absolute;left:6%;right:6%;bottom:5%;height:18px;border-radius:99px;background:rgba(250,250,247,.94)}.retreat-card.note{height:68%;padding:10%;display:flex;flex-direction:column;justify-content:space-between}.retreat-card.note small{align-self:flex-start;padding:3px 6px;border:1px solid #858078;border-radius:99px;font-size:.26rem}.retreat-card.note b{font:500 .4rem/1.2 var(--display)}.retreat-card.note em{color:#b9833f;font-style:normal}.retreat-card.photo-c{height:88%;background:url("../assets/retreat-cabin-exterior.webp") center/cover no-repeat}.retreat-card.photo-c span{position:absolute;left:7%;right:7%;bottom:8%;padding:6px;border-radius:7px;background:rgba(255,255,255,.94);font-size:.3rem;text-align:center}
    .site-slice{position:absolute;z-index:4;top:0;bottom:0;left:calc(var(--i) * 25%);width:25.2%;background:linear-gradient(145deg,#0a1721,#163249 62%,#edf0ed);border-right:1px solid rgba(143,169,198,.3);transform:translateY(calc(var(--slice,0) * -104%))}
    .site-slice:nth-of-type(even){transform:translateY(calc(var(--slice,0) * 104%))}
    .site-slice::after{content:"";position:absolute;left:14%;right:14%;top:50%;height:1px;background:linear-gradient(90deg,transparent,#a8bfd4,transparent);box-shadow:0 0 12px rgba(143,169,198,.45)}
    .final-sheen{position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(106deg,transparent 41%,rgba(255,255,255,.45) 49%,transparent 57%);transform:translateX(var(--sheen,-120%));opacity:.6}


/* Final-page content is the original Nordhaven concept; only its presentation changes. */
.final-site{inset:0;opacity:1;padding:1%;border-radius:8px}.site-slice{display:none}.retreat-title{font-size:clamp(24px,3.6vw,50px)}.retreat-about h5{font-size:clamp(17px,2vw,28px)}.retreat-nav{font-size:6px}.retreat-menu span{padding:3px 5px}.retreat-phone{font-size:5px}.retreat-tags span{font-size:4px;padding:3px 4px}.retreat-status{font-size:5px}.retreat-address{font-size:5px}.booking-button{height:19px;font-size:5px}.booking-field small{font-size:4px}.booking-field b{font-size:5px}.retreat-card.one b,.retreat-card.note b{font-size:5px}.retreat-card.photo-a span,.retreat-card.photo-c span{font-size:4px}.retreat-card.photo-b::after{height:10px}.retreat-card.note small{font-size:4px}.retreat-card.one{padding:10% 6%}.final-sheen{transform:translateX(var(--sheen,-130%))}.stage[data-phase="4"] .final-sheen{animation:sheen 600ms var(--ease-in) both}@keyframes sheen{from{transform:translateX(-120%)}to{transform:translateX(120%)}}.stage[data-phase="5"] .phone,.stage[data-phase="6"] .phone{opacity:1;transform:translateY(0)}.stage[data-phase="6"] .signature{opacity:1;transform:translate(-50%,0)}
@media(max-width:700px){.forge{grid-template-columns:1fr;grid-template-rows:auto minmax(180px,1fr) auto;gap:0;padding:22px 18px 16px;background:radial-gradient(ellipse at 50% 53%,#182331,#070b11 49%,#030407 77%)}.story{padding:0;text-align:center;align-self:start}.step{font-size:10px;margin-bottom:12px}h1{font-size:clamp(30px,9vw,44px);margin:0 0 10px}#caption{font-size:15px;max-width:none}.phase-detail{font-size:11px;line-height:1.4;max-width:38ch;margin:10px auto 0;min-height:32px}.stage{min-height:180px;max-height:460px;width:100%;perspective:950px}.sculpture{width:min(76vw,430px);aspect-ratio:1.48}.pane{border-radius:9px}.corner{font-size:7px}.swatches{gap:5px;inset:9%}.swatches span{font-size:8px;padding:7px 5px}.swatches small{font-size:5px}.type-top b{font-size:70px}.type-top i{font-size:54px}.type-bottom{font-size:20px}.type-bottom small{font-size:7px}.image-title{font-size:36px}.browser{height:18px;padding:0 7px}.browser>span{font-size:6px}.site-holder{inset:18px 3px 3px}.retreat-title{font-size:25px}.retreat-nav{font-size:3px}.retreat-mark{width:13px;height:13px}.retreat-menu span{padding:2px 3px}.retreat-phone,.retreat-tags,.retreat-address{display:none}.retreat-status{font-size:3px}.retreat-about h5{font-size:15px}.booking-field small{font-size:3px}.booking-field b{font-size:3px}.booking-button{height:12px;font-size:4px}.retreat-card.one b,.retreat-card.note b{font-size:3px}.retreat-card.photo-a span,.retreat-card.photo-c span{font-size:2px;padding:3px}.retreat-card.note small{font-size:2px;padding:2px}.phone{right:0;bottom:16%;width:25%;border-radius:15px;padding:3px}.phone>img{border-radius:12px 12px 0 0}.phone-island{top:5px;height:4px}.phone-title{font-size:17px}.phone-mark{font-size:12px}.phone-bottom{font-size:9px}.phone-bottom img{border-radius:2px}.signature{bottom:3%;gap:6px}.signature img{width:25px;height:25px}.signature span{font-size:7px}.signature small{font-size:5px}.steps{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:10px}.steps button{padding:8px 2px;align-items:center;min-height:45px;font-size:0;border-radius:6px}.steps button b{font-size:12px}.steps button span{display:none}.halo{width:85%}.halo.outer{width:108%}}
@media(max-height:560px){.forge{padding-top:14px;padding-bottom:10px}.phase-detail{display:none}.story{padding-bottom:0}.step{margin-bottom:9px}h1{font-size:30px}.steps{margin-top:8px}.stage{min-height:140px}.sculpture{width:min(57vh,420px)}.phone{max-height:150px;width:auto;height:65%}.signature{bottom:0}.steps button{min-height:44px}.standalone{height:55px}.forge{height:calc(100svh - 55px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}.halo{opacity:.5}}

/* Detail pass: full descenders, an unmistakable type specimen, and a stable device finale. */
h1{line-height:1.2;padding-bottom:.14em;margin-bottom:calc(22px - .14em)}
.typography{padding:6% 7%;background:linear-gradient(125deg,#263240,#0b111bd9 66%);border-color:#d5e3f3ad}
.type-top{height:59%;align-items:baseline;justify-content:space-between;position:relative;isolation:isolate;overflow:visible;padding-bottom:5%}
.type-top:before{content:"";position:absolute;left:0;right:0;top:18%;bottom:0;z-index:-1;border-top:1px solid #dbe9fa24;border-bottom:1px solid #dbe9fa44;background:linear-gradient(transparent 49%,#dbe9fa12 50%,transparent 51%)}
.type-top b{font-size:clamp(100px,12.2vw,175px);line-height:.93;font-weight:600;letter-spacing:-.065em}
.type-top i{font-size:clamp(100px,12.6vw,184px);line-height:.88;color:#e1eaf4;margin-right:9%}
.type-bottom{padding-top:6%;align-items:center;font-size:clamp(21px,2.7vw,39px);line-height:.96;letter-spacing:-.055em}
.type-bottom i{display:inline-block;padding-top:2px;color:#c4d4e5;font-size:1.18em}
.type-bottom small{font-size:clamp(8px,.85vw,12px);letter-spacing:.1em;color:#a8bacd;line-height:1.7;max-width:35%;padding-left:12px;border-left:1px solid #7890aa60}
.phone{right:1%;bottom:14%;width:24%;max-width:190px;aspect-ratio: .48;padding:6px;border-radius:27px;background:linear-gradient(140deg,#c2cfdd,#536477 23%,#101822 50%,#8292a3);box-shadow:inset 0 0 0 1px #f0f6ff33,0 20px 45px #0009}
.phone>img{display:block;width:100%;height:66%;object-fit:cover;object-position:62% 50%;border-radius:21px 21px 0 0;filter:brightness(.74) saturate(.82)}
.phone-island{top:11px;left:35%;right:35%;height:6px;z-index:3}
.phone-mark{top:10%;left:13%;font-size:17px;border:1px solid #f4f7fc66;width:25px;height:25px;display:grid;place-items:center;border-radius:50%}
.phone-title{top:27%;left:12%;right:9%;font-size:clamp(23px,2.05vw,31px);line-height:.92;text-shadow:0 3px 17px #000;letter-spacing:-.035em}
.phone-bottom{height:34%;padding:10% 7% 8%;border-radius:0 0 21px 21px;font-size:15px;background:#f3f0e9;overflow:hidden;line-height:1}
.phone-bottom>div{display:grid;grid-template-columns:1.15fr .85fr;gap:5px;height:70%;margin-top:10%}
.phone-bottom img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;border-radius:5px}
.phone-bottom img:first-child{object-position:48% center}.phone-bottom img:last-child{object-position:55% center}
.stage[data-phase="6"] .signature{transition-delay:120ms}
@media(max-width:700px){h1{margin-bottom:calc(10px - .14em)}.type-top b{font-size:clamp(78px,25vw,112px)}.type-top i{font-size:clamp(80px,26vw,117px)}.type-bottom{font-size:clamp(22px,6.9vw,31px)}.type-bottom small{font-size:7px;max-width:34%;padding-left:8px}.type-top{height:59%;padding-bottom:4%}.typography{padding:6% 7%}.phone{right:0;bottom:13%;width:33%;max-width:130px;border-radius:19px;padding:4px}.phone>img{border-radius:15px 15px 0 0}.phone-island{top:7px;height:4px}.phone-mark{font-size:11px;width:17px;height:17px}.phone-title{font-size:clamp(18px,5.5vw,24px)}.phone-bottom{border-radius:0 0 15px 15px;font-size:11px}.phone-bottom>div{gap:3px}.phone-bottom img{border-radius:3px}.stage[data-phase="5"] .sculpture,.stage[data-phase="6"] .sculpture{left:-4%;top:-5%}.signature{bottom:1%}}
@media(max-height:560px){.phone{width:auto;max-height:165px;height:65%;bottom:9%}.phone-title{font-size:18px}.phone-mark{width:15px;height:15px;font-size:10px}.phone-bottom{font-size:10px}.type-top b{font-size:clamp(65px,19vh,106px)}.type-top i{font-size:clamp(70px,20vh,110px)}.type-bottom{font-size:clamp(19px,5vh,29px)}}

.online-indicator{position:absolute;left:50%;bottom:100px;transform:translate(-50%,8px);display:flex;align-items:center;gap:9px;border:1px solid #74cca04d;background:#081510ec;color:#b8ead0;border-radius:999px;padding:9px 17px;font-size:11px;letter-spacing:.15em;opacity:0;visibility:hidden;transition:opacity 500ms,transform 500ms;z-index:8}.online-indicator i{width:6px;height:6px;border-radius:50%;background:#7fe0ab;box-shadow:0 0 14px #7fe0ab88}.online-indicator svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}#stage[data-phase="6"] .online-indicator{opacity:1;visibility:visible;transform:translate(-50%,0)}#stage[data-phase="6"] .online-indicator i{animation:online-connect 1200ms ease-out 1}@keyframes online-connect{0%{box-shadow:0 0 0 0 #7fe0ab99}100%{box-shadow:0 0 0 10px #7fe0ab00}}@media(max-width:700px){.online-indicator{bottom:94px;font-size:10px;padding:7px 13px}}@media(prefers-reduced-motion:reduce){.online-indicator,.online-indicator i{animation:none!important;transition:none!important}}

/* One complete nine-step journey, using the existing spatial glass language. */
.forge{grid-template-rows:auto minmax(0,1fr) auto;padding-top:24px}
.flow-heading{grid-column:1/-1;text-align:center;z-index:5;margin:0 0 12px}
.flow-heading h2{margin:0;font-size:clamp(23px,2.8vw,40px);font-weight:500;line-height:1.15;letter-spacing:-.04em}
.flow-heading p{font-size:13px;color:#92a2b5;margin:10px auto 0;max-width:65ch;line-height:1.5}
.steps{grid-template-columns:repeat(8,minmax(0,1fr))}.steps button{padding:10px 8px;font-size:11px}
.flow-visual{position:absolute;width:min(83%,560px);aspect-ratio:1.25;opacity:0;visibility:hidden;transform:translateY(18px) scale(.94);transition:opacity 350ms,transform 500ms var(--ease-in),visibility 350ms;z-index:6;perspective:1200px}
.stage[data-flow="talk"] .conversation,.stage[data-flow="grow"] .growth{opacity:1;visibility:visible;transform:translateY(0) scale(1)}

.conversation-card,.growth-card{position:absolute;inset:7%;padding:8%;border:1px solid #adbed185;border-radius:22px;background:linear-gradient(135deg,#a3bdd12d,#0a1423a6 48%,#8ca6c029);box-shadow:inset 0 1px #d9eaff33,0 25px 60px #0006;transform:rotateY(-9deg) rotateX(7deg)}
.conversation-back,.growth-back{position:absolute;inset:7%;border:1px solid #97b7d130;border-radius:22px;background:linear-gradient(150deg,#536d8622,#07121b);transform:translate(-16px,18px) rotateY(-9deg) rotateX(7deg)}
.visual-eyebrow{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#b3c5d7}
.call-symbol{width:29%;aspect-ratio:1;margin:8% auto 6%;border:1px solid #c9dcef77;border-radius:50%;padding:20px;background:linear-gradient(145deg,#bbcfe52b,#101c2b);box-shadow:0 0 35px #a2c4e520;color:#e4eef8}.call-symbol svg{width:100%;height:100%}
.conversation-wave{display:flex;justify-content:center;align-items:center;gap:7px;height:35px}.conversation-wave i{width:3px;height:12px;border-radius:3px;background:#b8cce1}.conversation-wave i:nth-child(3n){height:30px}.conversation-wave i:nth-child(2n){height:22px}
.conversation-tags{display:flex;justify-content:center;gap:10px;margin-top:7%;font-size:11px;color:#a9bcd0}.conversation-tags span{border:1px solid #69819b66;border-radius:99px;padding:8px 12px}
.growth-card{transform:rotateY(-7deg) rotateX(6deg)}.growth-chart{display:block;width:100%;height:55%;margin:5% 0}.growth-labels{display:flex;justify-content:space-between;font-size:11px;color:#a7bbd1}.growth-next{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #9eb6ce40;margin-top:6%;padding-top:5%;font-size:12px}.growth-next>span:last-child{font-size:23px}
.stage[data-flow="grow"] .growth-line{stroke-dasharray:1;animation:flow-chart 650ms var(--ease-in) both}@keyframes flow-chart{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@media(max-width:700px){.forge{grid-template-rows:auto auto minmax(160px,1fr) auto;padding:16px 14px 12px}.flow-heading{margin-bottom:18px}.flow-heading h2{font-size:23px}.flow-heading p{font-size:11px;max-width:42ch;margin-top:7px}.story{padding:0}.phase-detail{min-height:42px}.steps{grid-template-columns:repeat(8,minmax(0,1fr));gap:3px}.steps button{padding:6px 0;min-height:44px}.steps button b{font-size:10px}.flow-visual{width:min(84%,340px)}.conversation-card,.growth-card{border-radius:16px}.visual-eyebrow{font-size:8px}.call-symbol{padding:10px}.conversation-tags{font-size:8px;gap:6px}.conversation-tags span{padding:6px 8px}.conversation-wave{height:23px;gap:5px}.conversation-wave i{width:2px}.growth-labels{font-size:8px}.growth-next{font-size:9px}.growth-next>span:last-child{font-size:18px}}
@media(max-height:600px){.flow-heading{margin-bottom:5px}.flow-heading h2{font-size:21px}.flow-heading p{display:none}.flow-visual{max-width:330px}.forge{padding-top:10px}.phase-detail{display:none}}
@media(prefers-reduced-motion:reduce){.flow-visual,.growth-line{animation:none!important;transition:none!important}}

/* First conversation and growth are panes of the same sculpture. */
.flow-panel{overflow:hidden;background:linear-gradient(145deg,#35485ab8,#0a1320d9 55%,#7693ad66)}
.flow-panel .conversation-card,.flow-panel .growth-card{inset:0;padding:7%;border:0;border-radius:inherit;background:transparent;box-shadow:none;transform:none}
.flow-panel .visual-eyebrow{font-size:clamp(8px,.9vw,12px)}
.flow-panel .call-symbol{width:24%;margin:5% auto 3%;padding:13px}
.flow-panel .conversation-wave{height:25px}
.flow-panel .conversation-tags{margin-top:4%;font-size:clamp(8px,.85vw,12px)}
.flow-panel .growth-chart{height:53%;margin:3% 0}
.flow-panel .growth-labels{font-size:clamp(8px,.85vw,12px)}
.flow-panel .growth-next{margin-top:4%;padding-top:3%;font-size:clamp(9px,.95vw,13px)}
@media(max-width:700px){.flow-panel .conversation-card,.flow-panel .growth-card{padding:6%}.flow-panel .call-symbol{padding:8px;width:23%;margin:3% auto 2%}.flow-panel .conversation-wave{height:19px;gap:4px}.flow-panel .conversation-wave i{height:7px}.flow-panel .conversation-wave i:nth-child(3n){height:18px}.flow-panel .conversation-wave i:nth-child(2n){height:13px}.flow-panel .conversation-tags{margin-top:3%;font-size:7px}.flow-panel .conversation-tags span{padding:4px 7px}.flow-panel .growth-next>span:last-child{font-size:15px}}

/* Growth builds directly on the finished site; no new scene rotation. */
.flow-panel.growth{inset:auto -6% -8% auto;width:55%;height:75%;background:linear-gradient(145deg,#344c63f5,#0c1727f5);box-shadow:0 15px 40px #0008,inset 0 1px #d4e8ff44}
.flow-panel.growth .growth-card{padding:8%}.flow-panel.growth .visual-eyebrow{font-size:clamp(7px,.75vw,10px)}
.flow-panel.growth .growth-labels{font-size:clamp(6px,.65vw,9px)}.flow-panel.growth .growth-next{font-size:clamp(7px,.7vw,10px)}
@media(max-width:700px){.stage[data-flow="grow"] .sculpture{left:-4%;top:-5%}.flow-panel.growth{right:-7%;bottom:-12%;width:60%;height:80%}.flow-panel.growth .visual-eyebrow{letter-spacing:.09em;font-size:6px}.flow-panel.growth .growth-next{font-size:7px}}

/* Gentle handover; keep both devices present while the growth layer joins. */
.stage[data-phase="6"] .signature{bottom:5%}
.stage[data-phase="6"] .online-indicator{bottom:calc(5% + 60px)}
.stage[data-flow="grow"] .phone{opacity:1;transform:translateY(0)}
.flow-panel.growth{inset:auto auto -15% -6%;width:47%;height:65%}
@media(max-width:700px){.stage[data-phase="6"] .signature{bottom:4%}.stage[data-phase="6"] .online-indicator{bottom:calc(4% + 43px)}.flow-panel.growth{left:-3%;right:auto;bottom:-18%;width:48%;height:68%}}

/* Illustrative growth signals emerge from the two devices. */
.growth-signals{position:absolute;inset:0;pointer-events:none;z-index:12;visibility:hidden}.growth-signal{position:absolute;display:flex;gap:11px;align-items:center;border:1px solid #a7c2db55;border-radius:10px;padding:12px 17px;background:linear-gradient(135deg,#2d4053f5,#0e1826f5);box-shadow:0 14px 34px #0006;opacity:0}.signal-0{left:8%;top:8%;--dx:100px;--dy:160px}.signal-1{left:43%;top:0%;--dx:0px;--dy:200px}.signal-2{right:1%;top:7%;--dx:-30px;--dy:180px}.signal-symbol{font-size:25px;color:#bed5e9}.growth-signal strong{font-size:24px;font-weight:500;display:block;font-variant-numeric:tabular-nums}.growth-signal small{font-size:10px;color:#b2bfcd}.stage[data-flow="grow"] .growth-signals{visibility:visible}.stage[data-flow="grow"] .growth-signal{animation:growth-emerge 1.1s cubic-bezier(.16,1,.3,1) both}.stage[data-flow="grow"] .signal-1{animation-delay:.22s}.stage[data-flow="grow"] .signal-2{animation-delay:.44s}.growth-example{display:block;color:#a5b5c5;font-size:clamp(6px,.62vw,9px);margin-top:8%;letter-spacing:.03em}.stage[data-flow="grow"] .growth-line{animation:growth-rise 5s ease-in-out infinite;stroke-dasharray:1}.stage[data-flow="grow"] .growth-chart circle{animation:growth-dot 5s ease-in-out infinite}@keyframes growth-emerge{from{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.5)}to{opacity:1;transform:translate(0,0) scale(1)}}@keyframes growth-rise{0%,8%{stroke-dashoffset:1}60%,92%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}@keyframes growth-dot{0%,48%,100%{opacity:0}60%,92%{opacity:1}}@media(max-width:700px){.growth-signal{gap:5px;padding:7px 9px;border-radius:7px}.growth-signal strong{font-size:16px}.growth-signal small{font-size:7px}.signal-symbol{font-size:17px}.signal-0{left:0;top:2%}.signal-1{left:37%;top:-6%}.signal-2{right:0;top:2%}.growth-example{font-size:5px;margin-top:5%}}@media(prefers-reduced-motion:reduce){.stage[data-flow="grow"] .growth-signal{animation:none;opacity:1}.stage[data-flow="grow"] .growth-line,.stage[data-flow="grow"] .growth-chart circle{animation:none;stroke-dashoffset:0;opacity:1}}

@media(max-width:700px){.signal-0{top:12%}.signal-1{top:8%}.signal-2{top:12%}}
