@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');

:root { --ink:#101622; --paper:#f8f7f3; --violet:#40207e; --indigo:#152a61; --line:rgba(16,22,34,.13); }
* { box-sizing:border-box; }
html, body { margin:0; width:100%; min-height:100%; }
body { font-family:Manrope, Arial, sans-serif; color:var(--ink); background:var(--paper); }
.frame { width:1440px; min-height:2400px; overflow:hidden; margin:0 auto; background:var(--paper); }
.shell { width:1240px; margin:0 auto; }
.eyebrow { font:500 11px/1.3 "DM Mono", monospace; letter-spacing:.14em; text-transform:uppercase; }
.nav { height:88px; display:flex; align-items:center; justify-content:space-between; position:relative; z-index:3; }
.nav-logo { width:126px; height:58px; object-fit:contain; }
.nav-links { display:flex; gap:32px; align-items:center; font-size:13px; font-weight:700; }
.nav-links a { color:inherit; text-decoration:none; }
.button { border:0; display:inline-flex; align-items:center; gap:14px; padding:16px 22px; font-size:12px; font-weight:800; letter-spacing:.02em; text-decoration:none; }
.button::after { content:'↗'; font-size:18px; line-height:12px; }
.section-title { font-size:45px; letter-spacing:-.055em; line-height:1.06; margin:0; }
.section-copy { font-size:15px; line-height:1.75; margin:18px 0 0; max-width:455px; color:#536071; }
.metric { border-top:1px solid currentColor; padding-top:14px; }
.metric strong { font-size:38px; letter-spacing:-.06em; display:block; }
.metric span { font:500 10px "DM Mono", monospace; letter-spacing:.1em; text-transform:uppercase; opacity:.7; }
.photo { display:block; width:100%; height:100%; object-fit:cover; }
.footer { padding:60px 0 45px; display:flex; justify-content:space-between; align-items:flex-end; font-size:12px; color:#778092; }
.footer strong { color:var(--ink); display:block; font-size:24px; letter-spacing:-.04em; margin-bottom:8px; }

@media (max-width:800px) {
  .frame { width:100%; min-height:0; }
  .shell { width:calc(100% - 40px); }
  .nav { height:78px; }
  .nav-logo { width:92px; height:52px; }
  .nav-links { gap:0; }
  .nav-links a:not(:last-child) { display:none; }
  .nav-links a:last-child { padding:12px 15px; }
  .top .shell { font-size:8px; }
  .c11-hero,.c13-hero { min-height:520px; }
  .c11-text,.c13-copy { width:auto; padding:65px 0 52px; }
  .c11-text h1,.c13-copy h1 { font-size:45px; }
  .c11-slider-label,.c13-label { display:none; }
  .c11-cred,.c13-grid { grid-template-columns:1fr; }
  .c11-cred div,.c11-cred div:first-child { padding:18px 0; border-right:0; border-bottom:1px solid #ddd; }
  .c11-about,.c13-intro { grid-template-columns:1fr; gap:20px; padding:65px 0; }
  .c11-about .body,.c13-intro p { padding-top:0; }
  .c12-hero { padding-top:45px; }
  .c12-hero h1 { font-size:58px; }
  .c12-hero-bottom,.c12-story { grid-template-columns:1fr; gap:20px; margin-top:32px; }
  .c12-hero-bottom>div:first-child { display:none; }
  .c12-photo { height:390px; }
  .c12-line { grid-template-columns:50px 1fr; height:auto; padding:19px 0; }
  .c12-line span { display:none; }
  .c12-call .shell { align-items:start; flex-direction:column; gap:24px; }
  .c13-grid { gap:12px; }
}
