/* Editorial refinement. The base stylesheet remains the responsive foundation. */
:root{--paper:#faf9f6;--ink:#203330;--green:#18352f;--muted:#606d66;--line:#dedfd8}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:#d7ddce;color:#18352f}
.header{padding-inline:max(5%,calc((100vw - 1320px)/2));height:88px;background:rgba(250,249,246,.97)}
.wordmark{font-size:32px;letter-spacing:-1.9px}
.header nav{gap:34px;font-size:12px}
.header nav a{position:relative}
.header nav a:not(.nav-contact)::after{content:"";height:1px;position:absolute;bottom:8px;left:0;right:0;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.header nav a:hover::after,.header nav a[aria-current="location"]::after{transform:scaleX(1)}
.hero{height:min(840px,calc(100svh - 88px));min-height:620px}
.hero-copy{padding-left:max(7%,calc((100vw - 1240px)/2));padding-top:clamp(80px,12vh,130px)}
.hero h1{font-size:clamp(54px,6.3vw,94px);font-weight:400;letter-spacing:-.065em;line-height:1.06}
.hero h1 em{color:#e2e5d9}
.hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.7;color:#ebeee8}
.hero-shade{background:linear-gradient(90deg,rgba(10,27,25,.69),rgba(10,27,25,.12) 74%),linear-gradient(0deg,rgba(10,27,25,.5),transparent 26%)}
.hero-bottom{padding-top:20px;border-top:1px solid rgba(255,255,255,.25);font-size:10px;letter-spacing:.03em}
.section{padding-inline:max(7%,calc((100vw - 1240px)/2));padding-block:112px}
.intro{padding-top:0}
.chapter-index{display:flex;gap:32px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);min-height:92px;margin-bottom:90px;font-size:11px;font-weight:600}
.chapter-index>span{color:var(--muted);font-size:9px;letter-spacing:.14em;margin-right:auto}
.chapter-index a{padding:16px 0;white-space:nowrap}
.chapter-index a:hover{color:#8a683c}
.eyebrow{color:#66776d;font-size:10px;letter-spacing:.16em;margin-bottom:26px}
.hero .eyebrow,.brand-copy .eyebrow{color:#d7e0d6}
h2{font-size:clamp(34px,3.8vw,55px);line-height:1.15;letter-spacing:-.055em;text-wrap:balance}
.intro-grid{grid-template-columns:1.15fr 1fr;gap:14%}
.intro-copy .lead{font-size:24px;line-height:1.5;letter-spacing:-.025em}
.intro-copy p{font-size:15px;line-height:1.9}
.principles{margin-top:66px}
.principles>div+div{border-left:1px solid var(--line);padding-left:32px}
.principles h3{font-size:22px}
.principles p{font-size:13px}
.button{gap:38px;font-size:12px;transition:background .2s,color .2s}
.button span,.text-link span{transition:transform .2s}
.button:hover span,.text-link:hover span{transform:translate(3px,-2px)}
.brand-section{grid-template-columns:1fr 1fr}
.brand-copy{padding:84px max(9%,40px)}
.brand-copy h2{font-size:80px;letter-spacing:-.075em}
.brand-copy .lead{font-size:28px;letter-spacing:-.03em}
.brand-visual{background:#eff0eb;padding:54px}
.brand-visual img{max-width:510px;margin:auto;filter:saturate(.18)}
.image-caption{font-size:10px;letter-spacing:.04em}
.section-heading{gap:70px}
.section-heading>p{font-size:14px;max-width:260px}
.filters{border-bottom:1px solid var(--line);gap:8px 22px;padding-bottom:0;margin-top:48px}
.filters button{border:0;border-bottom:2px solid transparent;padding:14px 0;margin-bottom:-1px;color:var(--muted);font-size:11px;background:transparent}
.filters button[aria-pressed=true]{color:var(--green);background:transparent;border-color:var(--green);font-weight:700}
.filters button:hover{color:var(--green)}
.product-count{font-size:11px;margin:22px 0}
.product-grid{gap:18px;background:none;border:0}
.product-card{min-height:326px;background:#fff;border:1px solid var(--line);padding:30px;position:relative;transition:border-color .2s,background .2s}
.product-card:hover{background:#f2f4ee;border-color:#9da99c}
.card-top{margin-bottom:36px}
.card-top>span{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:17px}
.card-top img{width:36px;height:36px;filter:saturate(.2)}
.product-card h3{font-size:23px}
.product-card .category{font-size:9px!important;letter-spacing:.09em}
.product-card p{font-size:13px;line-height:1.75}
.card-bottom{margin-top:auto;padding-top:24px;font-size:11px}
.feature-grid{padding-top:0;gap:36px}
.feature-grid article{background:transparent;border-bottom:1px solid var(--line)}
.feature-grid img{background:#eeefe9;aspect-ratio:1.55;object-fit:contain;filter:saturate(.18)}
.feature-grid article>div{padding:30px 0 36px}
.feature-grid h2{font-size:36px}
.business{background:#e9ede4;border-block:1px solid #d9dfd3}
.business h2{font-size:44px}
.business p:not(.eyebrow){font-size:16px}
.footer{padding-inline:max(7%,calc((100vw - 1240px)/2));background:#132e29}
.footer-top{padding-bottom:38px}
.footer-links{grid-template-columns:2fr 1fr 1fr;padding-block:44px}
.footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
.footer .wordmark:hover{text-decoration:none}
@media(max-width:1000px){.header nav{gap:20px}.chapter-index{gap:20px}.chapter-index>span{max-width:110px;line-height:1.7}.intro-grid{gap:7%}.brand-copy{padding:60px 9%}.brand-visual{padding:28px}}
@media(max-width:700px){
 .header{height:72px;padding-inline:24px}.header nav{top:72px;gap:0}.header nav a::after{display:none}.hero{height:auto;min-height:calc(100svh - 72px)}
 .hero-copy{padding:72px 24px 142px}.hero h1{font-size:clamp(42px,10.8vw,66px)}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-bottom{font-size:10px}
 .section{padding:60px 24px}.intro{padding-top:0}.chapter-index{margin-bottom:48px;gap:12px;flex-wrap:wrap;justify-content:flex-start;padding-block:18px}.chapter-index>span{max-width:none;width:100%;font-size:9px}.chapter-index a{font-size:10px;padding:10px 0;margin-right:12px}
 .intro-grid{grid-template-columns:1fr;gap:24px}.intro-copy .lead{font-size:21px}.principles{margin-top:38px}.principles>div+div{border-left:0;padding-left:0}
 .brand-section{grid-template-columns:1fr;gap:0}.brand-copy{padding:52px 24px}.brand-copy h2{font-size:66px}.brand-copy .lead{font-size:25px}.brand-visual{padding:28px}.brand-visual img{max-width:360px}
 .filters{gap:20px;margin-top:28px}.filters button{font-size:12px;padding:16px 0}.product-grid{gap:12px}.product-card{min-height:286px;padding:24px}.card-top{margin-bottom:24px}.product-card p{font-size:14px}.product-card .category{font-size:10px!important}
 .feature-grid{padding-top:0;gap:36px}.feature-grid article>div{padding:24px 0 30px}.feature-grid h2{font-size:30px}.business h2{font-size:34px}.footer{padding-inline:24px}.footer-links{grid-template-columns:1fr 1fr}.footer-links a{font-size:13px}
}
.parent-perspective{background:#e9ede4;border-block:1px solid var(--line)}
.company-tree{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0;margin:50px 0 0;border:1px solid var(--line)}
.company-tree li{position:relative;padding:36px;min-width:0}
.company-tree li+li{border-left:1px solid var(--line)}
.company-tree li+li::before{content:'→';position:absolute;left:-14px;top:62px;width:28px;text-align:center;background:var(--paper);color:#758576}
.company-tree li:first-child{background:var(--green);color:white}
.tree-level{display:block;font-size:10px;letter-spacing:.12em;margin-bottom:22px}
.company-tree strong{display:block;font-family:Manrope,Arial,sans-serif;font-size:28px;font-weight:500;letter-spacing:-.04em}
.company-tree p{font-size:14px;line-height:1.7;margin:16px 0 0}
.parent-brand{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;align-items:center;border-top:1px solid var(--line)}
.parent-brand>div>p:not(.eyebrow):not(.lead){font-size:15px;line-height:1.85;color:var(--muted);max-width:560px}
.parent-brand .lead{font-size:23px}
.parent-brand-actions{display:flex;flex-wrap:wrap;gap:18px 30px;margin-top:30px;align-items:center}
.brand-signature{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#edf0e9;padding:54px 24px;min-height:330px}
.brand-signature .wordmark{font-size:40px}
.signature-line{height:42px;width:1px;background:#bac6b8;margin:18px 0}
.brand-signature img{object-fit:contain;filter:saturate(.25);margin-bottom:10px}
.brand-signature>strong{font-size:23px;letter-spacing:-.035em}
.brand-signature>span:last-child{font-size:9px;letter-spacing:.15em;color:var(--muted);margin-top:12px}
.portfolio-breadcrumb{padding:30px max(7%,calc((100vw - 1240px)/2)) 0;display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}
.portfolio-breadcrumb a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.company-tree{grid-template-columns:1fr;margin-top:30px}.company-tree li{padding:28px}.company-tree li+li{border-left:0;border-top:1px solid var(--line)}.company-tree li+li::before{content:'↓';left:28px;top:-12px}.parent-brand{grid-template-columns:1fr;gap:32px}.brand-signature{min-height:280px;padding:32px 24px}.portfolio-breadcrumb{padding:24px 24px 0}.parent-brand-actions .button{width:100%;gap:18px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
