
:root{
  --bg:#f5f5f2;
  --surface:#ffffff;
  --surface-2:#f0efe9;
  --text:#121212;
  --muted:#66635d;
  --line:#ddd9cf;
  --accent:#151515;
  --max:1180px;
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter, Arial, Helvetica, sans-serif;background:var(--bg);color:var(--text);line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-shell{min-height:100vh}
.topbar{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);background:rgba(245,245,242,.86);border-bottom:1px solid var(--line)}
.topbar-inner{max-width:var(--max);margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-size:14px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.nav{display:flex;gap:18px;flex-wrap:wrap}
.nav a{font-size:14px;color:var(--muted)}
.nav a.active,.nav a:hover{color:var(--text)}
.page{max-width:var(--max);margin:0 auto;padding:28px 24px 72px}
.hero{display:grid;grid-template-columns:1.2fr .9fr;gap:28px;align-items:stretch;margin-top:18px}
.hero-card,.panel,.card,.quote,.contact-card,.legal-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
.hero-card{padding:56px;display:flex;flex-direction:column;justify-content:space-between;min-height:480px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.hero h1,.page-head h1{font-size:clamp(38px,6vw,76px);line-height:.96;letter-spacing:-.05em;margin:0 0 18px;max-width:10ch}
.hero p.lead,.page-head p{font-size:18px;color:#4d4a45;max-width:60ch;margin:0}
.hero-aside{padding:20px;display:flex;flex-direction:column;gap:20px}
.hero-image{flex:1;min-height:260px;border-radius:18px;overflow:hidden}
.hero-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%)}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.stat{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}
.stat strong{display:block;font-size:28px;letter-spacing:-.04em;margin-bottom:6px}
.section{padding:28px 0}
.section-header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.section-header h2{font-size:28px;letter-spacing:-.04em;margin:0}
.section-header p{margin:0;color:var(--muted);max-width:56ch}
.grid-2{display:grid;grid-template-columns:1.05fr .95fr;gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{padding:26px}
.card h3,.card h4{margin:0 0 10px;font-size:22px;letter-spacing:-.03em}
.card p{margin:0;color:var(--muted)}
.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.feature-item{padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.feature-item h4{margin:0 0 10px;font-size:20px;letter-spacing:-.03em}
.feature-item p{margin:0;color:var(--muted)}
.page-head{padding:34px 0 22px}
.page-head p{max-width:70ch}
.content-stack{display:grid;gap:18px}
.rich-card{padding:30px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
.rich-card p,.rich-card li{color:#4f4b46}
.team-grid,.quotes-grid,.faq-grid{display:grid;gap:18px}
.team-grid{grid-template-columns:repeat(3,1fr)}
.quotes-grid{grid-template-columns:repeat(2,1fr)}
.faq-grid{grid-template-columns:1fr 1fr}
.person{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
.person .role{color:var(--muted);margin-top:6px}
.quote{padding:30px}
.quote p{font-size:19px;letter-spacing:-.01em;margin:0 0 18px}
.quote strong{font-size:15px}
.faq-item{padding:26px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
.faq-item h3{margin:0 0 12px;font-size:20px;letter-spacing:-.03em}
.faq-item p{margin:0;color:var(--muted)}
.contact-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}
.contact-card{padding:30px}
.contact-list{display:grid;gap:14px;margin-top:20px}
.contact-list div{padding:16px 0;border-top:1px solid var(--line)}
.form-shell{display:grid;gap:14px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
input,textarea{width:100%;padding:16px 18px;border-radius:14px;border:1px solid var(--line);background:#fcfcfa;font:inherit;color:var(--text)}
textarea{min-height:170px;resize:vertical}
button{padding:16px 22px;border:none;border-radius:999px;background:var(--accent);color:#fff;font:inherit;font-weight:600;cursor:pointer}
.footer{max-width:var(--max);margin:0 auto;padding:0 24px 32px}
.footer-card{background:#141414;color:#f3f1ec;border-radius:30px;padding:28px 28px 22px}
.footer-top{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:22px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.14)}
.footer h4{margin:0 0 10px;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:#d8d2c6}
.footer p,.footer a{color:#cbc5ba}
.footer-links{display:grid;gap:8px}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;align-items:center;padding-top:18px;font-size:14px;color:#bbb4a8}
.legal-article h2{font-size:34px;letter-spacing:-.04em;margin:0 0 8px}
.legal-article .updated{color:var(--muted);margin-bottom:26px}
.legal-section{padding:24px 0;border-top:1px solid var(--line)}
.legal-section h3{font-size:24px;letter-spacing:-.03em;margin:0 0 12px}
.legal-section h4{font-size:18px;letter-spacing:-.02em;margin:18px 0 8px}
.legal-section p,.legal-section li{color:#4d4944}
@media (max-width: 980px){
  .hero,.grid-2,.contact-wrap,.footer-top,.team-grid,.quotes-grid,.faq-grid,.grid-3,.grid-4,.feature-list,.form-row{grid-template-columns:1fr}
  .hero-card{min-height:auto;padding:34px}
  .hero h1,.page-head h1{max-width:none}
}
@media (max-width: 720px){
  .topbar-inner{padding:14px 18px}
  .page,.footer{padding-left:18px;padding-right:18px}
  .nav{gap:10px}
}
