:root{
  --ink:#2a2925; --soft:#6b665c; --cream:#faf7f1; --card:#fff; --line:#e8e2d5;
  --green:#2f4b3f; --green-d:#233a30; --gold:#b08b4f; --gold-d:#987536; --terra:#a8542f;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:"Inter",-apple-system,Segoe UI,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;line-height:1.1;color:var(--green-d)}
.wrap{max-width:1160px;margin:0 auto;padding:0 26px}
.wrap.narrow{max-width:780px}
.center{text-align:center}
.eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:14px}
.eyebrow.light{color:#e9d9b8}
.btn{display:inline-block;background:var(--green);color:#fff;font-size:14px;font-weight:600;letter-spacing:.04em;
  padding:14px 26px;border-radius:2px;border:0;cursor:pointer;transition:background .2s;font-family:inherit}
.btn:hover{background:var(--green-d)}
.btn.light{background:#fff;color:var(--green-d)} .btn.light:hover{background:#f0ead9}
.btn.ghost{background:transparent;border:1.5px solid rgba(255,255,255,.6);color:#fff;margin-left:8px} .btn.ghost:hover{border-color:#fff}
.btn.sm{padding:8px 16px;font-size:12.5px}
.btn.danger{background:transparent;color:var(--terra);border:1.5px solid var(--terra)} .btn.danger:hover{background:var(--terra);color:#fff}
.section{padding:84px 0}
.section-head{text-align:center;max-width:620px;margin:0 auto 46px}
.section-head h2{font-size:42px}
.section-head p{color:var(--soft);margin-top:10px}
.link-arrow{color:var(--gold);font-weight:600;font-size:14px}

/* header */
.site-head{position:sticky;top:0;z-index:40;background:rgba(58,60,59,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{max-width:1160px;margin:0 auto;padding:0 26px;height:72px;display:flex;align-items:center;justify-content:space-between}
.brand{font-family:"Cormorant Garamond",serif;font-size:28px;font-weight:600;color:var(--green-d);letter-spacing:.02em}
.brand span{color:var(--gold)}
.logo-img{height:50px;width:auto;display:block}
.certs{padding:42px 0;border-top:1px solid var(--line);background:#fff}
.certs-inner{display:flex;align-items:center;justify-content:center;gap:22px 36px;flex-wrap:wrap;max-width:1160px;margin:0 auto;padding:0 26px}
.certs-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--soft);font-weight:600}
.certs img{height:38px;width:auto;object-fit:contain}
.nav-links{display:flex;align-items:center;gap:30px}
.nav-links a{font-size:14px;font-weight:500;color:#ece9e2;transition:color .2s}
.nav-links a:hover{color:var(--gold)}
.nav-cta{background:var(--gold);color:#2a2925!important;padding:10px 18px;border-radius:2px;font-weight:600}
.nav-cta:hover{background:#c69c5e}
.nav-burger{display:none;flex-direction:column;gap:5px;background:0;border:0;cursor:pointer;padding:6px}
.nav-burger span{width:24px;height:2px;background:#ece9e2;display:block}
.nav-mobile{display:none;flex-direction:column;background:#3a3c3b;border-bottom:1px solid rgba(255,255,255,.08);padding:10px 26px}
.nav-mobile a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08);font-weight:500;color:#ece9e2}
.logo-img{height:54px}
.nav-mobile.open{display:flex}

/* home hero */
.hero-home{min-height:82vh;display:flex;align-items:center;color:#fff;position:relative;
  background:linear-gradient(rgba(20,30,25,.4),rgba(20,30,25,.55)),url('/assets/img/hero.jpg') center/cover}
.hero-home-inner{max-width:1160px;margin:0 auto;padding:0 26px;max-width:720px;width:100%}
.hero-home h1{font-size:66px;color:#fff;line-height:1.02}
.hero-home p{font-size:19px;margin:22px 0 30px;max-width:540px;color:#f3efe6}

/* featured */
.featured{margin-top:-70px;position:relative;z-index:5;padding-bottom:20px}
.featured-card{display:grid;grid-template-columns:1.1fr 1fr;background:var(--card);border-radius:4px;overflow:hidden;box-shadow:0 24px 60px -30px rgba(35,58,48,.4)}
.featured-img{min-height:340px;background-size:cover;background-position:center}
.featured-body{padding:44px 46px;align-self:center}
.featured-body h2{font-size:34px;margin:8px 0 12px}
.featured-body p{color:var(--soft);margin-bottom:18px}
.post-cat{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600}

/* itinerary grid */
.it-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.it-grid.wide{grid-template-columns:repeat(3,1fr);gap:28px}
.it-card{background:var(--card);border-radius:4px;overflow:hidden;box-shadow:0 8px 24px -16px rgba(35,58,48,.35);transition:transform .25s,box-shadow .25s}
.it-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px -20px rgba(35,58,48,.45)}
.it-card-img{height:200px;background-size:cover;background-position:center}
.it-card-body{padding:20px}
.it-card-sub{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600}
.it-card-body h3{font-size:25px;margin:6px 0 10px}
.it-card-meta{font-size:13.5px;color:var(--soft)} .it-card-meta .dot{margin:0 8px;color:var(--line)}
.center{margin-top:0}.section .center{margin-top:44px}

/* band */
.band{background:var(--green-d);color:#eae4d6;padding:74px 0}
.band-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}
.band-num{font-family:"Cormorant Garamond",serif;font-size:30px;color:var(--gold);margin-bottom:6px}
.band-item h3{color:#fff;font-size:26px;margin-bottom:8px}
.band-item p{color:#c9c3b4;font-size:15px}

/* reviews */
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.review-grid.wide{grid-template-columns:repeat(2,1fr)}
.review{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:30px}
.stars{color:var(--gold);letter-spacing:2px;margin-bottom:12px}
.review p{font-style:italic;color:var(--ink);font-size:16px}
.review cite{display:block;margin-top:16px;font-style:normal;font-weight:600;color:var(--green-d)}
.review cite span{display:block;font-weight:400;font-size:13px;color:var(--soft)}

/* cta band */
.cta-band{background:linear-gradient(rgba(47,75,63,.86),rgba(47,75,63,.9)),url('https://images.unsplash.com/photo-1516483638261-f4dbaf036963?auto=format&fit=crop&w=2000&q=80') center/cover;color:#fff;padding:90px 0}
.cta-band h2{color:#fff;font-size:44px}
.cta-band p{color:#eae4d6;margin:10px 0 26px}

/* page hero */
.page-hero{background:var(--green-d);color:#fff;padding:70px 0 60px}
.page-hero h1{color:#fff;font-size:52px}
.page-hero p{color:#c9c3b4;margin-top:10px;max-width:600px}

/* itinerary detail */
.it-hero{height:64vh;min-height:420px;background-size:cover;background-position:center;display:flex;align-items:flex-end;color:#fff;position:relative}
.it-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(20,30,25,.7))}
.it-hero-inner{position:relative;z-index:2;max-width:1160px;margin:0 auto;padding:0 26px 46px;width:100%}
.it-hero h1{color:#fff;font-size:60px}
.it-hero-meta{font-size:16px;color:#f3efe6;margin-top:8px;letter-spacing:.04em}
.it-overview{font-size:21px;line-height:1.6;color:var(--ink);margin:48px 0;font-family:"Cormorant Garamond",serif}
.it-highlights,.it-incl{margin:34px 0}
.it-highlights h2,.it-incl h2,.it-day-h,.it-cta h2{font-size:30px;margin-bottom:18px}
.it-incl ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 26px}
.it-incl li{position:relative;padding-left:26px;color:var(--ink)}
.it-incl li::before{content:"";position:absolute;left:0;top:.62em;
  width:5px;height:5px;border-radius:1px;background:var(--gold)}

/* Highlights as cards. As a plain two-column list the ragged line counts left
   uneven gaps between rows; grid items stretch, so a card per highlight keeps
   every row level however long a line runs.

   Treatment borrows the page's existing vocabulary rather than inventing new
   chrome: the same soft shadow and hover lift as the itinerary cards, and the
   Cormorant face the overview paragraph is already set in. The gold edge is
   the only ornament, and it thickens on hover. */
.it-highlights ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.it-highlights li{position:relative;background:var(--card);border-radius:4px;
  padding:24px 28px 24px 30px;overflow:hidden;
  /* cards stretch to level the row, so short lines centre rather than
     stranding themselves at the top of a tall box */
  display:flex;align-items:center;min-height:96px;
  font-family:"Cormorant Garamond",Georgia,serif;font-size:19.5px;line-height:1.42;color:var(--ink);
  box-shadow:0 8px 24px -16px rgba(35,58,48,.35);
  transition:transform .25s,box-shadow .25s}
.it-highlights li::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;
  background:var(--gold);transition:width .25s}
.it-highlights li:hover{transform:translateY(-4px);box-shadow:0 20px 40px -22px rgba(35,58,48,.45)}
.it-highlights li:hover::before{width:4px}
@media (max-width:700px){
  .it-highlights ul{grid-template-columns:1fr;gap:13px}
  .it-highlights li{padding:21px 22px 21px 25px;font-size:18px}
  .it-incl ul{grid-template-columns:1fr}
}
.it-days{list-style:none;counter-reset:none;margin:14px 0 40px}
.it-days li{display:flex;gap:24px;padding:22px 0;border-top:1px solid var(--line)}
.it-day-num{font-family:"Cormorant Garamond",serif;font-size:22px;color:var(--gold);font-weight:600;min-width:74px}
.it-day-body h3{font-size:22px}
.it-day-loc{font-family:"Inter";font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-left:8px}
.it-day-body p{color:var(--soft);margin-top:4px}
.it-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:34px 0}
.it-gallery img{height:150px;width:100%;object-fit:cover;border-radius:3px;cursor:zoom-in}
/* contact details, shown above the form so a visitor who would rather phone
   does not have to fill anything in to find the number */
.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;
  padding:34px 0 0;border-top:1px solid var(--line);margin-top:8px}
.contact-details>div{text-align:center}
.cd-label{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold);font-weight:600;margin-bottom:9px}
.contact-details a{font-size:16.5px;color:var(--ink);border-bottom:1px solid transparent;transition:border-color .2s}
.contact-details a:hover{border-bottom-color:var(--gold)}
.contact-details address{font-style:normal;font-size:15px;color:var(--soft);line-height:1.5}
.foot-addr{font-style:normal;color:inherit;opacity:.85;line-height:1.55;margin-top:2px}
@media (max-width:700px){
  .contact-details{grid-template-columns:1fr;gap:22px;padding-top:28px}
}

/* per-itinerary enquiry. Sits on white so it lifts off the cream page, with
   underline fields rather than boxes: on a warm ground, bordered white inputs
   read as patches stuck to the page. */
.it-cta{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:52px 44px 44px;text-align:center;margin:44px 0 70px}
.it-cta h2{font-size:34px}
.it-cta p{color:var(--soft);margin:8px 0 20px}
.it-cta .tf-lede{max-width:400px;margin:12px auto 34px;font-size:15.5px}

.trip-form{max-width:520px;margin:0 auto;text-align:left}
.tf-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px}
.tf-field{position:relative}
.tf-field input{width:100%;padding:16px 0 9px;border:0;border-bottom:1px solid var(--line);border-radius:0;
  background:transparent;font-family:"Inter",sans-serif;font-size:15.5px;color:var(--ink);transition:border-color .2s}
.tf-field input:focus{outline:none;border-bottom-color:var(--gold)}
.tf-field input:user-invalid{border-bottom-color:var(--terra)}
.tf-field label{position:absolute;left:0;top:16px;color:var(--soft);font-size:15.5px;
  pointer-events:none;transition:top .18s ease,font-size .18s ease,color .18s ease}
.tf-field input:focus + label,
.tf-field input:not(:placeholder-shown) + label{
  top:-2px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600}
.trip-form .tf-hint{font-size:13px;color:var(--soft);text-align:center;margin:30px 0 24px}
.trip-form .btn{display:block;margin:0 auto;padding:15px 40px}
.trip-form .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.it-cta .tf-alt{font-size:13.5px;color:var(--soft);margin:26px 0 0}
.it-cta .tf-alt a{color:var(--gold);border-bottom:1px solid rgba(176,139,79,.35);padding-bottom:1px}
.it-cta .tf-alt a:hover{border-bottom-color:var(--gold)}
@media (max-width:640px){
  .it-cta{padding:34px 22px 30px}
  .it-cta h2{font-size:27px}
  .it-cta .tf-lede{margin-bottom:28px}
  .tf-grid{grid-template-columns:1fr;gap:24px}
  .trip-form .btn{width:100%}
}

/* blog */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.post-card{background:var(--card);border-radius:4px;overflow:hidden;box-shadow:0 8px 24px -16px rgba(35,58,48,.3);transition:transform .25s}
.post-card:hover{transform:translateY(-4px)}
.post-card-img{height:200px;background-size:cover;background-position:center}
.post-card-body{padding:22px}
.post-card-body h3{font-size:24px;margin:6px 0 8px}
.post-card-body p{color:var(--soft);font-size:14.5px}
.post-date{font-size:12.5px;color:var(--gold);margin-top:12px;display:block}
.post-hero{height:52vh;min-height:360px;background-size:cover;background-position:center}
.post .wrap{padding-top:40px;padding-bottom:70px}
.post h1{font-size:46px;margin:10px 0 8px}
.post-meta{color:var(--soft);font-size:14px;margin-bottom:24px}
.post-body{font-size:17.5px;line-height:1.8;color:var(--ink)}
.post-body p{margin:18px 0}
.post-body h3{font-size:26px;margin:30px 0 8px}
.back{display:inline-block;margin-top:36px;color:var(--gold);font-weight:600}

/* about */
.prose .lead{font-size:22px;font-family:"Cormorant Garamond",serif;color:var(--ink);margin-bottom:20px}
.prose p{color:var(--soft);margin:16px 0}
.prose h2{font-size:32px;margin:38px 0 20px}
.serv-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.serv{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:26px}
.serv h3{font-size:22px;margin-bottom:6px}
.serv p{color:var(--soft);font-size:14.5px;margin:0}

/* contact form */
.lead-form{background:var(--card);border:1px solid var(--line);border-radius:5px;padding:36px}
.lead-form label{display:block;font-size:13px;font-weight:600;color:var(--green-d);margin-bottom:16px}
.lead-form input,.lead-form textarea,.lead-form select,.edit-form input,.edit-form textarea,.edit-form select{width:100%;margin-top:6px;padding:12px 14px;border:1px solid var(--line);border-radius:3px;font-family:inherit;font-size:15px;font-weight:400;color:var(--ink);background:#fdfcf9}
.lead-form input:focus,.lead-form textarea:focus,.lead-form select:focus{outline:0;border-color:var(--gold)}
.lead-form select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23b08b4f' d='M6 8 0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.consents{margin:4px 0 22px;display:grid;gap:12px}
.consents .chk{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;font-weight:500;color:var(--soft);margin:0}
.consents .chk input{width:18px;height:18px;margin:1px 0 0;flex:none}
.consents .chk a{color:var(--gold);text-decoration:underline}
.row.two{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.row.three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 18px}
.hp{position:absolute;left:-9999px;width:1px;height:1px}
.form-note{font-size:12.5px;color:var(--soft);margin-top:4px}
.sent-msg{text-align:center;background:var(--card);border:1px solid var(--line);border-radius:5px;padding:54px 30px}
.sent-msg h2{font-size:38px}.sent-msg p{color:var(--soft);margin:12px 0 24px}

/* footer */
.site-foot{background:var(--green-d);color:#c9c3b4;padding:60px 0 0;margin-top:20px}
.foot-grid{max-width:1160px;margin:0 auto;padding:0 26px 44px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px}
.foot-brand{color:#fff;font-size:30px}.foot-brand span{color:var(--gold)}
.foot-tag{font-size:14px;margin-top:12px;max-width:320px}
.site-foot h4{color:#fff;font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-family:"Inter";margin-bottom:14px}
.site-foot .foot-grid a,.site-foot .foot-grid span{display:block;font-size:14px;color:#c9c3b4;padding:4px 0}
.site-foot a:hover{color:var(--gold)}
.foot-bar{border-top:1px solid rgba(255,255,255,.12);padding:20px 26px;max-width:1160px;margin:0 auto;display:flex;justify-content:space-between;font-size:12.5px;flex-wrap:wrap;gap:8px}
.emp-login{color:#c9a66b!important}   /* a lighter gold: var(--gold) is 3.9:1 on the footer green, under the 4.5:1 small text needs */

/* ===== portal ===== */
.portal{background:#f4f1ea;min-height:100vh}
.login-wrap{max-width:380px;margin:0 auto;padding:80px 26px;text-align:center}
.login-wrap .brand{font-size:34px}
.login-wrap h1{font-size:26px;margin:22px 0 20px}
.login-form{background:#fff;border:1px solid var(--line);border-radius:5px;padding:30px;text-align:left}
.login-form label{display:block;font-size:13px;font-weight:600;color:var(--green-d);margin-bottom:14px}
.login-form input{width:100%;margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:3px;font-size:15px}
.login-form .btn{width:100%;margin-top:6px}
.err{background:#fbeae7;color:var(--terra);border:1px solid #eccabf;border-radius:3px;padding:10px;font-size:14px;margin-bottom:14px}
.login-wrap .back,.portal .back{color:var(--soft);font-size:13px;display:inline-block;margin-top:18px}

.portal-head{background:var(--green-d);color:#fff;display:flex;align-items:center;gap:30px;padding:0 26px;height:60px}
.portal-head .brand{color:#fff;font-size:22px}.portal-head .brand em{font-family:Inter;font-style:normal;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.portal-head nav{display:flex;gap:22px;flex:1}
.portal-head nav a{font-size:14px;color:#c9c3b4}.portal-head nav a.on,.portal-head nav a:hover{color:#fff}
.portal-logout{font-size:13px;color:#c9c3b4}
.portal-main{max-width:1000px;margin:0 auto;padding:36px 26px 80px}
.portal-main h1{font-size:34px;margin-bottom:22px}
.dash-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.dash-head h1,.dash-head h2{margin:0}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:34px}
.stat{background:#fff;border:1px solid var(--line);border-radius:5px;padding:24px;text-align:center}
.stat-n{font-family:"Cormorant Garamond",serif;font-size:44px;color:var(--green);line-height:1}
.stat-l{font-size:13px;color:var(--soft);letter-spacing:.1em;text-transform:uppercase;margin-top:6px}
.dash-cols{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.mini-list{list-style:none;background:#fff;border:1px solid var(--line);border-radius:5px}
.mini-list li a{display:flex;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--line);font-size:15px}
.mini-list li:last-child a{border-bottom:0}
.mini-list em{font-style:normal;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.mini-list .empty{padding:14px 16px;color:var(--soft)}
.admin-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:5px;overflow:hidden}
.admin-table th{background:var(--green);color:#fff;text-align:left;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:12px 14px}
.admin-table td{padding:13px 14px;border-top:1px solid var(--line);font-size:14px;vertical-align:top}
.muted{color:var(--soft);font-size:13px}
.pill{background:#eee;color:#777;font-size:11px;padding:3px 9px;border-radius:20px} .pill.live{background:#e3efe6;color:var(--green)}
.ta-actions a{color:var(--gold);font-weight:600;margin-right:12px;font-size:13px}
.empty-state{background:#fff;border:1px solid var(--line);border-radius:5px;padding:40px;text-align:center;color:var(--soft)}

/* editor */
.editor .fieldset{background:#fff;border:1px solid var(--line);border-radius:5px;padding:24px 26px;margin-bottom:20px}
.editor .fieldset h3{font-size:20px;margin-bottom:16px}
.edit-form label{display:block;font-size:13px;font-weight:600;color:var(--green-d);margin-bottom:16px}
.day-row{display:flex;gap:14px;align-items:flex-start;background:#faf8f3;border:1px solid var(--line);border-radius:4px;padding:14px;margin-bottom:12px}
.day-tag{font-family:"Cormorant Garamond",serif;color:var(--gold);font-size:18px;font-weight:600;min-width:56px;padding-top:8px}
.day-fields{flex:1}
.day-del{background:0;border:0;color:var(--terra);font-size:22px;cursor:pointer;line-height:1;padding:4px 8px}
.edit-actions{display:flex;align-items:center;gap:14px;padding:14px 0 40px}
.edit-actions .spacer{flex:1}
.chk{display:flex!important;align-items:center;gap:8px;margin:0!important;font-weight:500!important}
.chk input{width:auto!important;margin:0!important}
/* rich text editor */
.rte-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:12px;padding:5px;background:#fff;border:1px solid var(--line);border-radius:7px}
.rte-group{display:flex;gap:2px;align-items:center}
.rte-group+.rte-group{margin-left:7px;padding-left:9px;border-left:1px solid var(--line)}
.rte-toolbar button{height:32px;min-width:32px;padding:0 7px;background:transparent;border:0;border-radius:5px;cursor:pointer;color:var(--soft);display:inline-flex;align-items:center;justify-content:center;font-size:13.5px;font-weight:600;font-family:inherit;line-height:1;transition:background .12s,color .12s}
.rte-toolbar button:hover{background:var(--cream);color:var(--green-d)}
.rte-toolbar button.on{background:var(--green);color:#fff}
.rte-toolbar button svg{width:17px;height:17px;display:block}
.rte-toolbar button b{font-weight:800}
.rte-toolbar button i{font-style:italic;font-family:Georgia,serif}
.rte-toolbar .ico-u{text-decoration:underline;text-underline-offset:2px}
.rte-toolbar .ico-p{font-size:16px}
.rte-toolbar .ico-num{font-size:13px;letter-spacing:-.5px}
.rte-toolbar .ico-quote{font-family:"Cormorant Garamond",Georgia,serif;font-size:24px;font-weight:700}
.rte{background:#fdfcf9;border:1px solid var(--line);border-radius:3px;padding:20px 22px;min-height:340px;font-size:16px;line-height:1.75}
.rte:focus{outline:0;border-color:var(--gold)}
.rte-hint{font-size:12.5px;color:var(--soft);margin-top:8px}
.rte-uploading{color:var(--gold);font-style:italic}
/* shared long-form typography, editor preview + public post render identically */
.rte h2,.post-body h2{font-size:28px;margin:26px 0 8px}
.rte h3,.post-body h3{font-size:22px;margin:20px 0 6px}
.rte p,.post-body p{margin:14px 0}
.rte ul,.rte ol,.post-body ul,.post-body ol{margin:14px 0 14px 26px}
.rte li,.post-body li{margin:6px 0}
.rte a,.post-body a{color:var(--gold);text-decoration:underline}
.rte blockquote,.post-body blockquote{border-left:3px solid var(--gold);margin:20px 0;padding:6px 20px;color:var(--green-d);font-family:"Cormorant Garamond",serif;font-size:22px;font-style:italic}
.rte img,.post-body img{max-width:100%;height:auto;border-radius:4px;margin:18px 0}
.post-body figure{margin:26px 0} .post-body figure img{margin:0} .post-body figcaption{font-size:14px;color:var(--soft);margin-top:8px;text-align:center}
.post-body blockquote p{margin:0}

/* leads (cards, responsive) */
.lead-list{display:grid;gap:16px}
.lead-card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:20px 22px}
.lead-top{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:12px}
.lead-top strong{font-size:17px;color:var(--green-d)}
.lead-contact{font-size:13.5px;color:var(--soft);margin-top:3px}.lead-contact a{color:var(--gold)}
.lead-when{font-size:12.5px;color:var(--soft);white-space:nowrap}
.lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px}
.lead-f{display:flex;flex-direction:column;font-size:14px}
.lead-f span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
.lead-f em{font-style:normal;color:var(--ink)}
.lead-msg{margin-top:14px;padding:12px 14px;background:var(--cream);border-radius:4px;font-size:14.5px;line-height:1.6}
.lead-track{margin-top:12px;font-size:11.5px;color:var(--soft);font-family:ui-monospace,Menlo,monospace;word-break:break-all}

@media(max-width:860px){
  .nav-links{display:none}.nav-burger{display:flex}
  .it-grid,.it-grid.wide,.post-grid,.review-grid,.review-grid.wide,.band-grid,.serv-grid,.foot-grid,.dash-cols,.stat-row{grid-template-columns:1fr}
  .featured-card{grid-template-columns:1fr}.hero-home h1{font-size:44px}.page-hero h1{font-size:38px}
  .it-hero h1{font-size:40px}.it-highlights ul,.it-incl ul{grid-template-columns:1fr}.it-gallery{grid-template-columns:1fr 1fr}
  .row.two,.row.three{grid-template-columns:1fr}.featured{margin-top:24px}
  .lead-fields{grid-template-columns:1fr}
  .lead-form{padding:24px 20px}
  .portal-head{gap:14px;overflow-x:auto}.portal-head nav{gap:16px}
}

/* Destinations dropdown (desktop) and its section in the mobile menu */
.nav-drop{position:relative}
.nav-drop-menu{position:absolute;top:100%;left:-16px;min-width:220px;padding:10px 0;background:#3a3c3b;border:1px solid rgba(255,255,255,.08);border-radius:10px;box-shadow:0 18px 40px rgba(0,0,0,.25);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s,transform .18s,visibility .18s;z-index:50}
.nav-drop:hover .nav-drop-menu,.nav-drop:focus-within .nav-drop-menu{opacity:1;visibility:visible;transform:none}
.nav-drop-menu a{display:block;padding:9px 18px;white-space:nowrap}
.nav-mobile .nav-mobile-sub{padding-left:14px}
/* blog sections */
.blog-cats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px}
.blog-cats a{padding:7px 14px;border-radius:99px;border:1px solid rgba(0,0,0,.12);font-size:14px}
.blog-cats a[aria-current="page"]{background:#3a3c3b;color:#fff;border-color:#3a3c3b}
/* reviews: the traveler's photo and paragraphs */
.review p+p{margin-top:10px}
.review cite{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.review-photo{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none}
/* a trip day's text: several paragraphs and its own lists */
.it-day-text p{margin:0 0 10px}.it-day-text ul{margin:6px 0 10px 18px}
/* About: portrait left, story right (as on the Wix page) */
.about-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.about-person{position:sticky;top:110px;text-align:center}
.about-person h2{font-size:30px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:22px}
.about-person img{width:100%;max-width:420px;border-radius:14px;box-shadow:0 24px 50px -28px rgba(0,0,0,.45)}
.about-story{background:#fff;border:1px solid var(--line);border-radius:16px;padding:44px 48px}
.about-story-h{font-size:30px;letter-spacing:.12em;text-transform:uppercase;text-align:center;margin-bottom:24px}
.about-story .btn{margin-top:26px}
/* Services: full-width bands, photo and text side by side, alternating */
.svc-hero{background-size:cover;background-position:center}
.svc-band{display:grid;grid-template-columns:1fr 1fr;min-height:440px}
.svc-band.svc-flip .svc-text{order:2}
.svc-text{display:flex;flex-direction:column;justify-content:center;padding:56px clamp(24px,6vw,90px)}
.svc-text h2{font-size:clamp(30px,3.4vw,44px);letter-spacing:.16em;text-transform:uppercase;font-weight:500;text-align:center;margin-bottom:26px;line-height:1.15}
.svc-copy p{margin:0 0 12px;font-size:15px}
.svc-dark{background:#4a4c4b;color:#f1eee8}.svc-dark h2{color:#fff}
.svc-light{background:#e9e6e0}.svc-light h2{color:var(--ink)}
.svc-img{position:relative;min-height:320px}
.svc-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:860px){
  .about-split{grid-template-columns:1fr;gap:32px}.about-person{position:static}.about-story{padding:30px 22px}
  .svc-band{grid-template-columns:minmax(0,1fr)}.svc-band .svc-img{order:-1;min-height:260px}.svc-band.svc-flip .svc-text{order:0}
  .svc-text{padding:36px 20px}.svc-text h2{font-size:28px;letter-spacing:.1em;overflow-wrap:anywhere}
}

/* ---- Plan Your Trip: photo + promise on the left, the form in three short steps on the right ---- */
.plan{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);min-height:calc(100vh - 72px);background:var(--cream)}
.plan-visual{position:relative;background-size:cover;background-position:center;color:#fff}
.plan-visual-in{position:sticky;top:72px;padding:64px clamp(28px,5vw,72px) 56px;min-height:calc(100vh - 72px);display:flex;flex-direction:column;justify-content:flex-end}
.plan-visual h1{color:#fff;font-size:clamp(40px,4.4vw,62px);font-weight:500;margin-bottom:16px}
.plan-visual .eyebrow{color:#e2c48f}
.plan-lede{font-size:17px;line-height:1.6;color:rgba(255,255,255,.88);max-width:460px}
.plan-steps{list-style:none;counter-reset:s;margin:34px 0 0;padding:0;display:grid;gap:18px;max-width:460px}
.plan-steps li{counter-increment:s;display:grid;grid-template-columns:38px 1fr;column-gap:14px;align-items:start}
.plan-steps li::before{content:counter(s);grid-row:span 2;width:38px;height:38px;border-radius:50%;border:1px solid rgba(226,196,143,.7);color:#e2c48f;display:grid;place-items:center;font-family:"Cormorant Garamond",Georgia,serif;font-size:20px}
.plan-steps b{font-weight:600;font-size:15px}
.plan-steps span{font-size:14px;color:rgba(255,255,255,.75)}
.plan-quote{margin:40px 0 0;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.22);font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:22px;line-height:1.35;max-width:460px}
.plan-quote cite{display:block;margin-top:8px;font-family:"Inter",sans-serif;font-style:normal;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#e2c48f}
.plan-form-col{padding:56px clamp(20px,5vw,80px) 72px;display:flex;justify-content:center}
.plan-form{width:100%;max-width:640px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px clamp(20px,3.4vw,40px) 34px;box-shadow:0 30px 60px -40px rgba(35,58,48,.35)}
.plan-form fieldset{border:0;margin:0;padding:26px 0 6px;border-bottom:1px solid var(--line)}
.plan-form fieldset:last-of-type{border-bottom:0}
.plan-form legend{display:flex;align-items:center;gap:12px;padding:0;margin-bottom:16px;font-family:"Cormorant Garamond",Georgia,serif;font-size:26px;font-weight:600;color:var(--green-d)}
.plan-n{width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-family:"Inter",sans-serif;font-size:13px;font-weight:600}
.plan-form input:not([type=checkbox]),.plan-form select,.plan-form textarea{transition:border-color .15s,box-shadow .15s,background-color .15s;background-color:#fcfbf8}
.plan-form input:not([type=checkbox]):focus,.plan-form select:focus,.plan-form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(176,139,79,.18);background-color:#fff}
.plan-trip{margin:22px 0 0;padding:12px 16px;border-radius:10px;background:#f4eee2;color:var(--green-d);font-size:14px}
.plan-submit{display:inline-flex;align-items:center;gap:10px;width:100%;justify-content:center;margin-top:22px;padding:17px 26px;font-size:15px;background:var(--gold);color:#fff;border-radius:10px;transition:background .15s,transform .15s}
.plan-submit:hover{background:var(--gold-d);transform:translateY(-1px)}
.plan-submit svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s}
.plan-submit:hover svg{transform:translateX(3px)}
.plan-form .form-note{text-align:center}
@media (max-width:960px){
  .plan{grid-template-columns:1fr;min-height:0}
  .plan-visual-in{position:static;min-height:0;padding:56px 20px 40px}
  .plan-quote{display:none}
  .plan-form-col{padding:28px 16px 56px}
}
/* thank-you, after the form is sent */
.ty-hero{min-height:calc(100vh - 72px);display:grid;place-items:center;padding:60px 16px;background-size:cover;background-position:center}
.ty-card{max-width:560px;width:100%;text-align:center;background:rgba(255,255,255,.96);border-radius:20px;padding:48px clamp(22px,5vw,56px);box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.ty-card h1{font-size:clamp(40px,5vw,56px);font-weight:500;margin-bottom:18px}
.ty-card p{color:var(--soft);font-size:16px;margin:0 0 10px}
.ty-card .btn{margin-top:22px}
.ty-check{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:var(--green);display:grid;place-items:center;animation:ty-pop .5s cubic-bezier(.3,1.3,.55,1) both}
.ty-check svg{width:32px;height:32px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;animation:ty-draw .45s .3s ease-out forwards}
.ty-more{margin-top:22px;font-size:14px;color:var(--soft);display:flex;gap:10px;justify-content:center}
.ty-more a{color:var(--green);display:inline-block;padding:10px 4px}
@keyframes ty-pop{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}
@keyframes ty-draw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.ty-check,.ty-check svg{animation:none;stroke-dashoffset:0}}

/* ---- Reviews ---- */
.rv-hero{background-size:cover;background-position:center 60%;color:#fff;padding:120px 0 96px}
.rv-hero h1{color:#fff;font-size:clamp(44px,5.4vw,72px);font-weight:500;margin-bottom:14px}
.rv-hero .eyebrow{color:#e2c48f}
.rv-hero p{max-width:560px;font-size:17px;color:rgba(255,255,255,.88)}
.rv-spot-wrap{margin-top:-56px;position:relative;z-index:2}
.rv-spot{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 40px 80px -48px rgba(20,32,27,.55)}
.rv-spot-img{background-size:cover;background-position:center;min-height:420px}
.rv-spot-text{padding:52px clamp(24px,4vw,60px)}
.rv-spot blockquote{margin:0}
.rv-spot-q{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(28px,2.8vw,40px);line-height:1.2;color:var(--green-d);margin:4px 0 20px}
.rv-spot-body p{color:var(--soft);font-size:15px;margin:0 0 12px}
.rv-wall{columns:3 320px;column-gap:24px;padding-top:72px;padding-bottom:40px}
.rv-card{break-inside:avoid;position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 28px 24px;margin:0 0 24px;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s,border-color .2s}
.rv-card:hover{transform:translateY(-3px);box-shadow:0 24px 40px -28px rgba(20,32,27,.4);border-color:rgba(176,139,79,.45)}
.rv-mark{position:absolute;top:6px;right:22px;font-family:"Cormorant Garamond",Georgia,serif;font-size:96px;line-height:1;color:rgba(176,139,79,.22);pointer-events:none}
.rv-head{font-size:24px;line-height:1.22;font-weight:600;margin:0 0 12px;padding-right:34px}
.rv-head-long{font-size:20px;line-height:1.28}
.rv-body p{color:var(--soft);font-size:15px;margin:0 0 10px}
.rv-long .rv-body{max-height:9.6em;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 60%,transparent);mask-image:linear-gradient(180deg,#000 60%,transparent)}
.rv-long.rv-open .rv-body{max-height:none;-webkit-mask-image:none;mask-image:none}
.rv-more{background:none;border:0;padding:6px 0;color:var(--gold-d);font:600 13px/1 "Inter",sans-serif;letter-spacing:.06em;cursor:pointer}
.rv-more:hover{color:var(--green)}
.rv-who{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);font-weight:600;color:var(--green-d)}
.rv-av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none;display:grid;place-items:center;font:600 14px/1 "Inter",sans-serif;color:#fff;letter-spacing:.04em}
.rv-av-0{background:var(--green)}.rv-av-1{background:var(--gold)}.rv-av-2{background:var(--terra)}.rv-av-3{background:#5d6f63}
.rv-pre{opacity:0;transform:translateY(18px)}
.rv-pre.rv-in{opacity:1;transform:none;transition:opacity .6s ease var(--d),transform .6s cubic-bezier(.2,.8,.2,1) var(--d)}
.rv-trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:26px 0}
.rv-trust .wrap{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap}
.rv-trust .eyebrow{margin:0}
.rv-logos{display:flex;align-items:center;gap:28px;flex-wrap:wrap;justify-content:center}
.rv-logos img{height:34px;width:auto;filter:grayscale(1);opacity:.75;transition:filter .2s,opacity .2s}
.rv-logos img:hover{filter:none;opacity:1}
.rv-cta{background:var(--green-d);color:#fff;padding:80px 0;margin-bottom:-20px;border-bottom:1px solid rgba(255,255,255,.08)}
.rv-cta h2{color:#fff;font-size:clamp(34px,4vw,48px);font-weight:500;margin-bottom:12px}
.rv-cta p{color:rgba(255,255,255,.8);margin:0 auto 28px;max-width:520px}
.rv-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.rv-cta-main{background:var(--gold)}.rv-cta-main:hover{background:var(--gold-d)}
.rv-cta-alt{color:#fff;border-color:rgba(255,255,255,.45)}.rv-cta-alt:hover{background:rgba(255,255,255,.1);color:#fff}
@media (max-width:860px){
  .rv-hero{padding:84px 0 80px}
  .rv-spot-wrap{margin-top:-48px}.rv-spot{grid-template-columns:minmax(0,1fr)}
  .rv-spot-img{min-height:220px}
  .rv-spot-text{padding:30px 22px}
  .rv-wall{padding-top:44px}
  .rv-cta-btns .btn{width:100%;text-align:center}
}
@media (prefers-reduced-motion:reduce){.rv-pre{opacity:1;transform:none}.rv-card,.rv-card:hover{transition:none;transform:none}}

/* ---- Trip page ---- */
.ith{min-height:78vh;display:flex;align-items:flex-end;background-size:cover;background-position:center;color:#fff}
.ith-in{padding-top:120px;padding-bottom:64px;width:100%}
.ith-back{display:inline-block;color:rgba(255,255,255,.8);font-size:13px;letter-spacing:.04em;margin-bottom:22px}
.ith-back:hover{color:#fff}
.ith .eyebrow{color:#e2c48f}
.ith h1{color:#fff;font-size:clamp(46px,6.4vw,92px);font-weight:500;line-height:1;margin:6px 0 28px;max-width:900px}
.ith-btns{display:flex;gap:12px;flex-wrap:wrap}
.ith-btns .btn.ghost{margin-left:0}
.ith-plan{background:var(--gold);padding:15px 28px}.ith-plan:hover{background:var(--gold-d)}
.itf{background:var(--green-d);color:#fff}
.itf-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0}
.itf-in>div{padding:24px 18px;border-left:1px solid rgba(255,255,255,.1);text-align:center}
.itf-in>div:first-child{border-left:0}
.itf b{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:32px;font-weight:500;line-height:1.1}
.itf span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#e2c48f}
.it-intro{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:56px;padding-top:72px;padding-bottom:40px;align-items:start}
.it-lead{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(22px,2.1vw,28px);line-height:1.45;color:var(--green-d)}
.it-glance{position:sticky;top:96px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 26px;box-shadow:0 30px 60px -44px rgba(20,32,27,.45)}
.it-route{list-style:none;margin:6px 0 22px;padding:0}
.it-route li{position:relative;padding:0 0 14px 28px;font-weight:600;color:var(--green-d)}
.it-route li::before{content:"";position:absolute;left:4px;top:7px;width:10px;height:10px;border-radius:50%;background:var(--gold)}
.it-route li:not(:last-child)::after{content:"";position:absolute;left:8px;top:19px;bottom:0;width:2px;background:rgba(176,139,79,.35)}
.it-glance-price{font-family:"Cormorant Garamond",Georgia,serif;font-size:34px;color:var(--green-d);border-top:1px solid var(--line);padding-top:16px}
.it-glance-price span{font-family:"Inter",sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
.it-glance-price small{font-family:"Inter",sans-serif;font-size:13px;color:var(--soft)}
.it-glance-btn{display:block;text-align:center;margin:16px 0 12px;background:var(--gold)}.it-glance-btn:hover{background:var(--gold-d)}
.it-glance p{font-size:13px;color:var(--soft);margin:0;text-align:center}
.it-days-sec{padding:40px 0 64px}
.itd-list{list-style:none;margin:40px 0 0;padding:0;position:relative}
.itd{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;margin-bottom:72px}
.itd-flip .itd-photo{order:2}
.itd-photo{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:4/3;background:#e9e3d6;box-shadow:0 30px 60px -40px rgba(20,32,27,.55)}
.itd-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.itd:hover .itd-photo img{transform:scale(1.035)}
.itd-badge{position:absolute;left:18px;top:18px;width:66px;height:66px;border-radius:50%;background:rgba(255,255,255,.94);color:var(--green-d);display:grid;place-items:center;align-content:center;font-family:"Cormorant Garamond",Georgia,serif;font-size:28px;line-height:1;box-shadow:0 10px 24px -12px rgba(0,0,0,.5)}
.itd-badge small{font-family:"Inter",sans-serif;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-d);margin-bottom:2px}
.itd-flip .itd-badge{left:auto;right:18px}
.itd-k{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:8px}
.itd-text h3{font-size:clamp(28px,2.6vw,36px);line-height:1.12;margin-bottom:14px}
.itd-text .it-day-text{color:var(--soft);font-size:15px}
.itd-text .it-day-text ul{list-style:none;margin:10px 0 12px;padding:14px 18px;background:#f4eee2;border-radius:12px}
.itd-text .it-day-text li{position:relative;padding-left:18px;margin:4px 0;color:var(--green-d);font-size:14px}
.itd-text .it-day-text li::before{content:"";position:absolute;left:2px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.it-final{background-size:cover;background-position:center;color:#fff;padding:96px 0}
.it-final .eyebrow{color:#e2c48f}
.it-final h2{color:#fff;font-size:clamp(34px,4.4vw,56px);font-weight:500;margin-bottom:14px}
.it-final p{color:rgba(255,255,255,.85);max-width:560px;margin:0 auto 26px}
.it-final-btn{font-size:16px;padding:17px 34px}
.it-final .it-final-call{margin-top:18px;font-size:14px}.it-final-call a{color:#fff;text-decoration:underline}
.it-quick{padding-top:56px;padding-bottom:40px}
@media (max-width:900px){
  .ith{min-height:68vh}.ith-in{padding-bottom:40px}
  .itf-in{grid-template-columns:repeat(2,minmax(0,1fr))}
  .itf-in>div:nth-child(3){border-left:0}.itf-in>div{border-top:1px solid rgba(255,255,255,.1)}
  .it-intro{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:44px}
  .it-glance{position:static}
  .itd{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:52px}
  .itd-flip .itd-photo{order:0}
  .ith-btns .btn{flex:1 1 auto;text-align:center}
}
@media (prefers-reduced-motion:reduce){.itd-photo img,.itd:hover .itd-photo img{transition:none;transform:none}}

/* home hero videos (over the photo, which stays as the fallback) */
.hero-home{overflow:hidden}
.hero-vids{position:absolute;inset:0;z-index:0;opacity:0;transition:opacity 1s ease}
.hero-vids.live{opacity:1}
.hero-vids .hv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s ease}
.hero-vids .hv.on{opacity:1}
.hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(rgba(20,30,25,.4),rgba(20,30,25,.55))}
.hero-home-inner{position:relative;z-index:2}

/* a form that came back from the server: what to fix, on top */
.form-errors{margin:18px 0 6px;padding:12px 16px;border-radius:10px;background:#fdecea;border:1px solid #f5c2bc;color:#8a1f13;font-size:14px}
.form-errors ul{margin:6px 0 0 18px;padding:0}.form-errors li{margin:2px 0}
/* the trip enquiry's travelers dropdown, styled like its underlined inputs */
.tf-select select{width:100%;padding:16px 0 9px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;font:inherit;color:var(--ink);appearance:none;-webkit-appearance:none}
.tf-select select:focus{outline:none;border-bottom-color:var(--gold)}

