.land-page { overflow: hidden; }
.land-page .container { position: relative; }
.land-hero { padding-block: var(--space-8) var(--space-10); }
.land-hero__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.land-hero__copy { grid-column: 1 / span 6; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.land-hero__copy > * { min-width: 0; margin: 0; }
.land-hero__copy h1 { max-width: 7.5ch; }
.land-hero__copy .lead { max-width: 54ch; }
.land-hero__media { grid-column: 8 / span 5; min-width: 0; width: 100%; margin: var(--space-7) 0 0; position: relative; }
.land-hero__image { width: 100%; aspect-ratio: 16 / 9; border-width: var(--border-strong-width); }
.land-hero__sticker { position: absolute; right: -1rem; bottom: 1.5rem; z-index: 1; }
.land-ways__intro { width: 50%; min-width: 0; margin-left: 8.333%; }
.land-ways__intro p:not(.eyebrow) { max-width: 58ch; }
.land-ways__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.land-choice { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-6); border: var(--border-width) solid var(--color-dark-brown); border-radius: var(--radius-lg); color: var(--color-dark-brown); text-decoration: none; transition: transform var(--transition-fast), box-shadow var(--transition-fast); }
.land-choice > * { min-width: 0; margin: 0; }
.land-choice:hover { color: var(--color-dark-brown); transform: translateY(-2px); box-shadow: var(--shadow-subtle); }
.land-choice h3 { max-width: 20ch; }
.land-choice p { max-width: 34ch; }
.land-choice--city { background: var(--color-paper-deep); }
.land-choice--beach { background: var(--color-sky-blue); }
.land-choice--nature { background: var(--color-sunny-yellow); }
.land-choice--tour { background: var(--color-white); }
.land-choice__icon { font-family: var(--font-heading); font-size: 2rem; line-height: 1; }
.land-choice__action { font-weight: 700; text-decoration: underline; text-underline-offset: .16em; }
.land-ways__note { max-width: 58ch; margin: var(--space-5) 0 0 8.333%; }
.land-moods__heading { max-width: 22ch; }
.land-story { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: center; margin-top: var(--space-8); }
.land-story__media { min-width: 0; width: 100%; }
.land-story__media img { width: 100%; height: 100%; }
.land-story__copy { min-width: 0; }
.land-story__copy p { max-width: 50ch; }
.land-story--city .land-story__media { grid-column: 1 / span 5; }
.land-story--city .land-story__copy { grid-column: 8 / span 5; }
.land-story--nature .land-story__copy { grid-column: 1 / span 5; }
.land-story--nature .land-story__media { grid-column: 8 / span 5; }
.land-tags { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: var(--space-5) 0 0; padding: 0; list-style: none; }
.land-tags li { padding: var(--space-1) var(--space-3); border: var(--border-width) solid var(--color-dark-brown); border-radius: 999px; background: var(--color-sunny-yellow); font-size: var(--text-sm); font-weight: 700; }
.land-fact-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-2); margin: var(--space-5) 0 0; }
.land-fact-strip div { min-width: 0; padding: var(--space-3); border-top: var(--border-width) solid var(--color-dark-brown); }
.land-fact-strip dt { font-weight: 700; }
.land-fact-strip dd { margin: 0; color: var(--color-brown-muted); font-size: var(--text-sm); }
.land-story--taste { width: 58.333%; min-width: 0; margin: var(--space-9) 0 0 16.667%; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.land-story--taste > * { min-width: 0; margin: 0; }
.land-story--taste p { max-width: 50ch; }
.land-decision__intro { width: 50%; min-width: 0; }
.land-decision__intro p:not(.eyebrow) { max-width: 55ch; }
.land-decision__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(5rem, 2fr) minmax(0, 5fr); gap: var(--space-5); align-items: stretch; margin-top: var(--space-7); }
.land-decision__panel { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.land-decision__panel > * { min-width: 0; margin: 0; }
.land-decision__panel p { max-width: 36ch; }
.land-decision__symbol { font-family: var(--font-heading); font-size: 2.5rem; line-height: 1; }
.land-decision__or { min-width: 0; display: grid; place-items: center; font-family: var(--font-heading); font-size: 2rem; }
.land-checkpoints { width: 100%; min-width: 0; display: flex; flex-direction: column; align-items: stretch; gap: var(--space-2); }
.land-checkpoints button { width: 100%; min-width: 0; min-height: 2.75rem; padding: var(--space-2) var(--space-3); border: var(--border-width) solid var(--color-dark-brown); border-radius: var(--radius-sm); background: rgba(255,253,245,.45); font-weight: 700; text-align: left; }
.land-checkpoints p { margin: 0; padding: 0 var(--space-3); font-size: var(--text-sm); }
.land-rule { width: min(100%, 32ch); margin: var(--space-7) auto 0; padding: var(--space-4) var(--space-5); border: var(--border-width) solid var(--color-dark-brown); border-radius: var(--radius-lg); background: var(--color-orange); color: var(--color-paper); box-shadow: var(--shadow-sticker); }
.land-timeline__heading { width: min(100%, 24ch); margin-inline: auto; text-align: center; }
.land-timeline__list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--space-4); margin: var(--space-7) 0 0; padding: 0; list-style: none; }
.land-timeline__list > li { min-width: 0; position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.land-timeline__number { display: grid; width: 3rem; aspect-ratio: 1; place-items: center; border: var(--border-width) solid var(--color-dark-brown); border-radius: 50%; background: var(--color-white); font-family: var(--font-heading); font-size: 1.4rem; font-weight: 800; }
.land-timeline__list h3 { font-size: 1.25rem; }
.land-timeline__list h3, .land-timeline__list p { margin: 0; }
.land-timeline__list p { max-width: 30ch; }
.land-timeline__return .land-timeline__number { background: var(--color-orange); color: var(--color-paper); }
.land-pack__intro { width: 50%; min-width: 0; }
.land-pack__intro .lead { max-width: 52ch; }
.land-pack__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 5fr)); gap: 16.667%; margin-top: var(--space-7); }
.land-pack__card { min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.land-pack__card > * { min-width: 0; margin: 0; }
.land-pack__card p { max-width: 38ch; }
.land-checklist { display: flex; flex-direction: column; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }
.land-checklist li { min-width: 0; }
.land-checklist button { display: flex; width: 100%; min-width: 0; min-height: 2.75rem; align-items: center; gap: var(--space-2); padding: var(--space-2); border: 0; background: transparent; text-align: left; }
.land-checklist button span { display: inline-grid; width: 1.25rem; flex: 0 0 1.25rem; aspect-ratio: 1; place-items: center; border: var(--border-width) solid var(--color-dark-brown); border-radius: var(--radius-sm); }
.land-checklist button[aria-pressed="true"] span { background: var(--color-orange); }
.land-checklist button[aria-pressed="true"] span::after { content: "✓"; color: var(--color-paper); font-weight: 700; }
.land-pack__note { width: min(100%, 30ch); margin: var(--space-5) 0 0 auto; padding: var(--space-3); }
.land-crews__heading { max-width: 26ch; }
.land-crews__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.land-crew-card { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-5); border: var(--border-width) solid var(--color-dark-brown); border-radius: var(--radius-lg); }
.land-crew-card > * { min-width: 0; margin: 0; }
.land-crew-card > span { font-family: var(--font-heading); font-size: 2.5rem; font-weight: 800; }
.land-crew-card p { max-width: 34ch; }
.land-crew-card ul { padding-left: 1.3em; }
.land-crew-card--family { background: var(--color-sunny-yellow); }
.land-crew-card--slow { background: var(--color-paper-deep); }
.land-crew-card--mixed { background: var(--color-white); }
.land-crews__bar { margin-top: var(--space-5); padding: var(--space-5); border: var(--border-width) solid var(--color-dark-brown); border-radius: var(--radius-lg); background: var(--color-sea-deep); color: var(--color-paper); }
.land-return__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.land-return__intro { grid-column: 1 / span 5; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.land-return__intro > * { min-width: 0; margin: 0; }
.land-return__intro p:not(.eyebrow) { max-width: 52ch; }
.land-return__facts { grid-column: 6 / span 7; min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
.land-return__facts article { min-width: 0; padding: var(--space-4); border: var(--border-width) solid var(--color-dark-brown); border-radius: var(--radius-lg); background: var(--color-white); }
.land-return__facts article > * { min-width: 0; }
.land-return__facts span { font-family: var(--font-heading); font-size: 2.5rem; line-height: 1; }
.land-return__facts h3 { margin-top: var(--space-3); font-size: 1.2rem; }
.land-return__facts p { max-width: 30ch; margin-bottom: 0; }
.land-onboard__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: center; }
.land-onboard__copy { grid-column: 1 / span 5; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.land-onboard__copy > * { min-width: 0; margin: 0; }
.land-onboard__copy p:not(.eyebrow) { max-width: 52ch; }
.land-onboard__links { width: min(100%, 18.75rem); min-width: 0; display: flex; flex-direction: column; align-items: stretch; gap: var(--space-3); }
.land-onboard__links > * { min-width: 0; }
.land-onboard__links > a:last-child { align-self: flex-start; font-weight: 700; }
.land-onboard__media { grid-column: 7 / span 6; min-width: 0; width: 100%; margin: 0; }
.land-onboard__media .image-frame { width: 100%; aspect-ratio: 16 / 10; border-width: var(--border-strong-width); }
.land-closing { padding-top: var(--space-9); }
.land-closing__panel { width: 66.667%; min-width: 0; position: relative; display: flex; flex-direction: column; align-items: center; gap: var(--space-5); margin-inline: auto; padding: var(--space-8); overflow: hidden; border: var(--border-strong-width) solid var(--color-dark-brown); border-radius: var(--radius-lg); background: var(--color-paper-deep); text-align: center; }
.land-closing__panel > * { min-width: 0; margin: 0; }
.land-closing blockquote { max-width: 22ch; padding: 0; border: 0; background: transparent; font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.05; }
.land-closing__panel p { max-width: 46ch; }
.land-closing__sun { position: absolute; top: -4rem; right: -3rem; width: 9rem; aspect-ratio: 1; border: var(--border-width) solid var(--color-dark-brown); border-radius: 50%; background: var(--color-sunny-yellow); }
.land-closing__wave { color: var(--color-sea-deep); font-size: 2rem; letter-spacing: .15em; }
@media (max-width: 66rem) { .land-timeline__list { grid-template-columns: repeat(3, minmax(0, 1fr)); } .land-timeline__list > li:nth-child(4) { grid-column: 1 / span 1; } .land-story { grid-template-columns: repeat(8, minmax(0, 1fr)); } .land-story--city .land-story__media, .land-story--city .land-story__copy, .land-story--nature .land-story__copy, .land-story--nature .land-story__media { grid-column: span 4; } }
@media (max-width: 61.25rem) { .land-hero__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); } .land-hero__copy { grid-column: 1 / span 8; } .land-hero__media { grid-column: 1 / span 8; margin-top: 0; } .land-hero__sticker { display: none; } }
@media (max-width: 58rem) { .land-ways__intro, .land-ways__note { width: 75%; margin-left: 0; } .land-story { grid-template-columns: 1fr; gap: var(--space-5); } .land-story--city .land-story__copy, .land-story--nature .land-story__copy { grid-column: 1; grid-row: 1; } .land-story--city .land-story__media, .land-story--nature .land-story__media { grid-column: 1; grid-row: 2; } .land-story--taste { width: 75%; margin-left: 0; } .land-onboard__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); } .land-onboard__copy, .land-onboard__media { grid-column: 1 / span 8; } }
@media (max-width: 56.25rem) { .land-decision__grid { grid-template-columns: 1fr; } .land-decision__or { display: none; } .land-crews__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .land-crew-card--mixed { grid-column: 1 / span 2; } }
@media (max-width: 58.75rem) { .land-return__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); } .land-return__intro { grid-column: 1 / span 12; } .land-return__facts { grid-column: 1 / span 12; } }
@media (max-width: 51.25rem) { .land-pack__intro { width: 75%; } .land-pack__grid { grid-template-columns: 1fr; gap: var(--space-5); } .land-pack__note { margin-left: 0; } }
@media (max-width: 41.25rem) { .land-return__facts { grid-template-columns: 1fr; } }
@media (max-width: 40rem) { .land-hero { padding-block: var(--space-7); } .land-hero__grid, .land-ways__grid, .land-onboard__grid { grid-template-columns: 1fr; gap: var(--space-4); } .land-hero__copy, .land-hero__media, .land-onboard__copy, .land-onboard__media { grid-column: 1; } .land-hero__copy .button { width: 100%; } .land-ways__intro, .land-ways__note, .land-story--taste, .land-decision__intro, .land-pack__intro, .land-closing__panel { width: 100%; } .land-choice { padding: var(--space-5); } .land-fact-strip { grid-template-columns: 1fr; } .land-timeline__list { grid-template-columns: 1fr; gap: var(--space-4); } .land-timeline__list > li, .land-timeline__list > li:nth-child(4) { grid-column: 1; flex-direction: row; } .land-timeline__list > li > div { min-width: 0; flex: 1 1 auto; } .land-crews__grid { grid-template-columns: 1fr; } .land-crew-card--mixed { grid-column: 1; } .land-onboard__links { width: 100%; } .land-onboard__links .button { width: 100%; } .land-closing__panel { padding: var(--space-6) var(--space-5); } .land-closing__sun { display: none; } }
@media (prefers-reduced-motion: reduce) { .land-choice:hover { transform: none; } }
