:root{
    --ink:#0A0D11;
    --ink-2:#0F1417;
    --petrol:#101B19;
    --ivory:#F3EEE4;
    --ivory-dim:#B9B4A8;
    --brass:#B8935A;
    --brass-bright:#D4AF77;
    --hair:rgba(243,238,228,0.12);
    --hair-strong:rgba(243,238,228,0.22);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--ink);
    color:var(--ivory);
    font-family:'Inter',sans-serif;
    font-weight:400;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important;}
  }
  a{color:inherit; text-decoration:none;}
  .wrap{max-width:1240px; margin:0 auto; padding:0 40px;}
  @media (max-width:720px){ .wrap{padding:0 22px;} }

  .eyebrow{
    font-family:'Space Mono', monospace;
    font-size:11px;
    letter-spacing:0.22em;
    text-transform:uppercase;
    color:var(--brass);
  }

  /* ---------- NAV ---------- */
  nav{
    position:fixed; top:0; left:0; right:0; z-index:50;
    display:flex; align-items:center; justify-content:space-between;
    padding:26px 40px;
    mix-blend-mode:normal;
    transition:background .4s ease, padding .4s ease, border-color .4s ease;
    border-bottom:1px solid transparent;
  }
  nav.scrolled{
    background:rgba(10,13,17,0.86);
    backdrop-filter:blur(14px);
    padding:16px 40px;
    border-bottom:1px solid var(--hair);
  }
  @media (max-width:720px){ nav, nav.scrolled{padding:18px 22px;} }
  .logo{
    font-family:'Fraunces', serif;
    font-size:19px;
    letter-spacing:0.06em;
    font-weight:500;
  }
  .logo em{font-style:italic; color:var(--brass);}
  .navlinks{display:flex; gap:34px; align-items:center;}
  .navlinks a{
    font-size:12.5px; letter-spacing:0.06em; text-transform:uppercase;
    color:var(--ivory-dim); transition:color .25s ease;
    position:relative;
  }
  .navlinks a:hover{color:var(--ivory);}
  .navlinks .btn-concierge{
    color:var(--ink); background:var(--brass);
    padding:10px 18px; border-radius:2px; font-weight:600;
    letter-spacing:0.06em;
    transition:background .25s ease, transform .25s ease;
  }
  .navlinks .btn-concierge:hover{background:var(--brass-bright); transform:translateY(-1px);}
  @media (max-width:900px){ .navlinks a:not(.btn-concierge){display:none;} }

  /* ---------- HERO ---------- */
  .hero{
    min-height:100vh;
    min-height:100svh;
    display:flex; flex-direction:column; justify-content:center;
    position:relative;
    padding-top:120px;
    padding-bottom:70px;
    background:
      radial-gradient(ellipse 80% 60% at 50% -10%, rgba(184,147,90,0.20), transparent 60%),
      linear-gradient(180deg, rgba(10,13,17,0.55) 0%, rgba(10,13,17,0.80) 55%, #0A0D11 100%),
      url('https://images.unsplash.com/photo-1474302770737-173ee21bab63') center 35%/cover no-repeat;
    border-bottom:1px solid var(--hair);
    overflow:hidden;
  }
  .hero::before{
    content:"";
    position:absolute; inset:0;
    background-image:
      linear-gradient(var(--hair) 1px, transparent 1px),
      linear-gradient(90deg, var(--hair) 1px, transparent 1px);
    background-size:120px 120px;
    opacity:0.22;
    mask-image:radial-gradient(ellipse 70% 60% at 50% 30%, black, transparent 75%);
    pointer-events:none;
  }
  .hero-inner{position:relative; z-index:2;}
  .hero-eyebrow{
    display:flex; align-items:center; gap:14px;
    margin-bottom:30px;
  }
  .hero-eyebrow .line{width:36px; height:1px; background:var(--brass);}
  .hero h1{
    font-family:'Fraunces', serif;
    font-weight:400;
    font-size:clamp(46px, 8vw, 96px);
    line-height:0.98;
    letter-spacing:-0.01em;
    max-width:1000px;
  }
  .hero h1 .it{font-style:italic; font-weight:300; color:var(--brass-bright);}
  .hero-sub{
    margin-top:28px;
    max-width:540px;
    font-size:17px;
    line-height:1.65;
    color:var(--ivory-dim);
    font-weight:300;
  }
  .hero-ctas{display:flex; gap:16px; margin-top:42px; flex-wrap:wrap;}
  .cta-primary{
    background:var(--brass); color:var(--ink);
    padding:16px 30px; font-size:12.5px; letter-spacing:0.1em; text-transform:uppercase;
    font-weight:600; border-radius:2px;
    transition:background .25s ease, transform .25s ease;
    display:inline-block;
  }
  .cta-primary:hover{background:var(--brass-bright); transform:translateY(-2px);}
  .cta-secondary{
    border:1px solid var(--hair-strong); color:var(--ivory);
    padding:16px 30px; font-size:12.5px; letter-spacing:0.1em; text-transform:uppercase;
    font-weight:500; border-radius:2px;
    transition:border-color .25s ease, background .25s ease;
    display:inline-block;
  }
  .cta-secondary:hover{border-color:var(--brass); background:rgba(184,147,90,0.06);}

  /* hero trust line */
  .hero-trust{
    margin-top:56px;
    padding-top:26px;
    border-top:1px solid var(--hair);
    display:flex; align-items:center; gap:14px; flex-wrap:wrap;
    font-family:'Space Mono', monospace;
    font-size:11px; letter-spacing:0.1em; text-transform:uppercase;
    color:var(--ivory-dim);
    max-width:640px;
  }
  .hero-trust .dot{color:var(--brass); opacity:0.65;}
  @media (max-width:560px){ .hero-trust{font-size:10px; gap:10px;} }

  /* ---------- CATEGORY RAIL ---------- */
  .rail{
    display:grid;
    grid-template-columns:repeat(7, 1fr);
    gap:1px;
    background:var(--hair);
    border-top:1px solid var(--hair);
    border-bottom:1px solid var(--hair);
  }
  .rail a{
    background:var(--ink);
    padding:22px 14px;
    text-align:center;
    font-size:12px; letter-spacing:0.07em; text-transform:uppercase;
    color:var(--ivory-dim);
    transition:color .25s ease, background .25s ease;
  }
  .rail a:hover{color:var(--brass-bright); background:rgba(184,147,90,0.06);}
  @media (max-width:900px){
    .rail{grid-template-columns:repeat(3, 1fr);}
    .rail a{padding:18px 10px; font-size:11px;}
  }
  @media (max-width:560px){
    .rail{grid-template-columns:repeat(2, 1fr);}
    .rail a{padding:16px 8px; font-size:10.5px; letter-spacing:0.05em;}
  }

  /* ---------- SECTION SHARED ---------- */
  section{padding:120px 0;}
  @media (max-width:720px){ section{padding:76px 0;} }
  .sec-head{
    display:flex; justify-content:space-between; align-items:flex-end;
    margin-bottom:56px; gap:24px; flex-wrap:wrap;
  }
  .sec-head h2{
    font-family:'Fraunces', serif; font-weight:400;
    font-size:clamp(30px, 4vw, 46px); line-height:1.08;
    max-width:600px;
  }
  .sec-head h2 em{font-style:italic; color:var(--brass-bright); font-weight:300;}
  .sec-note{max-width:340px; color:var(--ivory-dim); font-size:14px; line-height:1.6; font-weight:300;}

  /* ---------- PLAN MY TRIP ---------- */
  .plan{
    background:var(--petrol);
    border-top:1px solid var(--hair);
    border-bottom:1px solid var(--hair);
    position:relative;
  }
  .plan-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:70px; align-items:start;}
  @media (max-width:900px){ .plan-grid{grid-template-columns:1fr; gap:48px;} }
  .plan-intro .eyebrow{margin-bottom:22px; display:block;}
  .plan-intro h2{
    font-family:'Fraunces', serif; font-weight:400;
    font-size:clamp(32px,4vw,48px); line-height:1.06; margin-bottom:22px;
  }
  .plan-intro h2 em{font-style:italic; color:var(--brass-bright); font-weight:300;}
  .plan-intro p{color:var(--ivory-dim); font-size:15px; line-height:1.7; font-weight:300; max-width:400px;}
  .plan-quote{
    margin-top:40px; padding-left:20px; border-left:2px solid var(--brass);
    font-family:'Fraunces', serif; font-style:italic; font-size:19px; color:var(--ivory);
    line-height:1.5;
  }

  .card{
    background:rgba(243,238,228,0.02);
    border:1px solid var(--hair);
    padding:44px;
  }
  @media (max-width:560px){ .card{padding:26px;} }
  .form-row{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:20px;}
  @media (max-width:560px){ .form-row{grid-template-columns:1fr;} }
  .field{display:flex; flex-direction:column; gap:8px;}
  .field label{
    font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase; color:var(--ivory-dim);
  }
  .field input, .field select, .field textarea{
    background:transparent; border:none; border-bottom:1px solid var(--hair-strong);
    color:var(--ivory); font-family:'Inter',sans-serif; font-size:14.5px;
    padding:9px 2px; outline:none; transition:border-color .25s ease;
  }
  .field input:focus, .field select:focus, .field textarea:focus{border-color:var(--brass);}
  .field input::placeholder, .field textarea::placeholder{color:rgba(243,238,228,0.28);}
  .field select option{background:var(--ink);}
  .checks{
    display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px 16px;
    margin:8px 0 30px;
  }
  @media (max-width:560px){ .checks{grid-template-columns:1fr 1fr;} }
  .chk{
    display:flex; align-items:center; gap:9px; font-size:13px; color:var(--ivory-dim);
    cursor:pointer; user-select:none;
  }
  .chk input{accent-color:var(--brass); width:14px; height:14px; cursor:pointer;}
  .chk:hover{color:var(--ivory);}
  .plan-submit{
    width:100%; background:var(--brass); color:var(--ink); border:none;
    padding:17px; font-size:12.5px; letter-spacing:0.12em; text-transform:uppercase;
    font-weight:600; cursor:pointer; transition:background .25s ease; border-radius:2px;
  }
  .plan-submit:hover{background:var(--brass-bright);}
  .plan-fineprint{
    text-align:center; font-size:11.5px; color:var(--ivory-dim); margin-top:14px;
  }

  /* ---------- CATEGORIES GRID ---------- */
  .cat-grid{
    display:grid; grid-template-columns:repeat(3, 1fr); gap:1px;
    background:var(--hair);
    border:1px solid var(--hair);
  }
  @media (max-width:900px){ .cat-grid{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:560px){ .cat-grid{grid-template-columns:1fr;} }
  .cat-cell{
    background-image:
      linear-gradient(190deg, rgba(10,13,17,0.30) 0%, rgba(10,13,17,0.72) 55%, rgba(10,13,17,0.94) 100%),
      var(--img);
    background-size:cover; background-position:center;
    padding:44px 34px; min-height:260px;
    display:flex; flex-direction:column; justify-content:space-between;
    position:relative; overflow:hidden; transition:filter .35s ease;
  }
  .cat-cell:hover{filter:brightness(1.18);}
  .cat-cell .num{
    font-family:'Space Mono', monospace; font-size:11px; color:var(--brass);
    letter-spacing:0.1em;
  }
  .cat-cell h3{
    font-family:'Fraunces', serif; font-weight:400; font-size:25px; margin:26px 0 10px;
  }
  .cat-cell p{font-size:13px; color:var(--ivory-dim); line-height:1.55; font-weight:300; max-width:230px;}
  .cat-cell .go{
    margin-top:20px; font-size:11.5px; letter-spacing:0.1em; text-transform:uppercase;
    color:var(--brass-bright); display:flex; align-items:center; gap:8px;
    opacity:0; transform:translateY(4px); transition:opacity .3s ease, transform .3s ease;
  }
  .cat-cell:hover .go{opacity:1; transform:translateY(0);}

  /* ---------- DESTINATIONS ---------- */
  .dest-scroll{
    display:flex; gap:1px; overflow-x:auto; padding-bottom:10px;
    scrollbar-width:none;
  }
  .dest-scroll::-webkit-scrollbar{display:none;}
  .dest-card{
    flex:0 0 300px; height:400px; position:relative;
    display:flex; flex-direction:column; justify-content:flex-end;
    padding:30px;
    background-image:
      linear-gradient(180deg, rgba(10,13,17,0.12) 0%, rgba(10,13,17,0.55) 60%, rgba(10,13,17,0.95) 100%),
      var(--dimg);
    background-size:cover; background-position:center;
    transition:transform .4s ease, filter .4s ease;
  }
  .dest-card:hover{filter:brightness(1.12);}
  .dest-card:hover{transform:translateY(-6px); filter:brightness(1.12);}
  .dest-card .dnum{
    position:absolute; top:26px; right:30px;
    font-family:'Space Mono',monospace; font-size:11px; color:rgba(243,238,228,0.4);
  }
  .dest-card h4{font-family:'Fraunces', serif; font-weight:400; font-size:27px; margin-bottom:6px;}
  .dest-card span{font-size:11.5px; letter-spacing:0.08em; text-transform:uppercase; color:var(--brass-bright);}

  /* ---------- LISTING SAMPLE ---------- */
  .listing{
    display:grid; grid-template-columns:1.1fr 0.9fr; gap:0; border:1px solid var(--hair);
  }
  @media (max-width:900px){ .listing{grid-template-columns:1fr;} }
  .listing-visual{
    background:
      radial-gradient(circle at 30% 20%, rgba(184,147,90,0.14), transparent 55%),
      linear-gradient(150deg, rgba(20,33,31,0.45), rgba(10,13,17,0.90) 78%),
      url('https://images.unsplash.com/photo-1474302770737-173ee21bab63') center 60%/cover no-repeat;
    min-height:420px; position:relative; padding:34px;
    display:flex; flex-direction:column; justify-content:space-between;
    border-right:1px solid var(--hair);
  }
  @media (max-width:900px){ .listing-visual{border-right:none; border-bottom:1px solid var(--hair);} }
  .listing-visual svg{position:absolute; opacity:0.5;}
  .listing-tag{
    align-self:flex-start;
    border:1px solid var(--hair-strong); padding:7px 14px; font-size:10.5px;
    letter-spacing:0.12em; text-transform:uppercase; color:var(--ivory-dim);
  }
  .listing-body{padding:44px;}
  @media (max-width:560px){ .listing-body{padding:28px;} }
  .listing-body .eyebrow{display:block; margin-bottom:16px;}
  .listing-body h3{font-family:'Fraunces', serif; font-weight:400; font-size:34px; margin-bottom:14px; line-height:1.1;}
  .listing-body p{color:var(--ivory-dim); font-size:14.5px; line-height:1.7; font-weight:300; margin-bottom:28px;}
  .spec-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px 24px; margin-bottom:34px;}
  @media (max-width:420px){ .spec-grid{grid-template-columns:1fr;} }
  .spec{border-top:1px solid var(--hair); padding-top:10px;}
  .spec .k{font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ivory-dim); margin-bottom:5px;}
  .spec .v{font-size:14.5px; color:var(--ivory);}
  .listing-actions{display:flex; gap:14px; flex-wrap:wrap;}

  /* ---------- CONCIERGE BAND ---------- */
  .concierge-band{
    background:linear-gradient(180deg, var(--petrol), var(--ink));
    border-top:1px solid var(--hair); border-bottom:1px solid var(--hair);
    text-align:center;
  }
  .concierge-band .eyebrow{display:block; margin-bottom:20px;}
  .concierge-band h2{
    font-family:'Fraunces', serif; font-weight:400;
    font-size:clamp(28px,5vw,50px); max-width:820px; margin:0 auto 34px;
    line-height:1.18;
  }
  .concierge-band h2 em{font-style:italic; color:var(--brass-bright); font-weight:300;}
  .concierge-ctas{display:flex; justify-content:center; gap:16px; flex-wrap:wrap;}

  /* ---------- CONTACT ---------- */
  .contact-grid{
    display:grid; grid-template-columns:0.85fr 1.15fr; gap:70px; align-items:start;
  }
  @media (max-width:900px){ .contact-grid{grid-template-columns:1fr; gap:48px;} }
  .contact-intro h2{
    font-family:'Fraunces', serif; font-weight:400;
    font-size:clamp(32px,4vw,48px); line-height:1.06; margin:22px 0;
  }
  .contact-intro h2 em{font-style:italic; color:var(--brass-bright); font-weight:300;}
  .contact-intro p{color:var(--ivory-dim); font-size:15px; line-height:1.7; font-weight:300; max-width:400px; margin-bottom:36px;}
  .contact-detail{
    display:flex; gap:18px; padding:20px 0; border-top:1px solid var(--hair);
  }
  .contact-detail:last-of-type{border-bottom:1px solid var(--hair);}
  .contact-detail .k{
    font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase; color:var(--ivory-dim);
    width:110px; flex-shrink:0; padding-top:2px;
  }
  .contact-detail .v{font-size:15.5px; color:var(--ivory); line-height:1.55;}
  .contact-detail a.v{transition:color .2s ease;}
  .contact-detail a.v:hover{color:var(--brass-bright);}

  /* ---------- FOOTER ---------- */
  footer{padding:70px 0 40px;}
  .footer-top{
    display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px;
    padding-bottom:56px; border-bottom:1px solid var(--hair);
  }
  @media (max-width:760px){ .footer-top{grid-template-columns:1fr 1fr; row-gap:36px;} }
  .footer-logo{font-family:'Fraunces', serif; font-size:22px; margin-bottom:14px;}
  .footer-logo em{font-style:italic; color:var(--brass);}
  .footer-top p{color:var(--ivory-dim); font-size:13.5px; line-height:1.6; max-width:260px; font-weight:300;}
  .fcol h5{font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ivory-dim); margin-bottom:16px;}
  .fcol a{display:block; font-size:13.5px; color:var(--ivory); margin-bottom:11px; opacity:0.85; transition:opacity .2s;}
  .fcol a:hover{opacity:1; color:var(--brass-bright);}
  .footer-bottom{
    display:flex; justify-content:space-between; padding-top:28px;
    font-size:11.5px; color:var(--ivory-dim); flex-wrap:wrap; gap:10px;
  }

  /* whatsapp fab */
  .fab{
    position:fixed; bottom:26px; right:26px; z-index:60;
    background:var(--brass); color:var(--ink);
    padding:14px 20px; border-radius:2px; font-size:12px;
    letter-spacing:0.08em; text-transform:uppercase; font-weight:600;
    display:flex; align-items:center; gap:9px;
    box-shadow:0 12px 30px rgba(0,0,0,0.45);
    transition:background .25s ease, transform .25s ease;
  }
  .fab:hover{background:var(--brass-bright); transform:translateY(-2px);}
  @media (max-width:560px){ .fab span{display:none;} .fab{padding:14px 16px; border-radius:50%;} }

  /* ================= EXPANSION: MULTI-PAGE COMPONENTS ================= */

  /* ---------- DROPDOWN NAV ---------- */
  .nav-dropdown{position:relative;}
  .dropdown-panel{
    position:absolute; top:100%; left:50%; transform:translate(-50%,6px);
    background:var(--ink-2); border:1px solid var(--hair);
    min-width:230px; padding:10px 0; margin-top:14px;
    opacity:0; visibility:hidden; transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
    box-shadow:0 20px 40px rgba(0,0,0,0.4);
  }
  .nav-dropdown:hover .dropdown-panel{opacity:1; visibility:visible; transform:translate(-50%,0);}
  .dropdown-panel a{display:block; padding:10px 22px; font-size:12.5px; letter-spacing:0.03em; text-transform:none; color:var(--ivory-dim); white-space:nowrap;}
  .dropdown-panel a:hover{color:var(--brass-bright); background:rgba(184,147,90,0.06);}

  /* ---------- MOBILE NAV ---------- */
  .nav-toggle{display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:8px; z-index:60;}
  .nav-toggle span{width:22px; height:1.5px; background:var(--ivory); display:block; transition:transform .25s ease, opacity .25s ease;}
  .nav-toggle.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
  .nav-toggle.open span:nth-child(2){opacity:0;}
  .nav-toggle.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
  @media (max-width:900px){
    .nav-toggle{display:flex;}
    .navlinks{
      position:fixed; inset:0; background:var(--ink);
      flex-direction:column; justify-content:center; align-items:center; gap:24px;
      opacity:0; visibility:hidden; transform:translateY(-8px);
      transition:opacity .3s ease, transform .3s ease, visibility .3s ease;
    }
    .navlinks.open{opacity:1; visibility:visible; transform:translateY(0);}
    .navlinks a:not(.btn-concierge){display:block !important; font-size:16px;}
    .nav-dropdown{text-align:center;}
    .dropdown-panel{position:static; min-width:auto; opacity:1; visibility:visible; transform:none; background:none; border:none; box-shadow:none; margin-top:12px; padding:0; display:flex; flex-direction:column; gap:10px;}
    .dropdown-panel a{padding:0; font-size:13px; text-align:center; color:var(--ivory-dim);}
  }

  /* ---------- PAGE HERO (interior pages) ---------- */
  .page-hero{
    padding:168px 0 84px; position:relative; border-bottom:1px solid var(--hair);
    background-size:cover; background-position:center;
  }
  @media (max-width:720px){ .page-hero{padding:140px 0 56px;} }
  .page-hero.with-image{background-image: linear-gradient(180deg, rgba(10,13,17,0.40), rgba(10,13,17,0.94) 88%), var(--img);}
  .page-hero .eyebrow{display:block; margin-bottom:20px;}
  .page-hero h1{font-family:'Fraunces',serif; font-weight:400; font-size:clamp(36px,6vw,60px); line-height:1.05; max-width:760px;}
  .page-hero h1 em{font-style:italic; color:var(--brass-bright); font-weight:300;}
  .page-hero p.lead{margin-top:22px; max-width:540px; color:var(--ivory-dim); font-size:16px; line-height:1.65; font-weight:300;}
  .breadcrumb{font-family:'Space Mono',monospace; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ivory-dim); margin-bottom:26px;}
  .breadcrumb a{color:var(--ivory-dim);}
  .breadcrumb a:hover{color:var(--brass-bright);}
  .breadcrumb .sep{margin:0 8px; opacity:0.5;}

  /* ---------- INCLUDED LIST ---------- */
  .included-grid{display:grid; grid-template-columns:1fr 1fr; gap:6px 40px; margin:36px 0 46px;}
  @media (max-width:640px){.included-grid{grid-template-columns:1fr;}}
  .included-item{display:flex; gap:14px; padding:16px 0; border-top:1px solid var(--hair); font-size:14.5px; color:var(--ivory-dim); line-height:1.5;}
  .included-item .ico{color:var(--brass); flex-shrink:0; font-family:'Space Mono',monospace; font-size:12px; margin-top:2px;}

  /* ---------- PROCESS STEPS ---------- */
  .process{display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--hair); border:1px solid var(--hair); margin:40px 0;}
  @media (max-width:900px){.process{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:560px){.process{grid-template-columns:1fr;}}
  .process-step{background:var(--ink); padding:30px 24px;}
  .process-step .pn{font-family:'Space Mono',monospace; color:var(--brass); font-size:11px; letter-spacing:0.1em;}
  .process-step h4{font-family:'Fraunces',serif; font-weight:400; font-size:19px; margin:14px 0 8px;}
  .process-step p{font-size:13px; color:var(--ivory-dim); line-height:1.5; font-weight:300;}

  /* ---------- TESTIMONIALS ---------- */
  .testimonial-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--hair); border:1px solid var(--hair);}
  @media (max-width:900px){.testimonial-grid{grid-template-columns:1fr;}}
  .testimonial{background:var(--petrol); padding:38px 32px;}
  .testimonial p{font-family:'Fraunces',serif; font-style:italic; font-size:16.5px; line-height:1.55; color:var(--ivory); margin-bottom:20px;}
  .testimonial .who{font-size:11.5px; letter-spacing:0.08em; text-transform:uppercase; color:var(--brass-bright);}

  /* ---------- STAT BAR ---------- */
  .stat-bar{display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--hair); border-bottom:1px solid var(--hair);}
  @media (max-width:640px){.stat-bar{grid-template-columns:1fr 1fr;}}
  .stat{padding:38px 20px; text-align:center; border-right:1px solid var(--hair);}
  .stat:nth-child(2n){border-right:none;}
  @media (min-width:641px){ .stat:nth-child(2n){border-right:1px solid var(--hair);} .stat:last-child{border-right:none;} }
  .stat .num{font-family:'Fraunces',serif; font-size:36px; color:var(--brass-bright);}
  .stat .label{margin-top:8px; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ivory-dim);}

  /* ---------- JOURNAL / EDITORIAL ---------- */
  .journal-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--hair); border:1px solid var(--hair);}
  @media (max-width:900px){.journal-grid{grid-template-columns:1fr;}}
  .journal-card{background:var(--ink); overflow:hidden;}
  .journal-card .jimg{height:200px; background-size:cover; background-position:center;}
  .journal-card .jbody{padding:26px;}
  .journal-card .jtag{font-family:'Space Mono',monospace; font-size:10px; letter-spacing:0.12em; text-transform:uppercase; color:var(--brass);}
  .journal-card h4{font-family:'Fraunces',serif; font-weight:400; font-size:19px; margin:12px 0 10px; line-height:1.3;}
  .journal-card p{font-size:13.5px; color:var(--ivory-dim); line-height:1.55; font-weight:300;}

  /* ---------- ABOUT PAGE ---------- */
  .about-story{display:grid; grid-template-columns:0.9fr 1.1fr; gap:70px; align-items:start;}
  @media (max-width:900px){.about-story{grid-template-columns:1fr; gap:40px;}}
  .about-story p{color:var(--ivory-dim); font-size:15px; line-height:1.75; font-weight:300; margin-bottom:20px;}
  .values-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--hair); border:1px solid var(--hair); margin-top:10px;}
  @media (max-width:760px){.values-grid{grid-template-columns:1fr;}}
  .values-grid.cols-4{grid-template-columns:repeat(4,1fr);}
  @media (max-width:900px){ .values-grid.cols-4{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:560px){ .values-grid.cols-4{grid-template-columns:1fr;} }
  .value-cell{background:var(--ink); padding:34px 28px;}
  .value-cell h4{font-family:'Fraunces',serif; font-weight:400; font-size:19px; margin-bottom:10px;}
  .value-cell p{font-size:13.5px; color:var(--ivory-dim); line-height:1.55; font-weight:300;}

  /* ---------- LEGAL PAGES ---------- */
  .legal-body{max-width:760px; padding:70px 0 100px;}
  .legal-body h2{font-family:'Fraunces',serif; font-weight:400; font-size:24px; margin:36px 0 14px;}
  .legal-body h2:first-of-type{margin-top:0;}
  .legal-body p, .legal-body li{color:var(--ivory-dim); font-size:14.5px; line-height:1.75; font-weight:300; margin-bottom:14px;}
  .legal-body ul{padding-left:20px;}
  .legal-note{border:1px solid var(--hair-strong); padding:20px 24px; font-size:13px; color:var(--brass-bright); margin-bottom:40px; line-height:1.6;}

  /* ---------- GENERIC PAGE SECTION SPACING ---------- */
  .section-tight{padding:90px 0;}
  @media (max-width:720px){.section-tight{padding:60px 0;}}

  /* ---------- DESTINATIONS FULL GRID (destinations.html) ---------- */
  .dest-grid-full{
    display:grid; grid-template-columns:repeat(4,1fr); gap:1px;
    background:var(--hair); border:1px solid var(--hair);
  }
  @media (max-width:900px){ .dest-grid-full{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:560px){ .dest-grid-full{grid-template-columns:1fr;} }
  .dest-grid-full .dest-card{flex:none; width:100%; height:400px;}

  /* ================= EXPANSION 2: DEEPER PAGE CONTENT ================= */

  /* ---------- PRICING / TIER LIST ---------- */
  .tier-list{margin:10px 0 8px;}
  .tier-row{
    display:grid; grid-template-columns:1fr auto; gap:20px; align-items:baseline;
    padding:20px 0; border-top:1px solid var(--hair);
  }
  .tier-row:last-child{border-bottom:1px solid var(--hair);}
  .tier-row .tname{font-family:'Fraunces',serif; font-weight:400; font-size:18px; color:var(--ivory);}
  .tier-row .tname span{display:block; font-family:'Inter',sans-serif; font-size:13px; color:var(--ivory-dim); font-weight:300; margin-top:5px; line-height:1.5;}
  .tier-row .tprice{font-family:'Space Mono',monospace; font-size:13.5px; color:var(--brass-bright); text-align:right; white-space:nowrap;}
  .tier-caption{font-size:12.5px; color:var(--ivory-dim); font-weight:300; margin-top:18px; line-height:1.6;}
  @media (max-width:560px){
    .tier-row{grid-template-columns:1fr; gap:6px;}
    .tier-row .tprice{text-align:left;}
  }

  /* ---------- FAQ ---------- */
  .faq-list{margin-top:10px;}
  .faq-item{border-top:1px solid var(--hair); padding:24px 0;}
  .faq-item:last-child{border-bottom:1px solid var(--hair);}
  .faq-item h4{font-family:'Fraunces',serif; font-weight:400; font-size:18px; color:var(--ivory); margin-bottom:9px;}
  .faq-item p{color:var(--ivory-dim); font-size:14px; line-height:1.65; font-weight:300;}

  /* ---------- DEST CARD BLURB (destinations.html full grid) ---------- */
  .dest-card p.blurb{
    font-size:12.5px; color:var(--ivory-dim); font-weight:300; line-height:1.5;
    margin-top:8px; max-width:230px;
  }

  /* ---------- INFO STRIP (best time to visit, etc.) ---------- */
  .info-strip{
    display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--hair); border:1px solid var(--hair);
  }
  @media (max-width:760px){ .info-strip{grid-template-columns:1fr;} }
  .info-cell{background:var(--ink); padding:30px 28px;}
  .info-cell .k{font-family:'Space Mono',monospace; font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase; color:var(--brass); margin-bottom:12px;}
  .info-cell p{font-size:14px; color:var(--ivory-dim); font-weight:300; line-height:1.6;}
