@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url(../fonts/fraunces-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(../fonts/inter-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

  :root{
    --pine:#0A3B2E;
    --pine-deep:#06271E;
    --teal:#17715C;
    --sage:#8FB3A3;
    --gold:#E3B23C;
    --gold-soft:#F1D488;
    --ivory:#F6F1E6;
    --cream:#FBF8F1;
    --ink:#122019;
    --ink-soft:#3A4A42;
    --line:rgba(18,32,25,.12);
    --r:18px;
    --ease:cubic-bezier(.2,.7,.2,1);
    --maxw:1200px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth;scroll-padding-top:126px}
  body{
    font-family:"Inter",system-ui,sans-serif;
    background:var(--ivory);
    color:var(--ink);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{font-family:"Fraunces",Georgia,serif;font-weight:500;line-height:1.05;letter-spacing:-.015em}
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  ::selection{background:var(--gold);color:var(--pine-deep)}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  .eyebrow{
    font-family:"Inter";font-size:.72rem;font-weight:600;letter-spacing:.22em;
    text-transform:uppercase;display:inline-flex;align-items:center;gap:.6em;
  }

  /* ---------- NAV ---------- */
  header.nav{
    position:fixed;top:40px;left:0;right:0;z-index:100;
    transition:background .4s var(--ease),backdrop-filter .4s var(--ease),padding .4s var(--ease),box-shadow .4s var(--ease);
    padding:22px 0;
  }
  header.nav.scrolled{
    padding:14px 20px;
  }
  header.nav.scrolled .nav-inner{
    max-width:960px;
    gap:16px;
    padding:8px 12px 8px 16px;
    background:rgba(246,241,230,.85);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    border:1px solid rgba(255,255,255,.55);
    border-radius:100px;
    box-shadow:0 16px 36px -18px rgba(6,39,30,.32),0 3px 8px -4px rgba(6,39,30,.18);
  }
  header.nav.scrolled .navlinks{gap:26px}
  header.nav.scrolled .brand{gap:10px}
  header.nav.scrolled .brand .chip{width:158px;height:40px;background:var(--pine);box-shadow:none}
  header.nav.scrolled .cta{padding:9px 18px}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;transition:max-width .45s var(--ease),gap .45s var(--ease),padding .45s var(--ease),background .45s var(--ease),box-shadow .45s var(--ease),border-radius .45s var(--ease)}
  .brand{display:flex;align-items:center;gap:12px;font-family:"Fraunces";font-weight:600;font-size:1.15rem;color:var(--ivory);transition:color .4s var(--ease)}
  header.nav.scrolled .brand{color:var(--pine)}
  .brand .chip{width:178px;height:46px;border-radius:100px;background:transparent;display:flex;align-items:center;justify-content:center;flex:none;padding:6px 10px;box-sizing:border-box;overflow:hidden;
    box-shadow:none;border:0;transition:transform .45s var(--ease),background .4s var(--ease),width .45s var(--ease),height .45s var(--ease)}
  .brand:hover .chip{transform:translateY(-1px)}
  .brand .chip img{width:100%;height:100%;object-fit:contain;display:block}
  .navlinks{display:flex;align-items:center;gap:34px;transition:gap .45s var(--ease)}
  .navlinks a{font-size:.9rem;font-weight:500;color:rgba(246,241,230,.85);transition:color .3s;position:relative}
  header.nav.scrolled .navlinks a{color:var(--ink-soft)}
  .navlinks a:not(.cta)::after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1.5px;background:var(--gold);transition:width .3s var(--ease)}
  .navlinks a:not(.cta):hover::after{width:100%}
  .navlinks a:hover{color:var(--gold)}
  header.nav.scrolled .navlinks a:hover{color:var(--teal)}
  .cta{
    background:var(--gold);color:var(--pine-deep)!important;padding:11px 22px;border-radius:100px;
    font-weight:600!important;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s;
    box-shadow:0 6px 20px -8px rgba(227,178,60,.8);
  }
  .cta:hover{transform:translateY(-2px);background:var(--gold-soft);box-shadow:0 12px 28px -10px rgba(227,178,60,.9)}
  .cta::after{display:none!important}
  .burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
  .burger span{width:24px;height:2px;background:var(--ivory);transition:.3s;border-radius:2px}
  header.nav.scrolled .burger span{background:var(--pine)}

  /* ---------- HERO ---------- */
  .hero{position:relative;background:var(--pine);color:var(--ivory);overflow:hidden;padding:170px 0 110px}
  .hero-bg{position:absolute;inset:0;pointer-events:none}
  .hero-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 78% 20%,rgba(23,113,92,.55),transparent 60%),radial-gradient(90% 80% at 10% 100%,rgba(6,39,30,.9),transparent 70%)}