@font-face{font-family:Century;src:url('century-gothic.ttf')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#172019;background:#fff;font-family:Century,Arial,sans-serif;line-height:1.65}.concept-bar{height:64px;background:#172019;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:relative;z-index:20}.concept-bar>div:first-child{display:flex;gap:14px;align-items:baseline}.concept-bar span{font-size:.8rem;opacity:.7}.switcher{display:flex;background:#fff1;padding:4px}.mode-btn{border:0;color:#fff;background:transparent;padding:8px 16px;cursor:pointer;font:inherit;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.mode-btn.active{background:#a9d08e;color:#152019}.site-header{height:84px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;top:64px;width:100%;z-index:10;background:#fff}.brand{display:block;width:225px}.logo{width:100%;height:auto;display:block}.logo-white{display:none}.site-header nav{display:flex;align-items:center;gap:2vw}.site-header nav a{text-decoration:none;color:#233026;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}.nav-cta{background:#548235;color:#fff!important;padding:12px 16px}.menu-btn{display:none}.hero{min-height:720px;padding-top:84px;display:grid;grid-template-columns:56% 44%;background:#eef5e9}.hero-media{background:linear-gradient(#0001,#0001),url('hero.webp') center/cover}.hero-copy{padding:8vw 7vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#548235;font-weight:bold;font-size:.78rem}.hero h1,.section h2{font-size:clamp(2.4rem,4.2vw,5rem);line-height:1.08;margin:.25em 0;font-weight:600;letter-spacing:-.035em}.hero p:not(.eyebrow){font-size:1.08rem;max-width:630px}.button{display:inline-block;align-self:flex-start;border:0;background:#548235;color:#fff;text-decoration:none;padding:14px 22px;margin-top:18px;text-transform:uppercase;letter-spacing:.12em;font:inherit;font-size:.78rem;cursor:pointer}.modern-title{display:none}.section{padding:105px 7vw;scroll-margin-top:20px}.intro{text-align:center}.intro .lead{font-size:1.25rem;max-width:900px;margin:25px auto 65px}.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:left}.audience-grid article{padding:34px;border:1px solid #dce6d8}.audience-grid span,.project-grid article>div>span{font-size:.72rem;color:#548235;letter-spacing:.13em;text-transform:uppercase}.audience-grid h3{font-size:1.25rem}.services{display:grid;grid-template-columns:1fr 1fr;background:#f2f7ef;padding:0}.services-image img{width:100%;height:100%;object-fit:cover;display:block}.services-copy{padding:8vw}.service-list{border-top:1px solid #bdc9b9;margin-top:30px}.service-list details{border-bottom:1px solid #bdc9b9;padding:15px 0}.service-list summary{cursor:pointer;font-size:1.1rem;font-weight:bold}.about{display:grid;grid-template-columns:1.4fr .6fr;gap:10vw;align-items:center}.about p{font-size:1.05rem}.about figure{margin:0}.about figure img{width:100%;display:block}.about figcaption{background:#548235;color:#fff;padding:20px;font-size:1.1rem}.about figcaption span{font-size:.8rem;opacity:.75}.projects{background:#182019;color:#fff}.projects .eyebrow{color:#a9d08e}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:55px}.project-grid article{background:#fff;color:#172019}.project-grid img{width:100%;aspect-ratio:1.4;object-fit:cover;display:block}.project-grid article>div{padding:25px}.project-grid h3{font-size:1.25rem}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;background:#edf4e9}.direct{display:flex;flex-direction:column}.direct a{color:#314f36;text-decoration:none;font-weight:bold}form{display:flex;flex-direction:column;gap:18px}label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:bold}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #71816e;background:#fff8;padding:13px 3px;margin-top:5px;font:inherit;font-size:1rem;text-transform:none;letter-spacing:normal}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}footer{background:#101612;color:#fff;display:flex;align-items:center;gap:25px;padding:35px 5vw}footer img{width:180px}footer p:last-child{margin-left:auto}.menu-btn{font:inherit}

html[data-mode=modern] body{background:#f4f1e8;color:#18322d;font-family:Arial,sans-serif}html[data-mode=modern] .concept-bar{background:#0d2420}html[data-mode=modern] .mode-btn.active{background:#d9bf7d;color:#102520}html[data-mode=modern] .site-header{position:absolute;background:transparent}html[data-mode=modern] .logo-green{display:none}html[data-mode=modern] .logo-white{display:block}html[data-mode=modern] .site-header nav a{color:#fff}html[data-mode=modern] .nav-cta{background:#d9bf7d!important;color:#17332d!important}html[data-mode=modern] .hero{min-height:860px;display:flex;position:relative;padding-top:84px;background:#102a24;color:#fff}html[data-mode=modern] .hero-media{position:absolute;inset:0;background:linear-gradient(90deg,#0b211fef 0%,#0b211f9c 46%,#0b211f22 80%),url('hero.webp') center/cover}html[data-mode=modern] .hero-copy{position:relative;width:64%;padding:12vw 8vw;z-index:1}html[data-mode=modern] .hero h1,html[data-mode=modern] .section h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em}html[data-mode=modern] .hero h1{font-size:clamp(3.3rem,6.5vw,7.5rem)}html[data-mode=modern] .faithful-title{display:none}html[data-mode=modern] .modern-title{display:inline}html[data-mode=modern] .eyebrow{color:#b79445}html[data-mode=modern] .button{background:#d9bf7d;color:#153029}html[data-mode=modern] .intro{text-align:left;padding-top:140px}html[data-mode=modern] .intro h2{max-width:850px}html[data-mode=modern] .intro .lead{margin:30px 0 75px;max-width:760px}html[data-mode=modern] .audience-grid{grid-template-columns:1fr 1fr;gap:1px;background:#9d9a8055}html[data-mode=modern] .audience-grid article{background:#f4f1e8;border:0;padding:55px}html[data-mode=modern] .services{background:#17352f;color:#fff;grid-template-columns:55% 45%}html[data-mode=modern] .services-image{order:2}html[data-mode=modern] .services-copy{order:1;padding:9vw 7vw}html[data-mode=modern] .service-list{border-color:#ffffff42}html[data-mode=modern] .service-list details{border-color:#ffffff42}html[data-mode=modern] .about{padding-top:145px;padding-bottom:145px;grid-template-columns:.8fr 1.2fr}html[data-mode=modern] .about figure{order:1}html[data-mode=modern] .about-copy{order:2}html[data-mode=modern] .about figure img{filter:saturate(.75)}html[data-mode=modern] .about figcaption{background:#b79445}html[data-mode=modern] .projects{background:#0e2420}html[data-mode=modern] .project-grid{grid-template-columns:1fr}html[data-mode=modern] .project-grid article{display:grid;grid-template-columns:1fr 1fr;background:#17332d;color:#fff}html[data-mode=modern] .project-grid article:nth-child(even) img{order:2}html[data-mode=modern] .project-grid article>div{padding:6vw}html[data-mode=modern] .project-grid img{height:100%;aspect-ratio:1.35}html[data-mode=modern] .contact{background:#d9bf7d;grid-template-columns:1fr 1fr}html[data-mode=modern] .contact .eyebrow{color:#17332d}html[data-mode=modern] input,html[data-mode=modern] select,html[data-mode=modern] textarea{background:transparent;border-color:#304c43}html[data-mode=modern] form .button{background:#17332d;color:#fff}html[data-mode=modern] footer{background:#081714}

@media(max-width:850px){.concept-bar{height:auto;min-height:90px;padding:12px 5vw;gap:8px;align-items:flex-start}.concept-bar>div:first-child{display:block}.concept-bar span{display:block}.site-header{top:90px;height:72px}.brand{width:175px}.menu-btn{display:block;border:1px solid #54715c;background:#fff;padding:8px 12px;text-transform:uppercase}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.site-header nav a{color:#172019!important}.hero,html[data-mode=modern] .hero{min-height:720px;padding-top:72px;display:flex}.hero-media,html[data-mode=modern] .hero-media{position:absolute;inset:0;background:linear-gradient(#0d261db8,#0d261db8),url('hero.webp') center/cover}.hero-copy,html[data-mode=modern] .hero-copy{position:relative;color:#fff;width:100%;padding:22vw 7vw 12vw;z-index:1}.hero .eyebrow{color:#d9dcb4}.audience-grid,html[data-mode=modern] .audience-grid{grid-template-columns:1fr}.section{padding:75px 7vw}.services,html[data-mode=modern] .services{grid-template-columns:1fr}.services-image,html[data-mode=modern] .services-image{order:1}.services-copy,html[data-mode=modern] .services-copy{order:2;padding:70px 7vw}.about,html[data-mode=modern] .about{grid-template-columns:1fr;gap:45px}.about figure,html[data-mode=modern] .about figure{order:2;max-width:420px}.about-copy,html[data-mode=modern] .about-copy{order:1}.project-grid{grid-template-columns:1fr}.project-grid article,html[data-mode=modern] .project-grid article{display:block}.contact,html[data-mode=modern] .contact{grid-template-columns:1fr;gap:55px}.form-row{grid-template-columns:1fr}footer{align-items:flex-start;flex-direction:column}footer p{margin:0!important}}
@media(max-width:520px){.concept-bar{padding:9px 4vw}.concept-bar>div:first-child span{display:none}.switcher{width:100%}.mode-btn{flex:1;padding:7px 5px;font-size:.68rem}.hero h1{font-size:2.6rem}html[data-mode=modern] .hero h1{font-size:3.3rem}.audience-grid article,html[data-mode=modern] .audience-grid article{padding:30px}.project-grid article>div,html[data-mode=modern] .project-grid article>div{padding:28px}}

/* Keep every editorial heading and paragraph inside its own column. */
.hero-copy,.services-copy,.about-copy,.contact>div,.project-grid article>div{min-width:0;overflow:visible}.hero h1,.section h2,.section h3,.section p{max-width:100%;overflow-wrap:break-word}.services-image{min-width:0;overflow:hidden}.services-image img{object-position:center}
@media(max-width:850px){.services-image img{height:auto;aspect-ratio:1400/403;object-fit:cover}.services-copy h2{font-size:clamp(2.35rem,11vw,4.4rem)}}

/* Refined editorial typography */
body{font-family:Century,"Avenir Next",Avenir,"Segoe UI",sans-serif;font-size:16px;letter-spacing:-.008em}.hero h1,.section h2{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-weight:400;letter-spacing:-.045em}.hero h1{max-width:12ch}.section h2{max-width:16ch}.lead{line-height:1.75}.audience-grid h3,.service-list summary,.process h3,.project-grid h3{letter-spacing:-.025em}.eyebrow{letter-spacing:.21em;font-size:.75rem}.services-copy>p:not(.eyebrow),.approach-heading>p:not(.eyebrow),.about-copy p{line-height:1.82}

/* Moving inspiration gallery */
.image-reel{padding:95px 0;background:#fff;overflow:hidden}.reel-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:0 7vw 36px}.reel-intro p{margin:0}.reel-intro>p:last-child{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(1.45rem,2.2vw,2.25rem);max-width:620px;line-height:1.25}.reel-window{overflow:hidden}.reel-track{display:flex;width:max-content;gap:18px;animation:reel-scroll 42s linear infinite}.reel-window:hover .reel-track{animation-play-state:paused}.reel-track figure{width:min(55vw,700px);margin:0;position:relative;overflow:hidden}.reel-track img{display:block;width:100%;height:390px;object-fit:cover;transition:transform .6s ease}.reel-track figure:hover img{transform:scale(1.025)}.reel-track figcaption{position:absolute;left:22px;bottom:20px;color:#fff;background:#13251fdd;padding:9px 14px;text-transform:uppercase;font-size:.7rem;letter-spacing:.14em}@keyframes reel-scroll{to{transform:translateX(calc(-50% - 9px))}}

/* Process */
.approach{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;background:#f7f6f1}.approach-heading{position:sticky;top:40px;align-self:start}.approach-heading h2{margin-bottom:30px}.process{list-style:none;padding:0;margin:0;border-top:1px solid #c8cec6}.process li{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:27px 0;border-bottom:1px solid #c8cec6}.process li>span{font-size:.73rem;letter-spacing:.15em;color:#548235;padding-top:5px}.process h3{margin:0 0 5px;font-size:1.2rem}.process p{margin:0;color:#46534a}

html[data-mode=modern] body{font-family:"Avenir Next",Avenir,"Segoe UI",sans-serif}html[data-mode=modern] .hero h1,html[data-mode=modern] .section h2,html[data-mode=modern] .reel-intro>p:last-child{font-family:"Iowan Old Style",Baskerville,Georgia,serif}html[data-mode=modern] .image-reel{background:#102a24;color:#fff}html[data-mode=modern] .image-reel .eyebrow{color:#d9bf7d}html[data-mode=modern] .reel-track figcaption{background:#d9bf7de8;color:#17332d}html[data-mode=modern] .approach{background:#e5dfce}html[data-mode=modern] .process li>span{color:#9a772e}

@media(max-width:850px){.reel-intro{align-items:start;flex-direction:column}.reel-track figure{width:78vw}.reel-track img{height:300px}.approach{grid-template-columns:1fr;gap:45px}.approach-heading{position:static}.section h2{max-width:100%}}
@media(max-width:520px){.image-reel{padding:70px 0}.reel-track figure{width:86vw}.reel-track img{height:240px}.process li{grid-template-columns:42px 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reel-track{animation:none}.reel-window{overflow-x:auto}.reel-track img{transition:none}}

/* Paired founder portraits */
.founders-portraits{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.founders-portraits figure{margin:0;min-width:0}.founders-portraits img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.founders-portraits figcaption{display:flex;flex-direction:column;gap:2px;background:#548235;color:#fff;padding:18px}.founders-portraits figcaption strong{font-size:1rem;font-weight:600}.founders-portraits figcaption span{font-size:.73rem;text-transform:uppercase;letter-spacing:.13em;opacity:.78}html[data-mode=modern] .founders-portraits{gap:2px}html[data-mode=modern] .founders-portraits img{filter:saturate(.86) contrast(1.02)}html[data-mode=modern] .founders-portraits figcaption{background:#b79445;color:#142c27;padding:20px}
@media(max-width:850px){.founders-portraits{max-width:680px}.about .founders-portraits{order:2}}
@media(max-width:520px){.founders-portraits{gap:8px}.founders-portraits figcaption{padding:13px 11px}.founders-portraits figcaption strong{font-size:.88rem}.founders-portraits figcaption span{font-size:.65rem}}

/* High-resolution services image rotation */
.service-rotator{position:relative;min-height:720px;background:#17352f}.service-rotator .service-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:service-fade 24s infinite;will-change:opacity,transform}.service-rotator .slide-1{animation-delay:0s}.service-rotator .slide-2{animation-delay:6s}.service-rotator .slide-3{animation-delay:12s}.service-rotator .slide-4{animation-delay:18s}@keyframes service-fade{0%{opacity:0;transform:scale(1.035)}4%{opacity:1}23%{opacity:1}27%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
@media(max-width:850px){.service-rotator{min-height:430px}.service-rotator .service-slide{height:100%;aspect-ratio:auto}}
@media(max-width:520px){.service-rotator{min-height:310px}}
@media(prefers-reduced-motion:reduce){.service-rotator .service-slide{animation:none;opacity:0;transform:none}.service-rotator .slide-1{opacity:1}}

.service-rotator .technical-slide{object-fit:contain;padding:7%;background:#eef2e9}.service-rotator .cabin-slide{padding:5%;background:#17352f}html[data-mode=modern] .service-rotator .technical-slide{background:#e5dfce}html[data-mode=modern] .service-rotator .cabin-slide{background:#102a24}

/* Production release: refreshed design only */
html[data-mode=modern] .site-header{top:0}

.service-list details p{margin:.6rem 0}.service-list details ul{margin:.8rem 0 1rem;padding-left:1.2rem}.service-list details li{margin:.35rem 0}.legacy-gallery{padding:110px 7vw 125px;background:#f4f1e8}.legacy-heading{max-width:900px;margin-bottom:48px}.legacy-heading h2{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(2.4rem,4.2vw,5rem);font-weight:400;letter-spacing:-.045em;line-height:1.08;margin:.25em 0}.legacy-heading>p:last-child{font-size:1.08rem;max-width:760px}.legacy-strips{display:grid;gap:18px}.legacy-strips img{display:block;width:100%;height:auto;background:#17352f}.project-grid img{aspect-ratio:1.6;object-fit:cover}
@media(max-width:850px){.legacy-gallery{padding:75px 7vw}.legacy-strips{gap:10px}.project-grid img{aspect-ratio:1.6}}
