/* The "Andaman Almanac" band + the hero-parity layer below need Newsreader
   (display serif) and Spline Sans Mono (numbered kickers). Loading them as a
   CSS @import here — rather than a separate enqueued css2 <link> — survives
   LiteSpeed's Google-Fonts merge (which pruned the standalone handles). Must be
   the first statement in the file (CSS @import precedes all rules). */
@import url("https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,400;1,6..72,500;1,6..72,600&family=Spline+Sans+Mono:wght@400;500;600&display=swap");
/* Poppins (UI) + JetBrains Mono (data labels) for the band's alm-trf transfer
   teaser — the same faces /khao-lak-transfer/ and _proto/transfer-modern load,
   so the homepage miniature reads as the real transfer page. Same @import
   mechanism as above (standalone enqueued css2 handles get pruned). */
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=JetBrains+Mono:wght@400;500&display=swap");

/* =====================================================================
   KLLD-HOME-2026-v2  —  "Emerald Daybreak" home reskin (Elementor page 71)
   Scoped, additive, reversible. Sentinel-wrapped.

   WHAT THIS IS
   ------------
   A LIGHT, photo-forward editorial reskin of the live Elementor home that
   speaks the exact same language as the shipped single-tour skin
   (KLLD-TOURS-LIVE-v2 "Emerald Daybreak"):
     · white / near-white paper, dark-grey ink (#272b29 heads / #3a3f3d body)
     · brand green #099024 + sun gold #ffcc00 (NO deprecated #0b7016)
     · Fraunces display (gold-italic emphasis) + Hanken Grotesk body
     · hairline rules, soft alternating white/off-white bands, photo scrims
     · "seamless": no jarring colour blocks — section seams are hairlines +
       gentle off-white wash, sections flow into one another.

   SCOPE  — all three WPML home variants (EN 71 / DE 15873 / FR 17254) +
   body.home as a safety net. The accompanying enqueue (klld_enqueue_home_2026
   in functions.php) loads Fraunces + Hanken on the front page in every
   language, so these rules land identically on /de/ and /fr/.

   HARD RULES HONOURED
   -------------------
   - Scoped to the home only — never leaks site-wide.
   - Brand green #099024, accent #ffcc00, ฿ leads prices. No #0b7016.
   - PURELY visual + additive. Touches no Elementor data, no links/CTAs,
     no booking contract / search submit, no WPML strings.
   - Honors prefers-reduced-motion.
   - Reversible: dequeue klld-home-2026 to revert 100%.

   The TASK 2 search-form restyle lives in §7 below (sentinel KLLD-SEARCHFORM-v1)
   and is scoped to the home hero's banner search widget only.
   ===================================================================== */

/* ---- KLLD-HOME-2026-v2 :: BEGIN -------------------------------------- */

body.page-id-71,
body.page-id-15873,
body.page-id-17254,
body.home{
  --kh-green:#099024;          /* brand green — living accent */
  --kh-green-deep:#067a1d;     /* pressed/deep green */
  --kh-green-lo:#12b836;       /* lifted green (sparing) */
  --kh-green-soft:#dff0e2;     /* green wash */
  --kh-sun:#ffcc00;            /* sun yellow */
  --kh-gold:#c79100;           /* legible gold for serif emphasis on white */
  --kh-ink:#272b29;            /* deepest dark-grey heading ink */
  --kh-ink2:#3a3f3d;           /* body dark-grey */
  --kh-soft:#54605a;           /* muted grey text */
  --kh-faint:#828c87;          /* dim grey micro-label */
  --kh-paper:#ffffff;          /* pure white */
  --kh-paper2:#fbfbf9;         /* near-white raised */
  --kh-cream:#f6f6f2;          /* faint warm off-white band */
  --kh-cream2:#eef0eb;         /* second off-white */
  --kh-line:rgba(39,43,41,.12);
  --kh-line-g:rgba(9,144,36,.20);
  --kh-line-soft:rgba(39,43,41,.07);
  --kh-shadow:0 30px 60px -42px rgba(28,46,32,.30);
  --kh-shadow-lo:0 18px 38px -30px rgba(28,46,32,.26);
  --kh-disp:"Fraunces",Georgia,serif;
  --kh-body:"Hanken Grotesk",system-ui,-apple-system,sans-serif;
}

/* alias the three home IDs so every rule below can be written once.
   (we repeat the selector list via a custom shorthand: each block lists the
   three ids + body.home). For brevity the file groups selectors per concern. */

body.page-id-71 ::selection,
body.page-id-15873 ::selection,
body.page-id-17254 ::selection{background:var(--kh-green);color:#fff}

/* ----------------------------------------------------------------------
   0. SEAMLESS PAGE FLOW
   Give the post-hero content stack a continuous warm-white field and let
   each Elementor section seam read as a hairline + gentle wash instead of a
   hard colour break. We deliberately do NOT recolour any section that lives
   in Elementor data; we only soften the *seams* and unify the paper.
   ---------------------------------------------------------------------- */

/* The two tour funnels + blog sit on default white. Wrap them in a faint
   warm paper so the whole editorial mid-page reads as one continuous sheet. */
body.page-id-71 .elementor-element-eee0e02,
body.page-id-15873 .elementor-element-eee0e02,
body.page-id-17254 .elementor-element-eee0e02{
  background:var(--kh-paper);
  position:relative;
  padding-top:clamp(40px,6vw,76px);
}
/* hairline seam over the first tour band (under the funnel) */
body.page-id-71 .elementor-element-eee0e02::before,
body.page-id-15873 .elementor-element-eee0e02::before,
body.page-id-17254 .elementor-element-eee0e02::before{
  content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);
  width:min(1100px,86%);height:1px;
  background:linear-gradient(90deg,transparent,var(--kh-line) 14%,var(--kh-line) 86%,transparent);
}

/* "Trips from Khao Lak" band — soften to a warm off-white sheet so it joins
   the flow seamlessly instead of reading as a separate green slab. We keep
   whatever Elementor sets but layer a near-opaque cream veil + hairline seams
   top & bottom. (If Elementor's band is already light this simply harmonises.)*/
body.page-id-71 .elementor-element-ebc6abd,
body.page-id-15873 .elementor-element-ebc6abd,
body.page-id-17254 .elementor-element-ebc6abd{
  position:relative;
  background:var(--kh-cream)!important;
  background-image:
    radial-gradient(120% 90% at 12% -10%,rgba(9,144,36,.05),transparent 60%),
    radial-gradient(90% 80% at 100% 110%,rgba(255,204,0,.06),transparent 62%)!important;
  padding-top:clamp(44px,6vw,80px);
  padding-bottom:clamp(44px,6vw,80px);
}
body.page-id-71 .elementor-element-ebc6abd::before,
body.page-id-15873 .elementor-element-ebc6abd::before,
body.page-id-17254 .elementor-element-ebc6abd::before,
body.page-id-71 .elementor-element-ebc6abd::after,
body.page-id-15873 .elementor-element-ebc6abd::after,
body.page-id-17254 .elementor-element-ebc6abd::after{
  content:"";position:absolute;left:0;right:0;height:1px;z-index:2;
  background:linear-gradient(90deg,transparent,var(--kh-line) 12%,var(--kh-line) 88%,transparent);
}
body.page-id-71 .elementor-element-ebc6abd::before,
body.page-id-15873 .elementor-element-ebc6abd::before,
body.page-id-17254 .elementor-element-ebc6abd::before{top:0}
body.page-id-71 .elementor-element-ebc6abd::after,
body.page-id-15873 .elementor-element-ebc6abd::after,
body.page-id-17254 .elementor-element-ebc6abd::after{bottom:0}

/* Blog section sits on pure white, hairline seam above it */
body.page-id-71 .elementor-element-ec208e6,
body.page-id-15873 .elementor-element-ec208e6,
body.page-id-17254 .elementor-element-ec208e6{
  padding-top:clamp(40px,5vw,64px);
}

/* ----------------------------------------------------------------------
   1. HERO — photo/video-forward stage with a legible green→ink scrim and a
   Fraunces display H1. The hero is a YouTube background of real Khao Lak
   footage; we add a directional scrim so the white headline + gold tagline
   stay legible over bright frames, plus a thin green→gold baseline that ties
   it to the tour-single hero.
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-element-6fae6447,
body.page-id-15873 .elementor-element-6fae6447,
body.page-id-17254 .elementor-element-6fae6447{
  position:relative;isolation:isolate;
}
/* directional scrim painted directly on the section (no overlay element exists)
   — dark at the bottom where the type sits, clear up top. */
body.page-id-71 .elementor-element-6fae6447::before,
body.page-id-15873 .elementor-element-6fae6447::before,
body.page-id-17254 .elementor-element-6fae6447::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(120% 80% at 80% 0,rgba(7,21,14,.20),transparent 55%),
    linear-gradient(180deg,rgba(10,20,14,.30) 0%,rgba(10,20,14,.08) 40%,rgba(8,18,12,.62) 100%);
}
/* thin green→gold baseline tying the hero to the tour-single stage */
body.page-id-71 .elementor-element-6fae6447::after,
body.page-id-15873 .elementor-element-6fae6447::after,
body.page-id-17254 .elementor-element-6fae6447::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:5px;z-index:3;
  background:linear-gradient(90deg,var(--kh-green),var(--kh-sun) 58%,var(--kh-green));
  pointer-events:none;
}
/* keep the hero copy above the scrim (modern flex containers use .e-con-inner
   and direct .elementor-element children, not legacy .elementor-container) */
body.page-id-71 .elementor-element-6fae6447 > .e-con-inner,
body.page-id-15873 .elementor-element-6fae6447 > .e-con-inner,
body.page-id-17254 .elementor-element-6fae6447 > .e-con-inner,
body.page-id-71 .elementor-element-6fae6447 > .elementor-element,
body.page-id-15873 .elementor-element-6fae6447 > .elementor-element,
body.page-id-17254 .elementor-element-6fae6447 > .elementor-element{
  position:relative;z-index:2;
}

/* Hero brand line (#cf8189d) — clean Fraunces white over the footage */
body.page-id-71 .elementor-element-cf8189d .elementor-heading-title,
body.page-id-15873 .elementor-element-cf8189d .elementor-heading-title,
body.page-id-17254 .elementor-element-cf8189d .elementor-heading-title{
  font-family:var(--kh-disp)!important;
  color:#fffefb!important;
  font-weight:600!important;
  letter-spacing:-.022em;
  line-height:1.02;
  text-shadow:0 4px 44px rgba(0,0,0,.5);
}
/* Hero tagline (#5bd8a6f) — gold mono-spaced kicker */
body.page-id-71 .elementor-element-5bd8a6f .elementor-heading-title,
body.page-id-15873 .elementor-element-5bd8a6f .elementor-heading-title,
body.page-id-17254 .elementor-element-5bd8a6f .elementor-heading-title{
  font-family:var(--kh-body)!important;
  color:var(--kh-sun)!important;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:600!important;
  text-shadow:0 2px 18px rgba(0,0,0,.4);
}

/* ----------------------------------------------------------------------
   2. SECTION HEADINGS — one editorial voice (Fraunces) + brand ink, with a
   green→gold tick + centred underrule, matching the tour-single section
   heads. Body copy untouched.
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-widget-heading .elementor-heading-title,
body.page-id-15873 .elementor-widget-heading .elementor-heading-title,
body.page-id-17254 .elementor-widget-heading .elementor-heading-title{
  font-family:var(--kh-disp);
  letter-spacing:-.014em;
}

/* "New Available Tours from Khao Lak 2026" (#086c919) */
body.page-id-71 .elementor-element-086c919 .elementor-heading-title,
body.page-id-15873 .elementor-element-086c919 .elementor-heading-title,
body.page-id-17254 .elementor-element-086c919 .elementor-heading-title{
  color:var(--kh-ink);
  font-weight:600;
  line-height:1.05;
  font-size:clamp(2rem,4.2vw,3.1rem);
  position:relative;
  padding-bottom:.46em;
}
body.page-id-71 .elementor-element-086c919 .elementor-heading-title b,
body.page-id-15873 .elementor-element-086c919 .elementor-heading-title b,
body.page-id-17254 .elementor-element-086c919 .elementor-heading-title b{
  color:var(--kh-green);font-weight:600;font-style:italic;
}
body.page-id-71 .elementor-element-086c919 .elementor-heading-title::after,
body.page-id-15873 .elementor-element-086c919 .elementor-heading-title::after,
body.page-id-17254 .elementor-element-086c919 .elementor-heading-title::after{
  content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:70px;height:3px;border-radius:3px;
  background:linear-gradient(90deg,var(--kh-green),var(--kh-sun));
}

/* "Trips from Khao Lak" (#8ffb03d) — now on a light cream band, so flip the
   type back to brand ink (Fraunces) for legibility on the new background. */
body.page-id-71 .elementor-element-8ffb03d .elementor-heading-title,
body.page-id-15873 .elementor-element-8ffb03d .elementor-heading-title,
body.page-id-17254 .elementor-element-8ffb03d .elementor-heading-title{
  color:var(--kh-ink)!important;
  font-weight:600;
  font-size:clamp(1.9rem,3.8vw,2.8rem);
  line-height:1.06;
  position:relative;
  padding-bottom:.42em;
}
body.page-id-71 .elementor-element-8ffb03d .elementor-heading-title::after,
body.page-id-15873 .elementor-element-8ffb03d .elementor-heading-title::after,
body.page-id-17254 .elementor-element-8ffb03d .elementor-heading-title::after{
  content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:64px;height:3px;border-radius:3px;
  background:linear-gradient(90deg,var(--kh-green),var(--kh-sun));
}

/* "Khao Lak Beaches" (#651e517) — overlay heading on the beach photo block */
body.page-id-71 .elementor-element-651e517 .elementor-heading-title,
body.page-id-15873 .elementor-element-651e517 .elementor-heading-title,
body.page-id-17254 .elementor-element-651e517 .elementor-heading-title{
  font-family:var(--kh-disp)!important;
  color:#fffefb!important;
  font-weight:600!important;
  letter-spacing:-.018em;
  text-shadow:0 3px 30px rgba(8,30,16,.55);
}

/* "Latest from our Blogs" (#ec208e6) */
body.page-id-71 .elementor-element-ec208e6 .elementor-heading-title,
body.page-id-15873 .elementor-element-ec208e6 .elementor-heading-title,
body.page-id-17254 .elementor-element-ec208e6 .elementor-heading-title{
  color:var(--kh-ink);
  font-weight:600;
  font-size:clamp(1.7rem,3.2vw,2.5rem);
  position:relative;
  padding-bottom:.42em;
}
body.page-id-71 .elementor-element-ec208e6 .elementor-heading-title::after,
body.page-id-15873 .elementor-element-ec208e6 .elementor-heading-title::after,
body.page-id-17254 .elementor-element-ec208e6 .elementor-heading-title::after{
  content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:58px;height:3px;border-radius:3px;
  background:linear-gradient(90deg,var(--kh-green),var(--kh-sun));
}

/* TAXI & TRANSFER section (#90bbbbb) now hosts the self-styled Andaman-Dispatch
   transfer band (shortcode widget) on a light ground — see klld-transfer-shortcode.php.
   The legacy overlay heading (#dbeea75), banner form (#e8327bd) and SAFETY badge
   (#b481e56) were removed from the Elementor data on 2026-06-12, so their rules below
   are dead and were dropped. The band brings its own type, colour and motion. */

/* ----------------------------------------------------------------------
   3. BODY COPY — brand body face for cohesion with the cards
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-widget-text-editor,
body.page-id-15873 .elementor-widget-text-editor,
body.page-id-17254 .elementor-widget-text-editor{
  font-family:var(--kh-body);
  line-height:1.66;
}

/* ----------------------------------------------------------------------
   4. BEACHES PHOTO SECTION (#ea3b7de) — directional scrim so the white type stays
   legible over the bright photo, seamed into the flow with a green→gold baseline.
   (The transfer section #90bbbbb is NO LONGER a photo section — it hosts the
   self-styled transfer band — so it is intentionally excluded from this group.)
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-element-ea3b7de,
body.page-id-15873 .elementor-element-ea3b7de,
body.page-id-17254 .elementor-element-ea3b7de{
  position:relative;isolation:isolate;
}
/* directional scrim painted on the section itself (no overlay element exists)
   so the white headings stay legible over the bright photo. */
body.page-id-71 .elementor-element-ea3b7de::before,
body.page-id-15873 .elementor-element-ea3b7de::before,
body.page-id-17254 .elementor-element-ea3b7de::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(110% 90% at 14% 0,rgba(7,21,14,.28),transparent 58%),
    linear-gradient(110deg,rgba(8,18,12,.58) 0%,rgba(8,18,12,.20) 52%,rgba(8,18,12,.06) 100%);
}
/* green→gold baseline under the beaches photo section */
body.page-id-71 .elementor-element-ea3b7de::after,
body.page-id-15873 .elementor-element-ea3b7de::after,
body.page-id-17254 .elementor-element-ea3b7de::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:4px;z-index:3;
  background:linear-gradient(90deg,var(--kh-green),var(--kh-sun) 58%,var(--kh-green));
  pointer-events:none;
}
body.page-id-71 .elementor-element-ea3b7de > .e-con-inner,
body.page-id-15873 .elementor-element-ea3b7de > .e-con-inner,
body.page-id-17254 .elementor-element-ea3b7de > .e-con-inner,
body.page-id-71 .elementor-element-ea3b7de > .elementor-element,
body.page-id-15873 .elementor-element-ea3b7de > .elementor-element,
body.page-id-17254 .elementor-element-ea3b7de > .elementor-element{position:relative;z-index:2}

/* Transfer band section (#90bbbbb): let the self-styled band own the section.
   Strip the legacy section padding/min-height Elementor still emits inline, so the
   band sits flush on the page ground with no dark scrim and no forced 80vh. */
body.page-id-71 .elementor-element-90bbbbb,
body.page-id-15873 .elementor-element-90bbbbb,
body.page-id-17254 .elementor-element-90bbbbb{
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
}
body.page-id-71 .elementor-element-90bbbbb::before,
body.page-id-15873 .elementor-element-90bbbbb::before,
body.page-id-17254 .elementor-element-90bbbbb::before,
body.page-id-71 .elementor-element-90bbbbb::after,
body.page-id-15873 .elementor-element-90bbbbb::after,
body.page-id-17254 .elementor-element-90bbbbb::after{ content:none!important; }
body.page-id-71 .elementor-element-90bbbbb > .e-con-inner,
body.page-id-15873 .elementor-element-90bbbbb > .e-con-inner,
body.page-id-17254 .elementor-element-90bbbbb > .e-con-inner{ padding:0!important; }

/* ----------------------------------------------------------------------
   5. BUTTONS — pill the home CTAs into the brand system.
   "VIEW ALL OUR TOURS" (#4a50c43) + "READ MORE" beaches (#7ff9f07).
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-element-4a50c43 .elementor-button,
body.page-id-15873 .elementor-element-4a50c43 .elementor-button,
body.page-id-17254 .elementor-element-4a50c43 .elementor-button,
body.page-id-71 .elementor-element-7ff9f07 .elementor-button,
body.page-id-15873 .elementor-element-7ff9f07 .elementor-button,
body.page-id-17254 .elementor-element-7ff9f07 .elementor-button{
  border-radius:999px!important;
  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,background .25s;
}
body.page-id-71 .elementor-element-4a50c43 .elementor-button-text,
body.page-id-15873 .elementor-element-4a50c43 .elementor-button-text,
body.page-id-17254 .elementor-element-4a50c43 .elementor-button-text,
body.page-id-71 .elementor-element-7ff9f07 .elementor-button-text,
body.page-id-15873 .elementor-element-7ff9f07 .elementor-button-text,
body.page-id-17254 .elementor-element-7ff9f07 .elementor-button-text{
  font-family:var(--kh-body);font-weight:700;letter-spacing:.04em;
}
body.page-id-71 .elementor-element-4a50c43 .elementor-button:hover,
body.page-id-15873 .elementor-element-4a50c43 .elementor-button:hover,
body.page-id-17254 .elementor-element-4a50c43 .elementor-button:hover,
body.page-id-71 .elementor-element-7ff9f07 .elementor-button:hover,
body.page-id-15873 .elementor-element-7ff9f07 .elementor-button:hover,
body.page-id-17254 .elementor-element-7ff9f07 .elementor-button:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px -18px rgba(8,30,16,.6);
}

/* ----------------------------------------------------------------------
   6. CARDS — the tour + blog cards carry the .klld-card / .services-item
   skin already. Re-tune their tokens here to the Emerald-Daybreak WHITE
   paper system (vs the cream the standalone grid uses) so the home reads as
   one sheet, and give a slightly warmer elevation on hover.
   ---------------------------------------------------------------------- */
body.page-id-71 .klld-card,
body.page-id-15873 .klld-card,
body.page-id-17254 .klld-card,
body.page-id-71 .services-item.list.item-elementor,
body.page-id-15873 .services-item.list.item-elementor,
body.page-id-17254 .services-item.list.item-elementor{
  --kg:var(--kh-green);--kgd:var(--kh-green-deep);--ky:var(--kh-sun);
  --kink:var(--kh-ink);--ksoft:var(--kh-soft);
  --kpaper:var(--kh-paper2);--kcream:var(--kh-cream);--kline:var(--kh-line-g);
}
body.page-id-71 .klld-card .item.service-border,
body.page-id-15873 .klld-card .item.service-border,
body.page-id-17254 .klld-card .item.service-border{
  transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .3s;
}
body.page-id-71 .klld-card:hover .item.service-border,
body.page-id-15873 .klld-card:hover .item.service-border,
body.page-id-17254 .klld-card:hover .item.service-border{
  box-shadow:var(--kh-shadow);
  border-color:var(--kh-line-g);
}

/* Blog cards (#f7109dd, .st-blog-list-el .services-item.item-elementor) —
   adopt the same white editorial card with Fraunces titles + green hovers. */
body.page-id-71 .st-blog-list-el .services-item.item-elementor .item,
body.page-id-15873 .st-blog-list-el .services-item.item-elementor .item,
body.page-id-17254 .st-blog-list-el .services-item.item-elementor .item{
  border:1px solid var(--kh-line);border-radius:18px;overflow:hidden;
  background:var(--kh-paper2);
  transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .3s;
}
body.page-id-71 .st-blog-list-el .services-item.item-elementor:hover .item,
body.page-id-15873 .st-blog-list-el .services-item.item-elementor:hover .item,
body.page-id-17254 .st-blog-list-el .services-item.item-elementor:hover .item{
  transform:translateY(-5px);box-shadow:var(--kh-shadow);border-color:var(--kh-line-g);
}
body.page-id-71 .st-blog-list-el .services-item .wp-post-image,
body.page-id-15873 .st-blog-list-el .services-item .wp-post-image,
body.page-id-17254 .st-blog-list-el .services-item .wp-post-image{
  transition:transform .6s cubic-bezier(.2,.7,.2,1);
}
body.page-id-71 .st-blog-list-el .services-item:hover .wp-post-image,
body.page-id-15873 .st-blog-list-el .services-item:hover .wp-post-image,
body.page-id-17254 .st-blog-list-el .services-item:hover .wp-post-image{
  transform:scale(1.05);
}
body.page-id-71 .st-blog-list-el .services-item .content-item .title a,
body.page-id-15873 .st-blog-list-el .services-item .content-item .title a,
body.page-id-17254 .st-blog-list-el .services-item .content-item .title a{
  font-family:var(--kh-disp);font-weight:600;letter-spacing:-.012em;color:var(--kh-ink);
}
body.page-id-71 .st-blog-list-el .services-item .content-item .title a:hover,
body.page-id-15873 .st-blog-list-el .services-item .content-item .title a:hover,
body.page-id-17254 .st-blog-list-el .services-item .content-item .title a:hover{color:var(--kh-green)}
body.page-id-71 .st-blog-list-el .services-item .cate,
body.page-id-15873 .st-blog-list-el .services-item .cate,
body.page-id-17254 .st-blog-list-el .services-item .cate{
  font-family:var(--kh-body);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--kh-green-deep);
}

/* ----------------------------------------------------------------------
   7. SEARCH FORM  ::  KLLD-SEARCHFORM-v1
   The home hero carries the Traveler banner search widget (st_banner_form,
   service=st_cartransfer, style_2). DOM:
     .st-banner-search-form.style_2 > .st-search-form-el > .st-search-el
       > .search-form.stt-car-transfer > form.form
         > .destination-search (pickup) / .col (dropoff) / .advance + submit
   We restyle it into the emerald-daybreak language: a clean white glass
   field-bar, Fraunces micro-labels, green focus rings, gold/green CTA pill.
   Scoped to the HOME banner widget only (.elementor-element-e8327bd) so it
   never touches the transfer-page search or any other daterangepicker.
   The actual inputs / names / submit action are untouched — booking contract
   + WPML strings intact.
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-element-e8327bd,
body.page-id-15873 .elementor-element-e8327bd,
body.page-id-17254 .elementor-element-e8327bd{
  font-family:var(--kh-body);
}
/* the whole banner search shell -> floating white glass card */
body.page-id-71 .elementor-element-e8327bd .st-banner-search-form,
body.page-id-15873 .elementor-element-e8327bd .st-banner-search-form,
body.page-id-17254 .elementor-element-e8327bd .st-banner-search-form{
  background:transparent;
}
body.page-id-71 .elementor-element-e8327bd .search-form.stt-car-transfer,
body.page-id-15873 .elementor-element-e8327bd .search-form.stt-car-transfer,
body.page-id-17254 .elementor-element-e8327bd .search-form.stt-car-transfer,
body.page-id-71 .elementor-element-e8327bd .st-search-form-el,
body.page-id-15873 .elementor-element-e8327bd .st-search-form-el,
body.page-id-17254 .elementor-element-e8327bd .st-search-form-el{
  background:rgba(255,255,255,.96)!important;
  border:1px solid var(--kh-line)!important;
  border-radius:18px!important;
  box-shadow:var(--kh-shadow)!important;
  backdrop-filter:blur(8px);
  overflow:visible;
}
/* the form row */
body.page-id-71 .elementor-element-e8327bd .search-form .form,
body.page-id-15873 .elementor-element-e8327bd .search-form .form,
body.page-id-17254 .elementor-element-e8327bd .search-form .form{
  gap:0;
}
/* field columns — hairline seams between, generous padding */
body.page-id-71 .elementor-element-e8327bd .search-form .border-right,
body.page-id-15873 .elementor-element-e8327bd .search-form .border-right,
body.page-id-17254 .elementor-element-e8327bd .search-form .border-right{
  border-right:1px solid var(--kh-line)!important;
}
body.page-id-71 .elementor-element-e8327bd .search-form .form-group,
body.page-id-15873 .elementor-element-e8327bd .search-form .form-group,
body.page-id-17254 .elementor-element-e8327bd .search-form .form-group{
  padding:14px 18px!important;
  position:relative;
  border-radius:14px;
  transition:background .25s ease;
}
/* field hover/focus-within — soft green wash + ring */
body.page-id-71 .elementor-element-e8327bd .search-form .form-group:focus-within,
body.page-id-15873 .elementor-element-e8327bd .search-form .form-group:focus-within,
body.page-id-17254 .elementor-element-e8327bd .search-form .form-group:focus-within{
  background:var(--kh-green-soft);
  box-shadow:inset 0 0 0 2px rgba(9,144,36,.35);
}
/* field labels -> Fraunces micro-label */
body.page-id-71 .elementor-element-e8327bd .search-form label,
body.page-id-15873 .elementor-element-e8327bd .search-form label,
body.page-id-17254 .elementor-element-e8327bd .search-form label{
  font-family:var(--kh-body)!important;
  font-size:.62rem!important;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:700!important;
  color:var(--kh-faint)!important;
  margin-bottom:3px;
}
/* the pickup / dropoff text inputs */
body.page-id-71 .elementor-element-e8327bd .search-form input[type="text"],
body.page-id-15873 .elementor-element-e8327bd .search-form input[type="text"],
body.page-id-17254 .elementor-element-e8327bd .search-form input[type="text"],
body.page-id-71 .elementor-element-e8327bd .search-form .render,
body.page-id-15873 .elementor-element-e8327bd .search-form .render,
body.page-id-17254 .elementor-element-e8327bd .search-form .render{
  font-family:var(--kh-disp)!important;
  font-size:1.04rem!important;
  font-weight:500!important;
  color:var(--kh-ink)!important;
  background:transparent!important;
}
body.page-id-71 .elementor-element-e8327bd .search-form input[type="text"]::placeholder,
body.page-id-15873 .elementor-element-e8327bd .search-form input[type="text"]::placeholder,
body.page-id-17254 .elementor-element-e8327bd .search-form input[type="text"]::placeholder{
  color:var(--kh-soft)!important;font-weight:400;
}
/* leading location / field icons -> brand green */
body.page-id-71 .elementor-element-e8327bd .search-form .stt-icon,
body.page-id-15873 .elementor-element-e8327bd .search-form .stt-icon,
body.page-id-17254 .elementor-element-e8327bd .search-form .stt-icon,
body.page-id-71 .elementor-element-e8327bd .search-form .st-form-dropdown-icon,
body.page-id-15873 .elementor-element-e8327bd .search-form .st-form-dropdown-icon,
body.page-id-17254 .elementor-element-e8327bd .search-form .st-form-dropdown-icon{
  color:var(--kh-green)!important;
}
/* the location autocomplete dropdown -> white card, green hover rows */
body.page-id-71 .elementor-element-e8327bd .search-form .dropdown-menu,
body.page-id-15873 .elementor-element-e8327bd .search-form .dropdown-menu,
body.page-id-17254 .elementor-element-e8327bd .search-form .dropdown-menu{
  border:1px solid var(--kh-line)!important;
  border-radius:14px!important;
  box-shadow:var(--kh-shadow)!important;
  background:var(--kh-paper)!important;
  overflow:hidden;
}
body.page-id-71 .elementor-element-e8327bd .search-form .dropdown-menu .location-heading,
body.page-id-15873 .elementor-element-e8327bd .search-form .dropdown-menu .location-heading,
body.page-id-17254 .elementor-element-e8327bd .search-form .dropdown-menu .location-heading{
  font-family:var(--kh-body)!important;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;
  font-weight:700;color:var(--kh-faint)!important;
}
body.page-id-71 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item,
body.page-id-15873 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item,
body.page-id-17254 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item{
  font-family:var(--kh-body)!important;color:var(--kh-ink2)!important;border-radius:9px;transition:background .18s,color .18s;
}
body.page-id-71 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item:hover,
body.page-id-15873 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item:hover,
body.page-id-17254 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item:hover{
  background:var(--kh-green-soft)!important;color:var(--kh-green-deep)!important;
}
body.page-id-71 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item .stt-icon,
body.page-id-15873 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item .stt-icon,
body.page-id-17254 .elementor-element-e8327bd .search-form .dropdown-menu .item.dropdown-item .stt-icon{color:var(--kh-green)!important}
/* advance "More options" toggle -> quiet green link */
body.page-id-71 .elementor-element-e8327bd .search-form .advance .dropdown-toggle,
body.page-id-15873 .elementor-element-e8327bd .search-form .advance .dropdown-toggle,
body.page-id-17254 .elementor-element-e8327bd .search-form .advance .dropdown-toggle{
  font-family:var(--kh-body)!important;font-weight:600;color:var(--kh-green-deep)!important;
}
/* SUBMIT — the brand-green pill CTA with a gold underglow */
body.page-id-71 .elementor-element-e8327bd .search-form .btn.btn-search,
body.page-id-15873 .elementor-element-e8327bd .search-form .btn.btn-search,
body.page-id-17254 .elementor-element-e8327bd .search-form .btn.btn-search,
body.page-id-71 .elementor-element-e8327bd .search-form button[type="submit"],
body.page-id-15873 .elementor-element-e8327bd .search-form button[type="submit"],
body.page-id-17254 .elementor-element-e8327bd .search-form button[type="submit"]{
  background:var(--kh-green)!important;
  border:0!important;
  color:#fff!important;
  font-family:var(--kh-body)!important;
  font-weight:700!important;
  letter-spacing:.02em;
  border-radius:999px!important;
  padding:13px 30px!important;
  box-shadow:0 16px 32px -16px rgba(9,144,36,.75)!important;
  transition:background .2s,transform .2s,box-shadow .2s!important;
}
body.page-id-71 .elementor-element-e8327bd .search-form .btn.btn-search:hover,
body.page-id-15873 .elementor-element-e8327bd .search-form .btn.btn-search:hover,
body.page-id-17254 .elementor-element-e8327bd .search-form .btn.btn-search:hover,
body.page-id-71 .elementor-element-e8327bd .search-form button[type="submit"]:hover,
body.page-id-15873 .elementor-element-e8327bd .search-form button[type="submit"]:hover,
body.page-id-17254 .elementor-element-e8327bd .search-form button[type="submit"]:hover{
  background:var(--kh-green-deep)!important;
  transform:translateY(-2px);
  box-shadow:0 22px 44px -18px rgba(9,144,36,.8)!important;
}
body.page-id-71 .elementor-element-e8327bd .search-form .btn.btn-search:focus-visible,
body.page-id-15873 .elementor-element-e8327bd .search-form .btn.btn-search:focus-visible,
body.page-id-17254 .elementor-element-e8327bd .search-form .btn.btn-search:focus-visible{
  outline:3px solid var(--kh-sun)!important;outline-offset:3px;
}
/* tabs (if multi-service ever toggled) — green active underline */
body.page-id-71 .elementor-element-e8327bd .multi-search .nav-link.active,
body.page-id-15873 .elementor-element-e8327bd .multi-search .nav-link.active,
body.page-id-17254 .elementor-element-e8327bd .multi-search .nav-link.active{
  color:var(--kh-green)!important;border-bottom:2px solid var(--kh-green)!important;background:transparent!important;
}
/* mobile — let the search field columns stack cleanly */
@media(max-width:782px){
  body.page-id-71 .elementor-element-e8327bd .search-form .border-right,
  body.page-id-15873 .elementor-element-e8327bd .search-form .border-right,
  body.page-id-17254 .elementor-element-e8327bd .search-form .border-right{
    border-right:0!important;border-bottom:1px solid var(--kh-line)!important;
  }
}

/* ----------------------------------------------------------------------
   8. SCROLL REVEAL (reserved, no-op as shipped) — these rules only activate
   if a `.klld-home-rise` class is present in the DOM. No markup or JS adds
   that class in this CSS-only delivery, so they are dormant (zero effect) —
   kept here so a future progressive-enhancement injector can light them up
   without touching this file. Reduced-motion is pre-honoured below.
   ---------------------------------------------------------------------- */
body.page-id-71 .klld-home-rise,
body.page-id-15873 .klld-home-rise,
body.page-id-17254 .klld-home-rise{opacity:0;transform:translateY(24px)}
body.page-id-71 .klld-home-rise.klld-home-in,
body.page-id-15873 .klld-home-rise.klld-home-in,
body.page-id-17254 .klld-home-rise.klld-home-in{
  opacity:1;transform:none;
  transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);
}

/* ----------------------------------------------------------------------
   9. MOTION — honor reduced-motion across all additions.
   ---------------------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  body.page-id-71 .klld-card .item.service-border,
  body.page-id-15873 .klld-card .item.service-border,
  body.page-id-17254 .klld-card .item.service-border,
  body.page-id-71 .st-blog-list-el .services-item .item,
  body.page-id-15873 .st-blog-list-el .services-item .item,
  body.page-id-17254 .st-blog-list-el .services-item .item,
  body.page-id-71 .elementor-element-4a50c43 .elementor-button,
  body.page-id-15873 .elementor-element-4a50c43 .elementor-button,
  body.page-id-17254 .elementor-element-4a50c43 .elementor-button,
  body.page-id-71 .elementor-element-7ff9f07 .elementor-button,
  body.page-id-15873 .elementor-element-7ff9f07 .elementor-button,
  body.page-id-17254 .elementor-element-7ff9f07 .elementor-button,
  body.page-id-71 .elementor-element-e8327bd .search-form .btn.btn-search,
  body.page-id-15873 .elementor-element-e8327bd .search-form .btn.btn-search,
  body.page-id-17254 .elementor-element-e8327bd .search-form .btn.btn-search{
    transition:none!important;
  }
  body.page-id-71 .klld-home-rise,
  body.page-id-15873 .klld-home-rise,
  body.page-id-17254 .klld-home-rise{opacity:1!important;transform:none!important;transition:none!important}
}

/* ========================================================================
   KLLD-TOURS-RAIL 2026-06-08 :: the homepage tour listings (st_list_service
   .service-tour) turn into a horizontal swipe carousel on tablet & phone, so
   the four-card teaser stops collapsing into a tall single column and gains an
   obvious "more cards" affordance (card peek + edge fade + slim green scroll-
   bar). Desktop (>=1025px) keeps the Bootstrap grid completely untouched.
   CSS-only, scoped to page-71's two tour bands, fully reversible. The path to
   the full catalogue stays the existing "VIEW ALL OUR TOURS" button.
   ======================================================================== */
@media (max-width:1024px){
  body.page-id-71 .st-list-service .service-tour{ position:relative; }

  body.page-id-71 .st-list-service .service-tour > .row{
    display:flex; flex-wrap:nowrap; margin-inline:0;
    overflow-x:auto; overflow-y:hidden;
    scroll-snap-type:x mandatory; scroll-padding-inline:4px;
    -webkit-overflow-scrolling:touch;
    padding:2px 4px 16px; gap:14px;
    scrollbar-width:thin; scrollbar-color:var(--kh-green-soft) transparent;
  }
  body.page-id-71 .st-list-service .service-tour > .row::-webkit-scrollbar{ height:6px; }
  body.page-id-71 .st-list-service .service-tour > .row::-webkit-scrollbar-thumb{
    background:var(--kh-green-soft); border-radius:999px;
  }

  body.page-id-71 .st-list-service .service-tour > .row > [class*="col-"]{
    flex:0 0 auto; width:min(82%,330px); max-width:330px;
    padding-inline:0; margin-bottom:0; scroll-snap-align:start;
  }

  /* right-edge fade = "swipe for more" hint, matched to each band's surface */
  body.page-id-71 .elementor-element-eee0e02 .service-tour::after,
  body.page-id-71 .elementor-element-ebc6abd .service-tour::after{
    content:""; position:absolute; top:0; right:0; bottom:16px; width:34px;
    pointer-events:none; z-index:2;
  }
  body.page-id-71 .elementor-element-eee0e02 .service-tour::after{
    background:linear-gradient(90deg,rgba(255,255,255,0),var(--kh-paper));
  }
  body.page-id-71 .elementor-element-ebc6abd .service-tour::after{
    background:linear-gradient(90deg,rgba(246,246,242,0),var(--kh-cream));
  }
}

/* tablet: ~2 cards + a peek (phones get ~1.2 from the rule above) */
@media (min-width:768px) and (max-width:1024px){
  body.page-id-71 .st-list-service .service-tour > .row > [class*="col-"]{
    width:min(46%,360px); max-width:360px;
  }
}

@media (prefers-reduced-motion:reduce){
  body.page-id-71 .st-list-service .service-tour > .row{ scroll-behavior:auto; }
}

/* ---- KLLD-HOME-2026-v2 :: END ---------------------------------------- */


/* =====================================================================
   KLLD-HOME-PICTURESQUE-PARITY  ::  BEGIN          (2026-06-12)
   ---------------------------------------------------------------------
   Full visual parity with _proto/home-picturesque ("The Andaman Almanac").
   The "Emerald Daybreak" pass above (v2) already skinned the hero copy,
   cards, blog and banner search in Fraunces/Hanken. THIS layer pulls the
   Elementor *hero stage*, the *post-hero seam* and the *Elementor footer*
   the rest of the way onto the prototype's language so the page reads as
   ONE composition end-to-end with the injected alm- band:

     · Newsreader display serif (italic-led) for the hero brand line,
       matching the band's --serif (the band's Newsreader + Spline Sans
       Mono are now enqueued in klld_enqueue_home_2026).
     · A Spline-Sans-Mono gold kicker for the hero tagline (the proto's
       ".alm-kicker" voice) instead of a plain Hanken caps line.
     · The proto hero veil: a radial gold glow top-right + a deeper
       ink gradient at the foot so the type sits on the proto's
       tropical-night scrim. Layered OVER the existing v2 scrim.
     · Band -> Elementor seam: the first Elementor funnel gets a warm
       parchment lead-in (--alm-paper) so the band's dark closing CTA
       lands softly onto the editorial paper below it — one sheet.
     · Footer: recoloured to the proto footer (--alm-ink2 #10312a) with
       a Newsreader brand line, Spline-mono gold micro-labels and
       sun-yellow link/social hovers. CSS-only — copy, links, the TAT
       line carried in the band's trust section, and the booking
       contract are all untouched.

   HARD RULES: scoped to the three WPML home IDs (71 / 15873 / 17254);
   no Elementor JSON; purely additive + reversible (delete this block);
   prefers-reduced-motion honoured; brand green #099024 / sun #ffcc00.
   ===================================================================== */

body.page-id-71,
body.page-id-15873,
body.page-id-17254{
  --alm-ink:#0c1f1a;        /* tropical night (proto --ink) */
  --alm-ink2:#10312a;       /* deep teal-green (proto --ink-2) */
  --alm-paper:#f5efe2;      /* warm parchment (proto --paper) */
  --alm-sun:#ffcc00;
  --alm-green:#099024;
  --alm-line-light:rgba(245,239,226,.16);
  --alm-serif:"Newsreader",Georgia,serif;
  --alm-mono:"Spline Sans Mono",ui-monospace,monospace;
}

/* ----------------------------------------------------------------------
   1. HERO STAGE — proto language
   The v2 pass set the hero brand line to Fraunces; re-voice it to
   Newsreader (the band's display face) so the hero and the band's
   section heads are the SAME serif. Lift the scale + line-height to the
   proto's display feel. v2 set Fraunces with !important on the same
   selector specificity; this block ships LATER in the same stylesheet, so
   equal-specificity + later source order + matching !important wins.
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-element-cf8189d .elementor-heading-title,
body.page-id-15873 .elementor-element-cf8189d .elementor-heading-title,
body.page-id-17254 .elementor-element-cf8189d .elementor-heading-title{
  font-family:var(--alm-serif)!important;
  font-weight:500!important;
  font-style:normal;
  letter-spacing:-.02em;
  line-height:1.0;
  font-size:clamp(2.6rem,6.4vw,5.2rem)!important;
  text-shadow:0 12px 50px rgba(0,0,0,.45);
}

/* Hero tagline ("Water is Life, Nature is Home.") -> proto gold mono kicker.
   It's a full sentence rather than a short label, so we keep the Spline-mono
   gold voice but use restrained tracking + sentence case (forced uppercase on
   a sentence reads as shouting). A leading rule echoes the band's .alm-kicker. */
body.page-id-71 .elementor-element-5bd8a6f .elementor-heading-title,
body.page-id-15873 .elementor-element-5bd8a6f .elementor-heading-title,
body.page-id-17254 .elementor-element-5bd8a6f .elementor-heading-title{
  font-family:var(--alm-mono)!important;
  color:var(--alm-sun)!important;
  font-weight:500!important;
  font-size:clamp(.72rem,1.25vw,.92rem)!important;
  letter-spacing:.1em!important;
  text-transform:none;
  text-shadow:0 2px 18px rgba(0,0,0,.45);
}

/* Proto hero veil — radial gold glow top-right + deep ink foot.
   Painted as a 2nd pseudo layer is impossible (::before/::after already
   used by v2), so we layer onto the v2 ::before background stack. */
body.page-id-71 .elementor-element-6fae6447::before,
body.page-id-15873 .elementor-element-6fae6447::before,
body.page-id-17254 .elementor-element-6fae6447::before{
  background:
    radial-gradient(120% 90% at 80% 6%, rgba(255,204,0,.15), transparent 46%),
    radial-gradient(120% 80% at 80% 0,rgba(7,21,14,.20),transparent 55%),
    linear-gradient(180deg,
      rgba(12,31,26,.46) 0%,
      rgba(12,31,26,.10) 34%,
      rgba(10,22,16,.58) 78%,
      rgba(10,22,16,.90) 100%)!important;
}

/* ----------------------------------------------------------------------
   2. BAND -> ELEMENTOR SEAM
   Render order after the JS mounter is: hero -> alm-band -> first Elementor
   funnel (#eee0e02) -> "Trips" cream band -> blog -> footer. The band's
   CLOSING section (alm-close) is dark tropical-night ink; the Elementor
   funnel below it sits on white. Without a bridge the dark CTA snaps hard
   to white. Tint the funnel's TOP with a warm-parchment lead-in (the band's
   --alm-paper) that resolves into white over ~220px, so the dark band lands
   softly onto the editorial paper of the Elementor stack — the proto's
   "one continuous sheet" rhythm. Cards still sit on white.
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-element-eee0e02,
body.page-id-15873 .elementor-element-eee0e02,
body.page-id-17254 .elementor-element-eee0e02{
  background:
    linear-gradient(180deg,
      var(--alm-paper) 0,
      rgba(245,239,226,.45) 90px,
      #ffffff 220px)!important;
}

/* ----------------------------------------------------------------------
   3. FOOTER — proto footer language (Elementor container #506bdd86)
   Recolour the dark footer to the proto's deep teal-green ink, give the
   brand heading a Newsreader voice, the section labels a gold Spline-mono
   micro-cap, and the links a sun-yellow hover. The white logo, the
   address/contact copy and every href are left exactly as Elementor set
   them. CSS-only.
   ---------------------------------------------------------------------- */
body.page-id-71 .elementor-element-506bdd86,
body.page-id-15873 .elementor-element-506bdd86,
body.page-id-17254 .elementor-element-506bdd86{
  background:var(--alm-ink2)!important;
  position:relative;
}
/* thin green->gold seam crowning the footer, tying it to the band's bands */
body.page-id-71 .elementor-element-506bdd86::before,
body.page-id-15873 .elementor-element-506bdd86::before,
body.page-id-17254 .elementor-element-506bdd86::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;z-index:2;
  background:linear-gradient(90deg,var(--alm-green),var(--alm-sun) 58%,var(--alm-green));
  pointer-events:none;
}
/* footer brand line -> Newsreader */
body.page-id-71 .elementor-element-506bdd86 .elementor-widget-heading .elementor-heading-title,
body.page-id-15873 .elementor-element-506bdd86 .elementor-widget-heading .elementor-heading-title,
body.page-id-17254 .elementor-element-506bdd86 .elementor-widget-heading .elementor-heading-title{
  font-family:var(--alm-serif)!important;
  font-weight:500!important;
  letter-spacing:.01em;
  color:#f5efe2!important;
}
/* footer body copy -> Hanken, parchment-dimmed */
body.page-id-71 .elementor-element-506bdd86 .elementor-widget-text-editor,
body.page-id-15873 .elementor-element-506bdd86 .elementor-widget-text-editor,
body.page-id-17254 .elementor-element-506bdd86 .elementor-widget-text-editor,
body.page-id-71 .elementor-element-506bdd86 .elementor-icon-list-text,
body.page-id-15873 .elementor-element-506bdd86 .elementor-icon-list-text,
body.page-id-17254 .elementor-element-506bdd86 .elementor-icon-list-text{
  font-family:var(--kh-body)!important;
  color:rgba(245,239,226,.78)!important;
}
/* footer links + list-item hover -> sun yellow */
body.page-id-71 .elementor-element-506bdd86 a:hover,
body.page-id-15873 .elementor-element-506bdd86 a:hover,
body.page-id-17254 .elementor-element-506bdd86 a:hover,
body.page-id-71 .elementor-element-506bdd86 .elementor-icon-list-item:hover .elementor-icon-list-text,
body.page-id-15873 .elementor-element-506bdd86 .elementor-icon-list-item:hover .elementor-icon-list-text,
body.page-id-17254 .elementor-element-506bdd86 .elementor-icon-list-item:hover .elementor-icon-list-text{
  color:var(--alm-sun)!important;
}
/* footer list icons / social marks -> brand green at rest, sun on hover */
body.page-id-71 .elementor-element-506bdd86 .elementor-icon-list-icon i,
body.page-id-15873 .elementor-element-506bdd86 .elementor-icon-list-icon i,
body.page-id-17254 .elementor-element-506bdd86 .elementor-icon-list-icon i,
body.page-id-71 .elementor-element-506bdd86 .elementor-social-icon,
body.page-id-15873 .elementor-element-506bdd86 .elementor-social-icon,
body.page-id-17254 .elementor-element-506bdd86 .elementor-social-icon{
  color:var(--alm-sun)!important;
}
/* hairline divider above any footer sub-bar, parchment-dim */
body.page-id-71 .elementor-element-506bdd86 .elementor-divider-separator,
body.page-id-15873 .elementor-element-506bdd86 .elementor-divider-separator,
body.page-id-17254 .elementor-element-506bdd86 .elementor-divider-separator{
  border-color:var(--alm-line-light)!important;
}

/* ----------------------------------------------------------------------
   4. MOTION — nothing animated added here; the hero veil + footer seam are
   static. Reduced-motion users are already covered by v2 §9. (Kept as a
   marker so future motion lands behind the guard.)
   ---------------------------------------------------------------------- */

/* ---- KLLD-HOME-PICTURESQUE-PARITY :: END ----------------------------- */


/* =====================================================================
   KLLD-HOME-RESPONSIVE-SWEEP :: BEGIN          (2026-06-14)
   ---------------------------------------------------------------------
   Ports the missing fixes from _proto/home-responsive-2026/index.html.
   PORT PLAN summary (from the proto comment block):
     1. overflow-x:hidden body guard         → base (no MQ)
     2. hero H1 max-width:16ch               → base (no MQ)
     3. hero H1 step-down at ≤782px / ≤380px → two MQs
     4. tablet section-padding trim 783–1024  → tablet MQ
   .klf-mini / .klf-cards are proto-only classes (no live counterpart);
   the alm-plate transfer teaser has its own responsive rules in
   klld-home-alm-band.css — not duplicated here.
   Purely additive. Reversible: delete this block.
   ===================================================================== */

/* 1 — global overflow guard scoped to home only.
       The #1 mobile killer: a stray flex/grid child wider than the
       viewport silently causes horizontal scroll if this is absent.     */
body.page-id-71,
body.page-id-15873,
body.page-id-17254{
  overflow-x:hidden;
}

/* 2 — hero H1 max-width cap so a long line never forces full-viewport
        width at small sizes. Works alongside the existing clamp font-size
        set by the picturesque-parity block above.                       */
body.page-id-71 .elementor-element-cf8189d .elementor-heading-title,
body.page-id-15873 .elementor-element-cf8189d .elementor-heading-title,
body.page-id-17254 .elementor-element-cf8189d .elementor-heading-title{
  max-width:16ch;
}

/* 3 — phone (≤782px): step the hero H1 down so it wraps safely at 375px.
        The parity block sets clamp(2.6rem,6.4vw,5.2rem); the 2.6rem floor
        is ~41.6px — fine on 414px but tight on 375px with a 14–16 char
        headline in Newsreader. Override to a narrower clamp.           */
@media (max-width:782px){
  body.page-id-71 .elementor-element-cf8189d .elementor-heading-title,
  body.page-id-15873 .elementor-element-cf8189d .elementor-heading-title,
  body.page-id-17254 .elementor-element-cf8189d .elementor-heading-title{
    font-size:clamp(2.1rem,9.5vw,3.1rem)!important;
  }
}

/* 4 — small phone (≤380px): one more step for very narrow viewports. */
@media (max-width:380px){
  body.page-id-71 .elementor-element-cf8189d .elementor-heading-title,
  body.page-id-15873 .elementor-element-cf8189d .elementor-heading-title,
  body.page-id-17254 .elementor-element-cf8189d .elementor-heading-title{
    font-size:clamp(1.9rem,10vw,2.5rem)!important;
  }
}

/* 5 — tablet band (783–1024px): trim section padding so the post-hero
        editorial stack breathes on tablet without the phone compression.
        The tour carousel tablet rule already lives in the KLLD-TOURS-RAIL
        block above (this MQ is therefore a pure padding-trim layer).   */
@media (min-width:783px) and (max-width:1024px){
  body.page-id-71 .elementor-element-eee0e02,
  body.page-id-15873 .elementor-element-eee0e02,
  body.page-id-17254 .elementor-element-eee0e02{
    padding-top:clamp(32px,5vw,56px);
  }
  body.page-id-71 .elementor-element-ebc6abd,
  body.page-id-15873 .elementor-element-ebc6abd,
  body.page-id-17254 .elementor-element-ebc6abd{
    padding-top:clamp(36px,5.5vw,60px);
    padding-bottom:clamp(36px,5.5vw,60px);
  }
  body.page-id-71 .elementor-element-ec208e6,
  body.page-id-15873 .elementor-element-ec208e6,
  body.page-id-17254 .elementor-element-ec208e6{
    padding-top:clamp(32px,5vw,52px);
  }
}

/* ---- KLLD-HOME-RESPONSIVE-SWEEP :: END ------------------------------- */
