/* Shared by every page: tokens, base, navigation, footer */
  :root{
    --ink:#2D2018;
    --text-strong:#4A3525;
    --text:#7A6050;
    --black:#121212;
    --white:#FFFFFF;
    --gold:#C9A96E;
    --gold-light:#F0D9BC;
    --brown:#8A6A4E;
    --cream:#F8F0E5;
    --porcelain:#FDF8F2;
    --border:#E8DDD2;
    --rose:#F5E6E8;
    --sage:#E6EDE6;
    --champagne:#F0E8D0;
    --apricot:#F0D5B0;
    --linen:#F5EDE0;
    --whatsapp-green:#008361;
    --whatsapp-hover:#00664C;
    --serif:'Cormorant Garamond', Georgia, serif;
    --sans:'Inter', -apple-system, sans-serif;
    --display:'Jost', sans-serif;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--cream);
    color:var(--text-strong);
    font-family:var(--sans);
    font-weight:400;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
  @media (max-width:640px){.wrap{padding:0 20px;}}

  /* ---------- nav ---------- */
  .nav{
    position:sticky;top:0;z-index:50;
    background:rgba(248,240,229,0.92);
    backdrop-filter:blur(6px);
    border-bottom:1px solid var(--border);
  }
  .nav-inner{
    max-width:1180px;margin:0 auto;padding:18px 32px;
    display:flex;align-items:center;justify-content:space-between;
  }
  .brand-mark{display:flex;flex-direction:column;line-height:1;}
  .brand-mark .name{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ink);letter-spacing:0.01em;}
  .brand-mark .est{font-family:var(--sans);font-size:10px;letter-spacing:0.16em;color:var(--brown);text-transform:uppercase;margin-top:4px;}
  .nav-links{display:flex;gap:32px;align-items:center;}
  .nav-links a{font-size:14px;color:var(--text-strong);position:relative;padding:4px 0;}
  .nav-links a:hover{color:var(--gold);}
  .nav-cta{
    font-size:13px;font-weight:600;color:var(--whatsapp-green);
    border:1px solid var(--whatsapp-green);border-radius:999px;
    padding:9px 20px;white-space:nowrap;
  }
  .nav-cta:hover{background:var(--whatsapp-green);color:var(--white);}
  .nav-toggle{display:none;background:none;border:none;font-size:24px;color:var(--ink);cursor:pointer;}
  @media (max-width:900px){
    .nav-links{position:absolute;top:100%;left:0;right:0;background:var(--porcelain);flex-direction:column;gap:0;border-bottom:1px solid var(--border);display:none;}
    .nav-links.open{display:flex;}
    .nav-links a{padding:16px 32px;border-bottom:1px solid var(--border);width:100%;}
    .nav-cta{display:none;}
    .nav-toggle{display:block;}
  }

  /* ---------- footer ---------- */
  footer{background:var(--ink);color:var(--cream);padding:72px 0 32px;}
  .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid rgba(201,169,110,0.25);}
  @media (max-width:760px){.footer-grid{grid-template-columns:1fr 1fr;}}
  .footer-grid h5{font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--gold-light);margin:0 0 18px;}
  .footer-grid a, .footer-grid p{font-size:14px;color:rgba(248,240,229,0.78);display:block;margin-bottom:10px;}
  .footer-grid a:hover{color:var(--gold-light);}
  .footer-brand .name{font-family:var(--serif);font-size:24px;color:var(--white);margin-bottom:10px;}
  .footer-brand p{max-width:34ch;color:rgba(248,240,229,0.65);font-size:14px;}
  .footer-bottom{display:flex;justify-content:space-between;padding-top:28px;font-size:12.5px;color:rgba(248,240,229,0.5);flex-wrap:wrap;gap:10px;}

