:root {
  --ink: #17333a;
  --teal: #3a5d67;
  --teal-2: #547781;
  --gold: #c7ab2d;
  --gold-soft: #eadf9d;
  --cream: #f6f2e8;
  --paper: #fffdf8;
  --muted: #66767a;
  --line: #d7ddda;
  --success: #315e45;
  --shadow: 0 18px 50px rgba(17,42,48,.10);
  --radius: 22px;
  --max: 1200px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:var(--ink); background:var(--paper); line-height:1.55; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
button,input,textarea { font:inherit; }
.container { width:min(var(--max), calc(100% - 40px)); margin-inline:auto; }
.eyebrow { font-size:.74rem; text-transform:uppercase; letter-spacing:.18em; font-weight:800; color:var(--teal); }
.display, h1,h2,h3 { font-family: Georgia, "Times New Roman", serif; font-weight:500; line-height:1.08; margin:0; }
h1 { font-size:clamp(3rem,6.8vw,6.3rem); letter-spacing:-.03em; }
h2 { font-size:clamp(2.1rem,4.2vw,3.85rem); letter-spacing:-.025em; }
h3 { font-size:1.45rem; }
p { margin:0; }
.muted { color:var(--muted); }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:.45rem; border-radius:999px; border:1px solid transparent; padding:14px 23px; font-weight:800; cursor:pointer; transition:.18s ease; }
.btn:hover { transform:translateY(-1px); }
.btn-primary { background:var(--gold); color:#17333a; }
.btn-primary:hover { filter:brightness(.97); box-shadow:0 8px 24px rgba(199,171,45,.20); }
.btn-secondary { color:white; border-color:rgba(255,255,255,.6); background:rgba(255,255,255,.08); backdrop-filter:blur(4px); }
.btn-outline { color:var(--teal); border-color:var(--teal); background:transparent; }
.link-arrow { font-weight:800; color:var(--teal); }
.site-header { position:sticky; top:0; z-index:60; background:rgba(255,253,248,.94); backdrop-filter:blur(14px); border-bottom:1px solid rgba(58,93,103,.12); }
.nav { height:80px; display:flex; align-items:center; gap:28px; }
.brand img { width:238px; height:auto; }
.nav-links { display:flex; align-items:center; gap:24px; margin-left:auto; font-size:.93rem; }
.nav-links a:hover { color:var(--teal); }
.mobile-menu { display:none; margin-left:auto; background:none; border:0; font-size:1.5rem; }
.hero { min-height:760px; color:white; display:flex; align-items:end; position:relative; isolation:isolate; overflow:hidden; background:#17333a; }
.hero-media { position:absolute; inset:0; z-index:-3; }
.hero-media img { width:100%; height:100%; object-fit:cover; object-position:center; }
.hero::before { content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg, rgba(8,28,33,.76), rgba(8,28,33,.34) 55%, rgba(8,28,33,.10)); }
.hero::after { content:""; position:absolute; inset:auto 0 0; height:180px; background:linear-gradient(transparent, rgba(8,28,33,.34)); z-index:-1; }
.hero-content { width:min(var(--max), calc(100% - 40px)); margin:auto; padding:170px 0 82px; }
.hero .eyebrow { color:var(--gold-soft); }
.hero h1 { max-width:980px; font-size:clamp(3rem,6vw,5.55rem); }
.hero-copy { margin-top:24px; max-width:720px; font-size:1.15rem; color:rgba(255,255,255,.92); }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.locked-stack { margin-top:22px; max-width:760px; font-size:.88rem; color:rgba(255,255,255,.76); }
.trust-strip { background:var(--teal); color:white; }
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; }
.trust-item { padding:22px 20px; text-align:center; border-right:1px solid rgba(255,255,255,.16); }
.trust-item:last-child { border-right:0; }
.trust-item strong { display:block; font-family:Georgia,serif; font-size:1.16rem; font-weight:500; }
.trust-item span { font-size:.78rem; color:rgba(255,255,255,.72); }
.section { padding:96px 0; }
.section-tight { padding:64px 0; }
.section-cream { background:var(--cream); }
.grid-2 { display:grid; grid-template-columns:.9fr 1.1fr; gap:70px; align-items:start; }
.lede { font-family:Georgia,serif; font-size:1.7rem; line-height:1.38; }
.pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:42px; }
.pillar { border-top:2px solid var(--gold); padding-top:18px; }
.pillar p { margin-top:10px; color:var(--muted); }
.section-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:34px; }
.dest-grid { display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:16px; grid-auto-rows:250px; }
.dest-card { border-radius:var(--radius); overflow:hidden; position:relative; background:#d3dad7; }
.dest-card.large { grid-row:span 2; }
.dest-card img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.dest-card:hover img { transform:scale(1.03); }
.dest-card::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(8,28,33,.74),transparent 68%); }
.dest-label { position:absolute; left:22px; bottom:20px; z-index:2; color:white; }
.dest-label small { display:block; opacity:.78; margin-top:4px; }
.journey-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:38px; }
.card { border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:white; box-shadow:0 4px 14px rgba(17,42,48,.03); }
.card img { width:100%; aspect-ratio:1.45/1; object-fit:cover; }
.card-body { padding:22px; }
.meta { font-size:.76rem; font-weight:800; color:var(--teal); text-transform:uppercase; letter-spacing:.12em; }
.card h3 { margin:8px 0 10px; }
.card p { color:var(--muted); font-size:.93rem; }
.take-section { background:var(--ink); color:white; }
.take-section .eyebrow { color:var(--gold-soft); }
.take-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:34px; margin-top:42px; }
.take { border-top:1px solid rgba(255,255,255,.28); padding-top:20px; }
.take blockquote { margin:0; font-family:Georgia,serif; font-size:1.5rem; line-height:1.36; }
.take p { margin-top:14px; color:rgba(255,255,255,.7); font-size:.9rem; }
.will-grid { display:grid; grid-template-columns:.88fr 1.12fr; gap:72px; align-items:center; }
.will-photo { border-radius:28px; overflow:hidden; min-height:590px; background:#ecebe7; box-shadow:var(--shadow); }
.will-photo img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.will-copy p { margin-top:16px; color:#4e6064; }
.signature { font-family:Georgia,serif; font-size:1.34rem; color:var(--ink)!important; }
.experience-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:36px; }
.experience { min-height:420px; border-radius:var(--radius); position:relative; overflow:hidden; color:white; }
.experience img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.experience::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(7,27,31,.85),rgba(7,27,31,.04) 70%); }
.experience-copy { position:absolute; left:22px; right:22px; bottom:22px; z-index:2; }
.experience-copy p { margin-top:8px; color:rgba(255,255,255,.76); font-size:.9rem; }
.steps { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:38px; }
.step { background:white; padding:26px; border-radius:18px; min-height:220px; }
.step-no { width:35px; height:35px; border-radius:50%; display:grid; place-items:center; background:var(--gold); font-weight:800; margin-bottom:34px; }
.step p { margin-top:9px; color:var(--muted); font-size:.9rem; }
.proof-box { border:1px solid var(--line); border-radius:var(--radius); padding:32px; background:white; }
.proof-box blockquote { font-family:Georgia,serif; font-size:1.5rem; margin:0; line-height:1.4; }
.proof-meta { margin-top:16px; color:var(--muted); font-size:.86rem; }
.article-grid { display:grid; grid-template-columns:1.15fr .85fr .85fr; gap:18px; margin-top:36px; }
.article { border:1px solid var(--line); border-radius:18px; padding:24px; background:white; }
.article.featured { background:var(--teal); color:white; border-color:var(--teal); }
.article h3 { margin-top:15px; }
.article p { margin-top:10px; font-size:.9rem; opacity:.78; }
.partner { border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.partner-inner { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.partner-copy { max-width:780px; }
.partner-copy p { margin-top:10px; color:var(--muted); }
.rokit-badge { flex:0 0 auto; display:flex; align-items:center; justify-content:flex-end; }
.rokit-badge img { width:190px; height:auto; }
.final-cta { background:var(--teal); color:white; }
.final-grid { display:grid; grid-template-columns:1.18fr .82fr; gap:60px; align-items:center; }
.final-cta .eyebrow { color:var(--gold-soft); }
.final-cta p { margin-top:14px; color:rgba(255,255,255,.76); max-width:680px; }
.footer { background:#10292f; color:rgba(255,255,255,.72); padding:42px 0 100px; }
.footer-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:34px; font-size:.86rem; }
.footer strong { color:white; }
.mobile-cta { display:none; position:fixed; z-index:70; left:14px; right:14px; bottom:14px; box-shadow:0 12px 32px rgba(0,0,0,.2); }
/* interior */
.page-hero { padding:120px 0 70px; background:var(--cream); border-bottom:1px solid var(--line); }
.page-hero p { margin-top:18px; max-width:740px; color:var(--muted); font-size:1.05rem; }
.content-narrow { max-width:780px; }
.breadcrumb { font-size:.82rem; color:var(--muted); margin-bottom:20px; }
.journey-hero { min-height:520px; display:flex; align-items:end; color:white; background:linear-gradient(90deg,rgba(8,28,33,.7),rgba(8,28,33,.18)), url('../images/trip-multi.webp') center/cover; }
.journey-hero .container { padding-bottom:54px; }
.route-box { margin-top:28px; padding:22px; background:var(--cream); border-radius:16px; }
.route-line { font-weight:800; color:var(--teal); }
.day { padding:26px 0; border-bottom:1px solid var(--line); }
.day h3 { margin-bottom:8px; }
/* funnel */
.funnel-wrap { max-width:760px; margin:0 auto; }
.progress { height:6px; background:#e6eae7; border-radius:10px; overflow:hidden; margin:26px 0 34px; }
.progress span { display:block; height:100%; background:var(--gold); width:16.66%; transition:width .2s; }
.funnel-step { display:none; }
.funnel-step.active { display:block; }
.options { display:grid; grid-template-columns:repeat(2,1fr); gap:11px; margin-top:20px; }
.option { border:1px solid #cbd3d0; background:white; border-radius:12px; padding:14px 15px; text-align:left; cursor:pointer; }
.option:hover { border-color:var(--teal); }
.option.selected { border-color:var(--teal); background:#eef4f2; box-shadow:inset 0 0 0 1px var(--teal); }
.field { margin-top:16px; }
.field label { display:block; font-weight:800; margin-bottom:7px; }
.field input,.field textarea { width:100%; border:1px solid #cbd3d0; border-radius:11px; padding:13px 14px; background:white; }
.field textarea { min-height:105px; resize:vertical; }
.form-error { color:#8f3434; margin-top:14px; font-size:.86rem; min-height:1.2em; }
.funnel-nav { display:flex; justify-content:space-between; gap:12px; margin-top:28px; }
.success-box { padding:48px 28px; text-align:center; border-radius:var(--radius); background:white; box-shadow:var(--shadow); }
.success-box p { color:var(--muted); max-width:520px; margin:14px auto 24px; }
.summary { margin:24px auto; max-width:520px; text-align:left; background:var(--cream); border-radius:14px; padding:18px; font-size:.88rem; }
@media (max-width: 930px) {
  .nav-links { display:none; }
  .mobile-menu { display:block; }
  .brand img { width:210px; }
  .grid-2,.will-grid,.final-grid { grid-template-columns:1fr; gap:38px; }
  .trust-grid { grid-template-columns:repeat(2,1fr); }
  .trust-item:nth-child(2) { border-right:0; }
  .trust-item:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.16); }
  .pillars,.journey-grid,.take-grid,.experience-grid,.steps { grid-template-columns:1fr 1fr; }
  .dest-grid { grid-template-columns:1fr 1fr; grid-auto-rows:230px; }
  .dest-card.large { grid-row:span 1; grid-column:span 2; }
  .article-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .mobile-cta { display:flex; }
}
@media (max-width: 620px) {
  .container { width:min(100% - 28px, var(--max)); }
  .nav { height:70px; }
  .brand img { width:180px; }
  .hero { min-height:730px; }
  .hero::before { background:linear-gradient(0deg,rgba(8,28,33,.80),rgba(8,28,33,.18) 72%); }
  .hero-content { width:min(100% - 28px,var(--max)); padding:145px 0 72px; }
  .hero-copy { font-size:1rem; }
  .section { padding:74px 0; }
  .section-head { display:block; }
  .section-head .btn { margin-top:20px; }
  .pillars,.journey-grid,.take-grid,.experience-grid,.steps,.options { grid-template-columns:1fr; }
  .dest-grid { grid-template-columns:1fr; grid-auto-rows:220px; }
  .dest-card.large { grid-column:span 1; }
  .will-photo { min-height:470px; }
  .partner-inner { flex-direction:column; align-items:flex-start; }
  .footer-grid { grid-template-columns:1fr; }
  .trust-grid { grid-template-columns:1fr 1fr; }
}

/* V3: conversion + visual integration */
.mobile-nav-panel { display:none; position:fixed; z-index:59; inset:80px 0 auto 0; background:var(--paper); border-bottom:1px solid var(--line); box-shadow:0 18px 40px rgba(17,42,48,.12); padding:18px 20px 24px; }
.mobile-nav-panel a { display:block; padding:13px 2px; font-weight:750; border-bottom:1px solid rgba(58,93,103,.10); }
.mobile-nav-panel .btn { margin-top:14px; width:100%; border-bottom:0; }
body.nav-open .mobile-nav-panel { display:block; }
body.nav-open { overflow:hidden; }

.image-card { border-radius:var(--radius); overflow:hidden; background:#e6ebe8; box-shadow:var(--shadow); }
.image-card img { width:100%; height:100%; object-fit:cover; }
.field-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:28px; align-items:stretch; }
.field-copy { padding:36px; border-radius:var(--radius); background:var(--ink); color:white; display:flex; flex-direction:column; justify-content:center; }
.field-copy .eyebrow { color:var(--gold-soft); }
.field-copy p { margin-top:14px; color:rgba(255,255,255,.76); }
.field-image { min-height:460px; }
.field-image img { width:100%; height:100%; object-fit:cover; }

.trust-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:34px; }
.trust-card { padding:28px; border:1px solid var(--line); border-radius:18px; background:white; }
.trust-card p { margin-top:10px; color:var(--muted); }

.journey-index-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:34px; }
.journey-index-grid .card img { aspect-ratio:1.45/1; }
.section-note { margin-top:18px; max-width:780px; color:var(--muted); }
.reassurance-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin-top:34px; }
.reassurance-item { padding:26px 28px; border:1px solid var(--line); border-radius:18px; background:white; }
.reassurance-item p { margin-top:10px; color:var(--muted); }

.footer a:hover { color:white; }
.footer-stack { margin-top:10px; max-width:560px; color:rgba(255,255,255,.70); }
.footer-stack strong { color:white; }
.page-image-hero { position:relative; min-height:500px; display:flex; align-items:end; color:white; overflow:hidden; }
.page-image-hero > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.page-image-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,28,33,.78),rgba(8,28,33,.20)); z-index:-1; }
.page-image-hero .container { padding-bottom:54px; }

@media (max-width:930px){
  .field-grid { grid-template-columns:1fr; }
  .trust-cards,.journey-index-grid,.reassurance-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px){
  .mobile-nav-panel { inset:70px 0 auto 0; }
  .hero-media img { object-position:center; }
  .trust-cards,.journey-index-grid,.reassurance-grid { grid-template-columns:1fr; }
  .field-copy { padding:26px; }
  .field-image { min-height:380px; }
  .rokit-badge img { width:165px; }
}


/* V4: live conversion stack */
.consent-box { margin-top:18px; padding:16px; border:1px solid var(--line); border-radius:14px; background:var(--cream); }
.check-row { display:flex!important; align-items:flex-start; gap:11px; cursor:pointer; font-weight:500!important; }
.check-row input { width:18px!important; height:18px; margin-top:3px; flex:0 0 auto; accent-color:var(--teal); }
.check-row small { color:var(--muted); font-weight:500; }
.privacy-note { margin-top:14px; font-size:.82rem; color:var(--muted); }
.privacy-note a { text-decoration:underline; text-underline-offset:2px; }
.submit-status { margin-top:14px; padding:12px 14px; border-radius:10px; background:#eef4f2; color:var(--success); font-size:.88rem; }
.success-actions { display:flex; flex-direction:column; align-items:center; gap:10px; }
.success-actions .btn { min-width:250px; }
.calendar-note { margin-top:12px!important; font-size:.82rem; }
.legal h2 { margin-top:38px; font-size:2rem; }
.legal h3 { margin-top:26px; font-size:1.3rem; }
.legal p,.legal li { color:#4e6064; }
.legal p { margin-top:12px; }
.legal ul { padding-left:22px; }
.legal li { margin:8px 0; }


/* V5: journey presentation + conversion context */
.journey-detail-hero { background:var(--cream); border-bottom:1px solid var(--line); padding:38px 0 54px; }
.journey-detail-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:44px; align-items:center; }
.journey-detail-copy { padding:34px 0 28px; }
.journey-detail-copy h1 { margin-top:14px; font-size:clamp(3rem,5.6vw,5.25rem); max-width:760px; }
.journey-detail-copy > p { margin-top:19px; color:#4e6064; font-size:1.05rem; max-width:680px; }
.journey-detail-media { min-height:520px; height:58vw; max-height:620px; overflow:hidden; border-radius:28px; box-shadow:var(--shadow); background:#dfe6e3; }
.journey-detail-media img { width:100%; height:100%; object-fit:cover; object-position:center; }
.journey-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px 20px; margin-top:28px; }
.text-link { font-weight:800; color:var(--teal); text-decoration:underline; text-underline-offset:4px; }
.journey-disclaimer { margin-top:18px!important; font-size:.82rem!important; color:var(--muted)!important; max-width:620px!important; }
.journey-index-grid .card img,.journey-grid .card img { aspect-ratio:1.5/1; object-position:center; }
.journey-index-grid .card,.journey-grid .card { transition:transform .2s ease,box-shadow .2s ease; }
.journey-index-grid .card:hover,.journey-grid .card:hover { transform:translateY(-2px); box-shadow:0 16px 36px rgba(17,42,48,.10); }
.journey-context { margin-bottom:22px; padding:16px 18px; border:1px solid rgba(58,93,103,.22); border-left:4px solid var(--gold); border-radius:14px; background:#fffdf8; color:#4e6064; }
.journey-context strong { color:var(--ink); display:block; margin-bottom:3px; }
.fit-note { margin-top:8px; color:var(--muted); font-size:.82rem; }
@media(max-width:930px){
  .journey-detail-grid { grid-template-columns:1fr; gap:26px; }
  .journey-detail-copy { padding-bottom:0; }
  .journey-detail-media { min-height:430px; height:56vw; max-height:520px; }
}
@media(max-width:620px){
  .journey-detail-hero { padding:22px 0 40px; }
  .journey-detail-grid { gap:22px; }
  .journey-detail-copy h1 { font-size:clamp(2.55rem,12vw,4rem); }
  .journey-detail-copy > p { font-size:1rem; }
  .journey-detail-media { min-height:300px; height:72vw; max-height:420px; border-radius:20px; }
  .journey-hero-actions { align-items:stretch; flex-direction:column; }
  .journey-hero-actions .btn { width:100%; }
}

/* V6: destination expansion + Cloudflare conversion */
.dest-card.full { grid-column:1 / -1; min-height:260px; }
.dest-card.full img { object-position:center 58%; }
.text-only-card { min-height:250px; display:flex; align-items:stretch; background:linear-gradient(145deg,#fffdf8,#f6f2e8); }
.text-only-card .card-body { display:flex; flex-direction:column; justify-content:center; }
.turnstile-wrap { margin-top:18px; min-height:0; }
.honeypot-field { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.api-status { margin-top:14px; color:var(--muted); font-size:.82rem; }
@media(max-width:930px){
  .dest-card.full { grid-column:span 2; }
}
@media(max-width:620px){
  .dest-card.full { grid-column:span 1; min-height:220px; }
}
/* Country pages without verified hero imagery use a deliberate editorial treatment rather than a questionable photo. */
.dest-card.no-image {
  background:
    radial-gradient(circle at 78% 18%, rgba(199,171,45,.28), transparent 0 28%),
    linear-gradient(135deg, #1a4048, #0e2930);
}
.dest-card.no-image::after { background:linear-gradient(0deg,rgba(8,28,33,.62),rgba(8,28,33,.08)); }
.page-text-hero {
  min-height:500px;
  display:flex;
  align-items:end;
  color:white;
  background:
    radial-gradient(circle at 82% 18%, rgba(199,171,45,.20), transparent 0 26%),
    linear-gradient(135deg,#173f48 0%,#0d2b32 62%,#102127 100%);
}
.page-text-hero .container { padding-bottom:54px; padding-top:90px; }

/* V7.1: clearer journey cards + dual-path CTA polish */
.card-link {
  display:flex;
  flex-direction:column;
  min-height:100%;
  color:inherit;
  text-decoration:none;
  cursor:pointer;
}
.card-link .card-body {
  display:flex;
  flex:1;
  flex-direction:column;
}
.card-link .link-arrow {
  display:inline-flex;
  margin-top:auto;
  padding-top:14px;
  align-items:center;
}
.card-link:hover .link-arrow { text-decoration:underline; text-underline-offset:4px; }
.card-link:focus-visible {
  outline:3px solid var(--gold);
  outline-offset:4px;
}
.journey-card-image { transition:transform .35s ease; }
.card-link:hover .journey-card-image { transform:scale(1.018); }
.journey-index-grid .card img,.journey-grid .card img { object-position:center center; }
.journey-index-grid .card img.crop-vietnam-slow,.journey-grid .card img.crop-vietnam-slow { object-position:center 56%; }
.journey-index-grid .card img.crop-thailand,.journey-grid .card img.crop-thailand { object-position:center 62%; }
.journey-index-grid .card img.crop-cambodia,.journey-grid .card img.crop-cambodia { object-position:center 58%; }
.journey-index-grid .card img.crop-indonesia,.journey-grid .card img.crop-indonesia { object-position:center 45%; }
.journey-index-grid .card img.crop-indonesia-temple,.journey-grid .card img.crop-indonesia-temple { object-position:center 36%; }
.journey-index-grid .card img.crop-food,.journey-grid .card img.crop-food { object-position:center 46%; }
.journey-index-grid .card img.crop-angkor,.journey-grid .card img.crop-angkor { object-position:center 43%; }
.journey-index-grid .card img.crop-multi,.journey-grid .card img.crop-multi { object-position:center 54%; }
.journey-index-grid .card img.show-full-image,.journey-grid .card img.show-full-image {
  object-fit:contain;
  background:#eef1ee;
}
.final-grid > div:last-child { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.final-cta .btn-outline { color:white; border-color:rgba(255,255,255,.72); background:rgba(255,255,255,.04); }
.final-cta .btn-outline:hover { background:rgba(255,255,255,.10); }
.page-hero .btn + .btn,
.will-copy .btn + .btn { margin-left:10px; }
@media(max-width:620px){
  .page-hero .btn + .btn,
  .will-copy .btn + .btn { margin-left:0; margin-top:10px; }
  .page-hero .btn { width:100%; }
  .final-grid > div:last-child { align-items:stretch; flex-direction:column; }
  .final-grid > div:last-child .btn { width:100%; }
}
.journey-index-grid .card img.crop-vietnam,.journey-grid .card img.crop-vietnam { object-position:center 64%; }

/* V7.2: homepage rhythm + owned imagery + Field Notes */
.home-page .section { padding:118px 0; }
.home-page .section-tight { padding:72px 0; }
.home-page .home-narrow { width:min(1100px, calc(100% - 40px)); }
.home-page .home-hero { min-height:720px; }
.home-page .home-hero .hero-media img { object-position:center 48%; }
.home-page .home-hero::before { background:linear-gradient(90deg,rgba(8,28,33,.83),rgba(8,28,33,.48) 48%,rgba(8,28,33,.12) 78%); }
.home-page .hero-content { padding:155px 0 86px; }
.home-page .hero h1 { max-width:1050px; font-size:clamp(3.2rem,5.7vw,5.45rem); }
.home-page .hero-copy { max-width:690px; }
.home-page .grid-2 { gap:88px; }
.home-page .pillars { gap:30px; margin-top:48px; }
.home-page .home-section-head { margin-bottom:46px; align-items:flex-end; }
.home-page .home-section-head > div:first-child { max-width:760px; }
.home-page .section-note { line-height:1.68; }
.home-page .home-dest-grid { gap:20px; grid-auto-rows:265px; }
.home-page .journey-grid { margin-top:44px; gap:22px; }
.home-page .take-grid { margin-top:48px; gap:42px; }
.home-page .will-grid { gap:86px; }
.home-page .steps { margin-top:46px; gap:20px; }
.home-page .step { padding:30px; min-height:238px; }
.section-action { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:34px; }
.will-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.will-actions .btn + .btn { margin-left:0; }

.notes-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.note-card { display:flex; flex-direction:column; min-height:100%; overflow:hidden; border:1px solid var(--line); border-radius:20px; background:var(--paper); transition:transform .2s ease, box-shadow .2s ease; }
.note-card:hover { transform:translateY(-3px); box-shadow:0 16px 38px rgba(17,42,48,.09); }
.note-card:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.note-card img { width:100%; aspect-ratio:1.5/1; object-fit:cover; }
.note-card-body { display:flex; flex:1; flex-direction:column; padding:26px 26px 28px; }
.note-card h2,.note-card h3 { margin:10px 0 12px; }
.note-card h2 { font-size:clamp(1.7rem,2.8vw,2.35rem); }
.note-card p { color:var(--muted); font-size:.94rem; line-height:1.65; }
.note-card .link-arrow { margin-top:auto; padding-top:22px; }
.field-notes-home .note-card:first-child img { object-position:center 57%; }
.field-notes-home .note-card:nth-child(2) img { object-position:center 52%; }
.field-notes-home .note-card:nth-child(3) img { object-position:center 58%; }

.field-notes-index-hero { padding:132px 0 84px; }
.field-notes-index-hero h1 { max-width:780px; font-size:clamp(3.4rem,6.7vw,6.2rem); }
.field-notes-index-hero p { max-width:720px; font-size:1.12rem; line-height:1.7; }
.field-notes-index { padding:104px 0 122px; }
.notes-grid-index { gap:26px; }
.field-notes-promise { display:grid; grid-template-columns:.9fr 1.1fr; gap:80px; align-items:start; }

.field-note-hero { padding:58px 0 72px; background:var(--cream); border-bottom:1px solid var(--line); }
.field-note-hero-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:58px; align-items:center; }
.field-note-hero-copy { padding:26px 0; }
.field-note-hero h1 { margin-top:15px; max-width:760px; font-size:clamp(3.1rem,5.6vw,5.45rem); }
.field-note-dek { margin-top:22px; max-width:720px; font-family:Georgia,"Times New Roman",serif; font-size:1.35rem; line-height:1.5; color:#44595e; }
.byline { margin-top:26px; color:var(--muted); font-size:.86rem; font-weight:700; }
.field-note-hero-media { min-height:560px; height:58vw; max-height:650px; border-radius:28px; overflow:hidden; background:#dfe5e2; box-shadow:var(--shadow); }
.field-note-hero-media img { width:100%; height:100%; object-fit:cover; object-position:center; }
.field-note-hero-media.wide-image img { object-position:center center; }
.field-note-body { padding:88px 0 122px; }
.field-note-layout { display:grid; grid-template-columns:260px minmax(0,760px); gap:76px; justify-content:center; align-items:start; }
.field-note-aside { position:sticky; top:112px; border-top:2px solid var(--gold); padding-top:20px; }
.field-note-aside p { margin:12px 0 18px; color:#506267; line-height:1.65; font-size:.93rem; }
.article-prose { min-width:0; }
.article-prose > p { margin-top:22px; color:#40565b; font-size:1.04rem; line-height:1.82; }
.article-prose > p:first-child { margin-top:0; }
.article-prose .article-lede { font-family:Georgia,"Times New Roman",serif; font-size:1.62rem; line-height:1.55; color:var(--ink); }
.article-prose h2 { margin-top:62px; font-size:clamp(2rem,3.8vw,3rem); }
.note-callout { margin:42px 0; padding:26px 28px; border-left:4px solid var(--gold); background:var(--cream); border-radius:0 16px 16px 0; }
.note-callout strong { font-family:Georgia,"Times New Roman",serif; font-size:1.28rem; font-weight:500; color:var(--ink); }
.note-callout p { margin-top:9px; color:#506267; line-height:1.7; }
.watch-list { margin:22px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }
.watch-list li { padding:17px 0; border-bottom:1px solid var(--line); color:#40565b; line-height:1.65; }
.watch-list strong { color:var(--ink); }
.article-cta { display:grid; grid-template-columns:1fr auto; gap:34px; align-items:center; margin-top:68px; padding:34px; border-radius:22px; background:var(--ink); color:white; }
.article-cta .eyebrow { color:var(--gold-soft); }
.article-cta h2 { margin-top:8px; font-size:2rem; }
.article-cta p { margin-top:10px; color:rgba(255,255,255,.72); }
.fact-note { margin-top:44px; padding-top:22px; border-top:1px solid var(--line); color:var(--muted); font-size:.78rem; line-height:1.7; }
.fact-note a { text-decoration:underline; text-underline-offset:3px; }
.breadcrumb a { text-decoration:underline; text-underline-offset:3px; }

/* Owned-image refinements on destination pages */
.page-image-hero.owned-vietnam > img { object-position:center 50%; }
.page-image-hero.owned-cambodia > img { object-position:center 47%; }
.page-image-hero.owned-indonesia > img { object-position:center 58%; }

@media (max-width:930px){
  .home-page .section { padding:92px 0; }
  .home-page .grid-2,.home-page .will-grid { gap:52px; }
  .home-page .home-dest-grid { grid-auto-rows:245px; }
  .notes-grid { grid-template-columns:1fr 1fr; }
  .notes-grid .note-card:first-child { grid-column:1 / -1; }
  .notes-grid .note-card:first-child img { aspect-ratio:2/1; }
  .field-notes-promise { grid-template-columns:1fr; gap:32px; }
  .field-note-hero-grid { grid-template-columns:1fr; gap:32px; }
  .field-note-hero-copy { padding-bottom:0; }
  .field-note-hero-media { min-height:440px; height:56vw; max-height:560px; }
  .field-note-layout { grid-template-columns:1fr; gap:42px; max-width:800px; }
  .field-note-aside { position:static; }
}
@media (max-width:620px){
  .home-page .home-hero { min-height:700px; }
  .home-page .home-hero .hero-media img { object-position:center 48%; }
  .home-page .home-hero::before { background:linear-gradient(0deg,rgba(8,28,33,.86),rgba(8,28,33,.26) 74%); }
  .home-page .hero-content { padding:132px 0 66px; }
  .home-page .hero h1 { font-size:clamp(2.75rem,12vw,4.2rem); line-height:1.02; }
  .home-page .section { padding:76px 0; }
  .home-page .section-tight { padding:56px 0; }
  .home-page .home-narrow { width:min(100% - 28px,1100px); }
  .home-page .home-section-head { margin-bottom:34px; }
  .home-page .home-dest-grid { gap:14px; grid-auto-rows:225px; }
  .section-action { align-items:stretch; flex-direction:column; gap:14px; }
  .section-action .btn { width:100%; }
  .will-actions { flex-direction:column; }
  .will-actions .btn { width:100%; }
  .notes-grid { grid-template-columns:1fr; }
  .notes-grid .note-card:first-child { grid-column:auto; }
  .notes-grid .note-card:first-child img,.note-card img { aspect-ratio:1.42/1; }
  .note-card-body { padding:22px; }
  .field-notes-index-hero { padding:92px 0 58px; }
  .field-notes-index { padding:72px 0 86px; }
  .field-note-hero { padding:30px 0 42px; }
  .field-note-hero h1 { font-size:clamp(2.65rem,12vw,4rem); }
  .field-note-dek { font-size:1.16rem; }
  .field-note-hero-media { min-height:310px; height:75vw; max-height:440px; border-radius:20px; }
  .field-note-body { padding:64px 0 88px; }
  .article-prose .article-lede { font-size:1.4rem; }
  .article-prose h2 { margin-top:48px; }
  .note-callout { margin:34px 0; padding:22px; }
  .article-cta { grid-template-columns:1fr; padding:26px; margin-top:54px; }
  .article-cta .btn { width:100%; }
}
.related-note-section { padding-top:76px; padding-bottom:76px; }
.field-note-related { display:grid; grid-template-columns:1.05fr .95fr; min-height:360px; overflow:hidden; border-radius:24px; background:var(--cream); border:1px solid var(--line); transition:transform .2s ease,box-shadow .2s ease; }
.field-note-related:hover { transform:translateY(-2px); box-shadow:0 14px 34px rgba(17,42,48,.08); }
.field-note-related:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.field-note-related-copy { padding:44px; display:flex; flex-direction:column; justify-content:center; }
.field-note-related-copy h2 { margin-top:10px; font-size:clamp(2rem,3.8vw,3.15rem); }
.field-note-related-copy p { margin-top:14px; max-width:650px; color:var(--muted); line-height:1.7; }
.field-note-related-copy .link-arrow { margin-top:24px; }
.field-note-related-image { min-height:360px; }
.field-note-related-image img { width:100%; height:100%; object-fit:cover; }
@media(max-width:760px){
  .field-note-related { grid-template-columns:1fr; }
  .field-note-related-copy { padding:30px; }
  .field-note-related-image { min-height:280px; order:-1; }
}


/* V7.3: video-led layout rework
   Goal: tighter page rhythm, reliable image crops, and a more editorial premium feel. */
:root { --max: 1280px; }

@media (min-width:931px){
  .nav { height:76px; }
  .brand img { width:220px; }
}

/* Homepage hero: editorial split instead of a full-bleed crop. */
.home-editorial-hero {
  background:linear-gradient(145deg,#fffdf8 0%,#f6f2e8 100%);
  border-bottom:1px solid var(--line);
  padding:64px 0 70px;
}
.home-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);
  gap:60px;
  align-items:center;
}
.home-hero-copy .eyebrow { color:var(--teal); }
.home-hero-copy h1 {
  margin-top:16px;
  max-width:700px;
  font-size:clamp(3.35rem,4.9vw,5rem);
  line-height:1.01;
}
.home-hero-lede {
  margin-top:24px;
  max-width:650px;
  color:#4d6267;
  font-size:1.12rem;
  line-height:1.65;
}
.home-hero-copy .hero-actions { margin-top:30px; }
.home-hero-copy .btn-outline { background:rgba(255,255,255,.38); }
.home-hero-cred {
  margin-top:22px;
  color:var(--muted);
  font-size:.86rem;
}
.home-hero-gallery {
  height:590px;
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:minmax(0,1fr) 188px;
  gap:12px;
}
.home-hero-gallery figure {
  margin:0;
  overflow:hidden;
  border-radius:20px;
  background:#dce5e2;
  box-shadow:0 12px 34px rgba(17,42,48,.08);
}
.home-hero-gallery-main { grid-column:1 / -1; }
.home-hero-gallery img { width:100%; height:100%; object-fit:cover; }
.home-hero-gallery-main img { object-position:center 52%; }

/* Compact proof strip. */
.home-proof-bar {
  background:var(--paper);
  border-bottom:1px solid var(--line);
}
.home-proof-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.home-proof-grid > div {
  padding:20px 24px;
  border-right:1px solid var(--line);
}
.home-proof-grid > div:last-child { border-right:0; }
.home-proof-grid strong {
  display:block;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.08rem;
  font-weight:500;
}
.home-proof-grid span {
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.35;
}

/* Homepage vertical rhythm. */
.home-page .section { padding:88px 0; }
.home-page .section-tight { padding:58px 0; }
.home-page .home-section-head { margin-bottom:34px; }
.home-page .section-note { margin-top:14px; }
.home-intro-grid {
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:78px;
  align-items:start;
}
.home-intro-grid h2 { max-width:610px; }
.home-intro-grid .lede { max-width:650px; font-size:1.55rem; }
.home-pillars {
  margin-top:46px;
  grid-template-columns:repeat(3,1fr);
  gap:34px;
}
.home-pillars .pillar { padding-right:18px; }

/* Uniform destination cards prevent the long, uneven crops seen in the live scroll. */
.destination-tile-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.destination-tile {
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--paper);
  transition:transform .2s ease,box-shadow .2s ease;
}
.destination-tile:hover { transform:translateY(-2px); box-shadow:0 14px 32px rgba(17,42,48,.08); }
.destination-tile:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.destination-tile-media {
  aspect-ratio:16/10;
  overflow:hidden;
  background:#dce4e1;
}
.destination-tile-media img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.destination-tile:hover img { transform:scale(1.018); }
.destination-tile-copy { padding:18px 20px 20px; }
.destination-tile-copy h3 { font-size:1.58rem; }
.destination-tile-copy p { margin-top:5px; color:var(--muted); font-size:.86rem; }
.destination-tile-placeholder {
  display:flex;
  align-items:flex-end;
  padding:24px;
  background:
    radial-gradient(circle at 78% 20%,rgba(199,171,45,.32),transparent 0 28%),
    linear-gradient(145deg,#1a4048,#0e2930);
  color:rgba(255,255,255,.78);
}
.destination-tile-placeholder span { font-family:Georgia,serif; font-size:1.4rem; }

/* Journey cards: intrinsic height, fixed media window, no large empty white body. */
.journey-compact-grid { align-items:start; gap:20px; }
.journey-compact-grid .card-link { display:block; min-height:0; height:auto; }
.journey-compact-grid .journey-card-image {
  display:block;
  width:100%;
  height:240px;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
}
.journey-compact-grid .card-body { display:block; min-height:0; padding:22px 22px 24px; }
.journey-compact-grid .link-arrow { display:inline-flex; margin-top:18px; padding-top:0; }

/* Homepage Field Notes: one feature + two compact stories. */
.notes-editorial-grid {
  display:grid;
  grid-template-columns:1.17fr .83fr;
  gap:20px;
  align-items:stretch;
}
.note-feature,.note-side {
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--paper);
  transition:transform .2s ease,box-shadow .2s ease;
}
.note-feature:hover,.note-side:hover { transform:translateY(-2px); box-shadow:0 14px 34px rgba(17,42,48,.08); }
.note-feature:focus-visible,.note-side:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.note-feature { display:grid; grid-template-rows:300px 1fr; }
.note-feature-media,.note-side-media { overflow:hidden; background:#dde5e2; }
.note-feature-media img,.note-side-media img { width:100%; height:100%; object-fit:cover; }
.note-feature-copy { padding:26px 28px 28px; }
.note-feature-copy h3 { margin:9px 0 10px; font-size:2rem; }
.note-feature-copy p { color:var(--muted); line-height:1.65; }
.note-feature-copy .link-arrow { display:inline-flex; margin-top:18px; }
.note-side-list { display:grid; grid-template-rows:1fr 1fr; gap:20px; }
.note-side { display:grid; grid-template-columns:42% 58%; min-height:0; }
.note-side-copy { padding:22px 22px 20px; display:flex; flex-direction:column; justify-content:center; }
.note-side-copy h3 { margin:9px 0 14px; font-size:1.48rem; }
.note-side-copy .link-arrow { margin-top:auto; padding-top:6px; }

/* Keep the human section strong without letting the portrait dominate a full viewport. */
.home-will-grid { grid-template-columns:420px minmax(0,1fr); gap:76px; }
.home-will-grid .will-photo { min-height:0; height:500px; }
.home-will-grid .will-photo img { object-position:center 14%; }

/* Process: lighter, faster to scan. */
.home-process .steps { gap:26px; }
.home-process .step {
  min-height:0;
  padding:22px 12px 0 0;
  border-radius:0;
  border-top:1px solid var(--line);
  background:transparent;
}
.home-process .step-no { margin-bottom:20px; }
.home-process .step p { line-height:1.55; }

/* Field Notes index: editorial list instead of three oversized image cards. */
.field-notes-index-hero {
  padding:70px 0 68px;
  background:var(--cream);
  border-bottom:1px solid var(--line);
}
.field-notes-index-head {
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:80px;
  align-items:end;
}
.field-notes-index-head h1 {
  margin-top:12px;
  max-width:720px;
  font-size:clamp(3.2rem,5vw,4.8rem);
  line-height:1.02;
}
.field-notes-index-head > p {
  max-width:650px;
  padding-bottom:8px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.72;
}
.field-notes-index { padding:78px 0 94px; }
.field-notes-list { display:grid; gap:22px; }
.field-note-row {
  display:grid;
  grid-template-columns:42% 58%;
  min-height:320px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--paper);
  transition:transform .2s ease,box-shadow .2s ease;
}
.field-note-row:nth-child(even) { grid-template-columns:58% 42%; }
.field-note-row:nth-child(even) .field-note-row-media { order:2; }
.field-note-row:hover { transform:translateY(-2px); box-shadow:0 14px 34px rgba(17,42,48,.08); }
.field-note-row:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.field-note-row-media { min-height:320px; overflow:hidden; background:#dce5e2; }
.field-note-row-media img { width:100%; height:100%; object-fit:cover; }
.field-note-row-copy { padding:38px 42px; display:flex; flex-direction:column; justify-content:center; }
.field-note-row-copy h2 { margin:10px 0 14px; font-size:clamp(2rem,3.1vw,2.8rem); }
.field-note-row-copy p { max-width:660px; color:var(--muted); line-height:1.7; }
.field-note-row-copy .link-arrow { margin-top:22px; }
.field-notes-promise-section { padding:78px 0; }

/* Article heroes use dedicated wide derivatives so faces/temples/roads are not sliced unpredictably. */
.field-note-hero { padding:48px 0 56px; }
.field-note-hero-media { min-height:460px; height:43vw; max-height:560px; }
.field-note-hero-media img,.field-note-hero-media.wide-image img { object-position:center center; }

/* Interior page hero spacing also benefits from the same restraint. */
.page-hero { padding:92px 0 60px; }
.page-image-hero,.page-text-hero { min-height:460px; }
.page-text-hero .container { padding-top:76px; padding-bottom:48px; }

@media (max-width:930px){
  .home-hero-grid { grid-template-columns:1fr; gap:38px; }
  .home-editorial-hero { padding:52px 0 60px; }
  .home-hero-copy h1 { max-width:820px; }
  .home-hero-gallery { height:520px; grid-template-rows:minmax(0,1fr) 170px; }
  .home-proof-grid { grid-template-columns:1fr 1fr; }
  .home-proof-grid > div:nth-child(2) { border-right:0; }
  .home-proof-grid > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .home-page .section { padding:76px 0; }
  .home-intro-grid { grid-template-columns:1fr; gap:28px; }
  .home-pillars { margin-top:38px; }
  .destination-tile-grid { grid-template-columns:1fr 1fr; }
  .notes-editorial-grid { grid-template-columns:1fr; }
  .note-side-list { grid-template-columns:1fr 1fr; grid-template-rows:auto; }
  .note-side { display:block; }
  .note-side-media { height:210px; }
  .home-will-grid { grid-template-columns:360px minmax(0,1fr); gap:52px; }
  .field-notes-index-head { grid-template-columns:1fr; gap:24px; }
  .field-note-row,.field-note-row:nth-child(even) { grid-template-columns:44% 56%; }
  .field-note-row:nth-child(even) .field-note-row-media { order:0; }
}

@media (max-width:620px){
  .home-editorial-hero { padding:38px 0 46px; }
  .home-hero-copy h1 { font-size:clamp(2.7rem,11.5vw,3.75rem); }
  .home-hero-lede { font-size:1rem; }
  .home-hero-copy .hero-actions { flex-direction:column; align-items:stretch; }
  .home-hero-copy .hero-actions .btn { width:100%; }
  .home-hero-gallery {
    height:auto;
    grid-template-rows:auto auto;
    gap:10px;
  }
  .home-hero-gallery-main { aspect-ratio:16/10; }
  .home-hero-gallery figure:not(.home-hero-gallery-main) { aspect-ratio:1/1; }
  .home-proof-grid { grid-template-columns:1fr 1fr; }
  .home-proof-grid > div { padding:16px 14px; }
  .home-page .section { padding:64px 0; }
  .home-page .section-tight { padding:48px 0; }
  .home-pillars { grid-template-columns:1fr; gap:24px; margin-top:34px; }
  .destination-tile-grid { grid-template-columns:1fr; gap:14px; }
  .destination-tile-copy { padding:16px 18px 18px; }
  .journey-compact-grid .journey-card-image { height:220px; }
  .note-feature { grid-template-rows:220px auto; }
  .note-feature-copy { padding:22px; }
  .note-feature-copy h3 { font-size:1.72rem; }
  .note-side-list { grid-template-columns:1fr; }
  .note-side { display:grid; grid-template-columns:38% 62%; }
  .note-side-media { height:auto; min-height:160px; }
  .note-side-copy { padding:18px; }
  .note-side-copy h3 { font-size:1.25rem; }
  .home-will-grid { grid-template-columns:1fr; gap:34px; }
  .home-will-grid .will-photo { height:440px; }
  .home-process .steps { grid-template-columns:1fr; gap:26px; }
  .field-notes-index-hero { padding:52px 0 48px; }
  .field-notes-index-head h1 { font-size:clamp(2.7rem,11vw,3.6rem); }
  .field-notes-index { padding:58px 0 72px; }
  .field-note-row,.field-note-row:nth-child(even) { grid-template-columns:1fr; min-height:0; }
  .field-note-row-media { min-height:0; aspect-ratio:16/10; }
  .field-note-row-copy { padding:24px 22px 26px; }
  .field-note-row-copy h2 { font-size:2rem; }
  .field-note-hero { padding:34px 0 42px; }
  .field-note-hero-media { min-height:0; height:auto; aspect-ratio:16/10; max-height:none; }
  .page-hero { padding:68px 0 48px; }
  .page-image-hero,.page-text-hero { min-height:420px; }
}

/* V7.3 mobile CTA: do not cover the hero CTAs; reveal after the user has scrolled. */
.mobile-cta { opacity:0; pointer-events:none; transform:translateY(18px); transition:opacity .2s ease,transform .2s ease; }
.mobile-cta.is-visible { opacity:1; pointer-events:auto; transform:translateY(0); }
@media(min-width:931px){ .mobile-cta,.mobile-cta.is-visible { display:none; } }
