/* ═══════════════════════════════════════════
   CAMELIA TRAVEL — GLOBAL STYLES
   Site Green : #1B322D
   Site Yellow: #FFF6E5
   Gold accent: #C9A96E
═══════════════════════════════════════════ */
:root {
  --green      : #1B322D;
  --green-mid  : #2D5048;
  --green-soft : #4A6B62;
  --yellow     : #FFF6E5;
  --yellow-mid : #F5E8CC;
  --gold       : #C9A96E;
  --gold-lt    : #DFC090;
  --blush      : #D4A596;
  --border-y   : rgba(27,50,45,0.15);
  --border-g   : rgba(255,246,229,0.12);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Jost',sans-serif;background:var(--yellow);color:var(--green);overflow-x:hidden}

/* ── REVEAL ────────────────────────────────── */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

/* ── NAV ───────────────────────────────────── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:300;
  display:flex;align-items:center;justify-content:space-between;
  padding:1.6rem 4rem;
  transition:background .4s ease,padding .4s ease,box-shadow .4s ease;
}
nav.scrolled{
  background:var(--green);
  padding:1rem 4rem;
  box-shadow:0 2px 30px rgba(0,0,0,.15);
}
.nav-logo{
  font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:300;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--yellow);text-decoration:none;flex-shrink:0;
}
.nav-links{display:flex;list-style:none;gap:1.8rem;align-items:center}
.nav-links a{
  font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,246,229,.85);text-decoration:none;font-weight:300;
  transition:color .3s;position:relative;
}
.nav-links a::after{
  content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;
  background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .35s;
}
.nav-links a:hover{color:var(--yellow)}
.nav-links a:hover::after{transform:scaleX(1);transform-origin:left}
.nav-links a.active{color:var(--yellow)}

/* Dropdown */
.nav-dropdown{position:relative}
.nav-dropdown-btn{
  font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,246,229,.85);background:none;border:none;cursor:pointer;
  font-family:'Jost',sans-serif;font-weight:300;
  display:flex;align-items:center;gap:.35rem;transition:color .3s;
}
.nav-dropdown-btn::after{content:'▾';font-size:.55rem;transition:transform .3s}
.nav-dropdown:hover .nav-dropdown-btn::after{transform:rotate(180deg)}
.nav-dropdown-btn:hover{color:var(--yellow)}
/* Dropdown menu — ALWAYS green bg, yellow text regardless of scroll state */
.dropdown-menu{
  position:absolute;top:calc(100% + 10px);left:0;
  background:var(--green);
  border:1px solid var(--border-g);
  min-width:190px;padding:.5rem 0;
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:all .28s ease;
  box-shadow:0 20px 40px rgba(0,0,0,.25);
}
.nav-dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}
.dropdown-menu a{
  display:block;padding:.75rem 1.4rem;
  font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--yellow);text-decoration:none;font-weight:300;
  transition:all .2s;
}
.dropdown-menu a:hover{color:var(--gold);padding-left:1.8rem;background:rgba(255,246,229,.05)}
.dropdown-menu a::after{display:none}

/* Nav right */
.nav-right{display:flex;align-items:center;gap:1.2rem}
.nav-cta-btn{
  font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;
  padding:.65rem 1.5rem;border:1px solid rgba(255,246,229,.5);
  color:var(--yellow);background:transparent;cursor:pointer;
  font-family:'Jost',sans-serif;font-weight:300;text-decoration:none;
  display:inline-block;transition:all .3s;
}
.nav-cta-btn:hover{background:var(--gold);border-color:var(--gold);color:var(--green)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:.3rem}
.hamburger span{width:22px;height:1px;background:var(--yellow);display:block;transition:all .3s}

/* Booking page — nav solid immediately */
nav.nav-solid{background:var(--green);padding:1rem 4rem}

/* ── MOBILE MENU ───────────────────────────── */
.mob-menu{
  display:none;position:fixed;inset:0;z-index:290;
  background:var(--green);flex-direction:column;
  align-items:center;justify-content:center;gap:1.8rem;
}
.mob-menu.open{display:flex}
.mob-menu a{
  font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:300;
  color:var(--yellow);text-decoration:none;letter-spacing:.06em;transition:color .3s;
}
.mob-menu a:hover{color:var(--gold)}
.mob-menu a.mob-book{color:var(--gold);font-size:1.4rem;margin-top:.5rem}
.mob-close{
  position:absolute;top:2rem;right:2rem;
  background:none;border:none;color:var(--yellow);font-size:1.5rem;cursor:pointer;
}

/* ── HERO ──────────────────────────────────── */
.hero{
  height:100vh;position:relative;
  display:flex;align-items:flex-end;overflow:hidden;
}
.hero-short{height:62vh}
.hero-bg{
  position:absolute;inset:0;background-size:cover;background-position:center;
  transform:scale(1.05);animation:hZoom 12s ease forwards;
}
@keyframes hZoom{to{transform:scale(1)}}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(27,50,45,.85) 0%,rgba(27,50,45,.4) 50%,rgba(27,50,45,.12) 100%);
}
/* All hero content: lower positioning, consistent across all pages */
.hero-content{
  position:relative;z-index:2;
  padding:0 4rem 7rem;
  animation:hFadeUp 1.1s .25s both ease-out;
  max-width:860px;
}
@keyframes hFadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero-eyebrow{
  font-size:.66rem;letter-spacing:.32em;text-transform:uppercase;
  color:var(--gold);font-weight:300;
  display:flex;align-items:center;gap:1rem;margin-bottom:1.6rem;
}
.hero-eyebrow::before{content:'';width:36px;height:1px;background:var(--gold);flex-shrink:0}
/* All hero text = Site Yellow */
.hero h1{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(3rem,5.5vw,5.5rem);font-weight:300;line-height:1.05;
  color:var(--yellow);margin-bottom:1.8rem;letter-spacing:-.01em;
}
.hero h1 em{font-style:italic;color:var(--blush)}
.hero-sub{
  font-size:1.1rem;line-height:1.85;
  color:rgba(255,246,229,.82);font-weight:300;
  max-width:540px;margin-bottom:2.8rem;
}
.hero-actions{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}

/* ── BUTTONS ───────────────────────────────── */
/* Primary: gold bg, green text, gold border */
.btn-primary{
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  padding:1rem 2.6rem;background:var(--gold);color:var(--green);
  border:1px solid var(--gold);cursor:pointer;
  font-family:'Jost',sans-serif;font-weight:400;
  transition:all .32s;display:inline-flex;align-items:center;gap:.7rem;
  text-decoration:none;
}
.btn-primary::after{content:'→'}
.btn-primary:hover{background:var(--gold-lt);border-color:var(--gold-lt);transform:translateY(-2px)}

/* Ghost light: for hero — transparent, yellow text, yellow border */
.btn-ghost-light{
  font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--yellow);background:none;
  border:1px solid rgba(255,246,229,.55);
  padding:1rem 2.4rem;cursor:pointer;
  font-family:'Jost',sans-serif;font-weight:300;
  display:inline-flex;align-items:center;gap:.6rem;transition:all .3s;
  text-decoration:none;
}
.btn-ghost-light::after{content:'→'}
.btn-ghost-light:hover{border-color:var(--yellow);background:rgba(255,246,229,.08)}

/* Ghost yellow border: on hero country pages */
.btn-hero-outline{
  font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--yellow);background:none;
  border:1px solid var(--yellow);
  padding:1rem 2.4rem;cursor:pointer;
  font-family:'Jost',sans-serif;font-weight:300;
  display:inline-flex;align-items:center;gap:.6rem;transition:all .3s;
  text-decoration:none;
}
.btn-hero-outline::after{content:'→'}
.btn-hero-outline:hover{background:rgba(255,246,229,.1)}

/* Green bg, yellow text, yellow border */
.btn-green{
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  padding:1rem 2.6rem;background:var(--green);color:var(--yellow);
  border:1px solid var(--green);cursor:pointer;
  font-family:'Jost',sans-serif;font-weight:300;
  transition:all .32s;display:inline-flex;align-items:center;gap:.7rem;
  text-decoration:none;
}
.btn-green::after{content:'→'}
.btn-green:hover{background:var(--green-mid);border-color:var(--green-mid)}

/* Outline: green border on yellow bg */
.btn-outline-green{
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  padding:1rem 2.6rem;background:transparent;color:var(--green);
  border:1px solid var(--green);cursor:pointer;
  font-family:'Jost',sans-serif;font-weight:300;
  transition:all .32s;display:inline-flex;align-items:center;gap:.7rem;
  text-decoration:none;
}
.btn-outline-green::after{content:'→'}
.btn-outline-green:hover{background:var(--green);color:var(--yellow)}

/* Outline: yellow border on green bg */
.btn-outline-yellow{
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  padding:1rem 2.6rem;background:transparent;color:var(--yellow);
  border:1px solid var(--yellow);cursor:pointer;
  font-family:'Jost',sans-serif;font-weight:300;
  transition:all .32s;display:inline-flex;align-items:center;gap:.7rem;
  text-decoration:none;
}
.btn-outline-yellow::after{content:'→'}
.btn-outline-yellow:hover{background:rgba(255,246,229,.1)}

/* ── EYEBROW ───────────────────────────────── */
.eyebrow{
  font-size:.64rem;letter-spacing:.3em;text-transform:uppercase;
  color:var(--gold);font-weight:300;
  display:flex;align-items:center;gap:.8rem;margin-bottom:1rem;
}
.eyebrow::before{content:'';width:26px;height:1px;background:var(--gold);flex-shrink:0}
.eyebrow-no-line::before{display:none}

/* ── SECTIONS ──────────────────────────────── */
section{padding:6rem 4rem}
.sec-green{background:var(--green);color:var(--yellow)}
.sec-yellow{background:var(--yellow);color:var(--green)}
.sec-yellow-mid{background:var(--yellow-mid);color:var(--green)}
.section-hdr{margin-bottom:4rem}
.section-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2rem,3.2vw,3rem);font-weight:300;line-height:1.15;
}
.section-title em{font-style:italic}
/* Green sections: title and body = yellow */
.sec-green .section-title{color:var(--yellow)}
.sec-green .section-body{color:rgba(255,246,229,.65)}
.sec-green .eyebrow{color:var(--gold)}
/* Yellow sections: title and body = green */
.sec-yellow .section-title{color:var(--green)}
.sec-yellow .section-body{color:var(--green-soft)}
.sec-yellow-mid .section-title{color:var(--green)}
.sec-yellow-mid .section-body{color:var(--green-soft)}
.section-body{font-size:1.05rem;line-height:1.9;font-weight:300;max-width:600px;margin-top:1.2rem}

/* ── CTA BAND (green bg) ───────────────────── */
.cta-band{background:var(--green);padding:7rem 4rem;text-align:center;position:relative;overflow:hidden}
.cta-band::before{
  content:'CAMELIA';position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  font-family:'Cormorant Garamond',serif;font-size:18vw;font-weight:300;
  color:rgba(255,246,229,.025);white-space:nowrap;pointer-events:none;letter-spacing:.1em;
}
.cta-band .eyebrow{justify-content:center;color:var(--gold)}
.cta-band .eyebrow::before{display:none}
.cta-band .section-title{color:var(--green);text-align:center}
.cta-band .section-body{color:var(--green-soft);margin:1rem auto 2.5rem;text-align:center;max-width:480px}

/* ── HOMEPAGE — DESTINATIONS GRID ─────────── */
.dest-grid{display:grid;grid-template-columns:repeat(4,1fr);background:var(--green)}
.dest-tile{position:relative;height:500px;overflow:hidden;cursor:pointer}
.dest-tile-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05);transition:transform .8s ease}
.dest-tile:hover .dest-tile-bg{transform:scale(1)}
.dest-tile-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(27,50,45,.9) 0%,rgba(27,50,45,.2) 60%,transparent 100%);transition:background .5s}
.dest-tile:hover .dest-tile-overlay{background:linear-gradient(to top,rgba(27,50,45,.95) 0%,rgba(27,50,45,.45) 60%,rgba(27,50,45,.1) 100%)}
.dest-tile-content{position:absolute;bottom:0;left:0;right:0;padding:2.5rem}
.dest-tile-tag{font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-weight:300;margin-bottom:.5rem}
/* ALL country tile text = Site Yellow */
.dest-tile-title{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:300;color:var(--yellow);margin-bottom:.5rem}
.dest-tile-sub{font-size:.92rem;color:rgba(255,246,229,.7);font-weight:300;line-height:1.6;opacity:0;transform:translateY(8px);transition:all .4s}
.dest-tile-arrow{position:absolute;top:2rem;right:2rem;width:34px;height:34px;border:1px solid rgba(255,246,229,.25);display:flex;align-items:center;justify-content:center;font-size:.9rem;color:rgba(255,246,229,.4);opacity:0;transform:translateY(-6px);transition:all .4s}
.dest-tile:hover .dest-tile-sub{opacity:1;transform:translateY(0)}
.dest-tile:hover .dest-tile-arrow{opacity:1;transform:translateY(0);border-color:var(--gold);color:var(--gold)}

/* ── HOMEPAGE — PHILOSOPHY SECTION ────────── */
/* Yellow bg, green text */
.philosophy-split{display:grid;grid-template-columns:1fr 1fr;min-height:560px}
.phil-img{background-size:cover;background-position:center;position:relative;min-height:400px}
.phil-text{
  background:var(--yellow);padding:6rem 5rem;
  display:flex;flex-direction:column;justify-content:center;
}
.phil-quote{font-family:'Cormorant Garamond',serif;font-size:clamp(1.5rem,2.2vw,2.2rem);font-weight:300;font-style:italic;color:var(--green);line-height:1.35;margin-bottom:2rem}
.phil-body{font-size:1rem;line-height:1.9;color:var(--green-soft);font-weight:300;margin-bottom:2.5rem}

/* ── HOMEPAGE — THEMES GRID ────────────────── */
/* Yellow bg, green text, green borders */
.themes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--border-y)}
.theme-card{background:var(--yellow);padding:3rem;border:1px solid var(--green);position:relative;overflow:hidden;transition:background .35s}
.theme-card:hover{background:var(--yellow-mid)}
.theme-card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--green),var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .45s}
.theme-card:hover::after{transform:scaleX(1)}
.theme-icon{font-size:1.2rem;margin-bottom:1.3rem;display:block;color:var(--green-soft)}
.theme-title{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:400;color:var(--green);margin-bottom:.8rem}
.theme-body{font-size:.9rem;line-height:1.8;color:var(--green-soft);font-weight:300}

/* ── HOMEPAGE — PROCESS STRIP ──────────────── */
.process-strip{background:var(--green);padding:6rem 4rem}
.process-title-main{font-family:'Cormorant Garamond',serif;font-size:clamp(2.2rem,3.5vw,3.5rem);font-weight:300;color:var(--yellow);text-align:center;margin-bottom:.5rem}
.process-eyebrow{text-align:center;justify-content:center;color:var(--gold);margin-bottom:3.5rem}
.process-eyebrow::before{display:none}
.process-row{display:grid;grid-template-columns:repeat(5,1fr)}
.process-node{padding:2.5rem 2rem;border-right:1px solid rgba(255,246,229,.07);position:relative;transition:background .35s}
.process-node:last-child{border-right:none}
.process-node:hover{background:rgba(255,246,229,.03)}
.process-n{font-family:'Cormorant Garamond',serif;font-size:3rem;font-weight:300;color:rgba(255,246,229,.1);line-height:1;margin-bottom:.8rem;transition:color .3s}
.process-node:hover .process-n{color:var(--gold)}
.process-step-label{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:300;margin-bottom:.5rem}
.process-step-title{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:300;color:var(--yellow);margin-bottom:.6rem}
.process-step-desc{font-size:.85rem;line-height:1.75;color:rgba(255,246,229,.5);font-weight:300}

/* ── STATS BAND ─────────────────────────────── */
.stats-band{background:var(--yellow-mid);padding:4.5rem 4rem;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--border-y);border-bottom:1px solid var(--border-y)}
.stat-item{text-align:center;padding:.5rem}
.stat-n{font-family:'Cormorant Garamond',serif;font-size:3.5rem;font-weight:300;color:var(--green);display:block;margin-bottom:.3rem}
.stat-lbl{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--green-soft);font-weight:300}

/* ── BEGIN HERE SECTION ─────────────────────── */
/* Uses cta-band class but text = Site Green */
.begin-here{background:var(--yellow);padding:7rem 4rem;text-align:center;position:relative;overflow:hidden}
.begin-here::before{content:'CAMELIA';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:'Cormorant Garamond',serif;font-size:18vw;font-weight:300;color:rgba(27,50,45,.025);white-space:nowrap;pointer-events:none;letter-spacing:.1em}
.begin-here .section-title{color:var(--green);text-align:center}
.begin-here .section-body{color:var(--green-soft);margin:.8rem auto 2.5rem;text-align:center;max-width:480px}
.begin-here .eyebrow{justify-content:center}
.begin-here .eyebrow::before{display:none}

/* ── DESTINATION PAGES ──────────────────────── */
/* Dark intro — yellow bg, green text */
.dest-intro-yellow{background:var(--yellow);padding:5.5rem 4rem}
.dest-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.dest-intro-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3.2vw,3rem);font-weight:300;line-height:1.1;color:var(--green)}
.dest-intro-title em{font-style:italic;color:var(--green-soft)}
.dest-intro-body{font-size:1.05rem;line-height:1.9;color:var(--green-soft);font-weight:300}

/* Culture cards */
.culture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3.5rem}
.culture-card{padding:2.8rem;border:1px solid var(--border-y);background:var(--yellow);position:relative;overflow:hidden;transition:all .4s}
.culture-card:hover{box-shadow:0 20px 60px rgba(27,50,45,.1);transform:translateY(-4px)}
.culture-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--green),var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .5s}
.culture-card:hover::before{transform:scaleX(1)}
.culture-sym{font-size:2rem;margin-bottom:1.2rem;display:block;color:var(--green-soft)}
.culture-card h4{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:400;color:var(--green);margin-bottom:.8rem}
.culture-card p{font-size:.93rem;line-height:1.85;color:var(--green-soft);font-weight:300}

/* Gallery mosaic */
.gallery-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:410px;gap:4px;padding:0 4rem 6rem;background:var(--yellow)}
.gm-item{overflow:hidden;background:var(--border-y)}
.gm-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease}
.gm-item:hover img{transform:scale(1.06)}
.gm-wide{grid-column:span 2}.gm-tall{grid-row:span 2}

/* Day timeline */
.timeline-section{background:var(--yellow-mid);padding:6rem 4rem}
/* Stronger 2-line heading per brief */
.timeline-heading{margin-bottom:3.5rem}
.timeline-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2.2rem,3.5vw,3.2rem);font-weight:300;color:var(--green);line-height:1.1;margin-bottom:.4rem}
.timeline-h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.2rem,1.8vw,1.6rem);font-weight:300;font-style:italic;color:var(--green-soft)}
.timeline{position:relative;padding-left:2.5rem;margin-top:0}
.timeline::before{content:'';position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,var(--gold),rgba(201,169,110,.1))}
.tl-item{display:grid;grid-template-columns:90px 1fr;gap:2rem;margin-bottom:3rem;position:relative}
.tl-item::before{content:'';position:absolute;left:-2.5rem;top:.55rem;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--yellow-mid)}
.tl-time{font-size:.75rem;letter-spacing:.12em;color:var(--gold);font-weight:400;padding-top:.3rem}
.tl-title{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:400;color:var(--green);margin-bottom:.4rem}
.tl-body{font-size:.97rem;line-height:1.85;color:var(--green-soft);font-weight:300}

/* Country page CTA band — green text */
.cta-band-country{background:var(--yellow);padding:6rem 4rem;text-align:center;position:relative;overflow:hidden}
.cta-band-country::before{content:'CAMELIA';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:'Cormorant Garamond',serif;font-size:18vw;font-weight:300;color:rgba(27,50,45,.03);white-space:nowrap;pointer-events:none}
.cta-band-country .eyebrow{justify-content:center;margin-bottom:1rem}
.cta-band-country .eyebrow::before{display:none}
.cta-band-country h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3.2vw,3rem);font-weight:300;color:var(--green);text-align:center;margin-bottom:1rem}
.cta-band-country h2 em{font-style:italic}
.cta-band-country p{font-size:1.05rem;line-height:1.85;color:var(--green-soft);font-weight:300;margin:0 auto 2.5rem;max-width:480px;text-align:center}

/* ── ABOUT PAGE ─────────────────────────────── */
/* Scrolling text — green with hyphen separators */
.about-scroll-outer{overflow:hidden;padding:5rem 0;background:var(--yellow)}
.about-scroll-track{display:flex;width:max-content;animation:aScroll 28s linear infinite}
@keyframes aScroll{to{transform:translateX(-50%)}}
.about-scroll-item{font-family:'Cormorant Garamond',serif;font-size:clamp(1.4rem,2.5vw,2.2rem);font-weight:300;font-style:italic;color:var(--green);white-space:nowrap;padding:0 1.5rem;opacity:.35}
.about-scroll-item.hi{opacity:1;color:var(--green)}
.about-scroll-sep{font-size:1.2rem;color:var(--green);opacity:.3;white-space:nowrap;padding:0 .5rem;align-self:center}
.phil-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.phil-pillar{padding:3rem;border-top:2px solid var(--green);background:var(--yellow-mid)}
.phil-pillar-n{font-family:'Cormorant Garamond',serif;font-size:3rem;font-weight:300;color:var(--gold);display:block;margin-bottom:.8rem}
.phil-pillar-title{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:400;color:var(--green);margin-bottom:.8rem}
.phil-pillar-body{font-size:.93rem;line-height:1.85;color:var(--green-soft);font-weight:300}

/* ── TRAVEL LIFE PAGE ───────────────────────── */
.theme-block{display:grid;grid-template-columns:1fr 1fr;min-height:480px}
.theme-block:nth-child(even){direction:rtl}
.theme-block:nth-child(even)>*{direction:ltr}
.tb-img{background-size:cover;background-position:center;min-height:380px}
.tb-text{background:var(--yellow);padding:5rem;display:flex;flex-direction:column;justify-content:center}
.theme-block:nth-child(even) .tb-text{background:var(--yellow-mid)}
.tb-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.8rem,2.6vw,2.5rem);font-weight:300;line-height:1.15;color:var(--green);margin-bottom:1.4rem}
.tb-title em{font-style:italic}
.tb-body{font-size:1rem;line-height:1.9;color:var(--green-soft);font-weight:300}

/* ── WHY CAMELIA ─────────────────────────────── */
.why-cols{display:grid;grid-template-columns:1fr 1fr;gap:0}
.why-col{padding:4rem}
.why-col-dark{background:var(--green)}
.why-col-light{background:var(--yellow)}
.why-col-title{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:300;margin-bottom:2rem}
.why-col-dark .why-col-title{color:var(--yellow)}
.why-col-light .why-col-title{color:var(--green)}
.why-item{display:flex;gap:1rem;margin-bottom:1.4rem;padding-bottom:1.4rem;border-bottom:1px solid}
.why-col-dark .why-item{border-color:var(--border-g)}
.why-col-light .why-item{border-color:var(--border-y)}
.why-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.why-check{width:20px;height:20px;background:var(--gold);display:flex;align-items:center;justify-content:center;font-size:.6rem;color:var(--green);flex-shrink:0;margin-top:2px}
.why-x{width:20px;height:20px;background:var(--border-y);display:flex;align-items:center;justify-content:center;font-size:.6rem;color:var(--green-soft);flex-shrink:0;margin-top:2px}
.why-item-text{font-size:.95rem;line-height:1.7;font-weight:300}
.why-col-dark .why-item-text{color:rgba(255,246,229,.6)}
.why-col-light .why-item-text{color:var(--green-soft)}
.why-item-text strong{font-weight:400}
.why-col-dark .why-item-text strong{color:var(--yellow)}
.why-col-light .why-item-text strong{color:var(--green)}

/* ── CRAFTING PAGE ───────────────────────────── */
/* 5 stages — horizontal, no dead space */
.stage-list{display:flex;flex-direction:column;gap:0}
.stage-item{display:grid;grid-template-columns:120px 1fr 1fr;gap:3rem;align-items:start;padding:3.5rem 0;border-bottom:1px solid var(--border-y)}
.stage-item:last-child{border-bottom:none}
.stage-num{font-family:'Cormorant Garamond',serif;font-size:4rem;font-weight:300;color:rgba(27,50,45,.1);line-height:1;transition:color .4s}
.stage-item:hover .stage-num{color:var(--gold)}
.stage-meta{}
.stage-label{font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:300;margin-bottom:.5rem}
.stage-title{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:400;color:var(--green);margin-bottom:.6rem;line-height:1.15}
.stage-sub{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green-soft);font-weight:300}
.stage-desc{font-size:1rem;line-height:1.9;color:var(--green-soft);font-weight:300;padding-top:.3rem}

/* Deliverables grid — green borders + icons */
.deliver-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--border-y)}
.deliver-card{background:var(--yellow);padding:3rem;border:1px solid var(--green);transition:background .3s;position:relative;overflow:hidden}
.deliver-card:hover{background:var(--yellow-mid)}
.deliver-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--green),var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .45s}
.deliver-card:hover::before{transform:scaleX(1)}
.deliver-icon{font-size:1.8rem;margin-bottom:1.2rem;display:block;color:var(--green)}
.deliver-title{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:400;color:var(--green);margin-bottom:.7rem}
.deliver-body{font-size:.9rem;line-height:1.8;color:var(--green-soft);font-weight:300}

/* ── BLOG/LETTERS ────────────────────────────── */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.blog-card{background:var(--yellow);overflow:hidden;cursor:pointer;border:1px solid var(--border-y);transition:all .35s}
.blog-card:hover{transform:translateY(-6px);box-shadow:0 20px 60px rgba(27,50,45,.1);border-color:var(--green)}
.blog-img{height:230px;background-size:cover;background-position:center;overflow:hidden;position:relative}
.blog-body{padding:2rem}
.blog-tag{font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-weight:300;margin-bottom:.7rem}
.blog-title{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:400;color:var(--green);margin-bottom:.7rem;line-height:1.25}
.blog-excerpt{font-size:.9rem;line-height:1.75;color:var(--green-soft);font-weight:300;margin-bottom:1.1rem}
.blog-meta{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green-soft);font-weight:300}

/* ── FAQ ─────────────────────────────────────── */
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.faq-item{border-bottom:1px solid var(--border-y)}
.faq-q{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:400;color:var(--green);cursor:pointer;padding:1.4rem 0;display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:color .3s}
.faq-q:hover{color:var(--green-soft)}
.faq-q span{font-size:.8rem;color:var(--gold);transition:transform .3s;flex-shrink:0}
.faq-item.open .faq-q span{transform:rotate(45deg)}
.faq-a{font-size:.97rem;line-height:1.9;color:var(--green-soft);font-weight:300;max-height:0;overflow:hidden;transition:max-height .5s ease,padding .3s}
.faq-item.open .faq-a{max-height:300px;padding-bottom:1.5rem}

/* ── CONTACT PAGE ────────────────────────────── */
/* Hero = green bg, all text yellow */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start}
.form-field{margin-bottom:1.5rem}
.form-field label{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--green-soft);font-weight:400;display:block;margin-bottom:.5rem}
/* Yellow form borders on contact */
.contact-form .form-field input,.contact-form .form-field textarea,.contact-form .form-field select{
  width:100%;font-family:'Jost',sans-serif;font-size:1rem;font-weight:300;
  padding:.9rem 1.1rem;border:1px solid var(--green);background:var(--yellow);
  color:var(--green);outline:none;transition:border-color .3s,box-shadow .3s;
}
.contact-form .form-field input:focus,.contact-form .form-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,169,110,.1)}
.contact-form .form-field textarea{resize:vertical;min-height:120px}
.contact-info-item{display:flex;gap:1.2rem;margin-bottom:2.2rem;align-items:flex-start}
.contact-icon{width:40px;height:40px;background:var(--yellow-mid);border:1px solid var(--border-y);display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0;color:var(--green)}
.contact-label{font-size:.63rem;letter-spacing:.2em;text-transform:uppercase;color:var(--green-soft);margin-bottom:.25rem;font-weight:300}
.contact-val{font-size:1rem;color:var(--green);font-weight:300}

/* ── BOOKING PAGE ────────────────────────────── */
.booking-wrap{min-height:100vh;display:grid;grid-template-columns:400px 1fr;background:var(--yellow)}
.booking-left{background:var(--green);padding:7rem 3.5rem 4rem;display:flex;flex-direction:column;justify-content:space-between;position:sticky;top:0;height:100vh;overflow:hidden}
.booking-logo{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:var(--yellow);text-decoration:none;display:block;margin-bottom:4rem}
.booking-headline{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:300;line-height:1.1;color:var(--yellow);margin-bottom:1.5rem}
.booking-headline em{font-style:italic;color:var(--blush)}
.booking-desc{font-size:.97rem;line-height:1.85;color:rgba(255,246,229,.55);font-weight:300;margin-bottom:2.5rem}
.booking-facts{display:flex;flex-direction:column;gap:1rem}
.booking-fact{display:flex;align-items:center;gap:1rem;font-size:.9rem;color:rgba(255,246,229,.65);font-weight:300}
.booking-fact-icon{width:32px;height:32px;border:1px solid rgba(201,169,110,.35);display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--gold);flex-shrink:0}
.booking-foot{font-size:.62rem;letter-spacing:.1em;color:rgba(255,246,229,.2);font-weight:300}
/* Right panel — form shifted down */
.booking-right{padding:8rem 5rem 5rem;display:flex;flex-direction:column;justify-content:flex-start}
.booking-right .form-field label{color:var(--green-soft)}
.booking-right .form-field input,.booking-right .form-field textarea,.booking-right .form-field select{
  width:100%;font-family:'Jost',sans-serif;font-size:1rem;font-weight:300;
  padding:.9rem 1.1rem;border:1px solid var(--border-y);background:var(--yellow);
  color:var(--green);outline:none;transition:border-color .3s,box-shadow .3s;
}
.booking-right .form-field input:focus,.booking-right .form-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,169,110,.1)}
.booking-right .form-field textarea{resize:vertical;min-height:100px}

/* ── LEGAL ───────────────────────────────────── */
.legal-wrap{max-width:780px;margin:0 auto;padding:8rem 4rem 6rem}
.legal-wrap h1{font-family:'Cormorant Garamond',serif;font-size:3.2rem;font-weight:300;color:var(--green);margin-bottom:.4rem}
.legal-date{font-size:.78rem;color:var(--green-soft);margin-bottom:4rem;font-weight:300;letter-spacing:.1em}
.legal-wrap h2{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:400;color:var(--green);margin:2.5rem 0 .7rem}
.legal-wrap p{font-size:1rem;line-height:1.9;color:var(--green-soft);font-weight:300;margin-bottom:1.1rem}
.legal-wrap ul{margin:.5rem 0 1.2rem 1.5rem}
.legal-wrap li{font-size:1rem;line-height:1.9;color:var(--green-soft);font-weight:300;margin-bottom:.3rem}
.legal-hero{background:var(--green);padding:8rem 4rem 4rem}
.legal-hero h1{font-family:'Cormorant Garamond',serif;font-size:3.5rem;font-weight:300;color:var(--yellow)}
.legal-hero p{font-size:.85rem;color:rgba(255,246,229,.4);margin-top:.5rem;font-weight:300}

/* ── FOOTER ──────────────────────────────────── */
footer{background:var(--green);color:var(--yellow);padding:5rem 4rem 2.5rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:4rem;margin-bottom:3.5rem;border-bottom:1px solid var(--border-g);padding-bottom:3.5rem}
.footer-logo-txt{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:300;letter-spacing:.15em;color:var(--yellow);margin-bottom:1.1rem;display:block;text-decoration:none}
.footer-tagline{font-size:.88rem;line-height:1.8;color:rgba(255,246,229,.45);font-weight:300;max-width:250px}
.footer-col-title{font-size:.63rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-weight:300;margin-bottom:1.3rem}
.footer-col a,.footer-price{display:block;font-size:.82rem;color:rgba(255,246,229,.5);text-decoration:none;font-weight:300;margin-bottom:.65rem;cursor:pointer;transition:color .3s}
.footer-col a:hover{color:var(--gold)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;font-size:.63rem;color:rgba(255,246,229,.25);letter-spacing:.08em}
.footer-legal{display:flex;gap:2rem}
.footer-legal a{color:rgba(255,246,229,.25);text-decoration:none;transition:color .3s}
.footer-legal a:hover{color:var(--gold)}

/* ── RESPONSIVE ──────────────────────────────── */
@media(max-width:1100px){
  nav{padding:1.4rem 2.5rem}
  nav.scrolled{padding:.9rem 2.5rem}
  nav.nav-solid{padding:1rem 2.5rem}
  .nav-links{display:none}
  .hamburger{display:flex}
  section{padding:5rem 2.5rem}
  .gallery-mosaic{padding:0 2.5rem 5rem}
  .dest-grid{grid-template-columns:1fr 1fr}
  .dest-tile{height:380px}
  .themes-grid{grid-template-columns:1fr 1fr}
  .process-row{grid-template-columns:1fr 1fr}
  .stats-band{grid-template-columns:repeat(2,1fr)}
  .philosophy-split{grid-template-columns:1fr}
  .phil-text{padding:5rem 2.5rem}
  .phil-3col{grid-template-columns:1fr}
  .dest-intro-grid{grid-template-columns:1fr;gap:2.5rem}
  .theme-block{grid-template-columns:1fr}
  .theme-block:nth-child(even){direction:ltr}
  .tb-text{padding:4rem 2.5rem}
  .why-cols{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:1fr}
  .blog-grid{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
  .culture-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-bottom{flex-direction:column;gap:1rem;text-align:center}
  .stage-item{grid-template-columns:80px 1fr;gap:2rem}
  .stage-desc{grid-column:2}
  .deliver-grid{grid-template-columns:1fr 1fr}
  .booking-wrap{grid-template-columns:1fr}
  .booking-left{position:static;height:auto}
  .booking-right{padding:4rem 2.5rem}
}
@media(max-width:700px){
  .hero-content{padding:0 2rem 5rem}
  .hero h1{font-size:2.8rem}
  .hero-sub{font-size:1rem}
  .dest-grid{grid-template-columns:1fr}
  .themes-grid{grid-template-columns:1fr}
  .process-row{grid-template-columns:1fr}
  .stats-band{grid-template-columns:1fr 1fr}
  .blog-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .gallery-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:160px;padding:0 1rem 4rem}
  .gm-wide{grid-column:span 1}.gm-tall{grid-row:span 1}
  .deliver-grid{grid-template-columns:1fr}
  .phil-3col{grid-template-columns:1fr}
  .stage-item{grid-template-columns:1fr}
  .stage-num{font-size:2.5rem}
  section{padding:4rem 1.5rem}
}

/* responsive 2-col grid */
.responsive-grid{display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:start}
@media(max-width:1100px){.responsive-grid{grid-template-columns:1fr;gap:3rem}}

/* ensure dest-tile is a block link */
a.dest-tile{display:block;text-decoration:none}

/* cta-band — override for green bg pages text */
.cta-band .section-title{color:var(--yellow)}
.cta-band .section-body{color:rgba(255,246,229,.6)}

/* ══ Mobile menu & nav fixes ══════════════════════════════ */
@media(max-width:1100px){
  .nav-cta-btn{display:none!important}
}
@media(max-width:800px){
  .mob-menu a{font-size:.8rem;padding:.55rem 1.5rem}
  .mob-menu{overflow-y:auto;max-height:100vh}
}

/* ══ Timeline mobile fix ═══════════════════════════════════ */
@media(max-width:700px){
  .timeline::before{display:none}
  .tl-item::before{display:none}
  .tl-item{
    display:block;padding:1.2rem 0;
    border-bottom:1px solid var(--border-y);
    padding-left:0;
  }
  .tl-time{
    font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;
    color:var(--gold);margin-bottom:.4rem;display:block;
  }
  .tl-title{margin-top:.2rem}
}

/* ══ Testimonials grid mobile ══════════════════════════════ */
@media(max-width:900px){
  .testimonials-section > div:last-child{grid-template-columns:1fr!important}
}
