
:root{--bg:#E5E0D2;--cream:#F2EEE3;--olive:#565D49;--ink:#30362C;--sand:#C4B78C;--white:#fff;--muted:#707269;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Montserrat,Arial,Helvetica,sans-serif;line-height:1.65}img{max-width:100%;display:block}a{color:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.section{padding:92px 0}.light{background:var(--cream)}.dark{background:var(--ink);color:var(--cream)}
.eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--olive);margin:0 0 12px}.dark .eyebrow,.dark h2,.dark h3,.dark p{color:var(--cream)}
h1,h2,h3{line-height:1.08;margin:0;color:var(--ink)}h1{font-size:clamp(2.5rem,6vw,5.4rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4vw,3.7rem);letter-spacing:-.035em}h3{font-size:clamp(1.3rem,2vw,1.8rem)}p{margin:0 0 1.15rem}
.skip-link{position:absolute;left:-999px}.skip-link:focus{left:10px;top:10px;background:white;padding:10px;z-index:999}
.site-header{position:absolute;top:0;left:0;right:0;z-index:30}
.nav-shell{margin-top:18px;background:rgba(242,238,227,.95);backdrop-filter:blur(8px);border:1px solid rgba(48,54,44,.12);min-height:76px;display:grid;grid-template-columns:330px minmax(0,1fr) auto auto;align-items:center;column-gap:18px;padding:10px 18px;box-shadow:0 8px 30px rgba(0,0,0,.08)}
.brand img{width:330px;max-width:100%;height:58px;object-fit:contain;object-position:left center}
.nav{display:flex;align-items:center;justify-content:center;gap:18px;font-size:.75rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}
.nav a{text-decoration:none;padding:12px 0;border-bottom:2px solid transparent}.nav a:hover,.nav a:focus-visible{border-color:var(--olive)}
.lang{display:flex;gap:7px;padding-left:18px;border-left:1px solid rgba(48,54,44,.25);white-space:nowrap}.lang a{text-decoration:none;opacity:.5}.lang a.active{opacity:1;font-weight:800}
.menu-toggle{display:none;background:none;border:1px solid var(--ink);padding:9px 11px;font:inherit;font-weight:700}
.hero{min-height:88vh;position:relative;display:flex;align-items:flex-end;color:white;background:#1e201d}
.hero-picture{position:absolute;inset:0;overflow:hidden}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-picture::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 30%,rgba(0,0,0,.58) 100%)}
.hero-content{position:relative;z-index:2;width:min(700px,64%);padding:180px 0 70px}.hero h1,.hero p{color:white}.hero h1{font-size:clamp(2.8rem,5.3vw,5.1rem)}.hero .lead{font-size:clamp(1.25rem,2vw,1.9rem);font-weight:600;line-height:1.25;margin-top:14px}
.btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 22px;background:var(--ink);border:1px solid var(--ink);color:#fff;text-decoration:none;font-weight:700;cursor:pointer}.hero .btn{background:var(--sand);border-color:var(--sand);color:var(--ink);margin-top:12px}
.intro-grid,.contact-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:70px}.pressure-list{border-top:1px solid rgba(48,54,44,.2)}.pressure-item{padding:22px 0;border-bottom:1px solid rgba(48,54,44,.2)}.pressure-item h3{font-size:1.05rem;margin-bottom:7px}.big-question{font-size:clamp(1.4rem,2.7vw,2.3rem);line-height:1.25;font-weight:700;margin:32px 0}.definition{background:var(--olive);color:#fff;padding:44px}.definition h2,.definition p{color:#fff}
.client-line{text-align:center;padding:28px 20px;background:var(--cream);font-weight:600}
.section-head{max-width:820px;margin-bottom:48px}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:rgba(255,255,255,.32);border-top:4px solid var(--olive);padding:30px}.card .kicker{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;font-weight:800;color:var(--olive)}.card-link{display:inline-block;margin-top:10px;font-weight:800;text-decoration:none;border-bottom:1px solid currentColor}
.prose{max-width:820px}.prose p{font-size:1.08rem}.statement{font-size:clamp(1.4rem,2.6vw,2.2rem);line-height:1.35;font-weight:700;margin:32px 0}.pc-list{list-style:none;padding:0;margin:28px 0}.pc-list li{padding:13px 0 13px 34px;border-bottom:1px solid rgba(48,54,44,.14);position:relative}.pc-list li::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--olive);position:absolute;left:0;top:21px}
.method-step{padding-top:22px;border-top:1px solid rgba(255,255,255,.25)}.focus-block{display:grid;grid-template-columns:240px 1fr;gap:52px;padding:46px 0;border-top:1px solid rgba(48,54,44,.18)}.focus-label{font-size:.82rem;letter-spacing:.16em;font-weight:800;color:var(--olive)}.focus-copy p:last-child{font-weight:700}
.team-common{max-width:820px;margin:38px 0 50px}.team-common-item{padding:18px 0;border-top:1px solid rgba(48,54,44,.2)}.team-common-item:first-child{border-top:0;padding-top:0}.team-common-item strong{display:block;font-size:clamp(1.35rem,2.4vw,2.15rem);line-height:1.15;margin-bottom:5px}.team-common-item span{display:block}
.team-person{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:start;padding:58px 0;border-top:1px solid rgba(48,54,44,.18)}.team-person.reverse{grid-template-columns:.95fr 1.05fr}.team-person.reverse .photo-composition{order:2}.team-person.reverse .bio{order:1}.photo-composition{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:240px 240px;gap:12px}.photo-composition img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.photo-composition img:first-child{grid-row:1/3}.bio h3{font-size:2rem;margin-bottom:24px}.bio h3 a{text-decoration-thickness:1px;text-underline-offset:4px}
.video-wrap{max-width:930px;margin:36px auto 0}.video-placeholder{aspect-ratio:16/9;background:#252824;display:flex;align-items:center;justify-content:center}.video-frame{aspect-ratio:16/9;width:100%;border:0;display:block}
.contact-form{display:grid;gap:16px}.field{display:grid;gap:7px}label{font-weight:700;font-size:.86rem}input,textarea{width:100%;font:inherit;border:1px solid rgba(48,54,44,.32);background:var(--cream);padding:13px 14px}textarea{min-height:150px}
.site-footer{background:var(--ink);color:var(--cream);padding:34px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:.86rem}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.footer-links a{color:var(--cream)}
.legal{max-width:850px}.legal h1{margin-bottom:32px}.legal h2{font-size:1.35rem;margin:36px 0 14px}.legal address{font-style:normal}.back-link{display:inline-block;margin-bottom:38px;font-weight:700}
:focus-visible{outline:3px solid var(--sand);outline-offset:4px}
@media(max-width:960px){
 .nav-shell{display:flex}.nav{display:none;position:absolute;top:92px;left:20px;right:20px;background:var(--cream);padding:20px;flex-direction:column;align-items:flex-start;box-shadow:0 15px 35px rgba(0,0,0,.18)}.nav.open{display:flex}.menu-toggle{display:block;margin-left:auto}.brand img{width:260px;max-width:46vw}.lang{margin-left:10px;padding-left:12px}
 .intro-grid,.contact-grid,.team-person,.team-person.reverse{grid-template-columns:1fr}.team-person.reverse .photo-composition,.team-person.reverse .bio{order:initial}.cards-3{grid-template-columns:1fr}.focus-block{grid-template-columns:1fr;gap:12px}
}
@media(max-width:640px){
 .container{width:min(calc(100% - 28px),var(--max))}
 .site-header{position:relative;background:var(--cream)}
 .nav-shell{margin-top:0;min-height:62px;padding:8px 10px;border:0;box-shadow:none}
 .brand img{width:190px;max-width:50vw;height:42px}.lang{font-size:.74rem;gap:4px}.menu-toggle{font-size:.72rem;padding:8px}
 .nav{top:62px;left:0;right:0;margin:0;background:rgba(242,238,227,.99);z-index:40}
 .hero{min-height:auto;display:block;background:#222420}
 .hero-picture{position:relative;inset:auto;width:100%;height:auto;overflow:hidden}
 .hero-picture img{width:100%;height:auto;object-fit:contain;object-position:center}
 .hero-picture::after{display:none}
 .hero-content{width:100%;padding:34px 0 52px}
 .hero h1{font-size:2.6rem}.hero .lead{font-size:1.3rem}
 .section{padding:66px 0}.definition{padding:28px 22px}
 .photo-composition{grid-template-columns:1fr 1fr;grid-template-rows:330px 150px}.photo-composition img:first-child{grid-column:1/3;grid-row:auto}
 .photo-composition img:nth-child(2),.photo-composition img:nth-child(3){object-position:center top}
 .footer-inner{align-items:flex-start;flex-direction:column}
}
