@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&display=swap');
/* Stage 2 homepage */
.hero-content-fixed{position:absolute;z-index:3;left:clamp(1.5rem,8vw,8rem);right:clamp(1.5rem,8vw,8rem);bottom:clamp(7rem,14vw,11rem)}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-slider{display:block;overflow:hidden}.hero-slides{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;display:flex;align-items:flex-end;padding:clamp(7rem,14vw,11rem) clamp(1.5rem,8vw,8rem);opacity:0;visibility:hidden;transition:opacity 1.1s ease,visibility 1.1s}.hero-slide.is-active{opacity:1;visibility:visible;z-index:1}.hero-slide .hero-image{transform:scale(1.025);transition:transform 8s ease}.hero-slide.is-active .hero-image{transform:scale(1.07)}.hero-controls{position:absolute;z-index:3;left:clamp(1.5rem,8vw,8rem);bottom:3rem;display:flex;align-items:center;gap:1rem;color:#fff}.hero-controls>button{width:2.6rem;height:2.6rem;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(8,20,14,.18);color:#fff;font-size:1rem;cursor:pointer}.hero-dots{display:flex;gap:.45rem}.hero-dots button{width:2.7rem;height:1rem;border:0;background:transparent;padding:.4rem 0;cursor:pointer}.hero-dots button span{display:block;height:1px;background:rgba(255,255,255,.4);position:relative;overflow:hidden}.hero-dots button.is-active span{background:#fff}.hero-dots button.is-active span:after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;animation:hero-progress 6.5s linear}.hero-counter{position:absolute;z-index:3;right:clamp(1.5rem,8vw,8rem);bottom:2.7rem;color:#fff;font-size:.72rem;letter-spacing:.12em}.hero-slide .hero-content{z-index:2}.hero-slide[aria-hidden="true"] a{visibility:hidden}@keyframes hero-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.hero-slide,.hero-slide .hero-image{transition:none}.hero-dots button.is-active span:after{animation:none}}
.site-header-overlay{position:absolute;z-index:5;width:100%;color:#fff;border-bottom:1px solid rgba(255,255,255,.22)}.site-header nav{display:flex;gap:2rem}.site-header nav a{text-decoration:none;font-size:.82rem}.cinematic-hero{min-height:100svh;display:flex;align-items:flex-end;position:relative;background-image:var(--hero);background-size:cover;background-position:center;color:#fff;padding:clamp(7rem,14vw,11rem) clamp(1.5rem,8vw,8rem)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,15,11,.78),rgba(6,15,11,.18) 62%),linear-gradient(0deg,rgba(6,15,11,.45),transparent 45%)}.hero-content{position:relative;max-width:900px}.hero-content h1{font-size:clamp(3.4rem,7.5vw,7.8rem)}.hero-content>p:not(.eyebrow){max-width:560px;color:rgba(255,255,255,.8)}.line-link{display:inline-flex;gap:2rem;margin-top:1.7rem;padding-bottom:.45rem;border-bottom:1px solid;text-decoration:none}.scroll-note{position:absolute;right:4rem;bottom:3rem;writing-mode:vertical-rl;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase}.studio-section{padding:clamp(5rem,11vw,10rem) clamp(1.5rem,8vw,8rem)}.section-intro{display:grid;grid-template-columns:.55fr 1.45fr;column-gap:4rem;margin-bottom:clamp(3rem,8vw,7rem)}.section-intro .eyebrow{grid-row:1/3}.section-intro h2{font-size:clamp(2.7rem,5vw,5.5rem);max-width:850px;margin:0}.section-intro>p:last-child{max-width:590px;color:var(--muted)}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:80px 1fr 1fr;gap:2rem;padding:2.2rem 0;border-bottom:1px solid var(--line)}.service-list h3,.project-card h3,.value-grid h3,.process-list h3{font:500 clamp(1.4rem,2.4vw,2.2rem)/1.15 "Manrope";letter-spacing:-.035em;margin:0}.service-list p,.project-card>p:last-child,.value-grid p,.process-list p{color:var(--muted);margin:0}.project-section{background:#e8e8df}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.project-card:nth-child(2){margin-top:8rem}.project-visual{height:clamp(300px,42vw,640px);margin-bottom:1.5rem;background:linear-gradient(145deg,#7f947e,#1b4431);position:relative}.project-card:nth-child(2) .project-visual{background:linear-gradient(35deg,#b5aa8a,#3f5144)}.project-card:nth-child(3) .project-visual{background:linear-gradient(155deg,#557064,#172d23)}.project-visual:before{content:"";position:absolute;width:65%;height:65%;border:1px solid rgba(255,255,255,.45);border-radius:50%;right:-15%;top:16%}.project-visual span{position:absolute;bottom:1.3rem;left:1.3rem;color:white}.dark-section{background:#13291f;color:#fff;padding:clamp(5rem,11vw,10rem) clamp(1.5rem,8vw,8rem)}.dark-section>header{max-width:950px}.dark-section h2{font-size:clamp(3rem,6vw,6.5rem)}.dark-section>header>p:last-child{max-width:650px;color:rgba(255,255,255,.65)}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:7rem}.value-grid article{border-top:1px solid rgba(255,255,255,.25);padding-top:1.5rem}.value-grid p{color:rgba(255,255,255,.6)}.process-list{list-style:none;padding:0;margin:0 0 0 35%;border-top:1px solid var(--line)}.process-list li{display:grid;grid-template-columns:80px 1fr;gap:1rem;padding:2rem 0;border-bottom:1px solid var(--line)}.quote-section{padding:clamp(6rem,13vw,13rem) clamp(1.5rem,12vw,13rem);text-align:center}.quote-section blockquote{font:400 clamp(2.2rem,5vw,5rem)/1.2 "Manrope";letter-spacing:-.045em;margin:2rem auto;max-width:1200px}.home-cta{background:#b8c4b5;text-align:center;padding:clamp(5rem,10vw,10rem) 1.5rem}.home-cta h2{font-size:clamp(3.6rem,8vw,8rem)}.home-cta>p:not(.eyebrow){max-width:550px;margin:1rem auto 2rem}.button-light{background:#f4f1e9;color:#183c2c}.cms-form{display:grid;gap:1rem}.cms-section{background:#fff;border:1px solid var(--line)}.cms-section summary{display:flex;align-items:center;justify-content:space-between;padding:1.3rem 1.5rem;cursor:pointer;list-style:none}.cms-section summary span:first-child{display:grid}.cms-section summary small{color:var(--muted)}.cms-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.5rem;border-top:1px solid var(--line)}.cms-fields label{display:grid;gap:.4rem;font-size:.75rem;font-weight:600}.cms-fields input,.cms-fields textarea{width:100%;padding:.75rem;border:1px solid var(--line);font:inherit;background:#fafbf8}.cms-fields .field-wide{grid-column:1/-1}.cms-fields .check-field{display:flex;align-items:center;flex-direction:row}.check-field input{width:auto}.cms-items{padding:0 1.5rem 1.5rem}.cms-items article{border:1px solid var(--line);margin-top:.8rem}.cms-actions{position:sticky;bottom:1rem;display:flex;justify-content:flex-end;padding:1rem;background:rgba(238,240,235,.92)}.alert-success{background:#dce9dd;color:#245e32;margin-bottom:1rem}@media(max-width:800px){.site-header nav a:first-child,.scroll-note{display:none}.cinematic-hero{background-position:62% center}.section-intro{display:block}.section-intro h2{margin:1rem 0}.service-list article{grid-template-columns:45px 1fr}.service-list article p{grid-column:2}.project-grid{display:block}.project-card,.project-card:nth-child(2){margin:0 0 4rem}.project-visual{height:110vw;max-height:560px}.value-grid{grid-template-columns:1fr;margin-top:4rem}.process-list{margin-left:0}.cms-fields{grid-template-columns:1fr}.cms-fields .field-wide{grid-column:auto}}
:root{--ink:#17201c;--forest:#183c2c;--sage:#b8c4b5;--cream:#f4f1e9;--white:#fff;--line:rgba(23,32,28,.13);--muted:#657069;--shadow:0 30px 80px rgba(14,31,22,.14)}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.6}h1,h2{font-family:"Manrope",sans-serif;font-weight:500;letter-spacing:-.045em;line-height:1.06;margin:.35em 0}h1{font-size:clamp(2.6rem,6vw,6rem)}h2{font-size:2rem}a{color:inherit}.site-header,.site-footer{display:flex;align-items:center;justify-content:space-between;padding:1.5rem clamp(1.5rem,5vw,5rem)}.brand{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none;font-weight:600}.brand-mark{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid currentColor;border-radius:50%;font-size:.72rem;letter-spacing:.08em}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600}.foundation-hero{min-height:calc(100vh - 164px);display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2rem,7vw,8rem);align-items:center;padding:5rem clamp(1.5rem,8vw,9rem)}.foundation-hero>div:first-child{max-width:850px}.hero-copy{max-width:590px;color:var(--muted);font-size:1.12rem;margin:1.8rem 0 2.2rem}.button{display:inline-flex;justify-content:center;border:0;background:var(--forest);color:white;padding:.95rem 1.35rem;text-decoration:none;font:600 .88rem/1 "DM Sans";cursor:pointer}.hero-panel{height:min(68vh,680px);background:linear-gradient(155deg,#9ead9d,#254d38 56%,#142c21);box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;color:white;overflow:hidden;position:relative}.hero-panel:before{content:"";position:absolute;inset:12% -20% 28% 25%;border:1px solid rgba(255,255,255,.35);border-radius:50%}.hero-panel span{font-size:clamp(1.4rem,3vw,3.4rem);line-height:1.08;letter-spacing:-.04em}.site-footer{border-top:1px solid var(--line);font-size:.75rem;color:var(--muted)}.auth-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(120deg,#142a20,#315c45)}.auth-shell{width:min(92%,480px)}.auth-card{background:var(--cream);padding:clamp(2rem,6vw,4rem);box-shadow:var(--shadow)}.auth-card h1{font-size:3rem}.auth-card>.brand{margin-bottom:4rem}.stacked-form{display:grid;gap:1.2rem;margin:2rem 0}.stacked-form label{display:grid;gap:.45rem;font-size:.82rem;font-weight:600}.stacked-form input{width:100%;padding:.9rem;border:1px solid var(--line);background:white;font:inherit;outline:none}.stacked-form input:focus{border-color:var(--forest);box-shadow:0 0 0 3px rgba(24,60,44,.1)}.alert{background:#f4d8d2;color:#742c21;padding:.8rem 1rem;font-size:.85rem}.quiet-link{font-size:.82rem;color:var(--muted)}.admin-body{min-height:100vh;background:#eef0eb}.sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:#142a20;color:white;padding:2rem;z-index:2}.brand-light{margin-bottom:4rem}.sidebar nav{display:grid;gap:.7rem}.sidebar nav a{padding:.8rem;text-decoration:none}.sidebar nav a.active{background:rgba(255,255,255,.1)}.sidebar nav span{font-size:.72rem;color:rgba(255,255,255,.5);margin-top:2rem}.admin-main{margin-left:270px}.admin-topbar{height:76px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 2rem}.admin-topbar form{margin:0}.text-button,.menu-button{border:0;background:none;font:inherit;cursor:pointer}.menu-button{display:none}.admin-content{padding:clamp(1.5rem,5vw,4rem)}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:3rem}.page-heading h1{font-size:clamp(2.5rem,5vw,4.5rem)}.page-heading p{color:var(--muted)}.status-badge{background:#dce9dd;color:#245e32;border-radius:99px;padding:.45rem .8rem;font-size:.75rem;font-weight:600}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.metric-grid article,.panel{background:white;padding:1.6rem;border:1px solid var(--line)}.metric-grid span,.metric-grid small{display:block;color:var(--muted)}.metric-grid strong{display:block;font-size:1.8rem;margin:.5rem 0}.panel{margin-top:1rem;max-width:780px}.error-page{min-height:100vh;display:grid;place-items:center;padding:2rem}.error-page main{max-width:800px}.error-page h1{font-size:clamp(3rem,8vw,7rem)}@media(max-width:800px){.site-header .eyebrow{display:none}.foundation-hero{grid-template-columns:1fr;padding-top:2rem}.hero-panel{height:50vh}.site-footer{align-items:flex-start;gap:1rem;flex-direction:column}.sidebar{transform:translateX(-100%);transition:transform .25s}.sidebar-open .sidebar{transform:none}.admin-main{margin-left:0}.menu-button{display:block}.metric-grid{grid-template-columns:1fr}.page-heading{display:block}.status-badge{display:inline-block;margin-top:1rem}}
