
:root{
  --navy:#071827;
  --navy-2:#0b2234;
  --navy-3:#12364b;
  --ink:#0e1b25;
  --ivory:#f8f2e8;
  --ivory-2:#efe4d4;
  --champagne:#ead7b5;
  --gold:#c8a15e;
  --gold-2:#e4c985;
  --gold-deep:#96703a;
  --taupe:#bba88f;
  --muted:#6a6a68;
  --white:#fffdf9;
  --line:rgba(10,28,40,.13);
  --line-light:rgba(255,255,255,.16);
  --shadow:0 28px 90px rgba(8,24,36,.14);
  --shadow-soft:0 16px 42px rgba(8,24,36,.08);
  --radius:30px;
  --serif:"Baskerville","Baskerville Old Face","Hoefler Text","Iowan Old Style","Palatino Linotype",Georgia,serif;
  --sans:"Avenir Next","Segoe UI",Inter,Arial,sans-serif;
  --max:1280px;
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ivory)}
body{
  margin:0;
  color:var(--ink);
  font-family:var(--sans);
  background:#f6efe3;
  line-height:1.55;
  overflow-x:hidden;
  position:relative;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 10%, rgba(245,219,172,.72), transparent 22rem),
    radial-gradient(circle at 84% 12%, rgba(88,124,142,.38), transparent 26rem),
    radial-gradient(circle at 26% 60%, rgba(255,248,238,.60), transparent 24rem),
    radial-gradient(circle at 86% 78%, rgba(16,57,81,.18), transparent 24rem),
    linear-gradient(180deg, #fcf7ef 0%, #f2e6d6 24%, #f7efe4 48%, #e9d9c2 72%, #f8f3ea 100%);
}
body::after{
  content:"AL";
  position:fixed;
  left:50%;
  top:10vh;
  transform:translateX(-50%);
  z-index:-2;
  pointer-events:none;
  font:italic 400 min(40vw,31rem)/1 var(--serif);
  letter-spacing:-.12em;
  color:rgba(255,255,255,.23);
  mix-blend-mode:soft-light;
  opacity:.58;
  filter:blur(.4px);
}
main, footer, .site-header{position:relative; z-index:1;}
img,video,iframe,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{color:inherit}
::selection{background:var(--gold);color:var(--navy)}
.container{width:min(calc(100% - 44px),var(--max));margin:auto}
.eyebrow{font-size:.69rem;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:var(--gold-deep)}
.kicker{font-size:.76rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.muted{color:var(--muted)}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;padding:10px 14px;z-index:1000}
.rule{height:1px;background:var(--line)}
.gold-rule{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.button{
  min-height:48px;padding:0 21px;border-radius:999px;border:1px solid transparent;
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-size:.75rem;letter-spacing:.07em;text-transform:uppercase;font-weight:800;
  transition:transform .24s var(--ease),box-shadow .24s var(--ease),background .24s;
  cursor:pointer;
}
.button:hover{transform:translateY(-2px)}
.button-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:var(--navy);box-shadow:0 12px 30px rgba(151,112,58,.22)}
.button-navy{background:var(--navy);color:white;border-color:rgba(255,255,255,.06)}
.button-ghost{border-color:var(--line);background:rgba(255,255,255,.48)}
.button-light{border-color:rgba(255,255,255,.28);color:white;background:rgba(255,255,255,.04)}
.text-link{font-size:.76rem;text-transform:uppercase;letter-spacing:.09em;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:4px}
.reveal{opacity:1;transform:none;transition:opacity .65s var(--ease),transform .65s var(--ease)}
.reveal-ready .reveal{opacity:0;transform:translateY(18px)}
.reveal-ready .reveal.in{opacity:1;transform:none}

/* Header */
.site-header{
  position:sticky;top:0;z-index:80;
  background:linear-gradient(180deg,rgba(7,24,39,.94),rgba(7,24,39,.82));color:white;
  border-bottom:1px solid rgba(228,201,133,.24);
  backdrop-filter:blur(22px);
  box-shadow:0 8px 24px rgba(7,24,39,.08);
}
.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px}
.brand-monogram{
  width:43px;height:43px;border:1px solid rgba(228,201,133,.55);border-radius:50%;
  display:grid;place-items:center;font-family:var(--serif);font-size:1rem;color:var(--gold-2)
}
.brand strong{display:block;font-family:var(--serif);font-weight:500;font-size:1.04rem;letter-spacing:.02em}
.brand small{display:block;color:#c7c7c1;font-size:.59rem;letter-spacing:.13em;text-transform:uppercase;margin-top:1px}
.nav-links{display:flex;align-items:center;gap:27px;font-size:.69rem;letter-spacing:.1em;text-transform:uppercase;color:#e8e5df}
.nav-links a{position:relative}
.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:right .22s}
.nav-links a:hover:after{right:0}
.nav-actions{display:flex;align-items:center;gap:9px}
.menu{display:none;border:0;background:none;color:#fff;font-size:1.45rem;padding:8px}
.mobile-nav{display:none;background:var(--navy);padding:0 22px 20px;gap:8px}
.mobile-nav.open{display:grid}
.mobile-nav a{padding:9px 0;border-bottom:1px solid var(--line-light);font-size:.77rem;text-transform:uppercase;letter-spacing:.09em}

/* Hero */
.hero{
  position:relative;isolation:isolate;overflow:hidden;
  background:
    linear-gradient(104deg,rgba(252,247,239,.88) 0%,rgba(248,239,226,.78) 44%,rgba(221,206,184,.34) 68%,rgba(7,24,39,.08) 100%);
  border-bottom:1px solid rgba(151,112,58,.10);
}
.hero:before{
  content:"AL";position:absolute;left:-.05em;top:.02em;z-index:-1;
  font-family:var(--serif);font-size:min(48vw,44rem);line-height:.7;font-style:italic;
  color:rgba(151,112,58,.045);letter-spacing:-.13em;pointer-events:none
}
.hero:after{
  content:"";position:absolute;inset:0;z-index:-2;
  background:
    radial-gradient(circle at 22% 15%,rgba(255,255,255,.76),transparent 25rem),
    linear-gradient(135deg,rgba(228,201,133,.09),transparent 40%);
}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:790px;align-items:stretch}
.hero-copy{padding:105px 5vw 74px 0;display:flex;flex-direction:column;justify-content:center;position:relative}
.hero-copy .eyebrow{color:#7b5a31}
.hero-title{margin:17px 0 25px;letter-spacing:-.065em;color:var(--navy)}
.hero-title .line-one{
  display:block;font:500 clamp(4.5rem,8vw,8.2rem)/.89 var(--serif);
}
.hero-title .line-two{
  display:block;font:italic 400 clamp(4.0rem,7.2vw,7.4rem)/.98 var(--serif);
  color:var(--gold-deep);margin-top:.13em;
}
.hero-lede{max-width:630px;font-size:clamp(1.03rem,1.35vw,1.22rem);color:#3d484e;margin:0}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}
.hero-proof{
  display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:48px;padding-top:21px;border-top:1px solid rgba(10,28,40,.13);
  color:#4e585c;font-size:.71rem;letter-spacing:.06em;text-transform:uppercase
}
.hero-proof b{color:var(--navy);font-weight:800}
.hero-photo{position:relative;min-height:790px;overflow:hidden}
.hero-photo:before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(90deg,#f6eddf 0%,rgba(246,237,223,.45) 11%,transparent 35%),
             linear-gradient(0deg,rgba(7,24,39,.15),transparent 28%);
}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 34%;filter:saturate(.96) contrast(1.01);image-rendering:auto}
.hero-card{
  position:absolute;right:24px;bottom:24px;z-index:3;
  width:min(260px,72%);padding:18px 19px;border-radius:20px;
  background:rgba(251,247,239,.92);border:1px solid rgba(255,255,255,.8);box-shadow:0 20px 55px rgba(7,24,39,.16);
  backdrop-filter:blur(16px)
}
.hero-card .tiny-mark{font-family:var(--serif);font-size:1.3rem;color:var(--gold-deep)}
.hero-card strong{display:block;font-family:var(--serif);font-size:1.38rem;font-weight:500;margin:5px 0 2px}
.hero-card span{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#5e686c}

/* Journey ribbon */
.ribbon{background:var(--navy);color:white;border-top:1px solid rgba(228,201,133,.26);border-bottom:1px solid rgba(228,201,133,.22)}
.ribbon-inner{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;padding:17px 0;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:#d9d5cf}
.ribbon-inner span:not(:last-child):after{content:"◆";font-size:.45rem;margin-left:30px;color:var(--gold)}

/* Section framework */
.section{
  padding:105px 0;
  position:relative;
}
.section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.02) 15%,rgba(255,255,255,.06) 88%,rgba(255,255,255,.10));
}
.section > .container{position:relative;z-index:1;}
.section-heading{display:grid;grid-template-columns:1fr .68fr;gap:50px;align-items:end;margin-bottom:42px}
.section-heading h2{font:500 clamp(3.4rem,6.1vw,6.3rem)/.9 var(--serif);letter-spacing:-.052em;margin:10px 0 0;color:var(--navy)}
.section-heading p{margin:0;color:var(--muted);font-size:.98rem;max-width:560px}
.section-dark{
  background:linear-gradient(145deg,rgba(7,24,39,.96) 0%,rgba(13,41,61,.92) 58%,rgba(7,24,39,.96) 100%);
  color:white;position:relative;overflow:hidden;
  border-top:1px solid rgba(255,255,255,.04);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.section-dark .section-heading h2{color:white}
.section-dark .section-heading p{color:#b9c3c9}
.section-dark .eyebrow{color:var(--gold-2)}
.section-dark:before{
  content:"AL";position:absolute;right:-.1em;bottom:-.3em;font:italic 400 min(35vw,34rem)/1 var(--serif);
  color:rgba(255,255,255,.022);letter-spacing:-.1em;pointer-events:none
}

/* Intro / services */
.intro-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:20px}
.intro-card{
  background:rgba(255,255,255,.7);border:1px solid rgba(10,28,40,.1);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow-soft)
}
.intro-card h3{font:500 2.7rem/1 var(--serif);letter-spacing:-.035em;margin:8px 0 17px;color:var(--navy)}
.intro-card p{color:#515b5f}
.intro-photo{border-radius:var(--radius);min-height:545px;overflow:hidden;position:relative;box-shadow:var(--shadow-soft)}
.intro-photo img{width:100%;height:100%;object-fit:cover;object-position:48% 34%}
.intro-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,24,39,.54),transparent 42%)}
.intro-caption{position:absolute;left:25px;right:25px;bottom:24px;z-index:2;color:white}
.intro-caption strong{font:500 2rem/1 var(--serif);display:block;margin-bottom:5px}
.intro-caption span{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#e4ddd3}
.services{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:18px}
.service{
  min-height:260px;padding:23px;border-radius:24px;border:1px solid var(--line);background:rgba(255,255,255,.46);
  display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s var(--ease),background .25s
}
.service:hover{transform:translateY(-5px);background:white}
.service .icon{
  width:47px;height:47px;border-radius:50%;border:1px solid rgba(151,112,58,.28);
  display:grid;place-items:center;color:var(--gold-deep);font-family:var(--serif);font-size:1.15rem
}
.service h3{font:500 1.65rem/1 var(--serif);margin:48px 0 8px;color:var(--navy)}
.service p{margin:0;color:var(--muted);font-size:.78rem}

/* Social / video wall */
.video-wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;position:relative;z-index:2}
.reel-card{
  border-radius:28px;overflow:hidden;background:#020508;border:1px solid rgba(255,255,255,.12);
  box-shadow:0 22px 70px rgba(0,0,0,.25)
}
.reel-window{position:relative;aspect-ratio:9/16;max-height:720px;background:#000;overflow:hidden}
.reel-window iframe{
  width:100%;height:100%;border:0;display:block;overflow:hidden;
}
.reel-fallback{
  position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;
  background:
    linear-gradient(0deg,rgba(4,11,18,.9),rgba(4,11,18,.1) 62%),
    radial-gradient(circle at 70% 20%,rgba(228,201,133,.18),transparent 32%),
    linear-gradient(145deg,#173b50,#071827);
  z-index:0
}
.reel-fallback strong{font:500 2.1rem/1 var(--serif);max-width:260px}
.reel-fallback span{font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;color:#d8c7a9;margin-bottom:9px}
.reel-window iframe{position:relative;z-index:1;background:transparent}
.reel-meta{padding:16px 18px 19px;display:flex;justify-content:space-between;gap:16px;align-items:center;background:#091a28}
.reel-meta strong{font:500 1.18rem var(--serif)}
.reel-meta a{color:#d4bc8a;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}
.video-disclosure{margin-top:18px;color:#aab6bc;font-size:.72rem;max-width:760px}

/* Destination editorial cards */
.destination-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:285px;gap:14px}
.destination-card{
  position:relative;overflow:hidden;border-radius:27px;border:1px solid var(--line);
  padding:25px;display:flex;flex-direction:column;justify-content:flex-end;background:#fff;box-shadow:var(--shadow-soft)
}
.destination-card:before{content:"";position:absolute;inset:0;transition:transform .5s var(--ease)}
.destination-card:hover:before{transform:scale(1.04)}
.destination-card>*{position:relative;z-index:2}
.destination-card .label{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:#f7ead5}
.destination-card h3{font:500 2.15rem/.95 var(--serif);margin:8px 0;color:white}
.destination-card p{font-size:.74rem;color:#e9e4dd;max-width:380px;margin:0}
.destination-card.a{grid-row:span 2}
.destination-card.a:before{background:linear-gradient(0deg,rgba(4,17,26,.87),transparent 55%),linear-gradient(145deg,#6c8f94,#d7bea1 55%,#19394a)}
.destination-card.b:before{background:linear-gradient(0deg,rgba(4,17,26,.86),transparent 60%),linear-gradient(145deg,#d6b786,#637f82 58%,#21384c)}
.destination-card.c:before{background:linear-gradient(0deg,rgba(4,17,26,.86),transparent 60%),linear-gradient(145deg,#416f76,#9fc2be 55%,#071827)}
.destination-card.d{grid-column:span 2}
.destination-card.d:before{background:linear-gradient(0deg,rgba(4,17,26,.88),transparent 60%),linear-gradient(120deg,#c6a673,#7f9d9c 42%,#16364b)}

/* Client notes */
.client-proof{
  background:linear-gradient(135deg,rgba(240,228,210,.72) 0%,rgba(251,245,236,.76) 54%,rgba(230,214,191,.68) 100%);
  backdrop-filter:blur(3px);
}
.client-lead{display:grid;grid-template-columns:.74fr 1.26fr;gap:16px;margin-bottom:16px}
.client-panel{border-radius:28px;padding:31px;background:var(--navy);color:white;display:flex;flex-direction:column;justify-content:space-between;min-height:310px;box-shadow:var(--shadow-soft)}
.client-panel h3{font:500 clamp(2.3rem,4vw,4.1rem)/.96 var(--serif);letter-spacing:-.04em;margin:20px 0}
.client-panel p{color:#c4cdd1}
.client-feature{border-radius:28px;padding:36px;background:rgba(255,255,255,.76);border:1px solid rgba(10,28,40,.09);display:flex;flex-direction:column;justify-content:center}
.client-feature blockquote{font:500 clamp(2rem,3.3vw,3.55rem)/1.03 var(--serif);letter-spacing:-.03em;margin:0;color:var(--navy)}
.client-feature p{font-size:.73rem;color:var(--muted);margin:22px 0 0}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.quote-card{border-radius:22px;background:rgba(255,255,255,.66);border:1px solid rgba(10,28,40,.09);padding:23px;min-height:225px;display:flex;flex-direction:column}
.quote-card .where{font-size:.64rem;letter-spacing:.13em;text-transform:uppercase;color:#7d6d58}
.quote-card blockquote{font:500 1.27rem/1.18 var(--serif);margin:28px 0 22px;color:var(--navy)}
.quote-card a{margin-top:auto;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#67543a}

/* Process */
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.process-step{padding:26px 22px 30px;border-top:1px solid var(--gold);position:relative}
.process-step .symbol{width:54px;height:54px;border-radius:50%;border:1px solid rgba(200,161,94,.36);display:grid;place-items:center;font-family:var(--serif);font-size:1.15rem;color:var(--gold-deep)}
.process-step h3{font:500 1.65rem/1 var(--serif);margin:45px 0 9px;color:var(--navy)}
.process-step p{font-size:.78rem;color:var(--muted);margin:0}

/* Portal promo */
.portal-section{background:linear-gradient(145deg,#dbe7e3,#edf1ea 58%,#e6d8c4)}
.portal-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:42px;align-items:center}
.portal-copy h2{font:500 clamp(3.7rem,6.2vw,6.5rem)/.9 var(--serif);letter-spacing:-.05em;margin:10px 0 20px;color:var(--navy)}
.portal-list{display:grid;gap:9px;margin:25px 0}
.portal-list div{display:flex;gap:10px;align-items:center;font-size:.81rem}
.portal-list i{width:24px;height:24px;border-radius:50%;background:var(--navy);color:white;display:grid;place-items:center;font-style:normal;font-size:.65rem}
.portal-demo{border-radius:29px;padding:17px;background:#f9f6ef;border:1px solid var(--line);box-shadow:var(--shadow)}
.portal-demo-top{background:var(--navy);color:white;border-radius:20px;padding:23px}
.portal-demo-top h3{font:500 2.7rem/1 var(--serif);margin:4px 0}
.trip-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:9px}
.trip-mini{min-height:175px;border-radius:18px;border:1px solid var(--line);background:white;padding:14px;display:flex;flex-direction:column;justify-content:flex-end}
.trip-mini:first-child{color:white;background:linear-gradient(145deg,#214e58,#9bb5ad)}
.trip-mini strong{font:500 1.25rem/1 var(--serif)}
.trip-mini small{font-size:.66rem;color:#6c7473}
.trip-mini:first-child small{color:#e3eeeb}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px}
.faq-intro h2{font:500 clamp(3.3rem,5.6vw,5.7rem)/.9 var(--serif);letter-spacing:-.05em;margin:10px 0 18px;color:var(--navy)}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item button{width:100%;padding:20px 0;border:0;background:none;display:flex;justify-content:space-between;text-align:left;cursor:pointer;font:500 1.18rem var(--serif)}
.faq-item button span:last-child{font-family:var(--sans);font-size:1rem}
.faq-answer{display:none;padding:0 40px 20px 0;color:var(--muted);font-size:.84rem}
.faq-item.open .faq-answer{display:block}

/* Contact */
.contact-wrap{background:linear-gradient(135deg,var(--navy),#0f3046 58%,#071827);border-radius:36px;padding:clamp(32px,6vw,70px);color:white;position:relative;overflow:hidden}
.contact-wrap:after{content:"AL";position:absolute;right:-.05em;bottom:-.35em;font:italic 400 min(34vw,25rem)/1 var(--serif);color:rgba(255,255,255,.025);letter-spacing:-.1em}
.contact-grid{position:relative;z-index:2;display:grid;grid-template-columns:.7fr 1.3fr;gap:50px}
.contact-copy h2{font:500 clamp(3.6rem,6vw,6.2rem)/.9 var(--serif);letter-spacing:-.05em;margin:10px 0 18px}
.contact-copy p{color:#c4cdd1}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.field{display:grid;gap:6px}
.field.wide{grid-column:1/-1}
.field label{font-size:.63rem;text-transform:uppercase;letter-spacing:.12em;color:#d8d2c8}
.field input,.field textarea,.field select{width:100%;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.075);color:white;border-radius:14px;padding:12px 13px;outline:none}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold)}
.field textarea{min-height:115px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#8fa0a9}
.form-note{font-size:.68rem;color:#9bacb5;margin-top:9px}
.contact-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}

/* Footer */
footer{
  margin-top:90px;background:
    radial-gradient(circle at 50% 0,rgba(200,161,94,.11),transparent 32rem),
    linear-gradient(180deg,rgba(8,26,41,.98),rgba(6,19,30,.98));
  color:white;border-top:1px solid rgba(228,201,133,.24)
}
.footer-main{padding:58px 0 34px}
.footer-grid{display:grid;grid-template-columns:1.25fr .6fr .6fr;gap:36px}
.footer-title{font:500 2.45rem/1 var(--serif);color:#f7f0e4}
.footer-sub{color:#9faeb5;max-width:410px;font-size:.78rem;margin-top:13px}
.footer-links{display:grid;gap:9px;font-size:.75rem;color:#cbd2d5}
.footer-links strong{font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-2);margin-bottom:4px}

.copyright{border-top:1px solid rgba(255,255,255,.09);padding:20px 0 27px;display:flex;justify-content:space-between;gap:22px;font-size:.65rem;color:#8799a2}

/* Secondary pages */
.page-hero{
  padding:110px 0 76px;
  background:linear-gradient(125deg,rgba(248,242,232,.76),rgba(232,218,198,.62));
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(151,112,58,.10);
}
.page-hero:after{content:"AL";position:absolute;right:-.06em;top:-.22em;font:italic 400 min(35vw,24rem)/1 var(--serif);color:rgba(151,112,58,.05);letter-spacing:-.1em}
.page-hero h1{font:500 clamp(4.4rem,8vw,8rem)/.86 var(--serif);letter-spacing:-.06em;margin:12px 0 20px;color:var(--navy);position:relative;z-index:2}
.page-hero p{max-width:720px;color:#555f63;position:relative;z-index:2}
.content-narrow{max-width:900px}
.editorial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}
.editorial-card{background:white;border:1px solid var(--line);border-radius:25px;padding:27px}
.editorial-card h2,.editorial-card h3{font:500 2rem/1 var(--serif);margin:8px 0 12px;color:var(--navy)}
.editorial-card p{font-size:.84rem;color:var(--muted)}
.review-list{display:grid;gap:11px}
.review-row{background:white;border:1px solid var(--line);border-radius:23px;padding:24px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.review-row blockquote{font:500 1.45rem/1.18 var(--serif);margin:9px 0;color:var(--navy)}
.review-row span{font-size:.65rem;letter-spacing:.13em;text-transform:uppercase;color:#7c6b54}
.review-row a{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:#6d5737}

/* Accessibility / responsive */
@media(max-width:1040px){
  .nav-links{display:none}.menu{display:block}
  .hero-grid,.section-heading,.intro-grid,.client-lead,.portal-grid,.faq-grid,.contact-grid{grid-template-columns:1fr}
  .hero-copy{padding:88px 0 56px}.hero-photo{min-height:650px}
  .services,.process-grid{grid-template-columns:1fr 1fr}
  .video-wall{grid-template-columns:1fr 1fr}.reel-card:first-child{max-width:480px}
  .destination-grid{grid-template-columns:1fr 1fr}.destination-card.a{grid-row:span 1}.destination-card.d{grid-column:span 2}
  .quote-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-title-wrap{grid-column:1/-1}
}
@media(max-width:680px){
  .container{width:min(calc(100% - 28px),var(--max))}
  .nav-actions>.button{display:none}
  .hero-grid{min-height:0}.hero-copy{padding:72px 0 46px}
  .hero-title .line-one{font-size:clamp(4rem,19vw,6rem);line-height:.92}
  .hero-title .line-two{font-size:clamp(3.3rem,16vw,5.4rem);line-height:1.02;margin-top:.17em}
  .hero-photo{min-height:540px}.hero-card{right:14px;bottom:14px}
  .ribbon-inner{justify-content:flex-start;gap:12px}.ribbon-inner span:not(:last-child):after{margin-left:12px}
  .section{padding:75px 0}
  .services,.process-grid,.video-wall,.destination-grid,.quote-grid,.trip-mini-grid,.contact-form,.editorial-grid{grid-template-columns:1fr}
  .destination-card.d{grid-column:auto}.destination-grid{grid-auto-rows:270px}
  .reel-card:first-child{max-width:none}.reel-window{max-height:none}
  .client-panel{min-height:260px}
  .field.wide{grid-column:auto}
  .footer-grid{grid-template-columns:1fr}.footer-title-wrap{grid-column:auto}
  .copyright{display:grid}
  .review-row{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .reveal-ready .reveal,.reveal{opacity:1;transform:none}
}

@media(min-width:1041px){
  .hero-photo img{object-position:50% 28%}
}

.travel-notebook{min-height:545px;border-radius:var(--radius);padding:34px;background:linear-gradient(145deg,rgba(7,24,39,.98),rgba(13,42,58,.96));color:white;border:1px solid rgba(228,201,133,.18);box-shadow:var(--shadow-soft);position:relative;overflow:hidden}
.travel-notebook:after{content:"AL";position:absolute;right:-.08em;bottom:-.22em;font:italic 400 14rem/1 var(--serif);color:rgba(255,255,255,.025);letter-spacing:-.1em}
.travel-notebook .eyebrow{color:var(--gold-2)}
.notebook-line{position:relative;z-index:2;display:grid;grid-template-columns:42px 1fr;gap:14px;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.11)}
.notebook-line span{color:var(--gold);font:500 1rem var(--serif)}.notebook-line strong{font:500 1.38rem/1.08 var(--serif)}
.notebook-note{position:relative;z-index:2;color:#bcc7cc;max-width:520px;margin:27px 0 0;font-size:.83rem}
.social-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.social-link-card{min-height:280px;border:1px solid rgba(255,255,255,.13);border-radius:28px;padding:25px;background:radial-gradient(circle at 88% 12%,rgba(228,201,133,.14),transparent 12rem),linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:18px 20px;color:white;transition:transform .24s var(--ease),border-color .24s,background .24s}
.social-link-card:hover{transform:translateY(-5px);border-color:rgba(228,201,133,.46);background:rgba(255,255,255,.08)}
.social-index{font:italic 400 3.6rem/.9 var(--serif);color:rgba(228,201,133,.78)}
.social-link-card small{font-size:.63rem;letter-spacing:.15em;text-transform:uppercase;color:#d8c5a3}
.social-link-card h2,.social-link-card h3{font:500 2.25rem/.98 var(--serif);margin:9px 0;color:white}.social-link-card p{color:#b7c3c9;font-size:.8rem;max-width:430px;margin:0}
.social-link-card b{grid-column:2;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-2)}
@media(max-width:680px){.social-link-grid{grid-template-columns:1fr}.social-link-card{min-height:235px}}

.host-credit{
  padding:8px 0 7px;
  border-top:1px solid rgba(255,255,255,.05);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:34px;
}
.host-credit>span{
  font-size:.46rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#5d7079;
}
.host-credit a{
  display:block;
  width:62px;
  flex:0 0 auto;
  line-height:0;
}
.host-credit img{
  width:100%;
  height:auto;
  border:0;
  border-radius:4px;
  opacity:.50;
  box-shadow:none;
}
.host-credit small{
  font-size:.47rem;
  color:#5d7079;
  white-space:nowrap;
}
@media(max-width:680px){
  .host-credit{
    display:grid;
    grid-template-columns:auto 58px;
    justify-content:center;
    text-align:center;
    gap:4px 7px;
  }
  .host-credit small{
    grid-column:1/-1;
    white-space:normal;
  }
}

.section-link{margin:26px 0 0}
.section-link-light .text-link{color:#e4c985}
.process-grid-three{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.process-grid-three{grid-template-columns:1fr}}

.process-actions{display:flex;flex-wrap:wrap;gap:8px 15px;margin-top:20px}
.process-link{display:inline-flex;align-items:center;font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;font-weight:800;color:var(--gold-deep);border-bottom:1px solid rgba(151,112,58,.38);padding-bottom:3px}
.process-link:hover{border-color:currentColor}
.process-link[hidden]{display:none!important}


/* Pretty-up pass */
.hero-copy,
.contact-wrap,
.client-panel,
.client-feature,
.quote-card,
.service,
.editorial-card,
.review-row,
.social-link-card,
.intro-card,
.portal-demo,
.trip-mini,
.destination-card{
  backdrop-filter:blur(12px);
}

.hero-grid{gap:26px}
.hero-copy{
  max-width:700px;
}
.hero-actions{margin-top:28px}
.hero-socials{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.hero-socials-label{
  width:100%;
  font-size:.62rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#7b6b55;
  font-weight:800;
}
.social-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid rgba(151,112,58,.18);
  background:rgba(255,255,255,.56);
  box-shadow:0 10px 26px rgba(8,24,36,.06);
  font-size:.68rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:800;
  color:var(--navy);
  transition:transform .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease);
}
.social-pill:hover{
  transform:translateY(-2px);
  border-color:rgba(151,112,58,.38);
  background:rgba(255,255,255,.78);
}
.social-pill .dot{
  width:8px;height:8px;border-radius:50%;
  background:linear-gradient(135deg,var(--gold-2),var(--gold));
  box-shadow:0 0 0 4px rgba(200,161,94,.16);
}

.hero-photo{
  border-radius:0 0 0 28px;
}
.hero-photo img{
  border-radius:0 0 0 28px;
}
.hero-photo::after{
  content:"";
  position:absolute;
  inset:auto 24px 24px auto;
  width:140px;
  height:140px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(228,201,133,.28),rgba(228,201,133,0));
  filter:blur(8px);
  z-index:1;
}
.hero-frame{
  position:absolute;
  inset:18px 18px 18px 18px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:28px;
  pointer-events:none;
  z-index:3;
}

.section-heading p,
.hero-lede,
.service p,
.quote-card blockquote,
.review-row blockquote{
  text-wrap:pretty;
}

.social-link-card,
.quote-card,
.review-row,
.editorial-card,
.service,
.intro-card{
  box-shadow:0 20px 50px rgba(8,24,36,.07);
}

.social-link-card{
  background:
    radial-gradient(circle at 88% 12%,rgba(228,201,133,.18),transparent 12rem),
    linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.03));
}
.section-dark .social-link-card{
  background:
    radial-gradient(circle at 88% 12%,rgba(228,201,133,.16),transparent 12rem),
    linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025));
}

.footer-links .social-stack{
  display:grid;
  gap:9px;
}
.footer-links .social-stack a{
  width:max-content;
}
@media(max-width:680px){
  body::after{
    top:14vh;
    font-size:min(54vw,21rem);
  }
  .hero-socials{gap:8px}
  .social-pill{font-size:.64rem;padding:0 14px}
  .hero-photo,.hero-photo img{border-radius:24px}
  .hero-frame{inset:12px}
}

/* Signature v16 */
:root{--mx:50%;--my:20%;--scroll-shift:0px}
body::before{
  background:
    radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.32),transparent 18rem),
    radial-gradient(circle at 10% 9%,rgba(247,218,166,.76),transparent 25rem),
    radial-gradient(circle at 88% 14%,rgba(69,113,137,.42),transparent 29rem),
    radial-gradient(circle at 18% 54%,rgba(255,249,240,.66),transparent 25rem),
    radial-gradient(circle at 90% 73%,rgba(13,58,85,.20),transparent 27rem),
    radial-gradient(circle at 28% 94%,rgba(222,190,142,.30),transparent 24rem),
    linear-gradient(180deg,#fcf7ef 0%,#f0e4d4 22%,#f8f1e7 46%,#e6d7c1 70%,#f8f3ea 100%);
  transform:translateY(var(--scroll-shift));
  will-change:transform
}
body::after{top:calc(10vh + var(--scroll-shift));color:rgba(255,255,255,.27);text-shadow:0 1px 0 rgba(151,112,58,.05)}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(228,201,133,.86),transparent);transform:scaleX(var(--page-progress,.08));transform-origin:left;transition:transform .08s linear}
.inspiration-section{background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(241,229,211,.46)),radial-gradient(circle at 90% 10%,rgba(76,113,132,.12),transparent 23rem)}
.inspiration-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.inspiration-card{appearance:none;width:100%;min-height:310px;padding:24px;border-radius:28px;border:1px solid rgba(10,28,40,.11);background:radial-gradient(circle at 84% 14%,rgba(228,201,133,.22),transparent 11rem),linear-gradient(145deg,rgba(255,255,255,.82),rgba(250,244,235,.54));color:var(--navy);text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 20px 50px rgba(8,24,36,.075);transition:transform .26s var(--ease),box-shadow .26s var(--ease),border-color .26s var(--ease)}
.inspiration-card:nth-child(2){background:radial-gradient(circle at 86% 14%,rgba(92,133,145,.16),transparent 11rem),linear-gradient(145deg,rgba(255,255,255,.80),rgba(239,232,220,.58))}
.inspiration-card:nth-child(3){background:radial-gradient(circle at 86% 14%,rgba(41,91,111,.16),transparent 11rem),linear-gradient(145deg,rgba(255,255,255,.78),rgba(228,237,237,.48))}
.inspiration-card:nth-child(4){background:radial-gradient(circle at 86% 14%,rgba(211,173,112,.24),transparent 11rem),linear-gradient(145deg,rgba(255,255,255,.82),rgba(242,226,207,.58))}
.inspiration-card:hover,.inspiration-card:focus-visible{transform:translateY(-7px);box-shadow:0 28px 70px rgba(8,24,36,.12);border-color:rgba(151,112,58,.35);outline:none}
.inspiration-no{font:italic 400 3.6rem/.9 var(--serif);color:rgba(151,112,58,.48)}
.inspiration-card strong{font:500 clamp(1.75rem,2.3vw,2.45rem)/.98 var(--serif);letter-spacing:-.025em;max-width:260px}
.inspiration-card small{font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:#746c61;border-top:1px solid rgba(10,28,40,.09);padding-top:14px}
.inspiration-card.selected{border-color:rgba(151,112,58,.55);box-shadow:0 0 0 3px rgba(200,161,94,.12),0 28px 70px rgba(8,24,36,.12)}
.trip-prefill-note{margin-top:13px;color:#d9c99f;font-size:.68rem;letter-spacing:.04em}
.travel-dock{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:70;display:flex;align-items:center;gap:4px;padding:5px;border-radius:999px;background:rgba(7,24,39,.88);border:1px solid rgba(228,201,133,.20);backdrop-filter:blur(18px);box-shadow:0 18px 54px rgba(7,24,39,.22)}
.travel-dock a{min-height:38px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;font-size:.62rem;letter-spacing:.10em;text-transform:uppercase;font-weight:800;color:#d7dfe2;white-space:nowrap}
.travel-dock a:hover{background:rgba(255,255,255,.08);color:white}
.travel-dock .dock-primary{color:var(--navy);background:linear-gradient(135deg,var(--gold-2),var(--gold))}
.contact-wrap{box-shadow:0 36px 100px rgba(7,24,39,.20)}
.contact-wrap::before{content:"";position:absolute;inset:1px;border-radius:35px;pointer-events:none;border:1px solid rgba(255,255,255,.055)}
.section-dark::after{content:"";position:absolute;left:-18vw;top:-13vw;width:42vw;height:42vw;border-radius:50%;border:1px solid rgba(228,201,133,.05);box-shadow:0 0 0 70px rgba(255,255,255,.008),0 0 0 140px rgba(255,255,255,.006);pointer-events:none}
@media(max-width:1040px){.inspiration-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.inspiration-grid{grid-template-columns:1fr}.inspiration-card{min-height:245px}.travel-dock{bottom:10px;width:calc(100% - 20px);justify-content:center}.travel-dock a{flex:1;justify-content:center;padding:0 8px}}
@media(prefers-reduced-motion:reduce){body::before{transform:none!important}}

/* Featured journeys and hero media */
.hero-story{
  isolation:isolate;
  background:linear-gradient(155deg,#153a4a,#5d9294 45%,#d1b485 100%);
}
.hero-story:before{
  background:
    linear-gradient(90deg,#f6eddf 0%,rgba(246,237,223,.48) 10%,transparent 31%),
    linear-gradient(0deg,rgba(7,24,39,.45),rgba(7,24,39,.02) 58%,rgba(7,24,39,.16));
  z-index:3;
}
.hero-scenery{
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:0;
  background:#4c8992;
}
.hero-coast-fallback{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 73% 18%,rgba(255,246,208,.88) 0 5%,rgba(255,239,188,.32) 5.5%,transparent 17%),
    linear-gradient(180deg,#aecfd1 0 35%,#8bb9bb 35% 42%,#3d8390 42% 66%,#0e5368 66% 100%);
}
.hero-coast-fallback:before{
  content:"";
  position:absolute;
  left:8%;right:-10%;top:43%;height:27%;
  background:
    repeating-linear-gradient(174deg,rgba(255,255,255,.26) 0 2px,transparent 2px 19px),
    linear-gradient(180deg,rgba(235,246,241,.12),rgba(7,65,82,.08));
  transform:skewY(-3deg);
  opacity:.58;
}
.hero-coast-fallback:after{
  content:"";
  position:absolute;
  right:-9%;bottom:-9%;width:63%;height:61%;
  background:linear-gradient(135deg,#d9c498 0 24%,#8e785d 24% 39%,#324b48 39% 100%);
  clip-path:polygon(100% 0,100% 100%,0 100%,17% 72%,32% 65%,43% 39%,63% 33%,74% 13%);
  box-shadow:-24px -18px 50px rgba(255,239,202,.20);
}
.hero-coast-fallback span{
  position:absolute;
  right:11%;bottom:24%;
  width:40px;height:28px;
  z-index:2;
  border-radius:3px 3px 0 0;
  background:#f7f0e2;
  box-shadow:
    43px -15px 0 -2px #fbf5e9,
    83px 4px 0 -5px #e8ddc8,
    -37px 12px 0 -5px #fffaf0,
    18px 31px 0 -6px #eee3cf,
    68px 38px 0 -8px #faf3e6;
  transform:rotate(-7deg);
  opacity:.84;
}
.hero-coast-fallback span:before{
  content:"";
  position:absolute;
  left:8px;top:-12px;
  width:22px;height:15px;
  border-radius:50% 50% 2px 2px;
  background:#f7f0e2;
}
.hero-coast-fallback span:after{
  content:"";
  position:absolute;
  left:15px;bottom:0;
  width:9px;height:14px;
  border-radius:8px 8px 0 0;
  background:#3f7d8c;
  box-shadow:44px -15px 0 -2px rgba(48,112,128,.72);
}
.hero-coast-fallback i{
  position:absolute;
  left:-7%;bottom:12%;width:48%;height:34%;
  background:linear-gradient(145deg,#2c4c4c,#526c61 50%,#b4a17f);
  clip-path:polygon(0 30%,15% 25%,28% 8%,46% 24%,61% 12%,77% 35%,100% 48%,100% 100%,0 100%);
  filter:drop-shadow(20px 8px 30px rgba(3,27,37,.25));
  opacity:.9;
}
.hero-coast-fallback b{
  position:absolute;
  left:0;right:0;bottom:0;height:14%;
  background:linear-gradient(180deg,rgba(9,55,68,.04),rgba(5,40,53,.38));
}
.hero-scenery-embed{
  position:absolute;
  z-index:1;
  left:50%;top:50%;
  width:520px;
  height:925px;
  max-width:none;
  border:0;
  background:transparent;
  transform:translate(-50%,-50%) scale(1.28);
  transform-origin:center;
  filter:saturate(.92) contrast(1.08) brightness(.82);
  opacity:.78;
  mix-blend-mode:multiply;
  pointer-events:none;
}
.hero-scenery-shade{
  position:absolute;
  inset:0;
  z-index:2;
  background:
    linear-gradient(90deg,rgba(7,24,39,.04),rgba(7,24,39,.10) 36%,rgba(7,24,39,.32)),
    linear-gradient(0deg,rgba(7,24,39,.54),transparent 48%);
  pointer-events:none;
}
.hero-portrait-card{
  position:absolute;
  left:8%;bottom:7%;z-index:4;
  width:min(59%,420px);
  aspect-ratio:4/5;
  margin:0;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.64);
  background:#e8e0d5;
  box-shadow:0 28px 80px rgba(4,17,26,.38);
  transform:rotate(-1.2deg);
}
.hero-portrait-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,24,39,.72),transparent 35%);pointer-events:none}
.hero-portrait-card .hero-portrait-image{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 38%!important;border-radius:0!important;filter:saturate(.96) contrast(1.01)!important}
.hero-portrait-card figcaption{position:absolute;left:20px;right:20px;bottom:18px;z-index:2;color:white}
.hero-portrait-card figcaption strong{display:block;font:500 1.65rem/1 var(--serif)}
.hero-portrait-card figcaption span{display:block;margin-top:5px;font-size:.61rem;letter-spacing:.14em;text-transform:uppercase;color:#e6dccb}
.hero-scenery-link{position:absolute;right:28px;top:28px;z-index:5;display:grid;gap:3px;max-width:205px;padding:13px 15px;border-radius:16px;background:rgba(7,24,39,.70);border:1px solid rgba(255,255,255,.20);backdrop-filter:blur(14px);color:white;box-shadow:0 15px 45px rgba(4,17,26,.22)}
.hero-scenery-link span{font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-2)}
.hero-scenery-link strong{font:500 1.05rem/1.08 var(--serif)}

.journey-section{background:radial-gradient(circle at 88% 12%,rgba(61,104,119,.15),transparent 25rem),linear-gradient(180deg,rgba(247,240,230,.78),rgba(235,220,200,.58))}
.journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.journey-card{position:relative;min-height:300px;padding:25px;border-radius:28px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;color:white;border:1px solid rgba(255,255,255,.28);box-shadow:0 24px 64px rgba(7,24,39,.14);background:linear-gradient(150deg,#173b4b,#6e9894 55%,#d3b98d);transition:transform .26s var(--ease),box-shadow .26s var(--ease)}
.journey-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 12%,rgba(255,238,194,.28),transparent 11rem),linear-gradient(0deg,rgba(4,17,26,.82),rgba(4,17,26,.06) 68%);z-index:0}
.journey-card:nth-child(2){background:linear-gradient(145deg,#0e4258,#7da5a2 52%,#d8caab)}
.journey-card:nth-child(3){background:linear-gradient(145deg,#123448,#8a9ea0 49%,#c8ad7f)}
.journey-card:nth-child(4){background:linear-gradient(145deg,#593f36,#b38b67 48%,#326d78)}
.journey-card:nth-child(5){background:linear-gradient(145deg,#0d5363,#6eb6b2 53%,#f0cf93)}
.journey-card:nth-child(6){background:linear-gradient(145deg,#102b43,#557b91 46%,#c6a86d)}
.journey-card>*{position:relative;z-index:1}
.journey-card:hover,.journey-card:focus-visible{transform:translateY(-7px);box-shadow:0 34px 80px rgba(7,24,39,.20);outline:none}
.journey-card span{font-size:.61rem;letter-spacing:.16em;text-transform:uppercase;color:#f0dba9}
.journey-card h3{font:500 clamp(2.1rem,3.1vw,3rem)/.94 var(--serif);margin:9px 0 12px;letter-spacing:-.035em}
.journey-card p{margin:0 0 22px;color:#e3e9e9;font-size:.79rem;max-width:390px}
.journey-card b{font-size:.62rem;letter-spacing:.11em;text-transform:uppercase;color:#f1d28c}
.journey-grid-page .journey-card{min-height:340px}

.social-link-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.camera-roll-section .social-link-card{min-height:320px}

.profile-specialties{background:linear-gradient(180deg,rgba(255,255,255,.56),rgba(240,227,207,.72)),radial-gradient(circle at 88% 14%,rgba(52,99,113,.14),transparent 25rem)}
.specialty-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.specialty-card{min-height:285px;padding:24px;border-radius:26px;border:1px solid rgba(7,24,39,.11);background:radial-gradient(circle at 88% 10%,rgba(228,201,133,.22),transparent 10rem),rgba(255,255,255,.72);display:flex;flex-direction:column;box-shadow:0 20px 50px rgba(8,24,36,.07);transition:transform .24s var(--ease),box-shadow .24s var(--ease),border-color .24s var(--ease)}
.specialty-card:hover,.specialty-card:focus-visible{transform:translateY(-6px);box-shadow:0 28px 64px rgba(8,24,36,.12);border-color:rgba(151,112,58,.34);outline:none}
.specialty-card small{font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;color:#8b714c}
.specialty-card strong{font:500 clamp(1.75rem,2.5vw,2.45rem)/.96 var(--serif);margin:42px 0 13px;color:var(--navy);letter-spacing:-.025em}
.specialty-card span{margin-top:auto;color:#687277;font-size:.75rem}
.specialty-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.specialty-strip span{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border-radius:999px;border:1px solid rgba(7,24,39,.10);background:rgba(255,255,255,.62);font-size:.61rem;letter-spacing:.09em;text-transform:uppercase;color:#46545a}

.inspiration-grid-expanded{grid-template-columns:repeat(4,minmax(0,1fr))}
.inspiration-grid-expanded .inspiration-card{min-height:285px}
.inspiration-grid-expanded .inspiration-card strong{font-size:clamp(1.55rem,2vw,2.15rem)}
.inspiration-grid-expanded .inspiration-card:nth-child(5){background:radial-gradient(circle at 86% 14%,rgba(45,86,116,.18),transparent 11rem),linear-gradient(145deg,rgba(255,255,255,.82),rgba(224,235,239,.58))}
.inspiration-grid-expanded .inspiration-card:nth-child(6){background:radial-gradient(circle at 86% 14%,rgba(106,133,134,.18),transparent 11rem),linear-gradient(145deg,rgba(255,255,255,.82),rgba(231,231,219,.58))}
.inspiration-grid-expanded .inspiration-card:nth-child(7){background:radial-gradient(circle at 86% 14%,rgba(89,148,151,.18),transparent 11rem),linear-gradient(145deg,rgba(255,255,255,.82),rgba(221,239,234,.58))}
.inspiration-grid-expanded .inspiration-card:nth-child(8){background:radial-gradient(circle at 86% 14%,rgba(211,173,112,.24),transparent 11rem),linear-gradient(145deg,rgba(255,255,255,.82),rgba(242,226,207,.58))}
.quote-grid-six .quote-card{min-height:270px}
.quote-card blockquote strong,.review-row blockquote strong{font-weight:500;color:var(--navy)}
.review-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.review-intro h2{font:500 clamp(2.8rem,5vw,5.2rem)/.92 var(--serif);letter-spacing:-.045em;margin:8px 0 0;max-width:900px;color:var(--navy)}
.review-row small{display:block;color:#80878a;font-size:.68rem;margin-top:9px}
.review-source-note{max-width:880px;margin-top:24px;padding:22px 24px;border-radius:20px;border:1px solid rgba(7,24,39,.10);background:rgba(255,255,255,.60)}
.review-source-note strong{display:block;font:500 1.35rem var(--serif);color:var(--navy);margin-bottom:6px}
.review-source-note p{margin:0;color:#687277;font-size:.76rem}

@media(max-width:1180px){
  .specialty-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1040px){
  .hero-portrait-card{width:min(52%,420px)}
  .hero-scenery-embed{transform:translate(-50%,-50%) scale(1.12)}
  .journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .social-link-grid-three{grid-template-columns:1fr 1fr}
  .inspiration-grid-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .hero-story{min-height:610px}
  .hero-scenery-embed{left:57%;top:49%;transform:translate(-50%,-50%) scale(.90);opacity:.66}
  .hero-portrait-card{left:7%;bottom:6%;width:66%;border-radius:22px}
  .hero-scenery-link{right:16px;top:16px;max-width:165px;padding:11px 12px}
  .hero-scenery-link strong{font-size:.92rem}
  .journey-grid,.social-link-grid-three,.specialty-card-grid,.inspiration-grid-expanded{grid-template-columns:1fr}
  .journey-card,.journey-grid-page .journey-card{min-height:285px}
  .specialty-card{min-height:220px}
  .review-intro{display:grid;align-items:start}
  .review-intro .button{width:max-content;max-width:100%}
}
/* Keep quick actions out of the hero until the visitor starts scrolling. */
.travel-dock{opacity:0;pointer-events:none;transform:translate(-50%,14px);transition:opacity .22s var(--ease),transform .22s var(--ease)}
.travel-dock.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%,0)}


/* v20 usability fixes, preserving the existing editorial design. */
[hidden]{display:none!important}
.nav-links a[aria-current="page"],.mobile-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:5px}
.media-consent{position:absolute;z-index:12;left:24px;bottom:65px;max-width:calc(100% - 48px);padding:10px 14px;border:1px solid #d5b578;border-radius:30px;color:#fff;background:#122b3e;cursor:pointer;font:600 .72rem system-ui,sans-serif}
.media-consent-note{position:absolute;z-index:12;left:26px;bottom:40px;color:#fff;font:.62rem system-ui,sans-serif;max-width:calc(100% - 52px);text-shadow:0 1px 3px #000}
.inquiry-tools{display:flex;gap:10px;flex-wrap:wrap;grid-column:1/-1;margin-top:8px}
.inquiry-status{grid-column:1/-1;line-height:1.7;font-size:.86rem;overflow-wrap:anywhere}
[data-inquiry-preview]{grid-column:1/-1;width:100%;padding:16px;border:1px solid #b4a891;border-radius:8px;font:14px/1.6 system-ui,sans-serif;color:#112637;background:#fff}
.faq-item [hidden]{display:none!important}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #9b6421;outline-offset:4px}
@media(max-width:1190px){.nav-links{display:none}.nav-actions .menu{display:inline-flex}.mobile-nav.open{display:flex;flex-direction:column}.nav{gap:14px}}
@media(max-width:600px){.media-consent{left:18px;bottom:65px;font-size:.65rem}.media-consent-note{left:20px;bottom:38px;font-size:.58rem}.inquiry-tools .button{flex:1 1 160px}.hero-title{overflow-wrap:normal}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Keep the optional-video control clear of the portrait caption at all widths. */
.media-consent{top:105px;bottom:auto}
.media-consent-note{top:150px;bottom:auto;color:#163442;text-shadow:none}
