@font-face{font-family:Manrope;src:url('assets/fonts/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('assets/fonts/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('assets/fonts/manrope-800.ttf') format('truetype');font-weight:800;font-display:swap}@font-face{font-family:'DM Serif';src:url('assets/fonts/dm-serif-italic.ttf') format('truetype');font-style:italic;font-weight:400;font-display:swap}
body{font-family:Manrope,system-ui,sans-serif;line-height:1.75}h1,h2,h3{font-weight:600}h1{letter-spacing:-3px}h2{letter-spacing:-1.8px}h3{letter-spacing:-.8px}.hero h1 span,.page-hero h1 em,.story-copy h2 em,.local .bigword{font-family:'DM Serif',Georgia,serif;font-style:italic;font-weight:400}.design-live .page-hero h1{font-size:clamp(44px,4.7vw,70px);line-height:1.04;letter-spacing:-2.8px}.hero h1{font-weight:600}.eyebrow{font-weight:800;letter-spacing:2px}.design-live nav{font-size:13px}.logo{letter-spacing:-1.1px}.button{font-weight:600}.page-hero .intro{font-size:16px;line-height:1.85}.page-hero figure{transform:translateY(var(--hero-lift,0px));transition:transform .15s linear}
.cinematic-story{margin:70px 0 0;--scene-p:1;--phase-a:1;--phase-b:1;--phase-c:1}.story-sticky{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:center;padding:60px 45px;background:#f2f7f4;border:1px solid #dce8e1;border-radius:28px;overflow:hidden;min-height:650px}.story-copy h2{font-size:clamp(35px,3.4vw,50px);line-height:1.08}.story-copy h2 em{color:#476c5d}.story-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;color:var(--muted);margin-top:22px;max-width:430px}.story-copy .eyebrow{font-size:10px;margin-bottom:20px}.story-steps{list-style:none;padding:0;margin:32px 0 0}.story-steps li{display:flex;gap:16px;padding:13px 0;opacity:.72;transition:opacity .3s,transform .3s}.story-steps li.is-current{opacity:1;transform:translateX(5px)}.story-steps li>span{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;font-size:10px;border-radius:50%;background:#dfebe4;color:#426250}.story-steps li.is-current>span{background:#2f4858;color:white}.story-steps h3{font-size:17px;letter-spacing:-.4px;margin-bottom:5px}.story-steps p{font-size:12px;color:var(--muted);line-height:1.55}.story-meter{height:2px;background:#d5e3da;margin-top:25px;max-width:280px}.story-meter i{display:block;width:100%;height:100%;background:#bc774b;transform-origin:left;transform:scaleX(var(--scene-p))}.story-copy .story-instruction{font-size:10px!important;letter-spacing:.6px;margin-top:12px!important}.story-art{min-width:0;position:relative;perspective:1000px}.build-scene,.town-scene,.knowledge-scene{position:relative;min-height:450px;display:flex;align-items:center;justify-content:center}.floating-browser{width:100%;background:white;border:1px solid #c3d7cd;border-radius:16px;box-shadow:0 35px 55px #2f48581a;overflow:visible;transform:rotateY(calc((1 - var(--scene-p)) * -13deg)) rotateX(calc((1 - var(--scene-p)) * 8deg));transform-style:preserve-3d}.scene-browserbar{border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:12px 20px;font-size:9px;border-bottom:1px solid #e1e9e4;color:#839a8e}.scene-browserbar>span:first-child{color:#d7a681;letter-spacing:4px}.build-piece{position:relative;transition:opacity .12s linear,transform .12s linear}.piece-nav{display:flex;align-items:center;justify-content:space-between;padding:19px 23px;gap:20px;transform:translateY(calc((1 - var(--phase-a)) * -65px));opacity:calc(.15 + var(--phase-a) * .85)}.piece-nav strong{font-size:15px}.piece-nav>span{font-size:8px}.piece-title{margin:0 18px;padding:25px;background:#e8f5ed;border-radius:7px;transform:translateX(calc((1 - var(--phase-b)) * -100px)) translateZ(calc((1 - var(--phase-b)) * 70px));opacity:calc(.08 + var(--phase-b) * .92)}.piece-title>small{font-size:8px;letter-spacing:1.6px}.piece-title>strong{display:block;font:italic 34px/1.08 'DM Serif',Georgia,serif;margin:15px 0}.scene-mini-action{display:inline-block;background:#2f4858;color:white;font-size:9px;padding:8px 12px;border-radius:4px}.piece-grid{padding:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;transform:translateY(calc((1 - var(--phase-c)) * 90px));opacity:calc(.05 + var(--phase-c) * .95)}.mini-tile{background:#f5f7f4;border:1px solid #e1e9e2;border-radius:7px;padding:17px 8px 12px;text-align:center;display:grid;place-items:center;gap:12px}.mini-tile small{font-size:9px}.tile-icon{display:block;width:26px;height:28px;background:#c1d9ca;border-radius:5px}.tile-icon.bag{background:#edb88f;border-radius:3px;position:relative}.tile-icon.bag:before{content:'';position:absolute;width:13px;height:10px;left:6px;top:-8px;border:2px solid #b7825a;border-radius:7px 7px 0 0}.tile-icon.vase{background:#f1d9c4;border-radius:5px 5px 13px 13px;width:21px}.tile-icon.leaf{border-radius:22px 0 22px 0;background:#91b5a0;rotate:-15deg}.tile-icon.window{background:linear-gradient(0deg,transparent 48%,#fff 48% 55%,transparent 55%),linear-gradient(90deg,#bdcec5 48%,white 48% 55%,#bdcec5 55%)}.tile-icon.pin{width:23px;height:23px;background:#e5ab83;rotate:-45deg;border-radius:50% 50% 50% 0}
.scene-tag{position:absolute;z-index:4;background:white;box-shadow:0 8px 25px #2f485819;border:1px solid #e3e9e3;padding:11px 16px;border-radius:8px;font-size:11px;white-space:nowrap}.tag-a{left:-15px;top:13%;transform:translateY(calc((1 - var(--phase-a)) * -40px)) rotate(-6deg);opacity:var(--phase-a)}.tag-b{right:-12px;bottom:6%;background:#f4ad82;transform:translateY(calc((1 - var(--phase-c)) * 45px)) rotate(4deg);opacity:var(--phase-c)}
.town-scene>img{width:100%;height:auto;position:relative;z-index:1;border-radius:14px;transform:scale(calc(.84 + var(--phase-a) * .16));opacity:calc(.4 + var(--phase-a) * .6)}.town-scene svg{position:absolute;inset:-13% 0 0;width:100%;height:100%;z-index:2;overflow:visible}.route-track,.route-draw{fill:none;stroke:#c3d9cc;stroke-width:2}.route-track{stroke-dasharray:5 8}.route-draw{stroke:#da9a6c;stroke-width:3;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--phase-b))}.route-point{fill:#f4ad82;opacity:var(--phase-a)}.route-point.end{opacity:var(--phase-b)}.town-site{position:absolute;bottom:9%;left:8%;width:84%;z-index:3;background:white;border:1px solid #c9ddd1;border-radius:12px;box-shadow:0 20px 30px #20374622;padding:20px;transform:translateY(calc((1 - var(--phase-c)) * 80px));opacity:var(--phase-c)}.town-site strong,.town-site span{display:block}.town-site strong{font:italic 27px/1.3 'DM Serif',Georgia,serif}.town-site span{font-size:10px;margin-top:12px}.town-scene .tag-a{top:1%}.town-scene .tag-b{bottom:0}
.answer-sheet{width:84%;border:1px solid #cbdcd2;background:white;border-radius:13px;box-shadow:0 25px 40px #2f48581a;padding:30px;transform:rotate(calc((1 - var(--phase-c)) * 7deg)) scale(calc(.91 + var(--phase-b) * .09))}.sheet-icon{display:grid;place-items:center;border-radius:50%;background:#ddfbef;width:45px;height:45px;font:italic 28px Georgia;margin-bottom:18px}.answer-sheet small{font-size:8px;letter-spacing:1.5px}.answer-sheet strong{display:block;font:italic 33px/1.2 'DM Serif',Georgia,serif;margin:18px 0 25px}.sheet-line{height:7px;background:#e1ebe4;border-radius:4px;width:95%;margin:10px 0;transform:scaleX(var(--phase-b));transform-origin:left}.sheet-line.short{width:70%}.answer-sheet a{display:inline-block;font-size:11px;margin-top:22px;opacity:var(--phase-c)}.question-chip{position:absolute;z-index:2;font-size:11px;background:#ddfbef;padding:10px 14px;border-radius:99px;box-shadow:0 6px 20px #2f485812}.q1{top:0;left:0;transform:translateX(calc((1 - var(--phase-a)) * -40px)) rotate(-7deg)}.q2{right:0;top:10%;background:#fbe5d7;transform:translateX(calc((1 - var(--phase-a)) * 40px)) rotate(6deg)}.q3{bottom:5%;left:0;transform:translateY(calc((1 - var(--phase-b)) * 40px)) rotate(-4deg)}
.editorial-content{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding:100px 0 45px;border-top:1px solid #dce7e0;margin-top:90px}.editorial-heading h2{font-size:clamp(33px,3.5vw,47px);line-height:1.13}.editorial-heading .eyebrow{font-size:10px}.editorial-articles article+article{margin-top:40px;border-top:1px solid #e2eae5;padding-top:35px}.editorial-articles h3{font-size:23px;line-height:1.25;margin-bottom:18px}.editorial-articles p{font-size:15px;line-height:1.95;color:#607580}.editorial-link{display:inline-block;font-size:13px;font-weight:600;margin-top:20px;text-underline-offset:5px}.editorial-link span{display:inline-block;transition:translate .2s}.editorial-link:hover span{translate:3px -3px}.related-pages{margin-top:60px}.related-pages h2{font-size:36px;margin-bottom:30px}.related-pages>div{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.related-pages>div>a{display:block;position:relative;text-decoration:none;border:1px solid #dce6df;border-radius:12px;padding:26px 48px 26px 25px;transition:background .3s,translate .3s}.related-pages>div>a:hover{background:#ddfbef;translate:0 -4px}.related-pages a>span{font-size:18px;font-weight:600}.related-pages a p{color:#607580;font-size:13px;margin-top:8px}.related-pages i{position:absolute;right:22px;top:24px;font-style:normal;font-size:22px}.story-ready .story-sticky{position:sticky;top:5vh}.story-ready.cinematic-story{height:190vh}.story-ready .story-sticky{min-height:80vh;max-height:94vh}.design-live .visual-journey{margin-top:70px}.story-ready .story-art{will-change:transform}.story-paused.cinematic-story{height:auto}.story-paused .story-sticky{position:relative;top:auto;max-height:none}.story-paused .story-steps li{opacity:1;transform:none}.story-paused .story-instruction{display:none}.motion-off .page-hero figure{transform:none}
@media(min-width:1001px){.editorial-heading{position:sticky;top:65px;align-self:start}.story-art{transform:translateY(calc((.5 - var(--scene-p)) * 18px))}}
@media(max-width:1000px){.story-sticky{padding:40px 25px;gap:25px}.story-copy h2{font-size:35px}.editorial-content{gap:45px}.piece-title>strong{font-size:27px}.piece-nav>span{display:none}.story-steps h3{font-size:15px}}
@media(max-width:720px){.design-live .page-hero h1{font-size:44px;letter-spacing:-2px}.hero h1{font-size:43px}.cinematic-story{margin-top:45px}.story-sticky{grid-template-columns:1fr;padding:30px 22px;gap:35px;border-radius:19px}.story-ready.cinematic-story{height:auto}.story-ready .story-sticky{position:relative;top:auto;max-height:none;min-height:0}.story-copy h2{font-size:36px}.story-copy>p:not(.eyebrow){font-size:14px}.story-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.story-steps li{display:block;padding:0;opacity:1}.story-steps li.is-current{transform:none}.story-steps li>span{margin-bottom:10px}.story-steps h3{font-size:12px;line-height:1.5;letter-spacing:-.2px}.story-steps li p{display:none}.build-scene,.town-scene,.knowledge-scene{min-height:350px}.scene-tag{font-size:9px;padding:8px 11px}.tag-a{left:-10px}.tag-b{right:-9px}.piece-title{padding:20px}.piece-nav{padding:15px}.piece-grid{gap:7px;padding:13px}.mini-tile{padding:14px 4px 10px}.mini-tile small{font-size:8px}.answer-sheet{padding:22px;width:87%}.answer-sheet strong{font-size:28px}.question-chip{font-size:9px}.town-site strong{font-size:23px}.editorial-content{grid-template-columns:1fr;gap:35px;padding-top:55px;margin-top:60px}.editorial-heading h2{font-size:35px}.editorial-articles h3{font-size:22px}.related-pages>div{grid-template-columns:1fr}.related-pages h2{font-size:31px}.related-pages a>span{font-size:17px}.design-live .visual-journey{margin-top:45px}.page-hero figure{transform:none!important}}
@media(prefers-reduced-motion:reduce){.cinematic-story{height:auto!important}.story-sticky{position:relative!important;top:auto!important;max-height:none!important}.page-hero figure{transform:none}.story-steps li{opacity:1!important;transform:none!important}}

/* Commune typography trial */
@font-face{font-family:'GC Commune';src:url('assets/fonts/gc-commune.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
.design-live h1,.design-live h2,.hero h1 span,.page-hero h1 em,.story-copy h2 em,.local .bigword{font-family:'GC Commune',Georgia,serif;font-weight:400;font-style:normal;font-synthesis:none;letter-spacing:-.025em}
.design-live .hero h1{font-size:clamp(44px,4.8vw,68px);line-height:1.08}
.design-live .page-hero h1{font-size:clamp(44px,4.7vw,68px);line-height:1.08;letter-spacing:-.025em}
.piece-title>strong,.answer-sheet strong,.town-site strong,.example-content h4{font-family:'GC Commune',Georgia,serif;font-style:normal;font-weight:400;font-synthesis:none}
@media(max-width:720px){.design-live .hero h1,.design-live .page-hero h1{font-size:43px;letter-spacing:-.025em}.story-copy h2{font-size:34px}}

/* Open, fluid layout: the screen sets the width, not a boxed 1320px shell. */
.design-live{--page-gutter:clamp(22px,5vw,140px)}
.design-live .wrap{max-width:none;width:100%;padding-inline:var(--page-gutter)}
.design-live header{margin-bottom:0;border-bottom:0}
.design-live .hero{margin-inline:calc(-1 * var(--page-gutter));border-radius:0;padding:clamp(45px,4vw,90px) var(--page-gutter) 32px}
.design-live .hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:clamp(25px,4vw,100px)}
.design-live .hero h1{font-size:clamp(44px,4.5vw,112px);max-width:1100px;line-height:1.06}
.design-live .hero .intro{max-width:640px;font-size:clamp(17px,1.05vw,22px)}
.design-live .character-stage{width:100%;max-width:880px;min-height:0;justify-self:end;margin-bottom:30px}
.design-live .hero-foot{margin-top:30px;justify-content:space-between;gap:16px 28px}
.design-live .page-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(30px,5vw,125px);padding-block:clamp(40px,4vw,85px)}
.design-live .page-hero h1{font-size:clamp(44px,4.4vw,100px);max-width:1000px}
.design-live .page-hero figure{width:100%;max-width:820px;justify-self:end}
.design-live .editorial-content>div p{max-width:75ch}
.design-live .story-copy{max-width:650px}
@media(min-width:1700px){
 .design-live .story-sticky{gap:6vw;padding-inline:5vw}
 .design-live .hero .orbit-tag{padding:15px 22px;font-size:16px}
 .design-live .hero .orbit-tag strong{font-size:19px}
 .design-live .hero .pricefloat{width:210px;padding:22px}
 .design-live .hero .pricefloat strong{font-size:40px}
}
@media(max-width:1000px){
 .design-live{--page-gutter:25px}
 .design-live .hero h1{font-size:clamp(40px,5vw,54px)}
}
@media(max-width:720px){
 .design-live{--page-gutter:20px}
 .design-live .hero{padding-top:36px;padding-bottom:25px}
 .design-live .hero-grid,.design-live .page-hero{grid-template-columns:1fr;gap:30px}
 .design-live .hero h1,.design-live .page-hero h1{font-size:clamp(36px,9.5vw,52px)}
 .design-live .character-stage{max-width:470px;justify-self:center;margin-bottom:30px}
 .design-live .hero-foot{justify-content:flex-start;margin-top:25px;font-size:12px}
 .design-live .page-hero figure{max-width:440px;justify-self:center}
}

/* Keep the panoramic home hero; contain the reading and service sections. */
.design-live main > :not(.hero),.design-live .wrap > header,.design-live .wrap > footer{max-width:1280px;margin-inline:auto}
@media(min-width:721px){
 .design-live .page-hero h1{font-size:clamp(44px,4.7vw,68px)}
 .design-live .page-hero{gap:52px}
 .design-live .story-sticky{gap:45px;padding-inline:45px}
}
