@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500&family=Instrument+Serif:ital@0;1&display=swap');
:root{--bg:#f4f1e9;--paper:#faf8f2;--ink:#172522;--muted:#53625d;--line:#cbd2c8;--deep:#1d3430;--soft:#dce7dd;--accent:#d8e66b;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',sans-serif;--mono:'IBM Plex Mono',monospace;--ease:cubic-bezier(.22,1,.36,1);color-scheme:light}
html[data-theme=dark]{--bg:#14221f;--paper:#1a2c28;--ink:#f3f0e7;--muted:#b1beb2;--line:#435750;--deep:#0f1917;--soft:#29403a;--accent:#d8e66b;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.55;min-width:320px}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}.wrap{width:min(calc(100% - 5rem),1240px);margin:auto}.skip-link{position:fixed;z-index:99;top:1rem;left:1rem;padding:.7rem 1rem;background:var(--accent);transform:translateY(-150%)}.skip-link:focus{transform:none}
#site-header{position:fixed;z-index:10;top:0;left:0;right:0;border-bottom:1px solid rgba(203,210,200,.25);transition:transform .45s var(--ease),background .3s,box-shadow .3s;color:var(--ink)}#site-header.is-scrolled{background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(16px);border-color:var(--line);box-shadow:0 8px 25px rgba(23,37,34,.06)}#site-header.is-hidden{transform:translateY(-100%)}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;line-height:1}.brand img{display:block;width:116px;height:66px;object-fit:contain;border:1px solid rgba(23,37,34,.14)}nav{display:flex;gap:2.4rem;margin-left:auto;margin-right:3rem}nav a,.header-call,.theme-toggle{font:11px var(--mono);letter-spacing:.04em}nav a{position:relative;color:var(--muted)}nav a:after{content:"";position:absolute;height:1px;left:0;right:100%;bottom:-8px;background:var(--ink);transition:right .3s var(--ease)}nav a:hover:after,nav a.is-active:after{right:0}.header-actions{display:flex;align-items:center;gap:1.25rem}.header-call{border-left:1px solid var(--line);padding-left:1.25rem}.header-call span{color:var(--muted);font-size:16px}.theme-toggle,.menu-toggle{border:1px solid var(--line);background:transparent;color:inherit;width:42px;height:32px;cursor:pointer}.theme-toggle{font-size:9px}.theme-toggle .moon{display:none}.menu-toggle{display:none}
html[data-theme=dark] .theme-toggle .sun{display:none}html[data-theme=dark] .theme-toggle .moon{display:inline}
.hero{padding-top:86px;min-height:calc(100svh - 0px);display:flex;align-items:center;position:relative;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1fr .88fr;gap:8vw;align-items:center;padding:5.5rem 0 4.5rem}.eyebrow{font:10px var(--mono);letter-spacing:.13em;color:var(--muted);margin:0}.eyebrow span{color:var(--accent);padding:0 .45rem}.hero h1,h2,h3{font-weight:500;letter-spacing:-.055em;line-height:.93;margin:0}.hero h1{font-size:clamp(4.7rem,8vw,8.7rem);margin:1.5rem 0 2rem}.hero h1 em,h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.03em}.hero-lead{font-size:18px;line-height:1.5;max-width:475px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2.5rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem 1.25rem;border:0;font:600 11px var(--sans);letter-spacing:.05em;cursor:pointer;transition:transform .25s var(--ease),background .25s}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--accent);color:var(--ink)}.button-primary:hover{background:#e5f28d}.button b{font-size:17px;font-weight:400}.quiet-link{font:11px var(--mono);color:var(--muted)}.quiet-link span{display:inline-block;margin-left:.7rem;transition:transform .25s}.quiet-link:hover span{transform:translateY(4px)}.hero-meta{display:flex;justify-content:space-between;max-width:475px;border-top:1px solid var(--line);margin-top:5rem;padding-top:1rem;color:var(--muted);font:9px var(--mono);letter-spacing:.08em}.hero-visual{position:relative}.hero-image{aspect-ratio:1/1.13;overflow:hidden;background:var(--deep);border-radius:220px 220px 0 0;box-shadow:24px 24px 0 var(--soft)}.hero-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.72);transition:transform 1s var(--ease)}.hero-image:hover img{transform:scale(1.04)}.visual-note{position:absolute;bottom:-1.6rem;left:-3rem;background:var(--paper);padding:1rem 1.25rem;display:grid;grid-template-columns:10px 1fr;gap:.7rem;box-shadow:0 12px 30px rgba(23,37,34,.12);font:10px var(--mono);line-height:1.35}.visual-note strong{grid-column:2;color:var(--muted);font-size:9px;letter-spacing:.1em}.pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);margin-top:3px}.hero-rule{position:absolute;bottom:0;left:calc((100% - min(calc(100% - 5rem),1240px))/2);right:0;border-top:1px solid var(--line)}
.proof-strip{background:var(--deep);color:var(--paper);padding:2rem 0}.proof-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);align-items:center;gap:2rem}.proof-intro{font-size:20px;line-height:1.1}.proof-intro em{font-family:var(--serif);color:var(--accent)}.proof-grid>div:not(:first-child){display:flex;gap:1rem;align-items:center;border-left:1px solid #52645d;padding-left:1.5rem}.proof-grid strong{font:400 52px var(--serif);color:var(--accent)}.proof-grid span{font:10px var(--mono);line-height:1.4;color:#b7c2b8}
.section{padding:9rem 0}.section-top{display:grid;grid-template-columns:1fr .8fr;gap:8rem;align-items:end;margin-bottom:5rem}.section-number{font:42px var(--serif);margin:0 0 .4rem;color:var(--muted)}h2{font-size:clamp(4rem,7vw,7.5rem);margin-top:1rem}.section-intro{color:var(--muted);font-size:16px;max-width:360px;margin:0}.service-list{display:grid;gap:1.5rem}.service-card{position:relative;isolation:isolate;min-height:540px;overflow:hidden;background:var(--deep);border:0}.service-card-image{position:absolute;inset:0;z-index:-1;overflow:hidden}.service-card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,20,18,.92) 0%,rgba(8,20,18,.72) 32%,rgba(8,20,18,.12) 72%,rgba(8,20,18,.08));}.service-card-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.66) contrast(1.05);transition:transform .9s var(--ease)}.service-card:hover .service-card-image img{transform:scale(1.045)}.service-card-copy{position:absolute;left:0;bottom:0;width:min(39%,500px);min-height:58%;padding:2.25rem 2.5rem 2.3rem;display:flex;flex-direction:column;align-items:flex-start;color:var(--paper);background:linear-gradient(115deg,rgba(16,37,33,.97),rgba(16,37,33,.84));border-top:2px solid var(--accent)}.card-index{font:10px var(--mono);color:var(--accent);letter-spacing:.08em}.service-card h3{font-size:clamp(3rem,5vw,5.7rem);margin:2.3rem 0 1rem;line-height:.9}.service-card p{color:#d1d9d0;font-size:14px;max-width:330px;margin:0}.arrow-link{margin-top:auto;padding-top:2rem;font:11px var(--mono);color:var(--accent)}.arrow-link span{font-size:17px;margin-left:.5rem;transition:margin .25s}.arrow-link:hover span{margin-left:.9rem}
.approach{background:var(--soft)}.approach-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:10vw}.approach-heading>p:last-child{color:var(--muted);margin-top:2rem}.approach-steps{border-top:1px solid var(--line)}.approach-steps>div{display:grid;grid-template-columns:90px 1fr;gap:2rem;padding:1.5rem 0 1.7rem;border-bottom:1px solid var(--line)}.approach-steps span{font:30px var(--serif);color:var(--muted)}.approach-steps h3{font-size:28px;margin:.2rem 0 .55rem}.approach-steps p{color:var(--muted);margin:0;max-width:370px}
.operations{background:var(--deep);color:var(--paper)}.operations-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:center}.operations-image{position:relative;aspect-ratio:1.25/1;overflow:hidden}.operations-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.55)}.image-caption{position:absolute;left:1rem;bottom:1rem;right:1rem;background:rgba(18,33,30,.88);padding:1rem;font:10px var(--mono);color:var(--accent)}.image-caption span{display:block;color:var(--paper);opacity:.75;margin-top:.35rem}.operations-copy .section-number{color:#718078}.operations-copy h2{margin-bottom:2rem}.operations-copy>p:not(.eyebrow):not(.section-number){color:#bdc8bf;max-width:480px}.operations-foot{display:flex;gap:1rem;flex-wrap:wrap;border-top:1px solid #52645d;margin-top:3rem;padding-top:1rem;font:9px var(--mono);color:var(--accent)}
.contact{background:var(--paper)}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.contact-intro>p:not(.eyebrow):not(.section-number){color:var(--muted);max-width:400px}.contact-details{border-top:1px solid var(--line);margin-top:3rem;padding-top:1rem;display:grid;gap:.35rem;font-size:13px}.contact-details span,.contact-details a{color:var(--muted)}.contact-details a:hover{color:var(--ink)}.contact-details small{font:10px var(--mono);color:var(--muted);margin-top:.7rem}.contact-form{background:var(--deep);color:var(--paper);padding:3rem}.form-kicker{font:10px var(--mono);color:var(--accent);letter-spacing:.12em;margin:0 0 2rem}fieldset{border:0;border-top:1px solid #52645d;padding:1.3rem 0 0;margin:0 0 1.5rem}legend{font:10px var(--mono);color:#b7c2b8;padding:0 1rem 0 0;margin-bottom:1rem}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form label{display:block;font-size:11px;color:#b7c2b8;margin-bottom:1rem}.contact-form label small{font-size:9px}.contact-form input,.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #52645d;background:transparent;color:var(--paper);padding:.7rem 0;font:14px var(--sans);outline:none}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 1px 0 var(--accent)}.contact-form ::placeholder{color:#789087}.form-submit{display:flex;align-items:center;gap:1.5rem}.form-status,.field-error{font-size:11px;color:var(--accent)}.field-error{display:block;margin-top:.3rem}.hidden{position:absolute;left:-9999px}.contact-form button:disabled{opacity:.55;cursor:wait}
 footer{background:var(--ink);color:var(--paper);padding:2.4rem 0 1.3rem;font:10px var(--mono)}.footer-inner{display:flex;justify-content:space-between;gap:2rem;align-items:flex-end}.footer-signature{display:flex;align-items:center;gap:1.25rem}.footer-signature img{width:116px;height:116px;object-fit:contain;border:1px solid rgba(220,231,221,.3)}.footer-signature div{display:grid;gap:.35rem;color:#b7c2b8}.footer-signature .footer-kicker{font:italic 20px var(--serif);color:var(--paper)}.footer-links{display:flex;align-items:center;gap:2rem}.footer-links a{color:var(--accent)}
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}[data-reveal].is-visible{opacity:1;transform:none}.is-loading .hero-copy>*{opacity:0;transform:translateY(16px);animation:enter .7s var(--ease) forwards}.is-loading .hero-copy h1{animation-delay:.08s}.is-loading .hero-lead{animation-delay:.18s}.is-loading .hero-actions{animation-delay:.28s}.is-loading .hero-meta{animation-delay:.38s}@keyframes enter{to{opacity:1;transform:none}}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
 @media(max-width:767px){.wrap{width:min(calc(100% - 2rem),1240px)}#site-header{background:var(--paper)}.header-inner{height:70px}.brand img{width:92px;height:54px}.header-call,.theme-toggle{display:none}.menu-toggle{display:grid;place-content:center;gap:5px}.menu-toggle i{display:block;width:18px;height:1px;background:currentColor}nav{display:none;position:absolute;top:70px;left:0;right:0;margin:0;padding:.5rem 1rem;background:var(--paper);border-bottom:1px solid var(--line)}#primary-navigation.is-open{display:flex;flex-direction:column;gap:0}nav a{padding:1rem 0;border-bottom:1px solid var(--line)}.hero{padding-top:70px}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:4rem;padding:5rem 0 4rem}.hero h1{font-size:clamp(4rem,18vw,6rem);margin:1.1rem 0 1.4rem}.hero-lead{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.3rem;margin-top:2rem}.hero-meta{margin-top:3rem}.hero-visual{width:88%;margin-left:auto}.hero-image{aspect-ratio:1/1.15;border-radius:150px 150px 0 0;box-shadow:14px 14px 0 var(--soft)}.visual-note{left:-1rem}.hero-rule{left:1rem}.proof-grid{grid-template-columns:1fr 1fr;gap:1.5rem}.proof-intro{grid-column:1/-1}.proof-grid>div:not(:first-child){padding-left:1rem}.proof-grid strong{font-size:40px}.proof-grid span{font-size:9px}.section{padding:5.5rem 0}.section-top,.approach-layout,.operations-layout,.contact-layout{display:block}.section-top{margin-bottom:3rem}.section-intro{margin-top:2rem}.service-list{display:block}.service-card,.service-card-feature,.service-card-wide{display:flex;flex-direction:column;min-height:0;margin-bottom:1rem}.service-card-copy{padding:2rem;min-height:350px}.service-card-image{height:250px;order:2}.service-card h3{font-size:3.8rem;margin:2rem 0 1rem}.approach-heading{margin-bottom:3rem}.approach-steps>div{grid-template-columns:50px 1fr;gap:1rem}.operations-image{margin-bottom:3rem}.operations-copy{padding-bottom:1rem}.contact-intro{margin-bottom:3rem}.contact-form{padding:1.5rem}.form-pair{grid-template-columns:1fr}.footer-inner{flex-direction:column;align-items:flex-start}.footer-signature{align-items:flex-start}.footer-signature img{width:96px;height:96px}.footer-signature .footer-kicker{font-size:18px}.footer-links{width:100%;justify-content:space-between;flex-wrap:wrap;gap:1rem}.section-number{font-size:36px}h2{font-size:clamp(3.8rem,16vw,5.5rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.is-loading .hero-copy>*{opacity:1;transform:none}[data-reveal]{opacity:1;transform:none}#site-header.is-hidden{transform:none}}
@media(max-width:767px){.service-card,.service-card-feature,.service-card-wide{display:block;min-height:580px;margin-bottom:1rem}.service-card-image{position:absolute;inset:0;height:auto;order:initial}.service-card-image:after{background:linear-gradient(0deg,rgba(8,20,18,.96) 0%,rgba(8,20,18,.78) 42%,rgba(8,20,18,.08) 82%)}.service-card-copy{left:0;bottom:0;width:100%;min-height:52%;padding:1.5rem 1.35rem 1.6rem;background:linear-gradient(115deg,rgba(16,37,33,.97),rgba(16,37,33,.82))}.service-card h3{font-size:3.7rem;margin:1.5rem 0 .8rem}.service-card p{font-size:13px;max-width:92%}}
@media(min-width:768px){.service-card-copy{width:min(34%,500px)}}

/* Brand and contrast refinement */
:root{
  --on-dark:#faf8f2;
  --on-dark-muted:#c4cec4;
  --on-dark-line:#52645d;
  --button-ink:#172522;
  --footer-bg:#172522;
}
html[data-theme=dark]{
  --on-dark:#f3f0e7;
  --on-dark-muted:#c8d3c9;
  --on-dark-line:#61766c;
  --button-ink:#172522;
  --footer-bg:#0d1715;
}
.header-inner{height:116px}
.brand img{width:104px;height:104px;object-fit:contain;border:0}
.hero{padding-top:116px}
.proof-strip{color:var(--on-dark)}
.proof-grid span{color:var(--on-dark-muted)}
.service-card-copy{color:var(--on-dark)}
.service-card p{color:var(--on-dark-muted)}
.operations{color:var(--on-dark)}
.operations-copy>p:not(.eyebrow):not(.section-number){color:var(--on-dark-muted)}
.contact-form{color:var(--on-dark)}
.contact-form label,.contact-form input,.contact-form textarea{color:var(--on-dark-muted)}
.contact-form input,.contact-form textarea{border-color:var(--on-dark-line)}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent)}
.contact-form ::placeholder{color:#9eb0a5}
.button-primary{color:var(--button-ink)}
.skip-link{color:var(--button-ink)}
footer{background:var(--footer-bg);color:var(--on-dark)}
.footer-signature img{
  width:132px;height:132px;padding:.55rem;object-fit:contain;
  border:0;background:var(--soft);box-shadow:0 10px 26px rgba(0,0,0,.18)
}
.footer-signature div{color:var(--on-dark-muted)}
.footer-signature .footer-kicker{color:var(--on-dark)}
.footer-links a{color:var(--accent)}

@media(max-width:980px){
  .header-inner{height:82px}
  .brand img{width:70px;height:70px}
  .header-call,.theme-toggle{display:none}
  .theme-toggle{display:block;width:42px;height:32px}
  .header-actions{gap:.65rem}
  .menu-toggle{display:grid;place-content:center;gap:5px}
  nav{display:none;position:absolute;top:82px;left:0;right:0;margin:0;padding:.5rem 1rem;background:var(--paper);border-bottom:1px solid var(--line)}
  #primary-navigation.is-open{display:flex;flex-direction:column;gap:0}
  nav a{padding:1rem 0;border-bottom:1px solid var(--line)}
  .hero{padding-top:82px}
}
@media(max-width:767px){
  .header-inner{height:78px}
  .brand img{width:64px;height:64px}
  nav{top:78px}
  .hero{padding-top:78px}
  .footer-signature img{width:104px;height:104px}
}

.operations .eyebrow{color:var(--on-dark-muted)}
.image-caption span{color:var(--on-dark-muted);opacity:1}