.homepage-main { width: 100%; padding: 0; margin: 0; }
.home-section { padding-block: clamp(3rem,5vw,5rem); }
.homepage h2,.homepage h3 { font-family: var(--font-editorial); font-weight: 400; letter-spacing: -.025em; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; margin-bottom: 1.75rem; }
.section-heading h2 { font-size: clamp(2rem,3.2vw,3.2rem); line-height: 1.15; margin: .45rem 0 .65rem; }
.section-heading p { margin: 0; }
.section-heading .eyebrow { color: var(--color-muted); }
.text-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 1.5rem; font-size: .85rem; min-height: 44px; text-decoration: underline; text-decoration-color: var(--color-gold); text-underline-offset: .5em; flex-shrink: 0; }
.text-link span { color: var(--color-forest); }
.discovery-grid,.experience-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(15rem,1fr)); gap: 1rem; }
.image-tile { position: relative; display: flex; align-items: flex-end; isolation: isolate; min-height: 22rem; border-radius: var(--radius-card); overflow: hidden; text-decoration: none; color: var(--color-white); }
.image-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.image-tile::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg,color-mix(in srgb,var(--color-deep) 90%,transparent),transparent 85%); }
.image-tile > div { padding: 1.5rem; width: 100%; }
.image-tile h3 { color: inherit; font-size: 2rem; margin: 0 0 .4rem; }
.image-tile p { display: flex; justify-content: space-between; gap: 1rem; font-size: .85rem; margin: 0; }
.image-tile:hover { outline: 2px solid var(--color-gold); outline-offset: -2px; }
.experience-section { background: var(--color-forest); color: var(--color-white); }
.experience-section h2,.experience-section a,.experience-section .text-link span { color: var(--color-white); }
.experience-section .eyebrow { color: var(--color-gold); }
.experience-tile { min-height: 17rem; }
.experience-tile > div { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.experience-tile h3 { font-family: inherit; font-size: 1.2rem; font-weight: 600; }
/* Small inventories stay editorial: a landscape tile, never a stretched portrait. */
.discovery-grid:has(> :only-child),.experience-grid:has(> :only-child) { grid-template-columns: minmax(0,1fr); }
.discovery-grid > :only-child { min-height: 21rem; }
.experience-grid > :only-child { min-height: 17rem; }
.home-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; align-items: start; }
.home-card-grid:has(> :only-child) { grid-template-columns: minmax(0,1fr); }
.home-card-grid > :only-child { display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
.journey-card,.journal-card { border: 1px solid var(--color-border); border-radius: var(--radius-card); overflow: hidden; background: var(--color-white); }
.journey-card img,.journal-card img { display: block; width: 100%; aspect-ratio: 3/2; height: auto; object-fit: cover; }
.home-card-grid > :only-child > a { height: 100%; }
.home-card-grid > :only-child img { height: 100%; min-height: 20rem; }
.journey-body { padding: 1.5rem; }
.journey-body .eyebrow { font-size: .65rem; letter-spacing: .12em; margin: 0 0 .8rem; }
.journey-body h3 { font-size: 1.75rem; line-height: 1.2; margin: 0 0 1rem; }
.journey-body h3 a { text-decoration: none; }
.journey-body h3 a:hover { text-decoration: underline; }
.journey-body > p:not(.eyebrow) { font-size: .9rem; }
.journey-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--color-border); padding-top: 1rem; font-size: .85rem; }
.quiet { color: var(--color-muted); }
.journal-section { background: var(--color-alternate); }
.operator-recruitment { background: var(--color-forest); color: var(--color-white); }
.recruitment-inner { display: flex; align-items: center; justify-content: space-between; gap: 3rem; }
.operator-recruitment .eyebrow { color: var(--color-gold); }
.operator-recruitment h2 { color: var(--color-white); font-size: clamp(2rem,3.5vw,3.5rem); line-height: 1.15; margin: 1rem 0; }
.operator-recruitment p { max-width: 55ch; }
.recruitment-inner .button { min-width: 13rem; flex-shrink: 0; }
.home-intro .hero-search { margin-top: 2rem; }
@media(min-width:1024px) { .discovery-grid:has(> :only-child) > .image-tile { min-height: 24rem; } }
@media(min-width:768px) and (max-width:1023px) { .home-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
    .home-section { padding-block: 2.75rem; }
    .section-heading { display: block; }
    .section-heading .text-link { margin-top: .75rem; }
    .section-heading h2 { max-width: 18ch; }
    .discovery-grid,.experience-grid { grid-auto-flow: column; grid-auto-columns: 85%; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: .5rem; }
    .image-tile { scroll-snap-align: start; min-height: 19rem; }
    .discovery-grid:has(> :only-child),.experience-grid:has(> :only-child) { grid-template-columns: 1fr; grid-auto-columns: auto; }
    .discovery-grid > :only-child { min-height: 19rem; }
    .home-card-grid,.home-card-grid > :only-child { display: grid; grid-template-columns: 1fr; }
    .home-card-grid > :only-child img { min-height: 0; height: auto; }
    .recruitment-inner { display: block; }
    .recruitment-inner .button { margin-top: 1rem; }
}

/* Traveller-first editorial sections, using the existing OGE theme and hero. */
.home-introduction{background:var(--color-white)}.introduction-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}.home-introduction h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.15}.home-introduction p{max-width:60ch}.discovery-promise{background:var(--color-forest);color:var(--color-white);padding:clamp(2rem,5vw,4rem);border-radius:var(--radius-card)}.discovery-promise h3{color:inherit;font-size:2rem}.discovery-promise .eyebrow{color:var(--color-gold)}.destination-inspiration{background:var(--color-alternate)}.inspiration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.inspiration-grid article{border-radius:var(--radius-card);border-top:3px solid var(--color-gold);padding:2rem;background:var(--color-white)}.inspiration-grid h3{font-size:2rem;margin:.75rem 0}.hero-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.hero-actions .hero-cta:not(:first-child){background:transparent;border:1px solid var(--color-white);color:var(--color-white)}@media(max-width:767px){.introduction-grid,.inspiration-grid{grid-template-columns:1fr}.hero-actions a{width:100%;text-align:center;justify-content:center}}

.hero-actions .hero-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1.25rem;border:1px solid var(--color-gold);border-radius:var(--radius-control);text-decoration:none;font-weight:650}.hero-actions .hero-cta:first-child{background:var(--color-gold);color:var(--color-forest)}.hero-actions .hero-cta:first-child span{color:inherit}.home-card-grid>:only-child:not(:has(>a)){display:block}
