/* ================================================================
   AWAY FROM HOME ADVENTURES v2.0
   Palette extracted from logo: Forest Green · Gold · Cream
   Elementor-compatible · Fully Responsive
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Jost:wght@300;400;500;600&display=swap');

/* ── DESIGN TOKENS ─────────────────────────────────────────────── */
:root {
  /* Logo palette */
  --green:       #2C3C1A;   /* Dark forest green — primary */
  --green-lt:    #3D5228;   /* Lighter forest green */
  --green-dk:    #1A2410;   /* Very dark green — headings */
  --gold:        #C8A86A;   /* Golden accent — from "ADVENTURES" text */
  --gold-lt:     #D8BB8A;   /* Light gold */
  --gold-pale:   #F0E4C8;   /* Pale gold — tints & backgrounds */
  --cream:       #F5EDE2;   /* Warm cream background */
  --sand:        #E8D5B0;   /* Sandy beige — cards */
  --white:       #FFFFFF;
  --charcoal:    #1A2410;
  --mid:         #4A5240;
  --muted:       #7A8270;
  --border:      rgba(44,60,26,0.14);

  /* Astra global colour overrides */
  --ast-global-color-0: #2C3C1A;
  --ast-global-color-1: #C8A86A;
  --ast-global-color-2: #1A2410;
  --ast-global-color-3: #1A2410;
  --ast-global-color-4: rgba(44,60,26,0.14);
  --ast-global-color-5: #2C3C1A;
  --ast-global-color-6: #F5EDE2;
  --ast-global-color-7: #1A2410;

  /* Elementor-compatible custom properties */
  --e-global-color-primary:   #2C3C1A;
  --e-global-color-secondary: #C8A86A;
  --e-global-color-text:      #1A2410;
  --e-global-color-accent:    #3D5228;

  /* Spacing & shape */
  --radius:    6px;
  --radius-lg: 12px;
  --shadow:    0 4px 30px rgba(26,36,16,0.08);
  --shadow-hv: 0 14px 44px rgba(26,36,16,0.16);
  --trans:     0.25s ease;
}

/* ── BASE ──────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Jost', sans-serif;
  font-weight: 400;
  color: var(--charcoal);
  background: var(--white);
  line-height: 1.75;
}
h1, h2, h3, h4, h5 {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  line-height: 1.15;
  color: var(--green-dk);
}
em { font-style: italic; color: var(--gold); }
a { color: var(--green); transition: color var(--trans); }
a:hover { color: var(--gold); }
img { max-width: 100%; height: auto; display: block; }
p { line-height: 1.8; }

/* ── ASTRA OVERRIDES ────────────────────────────────────────────── */
.main-header-bar { background: var(--white) !important; border-bottom: 1px solid var(--border); box-shadow: 0 2px 24px rgba(26,36,16,0.06); }
.site-title a { color: var(--green-dk) !important; font-family: 'Cormorant Garamond', serif; font-size: 1.5rem; }
.site-description { color: var(--gold) !important; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; }

.main-navigation .main-header-menu > .menu-item > .menu-link,
.main-navigation .main-header-menu > .menu-item > a {
  font-family: 'Jost', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--green) !important;
  padding: 0 13px !important;
}
.main-navigation .main-header-menu > .menu-item > .menu-link:hover,
.main-navigation .main-header-menu > .menu-item.current-menu-item > .menu-link { color: var(--gold) !important; }
.main-navigation .sub-menu { background: var(--white) !important; border-top: 2px solid var(--gold) !important; border-radius: 0 0 8px 8px; box-shadow: var(--shadow); }
.main-navigation .sub-menu .menu-item a { font-size: 13px !important; color: var(--mid) !important; padding: 9px 20px !important; }
.main-navigation .sub-menu .menu-item a:hover { color: var(--green) !important; background: var(--gold-pale) !important; }

/* Buttons */
.ast-btn, .button, .wp-block-button__link,
input[type="submit"], button[type="submit"], .afha-btn {
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
  padding: 13px 26px !important;
  cursor: pointer;
  transition: all var(--trans) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px;
}
.ast-btn, .afha-btn-primary, .wp-block-button__link {
  background: var(--green) !important; color: var(--white) !important; border: none !important;
}
.ast-btn:hover, .afha-btn-primary:hover, .wp-block-button__link:hover {
  background: var(--green-lt) !important; color: var(--white) !important;
  transform: translateY(-2px); box-shadow: 0 8px 24px rgba(44,60,26,0.3) !important;
}
.afha-btn-gold { background: var(--gold) !important; color: var(--green-dk) !important; border: none !important; font-weight: 700 !important; }
.afha-btn-gold:hover { background: var(--gold-lt) !important; transform: translateY(-2px); box-shadow: 0 8px 24px rgba(200,168,106,0.4) !important; }
.afha-btn-outline { background: transparent !important; border: 1.5px solid var(--green) !important; color: var(--green) !important; }
.afha-btn-outline:hover { background: var(--green) !important; color: var(--white) !important; }
.afha-btn-outline-white { background: transparent !important; border: 1.5px solid rgba(255,255,255,0.6) !important; color: var(--white) !important; }
.afha-btn-outline-white:hover { background: rgba(255,255,255,0.15) !important; border-color: var(--white) !important; }
.afha-btn-white { background: var(--white) !important; color: var(--green-dk) !important; border: none !important; }
.afha-btn-white:hover { background: var(--cream) !important; transform: translateY(-2px); }

/* ── LAYOUT ─────────────────────────────────────────────────────── */
.afha-container { max-width: 1280px; margin: 0 auto; padding: 0 2rem; }
.afha-section { padding: 90px 0; }
.afha-section-sm { padding: 55px 0; }
.afha-section-cream { background: var(--cream); }
.afha-section-white { background: var(--white); }
.afha-section-green { background: var(--green-dk); }
.afha-section-sand  { background: var(--sand); }
.afha-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.afha-grid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; }
.afha-grid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 24px; }
.afha-pkg-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(310px,1fr)); gap: 28px; }
.afha-btn-row { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; }

/* ── TYPOGRAPHY HELPERS ─────────────────────────────────────────── */
.afha-eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 10.5px; font-weight: 700; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--gold); margin-bottom: .75rem;
}
.afha-eyebrow::before { content:''; display:block; width:28px; height:1px; background:var(--gold); }
.afha-eyebrow.center { justify-content:center; }
.afha-eyebrow.center::before { display:none; }
.afha-eyebrow.light { color: var(--gold-lt); }
.afha-eyebrow.light::before { background: var(--gold-lt); }
.afha-section-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.9rem, 3.5vw, 3rem);
  font-weight: 300; color: var(--green-dk); margin-bottom: 1rem; line-height: 1.12;
}
.afha-section-title.white { color: var(--white); }
.afha-section-title.white em { color: var(--gold-lt); }
.afha-section-sub { font-size: 15px; color: var(--mid); max-width: 560px; line-height: 1.85; }
.afha-section-sub.white { color: rgba(255,255,255,0.75); }

/* ── HERO ───────────────────────────────────────────────────────── */
.afha-hero {
  position: relative; min-height: 92vh;
  display: flex; align-items: center; overflow: hidden; background: var(--green-dk);
}
.afha-page-hero {
  position: relative; min-height: 500px;
  display: flex; align-items: center; overflow: hidden; background: var(--green-dk);
}
.afha-hero-bg, .afha-page-hero-bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transform: scale(1.04); transition: transform 12s ease;
}
.afha-hero:hover .afha-hero-bg,
.afha-page-hero:hover .afha-page-hero-bg { transform: scale(1.08); }
.afha-hero-overlay, .afha-page-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(110deg, rgba(26,36,16,0.82) 0%, rgba(26,36,16,0.35) 60%, rgba(26,36,16,0.15) 100%);
}
.afha-hero-content, .afha-page-hero-content {
  position: relative; z-index: 2;
  max-width: 1280px; margin: 0 auto;
  padding: 100px 2rem 80px; width: 100%;
}
.afha-hero-content h1, .afha-page-hero-content h1 {
  font-size: clamp(2.6rem, 5.5vw, 5.2rem);
  font-weight: 300; color: var(--white);
  max-width: 720px; margin-bottom: 1.2rem; margin-top: .5rem;
}
.afha-hero-sub {
  font-size: 16px; font-weight: 300;
  color: rgba(255,255,255,0.82); max-width: 520px;
  line-height: 1.85; margin-bottom: 2.5rem;
}
.afha-hero-scroll {
  position: absolute; bottom: 32px; left: 50%; transform: translateX(-50%);
  z-index: 3; color: rgba(255,255,255,0.5); font-size: 11px;
  letter-spacing: 0.16em; text-transform: uppercase;
  display: flex; flex-direction: column; align-items: center; gap: 8px;
}
.afha-hero-scroll .arrow { width: 1px; height: 40px; background: rgba(255,255,255,0.3); animation: scrollPulse 1.8s ease infinite; }
@keyframes scrollPulse { 0%,100%{opacity:.3;transform:scaleY(.6)} 50%{opacity:1;transform:scaleY(1)} }
.afha-hero-badge {
  position: absolute; bottom: 40px; right: 40px; z-index: 3;
  background: rgba(255,255,255,0.08); border: 1px solid rgba(200,168,106,0.4);
  backdrop-filter: blur(8px); border-radius: 10px;
  padding: 16px 20px; display: flex; flex-direction: column; gap: 12px;
}
.afha-hero-stat { text-align: center; }
.afha-hero-stat .num { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:300; color:var(--gold-lt); line-height:1; }
.afha-hero-stat .lbl { font-size:9px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:rgba(255,255,255,0.5); margin-top:3px; }

/* ── STATS BAR ──────────────────────────────────────────────────── */
.afha-stats-bar { background: var(--green); padding: 30px 0; }
.afha-stats-inner { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; text-align:center; max-width:1280px; margin:0 auto; padding:0 2rem; }
.afha-stat-num { font-family:'Cormorant Garamond',serif; font-size:2.6rem; font-weight:300; color:var(--gold-lt); line-height:1; }
.afha-stat-lbl { font-size:9.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,0.65); margin-top:5px; }

/* ── DESTINATION GRID ───────────────────────────────────────────── */
.afha-dest-grid { display:grid; grid-template-columns:repeat(3,1fr); grid-template-rows:300px 300px; gap:14px; }
.afha-dest-card { position:relative; overflow:hidden; border-radius:var(--radius-lg); display:block; }
.afha-dest-card:first-child { grid-row:1/3; }
.afha-dest-img { width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.afha-dest-card:hover .afha-dest-img { transform:scale(1.07); }
.afha-dest-overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(26,36,16,.82) 0%,transparent 55%); }
.afha-dest-body { position:absolute; bottom:0; left:0; right:0; padding:22px; }
.afha-dest-tag { font-size:9.5px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--gold-lt); margin-bottom:5px; }
.afha-dest-title { font-family:'Cormorant Garamond',serif; font-size:1.45rem; font-weight:400; color:var(--white); line-height:1.2; }
.afha-dest-card:first-child .afha-dest-title { font-size:2rem; }

/* ── PACKAGE CARDS ──────────────────────────────────────────────── */
.afha-pkg-card {
  background:var(--white); border:1px solid var(--border); border-radius:var(--radius-lg);
  overflow:hidden; transition:box-shadow var(--trans),transform var(--trans);
  display:flex; flex-direction:column;
}
.afha-pkg-card:hover { box-shadow:var(--shadow-hv); transform:translateY(-6px); }
.afha-pkg-img-wrap { position:relative; overflow:hidden; flex-shrink:0; }
.afha-pkg-img { width:100%; height:230px; object-fit:cover; transition:transform .6s ease; }
.afha-pkg-card:hover .afha-pkg-img { transform:scale(1.06); }
.afha-pkg-badge {
  position:absolute; top:16px; left:16px;
  background:var(--gold); color:var(--green-dk);
  font-size:9.5px; font-weight:800; letter-spacing:.12em; text-transform:uppercase;
  padding:4px 10px; border-radius:3px;
}
.afha-pkg-body { padding:26px; flex:1; display:flex; flex-direction:column; }
.afha-pkg-title { font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:600; color:var(--green-dk); margin-bottom:10px; line-height:1.25; }
.afha-pkg-desc { font-size:13.5px; color:var(--muted); line-height:1.75; margin-bottom:16px; flex:1; }
.afha-pkg-includes { list-style:none; padding:0; margin:0 0 18px; display:flex; flex-direction:column; gap:6px; }
.afha-pkg-includes li { font-size:12.5px; color:var(--mid); display:flex; gap:8px; align-items:flex-start; }
.afha-pkg-includes li::before { content:'✓'; color:var(--gold); font-weight:800; flex-shrink:0; }
.afha-pkg-footer { border-top:1px solid var(--border); padding-top:16px; margin-top:auto; }
.afha-pkg-meta { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; flex-wrap:wrap; gap:8px; }
.afha-pkg-days { font-size:12px; font-weight:600; color:var(--mid); }
.afha-pkg-price { font-size:13px; color:var(--muted); }
.afha-pkg-price strong { font-family:'Cormorant Garamond',serif; font-size:1.6rem; color:var(--green); font-weight:400; }

/* ── ITINERARY DAY CARDS ────────────────────────────────────────── */
.afha-itin { max-width:900px; margin:0 auto; }
.afha-itin-day {
  display:grid; grid-template-columns:80px 1fr; gap:0;
  margin-bottom:0; border-left:2px solid var(--border);
  margin-left:36px; position:relative;
}
.afha-itin-day::before {
  content:attr(data-day); position:absolute; left:-44px; top:0;
  width:44px; height:44px; border-radius:50%;
  background:var(--green); color:var(--white);
  font-size:10px; font-weight:700; letter-spacing:.06em;
  display:flex; align-items:center; justify-content:center;
  text-transform:uppercase; flex-direction:column; line-height:1.2;
  border:3px solid var(--white); box-shadow:0 0 0 2px var(--green);
}
.afha-itin-body { padding:0 0 36px 28px; }
.afha-itin-body h3 { font-family:'Cormorant Garamond',serif; font-size:1.25rem; font-weight:600; color:var(--green-dk); margin-bottom:.5rem; }
.afha-itin-body p { font-size:14px; color:var(--mid); line-height:1.8; margin:0; }
.afha-itin-body .afha-itin-highlights { margin-top:10px; display:flex; flex-wrap:wrap; gap:6px; }
.afha-itin-highlight {
  font-size:11px; font-weight:600; letter-spacing:.06em;
  background:var(--gold-pale); color:var(--green);
  padding:3px 10px; border-radius:20px;
}
.afha-itin-meals { font-size:11.5px; color:var(--muted); margin-top:8px; }
.afha-itin-meals span { font-weight:600; color:var(--green-lt); }

/* ── FEATURES ───────────────────────────────────────────────────── */
.afha-features { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:28px; }
.afha-feature { display:flex; gap:16px; align-items:flex-start; }
.afha-feature-icon { width:50px; height:50px; border-radius:10px; background:var(--gold-pale); display:flex; align-items:center; justify-content:center; font-size:1.3rem; flex-shrink:0; }
.afha-feature-icon.green { background:rgba(44,60,26,.18); }
.afha-feature h4 { font-family:'Jost',sans-serif; font-size:13.5px; font-weight:700; color:var(--green-dk); margin-bottom:4px; }
.afha-feature p { font-size:13px; color:var(--muted); line-height:1.7; }
.afha-feature-dark h4 { color:var(--white); }
.afha-feature-dark p { color:rgba(255,255,255,.6); }

/* ── TESTIMONIALS ───────────────────────────────────────────────── */
.afha-testi-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:24px; }
.afha-testi { background:var(--white); border:1px solid var(--border); border-radius:var(--radius-lg); padding:32px; box-shadow:var(--shadow); }
.afha-testi-stars { color:var(--gold); font-size:14px; letter-spacing:3px; margin-bottom:14px; }
.afha-testi-quote { font-family:'Cormorant Garamond',serif; font-size:1.08rem; font-style:italic; color:var(--green); line-height:1.75; margin-bottom:20px; }
.afha-testi-author { display:flex; align-items:center; gap:12px; }
.afha-testi-avatar { width:44px; height:44px; border-radius:50%; background:var(--gold-pale); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:13px; color:var(--green); flex-shrink:0; }
.afha-testi-name { font-size:13px; font-weight:700; color:var(--charcoal); }
.afha-testi-trip { font-size:11.5px; color:var(--muted); }

/* ── FAQ ────────────────────────────────────────────────────────── */
.afha-faq-list { max-width:820px; }
.afha-faq-item { border-bottom:1px solid var(--border); }
.afha-faq-q { display:flex; justify-content:space-between; align-items:center; padding:18px 0; cursor:pointer; font-size:15px; font-weight:600; color:var(--green-dk); user-select:none; gap:16px; }
.afha-faq-q .icon { font-size:18px; color:var(--gold); transition:transform .3s; flex-shrink:0; }
.afha-faq-item.open .afha-faq-q .icon { transform:rotate(45deg); }
.afha-faq-a { max-height:0; overflow:hidden; transition:max-height .4s ease,padding .3s; font-size:14px; color:var(--mid); line-height:1.85; }
.afha-faq-item.open .afha-faq-a { max-height:320px; padding-bottom:20px; }

/* ── CTA BAND ───────────────────────────────────────────────────── */
.afha-cta-band {
  background:var(--green-dk); padding:90px 0; text-align:center; position:relative; overflow:hidden;
}
.afha-cta-band::before {
  content:''; position:absolute; inset:0;
  background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23C8A86A' fill-opacity='0.04'%3E%3Ccircle cx='30' cy='30' r='4'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* ── INFO BOX ───────────────────────────────────────────────────── */
.afha-info-box { background:var(--gold-pale); border-left:3px solid var(--gold); border-radius:0 var(--radius) var(--radius) 0; padding:16px 20px; margin:20px 0; font-size:14px; color:var(--green); line-height:1.75; }

/* ── TABLES ─────────────────────────────────────────────────────── */
.afha-table { width:100%; border-collapse:collapse; font-size:14px; border-radius:var(--radius-lg); overflow:hidden; }
.afha-table th { background:var(--green); color:var(--white); padding:12px 16px; font-family:'Jost',sans-serif; font-weight:700; font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; text-align:left; }
.afha-table td { padding:12px 16px; border-bottom:1px solid var(--border); color:var(--mid); }
.afha-table tr:last-child td { border-bottom:none; }
.afha-table tr:hover td { background:var(--gold-pale); }

/* ── FORMS ──────────────────────────────────────────────────────── */
.afha-form-wrap { background:var(--cream); border:1px solid var(--border); border-radius:var(--radius-lg); padding:40px; }
.afha-form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.wpcf7-form input[type="text"],.wpcf7-form input[type="email"],.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],.wpcf7-form select,.wpcf7-form textarea,
.afha-form-group input,.afha-form-group select,.afha-form-group textarea {
  width:100%; padding:12px 16px; border:1px solid var(--border) !important;
  border-radius:4px !important; font-family:'Jost',sans-serif; font-size:14px;
  color:var(--charcoal); background:var(--white); outline:none; transition:border-color var(--trans);
}
.wpcf7-form input:focus,.wpcf7-form select:focus,.wpcf7-form textarea:focus,
.afha-form-group input:focus { border-color:var(--green) !important; }
.wpcf7-form textarea,.afha-form-group textarea { height:120px; resize:vertical; }
.wpcf7-form input[type="submit"] { background:var(--green) !important; color:var(--white) !important; border:none !important; width:100%; padding:14px !important; font-weight:700 !important; font-size:11px !important; letter-spacing:.12em !important; text-transform:uppercase !important; }
.wpcf7-form input[type="submit"]:hover { background:var(--green-lt) !important; transform:translateY(-2px); }

/* ── EXPERIENCE CARDS ───────────────────────────────────────────── */
.afha-exp-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); gap:16px; }
.afha-exp-card { text-align:center; padding:30px 18px; border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--white); transition:box-shadow var(--trans),border-color var(--trans),transform var(--trans); }
.afha-exp-card:hover { box-shadow:var(--shadow-hv); border-color:var(--gold); transform:translateY(-4px); }
.afha-exp-emoji { font-size:2rem; display:block; margin-bottom:10px; }
.afha-exp-title { font-family:'Cormorant Garamond',serif; font-size:1.05rem; font-weight:600; color:var(--green-dk); margin-bottom:6px; }
.afha-exp-desc { font-size:12.5px; color:var(--muted); line-height:1.65; }

/* ── PAYMENT BUTTON ─────────────────────────────────────────────── */
.afha-pay-btn { display:inline-flex; align-items:center; gap:10px; background:var(--green); color:var(--white) !important; border:none; padding:15px 30px; border-radius:4px; font-family:'Jost',sans-serif; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; transition:all var(--trans); text-decoration:none !important; }
.afha-pay-btn:hover { background:var(--green-lt); transform:translateY(-2px); box-shadow:0 8px 24px rgba(44,60,26,.35); }

/* ── BLOG GRID ──────────────────────────────────────────────────── */
.afha-blog-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:28px; }
.afha-blog-card { background:var(--white); border:1px solid var(--border); border-radius:var(--radius-lg); overflow:hidden; transition:box-shadow var(--trans),transform var(--trans); }
.afha-blog-card:hover { box-shadow:var(--shadow-hv); transform:translateY(-4px); }
.afha-blog-img { width:100%; height:200px; object-fit:cover; }
.afha-blog-body { padding:24px; }
.afha-blog-cat { font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); display:block; margin-bottom:8px; }
.afha-blog-title { font-family:'Cormorant Garamond',serif; font-size:1.2rem; font-weight:600; color:var(--green-dk); line-height:1.3; margin-bottom:10px; }
.afha-blog-title a { color:var(--green-dk); } .afha-blog-title a:hover { color:var(--gold); }
.afha-blog-excerpt { font-size:13px; color:var(--muted); line-height:1.7; margin-bottom:14px; }
.afha-read-more { font-size:11.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--green); }

/* ── FOOTER ─────────────────────────────────────────────────────── */
.afha-footer { background:var(--green-dk); padding:80px 0 0; color:rgba(255,255,255,.65); }
.afha-footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1.4fr; gap:50px; margin-bottom:55px; }
.afha-footer h4 { font-family:'Jost',sans-serif; font-size:10.5px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--white); margin-bottom:18px; }
.afha-footer ul { list-style:none; padding:0; }
.afha-footer ul li { margin-bottom:9px; }
.afha-footer ul li a { font-size:13.5px; color:rgba(255,255,255,.55); } .afha-footer ul li a:hover { color:var(--gold-lt); }
.afha-footer-about p { font-size:13.5px; line-height:1.8; max-width:280px; }
.afha-footer-social { display:flex; gap:10px; margin-top:20px; }
.afha-footer-social a { width:36px; height:36px; border:1px solid rgba(255,255,255,.15); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:13px; color:rgba(255,255,255,.5); transition:all var(--trans); }
.afha-footer-social a:hover { background:var(--gold); color:var(--green-dk); border-color:var(--gold); }
.afha-footer-bottom { border-top:1px solid rgba(255,255,255,.08); padding:20px 0; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; font-size:12px; color:rgba(255,255,255,.35); }
.afha-footer-bottom a { color:rgba(255,255,255,.35); } .afha-footer-bottom a:hover { color:var(--gold-lt); }

/* ── SCROLL REVEAL ──────────────────────────────────────────────── */
.afha-reveal { opacity:0; transform:translateY(28px); transition:opacity .7s ease,transform .7s ease; }
.afha-reveal.visible { opacity:1; transform:translateY(0); }

/* ── WooCommerce ────────────────────────────────────────────────── */
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button { background:var(--green) !important; color:var(--white) !important; }
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover { background:var(--green-lt) !important; }
.woocommerce .star-rating span::before,.woocommerce .star-rating::before { color:var(--gold); }

/* ── WordPress Blocks ───────────────────────────────────────────── */
.wp-block-quote { border-left:3px solid var(--gold); padding-left:1.5rem; font-family:'Cormorant Garamond',serif; font-style:italic; color:var(--green); }
.entry-content ul li::marker { color:var(--gold); }
.entry-content a { color:var(--green); } .entry-content a:hover { color:var(--gold); }
.is-style-outline .wp-block-button__link { border-color:var(--green) !important; color:var(--green) !important; background:transparent !important; }
.is-style-outline .wp-block-button__link:hover { background:var(--green) !important; color:var(--white) !important; }

/* ── ANIMATIONS ─────────────────────────────────────────────────── */
@keyframes fadeUp { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }
.afha-anim { animation:fadeUp .9s ease both; }
.afha-anim-1{animation-delay:.1s} .afha-anim-2{animation-delay:.22s} .afha-anim-3{animation-delay:.36s}

/* ── RESPONSIVE ─────────────────────────────────────────────────── */
@media (max-width:1024px) {
  .afha-grid-4 { grid-template-columns:repeat(2,1fr); }
  .afha-footer-grid { grid-template-columns:1fr 1fr; }
  .afha-footer-grid>div:first-child { grid-column:1/-1; }
  .afha-hero-badge { display:none; }
}
@media (max-width:900px) {
  .afha-grid-2 { grid-template-columns:1fr; gap:40px; }
  .afha-grid-3 { grid-template-columns:repeat(2,1fr); }
  .afha-dest-grid { grid-template-columns:1fr 1fr; grid-template-rows:auto; }
  .afha-dest-card:first-child { grid-row:auto; grid-column:1/3; }
  .afha-stats-inner { grid-template-columns:repeat(2,1fr); }
  .afha-itin-day::before { width:36px; height:36px; left:-38px; font-size:9px; }
  .afha-itin-day { margin-left:28px; }
}
@media (max-width:640px) {
  .afha-section { padding:60px 0; }
  .afha-grid-3,.afha-grid-4 { grid-template-columns:1fr; }
  .afha-dest-grid { grid-template-columns:1fr; }
  .afha-dest-card:first-child { grid-column:auto; }
  .afha-footer-grid { grid-template-columns:1fr; }
  .afha-form-row { grid-template-columns:1fr; }
  .afha-hero-content,.afha-page-hero-content { padding:80px 1.2rem 60px; }
}

/* ── Elementor widget overrides ─────────────────────────────────── */
.elementor-widget-heading .elementor-heading-title { font-family:'Cormorant Garamond',serif !important; }
.elementor-button { font-family:'Jost',sans-serif !important; font-weight:700 !important; letter-spacing:.1em !important; text-transform:uppercase !important; }
.e-con,.elementor-section { position:relative; }
