:root {
  --navy: #141a37;
  --navy-2: #20295b;
  --navy-3: #080d26;
  --red: #c8202b;
  --red-dark: #9f1422;
  --red-soft: #fff0f2;
  --ink: #171d3e;
  --muted: #6d7894;
  --line: #dfe3ee;
  --surface: #f5f7fc;
  --white: #fff;
  --container: 1200px;
  --radius-sm: 10px;
  --radius-md: 20px;
  --radius-lg: 28px;
  --shadow-soft: 0 18px 50px -24px rgba(14, 19, 41, .24);
  --ease: cubic-bezier(.22, 1, .36, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; overflow-x: clip; color: var(--ink); background: #fff; font-family: Inter, "Segoe UI", Arial, sans-serif; line-height: 1.55; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { cursor: pointer; }
:where(a, button, input, select, textarea):focus { outline: none; }
:where(a, button, input, select, textarea):focus-visible { outline: none; }
:where(input, select, textarea):focus-visible { box-shadow: none; filter: brightness(.985); }
:where(a, button):focus-visible { filter: brightness(.94); }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.13; }
.container { width: min(var(--container), calc(100% - 48px)); margin-inline: auto; }
.container-wide { width: min(1312px, calc(100% - 48px)); margin-inline: auto; }
.section { padding-block: 80px; position: relative; overflow: hidden; }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 16px; top: -60px; z-index: 2000; background: #fff; color: var(--navy); padding: 10px 16px; border-radius: 8px; box-shadow: var(--shadow-soft); transition: top .2s; }
.skip-link:focus { top: 16px; }

.eyebrow { margin: 0 0 12px; color: var(--red); font-size: 12px; line-height: 1; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.eyebrow-light { color: #ff5c68; }
.section-heading { max-width: 920px; margin: 0 auto 42px; text-align: center; }
.section-heading h2, .why-copy h2 { margin-bottom: 12px; color: var(--ink); font-size: clamp(2rem, 3.3vw, 2.6rem); letter-spacing: -.035em; }
.section-heading > p:last-child, .section-intro { margin-bottom: 0; color: var(--muted); font-size: 15px; }

.button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 999px; padding: 13px 26px; font-size: 14px; font-weight: 700; transition: transform .3s var(--ease), box-shadow .3s, background-color .3s; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: #fff; background: var(--red); box-shadow: 0 10px 22px -10px rgba(200, 32, 43, .65); }
.button-primary:hover { background: #d22632; box-shadow: 0 14px 30px -12px rgba(200, 32, 43, .8); }
.button-glass { color: #fff; border: 1px solid rgba(255,255,255,.58); background: rgba(255,255,255,.14); backdrop-filter: blur(12px); }
.hero-button { height: 50px; min-height: 50px; padding-block: 0; }

/* Header */
.site-header { height: 88px; position: sticky; top: 0; z-index: 1000; display: flex; align-items: center; background: rgba(255,255,255,.96); border-bottom: 1px solid transparent; transition: box-shadow .3s, border-color .3s, background .3s; }
.site-header.is-scrolled { background: rgba(255,255,255,.9); border-color: rgba(20,26,55,.08); box-shadow: 0 12px 30px -22px rgba(14,19,41,.55); backdrop-filter: blur(14px); }
.header-inner { height: 64px; display: flex; align-items: center; justify-content: space-between; }
.brand { width: 86px; height: 64px; display: flex; align-items: center; overflow: hidden; }
.brand img { width: 86px; height: 64px; object-fit: contain; }
.primary-navigation { min-height: 55px; display: flex; align-items: center; gap: 30px; padding: 9px 12px; border-radius: 10px; background: var(--surface); }
.nav-link { position: relative; padding-block: 10px; color: var(--navy-2); border: 0; background: transparent; font-size: 14px; font-weight: 600; white-space: nowrap; transition: color .25s; }
.nav-link:not(.is-active)::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 4px; height: 2px; background: var(--red); transition: right .3s var(--ease); }
.nav-link:not(.is-active):hover { color: var(--red); }
.nav-link:not(.is-active):hover::after { right: 0; }
.nav-link.is-active { padding: 10px 18px; color: #fff; background: var(--red); border-radius: 13px; box-shadow: 0 4px 10px rgba(200,32,43,.18); }
.nav-dropdown { position: relative; }
.nav-dropdown::after { content: ""; height: 4px; position: absolute; left: -8px; right: -8px; top: 100%; }
.nav-dropdown.is-current > .nav-link { padding: 10px 18px; color: #fff; background: var(--red); border-radius: 13px; box-shadow: 0 4px 10px rgba(200,32,43,.18); }
.nav-dropdown.is-current > .nav-link::after { display: none; }
.nav-dropdown.is-current > .nav-link img { filter: brightness(0) invert(1); }
.dropdown-toggle { display: inline-flex; align-items: center; gap: 6px; }
.dropdown-toggle img { width: 14px; height: 14px; transition: transform .25s; }
.dropdown-toggle[aria-expanded="true"] img { transform: rotate(180deg); }
.dropdown-menu { min-width: 220px; position: absolute; left: 0; right: auto; top: calc(100% + 2px); display: grid; padding: 10px; border: 1px solid rgba(20,26,55,.08); border-radius: 14px; background: #fff; box-shadow: 0 18px 48px -20px rgba(14,19,41,.38); opacity: 0; visibility: hidden; transform: translateY(-6px); transition: opacity .22s var(--ease), visibility .22s, transform .22s var(--ease); }
.nav-dropdown:hover .dropdown-menu, .nav-dropdown:focus-within .dropdown-menu { opacity: 1; visibility: visible; transform: none; }
.dropdown-menu a { position: relative; padding: 10px 12px; border-radius: 8px; color: var(--navy-2); font-size: 13px; font-weight: 500; transition: color .22s, font-weight .22s, background-color .22s; }
.dropdown-menu a::after { content: ""; height: 2px; position: absolute; left: 12px; right: calc(100% - 12px); bottom: 5px; border-radius: 999px; background: var(--red); transition: right .3s var(--ease); }
.dropdown-menu a:hover, .dropdown-menu a:focus-visible { color: var(--red); background: rgba(200,32,43,.045); font-weight: 600; }
.dropdown-menu a:hover::after, .dropdown-menu a:focus-visible::after { right: 12px; }
.menu-toggle { display: none; width: 44px; height: 44px; border: 0; border-radius: 10px; background: var(--surface); padding: 12px; }
.menu-toggle span { display: block; height: 2px; margin: 5px 0; background: var(--navy); transition: transform .25s, opacity .25s; }

/* Hero */
.hero { min-height: 560px; position: relative; overflow: hidden; color: #fff; background: var(--navy); }
.hero-slides, .hero-slide, .hero-slide img, .hero-overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-slide { z-index: 0; opacity: 0; clip-path: inset(0 0 0 100%); transform: scale(1.07); transition: clip-path 1.05s var(--ease), opacity .8s ease, transform 6.5s ease-out; will-change: clip-path, opacity, transform; }
.hero-slide img { object-fit: cover; }
.hero-slide.is-active { z-index: 2; opacity: 1; clip-path: inset(0); transform: scale(1); }
.hero-slide.is-active.is-initializing { transform: scale(1.07); }
.hero-slide.is-from-left { clip-path: inset(0 100% 0 0); }
.hero-slide.is-leaving-left { z-index: 1; opacity: 1; clip-path: inset(0 100% 0 0); }
.hero-slide.is-leaving-right { z-index: 1; opacity: 1; clip-path: inset(0 0 0 100%); }
.hero-overlay { z-index: 3; background: linear-gradient(90deg, rgba(6,9,26,.74) 0%, rgba(6,9,26,.58) 26%, rgba(6,9,26,.32) 48%, rgba(6,9,26,.12) 100%); }
.hero::after { content: ""; position: absolute; z-index: 4; inset: 0; pointer-events: none; background: radial-gradient(circle at 78% 28%, transparent 0 18%, rgba(4,8,24,.08) 70%); }
.hero-inner { min-height: 430px; position: relative; z-index: 5; display: flex; align-items: center; padding-top: 3px; }
.hero-copy { width: min(650px, 100%); }
.hero-pill { display: inline-flex; margin-bottom: 16px; padding: 8px 14px; border-radius: 999px; color: #fff; background: rgba(255,255,255,.16); font-size: 13px; font-weight: 700; backdrop-filter: blur(10px); }
.hero-copy-stage { min-height: 176px; transition: opacity .25s ease, transform .25s ease; }
.hero-copy-stage.is-changing { opacity: 0; transform: translateY(15px); }
.hero h1 { max-width: 650px; margin-bottom: 14px; font-size: clamp(2.7rem, 4.1vw, 3rem); line-height: 1.16; letter-spacing: -.035em; }
.hero-copy-stage p { max-width: 650px; margin-bottom: 0; color: rgba(255,255,255,.82); font-size: 16px; line-height: 1.5; }
.hero-actions { display: flex; gap: 14px; margin-top: 16px; }
.hero-controls { height: 42px; position: absolute; z-index: 6; left: 50%; bottom: 61px; display: flex; align-items: center; justify-content: space-between; transform: translateX(-50%); }
.hero-pagination { display: flex; align-items: center; gap: 8px; }
.hero-dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 8px; background: rgba(255,255,255,.65); transition: width .35s var(--ease), background .35s; }
.hero-dot.is-active { width: 24px; background: var(--red); }
.hero-arrows { display: flex; gap: 12px; }
.round-control { width: 36px; height: 36px; display: grid; place-items: center; padding: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.58); border-radius: 50%; background: rgba(255,255,255,.16); box-shadow: 0 6px 14px rgba(0,0,0,.22); backdrop-filter: blur(10px); transition: background .25s, transform .25s; }
.round-control:hover { background: var(--red); transform: scale(1.06); }
.round-control img { width: 20px; height: 20px; }

/* Why */
.why-section { padding-block: 64px 62px; }
.why-grid { min-height: 440px; display: grid; grid-template-columns: 510px minmax(0, 1fr); align-items: center; gap: 70px; }
.why-visual { height: 440px; position: relative; }
.why-image-main { width: 430px; height: 400px; position: absolute; left: 0; top: 10px; margin: 0; overflow: hidden; border-radius: 28px; box-shadow: 0 18px 34px -12px rgba(14,19,41,.14); }
.why-image-main img { width: 100%; height: 100%; object-fit: cover; }
.why-image-secondary { width: 210px; height: 166px; position: absolute; right: 0; bottom: 22px; margin: 0; overflow: hidden; border: 5px solid #fff; border-radius: 24px; box-shadow: 0 16px 30px -8px rgba(14,19,41,.22); }
.why-image-secondary img { width: 100%; height: 100%; object-fit: cover; }
.since-card { position: absolute; left: 25px; bottom: 0; z-index: 2; display: flex; flex-direction: column; padding: 16px 20px; color: #fff; border-radius: 18px; background: var(--red); box-shadow: 0 14px 28px -12px rgba(200,32,43,.5); }
.since-card strong { font-size: 22px; }
.since-card span { font-size: 11px; opacity: .86; }
.why-copy h2 { max-width: 620px; }
.why-copy .section-intro { max-width: 620px; }
.check-list { display: grid; gap: 13px; margin: 22px 0 26px; padding: 0; list-style: none; }
.check-list li { display: grid; grid-template-columns: 36px minmax(0, 1fr); align-items: center; gap: 0; color: #4f5b78; font-size: 14px; }
.check-list li::before { content: ""; width: 36px; height: 36px; background: url("../icons/check.svg") center / 36px 36px no-repeat; }
.trust-stats { display: flex; gap: 48px; margin: 0; }
.trust-stats div { display: grid; }
.trust-stats dt { color: var(--ink); font-size: 19px; font-weight: 700; }
.trust-stats dd { margin: 0; color: var(--muted); font-size: 11px; }
.quick-enquiry { min-height: 90px; width: min(var(--container), calc(100% - 48px)); margin: 38px auto 0; display: grid; grid-template-columns: 210px 1fr 1.1fr .9fr auto; align-items: center; gap: 14px; padding: 18px 22px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 18px 38px -22px rgba(14,19,41,.3); }
.quick-enquiry-heading { display: grid; }
.quick-enquiry-heading strong { font-size: 16px; }
.quick-enquiry-heading span { color: var(--muted); font-size: 11px; }
.quick-enquiry label { height: 54px; display: grid; align-content: center; padding: 8px 12px; border-radius: 10px; background: var(--surface); }
.quick-enquiry label span { color: var(--muted); font-size: 9px; }
.quick-enquiry input, .quick-enquiry select { min-width: 0; padding: 0; color: var(--navy-2); border: 0; outline: 0; background: transparent; font-size: 12px; }
.home-enquiry-bridge { position: relative; z-index: 7; display: flow-root; background: linear-gradient(to bottom, transparent 0 45px, #fff 45px); }
.home-enquiry-bridge .quick-enquiry { margin: -45px auto 0; }

/* Destinations */
.destinations-section { background: var(--surface); }
.destination-grid { height: 480px; display: grid; grid-template-columns: 1.1fr .8fr .9fr; grid-template-rows: 1.12fr .68fr; gap: 14px; }
.destination-card { min-height: 0; position: relative; overflow: hidden; border-radius: 18px; background: var(--navy); isolation: isolate; }
.destination-card::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, transparent 35%, rgba(8,13,38,.62)); }
.destination-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease), filter .5s; }
.destination-card:hover img { transform: scale(1.065); filter: saturate(1.08); }
.destination-card span { position: absolute; left: 16px; bottom: 16px; z-index: 2; padding: 6px 11px; color: var(--navy-2); border-radius: 999px; background: #fff; font-size: 11px; font-weight: 700; box-shadow: 0 6px 16px rgba(14,19,41,.16); }
.destination-wide { grid-column: 1 / 3; }
.destination-tall { grid-column: 3; grid-row: 1 / 3; }

/* Enquiry */
.tour-enquiry { min-height: 430px; display: flex; align-items: center; position: relative; overflow: hidden; color: #fff; background-color: var(--navy); background-image: linear-gradient(90deg, rgba(5,9,32,.94), rgba(20,29,75,.68) 52%, rgba(72,10,36,.76)), url("../images/tour-enquiry-bg.png"); background-size: cover; background-position: center; }
.enquiry-grid { display: grid; grid-template-columns: 430px minmax(0, 610px); justify-content: space-between; gap: 70px; align-items: center; }
.enquiry-copy h2 { max-width: 390px; margin-bottom: 12px; font-size: clamp(2rem, 3vw, 2.55rem); }
.enquiry-copy > p:last-child { margin: 0; color: rgba(255,255,255,.72); font-size: 14px; }
.enquiry-form { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.enquiry-form input { width: 100%; height: 54px; padding: 0 15px; color: #fff; border: 1px solid rgba(255,255,255,.28); border-radius: 9px; outline: 0; background: rgba(10,17,51,.36); backdrop-filter: blur(8px); transition: border-color .2s, background .2s; }
.enquiry-form input::placeholder { color: rgba(255,255,255,.67); }
.enquiry-form input:focus { border-color: rgba(255,255,255,.75); background: rgba(10,17,51,.52); }
.enquiry-form .button { grid-column: 1 / -1; border-radius: 9px; }

/* Packages */
.packages-section { background: #fff; }
.package-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.package-card { min-width: 0; display: flex; overflow: hidden; flex-direction: column; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 18px 45px -30px rgba(14,19,41,.3); transition: transform .45s var(--ease), box-shadow .45s, border-color .45s; }
.package-card:hover { transform: translateY(-8px); border-color: rgba(200,32,43,.2); box-shadow: 0 28px 60px -30px rgba(14,19,41,.42); }
.package-card > img { width: 100%; height: auto; aspect-ratio: 386 / 192; flex: 0 0 auto; object-fit: cover; transition: transform .7s var(--ease); }
.package-card > img.package-image-top { object-position: center top; }
.package-card:hover > img { transform: scale(1.04); }
.package-body { min-height: 196px; display: flex; flex-direction: column; align-items: stretch; gap: 10px; padding: 18px 22px; }
.package-tag { min-height: 29px; display: inline-flex; align-items: center; align-self: flex-start; margin: 0; padding: 7px 12px; color: var(--red); border-radius: 999px; background: var(--red-soft); font-size: 12px; font-weight: 600; line-height: 15px; letter-spacing: 0; text-transform: uppercase; }
.package-body h3 { min-height: 28px; margin: 0; font-size: 22px; line-height: 28px; }
.package-body > p { height: 44px; min-height: 44px; display: -webkit-box; overflow: hidden; margin: 0; color: var(--muted); font-size: 14px; line-height: 21px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.package-footer { height: 24px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted); font-size: 10px; }
.package-footer span { display: inline-flex; align-items: baseline; gap: 5px; white-space: nowrap; }
.package-footer strong { color: var(--ink); font-size: 18px; line-height: 1.2; }
.package-footer a { display: inline-flex; align-items: center; gap: 3px; color: var(--red); font-size: 11px; font-weight: 700; white-space: nowrap; }
.package-link-arrow { width: 11px; height: 8px; display: block; flex: 0 0 11px; transition: transform .25s; }
.package-footer a:hover .package-link-arrow { transform: translateX(3px); }

/* How it works */
.how-it-works { height: 480px; position: relative; overflow: hidden; padding-block: 64px; color: #fff; background: #060b24; }
.how-it-works::before, .how-it-works::after { content: ""; position: absolute; inset: 0; pointer-events: none; }
.how-it-works::before { background: url("../images/how-it-works-bg.png") center / cover no-repeat; opacity: .52; }
.how-it-works::after { background: linear-gradient(90deg, rgba(6,10,36,.82), rgba(14,18,51,.62) 50%, rgba(6,10,36,.84)); }
.how-it-works .container { position: relative; z-index: 1; }
.how-it-works .section-heading { max-width: 940px; display: flex; flex-direction: column; align-items: center; gap: 12px; margin-bottom: 40px; }
.how-it-works .eyebrow { margin: 0; color: #ff6e75; font-size: 12px; font-weight: 600; line-height: normal; letter-spacing: 1.2px; }
.section-heading-light h2 { margin: 0; color: #fff; font-size: 36px; line-height: 44px; letter-spacing: 0; }
.section-heading-light > p:last-child { margin: 0; color: rgba(255,255,255,.7); font-size: 15px; line-height: normal; }
.steps-grid { height: 190px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin: 0; padding: 0; list-style: none; }
.step-card { height: 190px; position: relative; display: flex; overflow: hidden; flex-direction: column; align-items: flex-start; gap: 12px; padding: 22px 26px; border: 1px solid rgba(255,255,255,.12); border-radius: 20px; background: rgba(255,255,255,.08); transition: transform .35s var(--ease), border-color .35s, background .35s; }
.step-card:hover { transform: translateY(-6px); border-color: rgba(255,110,117,.35); background: rgba(255,255,255,.11); }
.step-card > span { width: 100%; height: 42px; display: flex; align-items: center; justify-content: space-between; margin: 0; color: #ff6e75; font-size: 28px; font-weight: 700; line-height: normal; }
.step-card > span::after { content: ""; width: 68%; height: 1px; background: rgba(255,255,255,.18); }
.step-card h3 { margin: 0; color: #fff; font-size: 19px; font-weight: 600; line-height: normal; }
.step-card p { margin: 0; color: rgba(255,255,255,.7); font-size: 14px; line-height: 21px; }

/* Services */
.services-section { height: 690px; padding: 64px 0 54px; background: #f7f8fc; }
.services-section .section-heading { width: min(760px, 100%); height: 123px; display: flex; flex-direction: column; align-items: center; gap: 10px; margin-bottom: 28px; }
.services-section .eyebrow { margin: 0; color: #bc2029; font-size: 12px; font-weight: 600; line-height: normal; letter-spacing: 1.2px; }
.services-section .section-heading h2 { margin: 0; color: #141a37; font-size: 38px; line-height: 46px; letter-spacing: 0; }
.services-section .section-heading > p:last-child { margin: 0; color: #667085; font-size: 16px; line-height: 24px; }
.services-grid { height: 412px; display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(2, 196px); gap: 20px; }
.service-card { height: 196px; position: relative; overflow: hidden; padding: 22px 24px 20px; border: 1px solid #dfe2eb; border-radius: 24px; background: linear-gradient(90deg, #fff, #fffaf8); box-shadow: 0 14px 30px -10px rgba(14,19,41,.1); transition: transform .4s var(--ease), box-shadow .4s, border-color .4s; }
.service-card:hover { transform: translateY(-6px); border-color: rgba(200,32,43,.18); box-shadow: 0 22px 40px -12px rgba(14,19,41,.16); }
.service-number { position: absolute; z-index: 0; right: 20px; top: 109px; color: rgba(188,32,41,.05); font-size: 72px; line-height: 72px; font-weight: 700; letter-spacing: -2.88px; pointer-events: none; }
.service-icon { width: 52px; height: 52px; position: relative; z-index: 1; display: grid; place-items: center; margin-bottom: 14px; color: var(--red); border: 1px solid #ffd1d6; border-radius: 16px; background: linear-gradient(90deg, #fff4f5, #ffe4e8); }
.service-icon img { width: 26px; height: 26px; }
.service-icon-full { overflow: hidden; border: 0; background: transparent; }
.service-icon-full img { width: 52px; height: 52px; }
.service-card h3 { position: relative; z-index: 1; margin-bottom: 8px; color: #141a37; font-size: 19px; font-weight: 600; line-height: normal; }
.service-card p { position: relative; z-index: 1; margin: 0; color: #667085; font-size: 14px; line-height: 21px; }

/* CTA */
.contact-cta { background: #fff; }
.cta-panel { min-height: 178px; display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 34px 48px; color: #fff; border-radius: 20px; background: linear-gradient(110deg, #0c1437 0%, #2c0d37 55%, #8f1028 100%); box-shadow: 0 22px 48px -26px rgba(18,10,39,.55); }
.cta-panel h2 { margin-bottom: 8px; font-size: 30px; }
.cta-panel p { max-width: 690px; margin-bottom: 12px; color: rgba(255,255,255,.68); font-size: 13px; }
.cta-contact { display: flex; gap: 24px; color: rgba(255,255,255,.82); font-size: 11px; font-weight: 700; }

/* Testimonials */
.testimonials-section { min-height: 490px; padding-block: 50px 28px; background: var(--surface); }
.testimonials-section .section-heading { margin-bottom: 16px; }
.testimonial-shell { display: grid; grid-template-columns: 44px minmax(0, 1200px) 44px; gap: 16px; align-items: center; justify-content: center; }
.testimonial-track { height: 280px; position: relative; overflow: hidden; }
.testimonial-card { width: 350px; height: 248px; position: absolute; left: 0; top: 16px; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 18px 28px; text-align: center; border: 1px solid #dee0eb; border-radius: 24px; background: linear-gradient(90deg, #fff, #fbfcfe); box-shadow: none; opacity: 0; pointer-events: none; transform: translateX(370px) scale(.94); transition: width .56s var(--ease), height .56s var(--ease), left .56s var(--ease), top .56s var(--ease), transform .56s var(--ease), opacity .38s ease, border-radius .56s var(--ease), background .42s ease, color .3s ease; }
.testimonial-card .avatar { width: 56px; height: 56px; flex: 0 0 56px; object-fit: cover; border: 4px solid #fff; border-radius: 50%; box-shadow: 0 7px 16px -3px rgba(14,19,41,.14); transition: width .56s var(--ease), height .56s var(--ease), flex-basis .56s var(--ease); }
.testimonial-card .avatar[src$="avatar-01.png"],
.testimonial-card .avatar[src$="avatar-02.png"],
.testimonial-card .avatar[src$="avatar-03.png"] { border: 0; box-shadow: none; object-fit: contain; transform: scale(1.4643); }
.quote-mark { position: absolute; right: 27px; top: 13px; color: rgba(188,32,41,.11); font-family: Georgia, serif; font-size: 64px; line-height: 1; font-weight: 700; }
.testimonial-card blockquote { width: 294px; min-height: 80px; margin: 0; color: #151b3b; font-size: 15px; font-style: normal; line-height: 22px; }
.testimonial-card strong { width: 294px; margin-top: 0; color: #bc2029; font-size: 13px; font-weight: 600; line-height: 18px; }
.testimonial-card cite { width: 294px; margin-top: 0; color: #667085; font-size: 12px; font-weight: 500; font-style: normal; line-height: 17px; }
.testimonial-card.is-prev { opacity: 1; pointer-events: auto; transform: translateX(0); }
.testimonial-card.is-current { width: 460px; height: 280px; top: 0; z-index: 2; gap: 12px; padding: 20px 32px; color: #fff; border-color: rgba(255,107,117,.44); border-radius: 28px; background: linear-gradient(110deg, #450611 2%, #850e1d 53%, #bf1c2b 98%); box-shadow: none; opacity: 1; pointer-events: auto; transform: translateX(370px); }
.testimonial-card.is-current .avatar { width: 68px; height: 68px; flex-basis: 68px; }
.testimonial-card.is-current .avatar[src$="avatar-01.png"],
.testimonial-card.is-current .avatar[src$="avatar-02.png"],
.testimonial-card.is-current .avatar[src$="avatar-03.png"] { transform: scale(1.5882); }
.testimonial-card.is-current .quote-mark { right: 29px; color: rgba(255,184,191,.22); font-size: 72px; }
.testimonial-card.is-current blockquote { width: 396px; color: #fff9fa; }
.testimonial-card.is-current strong { width: 396px; color: #ffc2c7; }
.testimonial-card.is-current cite { width: 396px; color: #ffe0e3; }
.testimonial-card.is-next { opacity: 1; pointer-events: auto; transform: translateX(850px); }
.testimonial-card.is-hidden-left { transform: translateX(-370px) scale(.9); }
.testimonial-card.is-hidden-right { transform: translateX(1220px) scale(.9); }
.testimonial-control { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: #fff; box-shadow: 0 8px 18px -4px rgba(14,19,41,.13); transition: transform .25s, border-color .25s; }
.testimonial-control:hover { transform: scale(1.06); border-color: rgba(200,32,43,.3); }
.testimonial-control img { width: 18px; height: 18px; }
.testimonial-dots { height: 8px; display: flex; justify-content: center; gap: 8px; margin-top: 11px; }
.testimonial-dots span { width: 7px; height: 7px; border-radius: 7px; background: #cdd2df; }
.testimonial-dots span { transition: width .35s var(--ease), background-color .35s; }
.testimonial-dots .is-active { width: 24px; background: var(--red); }

/* Blog */
.blog-section { padding-block: 72px 80px; background: #fff; }
.blog-section .section-heading { max-width: 780px; margin-bottom: 34px; }
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.blog-card { min-width: 0; overflow: hidden; border: 1px solid #dfe3ee; border-radius: 24px; background: #fff; box-shadow: 0 18px 42px -28px rgba(14,19,41,.3); transition: transform .4s var(--ease), border-color .3s, box-shadow .4s; }
.blog-card:hover { transform: translateY(-7px); border-color: rgba(200,32,43,.2); box-shadow: 0 26px 52px -30px rgba(14,19,41,.38); }
.blog-image { height: 220px; display: block; overflow: hidden; background: var(--surface); }
.blog-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s var(--ease); }
.blog-card:hover .blog-image img { transform: scale(1.055); }
.blog-card-body { min-height: 220px; display: flex; flex-direction: column; align-items: flex-start; padding: 24px 26px 23px; }
.blog-category { display: inline-flex; margin-bottom: 14px; padding: 7px 12px; color: #bc2029; border-radius: 999px; background: #fff0f2; font-size: 11px; line-height: 1; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.blog-card h3 { margin: 0 0 11px; color: #151b3b; font-size: 21px; line-height: 1.28; letter-spacing: -.02em; }
.blog-card h3 a { transition: color .25s; }
.blog-card h3 a:hover { color: var(--red); }
.blog-card-body > p { margin: 0 0 10px; color: #667085; font-size: 14px; line-height: 21px; }
.blog-link { display: inline-flex; align-items: center; gap: 7px; margin-top: 7px; color: #bc2029; font-size: 13px; font-weight: 700; }
.blog-link img { width: 11px; height: 8px; transition: transform .25s var(--ease); }
.blog-link:hover img { transform: translateX(3px); }

/* Footer */
.site-footer { min-height: 350px; position: relative; overflow: hidden; padding-top: 48px; color: #fff; background: var(--navy); }
.footer-texture { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: center bottom; opacity: .3; pointer-events: none; }
.footer-grid { min-height: 220px; position: relative; display: grid; grid-template-columns: 340px 210px 210px 275px; gap: 55px; }
.footer-brand { max-width: 340px; }
.footer-logo { width: 164px; height: 76px; display: grid; place-items: center; margin-bottom: 16px; overflow: hidden; border-radius: 8px; background: #fff; }
.footer-logo img { width: 106px; height: 76px; object-fit: contain; }
.footer-brand > p { max-width: 340px; margin-bottom: 16px; color: rgba(255,255,255,.68); font-size: 14px; }
.social-links { display: flex; gap: 10px; }
.social-links a { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; background: rgba(255,255,255,.07); transition: transform .25s, background .25s; }
.social-links a:hover { transform: translateY(-3px); background: rgba(255,255,255,.14); }
.social-links img { width: 16px; height: 16px; }
.footer-column h2 { margin-bottom: 11px; font-size: 14px; }
.footer-column ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.footer-column li a { display: inline-flex; gap: 8px; align-items: center; color: #9ca1b2; font-size: 12px; transition: color .2s, transform .2s; }
.footer-column li a::before { content: ""; width: 8px; height: 12px; flex: 0 0 8px; background: url("../icons/footer-chevron.svg") center / contain no-repeat; }
.footer-column li a:hover { color: #fff; transform: translateX(3px); }
.footer-contact { display: flex; flex-direction: column; gap: 9px; font-style: normal; }
.footer-contact h2 { margin-bottom: 2px; }
.footer-contact p, .footer-contact a { display: flex; align-items: flex-start; gap: 8px; margin: 0; color: #ccd4e8; font-size: 12px; }
.footer-contact p { color: rgba(255,255,255,.58); }
.footer-contact img { width: 16px; height: 16px; flex: 0 0 16px; margin-top: 1px; }
.footer-contact a:hover { color: #fff; }
.footer-bottom { height: 60px; position: relative; display: flex; align-items: center; justify-content: space-between; margin-top: 22px; padding-top: 18px; color: rgba(255,255,255,.5); border-top: 1px solid rgba(255,255,255,.12); font-size: 11px; }
.footer-bottom a { color: #ff6b7a; font-weight: 700; }
.floating-whatsapp { width: 52px; height: 52px; position: fixed; right: 22px; bottom: 22px; z-index: 800; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; background: #20b85a; box-shadow: 0 14px 30px -10px rgba(13,115,51,.55); transition: transform .25s; }
.floating-whatsapp:hover { transform: translateY(-4px) scale(1.04); }
.floating-whatsapp img { width: 24px; height: 24px; filter: brightness(0) invert(1); }
.toast { min-width: 260px; position: fixed; left: 50%; bottom: 26px; z-index: 1200; padding: 13px 18px; color: #fff; border-radius: 12px; background: var(--navy); box-shadow: var(--shadow-soft); opacity: 0; pointer-events: none; transform: translate(-50%, 20px); transition: .3s var(--ease); font-size: 13px; text-align: center; }
.toast.is-visible { opacity: 1; transform: translate(-50%, 0); }

/* Service pages */
.service-page { background: #fff; }
.service-page .site-header { position: sticky; }
.service-kicker { margin: 0; color: var(--red); font-size: 12px; line-height: 16px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; }
.service-hero { height: 620px; position: relative; overflow: hidden; color: #fff; background: var(--navy) var(--service-hero) center / cover no-repeat; }
.service-hero-slides,.service-hero-slide,.service-hero-slide img,.service-hero-overlay{position:absolute;inset:0;width:100%;height:100%}
.service-hero-slides{z-index:0;overflow:hidden}.service-hero-slide{opacity:0;clip-path:inset(0 0 0 100%);transform:scale(1.07);transition:clip-path 1.05s var(--ease),opacity .8s ease,transform 6.5s ease-out;will-change:clip-path,opacity,transform}.service-hero-slide img{object-fit:cover}.service-hero-slide.is-active{z-index:2;opacity:1;clip-path:inset(0);transform:scale(1)}.service-hero-slide.is-active.is-initializing{transform:scale(1.07)}.service-hero-slide.is-leaving{z-index:1;opacity:1;clip-path:inset(0 100% 0 0)}
.service-hero-overlay { z-index: 3; background: linear-gradient(90deg, rgba(5,10,36,.94) 0%, rgba(5,10,36,.62) 56%, rgba(5,10,36,.2) 100%); }
.service-hero-inner { height: 100%; position: relative; z-index:4; display: flex; align-items: flex-start; justify-content: space-between; }
.service-hero-copy { width: 650px; padding-top: 112px; }
.breadcrumbs { display: flex; gap: 9px; margin: 0 0 22px; color: #fac7cc; font-size: 14px; line-height: 20px; }
.breadcrumbs a:hover { color: #fff; }
.service-hero h1 { width: 650px; margin: 22px 0 15px; font-size: 54px; line-height: 62px; letter-spacing: -.025em; }
.service-hero-intro { width: 620px; margin: 0; color: #edf2ff; font-size: 19px; line-height: 31px; }
.service-highlight-pills { display: flex; gap: 10px; margin: 18px 0 0; padding: 0; list-style: none; }
.service-highlight-pills li { padding: 9px 13px; border: 1px solid rgba(255,255,255,.22); border-radius: 18px; background: rgba(255,255,255,.12); font-size: 12px; line-height: 16px; font-weight: 500; }
.service-hero-actions { display: flex; gap: 14px; margin-top: 16px; }
.service-trust-panel { width: 350px; position: absolute; right: 0; top: 258px; padding: 24px 26px; border-radius: 20px; color: var(--ink); background: rgba(255,255,255,.94); box-shadow: 0 18px 36px rgba(5,10,36,.18); }
.service-trust-label { margin: 0 0 15px; color: var(--red); font-size: 12px; line-height: 16px; font-weight: 700; }
.service-trust-panel h2 { margin: 0 0 15px; color: #0f1433; font-size: 22px; line-height: 30px; }
.service-trust-panel ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.service-trust-panel li { position: relative; padding-left: 18px; color: #475275; font-size: 13px; line-height: 20px; }
.service-trust-panel li::before { content: ""; width: 8px; height: 8px; position: absolute; left: 0; top: 6px; border-radius: 50%; background: var(--red); }

.service-overview { height: 1370px; overflow: hidden; background: #fff; }
.service-introduction { height: 450px; display: grid; grid-template-columns: 580px 500px; gap: 46px; margin-top: 70px; padding: 40px 30px 40px 44px; border: 1px solid #e1e5ef; border-radius: 22px; background: #fff; box-shadow: 0 18px 42px -30px rgba(14,19,41,.3); }
.service-introduction-copy h2 { width: 560px; margin: 31px 0 15px; color: #0f1433; font-size: 34px; line-height: 40px; letter-spacing: -.025em; }
.service-introduction-copy > p:not(.service-kicker) { width: 560px; margin: 0 0 15px; color: #5c698a; font-size: 14px; line-height: 25px; }
.service-introduction-image { width: 500px; height: 370px; position: relative; margin: 0; overflow: hidden; border-radius: 18px; }
.service-introduction-image > img { width: 100%; height: 100%; object-fit: cover; }
.service-introduction-image figcaption { position: absolute; left: 22px; bottom: 20px; display: grid; gap: 3px; padding: 13px 16px; color: #fff; border-radius: 12px; background: rgba(10,15,41,.82); backdrop-filter: blur(8px); }
.service-introduction-image figcaption strong { font-size: 13px; }
.service-introduction-image figcaption span { color: rgba(255,255,255,.76); font-size: 10px; }
.service-included-heading { position: relative; margin-top: 46px; }
.service-accent-line { width: 54px; height: 3px; display: block; margin-bottom: 21px; border-radius: 3px; background: var(--red); }
.service-included-heading h2 { margin: 10px 0; color: #0f1433; font-size: 40px; line-height: 48px; letter-spacing: -.03em; }
.service-included-heading > p:last-child { margin: 0; color: #637091; font-size: 16px; line-height: 24px; }
.service-professional-panel { height: 580px; position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 64px; margin-top: 22px; padding: 38px 36px 142px; border: 1px solid #dfe3ee; border-radius: 22px; background: #fff; box-shadow: 0 20px 50px -34px rgba(10,15,41,.34); }
.service-professional-panel::before { content: ""; width: 1px; height: 356px; position: absolute; left: 50%; top: 38px; background: #e2e6ef; }
.service-list-column { min-width: 0; }
.service-list-column h3 { margin: 12px 0 7px; color: #0f1433; font-size: 29px; line-height: 35px; }
.service-column-intro { min-height: 44px; margin: 0; color: #637091; font-size: 14px; line-height: 22px; }
.service-list-column ul { margin: 12px 0 0; padding: 0; list-style: none; }
.service-list-column li { height: 48px; display: flex; align-items: center; gap: 12px; border-bottom: 1px solid #edf0f6; color: #263154; font-size: 14px; line-height: 20px; }
.service-list-column li img { width: 28px; height: 28px; flex: 0 0 28px; }
.service-shared-support { height: 104px; position: absolute; left: 36px; right: 36px; bottom: 38px; display: grid; grid-template-columns: 4px 410px 1fr; align-items: center; column-gap: 20px; padding: 24px; border-radius: 12px; color: #fff; background: #111735; }
.service-shared-support > span { width: 4px; height: 56px; border-radius: 4px; background: var(--red); }
.service-shared-support strong { font-size: 17px; line-height: 23px; }
.service-shared-support p { margin: 0; color: #cbd2e5; font-size: 13px; line-height: 20px; }

.service-why { height: 720px; overflow: hidden; background: var(--surface); }
.service-why-grid { height: 100%; display: grid; grid-template-columns: 500px 640px; align-items: center; gap: 60px; }
.service-why-visual { height: 530px; position: relative; }
.service-why-main { width: 430px; height: 500px; position: absolute; left: 0; top: 0; margin: 0; overflow: hidden; border-radius: 22px; box-shadow: 0 18px 34px -14px rgba(14,19,41,.24); }
.service-why-main img { width: 100%; height: 100%; object-fit: cover; }
.service-why-secondary { width: 210px; height: 158px; position: absolute; right: 0; bottom: 22px; margin: 0; overflow: hidden; border: 5px solid #fff; border-radius: 20px; box-shadow: 0 16px 30px -10px rgba(14,19,41,.25); }
.service-why-secondary img { width: 100%; height: 100%; object-fit: cover; }
.service-established { width: 190px; height: 72px; position: absolute; left: 24px; bottom: 54px; display: grid; align-content: center; gap: 2px; padding: 0 18px; color: #fff; border-radius: 14px; background: var(--red); box-shadow: 0 14px 28px -12px rgba(200,32,43,.5); }
.service-established strong { font-size: 20px; line-height: 27px; }
.service-established span { font-size: 11px; opacity: .86; }
.service-why-copy h2 { width: 620px; margin: 14px 0; color: #0f1433; font-size: 38px; line-height: 44px; letter-spacing: -.03em; }
.service-why-intro { width: 620px; margin: 0; color: #5f6c8d; font-size: 14px; line-height: 25px; }
.service-benefits { margin: 14px 0 0; padding: 0; list-style: none; }
.service-benefits li { height: 70px; display: flex; align-items: center; gap: 14px; border-bottom: 1px solid #dfe4ef; }
.service-benefits li > img { width: 32px; height: 32px; flex: 0 0 32px; }
.service-benefits li div { display: grid; gap: 3px; }
.service-benefits strong { color: #0f1433; font-size: 14px; line-height: 20px; }
.service-benefits span { color: #687595; font-size: 12px; line-height: 18px; }

.service-faq { height: 820px; overflow: hidden; background: #fff; }
.service-faq-heading { width: 900px; margin: 70px auto 40px; text-align: center; }
.service-faq-heading h2 { margin: 11px 0; color: #0f1433; font-size: 40px; line-height: 48px; letter-spacing: -.03em; }
.service-faq-heading > p:last-child { margin: 0; color: #637091; font-size: 16px; line-height: 24px; }
.service-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.service-faq-card { height: 160px; padding: 22px 24px; border: 1px solid #ccd4e3; border-radius: 18px; background: rgba(255,255,255,.94); box-shadow: 0 10px 12px rgba(10,15,41,.05); }
.service-faq-card h3 { display: flex; align-items: flex-start; gap: 12px; margin: 0 0 11px; color: #0f1433; font-size: 15px; line-height: 21px; }
.service-faq-card h3 span { width: 28px; height: 28px; flex: 0 0 28px; position: relative; margin-top: -3px; border-radius: 50%; background: var(--red); }
.service-faq-card h3 span::before,
.service-faq-card h3 span::after { content: ""; width: 10px; height: 2px; position: absolute; left: 50%; top: 50%; border-radius: 999px; background: #fff; transform: translate(-50%, -50%); }
.service-faq-card h3 span::after { transform: translate(-50%, -50%) rotate(90deg); }
.service-faq-card p { margin: 0; color: #5c698a; font-size: 13px; line-height: 20px; }

.service-enquiry { height: 500px; overflow: hidden; padding-top: 80px; background: var(--surface); }
.service-enquiry-panel { height: 320px; display: grid; grid-template-columns: 530px 500px; align-items: center; justify-content: space-between; padding: 52px 50px 50px 56px; border: 1px solid #e0e4ee; border-radius: 22px; background: #fff; box-shadow: 0 22px 52px -34px rgba(10,15,41,.32); }
.service-enquiry-copy h2 { margin: 10px 0; color: #0f1433; font-size: 36px; line-height: 43px; letter-spacing: -.025em; }
.service-enquiry-copy > p:last-child { width: 500px; margin: 0; color: #5d6988; font-size: 14px; line-height: 24px; }
.service-enquiry-form { display: grid; gap: 12px; }
.service-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.service-enquiry-form input { width: 100%; height: 54px; padding: 0 16px; border: 1px solid #dce1eb; border-radius: 10px; outline: 0; color: #20295b; background: #f7f8fc; font-size: 13px; }
.service-enquiry-form input:focus { border-color: rgba(200,32,43,.55); box-shadow: 0 0 0 3px rgba(200,32,43,.08); }
.service-enquiry-form button { height: 54px; color: #fff; border: 0; border-radius: 10px; background: var(--red); font-size: 14px; font-weight: 700; }

/* About page */
.about-page .site-header { position: sticky; }
.section-kicker { margin: 0; color: var(--red); font-size: 13px; line-height: 18px; font-weight: 600; letter-spacing: 1.04px; text-transform: uppercase; }
.section-kicker-light { color: #fff; }
.section-kicker-pink { color: #ff5966; }
.about-hero { height: 560px; display: flex; align-items: center; position: relative; overflow: hidden; color: #fff; background: #090c1e url('../images/about/hero.png') center / cover no-repeat; }
.about-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9,12,30,.94) 0%, rgba(9,12,30,.55) 58%, rgba(9,12,30,.16) 100%); }
.about-hero-copy { position: relative; }
.about-hero-copy h1 { width: 720px; margin: 18px 0; font-size: 56px; line-height: 62px; letter-spacing: -.025em; }
.about-hero-copy > p:not(.section-kicker) { width: 640px; margin: 0; color: rgba(255,255,255,.88); font-size: 18px; line-height: 29px; }
.about-trust-pill { display: inline-flex; margin-top: 18px; padding: 10px 16px; border-radius: 999px; background: rgba(255,255,255,.15); font-size: 13px; font-weight: 600; }
.about-story { height: 760px; background: #fff; }
.about-story-grid { height: 100%; display: grid; grid-template-columns: 520px 560px; align-items: center; gap: 90px; }
.about-story-visual { width: 520px; height: 540px; position: relative; }
.about-story-primary { width: 410px; height: 500px; position: absolute; left: 0; top: 0; object-fit: cover; border-radius: 28px; }
.about-story-secondary { width: 270px; height: 220px; position: absolute; left: 250px; top: 320px; object-fit: cover; border: 8px solid #fff; border-radius: 24px; box-shadow: 0 18px 32px rgba(14,19,46,.18); }
.about-story-copy h2 { width: 560px; margin: 20px 0; color: var(--ink); font-size: 44px; line-height: 52px; letter-spacing: -.025em; }
.about-story-copy > p:not(.section-kicker) { width: 540px; margin: 0 0 14px; color: #5c6b8f; font-size: 17px; line-height: 28px; }
.about-promise { width: 540px; margin-top: 6px; padding: 16px 20px; color: var(--ink); border-radius: 14px; background: #fcf1f2; font-size: 15px; line-height: 23px; font-weight: 600; }
.about-stats { display: flex; gap: 42px; margin: 24px 0 0; }
.about-stats div { display: grid; gap: 4px; }
.about-stats dt { color: var(--ink); font-size: 24px; font-weight: 600; }
.about-stats dd { margin: 0; color: #5c6b8f; font-size: 12px; }
.about-guides { height: 600px; padding-top: 80px; color: #fff; background: linear-gradient(90deg, #090c1e, #1f0e17); }
.about-section-heading { text-align: center; }
.about-section-heading h2 { width: 760px; margin: 16px auto 8px; color: var(--ink); font-size: 42px; line-height: 50px; letter-spacing: -.025em; }
.about-section-heading > p:not(.section-kicker) { width: 720px; margin: 0 auto; color: #5c6b8f; font-size: 16px; line-height: 26px; }
.about-guides .about-section-heading h2 { color: #fff; }
.about-guides .about-section-heading > p:not(.section-kicker) { color: rgba(255,255,255,.75); }
.about-guide-grid { display: grid; grid-template-columns: repeat(2, 530px); justify-content: center; gap: 24px; margin-top: 36px; }
.about-guide-card { height: 210px; padding: 26px 28px; border: 1px solid rgba(255,255,255,.14); border-radius: 22px; background: rgba(255,255,255,.09); }
.about-guide-card > p { margin: 0; color: #ff5966; font-size: 12px; line-height: 17px; font-weight: 600; letter-spacing: .84px; }
.about-guide-card h3 { width: 470px; margin: 13px 0; font-size: 24px; line-height: 31px; }
.about-guide-card span { display: block; width: 470px; color: rgba(255,255,255,.75); font-size: 15px; line-height: 23px; }
.about-values { height: 680px; padding-top: 86px; background: #f8f9fc; }
.about-values-grid { display: grid; grid-template-columns: repeat(3, 385px); gap: 22px; margin-top: 42px; }
.about-value-card { height: 290px; padding: 28px; border: 1px solid #dbe0ed; border-radius: 22px; background: #fff; box-shadow: 0 8px 24px rgba(20,26,55,.08); }
.about-value-top { height: 48px; display: flex; align-items: center; justify-content: space-between; }
.about-value-icon { width: 42px; height: 42px; display: block; object-fit: contain; }
.about-value-top b { color: rgba(200,32,43,.12); font-size: 38px; }
.about-value-card h3 { margin: 16px 0; color: var(--ink); font-size: 23px; }
.about-value-card p { margin: 0; color: #5c6b8f; font-size: 15px; line-height: 24px; }
.about-travellers { height: 510px; display: flex; align-items: center; background: #fff8f7; }
.about-travellers .about-section-heading h2 { width: 650px; }
.about-audience-pills { width: 820px; display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 28px auto 0; }
.about-audience-pills span { padding: 10px 18px; border: 1px solid #dce1ec; border-radius: 999px; color: #253057; background: #fff; font-size: 13px; font-weight: 600; }
.about-cta { height: 340px; display: flex; align-items: center; color: #fff; background: linear-gradient(90deg, rgba(7,13,38,.92) 0%, rgba(22,18,45,.82) 48%, rgba(137,16,37,.66) 100%), url("../images/services/insurance/why-primary.png") center 57% / cover no-repeat; }
.about-cta-inner { position: relative; display: flex; align-items: center; justify-content: space-between; }
.about-cta h2 { width: 720px; margin: 12px 0; font-size: 36px; line-height: 43px; }
.about-cta p:last-child { margin: 0; color: rgba(255,255,255,.82); font-size: 16px; }
.about-cta a { display: inline-flex; align-items: center; gap: 9px; padding: 16px 26px; color: var(--red); border: 1px solid rgba(255,255,255,.75); border-radius: 999px; background: rgba(255,255,255,.96); box-shadow: 0 12px 28px rgba(5,10,31,.24); font-size: 15px; font-weight: 600; }
.about-page main { overflow-x: clip; }
.inline-arrow-icon { width: 11px; height: 8px; flex: 0 0 11px; display: block; object-fit: contain; }

/* Contact page */
.contact-page .site-header { position: sticky; }
.contact-hero { height: 520px; position: relative; overflow: hidden; color: #fff; background: linear-gradient(105deg, rgba(5,12,39,.94) 0%, rgba(8,17,47,.84) 48%, rgba(74,5,24,.72) 100%), url("../images/services/hotel-booking/why-primary.png") center 58% / cover no-repeat; }
.contact-orbit { width: 580px; height: 580px; position: absolute; right: -190px; top: -210px; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; box-shadow: 0 0 120px 35px rgba(201,14,26,.18); }
.contact-orbit::before { content: ""; width: 520px; height: 520px; position: absolute; left: -60px; top: 60px; border: 1px solid rgba(255,255,255,.06); border-radius: 50%; }
.contact-hero-grid { height: 100%; position: relative; z-index: 1; display: grid; grid-template-columns: 700px 420px; align-items: center; justify-content: space-between; }
.contact-hero-copy h1 { width: 700px; margin: 18px 0 20px; font-size: 56px; line-height: 64px; }
.contact-hero-copy > p:not(.section-kicker) { width: 650px; margin: 0; color: #c7cfe3; font-size: 18px; line-height: 30px; }
.contact-hero-actions { display: flex; gap: 16px; margin-top: 35px; }
.contact-hero-actions a { gap: 12px; }
.contact-hero-actions img { width: 20px; height: 20px; filter: brightness(0) invert(1); }
.contact-call-button { background: var(--red); }
.contact-whatsapp-button { border-color: rgba(255,255,255,.58); }
.contact-promise { height: 340px; padding: 29px 31px; border: 1px solid rgba(255,255,255,.2); border-radius: 24px; background: linear-gradient(145deg, rgba(15,24,57,.74), rgba(67,15,37,.62)); box-shadow: 0 20px 55px rgba(3,8,28,.22); backdrop-filter: blur(8px); }
.contact-promise h2 { width: 350px; margin: 14px 0 18px; font-size: 26px; line-height: 34px; }
.contact-promise > p:not(.section-kicker) { width: 350px; margin: 0; color: #c7cfe3; font-size: 15px; line-height: 24px; }
.contact-promise dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 32px 0 0; padding-top: 21px; border-top: 1px solid rgba(255,255,255,.14); }
.contact-promise dl div { display: grid; gap: 4px; }
.contact-promise dt { font-size: 18px; font-weight: 600; }
.contact-promise dd { margin: 0; color: #c7cfe3; font-size: 11px; }
.contact-enquiry { height: 890px; overflow: hidden; padding-top: 84px; background: #f7f9fd; }
.contact-heading h2 { margin: 12px 0 8px; color: #091133; font-size: 40px; line-height: 50px; }
.contact-heading > p:last-child { margin: 0; color: #576382; font-size: 16px; line-height: 25px; }
.contact-enquiry-grid { display: grid; grid-template-columns: 450px 1fr; gap: 50px; margin-top: 46px; }
.contact-methods { display: grid; gap: 12px; }
.contact-method { min-height: 112px; display: flex; gap: 16px; padding: 19px; border: 1px solid #dbe0eb; border-radius: 16px; color: #091133; background: #fff; }
.contact-method > span { width: 48px; height: 48px; flex: 0 0 48px; display: grid; place-items: center; border-radius: 14px; background: #ffedf0; }
.contact-method > span img { width: 24px; height: 24px; }
.contact-method > div { display: grid; align-content: start; gap: 4px; }
.contact-method b { color: #c90e1a; font-size: 12px; line-height: 18px; }
.contact-method strong { font-size: 17px; line-height: 24px; font-weight: 600; }
.contact-method small { color: #576382; font-size: 12px; line-height: 18px; }
.contact-address { min-height: 150px; }
.contact-address strong { font-size: 14px; line-height: 21px; }
.contact-form { min-height: 522px; padding: 30px; border: 1px solid #dbe0eb; border-radius: 18px; background: #fff; box-shadow: 0 18px 38px -28px rgba(9,17,51,.28); }
.contact-form h3 { margin: 0 0 7px; color: #091133; font-size: 24px; }
.contact-form > p { margin: 0 0 24px; color: #576382; font-size: 13px; }
.contact-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 16px; }
.contact-form label { display: grid; gap: 7px; color: #273151; font-size: 11px; font-weight: 600; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; border: 1px solid #dce1eb; border-radius: 8px; outline: 0; color: #273151; background: #f7f8fc; font: inherit; font-weight: 400; }
.contact-form input, .contact-form select { height: 44px; padding: 0 12px; }
.contact-form textarea { height: 92px; padding: 12px; resize: vertical; }
.contact-message { grid-column: 1 / -1; }
.contact-form button { width: 100%; height: 48px; margin-top: 18px; color: #fff; border: 0; border-radius: 8px; background: #d51120; font-size: 13px; font-weight: 600; }
.contact-process { height: 520px; padding-top: 80px; background: #fff; }
.contact-process-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 45px; }
.contact-process article { height: 210px; position: relative; padding: 28px; border: 1px solid #dbe0eb; border-radius: 18px; background: #f8f9fc; }
.contact-process article b { position: absolute; right: 22px; top: 18px; color: rgba(201,14,26,.13); font-size: 42px; }
.contact-process-icon { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid #ffd2d7; border-radius: 13px; background: linear-gradient(135deg, #fff5f6, #ffe9ec); }
.contact-process-icon img { width: 28px; height: 28px; display: block; }
.contact-process article h3 { margin: 13px 0 9px; color: #091133; font-size: 18px; }
.contact-process article p { margin: 0; color: #687493; font-size: 13px; line-height: 21px; }
.contact-map-section { height: 520px; display: flex; align-items: center; background: #fff9f7; }
.contact-map-frame { height: 420px; position: relative; overflow: hidden; border-radius: 22px; background: #dfeff7; }
.contact-map-frame iframe { width: 100%; height: 100%; border: 0; }
.contact-map-card { width: 430px; position: absolute; left: 32px; top: 32px; padding: 28px; border-radius: 18px; background: rgba(255,255,255,.96); box-shadow: 0 18px 38px -22px rgba(9,17,51,.42); }
.contact-map-card h2 { margin: 10px 0; color: #091133; font-size: 28px; }
.contact-map-card > p:last-of-type { margin: 0; color: #576382; font-size: 13px; line-height: 21px; }
.contact-map-card a { display: inline-flex; align-items: center; gap: 9px; margin-top: 18px; padding: 12px 18px; color: #fff; border-radius: 10px; background: #c90e1a; font-size: 13px; font-weight: 600; }
.contact-ready { height: 260px; display: flex; align-items: center; background: #fff0ee; }
.contact-ready-inner { display: flex; align-items: center; justify-content: space-between; }
.contact-ready h2 { margin: 10px 0 6px; color: #091133; font-size: 34px; }
.contact-ready span { color: #576382; font-size: 14px; }
.contact-ready a { height: 50px; display: inline-flex; align-items: center; gap: 10px; padding: 0 22px; color: #fff; border-radius: 12px; background: #d51120; font-size: 13px; font-weight: 600; }
.contact-ready a img { width: 19px; height: 19px; filter: brightness(0) invert(1); }

/* Packages and Domestic Tours */
.packages-page .site-header,.domestic-page .site-header { position: sticky; }
.packages-hero { height: 560px; display: flex; align-items: center; position: relative; overflow: hidden; color: #fff; background: #081426 var(--packages-hero) center / cover no-repeat; }
.packages-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,13,36,.82),rgba(7,13,36,.22)); }
.packages-hero-copy { position:relative; }
.packages-hero h1 { width: 650px; margin:16px 0; font-size:52px; line-height:60px; }
.packages-hero p:not(.section-kicker) { width:620px; color:rgba(255,255,255,.86); font-size:17px; line-height:28px; }
.packages-hero .button { margin-top:22px; }
.packages-destinations { height:650px; padding-top:72px; background:#fff; }
.center-heading { text-align:center; }
.center-heading h2 { margin:10px 0; color:var(--ink); font-size:40px; line-height:48px; }
.center-heading > p:last-child { margin:0; color:#66708d; font-size:15px; }
.destination-mosaic { height:390px; display:grid; grid-template-columns:2fr 1fr; grid-template-rows:1fr 1fr; gap:12px; margin-top:34px; }
.destination-mosaic img { width:100%; height:100%; object-fit:cover; border-radius:16px; }
.destination-mosaic img:first-child { grid-row:1 / -1; }
.package-search { height:360px; display:flex; align-items:center; background:#fff; }
.package-search-panel { height:250px; display:grid; grid-template-columns:440px 1fr; align-items:center; gap:55px; padding:36px 48px; color:#fff; border-radius:22px; background:linear-gradient(90deg,rgba(8,14,39,.95),rgba(8,14,39,.7)),url('../images/tour-enquiry-bg.png') center/cover; }
.package-search-panel h2 { margin:10px 0; font-size:34px; }
.package-search-panel p:not(.section-kicker) { margin:0; color:rgba(255,255,255,.75); font-size:14px; }
.package-search-panel form { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.package-search-panel input,.package-search-panel button { height:48px; padding:0 14px; border:1px solid rgba(255,255,255,.28); border-radius:9px; color:#fff; background:rgba(255,255,255,.1); }
.package-search-panel button { grid-column:1/-1; border:0; background:var(--red); font-weight:600; }
.package-collections { padding:82px 0 95px; background:#f7f8fc; }
.collection-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:42px; }
.collection-card { overflow:hidden; border:1px solid #dce2ee; border-radius:20px; background:#fff; }
.collection-card > img { width:100%; height:210px; object-fit:cover; }
.collection-card > div { min-height:230px; padding:20px; display:flex; flex-direction:column; }
.collection-card > div > span,.tour-card > div > span { width:max-content; padding:6px 10px; color:var(--red); border-radius:999px; background:#fff0f2; font-size:10px; font-weight:700; }
.collection-card h3 { margin:12px 0 8px; color:var(--ink); font-size:20px; }
.collection-card p { margin:0; color:#64708f; font-size:13px; line-height:20px; }
.collection-card footer,.tour-card footer { display:flex; align-items:end; justify-content:space-between; margin-top:auto; }
.collection-card small,.tour-card small { color:#6b7692; }
.collection-card small strong,.tour-card small strong { color:#0e1536; font-size:18px; white-space:nowrap; }
.collection-card footer a,.tour-card footer a { color:var(--red); font-size:12px; font-weight:600; }
.collection-card footer a { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; }
.collection-card footer a img { width:11px; height:8px; transition:transform .25s var(--ease); }
.collection-card footer a:hover img { transform:translateX(3px); }
.package-steps { height:500px; padding-top:72px; color:#fff; background:linear-gradient(rgba(9,14,44,.88),rgba(9,14,44,.88)),url('../images/how-it-works-bg.png') center/cover; }
.package-steps h2 { color:#fff; }
.package-step-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:36px; }
.package-step-grid article { height:190px; padding:26px; border:1px solid rgba(255,255,255,.16); border-radius:20px; background:rgba(255,255,255,.1); }
.package-step-grid b { color:#ff6571; font-size:22px; }.package-step-grid h3{margin:24px 0 10px;font-size:18px}.package-step-grid p{color:rgba(255,255,255,.72);font-size:13px;line-height:21px}
.domestic-intro { height:620px; position:relative; display:flex; align-items:center; overflow:hidden; color:#fff; background:#08122d; }
.domestic-hero-slides,.domestic-hero-slide,.domestic-hero-slide img { width:100%; height:100%; position:absolute; inset:0; }
.domestic-hero-slide { margin:0; opacity:0; transform:scale(1); transition:opacity 1.1s ease,transform 7s ease-out; will-change:opacity,transform; }
.domestic-hero-slide img { object-fit:cover; }
.domestic-hero-slide.is-active { opacity:1; transform:scale(1.075); }
.domestic-hero-slide.is-active.is-initializing { transform:scale(1); }
.domestic-intro::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,10,31,.9) 0%,rgba(6,12,36,.72) 48%,rgba(6,12,36,.34) 100%); }
.domestic-intro::before { z-index:1; }
.domestic-intro::after { content:""; position:absolute; z-index:1; inset:0; background:linear-gradient(0deg,rgba(5,10,31,.28),transparent 48%),radial-gradient(circle at 78% 48%,transparent 0,rgba(5,10,31,.12) 68%); }
.domestic-intro-grid { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,650px) 370px; justify-content:space-between; gap:80px; align-items:center; }
.domestic-intro-copy { padding-top:4px; }
.domestic-intro .breadcrumbs,.domestic-intro .breadcrumbs a { color:rgba(255,255,255,.66); }
.domestic-intro .section-kicker { color:#ff737e; }
.domestic-intro h1 { width:620px; margin:18px 0; color:#fff; font-size:54px; line-height:61px; letter-spacing:-.025em; }
.domestic-intro p:not(.section-kicker):not(.breadcrumbs) { max-width:620px; margin:0; color:rgba(255,255,255,.8); font-size:17px; line-height:28px; }
.domestic-intro-actions { display:flex; gap:14px; margin-top:16px; }
.domestic-feature { width:350px; height:270px; position:relative; display:flex; flex-direction:column; justify-content:space-between; padding:25px 26px; overflow:hidden; color:#fff; border:1px solid rgba(255,255,255,.28); border-top:3px solid var(--red); border-radius:18px; background:rgba(8,15,39,.7); box-shadow:0 24px 50px -28px rgba(0,0,0,.75); backdrop-filter:blur(16px); }
.domestic-feature::before { content:""; position:absolute; left:26px; right:26px; top:61px; height:1px; background:rgba(255,255,255,.13); }
.domestic-feature-top { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; }
.domestic-feature-top span { color:#ff727d; font-size:9px; font-weight:800; letter-spacing:.08em; }
.domestic-feature-top small { color:rgba(255,255,255,.76); font-size:11px; font-weight:700; }
.domestic-feature-copy { position:relative; z-index:1; }
.domestic-feature-place { margin:0 0 8px!important; color:#ff7b85!important; font-size:10px!important; font-weight:700; letter-spacing:.09em; }
.domestic-feature h2 { margin:0 0 11px; font-size:28px; line-height:34px; }
.domestic-feature-copy > p:not(.domestic-feature-place) { display:flex; align-items:center; gap:8px; color:rgba(255,255,255,.78)!important; font-size:13px!important; line-height:20px!important; }
.domestic-feature-copy p i { width:4px; height:4px; border-radius:50%; background:#ff6f7a; }
.domestic-feature-copy p strong { color:#fff; font-size:15px; }
.domestic-feature-copy a { width:max-content; display:inline-flex; align-items:center; gap:9px; margin-top:17px; padding:9px 12px; color:#fff; border:1px solid rgba(255,255,255,.24); border-radius:9px; background:rgba(255,255,255,.07); font-size:11px; font-weight:600; transition:background .25s,border-color .25s; }
.domestic-feature-copy a:hover { border-color:rgba(255,255,255,.48); background:rgba(255,255,255,.13); }
.domestic-feature-copy a img { width:11px; height:8px; }
.domestic-feature-dots { position:absolute; z-index:2; right:25px; bottom:26px; display:flex; gap:7px; }
.domestic-feature-dots i { width:7px; height:7px; flex:0 0 7px; border:1px solid rgba(255,255,255,.75); border-radius:50%; background:transparent; transition:background .3s,box-shadow .3s; }
.domestic-feature-dots .is-active { width:7px; background:var(--red); border-color:var(--red); box-shadow:0 0 0 3px rgba(200,32,43,.2); }
.domestic-search { height:82px; position:relative; z-index:4; display:flex; align-items:flex-start; margin-top:-43px; background:linear-gradient(to bottom,transparent 0 43px,#f6f8fc 43px); }
.domestic-search form { height:88px; display:grid; grid-template-columns:210px repeat(3,1fr) 150px; gap:12px; align-items:center; padding:16px 20px; border:1px solid #dfe3ed; border-radius:18px; background:#fff; box-shadow:0 18px 38px -24px rgba(10,15,41,.48); }
.domestic-search form div { display:grid; gap:4px; }.domestic-search form span{color:var(--red);font-size:9px;font-weight:700}.domestic-search form strong{color:var(--ink);font-size:14px}.domestic-search input{min-width:0;height:48px;padding:0 14px;border:0;border-radius:9px;background:#f5f7fc}.domestic-search button{min-width:0;height:48px;color:#fff;border:0;border-radius:9px;background:var(--red);font-weight:600}
.domestic-list { padding:46px 0 100px; background:#f6f8fc; }
.tour-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:42px; }
.tour-card { height:442px; display:grid; grid-template-rows:218px 1fr; overflow:hidden; border:1px solid #d5dcea; border-radius:20px; background:#fff; box-shadow:0 14px 34px -30px rgba(9,17,51,.55); }
.tour-card-image { display:block; height:218px; overflow:hidden; }
.tour-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .65s var(--ease); }
.tour-card:hover .tour-card-image img { transform:scale(1.045); }
.tour-card > div { min-height:0; display:grid; grid-template-rows:auto auto auto minmax(40px,1fr) auto; align-content:start; gap:8px; padding:16px 20px 18px; }
.tour-card h3 { margin:0; color:var(--ink); font-size:19px; line-height:24px; }
.tour-card h3 a { transition:color .25s; }
.tour-card h3 a:hover { color:var(--red); }
.tour-card > div > b { width:max-content; padding:6px 10px; color:var(--red); border:1px solid #ffd0d5; border-radius:999px; background:#fff5f6; font-size:11px; }
.tour-card p { display:-webkit-box; overflow:hidden; margin:0; color:#66718f; font-size:13px; line-height:20px; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.tour-card footer { align-items:center; margin-top:2px; }
.tour-card footer small { display:inline-flex; align-items:baseline; gap:5px; }
.tour-card footer a { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; }
.tour-card footer a img { width:11px; height:8px; transition:transform .25s var(--ease); }
.tour-card footer a:hover img { transform:translateX(3px); }
.domestic-cta { height:320px; display:flex; align-items:center; background:#fff; }.domestic-cta>.container{height:190px;display:flex;align-items:center;justify-content:space-between;padding:34px 50px;color:#fff;border-radius:20px;background:linear-gradient(105deg,#111537,#630d1e);box-shadow:0 22px 38px -26px rgba(9,17,51,.55)}.domestic-cta h2{margin:10px 0;font-size:32px}.domestic-cta p:not(.section-kicker){margin:0;color:rgba(255,255,255,.72);font-size:13px}.domestic-cta .domestic-cta-button{padding:14px 20px;color:#fff;border-radius:12px;background:var(--red);font-weight:600;font-size:13px}.domestic-cta-contact{display:flex;gap:22px;margin-top:17px!important}.domestic-cta-contact a{color:#fff;font-size:11px;font-weight:600}
.domestic-faq{padding:80px 0 100px;background:#fff}.domestic-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:38px}.domestic-faq-grid article{min-height:118px;padding:22px 24px;border:1px solid #dce2ee;border-radius:14px;background:#fff;box-shadow:0 13px 27px -25px rgba(9,17,51,.45)}.domestic-faq-grid h3{display:flex;align-items:flex-start;gap:13px;margin:0;color:var(--ink);font-size:14px;line-height:20px}.domestic-faq-grid h3 span{width:28px;height:28px;flex:0 0 28px;position:relative;margin-top:-4px;border-radius:50%;background:var(--red)}.domestic-faq-grid h3 span::before,.domestic-faq-grid h3 span::after{content:"";width:10px;height:2px;position:absolute;left:50%;top:50%;border-radius:999px;background:#fff;transform:translate(-50%,-50%)}.domestic-faq-grid h3 span::after{transform:translate(-50%,-50%) rotate(90deg)}.domestic-faq-grid p{margin:12px 0 0 41px;color:#697591;font-size:12px;line-height:18px}

/* Blog */
.blog-page .site-header,.article-page .site-header{position:relative}.blog-hero{height:620px;position:relative;display:flex;align-items:center;overflow:hidden;color:#fff;background:#08122d}.blog-hero-slides,.blog-hero-slide,.blog-hero-slide img{width:100%;height:100%;position:absolute;inset:0}.blog-hero-slide{margin:0;opacity:0;transform:scale(1);transition:opacity 1.1s ease,transform 7s ease-out;will-change:opacity,transform}.blog-hero-slide img{object-fit:cover}.blog-hero-slide.is-active{opacity:1;transform:scale(1.075)}.blog-hero-slide.is-active.is-initializing{transform:scale(1)}.blog-hero::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(5,10,31,.91) 0%,rgba(6,12,36,.74) 48%,rgba(6,12,36,.38) 100%)}.blog-hero::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(0deg,rgba(5,10,31,.28),transparent 48%)}.blog-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,650px) 370px;justify-content:space-between;gap:80px;align-items:center}.blog-hero .breadcrumbs,.blog-hero .breadcrumbs a{color:rgba(255,255,255,.66)}.blog-hero .section-kicker{color:#ff737e}.blog-hero h1{width:620px;margin:18px 0;color:#fff;font-size:54px;line-height:61px;letter-spacing:-.025em}.blog-hero-copy>p:not(.section-kicker):not(.breadcrumbs){max-width:620px;margin:0;color:rgba(255,255,255,.8);font-size:17px;line-height:28px}.blog-tags{display:flex;gap:10px;margin:20px 0 0}.blog-tags span{padding:8px 12px;color:#fff;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.09);font-size:11px;backdrop-filter:blur(8px)}.blog-featured{width:350px;height:270px;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:25px 26px;overflow:hidden;color:#fff;border:1px solid rgba(255,255,255,.19);border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(96,20,45,.35));box-shadow:0 22px 44px -30px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.12);backdrop-filter:blur(16px) saturate(1.08)}.blog-featured::before{content:"";position:absolute;left:26px;right:26px;top:61px;height:1px;background:rgba(255,255,255,.16)}.blog-featured-top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between}.blog-featured-top span,.blog-featured-category{color:#ff818b;font-size:9px;font-weight:800;letter-spacing:.08em}.blog-featured-top small{color:rgba(255,255,255,.82);font-size:11px;font-weight:700}.blog-featured-copy{position:relative;z-index:1}.blog-featured h2{margin:8px 0 9px;font-size:23px;line-height:29px;text-shadow:0 1px 8px rgba(7,10,29,.18)}.blog-featured-meta{color:rgba(255,255,255,.76);font-size:11px}.blog-featured-copy>a{width:max-content;display:inline-flex;align-items:center;gap:9px;margin-top:15px;padding:9px 12px;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:9px;background:rgba(255,255,255,.09);font-size:11px;font-weight:600}.blog-featured-copy>a img{width:11px;height:8px}.blog-featured-dots{position:absolute;z-index:2;right:25px;bottom:26px;display:flex;gap:7px}.blog-featured-dots i{width:7px;height:7px;flex:0 0 7px;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:transparent}.blog-featured-dots .is-active{background:var(--red);border-color:var(--red);box-shadow:0 0 0 3px rgba(200,32,43,.2)}
.blog-filter{height:82px;position:relative;z-index:4;display:flex;align-items:flex-start;margin-top:-43px;background:linear-gradient(to bottom,transparent 0 43px,#f5f7fc 43px)}.blog-filter>.container{height:84px;display:flex;align-items:center;gap:14px;padding:15px 20px;border:1px solid #dfe3ed;border-radius:16px;background:#fff;box-shadow:0 16px 32px -22px rgba(9,17,51,.42)}.blog-filter>.container>div{width:210px;display:grid}.blog-filter strong{color:var(--ink);font-size:14px}.blog-filter button{height:38px;padding:0 14px;border:0;border-radius:999px;color:#20295b;background:#f5f7fc;font-size:11px}.blog-filter button:first-of-type{color:#fff;background:var(--red)}.blog-filter input{height:40px;min-width:0;flex:1;padding:0 14px;border:0;border-radius:999px;background:#f5f7fc}
.blog-list{padding:46px 0 90px;background:#f5f7fc}.blog-list .blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px}.blog-list .blog-card{min-height:406px;border-radius:18px}.blog-list .blog-image{height:210px}.blog-list .blog-card-body{min-height:194px;padding:20px}.blog-list .blog-category{margin-bottom:12px;padding:0;color:var(--red);border-radius:0;background:transparent;font-size:10px}.blog-list .blog-card h3{min-height:50px;margin:0 0 9px;color:var(--ink);font-size:19px;line-height:25px}.blog-list .blog-card-body>p{min-height:40px;margin:0 0 8px;color:#66718f;font-size:13px;line-height:20px}.blog-list .blog-card footer{width:100%;display:flex;align-items:center;justify-content:space-between;margin-top:8px}.blog-list .blog-card footer small{color:#8790a5;font-size:10px}.blog-list .blog-link{margin-top:0;font-size:11px}.blog-list .blog-link img{width:11px;height:8px}.related-grid span{color:var(--red);font-size:10px;font-weight:700}.pagination{display:flex;justify-content:center;gap:8px;margin-top:36px}.pagination a{min-width:34px;height:34px;display:grid;place-items:center;padding:0 10px;border:1px solid #d9dfeb;border-radius:999px;color:#263157;background:#fff;font-size:11px}.pagination .is-active{color:#fff;border-color:var(--red);background:var(--red)}
.blog-guide{height:470px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(6,11,35,.9),rgba(52,7,19,.82)),url('../images/blog/planning-guide.png') center/cover}.blog-guide>.container{display:grid;grid-template-columns:560px 1fr;gap:100px;align-items:center}.blog-guide h2{margin:12px 0;font-size:36px;line-height:43px}.blog-guide p:not(.section-kicker){color:rgba(255,255,255,.75);line-height:24px}.blog-guide a{display:inline-flex;margin-top:12px;padding:13px 18px;color:#fff;border-radius:10px;background:var(--red);font-weight:600}.blog-guide ol{display:grid;gap:12px;list-style:none}.blog-guide li{height:70px;display:flex;align-items:center;gap:18px;padding:0 20px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.1)}.blog-guide li b{color:#ff6672}
.blog-subscribe{height:300px;display:flex;align-items:center;background:#fffaf8}.blog-subscribe form{height:150px;display:grid;grid-template-columns:1fr 300px 140px;align-items:center;gap:10px;padding:28px 34px;border:1px solid #dce1eb;border-radius:18px;background:#fff;box-shadow:0 16px 32px -25px rgba(9,17,51,.4)}.blog-subscribe h2{margin:8px 0;color:var(--ink);font-size:26px}.blog-subscribe p:not(.section-kicker){margin:0;color:#65708e;font-size:12px}.blog-subscribe input,.blog-subscribe button{height:46px;border:0}.blog-subscribe input{padding:0 16px;border-radius:999px 0 0 999px;background:#f5f7fc}.blog-subscribe button{color:#fff;border-radius:0 999px 999px 0;background:var(--red);font-weight:600}
.article-header{padding:55px 0 70px;text-align:center;background:#fffaf8}.article-header h1{width:820px;margin:18px auto;color:var(--ink);font-size:46px;line-height:53px}.article-header>div>p:not(.section-kicker):not(.breadcrumbs){width:760px;margin:0 auto;color:#65708e;font-size:15px;line-height:25px}.article-header small{display:block;margin-top:18px;color:#8790a5}.article-header img{width:1200px;height:430px;margin-top:38px;object-fit:cover;border-radius:22px;box-shadow:0 20px 36px -22px rgba(9,17,51,.4)}
.article-layout{display:grid;grid-template-columns:810px 330px;gap:60px;padding-top:70px;padding-bottom:90px}.article-content{color:#536080;font-size:15px;line-height:26px}.article-content h2{margin:32px 0 12px;color:var(--ink);font-size:28px;line-height:36px}.article-content ul{display:grid;gap:8px;padding:0;list-style:none}.article-content li{display:grid;grid-template-columns:180px 1fr;padding:14px;border:1px solid #e0e4ed;border-radius:10px;background:#f8f9fc}.article-content li b{color:var(--red)}.article-content blockquote{margin:26px 0;padding:24px;color:#fff;border-radius:12px;background:#101634;font-size:16px;font-weight:600}.article-prev-next{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:70px}.article-prev-next a{display:grid;gap:7px;padding:18px;border:1px solid #dce1ec;border-radius:12px;color:var(--ink);background:#fff}.article-prev-next small{color:var(--red);font-size:9px}
.article-sidebar{display:grid;align-content:start;gap:16px}.article-sidebar>nav,.sidebar-enquiry,.share-box,.sidebar-tours{padding:22px;border:1px solid #dce1ec;border-radius:16px;background:#f7f8fc}.article-sidebar>nav{display:grid;gap:10px}.article-sidebar>nav a{color:#5f6b88;font-size:12px}.sidebar-enquiry{color:#fff;background:linear-gradient(130deg,#740719,#c61a2a)}.sidebar-enquiry h2{font-size:22px;line-height:28px}.sidebar-enquiry p:not(.section-kicker){color:rgba(255,255,255,.75);font-size:12px;line-height:19px}.sidebar-enquiry a{display:inline-flex;padding:11px 14px;color:#fff;border-radius:8px;background:var(--red);font-size:11px;font-weight:600}.share-box strong{color:var(--ink)}.share-box>div{display:flex;gap:9px;margin-top:14px}.share-box a{width:34px;height:34px;display:grid;place-items:center;color:var(--red);border:1px solid #ffbcc4;border-radius:50%;background:#fff}.sidebar-tours h2{margin:8px 0 16px;color:var(--ink);font-size:20px}.sidebar-tours>a:not(.view-all){min-height:115px;display:grid;grid-template-columns:110px 1fr;margin-bottom:12px;overflow:hidden;border:1px solid #d9dfeb;border-radius:14px;background:#fff}.sidebar-tours>a>img{width:110px;height:100%;object-fit:cover}.sidebar-tours>a>div{display:grid;align-content:center;gap:4px;padding:11px}.sidebar-tours b{color:var(--ink);font-size:13px}.sidebar-tours span{color:var(--red);font-size:10px}.sidebar-tours strong{color:var(--ink);font-size:11px}.sidebar-tours small{width:max-content;margin-top:3px;padding:6px 9px;color:#fff;border-radius:999px;background:var(--red);font-size:9px}.sidebar-tours .view-all{display:inline-flex;padding:11px 15px;color:#fff;border-radius:999px;background:var(--red);font-size:11px;font-weight:600}
.related-reading{padding:70px 0 85px;background:#f5f7fc}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}.related-grid article{overflow:hidden;border:1px solid #dce1ec;border-radius:16px;background:#fff}.related-grid img{width:100%;height:190px;object-fit:cover}.related-grid article>*:not(img){margin-left:18px;margin-right:18px}.related-grid span{display:block;margin-top:16px}.related-grid h3{color:var(--ink);font-size:17px;line-height:23px}.related-grid a{display:block;margin-bottom:18px;color:var(--red);font-size:11px;font-weight:600}.article-cta{height:300px;display:flex;align-items:center;background:#fffaf8}.article-cta form{height:150px;display:grid;grid-template-columns:1fr 210px 210px;gap:10px;align-items:center;padding:26px 34px;border:1px solid #dce1ec;border-radius:18px;background:#fff}.article-cta h2{margin:6px 0;color:var(--ink);font-size:26px}.article-cta p:not(.section-kicker){margin:0;color:#65708e;font-size:12px}.article-cta input{height:44px;padding:0 13px;border:0;border-radius:9px;background:#f5f7fc}.article-cta button{grid-column:2/4;height:42px;color:#fff;border:0;border-radius:999px;background:var(--red);font-weight:600}

.blog-guide a { align-items: center; gap: 9px; }
.blog-featured { background: linear-gradient(135deg, rgba(22,30,59,.66), rgba(92,20,45,.55)); }
.domestic-intro-grid, .blog-hero-grid { display: block; }
.blog-subscribe form { column-gap: 0; }
.pagination { align-items: center; }
.pagination a { display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
.pagination .pagination-step { min-width: 76px; gap: 5px; padding-inline: 11px; }
.pagination-step img { width: 12px; height: 13px; flex: 0 0 12px; object-fit: contain; }

/* Blog article — matched to the approved Figma frame */
.article-page .site-header { position: sticky; }
.article-page .article-header { height: 800px; padding: 54px 0; text-align: center; background: #fdf9f6; }
.article-page .article-header .container { height: 100%; }
.article-page .article-header .breadcrumbs { width: 1000px; justify-content: center; margin: 0 auto 18px; color: #616e8f; font-size: 12px; line-height: 18px; text-align: center; }
.article-page .article-header .breadcrumbs a { color: inherit; }
.article-page .article-header .section-kicker { margin: 0 0 18px; }
.article-page .article-header h1 { width: 980px; margin: 0 auto 18px; color: #0b1029; font-size: 46px; line-height: 56px; letter-spacing: 0; }
.article-page .article-header > .container > p:not(.section-kicker):not(.breadcrumbs) { width: 860px; margin: 0 auto; color: #616e8f; font-size: 17px; line-height: 27px; }
.article-meta { display: flex; justify-content: center; gap: 18px; margin-top: 18px; color: #616e8f; font-size: 12px; font-weight: 500; }
.article-meta span + span::before { content: "·"; margin-right: 18px; }
.article-hero-figure { width: 1200px; height: 390px; position: relative; margin: 30px auto 0; overflow: hidden; border-radius: 22px; box-shadow: 0 12px 28px rgba(10,15,41,.12); }
.article-page .article-header .article-hero-figure img { width: 100%; height: 100%; display: block; margin: 0; border-radius: 0; object-fit: cover; box-shadow: none; }
.article-hero-figure figcaption { position: absolute; left: 24px; bottom: 22px; padding: 8px 14px; color: #fff; border-radius: 999px; background: rgba(5,9,31,.82); font-size: 12px; font-weight: 500; }

.article-page .article-layout { display: grid; grid-template-columns: 796px 340px; gap: 64px; padding-top: 70px; padding-bottom: 70px; }
.article-page .article-content { color: #596685; font-size: 15px; line-height: 25px; }
.article-page .article-content .article-lead { margin: 0 0 22px; color: #0b1029; font-size: 18px; line-height: 30px; font-weight: 500; }
.article-page .article-content section { margin-top: 22px; }
.article-page .article-content h2 { margin: 0 0 12px; color: #0b1029; font-size: 28px; line-height: 36px; }
.article-page .article-content section > p { margin: 0; }
.article-checklist { display: grid; gap: 10px; margin: 22px 0 0; padding: 0; list-style: none; }
.article-page .article-content .article-checklist li { height: 74px; display: flex; align-items: flex-start; gap: 14px; padding: 14px 16px; border: 0; border-radius: 12px; background: #f7f8fc; }
.article-checklist li > b { width: 38px; height: 38px; flex: 0 0 38px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: #c8202b; font-size: 11px; }
.article-checklist li > span { display: grid; gap: 3px; }
.article-checklist strong { color: #0b1029; font-size: 14px; line-height: 18px; }
.article-checklist small { color: #596685; font-size: 12px; line-height: 18px; }
.article-page .article-content .article-advice-list { display: grid; gap: 12px; margin: 22px 0 0; padding: 0; list-style: none; }
.article-page .article-content .article-advice-list li { height: 62px; display: flex; align-items: flex-start; gap: 12px; padding: 12px 14px; border: 1px solid #dbe0ed; border-radius: 10px; background: #fff; }
.article-advice-list img { width: 9px; height: 22px; flex: 0 0 9px; object-fit: contain; }
.article-advice-list span { color: #0b1029; font-size: 13px; line-height: 20px; }
.article-page .article-content blockquote { display: grid; gap: 5px; margin: 22px 0 0; padding: 22px 24px; color: #fff; border-radius: 12px; background: #101634; font-size: 16px; line-height: 23px; font-weight: 600; }
.article-page .article-content blockquote small { color: #ff6975; font-size: 9px; line-height: 12px; letter-spacing: .08em; }
.article-prev-next { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 42px; }
.article-prev-next a { min-height: 90px; display: grid; align-content: start; gap: 8px; padding: 17px 18px; color: #0b1029; border: 1px solid #dce1ec; border-radius: 12px; background: #fff; }
.article-prev-next a:last-child { text-align: right; }
.article-prev-next small { display: flex; align-items: center; gap: 5px; color: #c8202b; font-size: 9px; font-weight: 700; }
.article-prev-next a:last-child small { justify-content: flex-end; }
.article-prev-next small img { width: 14px; height: 14px; object-fit: contain; }
.article-prev-next b { font-size: 13px; line-height: 18px; }

.article-page .article-sidebar { display: grid; align-content: start; gap: 16px; }
.article-page .article-sidebar > nav,
.article-page .sidebar-enquiry,
.article-page .share-box,
.article-page .sidebar-tours { padding: 22px; border: 1px solid #dce1ec; border-radius: 16px; background: #f7f8fc; }
.article-page .article-sidebar > nav { display: grid; gap: 10px; }
.article-page .article-sidebar > nav strong { margin-bottom: 4px; color: #0b1029; font-size: 15px; }
.article-page .article-sidebar > nav a { color: #5f6b88; font-size: 12px; }
.article-page .sidebar-enquiry { color: #fff; background: linear-gradient(135deg, #790719, #c61a2a); }
.article-page .sidebar-enquiry h2 { margin: 9px 0 10px; font-size: 22px; line-height: 28px; }
.article-page .sidebar-enquiry p:not(.section-kicker) { margin: 0; color: rgba(255,255,255,.78); font-size: 12px; line-height: 19px; }
.article-page .sidebar-enquiry a { display: inline-flex; margin-top: 14px; padding: 10px 14px; color: #fff; border-radius: 999px; background: #e01827; font-size: 11px; font-weight: 600; }
.article-page .share-box strong { color: #0b1029; }
.article-page .share-box > div { display: flex; gap: 9px; margin-top: 14px; }
.article-page .share-box a { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid #ffbcc4; border-radius: 50%; background: #fff; }
.article-page .share-box a img { width: 17px; height: 17px; object-fit: contain; }
.article-page .sidebar-tours { background: #fff3f4; }
.article-page .sidebar-tours h2 { margin: 8px 0 16px; color: #0b1029; font-size: 20px; line-height: 26px; }
.article-page .sidebar-tours > a:not(.view-all) { min-height: 112px; display: grid; grid-template-columns: 118px 1fr; margin-bottom: 12px; overflow: hidden; border: 1px solid #d9dfeb; border-radius: 14px; background: #fff; }
.article-page .sidebar-tours > a > img { width: 118px; height: 100%; object-fit: cover; }
.article-page .sidebar-tours > a > div { display: grid; align-content: center; gap: 4px; padding: 11px 13px; }
.article-page .sidebar-tours b { color: #0b1029; font-size: 13px; line-height: 17px; }
.article-page .sidebar-tours span { color: #c8202b; font-size: 10px; }
.article-page .sidebar-tours strong { color: #0b1029; font-size: 11px; }
.article-page .sidebar-tours small { width: max-content; display: inline-flex; align-items: center; gap: 6px; margin-top: 3px; padding: 6px 9px; color: #fff; border-radius: 999px; background: #c8202b; font-size: 9px; }
.article-page .sidebar-tours small img,
.article-page .sidebar-tours .view-all img { width: 11px; height: 8px; filter: brightness(0) invert(1); }
.article-page .sidebar-tours .view-all { display: inline-flex; align-items: center; gap: 7px; margin-top: 2px; padding: 11px 15px; color: #fff; border-radius: 999px; background: #c8202b; font-size: 11px; font-weight: 600; }

.article-page .related-reading { padding: 60px 0 70px; background: #f5f7fc; }
.article-page .related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 34px; }
.article-page .related-grid article { min-height: 350px; display: flex; flex-direction: column; overflow: hidden; border: 1px solid #dce1ec; border-radius: 16px; background: #fff; }
.article-page .related-grid > article > img { width: 100%; height: 165px; margin: 0; object-fit: cover; }
.article-page .related-grid article > *:not(img) { margin-left: 18px; margin-right: 18px; }
.article-page .related-grid span { display: block; margin-top: 15px; color: #c8202b; font-size: 10px; font-weight: 700; }
.article-page .related-grid h3 { margin-top: 8px; margin-bottom: 8px; color: #0b1029; font-size: 17px; line-height: 23px; }
.article-page .related-grid p { margin-top: 0; margin-bottom: 12px; color: #65708e; font-size: 11px; line-height: 17px; }
.article-page .related-grid footer { display: flex; align-items: center; justify-content: space-between; margin-top: auto; margin-bottom: 17px; }
.article-page .related-grid footer small { color: #8790a5; font-size: 9px; }
.article-page .related-grid footer a { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: #c8202b; font-size: 10px; font-weight: 600; }
.article-page .related-grid footer a img { width: 11px; height: 8px; }

.article-page .article-cta { height: 300px; display: flex; align-items: center; background: #fffaf8; }
.article-page .article-cta form { height: 150px; display: grid; grid-template-columns: 1fr 250px 250px; gap: 10px; align-items: center; padding: 26px 34px; border: 1px solid #dce1ec; border-radius: 18px; background: #fff; box-shadow: 0 16px 32px -25px rgba(9,17,51,.4); }
.article-page .article-cta form > div { grid-row: 1 / 3; align-self: center; }
.article-page .article-cta h2 { margin: 6px 0; color: #0b1029; font-size: 26px; }
.article-page .article-cta p:not(.section-kicker) { margin: 0; color: #65708e; font-size: 12px; }
.article-page .article-cta input { height: 44px; padding: 0 14px; border: 0; outline: 0; background: #f5f7fc; }
.article-page .article-cta input:first-of-type,
.article-page .article-cta input:nth-of-type(2) { border-radius: 999px; }
.article-page .article-cta button { grid-column: 2 / 4; height: 42px; margin-top: 0; color: #fff; border: 0; border-radius: 999px; background: #c8202b; font-weight: 600; }

/* Motion */
.content-page .site-header{position:relative}.content-hero{padding:80px 0;background:linear-gradient(110deg,#fffaf8,#f4f6fc)}.content-hero h1{margin:16px 0;color:var(--ink);font-size:48px;line-height:56px}.content-hero>div>p:last-child{max-width:720px;margin:0;color:#637091;font-size:16px;line-height:26px}.content-hero-image{min-height:337px;display:flex;align-items:center;position:relative;overflow:hidden;color:#fff;background-color:#0b1029;background-image:linear-gradient(90deg,rgba(5,9,31,.91) 0%,rgba(8,14,42,.76) 48%,rgba(82,17,43,.42) 100%),var(--content-hero-image);background-repeat:no-repeat;background-size:cover;background-position:var(--content-hero-position,center)}.content-hero-image::after{content:"";width:38%;height:155%;position:absolute;right:-8%;top:-30%;pointer-events:none;border:1px solid rgba(255,255,255,.09);border-radius:50%;transform:rotate(-10deg)}.content-hero-image>.container{position:relative;z-index:1}.content-hero-image .breadcrumbs,.content-hero-image .breadcrumbs a{color:rgba(255,255,255,.68)}.content-hero-image .section-kicker{color:#ff626c}.content-hero-image h1{color:#fff;text-shadow:0 2px 18px rgba(2,6,24,.22)}.content-hero-image>div>p:last-child{color:rgba(255,255,255,.78)}.content-body{padding:75px 0 100px;background:#fff}.content-layout{display:grid;grid-template-columns:250px 1fr;gap:70px}.content-layout nav{height:max-content;position:sticky;top:115px;display:grid;padding:18px;border:1px solid #dce2ee;border-radius:16px;background:#f7f8fc}.content-layout nav a{padding:11px 12px;color:#4f5b78;border-radius:8px;font-size:13px}.content-layout nav a:hover{color:var(--red);background:#fff}.content-layout article{max-width:760px}.content-layout article section{padding:0 0 34px;margin:0 0 34px;border-bottom:1px solid #e4e7ef}.content-layout article section:last-child{border-bottom:0}.content-layout h2{margin:0 0 14px;color:var(--ink);font-size:28px}.content-layout p{color:#5f6c8d;font-size:15px;line-height:26px}

.blog-page .site-header,
.article-page .site-header,
.content-page .site-header { position: sticky; top: 0; z-index: 1000; }

.reveal { opacity: 0; transform: translateY(30px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
.reveal-left { transform: translateX(-36px); }
.reveal-right { transform: translateX(36px); }
.reveal.is-visible { opacity: 1; transform: none; }
.package-grid .reveal:nth-child(2), .services-grid .reveal:nth-child(2), .steps-grid .reveal:nth-child(2) { transition-delay: .08s; }
.package-grid .reveal:nth-child(3), .services-grid .reveal:nth-child(3), .steps-grid .reveal:nth-child(3) { transition-delay: .16s; }
.package-grid .reveal:nth-child(5), .services-grid .reveal:nth-child(5) { transition-delay: .08s; }
.package-grid .reveal:nth-child(6), .services-grid .reveal:nth-child(6) { transition-delay: .16s; }

@media (min-width: 901px) and (max-width: 1350px) {
  .testimonial-shell { grid-template-columns: 40px minmax(0, 1fr) 40px; gap: 10px; }
  .testimonial-card { width: 320px; }
  .testimonial-card.is-prev { left: 0; transform: none; }
  .testimonial-card.is-current { width: calc(100% - 680px); left: 340px; transform: none; }
  .testimonial-card.is-current blockquote,
  .testimonial-card.is-current strong,
  .testimonial-card.is-current cite { width: calc(100% - 64px); }
  .testimonial-card.is-next { left: calc(100% - 320px); transform: none; }
  .testimonial-card.is-hidden-left { left: -340px; transform: scale(.9); }
  .testimonial-card.is-hidden-right { left: calc(100% + 20px); transform: scale(.9); }
}

@media (max-width: 1100px) {
  :root { --container: 960px; }
  .primary-navigation { gap: 18px; }
  .why-grid { grid-template-columns: 440px 1fr; gap: 42px; }
  .why-visual { transform: scale(.9); transform-origin: left center; }
  .quick-enquiry { grid-template-columns: 180px 1fr 1fr; }
  .quick-enquiry .button { grid-column: 3; }
  .package-grid { gap: 16px; }
  .testimonial-track { grid-template-columns: 1fr 1.25fr 1fr; }
  .footer-grid { grid-template-columns: 1.3fr .8fr .8fr 1fr; gap: 28px; }
}

@media (max-width: 900px) {
  .content-layout{grid-template-columns:1fr}.content-layout nav{position:static}
  .container, .container-wide { width: min(100% - 36px, 720px); }
  .section { padding-block: 64px; }
  .menu-toggle { display: block; }
  .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .primary-navigation { width: min(360px, calc(100vw - 28px)); min-height: 0; position: fixed; right: 14px; top: 78px; display: grid; gap: 4px; padding: 14px; border: 1px solid var(--line); box-shadow: 0 24px 60px -24px rgba(14,19,41,.45); opacity: 0; visibility: hidden; transform: translateY(-10px); transition: .25s var(--ease); }
  .primary-navigation.is-open { opacity: 1; visibility: visible; transform: none; }
  .nav-link, .nav-link.is-active { width: 100%; display: flex; padding: 12px 14px; border-radius: 8px; }
  .nav-dropdown { width: 100%; }
  .nav-dropdown::after { display: none; }
  .dropdown-toggle { justify-content: space-between; }
  .dropdown-menu { position: static; display: none; margin: 2px 0 6px; box-shadow: none; opacity: 1; visibility: visible; transform: none; }
  .nav-dropdown.is-open .dropdown-menu { display: grid; }
  .hero { min-height: 590px; }
  .hero-inner { min-height: 465px; padding-top: 10px; }
  .hero h1 { font-size: clamp(2.45rem, 7vw, 3rem); }
  .hero-overlay { background: linear-gradient(90deg, rgba(6,9,26,.82), rgba(6,9,26,.42)); }
  .hero-controls { bottom: 58px; }
  .why-grid { grid-template-columns: 1fr; gap: 30px; }
  .why-visual { width: 510px; max-width: 100%; margin: auto; transform: none; }
  .why-copy { text-align: left; }
  .quick-enquiry { grid-template-columns: 1fr 1fr; }
  .quick-enquiry-heading { grid-column: 1 / -1; }
  .quick-enquiry .button { grid-column: auto; }
  .destination-grid { height: 620px; grid-template-columns: 1fr 1fr; grid-template-rows: 1.2fr 1fr 1fr; }
  .destination-wide { grid-column: 1 / 3; }
  .destination-tall { grid-column: 2; grid-row: 2 / 4; }
  .enquiry-grid { grid-template-columns: 1fr; gap: 30px; }
  .tour-enquiry { padding-block: 70px; }
  .package-grid, .services-grid, .blog-grid { grid-template-columns: repeat(2, 1fr); }
  .services-section { height: auto; }
  .services-grid { height: auto; grid-template-rows: none; }
  .steps-grid { grid-template-columns: 1fr; }
  .how-it-works { height: auto; padding-block: 64px; }
  .steps-grid { height: auto; }
  .testimonial-shell { grid-template-columns: 38px minmax(0, 1fr) 38px; gap: 6px; }
  .testimonial-track { height: 280px; overflow: hidden; }
  .testimonial-card { width: 100%; min-width: 100%; height: 270px; top: 5px; }
  .testimonial-card.is-prev, .testimonial-card.is-hidden-left { left: 0; opacity: 0; transform: translateX(-105%) scale(.96); }
  .testimonial-card.is-current { width: 100%; height: 280px; left: 0; top: 0; opacity: 1; transform: translateX(0); }
  .testimonial-card.is-next, .testimonial-card.is-hidden-right { left: 0; opacity: 0; transform: translateX(105%) scale(.96); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 42px 28px; }
  .site-footer { padding-top: 52px; }
}

@media (max-width: 600px) {
  .content-hero{padding:55px 0}.content-hero h1{font-size:36px;line-height:43px}.content-body{padding:55px 0}.content-layout{gap:40px}
  .container, .container-wide { width: min(100% - 28px, 520px); }
  .site-header { height: 76px; }
  .header-inner { height: 58px; }
  .brand { width: 86px; height: 58px; }
  .brand img { width: 86px; height: 58px; }
  .primary-navigation { top: 70px; }
  .hero { min-height: 630px; }
  .hero-inner { min-height: 500px; align-items: center; padding-top: 18px; }
  .hero-pill { white-space: normal; font-size: 11px; }
  .hero-copy-stage { min-height: 222px; }
  .hero h1 { font-size: 2.35rem; }
  .hero-copy-stage p { font-size: 14px; }
  .hero-actions { flex-wrap: wrap; }
  .hero-actions .button { min-width: 146px; padding-inline: 20px; }
  .hero-controls { bottom: 54px; }
  .hero-arrows { gap: 9px; }
  .section-heading { margin-bottom: 30px; }
  .section-heading h2, .why-copy h2 { font-size: 2rem; }
  .why-section { padding-top: 46px; }
  .why-visual { height: 365px; }
  .why-image-main { width: calc(100% - 48px); height: 335px; }
  .why-image-secondary { width: 154px; height: 122px; bottom: 10px; }
  .since-card { left: 16px; bottom: -4px; padding: 13px 16px; }
  .since-card strong { font-size: 18px; }
  .trust-stats { gap: 24px; }
  .trust-stats dt { font-size: 17px; }
  .quick-enquiry { width: calc(100% - 28px); grid-template-columns: 1fr; padding: 18px; }
  .quick-enquiry .button { grid-column: 1; }
  .home-enquiry-bridge { background: linear-gradient(to bottom, transparent 0 34px, #fff 34px); }
  .home-enquiry-bridge .quick-enquiry { margin-top: -34px; }
  .destination-grid { height: auto; display: grid; grid-template-columns: 1fr; grid-template-rows: none; }
  .destination-card, .destination-wide, .destination-tall { grid-column: auto; grid-row: auto; height: 230px; }
  .destination-wide { height: 250px; }
  .enquiry-form { grid-template-columns: 1fr; }
  .enquiry-form .button { grid-column: 1; }
  .package-grid, .services-grid, .blog-grid { grid-template-columns: 1fr; }
  .blog-section { padding-block: 60px; }
  .blog-card-body { min-height: 0; }
  .cta-panel { align-items: flex-start; flex-direction: column; padding: 30px 24px; }
  .cta-contact { flex-direction: column; gap: 5px; }
  .testimonial-shell { grid-template-columns: 1fr; }
  .testimonial-track { grid-row: 1; }
  .testimonial-control { position: absolute; z-index: 4; top: 50%; transform: translateY(-50%); }
  .testimonial-control:hover { transform: translateY(-50%) scale(1.04); }
  .testimonial-prev { left: 2px; }
  .testimonial-next { right: 2px; }
  .testimonial-card { min-width: 100%; padding-inline: 36px; }
  .testimonial-card blockquote, .testimonial-card strong, .testimonial-card cite,
  .testimonial-card.is-current blockquote, .testimonial-card.is-current strong, .testimonial-card.is-current cite { width: 100%; }
  .footer-grid { grid-template-columns: 1fr; gap: 34px; }
  .footer-brand { max-width: 100%; }
  .footer-bottom { height: auto; align-items: flex-start; flex-direction: column; gap: 8px; padding-block: 18px 24px; }
  .floating-whatsapp { width: 46px; height: 46px; right: 14px; bottom: 14px; }
}

@media (max-width: 1100px) {
  .service-hero-copy,.service-hero h1,.service-hero-intro{width:min(590px,62vw)}
  .service-trust-panel{width:310px}
  .service-overview{height:auto;padding-bottom:70px}.service-introduction{height:auto;grid-template-columns:1.05fr .95fr;gap:28px;padding:30px}.service-introduction-copy h2,.service-introduction-copy>p:not(.service-kicker){width:auto}.service-introduction-image{width:100%}.service-professional-panel{height:auto;min-height:580px}.service-why-grid{grid-template-columns:430px 1fr;gap:36px}.service-why-copy h2,.service-why-intro{width:auto}.service-enquiry-panel{grid-template-columns:1fr 1fr;gap:34px}.service-enquiry-copy>p:last-child{width:auto}
  .about-story-grid{grid-template-columns:470px 1fr;gap:35px}.about-story-visual{transform:scale(.88);transform-origin:left center}.about-story-copy h2,.about-story-copy>p:not(.section-kicker),.about-promise{width:auto}.about-guide-grid{grid-template-columns:repeat(2,1fr)}.about-guide-card h3,.about-guide-card span{width:auto}.about-values-grid{grid-template-columns:repeat(3,1fr)}
  .contact-hero-grid{grid-template-columns:1fr 360px;gap:28px}.contact-hero-copy h1,.contact-hero-copy>p:not(.section-kicker){width:auto}.contact-promise,.contact-promise h2,.contact-promise>p:not(.section-kicker){width:auto}.contact-enquiry-grid{grid-template-columns:390px 1fr}
  .package-hero-grid,.blog-hero-grid{grid-template-columns:1fr 1fr;gap:40px}.domestic-intro-grid{grid-template-columns:minmax(0,1fr) 340px;gap:40px}.domestic-intro h1{width:auto;font-size:46px;line-height:53px}.domestic-feature{width:340px}.collection-grid,.tour-grid,.blog-grid{gap:18px}.package-step-grid{gap:14px}
  .article-layout{grid-template-columns:minmax(0,1fr) 300px;gap:36px}.article-header img{width:100%}
}

@media (max-width: 900px) {
  .service-hero{height:auto;min-height:700px}.service-hero-inner{display:block}.service-hero-copy{width:100%;padding-top:70px}.service-hero h1,.service-hero-intro{width:min(100%,650px)}.service-hero h1{font-size:44px;line-height:51px}.service-trust-panel{position:relative;right:auto;top:auto;width:min(100%,620px);margin-top:34px}.service-overview{padding:64px 0}.service-introduction{grid-template-columns:1fr;margin-top:0}.service-introduction-image{height:330px}.service-professional-panel{grid-template-columns:1fr;gap:35px;padding-bottom:150px}.service-professional-panel::before{display:none}.service-shared-support{grid-template-columns:4px 1fr}.service-shared-support p{display:none}.service-why{height:auto;padding:70px 0}.service-why-grid{grid-template-columns:minmax(0,1fr);min-width:0}.service-why-copy{width:100%;min-width:0}.service-why-copy h2,.service-why-intro,.service-benefits{width:100%;max-width:100%;min-width:0}.service-benefits li div{min-width:0}.service-why-visual{width:500px;max-width:100%;margin:auto}.service-faq{height:auto;padding:70px 0}.service-faq-heading{width:auto;margin:0 auto 35px}.service-faq-grid{grid-template-columns:1fr}.service-faq-card{height:auto;min-height:145px}.service-enquiry{height:auto;padding:70px 0}.service-enquiry-panel{height:auto;grid-template-columns:1fr;padding:38px}
  .about-page main{overflow-x:clip}.about-hero-copy h1,.about-hero-copy>p:not(.section-kicker){width:auto}.about-hero-copy h1{font-size:46px;line-height:53px}.about-story{height:auto;padding:70px 0}.about-story-grid{grid-template-columns:1fr}.about-story-visual{margin:auto;transform:none}.about-guides,.about-values,.about-travellers,.about-cta{height:auto;padding:70px 0}.about-guide-grid,.about-values-grid{grid-template-columns:1fr}.about-section-heading h2,.about-section-heading>p:not(.section-kicker),.about-travellers .about-section-heading h2,.about-audience-pills{width:auto}.about-cta-inner{align-items:flex-start;flex-direction:column;gap:30px}.about-cta a{align-self:flex-start}
  .contact-hero{height:auto;padding:65px 0}.contact-hero-grid{grid-template-columns:1fr}.contact-promise{height:auto}.contact-enquiry{height:auto;padding:70px 0}.contact-enquiry-grid{grid-template-columns:1fr}.contact-process{height:auto;padding:70px 0}.contact-process-grid{grid-template-columns:1fr}.contact-process article{height:auto;min-height:180px}.contact-map-section{height:auto;padding:45px 0}.contact-ready{height:auto;padding:60px 0}
  .package-hero,.domestic-intro,.blog-hero{height:auto;padding:65px 0}.package-hero-grid,.domestic-intro-grid,.blog-hero-grid{grid-template-columns:1fr}.package-hero h1,.domestic-intro h1{width:auto}.package-hero-visual,.domestic-feature,.blog-featured{height:400px}.collection-grid,.tour-grid,.blog-grid,.blog-list .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-finder,.domestic-search,.blog-filter{height:auto;padding:38px 0}.package-finder form,.domestic-search form{height:auto;grid-template-columns:1fr 1fr}.package-finder form>div,.domestic-search form>div{grid-column:1/-1}.package-steps{height:auto;padding:65px 0}.package-step-grid{grid-template-columns:1fr}.domestic-cta{height:auto;padding:65px 0}.domestic-faq-grid{grid-template-columns:1fr}.blog-filter>.container{height:auto;flex-wrap:wrap}.blog-filter>.container>div{width:100%}.blog-filter input{flex-basis:100%}.blog-guide{height:auto;padding:65px 0}.blog-guide>.container{grid-template-columns:1fr;gap:35px}.blog-subscribe,.article-cta{height:auto;padding:65px 0}.blog-subscribe form,.article-cta form{height:auto;grid-template-columns:1fr}.blog-subscribe input,.blog-subscribe button{border-radius:999px}.article-header h1,.article-header>div>p:not(.section-kicker):not(.breadcrumbs){width:auto}.article-header h1{font-size:40px;line-height:47px}.article-header img{height:360px}.article-layout{grid-template-columns:1fr}.article-sidebar{grid-template-columns:1fr 1fr}.sidebar-tours{grid-column:1/-1}.related-grid{grid-template-columns:repeat(2,1fr)}.article-cta button{grid-column:auto}
}

@media (max-width: 900px) {
  .packages-page main { overflow-x: clip; }
  .packages-hero { height: auto; min-height: 570px; padding: 74px 0; }
  .packages-hero-copy { width: min(100% - 36px, 720px); }
  .packages-hero h1,
  .packages-hero p:not(.section-kicker) { width: auto; max-width: 650px; }
  .packages-hero h1 { font-size: 46px; line-height: 53px; }
  .packages-destinations { height: auto; padding: 64px 0; }
  .destination-mosaic { height: 480px; }
  .package-search { height: auto; padding: 58px 0; }
  .package-search-panel { height: auto; grid-template-columns: 1fr; gap: 28px; padding: 34px; }
  .package-search-panel form { min-width: 0; }
  .package-search-panel input,
  .package-search-panel button { min-width: 0; width: 100%; }
  .packages-page .testimonial-shell,
  .packages-page .testimonials-section { overflow: clip; }
}

@media (max-width: 600px) {
  .service-hero{min-height:760px;padding-bottom:30px}.service-hero-copy{padding-top:52px}.service-hero h1{font-size:36px;line-height:43px}.service-hero-intro{font-size:16px;line-height:26px}.service-highlight-pills{flex-wrap:wrap}.service-hero-actions{flex-wrap:wrap}.service-trust-panel{margin-bottom:0}.service-introduction{padding:22px}.service-introduction-copy h2,.service-included-heading h2,.service-why-copy h2,.service-faq-heading h2{font-size:30px;line-height:38px}.service-introduction-image{height:260px}.service-professional-panel{padding:28px 22px 165px}.service-shared-support{left:22px;right:22px;bottom:28px;padding:18px}.service-why-visual{height:400px}.service-why-main{width:calc(100% - 45px);height:370px}.service-why-secondary{width:155px;height:120px}.service-established{bottom:25px}.service-benefits li{height:auto;min-height:70px;padding:11px 0}.service-benefits strong,.service-benefits span{overflow-wrap:anywhere}.service-enquiry-panel{padding:28px 22px}.service-field-row{grid-template-columns:1fr}
  .about-hero{height:520px}.about-hero-copy h1{font-size:37px;line-height:44px}.about-story-visual{width:100%;height:420px}.about-story-primary{width:calc(100% - 45px);height:390px}.about-story-secondary{width:190px;height:150px;left:auto;right:0;top:270px}.about-story-copy h2,.about-section-heading h2{font-size:32px;line-height:39px}.about-stats{gap:25px}.about-guide-card{height:auto;min-height:200px}.about-value-card{height:auto;min-height:250px}.about-cta-inner,.contact-ready-inner{align-items:flex-start;flex-direction:column}.about-cta h2{width:auto}.about-audience-pills{justify-content:flex-start}
  .contact-hero-copy h1{font-size:38px;line-height:46px}.contact-hero-actions{flex-direction:column}.contact-fields{grid-template-columns:1fr}.contact-message{grid-column:auto}.contact-map-card{width:auto;left:18px;right:18px;top:18px}.contact-ready-inner{gap:24px}
  .package-hero h1,.domestic-intro h1,.blog-hero h1{font-size:36px;line-height:43px}.package-hero-visual,.domestic-feature,.blog-featured{height:330px}.collection-grid,.tour-grid,.blog-grid,.blog-list .blog-grid{grid-template-columns:minmax(0,1fr)}.blog-list .blog-grid{gap:20px;margin-top:28px}.blog-list .blog-card{min-height:0}.blog-list .blog-card-body{min-height:0;padding:20px}.blog-list .blog-card h3,.blog-list .blog-card-body>p{min-height:0}.package-finder form,.domestic-search form{grid-template-columns:1fr}.package-finder form>div,.domestic-search form>div{grid-column:auto}.tour-card{height:430px}.tour-card-image{height:220px}.domestic-cta>.container{height:auto;align-items:flex-start;flex-direction:column;gap:24px;padding:28px}.domestic-cta-contact{flex-direction:column;gap:7px}.domestic-faq{padding:65px 0}.domestic-faq-grid p{margin-left:0}.blog-tags{flex-wrap:wrap}.blog-hero-grid>div>small{width:auto}.blog-filter button{flex:1}.blog-subscribe form{padding:24px}.article-header{padding:45px 0}.article-header h1{font-size:34px;line-height:41px}.article-header img{height:250px}.article-content li{grid-template-columns:1fr}.article-prev-next,.article-sidebar,.related-grid{grid-template-columns:1fr}.sidebar-tours{grid-column:auto}.article-cta form{padding:24px}
}

@media (max-width: 600px) {
  .packages-hero { min-height: 540px; padding: 62px 0; }
  .packages-hero-copy { width: min(100% - 28px, 520px); }
  .packages-hero h1 { font-size: 37px; line-height: 44px; }
  .packages-hero p:not(.section-kicker) { font-size: 15px; line-height: 25px; }
  .packages-destinations { padding: 56px 0; }
  .destination-mosaic { height: auto; grid-template-columns: 1fr 1fr; grid-template-rows: 230px 150px; }
  .destination-mosaic img:first-child { grid-column: 1 / -1; grid-row: auto; }
  .package-search { padding: 0 0 56px; }
  .package-search-panel { width: min(100% - 28px, 520px); gap: 24px; padding: 28px 22px; border-radius: 18px; }
  .package-search-panel h2 { font-size: 30px; line-height: 38px; }
  .package-search-panel form { grid-template-columns: 1fr; }
  .package-search-panel button { grid-column: auto; }
}

@media (max-width: 900px) {
  .domestic-intro { min-height: 620px; padding: 72px 0 112px; }
  .domestic-intro-grid { grid-template-columns: 1fr; gap: 42px; }
  .domestic-intro h1 { max-width: 640px; }
  .domestic-feature { width: min(100%, 520px); height: 270px; }
  .domestic-search { margin-top: -42px; padding: 0; }
  .domestic-search form { min-height: 150px; padding: 18px; }
  .tour-card { height: 442px; grid-template-rows: 218px 1fr; }
  .tour-card-image { height: 218px; }
}

@media (max-width: 600px) {
  .domestic-intro { min-height: 620px; padding: 48px 0 92px; background-position: 62% center; }
  .domestic-intro h1 { font-size: 38px; line-height: 45px; }
  .domestic-intro p:not(.section-kicker):not(.breadcrumbs) { font-size: 15px; line-height: 25px; }
  .domestic-intro-copy > div { display: flex; flex-wrap: wrap; gap: 10px; }
  .domestic-feature { height: 250px; padding: 22px; }
  .domestic-feature-dots { display: none; }
  .domestic-feature-copy > p:not(.domestic-feature-place) { flex-wrap: wrap; }
  .domestic-search { height: auto; margin-top: -36px; padding: 0 0 54px; }
  .domestic-search form { min-height: 326px; }
  .tour-card { height: 454px; grid-template-rows: 230px 1fr; }
  .tour-card-image { height: 230px; }
  .tour-card > div { padding: 16px 18px 18px; }
  .domestic-faq-grid p { margin-left: 41px; }
}

@media (max-width: 900px) {
  .blog-hero { min-height: 620px; padding: 72px 0 112px; }
  .blog-hero-grid { grid-template-columns: 1fr; gap: 42px; }
  .blog-hero h1 { width: auto; max-width: 640px; }
  .blog-featured { width: min(100%, 520px); height: 270px; }
  .blog-filter { height: auto; margin-top: -42px; padding: 0 0 42px; background: linear-gradient(to bottom, transparent 0 42px, #f5f7fc 42px); }
  .blog-filter > .container { height: auto; min-height: 150px; flex-wrap: wrap; }
  .blog-filter > .container > div { width: 100%; }
  .blog-filter input { flex-basis: 100%; }
}

@media (max-width: 600px) {
  .blog-hero { min-height: 620px; padding: 48px 0 92px; }
  .blog-hero h1 { font-size: 38px; line-height: 45px; }
  .blog-hero-copy > p:not(.section-kicker):not(.breadcrumbs) { font-size: 15px; line-height: 25px; }
  .blog-tags { flex-wrap: wrap; }
  .blog-featured { height: 250px; padding: 22px; }
  .blog-featured-dots { display: none; }
  .blog-filter { margin-top: -36px; padding-bottom: 54px; background: linear-gradient(to bottom, transparent 0 36px, #f5f7fc 36px); }
  .blog-filter > .container { padding: 18px; }
  .blog-filter button { flex: 1; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Blog article responsive alignment */
@media (max-width: 1100px) {
  .article-page main { overflow-x: clip; }
  .article-page .article-header .breadcrumbs,
  .article-page .article-header h1,
  .article-page .article-header > .container > p:not(.section-kicker):not(.breadcrumbs),
  .article-page .article-hero-figure { width: 100%; }
  .article-page .article-layout { grid-template-columns: minmax(0, 1fr) 300px; gap: 36px; }
  .article-page .article-sidebar { min-width: 0; }
}

@media (max-width: 900px) {
  .article-page .article-header { height: auto; padding: 50px 0; }
  .article-page .article-header .breadcrumbs,
  .article-page .article-header h1,
  .article-page .article-header > .container > p:not(.section-kicker):not(.breadcrumbs) { width: 100%; }
  .article-page .article-header h1 { font-size: 40px; line-height: 48px; }
  .article-page .article-meta { flex-wrap: wrap; }
  .article-page .article-hero-figure { width: 100%; height: 360px; }
  .article-page .article-layout { grid-template-columns: minmax(0, 1fr); }
  .article-page .article-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .article-page .sidebar-tours { grid-column: 1 / -1; }
  .article-page .related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .article-page .article-cta { height: auto; padding: 65px 0; }
  .article-page .article-cta form { height: auto; grid-template-columns: 1fr; }
  .article-page .article-cta form > div { grid-row: auto; }
  .article-page .article-cta button { grid-column: auto; }
}

@media (max-width: 600px) {
  .article-page .article-header { padding: 40px 0; }
  .article-page .article-header h1 { font-size: 34px; line-height: 41px; }
  .article-page .article-header > .container > p:not(.section-kicker):not(.breadcrumbs) { font-size: 15px; line-height: 24px; }
  .article-page .article-meta { gap: 8px 12px; }
  .article-page .article-meta span + span::before { margin-right: 12px; }
  .article-page .article-hero-figure { height: 250px; border-radius: 16px; }
  .article-page .article-layout { padding-top: 48px; padding-bottom: 48px; }
  .article-page .article-content h2 { font-size: 24px; line-height: 32px; }
  .article-page .article-content .article-checklist li,
  .article-page .article-advice-list li { height: auto; min-height: 74px; }
  .article-page .article-prev-next,
  .article-page .article-sidebar,
  .article-page .related-grid { grid-template-columns: 1fr; }
  .article-page .article-prev-next a:last-child { text-align: left; }
  .article-page .article-prev-next a:last-child small { justify-content: flex-start; }
  .article-page .article-cta input,
  .article-page .article-cta input:first-of-type,
  .article-page .article-cta input:nth-of-type(2),
  .article-page .article-cta button { border-radius: 999px; }
}
