.maldives-christmas { --color-brand-teal:#054142; --color-brand-gold:#D7AD60; --color-cream:#F5F5F5; background:#fff; }
.mc-hero { position:relative; min-height:490px; padding:175px 0 48px; isolation:isolate; overflow:hidden; background:#054142; color:#fff; }
.mc-hero-photo,.mc-hero-shade { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.mc-hero-shade { z-index:-1; background:linear-gradient(90deg,rgba(2,39,40,.86),rgba(2,39,40,.5) 52%,rgba(2,39,40,.12)); }
.mc-watermark { position:absolute; right:8%; bottom:-30px; width:270px; max-height:390px; object-fit:contain; opacity:.07; pointer-events:none; z-index:-1; }
.mc-hero:after { content:'✧   ✦   ✧'; position:absolute; right:6%; top:120px; color:#D7AD60; opacity:.7; font-size:1.8rem; letter-spacing:.6rem; pointer-events:none; }
.mc-hero-copy { position:relative; }
.mc-hero-copy p { color:#fff; }
.mc-hero .breadcrumb { display:flex; flex-wrap:wrap; gap:.7rem; font-size:.75rem; margin-bottom:1.7rem; color:#fff; }
.mc-hero .breadcrumb a { color:#fff; }
.mc-kicker { display:block; color:#D7AD60; font-size:.75rem; letter-spacing:.13em; text-transform:uppercase; font-weight:600; }
.mc-hero h1 { color:#fff; font-size:clamp(3.1rem,6.5vw,5.8rem); line-height:.94; margin:1rem 0; max-width:760px; }
.mc-hero h1 em { color:#f2d49b; font-weight:400; }
.mc-hotel-name { font-size:1.12rem; margin-bottom:.6rem; }
.mc-hotel-label { display:block; font-size:.65rem; text-transform:uppercase; letter-spacing:.15em; margin-bottom:.35rem; color:#f2d49b; }
.mc-hotel-name strong { font-weight:600; }
.mc-hotel-identity { display:flex; align-items:center; flex-wrap:wrap; gap:1.5rem 2.5rem; padding-bottom:2rem; margin-bottom:2.5rem; border-bottom:1px solid #dce4df; }
.mc-hotel-identity > img { width:280px; max-width:100%; height:auto; object-fit:contain; }
.mc-hotel-identity h2 { font-size:clamp(1.8rem,3vw,2.6rem); margin-bottom:.6rem; }
.mc-hotel-identity p { font-size:.85rem; color:#536565; }
.mc-hotel-logo-compact { display:block; width:200px; max-width:100%; height:auto; margin-bottom:1rem; }
.mc-hero-dates { font-size:.9rem; margin-bottom:.7rem; }
.mc-brand-line { font-size:.65rem; letter-spacing:.2em; margin:1rem 0 1.5rem; }
.mc-facts { background:#F5F5F5; border-bottom:1px solid #e3e7e4; }
.mc-facts-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding-block:1.4rem; gap:1.5rem; }
.mc-facts-grid > div { display:flex; gap:.8rem; align-items:center; font-size:.75rem; color:#536565; }
.mc-facts-grid svg { width:25px; height:25px; flex:0 0 25px; fill:none; stroke:#054142; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.mc-facts-grid strong { display:block; font-size:.9rem; color:#054142; font-weight:600; margin-top:.2rem; }
.mc-main-grid { display:grid; grid-template-columns:minmax(0,1fr) 365px; gap:5rem; align-items:start; }
.maldives-christmas h2 { color:#054142; font-size:clamp(2rem,3.5vw,3.2rem); line-height:1.08; margin-bottom:1.3rem; }
.mc-intro p { max-width:650px; margin-bottom:1.1rem; line-height:1.85; }
.mc-slogan { font-family:var(--font-serif); font-size:1.6rem; font-style:italic; color:#8e6b2e; }
.mc-text-link { display:inline-block; color:#054142; padding:.5rem 0; border-bottom:1px solid #D7AD60; }
.mc-enquiry { padding:1.8rem; border:1px solid #dce4df; border-top:3px solid #D7AD60; border-radius:7px; background:#F5F5F5; scroll-margin-top:110px; }
.mc-enquiry h2 { font-size:2.6rem; margin:.8rem 0 1.2rem; }
.mc-enquiry h2 span { display:block; font:400 .8rem var(--font-sans); color:#536565; margin-top:.5rem; }
.mc-enquiry h2 .mc-from { margin:0 0 .4rem; font-size:.7rem; text-transform:uppercase; letter-spacing:.12em; }
.mc-enquiry dl div { padding:.7rem 0; border-top:1px solid #dce4df; }
.mc-enquiry dt { color:#536565; font-size:.7rem; text-transform:uppercase; letter-spacing:.05em; }
.mc-enquiry dd { color:#054142; font-size:.9rem; margin:.2rem 0; }
.mc-enquiry .btn { margin:1rem 0; white-space:normal; }
.mc-disclaimer { font-size:.8rem; font-weight:600; color:#054142; }
.mc-small { font-size:.78rem; color:#536565; line-height:1.75; }
.mc-small a { text-decoration:underline; text-underline-offset:3px; }
.mc-enquiry p { margin-bottom:.6rem; }
.mc-gallery-section,.mc-season { background:#F5F5F5; }
.mc-section-heading { display:flex; gap:3rem; justify-content:space-between; align-items:end; margin-bottom:1.5rem; }
.mc-section-heading p { max-width:390px; font-size:.85rem; line-height:1.75; }
.mc-section-heading h2 { margin-bottom:0; }
.mc-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.mc-gallery figure { min-width:0; }
.mc-gallery img { display:block; width:100%; height:235px; object-fit:cover; border-radius:6px; transition:filter .2s ease; }
.mc-gallery a:hover img { filter:brightness(1.06); }
.mc-gallery figcaption { font-size:.78rem; padding:.65rem 0; color:#536565; }
.mc-photo-credit { margin-top:.7rem; }
.mc-itinerary-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:5rem; }
.mc-itinerary-intro p { line-height:1.8; margin-bottom:1rem; scroll-margin-top:110px; }
.mc-timeline { list-style:none; padding-left:1.8rem; border-left:1px solid #D7AD60; }
.mc-timeline li { position:relative; padding:0 0 1.9rem; }
.mc-timeline li:last-child { padding-bottom:0; }
.mc-timeline li:before { content:''; position:absolute; left:-2.18rem; top:.2rem; width:11px; height:11px; border-radius:50%; background:#D7AD60; border:2px solid #fff; }
.mc-day-label { font-size:.7rem; text-transform:uppercase; color:#8e6b2e; letter-spacing:.1em; }
.mc-timeline h3 { font-size:1.65rem; color:#054142; margin:.4rem 0 .65rem; }
.mc-timeline p { font-size:.88rem; line-height:1.8; margin-bottom:.5rem; }
.mc-evening { position:relative; isolation:isolate; overflow:hidden; background:#054142; color:#fff; padding:3rem 0; }
.mc-evening > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.mc-evening:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#022f31e8,#022f3155); z-index:-1; }
.mc-evening h2 { color:#fff; margin:.8rem 0; }
.mc-evening p { max-width:480px; font-size:.9rem; }
.mc-evening .mc-small { color:#e3e9df; font-size:.72rem; margin-top:.8rem; }
.mc-section-lead { max-width:760px; line-height:1.8; margin-bottom:2rem; }
.mc-explore-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.mc-explore-grid article { padding:1.3rem 0; border-top:1px solid #D7AD60; }
.mc-card-number { font-family:var(--font-serif); font-size:1.7rem; color:#ad8641; }
.mc-explore-grid h3 { font-size:1.65rem; color:#054142; margin:.7rem 0; }
.mc-explore-grid p { font-size:.9rem; line-height:1.8; margin-bottom:1rem; }
.mc-optional { display:inline-block; font-size:.7rem; color:#536565; padding:.35rem .6rem; background:#F5F5F5; border-radius:3px; }
.mc-season-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.75fr); gap:5rem; align-items:center; }
.mc-season p { line-height:1.8; margin-bottom:1rem; }
.mc-season-note { padding:2rem; border:1px solid #d3dcd6; text-align:center; }
.mc-season-note > span { color:#D7AD60; font-size:2rem; }
.mc-season-note h3 { font-size:2.2rem; color:#054142; margin:1rem 0; }
.mc-season-note p { font-size:.9rem; margin:0; }
.mc-inclusion-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; margin-top:1.7rem; }
.mc-inclusion-grid > div { border-top:2px solid #D7AD60; padding:1.5rem; background:#F5F5F5; }
.mc-inclusion-grid h3 { font-size:1.7rem; color:#054142; margin-bottom:1rem; }
.mc-inclusion-grid h3 span { display:inline-grid; place-items:center; width:24px; height:24px; border:1px solid #054142; border-radius:50%; font:400 1rem Arial; vertical-align:middle; margin-right:.4rem; }
.mc-inclusion-grid ul { padding-left:1.2rem; list-style:disc; }
.mc-inclusion-grid li,.mc-inclusion-grid p { font-size:.9rem; line-height:1.8; margin-bottom:.6rem; }
.mc-final-enquiry { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:2rem; margin-top:3rem; background:#054142; color:#fff; border-radius:6px; }
.mc-final-enquiry h2 { color:#fff; font-size:2.1rem; margin:.7rem 0; }
.mc-final-enquiry p { font-size:.85rem; }
.mc-final-enquiry .mc-small { color:#d2dfd9; margin-top:.7rem; }
.mc-final-enquiry .btn { flex-shrink:0; white-space:normal; }
.mc-return { margin-top:1.3rem; }
.mc-destination-hero { min-height:350px; }
.mc-destination-heading { margin-top:3rem; }
.mc-destination-packages { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; }
@media(max-width:1024px) { .mc-main-grid,.mc-itinerary-layout,.mc-season-grid { gap:2.5rem; } .mc-main-grid { grid-template-columns:minmax(0,1fr) 330px; } .mc-final-enquiry { flex-direction:column; align-items:flex-start; } }
@media(max-width:768px) { .mc-main-grid,.mc-itinerary-layout,.mc-season-grid { grid-template-columns:minmax(0,1fr); } .mc-facts-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; } .mc-section-heading { flex-direction:column; align-items:flex-start; gap:1rem; } .mc-section-heading p { max-width:none; } .mc-explore-grid { grid-template-columns:minmax(0,1fr); gap:1rem; } .mc-gallery img { height:180px; } .mc-destination-packages { grid-template-columns:minmax(0,1fr); } }
@media(max-width:480px) { .mc-hero { padding-top:145px; min-height:460px; } .mc-hero h1 { font-size:3.5rem; } .mc-hero .btn { white-space:normal; } .mc-facts-grid { gap:1rem .7rem; } .mc-facts-grid strong { font-size:.8rem; } .mc-gallery { gap:.75rem; } .mc-gallery img { height:145px; } .mc-gallery figcaption { font-size:.7rem; } .mc-inclusion-grid { grid-template-columns:minmax(0,1fr); } .mc-enquiry { padding:1.3rem; } .mc-final-enquiry { padding:1.4rem; } .mc-watermark { right:-50px; width:200px; } }
@media(prefers-reduced-motion:reduce) { .mc-gallery img { transition:none; } }
