.concept-page { min-height:100vh;background:#050b19;color:#f8f3ea; }
.concept-shell { width:min(72rem,calc(100% - 2rem));margin:0 auto; }
.concept-kicker { display:inline-flex;align-items:center;gap:.8rem;color:var(--concept-accent);font-size:.65rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase; }
.concept-kicker::before { content:"";width:2.4rem;height:1px;background:currentColor; }

.honeymoon-page { --concept-accent:#efbdc9;background:#130d18; }
.honeymoon-hero { min-height:82vh;display:grid;align-items:center;padding:8rem 1rem 5rem;position:relative;overflow:hidden;background:radial-gradient(circle at 77% 32%,rgba(239,189,201,.2),transparent 28%),linear-gradient(135deg,#190d18,#071128); }
.honeymoon-hero::before { content:"05";position:absolute;right:-.04em;bottom:-.3em;color:rgba(255,255,255,.025);font-family:'Days One',sans-serif;font-size:min(55vw,40rem);line-height:1; }
.honeymoon-layout { position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(17rem,.65fr);gap:clamp(3rem,10vw,9rem);align-items:center; }
.honeymoon-title { max-width:10ch;margin:1rem 0 1.5rem;font-family:'Days One',sans-serif;font-size:clamp(3rem,8vw,6.7rem);line-height:.92;letter-spacing:-.045em;text-transform:uppercase; }
.honeymoon-copy { max-width:39rem;color:rgba(248,243,234,.68);font-size:clamp(1rem,1.8vw,1.2rem);line-height:1.75; }
.honeymoon-cta { display:inline-flex;margin-top:2rem;padding:1rem 1.3rem;background:#f3d8c9;color:#1a0f19;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;transition:transform .2s,box-shadow .2s; }
.honeymoon-cta:hover { transform:translateY(-2px);box-shadow:0 14px 40px rgba(239,189,201,.2); }
.honeymoon-note { position:relative;padding:2rem;border:1px solid rgba(239,189,201,.26);background:rgba(255,255,255,.035);backdrop-filter:blur(12px); }
.honeymoon-note span { display:block;color:rgba(248,243,234,.42);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase; }
.honeymoon-note strong { display:block;margin:.7rem 0 1rem;font-family:'Days One',sans-serif;font-size:1.4rem;line-height:1.25; }
.honeymoon-note p { color:rgba(248,243,234,.58);font-size:.78rem;line-height:1.7; }
.honeymoon-process { padding:6rem 1rem;background:#f1e7dc;color:#231522; }
.honeymoon-process h2 { margin:.8rem 0 3rem;font-family:'Days One',sans-serif;font-size:clamp(2rem,5vw,3.5rem);text-transform:uppercase; }
.honeymoon-steps { display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(35,21,34,.14); }
.honeymoon-step { min-height:18rem;padding:2rem;background:#f1e7dc;display:flex;flex-direction:column;justify-content:space-between; }
.honeymoon-step b { color:#a45d72;font-family:'Days One',sans-serif;font-size:.72rem; }
.honeymoon-step h3 { margin-top:auto;font-family:'Days One',sans-serif;font-size:1.25rem;text-transform:uppercase; }
.honeymoon-step p { margin-top:.8rem;color:rgba(35,21,34,.62);font-size:.8rem;line-height:1.7; }

.cruise-page { --concept-accent:#8ee0e5;background:#021521; }
.cruise-hero { min-height:100vh;display:grid;place-items:center;padding:8rem 1rem 5rem;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 15%,rgba(68,183,207,.22),transparent 32%),linear-gradient(#041c2b,#02121e); }
.cruise-hero::after { content:"";position:absolute;left:-10%;right:-10%;bottom:-11rem;height:24rem;border-radius:50%;border:1px solid rgba(142,224,229,.18);box-shadow:0 -2rem 0 rgba(142,224,229,.03),0 -4rem 0 rgba(142,224,229,.025),0 -6rem 0 rgba(142,224,229,.02); }
.cruise-layout { position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(19rem,.65fr);gap:clamp(3rem,9vw,8rem);align-items:center; }
.cruise-status { display:inline-flex;gap:.55rem;align-items:center;padding:.45rem .75rem;border:1px solid rgba(142,224,229,.32);border-radius:999px;color:#8ee0e5;font-size:.63rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase; }
.cruise-status::before { content:"";width:.45rem;height:.45rem;border-radius:50%;background:#8ee0e5;box-shadow:0 0 0 .3rem rgba(142,224,229,.09); }
.cruise-title { max-width:9ch;margin:1.2rem 0;font-family:'Days One',sans-serif;font-size:clamp(3rem,9vw,7rem);line-height:.88;letter-spacing:-.05em;text-transform:uppercase; }
.cruise-copy { max-width:37rem;color:rgba(229,249,251,.64);font-size:1rem;line-height:1.75; }
.cruise-form { padding:1.6rem;border:1px solid rgba(142,224,229,.25);background:rgba(0,9,18,.42);backdrop-filter:blur(12px); }
.cruise-form h2 { font-family:'Days One',sans-serif;font-size:1.15rem;text-transform:uppercase; }
.cruise-form p { margin:.55rem 0 1.3rem;color:rgba(229,249,251,.54);font-size:.74rem;line-height:1.6; }
.cruise-field { display:block;margin-top:.85rem; }
.cruise-field span { display:block;margin-bottom:.35rem;color:rgba(229,249,251,.48);font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase; }
.cruise-field input { width:100%;padding:.85rem .9rem;border:1px solid rgba(142,224,229,.2);background:rgba(255,255,255,.045);color:#fff;outline:none; }
.cruise-field input:focus { border-color:#8ee0e5; }
.cruise-submit { width:100%;margin-top:1rem;padding:.9rem;border:none;background:#8ee0e5;color:#021521;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;cursor:pointer; }
.cruise-consent { display:flex;align-items:flex-start;gap:.55rem;margin-top:.9rem;color:rgba(229,249,251,.44);font-size:.62rem;line-height:1.45; }

@media (max-width:800px) {
  .honeymoon-layout,.cruise-layout { grid-template-columns:1fr; }
  .honeymoon-note { max-width:32rem; }
  .honeymoon-steps { grid-template-columns:1fr; }
  .honeymoon-step { min-height:13rem; }
}
