/* ============================================================
   COASTLINE MISSIONS  ·  Look B "Night & Gold"
   Coastline palette : navy #183c76 · blue #3472d5 · gold #9b7e46 · sand #ccb88e
                       ground #ece9ec · ink #030911
   Type              : Zalando Sans (body) + Zalando Sans Expanded (display)
   Everything is scoped to .mis so nothing leaks into the rest of the site.
   ============================================================ */

.mis{
	--navy:#183c76; --navy-700:#102a52; --navy-800:#0c203e; --navy-900:#09172d;
	--blue:#3472d5; --blue-300:#8db0e7;
	--gold:#9b7e46; --gold-300:#c7b797; --gold-700:#645433; --gold-50:#f7f5f0; --sand:#ccb88e;
	--ground:#ece9ec; --ink:#030911; --white:#fff;
	--muted:#4a5466; --line-d:rgba(255,255,255,.12); --line:rgba(24,60,118,.14);
	--sans:"Zalando Sans","Helvetica Neue",Arial,sans-serif;
	--display:"Zalando Sans Expanded","Zalando Sans","Helvetica Neue",Arial,sans-serif;
	--ease:cubic-bezier(.2,.7,.1,1);
	--sec:clamp(84px,11vw,150px);

	position:relative;
	width:100%;
	overflow:hidden;
	background:var(--navy-900);
	color:#fff;
	font:400 17px/1.65 var(--sans);
	-webkit-font-smoothing:antialiased;
}

/* ---------- reset against Salient ---------- */
.mis-wrap.container-wrap{padding:0 !important;margin:0 !important;background:var(--navy-900) !important;}
.mis *,.mis *::before,.mis *::after{box-sizing:border-box;}
.mis :where(h1,h2,h3,p,ul,ol,li,figure,figcaption,blockquote,cite){margin:0;padding:0;border:0;color:inherit;letter-spacing:normal;text-transform:none;}
.mis :where(ul,ol){list-style:none;}
.mis li{list-style:none !important;}
.mis blockquote{border:0 !important;margin:0 !important;padding:0 !important;quotes:none;background:none !important;}
.mis blockquote::before,.mis blockquote::after{content:none !important;}
.mis :where(img){display:block;max-width:100%;height:auto;border-radius:0;box-shadow:none;margin:0;}
.mis :where(a){color:inherit;text-decoration:none;}
.mis :where(button){font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer;}
.mis :focus-visible{outline:3px solid var(--sand);outline-offset:4px;border-radius:6px;}
.mis-nowrap{white-space:nowrap;}

.m-wrap{width:min(1240px,100% - 32px);margin-inline:auto;position:relative;}

/* ---------- Salient header: light bar once the dark hero is scrolled past ---------- */
body.cl-mis-page #header-outer{transition:background-color .3s,box-shadow .3s,transform .3s,opacity .3s !important;}
html.mis-past-hero body.cl-mis-page #header-outer#header-outer{background-color:#f1efed !important;box-shadow:0 8px 28px -18px rgba(3,9,17,.45) !important;}
html.mis-past-hero body.cl-mis-page #header-outer#header-outer #logo img.stnd{opacity:1 !important;}
html.mis-past-hero body.cl-mis-page #header-outer#header-outer #logo img.starting-logo{opacity:0 !important;}
html.mis-past-hero body.cl-mis-page #header-outer#header-outer #top nav > ul > li:not(.menu-item-btn-style-button):not([class*="button_solid"]) > a{color:#183c76 !important;}
html.mis-past-hero body.cl-mis-page #header-outer#header-outer #top .slide-out-widget-area-toggle .lines,
html.mis-past-hero body.cl-mis-page #header-outer#header-outer #top .slide-out-widget-area-toggle .lines:before,
html.mis-past-hero body.cl-mis-page #header-outer#header-outer #top .slide-out-widget-area-toggle .lines:after{background-color:#183c76 !important;}

/* ---------- shared bits ---------- */
.m-eyebrow{display:inline-flex;align-items:center;gap:12px;font:700 12.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sand);}
.m-eyebrow::before{content:"";width:28px;height:1px;background:var(--gold);flex:none;}
.m-eyebrow--dk{color:var(--gold-700);}
.mis .m-h2{font-family:var(--display);font-weight:800;letter-spacing:-.03em;line-height:1.04;font-size:clamp(32px,4.4vw,58px);color:inherit;margin-top:20px;}
.mis .m-h2 em{font-style:normal;color:var(--sand);}
/* The theme styles <em> with its own font + weight; keep the headline's bold display face. */
.mis .m-h2 em,.mis .m-hero h1 span,.mis .m-booked__title span{font-family:inherit !important;font-weight:inherit !important;font-style:normal !important;letter-spacing:inherit !important;}
.m-light .m-h2{color:var(--navy);}
.m-light .m-h2 em{color:var(--gold);}

.m-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 15px/1 var(--sans);padding:16px 28px;border-radius:999px;border:1.5px solid transparent;background:transparent;transition:transform .3s var(--ease),background-color .3s,color .3s,border-color .3s;cursor:pointer;white-space:nowrap;}
.m-btn:hover{transform:translateY(-2px);}
.mis .m-btn--solid{background:var(--blue);color:#fff;}
.mis .m-btn--solid:hover{background:#fff;color:var(--navy);}
.mis .m-btn--ghost{border-color:rgba(255,255,255,.55);color:#fff;}
.mis .m-btn--ghost:hover{background:#fff;color:var(--navy);}
.mis .m-btn--navy{background:var(--navy);color:#fff;}
.mis .m-btn--navy:hover{background:var(--blue);color:#fff;}
.mis .m-btn--line{border-color:var(--navy);color:var(--navy);}
.mis .m-btn--line:hover{background:var(--navy);color:#fff;}
.m-btns{display:flex;flex-wrap:wrap;gap:12px;}

.m-chip{position:absolute;left:16px;bottom:14px;font:500 12.5px/1.2 var(--sans);color:#fff;background:rgba(9,23,45,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:7px 12px;border-radius:999px;}

/* Scroll reveals only kick in once missions.js has run (it adds .m-js), so the
   page still shows everything if the script is blocked or slow. */
.mis.m-js .m-rv{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease),transform 1s var(--ease);}
.mis.m-js .m-rv.in{opacity:1;transform:none;}
.m-d1{transition-delay:.1s;}.m-d2{transition-delay:.2s;}.m-d3{transition-delay:.3s;}
/* Hero: plays on load with CSS alone. */
.m-in{animation:m-rise 1s var(--ease) both;}
.m-in.m-d1{animation-delay:.12s;}.m-in.m-d2{animation-delay:.24s;}.m-in.m-d3{animation-delay:.36s;}
@keyframes m-rise{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.mis.m-js .m-rv{opacity:1;transform:none;transition:none;}.m-in,.m-hero__media img{animation:none;}}

/* ============================================================ 1. HERO */
.m-hero{position:relative;min-height:clamp(660px,100vh,940px);display:flex;align-items:center;overflow:hidden;isolation:isolate;background:var(--navy-900);}
.m-hero__media{position:absolute;top:0;right:0;bottom:0;width:60%;z-index:-2;overflow:hidden;}
.m-hero__media img{width:100%;height:100%;object-fit:cover;object-position:50% 46%;animation:m-fade 1.6s var(--ease) both;}
@keyframes m-fade{from{opacity:0;}to{opacity:1;}}
.m-hero__media img{position:relative;z-index:0;}
.m-hero__media::after{content:"";position:absolute;inset:0;z-index:1;background:
	linear-gradient(to top,var(--navy-900) 0%,rgba(9,23,45,0) 30%),
	linear-gradient(to bottom,rgba(9,23,45,.6) 0%,rgba(9,23,45,0) 22%);}
/* Left-to-right fade lives on the hero itself and runs solid past the photo's edge,
   so there's never a seam where the photo starts. */
.m-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(to right,var(--navy-900) 0%,var(--navy-900) 41%,rgba(9,23,45,.82) 50%,rgba(9,23,45,.25) 68%,rgba(9,23,45,0) 82%);}
.m-hero::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(60% 70% at 8% 60%,rgba(52,114,213,.22),transparent 70%);pointer-events:none;}
.m-hero > .m-wrap,.m-hero__chip{z-index:1;}
.m-hero .m-wrap{padding:150px 0 clamp(80px,9vw,120px);}
.m-hero__copy{max-width:600px;}
.mis .m-hero h1{font:800 clamp(44px,5.6vw,84px)/.98 var(--display);letter-spacing:-.035em;margin:24px 0 26px;color:#fff;max-width:9.5ch;}
.mis .m-hero h1 span{color:var(--sand);display:block;}
.m-hero__lead{font-size:clamp(18px,1.5vw,20px);line-height:1.6;color:rgba(255,255,255,.84);max-width:40ch;margin-bottom:34px !important;}
.m-hero__chip{position:absolute;right:max(16px,calc((100% - 1240px)/2));bottom:clamp(80px,9vw,120px);display:flex;align-items:center;gap:10px;font:600 13px/1 var(--sans);letter-spacing:.04em;color:#fff;background:rgba(9,23,45,.45);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);padding:10px 16px 10px 12px;border-radius:999px;}
.m-hero__chip i{width:8px;height:8px;border-radius:50%;background:var(--sand);box-shadow:0 0 0 0 rgba(204,184,142,.7);animation:m-blip 2.4s ease-out infinite;}
@keyframes m-blip{to{box-shadow:0 0 0 10px rgba(204,184,142,0);}}
.m-hero__tags{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:44px !important;padding-top:24px !important;border-top:1px solid var(--line-d) !important;max-width:660px;font:500 14px/1.4 var(--sans);color:rgba(255,255,255,.7);}
.m-hero__tags li{display:inline-flex;align-items:center;gap:9px;}
.m-hero__tags li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--sand);}
.m-hero__tags li:first-child{color:#fff;font-weight:700;}

@media (max-width:860px){
	.m-hero{align-items:flex-end;min-height:0;}
	.m-hero__media{width:100%;bottom:auto;height:min(600px,74vh);}
	.m-hero__media img{object-position:50% 40%;}
	.m-hero__media::after{background:linear-gradient(to bottom,rgba(9,23,45,.6) 0,rgba(9,23,45,0) 20%,rgba(9,23,45,0) 50%,var(--navy-900) 100%);}
	.m-hero::after{display:none;}
	.m-hero .m-wrap{padding:min(470px,58vh) 0 64px;}
	.m-hero__chip{right:16px;top:min(410px,50vh);bottom:auto;}
	.m-hero__tags{margin-top:36px !important;}
}
@media (max-width:420px){
	.m-hero__btns .m-btn{flex:1 1 100%;}
}

/* ============================================================ 2. WHY WE GO */
.m-mani{padding:var(--sec) 0;background:radial-gradient(70% 90% at 85% 10%,rgba(52,114,213,.2),transparent 60%),var(--navy-900);}
.m-mani__text{font:700 clamp(30px,4.2vw,60px)/1.12 var(--sans);letter-spacing:-.025em;max-width:22ch;margin-top:26px !important;}
.m-mani__text .w{color:rgba(255,255,255,.16);transition:color .5s;}
.m-mani__text .w.lit{color:#fff;}
.m-mani .ul{position:relative;white-space:nowrap;}
.m-mani .ul svg{position:absolute;left:-2%;bottom:-.18em;width:104%;height:.36em;overflow:visible;}
.m-mani .ul path{fill:none;stroke:var(--sand);stroke-width:5;stroke-linecap:round;stroke-dasharray:420;stroke-dashoffset:420;transition:stroke-dashoffset 1.4s var(--ease) .2s;}
.m-mani.in .ul path{stroke-dashoffset:0;}
.m-mani__verse{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;max-width:620px;margin-top:clamp(40px,5vw,64px) !important;padding-top:28px;border-top:1px solid var(--line-d);}
.m-mani__verse::before{content:"\201C";font:800 64px/.8 var(--display);color:var(--sand);}
.m-mani__verse p{font:italic 300 clamp(18px,1.6vw,21px)/1.55 var(--sans);color:rgba(255,255,255,.86);}
.m-mani__verse cite{display:block;margin-top:12px;font:700 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;font-style:normal;color:var(--sand);}

/* ============================================================ 3. MEDICAL MISSIONS (light) */
.m-med{background:var(--gold-50);color:var(--ink);padding:var(--sec) 0;}
.m-head{display:grid;grid-template-columns:1.15fr 1fr;gap:32px 56px;align-items:end;margin-bottom:clamp(36px,5vw,60px);}
.m-head p{max-width:46ch;}
.m-med .m-head p{color:var(--muted);font-size:17.5px;}
.m-med .m-head p strong{color:var(--navy);font-weight:700;}
.m-mosaic{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:14px;}
.m-mosaic figure{position:relative;border-radius:14px;overflow:hidden;background:var(--ground);}
.m-mosaic figure{min-height:0;}
.m-mosaic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease);}
.m-mosaic figure:hover img{transform:scale(1.04);}
.m-mosaic__main{grid-row:span 2;aspect-ratio:4/3;}
.m-mosaic__main img{object-position:40% 45%;}
.m-mosaic__badge{position:absolute;right:20px;top:20px;background:var(--navy);color:#fff;border-radius:12px;padding:14px 18px;}
.m-mosaic__badge small{display:block;font:700 10.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--sand);}
.m-mosaic__badge b{display:block;font:800 19px/1.15 var(--display);letter-spacing:-.02em;margin-top:6px;}
.m-medcta{display:grid;grid-template-columns:auto 1fr auto;gap:20px 28px;align-items:center;margin-top:clamp(28px,4vw,44px);padding:clamp(22px,3vw,30px) clamp(22px,3vw,34px);border-radius:14px;background:#fff;border:1px solid var(--line);}
.m-medcta__icon{width:54px;height:54px;border-radius:50%;background:var(--navy);display:grid;place-items:center;}
.m-medcta__icon svg{width:24px;height:24px;}
.m-medcta p{font-size:17px;line-height:1.5;color:var(--muted);}
.m-medcta p b{display:block;color:var(--navy);font:800 19px/1.3 var(--display);letter-spacing:-.02em;margin-bottom:4px;}
@media (max-width:900px){
	.m-head{grid-template-columns:1fr;}
	.m-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto;}
	.m-mosaic__main{grid-column:1 / -1;grid-row:auto;}
	.m-mosaic figure:not(.m-mosaic__main){aspect-ratio:4/3;}
	.m-medcta{grid-template-columns:auto 1fr;}
	.m-medcta .m-btn{grid-column:1 / -1;justify-self:start;}
}
@media (max-width:520px){
	.m-mosaic__badge{right:12px;top:12px;padding:10px 14px;}
	.m-mosaic__badge b{font-size:16px;}
	.m-mosaic figure:not(.m-mosaic__main) .m-chip{left:8px;bottom:8px;right:8px;font-size:11px;padding:5px 9px;text-align:center;}
	.m-medcta{grid-template-columns:1fr;}
	.m-medcta .m-btn{width:100%;}
}

/* ============================================================ 4. ON EVERY TRIP */
.m-trip{padding:var(--sec) 0;background:linear-gradient(var(--navy-900),var(--navy-800));}
.m-trip .m-head p{color:rgba(255,255,255,.74);}
.m-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.m-card{position:relative;border-radius:14px;overflow:hidden;min-height:clamp(440px,38vw,540px);display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;border:1px solid var(--line-d);}
.m-card__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.4s var(--ease);}
.m-card--photo::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(9,23,45,.96) 10%,rgba(16,42,82,.55) 50%,rgba(24,60,118,.05) 80%);}
.m-card--photo:hover .m-card__img{transform:scale(1.05);}
.m-card--text{background:radial-gradient(120% 70% at 100% 0%,rgba(204,184,142,.14),transparent 60%),var(--navy-700);justify-content:space-between;}
.m-card__body{padding:26px;}
.m-card em{font:700 12px/1 var(--sans);font-style:normal;letter-spacing:.16em;color:var(--sand);}
.mis .m-card h3{font:800 clamp(24px,2vw,30px)/1.05 var(--display);letter-spacing:-.03em;margin:12px 0 12px;color:#fff;}
.m-card p{color:rgba(255,255,255,.82);font-size:15.5px;line-height:1.55;}
.m-card__mark{padding:26px 26px 0;}
.m-card__mark svg{width:44px;height:44px;}
.m-card__verse{margin:18px 26px 26px !important;padding-top:16px !important;border-top:1px solid var(--line-d) !important;font:italic 300 15px/1.5 var(--sans);color:rgba(255,255,255,.8);}
.m-card__verse cite{display:block;margin-top:8px;font:700 11px/1 var(--sans);font-style:normal;letter-spacing:.16em;text-transform:uppercase;color:var(--sand);}
.m-card--text .m-card__body{padding-bottom:0;}
@media (max-width:1100px){.m-cards{grid-template-columns:1fr 1fr;}.m-card{min-height:440px;}}
@media (max-width:600px){
	.m-cards{grid-template-columns:1fr;}
	.m-card{min-height:0;}
	.m-card--photo{aspect-ratio:4/5;}
	.m-card--text .m-card__mark{padding-top:24px;}
}

/* ============================================================ 5. GO WITH US (light) */
.m-go{background:#fff;color:var(--ink);padding:var(--sec) 0;}
.m-go__grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(32px,6vw,90px);align-items:center;}
.m-go__copy > p{color:var(--muted);max-width:46ch;margin-top:22px !important;}
.m-go__next{display:inline-flex;align-items:center;gap:10px;margin-top:22px !important;padding:9px 16px;border-radius:999px;background:var(--navy);color:#fff;font:600 14px/1 var(--sans);}
.m-go__next small{font:700 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sand);}
.m-roles{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 30px !important;}
.m-roles li{font:600 14.5px/1 var(--sans);color:var(--navy);padding:11px 16px;border-radius:999px;background:var(--gold-50);border:1px solid rgba(155,126,70,.28);}
.m-go__contact{margin-top:22px !important;font-size:14.5px;color:var(--muted);}
.mis .m-go__contact a{color:var(--navy);font-weight:600;border-bottom:1px solid rgba(24,60,118,.3);}
.mis .m-go__contact a:hover{border-color:var(--navy);}
.m-go__photo{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:4/3.3;}
.m-go__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;}
.m-go__photo::before{content:"";position:absolute;inset:-1px;border-radius:14px;box-shadow:inset 0 0 0 1px rgba(24,60,118,.08);z-index:1;pointer-events:none;}
@media (max-width:900px){.m-go__grid{grid-template-columns:1fr;}.m-go__photo{order:-1;aspect-ratio:4/3;}}
@media (max-width:420px){.m-go .m-btn{flex:1 1 100%;}}

/* ============================================================ 6. MAP */
.m-map{padding:var(--sec) 0 clamp(64px,8vw,110px);background:linear-gradient(var(--navy-900),var(--navy-800));}
.m-map .m-head p{color:rgba(255,255,255,.72);}
.m-map__film{display:inline-flex;align-items:center;gap:14px;margin-top:24px;padding:8px 20px 8px 8px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);font:600 14px/1.25 var(--sans);text-align:left;color:#fff;transition:background-color .3s;}
.m-map__film:hover{background:rgba(255,255,255,.16);}
.m-map__film i{width:44px;height:44px;border-radius:50%;background:var(--sand);display:grid;place-items:center;flex:none;position:relative;}
.m-map__film i::after{content:"";border-left:12px solid var(--navy-900);border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:4px;}
.m-map__film i::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(204,184,142,.6);animation:m-ring 2.4s ease-out infinite;}
@keyframes m-ring{from{transform:scale(.85);opacity:1;}to{transform:scale(1.35);opacity:0;}}
.m-map__film small{display:block;font:700 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sand);margin-bottom:5px;}
.m-map__fig{position:relative;}
.m-map svg{width:100%;height:auto;display:block;overflow:visible;}
.m-map .land{fill:none;stroke:rgba(255,255,255,.16);stroke-width:3.4;stroke-linecap:round;}
.m-map .arc{fill:none;stroke:var(--sand);stroke-width:1.1;stroke-dasharray:3 4;opacity:.6;}
.m-map .arc.us{stroke:var(--blue-300);}
.m-map .arc.bz{stroke-width:2;stroke-dasharray:none;opacity:1;stroke-linecap:round;}
.m-map .arc.bz.draw{stroke-dasharray:60;stroke-dashoffset:60;transition:stroke-dashoffset 1.6s var(--ease) .4s;}
.m-map.in .arc.bz.draw{stroke-dashoffset:0;}
.m-map .pin{fill:var(--sand);}
.m-map .pin.us{fill:var(--blue-300);}
.m-map .pin.home{fill:#fff;}
.m-map .ring{fill:none;stroke:var(--sand);stroke-width:1.2;transform-box:fill-box;transform-origin:center;animation:m-pulse 2.8s ease-out infinite;}
.m-map .ring.us{stroke:var(--blue-300);}
.m-map .ring.home{stroke:#fff;}
.m-map .ring.late{animation-delay:1.4s;}
@keyframes m-pulse{from{transform:scale(.6);opacity:.95;}to{transform:scale(2.6);opacity:0;}}
.m-map text{font:600 11px var(--sans);fill:rgba(255,255,255,.88);letter-spacing:.04em;}
.m-map text.home{font-weight:800;fill:#fff;}
.m-map text.bz{font-weight:800;font-size:13px;fill:var(--sand);}
.m-map text.bz-sub{font-size:10px;fill:rgba(255,255,255,.7);letter-spacing:.12em;text-transform:uppercase;}
.m-map__legend{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:28px;font-size:14px;color:rgba(255,255,255,.75);}
.m-map__legend span{display:inline-flex;align-items:center;gap:10px;}
.m-map__legend i{width:9px;height:9px;border-radius:50%;}
.m-map__scroll{position:relative;}
.m-map__hint{display:none;}
@media (max-width:860px){
	.m-map__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-inline:-16px;padding-inline:16px;scrollbar-width:none;}
	.m-map__scroll::-webkit-scrollbar{display:none;}
	.m-map__scroll svg{min-width:860px;}
	.m-map text{font-size:13px;}
	.m-map text.bz{font-size:15px;}
	.m-map__hint{display:block;font-size:13px;color:rgba(255,255,255,.55);margin-top:10px !important;}
}

/* ============================================================ 7. PARTNERS */
.m-partners{background:var(--navy-800);padding:0 0 var(--sec);}
.m-partners__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);border-top:1px solid var(--line-d);padding-top:clamp(56px,7vw,96px);}
.mis .m-pcol h3{font:700 12.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sand);display:flex;justify-content:space-between;margin-bottom:20px;}
.m-pcol h3 span{color:rgba(255,255,255,.5);}
.m-pcards{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.m-pcard{border:1px solid var(--line-d);border-radius:12px;padding:18px 18px 16px;background:rgba(255,255,255,.03);transition:border-color .4s,background-color .4s,transform .4s var(--ease);}
.m-pcard:hover{border-color:rgba(204,184,142,.7);background:rgba(255,255,255,.06);transform:translateY(-3px);}
.m-pcard b{display:block;font-weight:600;font-size:16.5px;line-height:1.3;}
.m-pcard span{display:block;font-size:13.5px;color:var(--gold-300);margin-top:4px;}
.m-pcard--wide{grid-column:span 2;}
.m-pcard--bz{border-color:rgba(204,184,142,.55);background:linear-gradient(135deg,rgba(204,184,142,.14),rgba(255,255,255,.03));}
.m-pcard--bz span::after{content:" · Medical missions";color:rgba(255,255,255,.6);}
.m-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px !important;}
.m-tags li{font-size:14.5px;padding:9px 16px;border-radius:999px;border:1px solid var(--line-d);color:rgba(255,255,255,.88);transition:border-color .3s,color .3s;}
.m-tags li:hover{border-color:var(--sand);color:#fff;}
.m-sub{font:700 11.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.5);margin:30px 0 0 !important;}
@media (max-width:900px){.m-partners__grid{grid-template-columns:1fr;}}
@media (max-width:480px){.m-pcard{padding:14px;}.m-pcard b{font-size:15px;}}

/* ============================================================ 8. FOOD PANTRY (light) */
.m-pantry{background:var(--gold-50);color:var(--ink);padding:var(--sec) 0;}
.m-pantry__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,90px);align-items:center;}
.m-pantry__img{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:4/5;}
.m-pantry__img img{width:100%;height:100%;object-fit:cover;object-position:22% 60%;}
.m-pantry__badge{position:absolute;left:20px;bottom:20px;background:var(--navy);color:#fff;border-radius:12px;padding:16px 20px;}
.m-pantry__badge small{display:block;font:700 10.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--sand);}
.m-pantry__badge b{display:block;font:800 22px/1.15 var(--display);letter-spacing:-.02em;margin-top:6px;}
.m-pantry__copy > p{color:var(--muted);max-width:44ch;margin-top:22px !important;}
.m-offer{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:28px 0 30px !important;border-top:1px solid var(--line) !important;}
.m-offer li{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-weight:600;color:var(--navy);font-size:15.5px;}
.m-offer li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold);flex:none;}
.m-addr{display:flex;gap:12px;align-items:flex-start;margin:0 0 30px;font-size:15px;color:var(--navy);line-height:1.5;}
.m-addr svg{flex:none;margin-top:3px;}
.m-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:clamp(40px,5vw,64px);}
.m-strip figure{border-radius:14px;overflow:hidden;aspect-ratio:4/3;position:relative;}
.m-strip img{width:100%;height:100%;object-fit:cover;}
@media (max-width:900px){.m-pantry__grid{grid-template-columns:1fr;}.m-pantry__img{aspect-ratio:4/3;}.m-strip{grid-template-columns:1fr 1fr;}.m-strip figure:last-child{display:none;}}
@media (max-width:420px){.m-offer{grid-template-columns:1fr;}.m-pantry .m-btn{flex:1 1 100%;}}

/* ============================================================ 9. PRAY · SERVE · GIVE */
.m-ways{padding:var(--sec) 0;background:var(--navy-900);}
.m-ways__head{margin-bottom:clamp(36px,5vw,56px);}
.m-ways__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.m-way{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:3/4;display:flex;align-items:flex-end;isolation:isolate;}
.m-way img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.4s var(--ease);}
.m-way::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(9,23,45,.95) 8%,rgba(16,42,82,.55) 48%,rgba(24,60,118,.1));}
.m-way:hover img{transform:scale(1.06);}
.m-way > div{padding:28px;}
.m-way em{font:700 12px/1 var(--sans);font-style:normal;letter-spacing:.16em;color:var(--sand);}
.mis .m-way h3{font:800 clamp(30px,2.8vw,40px)/1 var(--display);letter-spacing:-.03em;margin:10px 0 12px;color:#fff;}
.m-way p{color:rgba(255,255,255,.84);font-size:15.5px;line-height:1.55;margin-bottom:18px !important;max-width:30ch;}
.m-way span{font:600 14.5px/1.2 var(--sans);display:inline-flex;gap:8px;border-bottom:1.5px solid var(--sand);padding-bottom:3px;}
@media (max-width:860px){.m-ways__grid{grid-template-columns:1fr;}.m-way{aspect-ratio:5/4;}}
@media (max-width:420px){.m-way{aspect-ratio:4/5;}}

/* ============================================================ 10. CLOSING · ITHEMBA */
.m-close{position:relative;min-height:clamp(560px,82vh,820px);display:flex;align-items:center;overflow:hidden;isolation:isolate;background:var(--navy-900);border-top:1px solid var(--line-d);}
.m-close__media{position:absolute;top:0;right:0;bottom:0;width:64%;z-index:-2;overflow:hidden;}
.m-close__media img{width:100%;height:100%;object-fit:cover;object-position:100% 30%;transform-origin:100% 30%;transform:scale(1.2);}
.m-close__media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(9,23,45,.7) 0%,rgba(9,23,45,0) 35%);}
.m-close::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(to right,var(--navy-900) 0%,var(--navy-900) 37%,rgba(9,23,45,.8) 50%,rgba(9,23,45,.3) 71%,rgba(9,23,45,.1) 100%);}
.m-close .m-wrap{padding:clamp(90px,10vw,140px) 0;}
.m-close__copy{max-width:560px;}
.m-close__quote{font:italic 300 clamp(30px,4vw,56px)/1.14 var(--sans);letter-spacing:-.02em;margin:22px 0 22px !important;color:#fff;}
.m-close cite{font:700 12.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;font-style:normal;color:var(--sand);}
.m-close__line{margin-top:26px !important;color:rgba(255,255,255,.76);max-width:40ch;}
.m-close .m-btns{margin-top:36px;}
.m-close__chip{position:absolute;right:max(16px,calc((100% - 1240px)/2));bottom:28px;font:500 12.5px/1.2 var(--sans);color:#fff;background:rgba(9,23,45,.5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.18);}
@media (max-width:860px){
	.m-close{align-items:flex-end;min-height:0;}
	.m-close__media{width:100%;bottom:auto;height:min(420px,56vh);}
	.m-close__media img{transform:none;object-position:72% 25%;}
	.m-close__media::after{background:linear-gradient(to bottom,rgba(9,23,45,.2) 0,rgba(9,23,45,0) 40%,var(--navy-900) 100%);}
	.m-close::after{display:none;}
	.m-close .m-wrap{padding:min(360px,46vh) 0 72px;}
	.m-close__chip{top:16px;bottom:auto;right:16px;}
}
@media (max-width:420px){.m-close .m-btn{flex:1 1 100%;}}

/* ============================================================ film lightbox */
dialog.m-lb{border:0;padding:0;background:transparent;width:min(1100px,94vw);max-width:none;overflow:visible;}
dialog.m-lb::backdrop{background:rgba(3,9,17,.86);}
.m-lb__frame{aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;}
.m-lb__frame iframe{width:100%;height:100%;border:0;display:block;}
.m-lb__x{position:absolute;top:-46px;right:0;background:none;border:0;color:#fff;font-size:34px;line-height:1;cursor:pointer;}

/* ============================================================ 2027 BOOKED (Go With Us + pop-up) */
.m-go__contact--booked{display:flex;align-items:flex-start;gap:10px;color:var(--navy) !important;font-weight:600;}
.m-go__contact--booked i{flex:none;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M5 9.4l2.6 2.6L13 6.6' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat;}
.m-trips{margin:4px 0 28px !important;padding:18px 20px !important;border-radius:14px;background:var(--navy);color:#fff;}
.m-trips__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px !important;}
.m-trips__head span{font:700 11.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sand);}
.m-trips__head b{font:800 15px/1 var(--display);letter-spacing:-.01em;}
.m-trips ul,.m-booked__trips{display:grid;gap:8px;}
.m-trips li,.m-booked__trips li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font:600 15px/1.3 var(--sans);}
.m-trips li i,.m-booked__trips li i{flex:none;font:700 10.5px/1 var(--sans);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--navy-900);background:var(--sand);padding:6px 9px;border-radius:999px;}

dialog.m-booked{border:0;padding:0;margin:auto;background:transparent;width:min(560px,100vw - 32px);max-width:none;max-height:calc(100vh - 32px);overflow:visible;color:#fff;font:400 17px/1.6 var(--sans);}
dialog.m-booked::backdrop{background:rgba(3,9,17,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);}
.m-booked__panel{position:relative;overflow:hidden;border-radius:20px;padding:clamp(30px,5vw,44px) clamp(24px,5vw,44px) clamp(26px,4vw,34px);
	background:radial-gradient(90% 70% at 100% 0%,rgba(204,184,142,.22),transparent 60%),radial-gradient(80% 80% at 0% 100%,rgba(52,114,213,.28),transparent 60%),var(--navy-800);
	border:1px solid rgba(204,184,142,.45);box-shadow:0 40px 90px -30px rgba(0,0,0,.6);max-height:calc(100vh - 32px);overflow-y:auto;}
dialog.m-booked[open] .m-booked__panel{animation:m-pop .55s var(--ease) both;}
@keyframes m-pop{from{opacity:0;transform:translateY(18px) scale(.96);}to{opacity:1;transform:none;}}
.m-booked__x{position:absolute;top:12px;right:14px;z-index:3;width:40px;height:40px;border-radius:50%;font-size:28px;line-height:38px;color:rgba(255,255,255,.8);text-align:center;}
.m-booked__x:hover{background:rgba(255,255,255,.1);color:#fff;}
.m-booked__head{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start;}
.m-booked__stamp{position:relative;margin-top:30px;margin-right:6px;z-index:2;display:grid;place-items:center;width:92px;height:92px;border-radius:50%;border:2px solid var(--sand);outline:1px solid rgba(204,184,142,.5);outline-offset:4px;color:var(--sand);font:800 13px/1.1 var(--display);letter-spacing:.06em;text-transform:uppercase;text-align:center;transform:rotate(-12deg);}
dialog.m-booked[open] .m-booked__stamp{animation:m-stamp .6s cubic-bezier(.2,1.6,.4,1) .35s both;}
@keyframes m-stamp{from{opacity:0;transform:rotate(-12deg) scale(1.8);}to{opacity:1;transform:rotate(-12deg) scale(1);}}
.m-booked .m-eyebrow{position:relative;z-index:1;}
.m-booked__title{position:relative;z-index:1;margin:18px 0 14px !important;font:800 clamp(30px,5vw,44px)/1.02 var(--display);letter-spacing:-.03em;color:#fff;}
.m-booked__title span{color:var(--sand);}
.m-booked__lead{position:relative;z-index:1;color:rgba(255,255,255,.88);max-width:40ch;}
.m-booked__trips{margin:18px 0 0 !important;}
.m-booked__body{position:relative;z-index:1;margin:16px 0 26px !important;padding-top:16px;border-top:1px solid var(--line-d);color:rgba(255,255,255,.8);font-size:16px;}
.m-booked__body strong{color:var(--sand);font-weight:700;}
.m-booked .m-btns{position:relative;z-index:1;}
.m-booked__note{position:relative;z-index:1;margin-top:18px !important;font-size:13.5px;color:rgba(255,255,255,.55);}
/* confetti */
.m-booked__confetti{position:absolute;inset:0;pointer-events:none;z-index:0;}
.m-booked__confetti i{position:absolute;top:-12px;width:7px;height:12px;border-radius:2px;background:var(--sand);opacity:0;}
.m-booked__confetti i:nth-child(3n){background:var(--blue-300);width:6px;height:6px;border-radius:50%;}
.m-booked__confetti i:nth-child(4n){background:#fff;}
.m-booked__confetti i:nth-child(1){left:8%;}.m-booked__confetti i:nth-child(2){left:16%;}.m-booked__confetti i:nth-child(3){left:24%;}
.m-booked__confetti i:nth-child(4){left:33%;}.m-booked__confetti i:nth-child(5){left:41%;}.m-booked__confetti i:nth-child(6){left:49%;}
.m-booked__confetti i:nth-child(7){left:57%;}.m-booked__confetti i:nth-child(8){left:65%;}.m-booked__confetti i:nth-child(9){left:73%;}
.m-booked__confetti i:nth-child(10){left:81%;}.m-booked__confetti i:nth-child(11){left:88%;}.m-booked__confetti i:nth-child(12){left:94%;}
dialog.m-booked[open] .m-booked__confetti i{animation:m-fall 2.4s cubic-bezier(.3,.6,.4,1) both;}
dialog.m-booked[open] .m-booked__confetti i:nth-child(2n){animation-duration:2.9s;animation-delay:.15s;}
dialog.m-booked[open] .m-booked__confetti i:nth-child(3n){animation-duration:2.6s;animation-delay:.3s;}
dialog.m-booked[open] .m-booked__confetti i:nth-child(5n){animation-delay:.45s;}
@keyframes m-fall{0%{opacity:0;transform:translateY(0) rotate(0);}10%{opacity:1;}100%{opacity:0;transform:translateY(420px) rotate(320deg);}}
@media (max-width:520px){
	.m-booked__head{gap:10px;}
	.m-booked__stamp{width:68px;height:68px;font-size:10.5px;margin-top:34px;margin-right:0;}
	.m-booked__title{font-size:28px;}
	.m-booked .m-btn{flex:1 1 100%;}
}
@media (prefers-reduced-motion:reduce){dialog.m-booked[open] .m-booked__panel,dialog.m-booked[open] .m-booked__stamp,dialog.m-booked[open] .m-booked__confetti i{animation:none;}.m-booked__confetti{display:none;}}
