/* ============================================================
   NIGHT TO SHINE  (Coastline × Night to Shine 2027)
   NTS palette  : indigo #290F73 · sky #69A3D6 · crimson #AD052E · gold #D6B369
   Coastline    : navy #183c76 · blue #3472d5 · gold #9b7e46 · ground #ece9ec
                  Zalando Sans body/eyebrows/buttons · pill buttons
   Headlines    : Frank Ruhl Libre (the NTS 2027 serif)
   ============================================================ */

.nts{
	--nts-indigo:#290f73;
	--nts-indigo-700:#1f0b5a;
	--nts-night:#140838;
	--nts-sky:#69a3d6;
	--nts-sky-soft:#e8f1fa;
	--nts-crimson:#ad052e;
	--nts-gold:#d6b369;
	--nts-gold-ink:#6e5527;      /* gold for small text on light grounds (5:1+) */
	--cl-navy:#183c76;
	--cl-blue:#3472d5;
	--cl-ground:#ece9ec;
	--nts-ink:#1b1640;
	--nts-body:#3a3552;
	--nts-white:#fff;
	--nts-foil:linear-gradient(115deg,#8f733c 0%,#d9bf7f 18%,#f6e7b8 32%,#b8954f 50%,#e8d091 68%,#9b7e46 86%,#d6b369 100%);

	--nts-serif:"Frank Ruhl Libre",Georgia,"Times New Roman",serif;
	--nts-sans:"Zalando Sans","Helvetica Neue",Arial,sans-serif;

	--nts-shell:1240px;
	--nts-pad:clamp(16px,5vw,64px);
	--nts-section:clamp(72px,10vw,128px);
	--nts-radius:14px;
	--nts-ease:cubic-bezier(.2,.7,.2,1);

	position:relative;
	width:100%;
	overflow:hidden;
	background:var(--nts-white);
	color:var(--nts-body);
	font-family:var(--nts-sans);
	font-size:18px;
	font-weight:400;
	line-height:1.65;
	-webkit-font-smoothing:antialiased;
}

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

.nts-shell{width:100%;max-width:var(--nts-shell);margin:0 auto;padding:0 var(--nts-pad);}

/* paper grain for the light-gray grounds (NTS uses a paper texture) */
.nts-night,.nts-serve,.nts-voices,.nts-close{
	background-color:var(--cl-ground);
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- shared type ---------- */
.nts-eyebrow{
	font-family:var(--nts-sans);
	font-size:13px;font-weight:700;line-height:1.3;
	letter-spacing:.14em;text-transform:uppercase;
	color:var(--nts-gold-ink);
	margin-bottom:20px;
	display:flex;align-items:flex-start;gap:12px;
}
.nts-eyebrow::before{
	content:"";flex:0 0 auto;width:16px;height:16px;margin-top:-1px;
	background:var(--nts-foil);
	clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);
}
.nts-eyebrow--gold{color:var(--nts-gold);}

.nts-h2{
	font-family:var(--nts-serif);
	font-weight:500;
	font-size:clamp(2.2rem,4.4vw,3.7rem);
	line-height:1.06;
	letter-spacing:-.015em;
	color:var(--nts-indigo);
	text-wrap:balance;
}
.nts-h2 span{color:var(--cl-blue);}
.nts-h2--light{color:#fff;}
.nts-h2--light span{color:var(--nts-sky);}
.nts-head{max-width:760px;margin-bottom:clamp(40px,6vw,64px);}
.nts-head--center{margin-left:auto;margin-right:auto;text-align:center;}
.nts-head--center .nts-eyebrow{justify-content:center;}
.nts-head__sub{margin-top:22px;font-size:1.12rem;max-width:58ch;}
.nts-head--center .nts-head__sub{margin-left:auto;margin-right:auto;}
.nts-textlink{color:var(--nts-indigo);font-weight:700;text-decoration:underline;text-decoration-color:var(--nts-sky);text-decoration-thickness:2px;text-underline-offset:4px;}
.nts-textlink:hover{text-decoration-color:var(--nts-indigo);}

/* ---------- buttons (Coastline pill) ---------- */
.nts-btn{
	display:inline-flex;align-items:center;justify-content:center;gap:10px;
	font-family:var(--nts-sans);font-size:16px;font-weight:700;letter-spacing:.01em;line-height:1.2;
	padding:17px 32px;border-radius:999px;border:2px solid transparent;
	transition:transform .35s var(--nts-ease),background-color .25s,color .25s,box-shadow .35s var(--nts-ease),border-color .25s;
	will-change:transform;text-align:center;
}
.nts-btn::after{content:"→";font-weight:400;transition:transform .35s var(--nts-ease);}
.nts-btn:hover{transform:translateY(-2px);}
.nts-btn:hover::after{transform:translateX(4px);}
.nts-btn--gold{background:var(--nts-foil);background-size:160% 100%;background-position:0 0;color:var(--nts-night);box-shadow:0 12px 30px -14px rgba(214,179,105,.9);}
.nts-btn--gold:hover{background-position:100% 0;box-shadow:0 16px 36px -14px rgba(214,179,105,1);}
.nts-btn--indigo{background:var(--nts-indigo);color:#fff;box-shadow:0 12px 30px -14px rgba(41,15,115,.8);}
.nts-btn--indigo:hover{background:var(--nts-indigo-700);}
.nts-btn--ghost{border-color:rgba(255,255,255,.6);color:#fff;}
.nts-btn--ghost:hover{background:rgba(255,255,255,.1);border-color:#fff;}
.nts-btn--line{border-color:var(--nts-indigo);color:var(--nts-indigo);}
.nts-btn--line:hover{background:var(--nts-indigo);color:#fff;}

/* ---------- foil photo frames ---------- */
.nts-frame{padding:6px;border-radius:20px;background:var(--nts-foil);box-shadow:0 30px 60px -32px rgba(20,8,56,.55);}
.nts-frame img{width:100%;height:100%;object-fit:cover;border-radius:14px;}

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

/* ============================================================ HERO */
.nts-hero{
	position:relative;
	min-height:max(720px,100svh);
	display:flex;align-items:center;
	color:#fff;
	isolation:isolate;overflow:hidden;
	background:
		radial-gradient(55% 60% at 82% 22%,rgba(105,163,214,.30),transparent 62%),
		radial-gradient(50% 55% at 8% 92%,rgba(173,5,46,.20),transparent 60%),
		linear-gradient(160deg,#311488 0%,var(--nts-indigo) 34%,#1d1260 62%,var(--cl-navy) 100%);
}
/* starfield */
.nts-hero__sky,.nts-hero__sky::before{
	position:absolute;inset:0;z-index:-1;pointer-events:none;
	background-image:
		radial-gradient(1.6px 1.6px at 12% 18%,rgba(255,255,255,.9),transparent 60%),
		radial-gradient(1.2px 1.2px at 28% 62%,rgba(255,255,255,.7),transparent 60%),
		radial-gradient(1.8px 1.8px at 46% 12%,rgba(255,255,255,.85),transparent 60%),
		radial-gradient(1.2px 1.2px at 58% 78%,rgba(255,255,255,.6),transparent 60%),
		radial-gradient(1.5px 1.5px at 71% 34%,rgba(255,255,255,.8),transparent 60%),
		radial-gradient(1.1px 1.1px at 86% 70%,rgba(255,255,255,.7),transparent 60%),
		radial-gradient(1.7px 1.7px at 93% 14%,rgba(255,255,255,.9),transparent 60%),
		radial-gradient(1.1px 1.1px at 6% 48%,rgba(255,255,255,.6),transparent 60%),
		radial-gradient(1.3px 1.3px at 38% 88%,rgba(255,255,255,.7),transparent 60%),
		radial-gradient(1.2px 1.2px at 64% 6%,rgba(255,255,255,.7),transparent 60%);
	background-size:520px 520px;
}
.nts-hero__sky::before{content:"";background-size:380px 380px;background-position:140px 90px;opacity:.6;animation:nts-twinkle 5s ease-in-out infinite alternate;}
@keyframes nts-twinkle{from{opacity:.15;}to{opacity:.75;}}

.nts-hero__grid{
	width:100%;max-width:var(--nts-shell);margin:0 auto;
	padding:150px var(--nts-pad) clamp(80px,10vh,120px);
	display:grid;grid-template-columns:minmax(0,1fr);align-items:center;
}
.nts-hero__inner{position:relative;z-index:2;}
.nts-hero__logo{width:clamp(190px,19vw,270px);height:auto;margin-bottom:clamp(26px,3.6vw,40px);filter:drop-shadow(0 6px 24px rgba(0,0,0,.25));}
.nts-hero__title{
	font-family:var(--nts-serif);
	font-weight:500;
	font-size:clamp(3rem,6vw,5.9rem);
	line-height:1;
	letter-spacing:-.02em;
	color:#fff;
	text-wrap:balance;
}
.nts-hero__title span{
	display:inline;
	background:var(--nts-foil);background-size:200% 100%;
	-webkit-background-clip:text;background-clip:text;color:transparent;
	animation:nts-foil 8s ease-in-out infinite alternate;
}
@keyframes nts-foil{from{background-position:0 0;}to{background-position:100% 0;}}
.nts-hero__sub{margin-top:26px;max-width:36ch;font-size:clamp(1.08rem,1.4vw,1.25rem);line-height:1.55;color:rgba(255,255,255,.88);}
.nts-hero__when{margin-top:26px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;font-weight:700;letter-spacing:.01em;}
.nts-hero__date{font-size:1.05rem;}
.nts-hero__count{
	display:inline-flex;align-items:center;gap:8px;
	padding:7px 14px;border-radius:999px;
	background:rgba(105,163,214,.16);border:1px solid rgba(105,163,214,.5);
	font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#d7e7f6;
}
.nts-hero__count::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--nts-sky);box-shadow:0 0 0 0 rgba(105,163,214,.7);animation:nts-pulse 2.2s infinite;}
@keyframes nts-pulse{0%{box-shadow:0 0 0 0 rgba(105,163,214,.7);}70%{box-shadow:0 0 0 9px rgba(105,163,214,0);}100%{box-shadow:0 0 0 0 rgba(105,163,214,0);}}
.nts-hero__ctas{margin-top:34px;display:flex;flex-wrap:wrap;gap:14px;}

/* header banner video: 2026 recap footage (former pastor cut out), muted loop.
   Desktop: fills the right of the hero and fades into the indigo behind the words.
   Portrait screens: full-bleed, with the words over a dark fade at the bottom. */
.nts-hero__media{
	position:absolute;top:0;bottom:0;right:0;z-index:-2;
	width:min(66%,1280px);
	background:#1d1260 var(--nts-poster-wide) 50% 50%/cover no-repeat;
	-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 18%,#000 42%);
	mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 18%,#000 42%);
}
.nts-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease;}
.nts-hero__video.is-ready{opacity:1;}
.nts-hero__media::after{
	content:"";position:absolute;inset:0;
	background:
		linear-gradient(180deg,rgba(20,8,56,.62) 0%,rgba(20,8,56,0) 26%),
		linear-gradient(0deg,rgba(20,8,56,.72) 0%,rgba(20,8,56,0) 32%),
		linear-gradient(90deg,rgba(41,15,115,.55) 0%,rgba(41,15,115,.12) 55%,rgba(41,15,115,.05) 100%);
}
.nts-hero__inner{max-width:640px;}
.nts-spark{position:absolute;z-index:1;background:var(--nts-foil);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);animation:nts-spin 9s linear infinite;pointer-events:none;}
.nts-spark--a{width:40px;height:40px;right:7%;top:20%;}
.nts-spark--b{width:22px;height:22px;right:40%;bottom:18%;background:var(--nts-sky);animation-duration:12s;animation-direction:reverse;}
@keyframes nts-spin{to{transform:rotate(360deg);}}

/* guest list full: banner + waiting-list buttons (nts.js adds .is-guest-full) */
.nts:not(.is-guest-full) .nts-when-full{display:none !important;}
.nts.is-guest-full .nts-when-open{display:none !important;}
.nts-full{position:absolute;left:0;right:0;top:var(--nts-hdr,92px);z-index:5;background:linear-gradient(90deg,#8f0426 0%,var(--nts-crimson,#AD052E) 45%,#8f0426 100%);box-shadow:0 18px 40px -24px rgba(0,0,0,.7);border-bottom:1px solid rgba(214,179,105,.6);}
.nts-full__inner{max-width:var(--nts-shell);margin:0 auto;padding:14px var(--nts-pad);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 22px;}
.nts-full__spark{flex:0 0 auto;width:22px;height:22px;background:var(--nts-foil);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);}
.nts .nts-full__text{margin:0;flex:1 1 420px;max-width:760px;color:#fff;font-size:1.02rem;line-height:1.45;}
.nts .nts-full__text strong{font-family:var(--nts-serif);font-weight:500;font-size:1.3rem;margin-right:6px;color:#fff;}
.nts .nts-full__btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 22px;border-radius:999px;background:var(--nts-foil);color:var(--nts-night);font-weight:800;font-size:.98rem;text-decoration:none;box-shadow:0 10px 24px -12px rgba(0,0,0,.6);transition:transform .3s var(--nts-ease);}
.nts .nts-full__btn::after{content:"→";font-weight:400;}
.nts .nts-full__btn:hover{transform:translateY(-2px);color:var(--nts-night);}
.nts.is-guest-full .nts-hero__grid{padding-top:calc(150px + var(--nts-full-h,72px));}
.nts .nts-note--full{color:var(--nts-crimson,#AD052E);}
.nts .nts-note--full strong{color:inherit;}

/* recap pill */
.nts-recap-pill{
	display:inline-flex;align-items:center;gap:12px;
	padding:8px 20px 8px 8px;border-radius:999px;
	background:rgba(20,8,56,.72);border:1px solid rgba(255,255,255,.28);
	-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
	color:#fff;font-weight:700;font-size:15px;line-height:1.2;text-align:left;
	transition:transform .35s var(--nts-ease),background-color .25s;
}
.nts-recap-pill:hover{transform:translateY(-2px);background:rgba(20,8,56,.88);}
.nts-recap-pill small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--nts-gold);margin-bottom:2px;}
.nts-recap-pill__play{flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:var(--nts-foil);position:relative;}
.nts-recap-pill__play::after{content:"";position:absolute;left:52%;top:50%;transform:translate(-40%,-50%);border-style:solid;border-width:8px 0 8px 13px;border-color:transparent transparent transparent var(--nts-night);}
.nts-recap-pill--inline{display:none;}
.nts-recap-pill--float{position:absolute;z-index:4;right:calc(clamp(16px,3vw,36px) + 54px);bottom:clamp(16px,3vw,32px);}

.nts-hero__toggle{position:absolute;right:clamp(16px,3vw,36px);bottom:clamp(16px,3vw,32px);z-index:4;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:rgba(20,8,56,.45);display:grid;place-items:center;}
.nts-hero__toggle[hidden]{display:none;}
.nts-hero__toggle span{display:block;width:12px;height:12px;border-left:4px solid #fff;border-right:4px solid #fff;}
.nts-hero__toggle.is-paused span{width:0;height:0;border-style:solid;border-width:7px 0 7px 11px;border-color:transparent transparent transparent #fff;margin-left:3px;}
.nts-hero__cue{position:absolute;left:50%;bottom:26px;z-index:3;transform:translateX(-50%);width:26px;height:42px;border:2px solid rgba(255,255,255,.55);border-radius:14px;}
.nts-hero__cue span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:#fff;animation:nts-cue 1.8s ease-in-out infinite;}
@keyframes nts-cue{0%{opacity:0;transform:translateY(0);}40%{opacity:1;}100%{opacity:0;transform:translateY(12px);}}

/* ============================================================ INTRO */
.nts-intro{padding:var(--nts-section) 0;}
.nts-statement{
	font-family:var(--nts-serif);font-weight:500;
	font-size:clamp(1.9rem,3.6vw,3.1rem);line-height:1.18;letter-spacing:-.01em;
	color:var(--nts-indigo);max-width:24ch;text-wrap:balance;
}
.nts-statement span{color:var(--cl-blue);}
.nts-intro__grid{margin-top:clamp(48px,7vw,88px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(40px,6vw,96px);align-items:center;}
.nts-intro__copy p+p{margin-top:18px;}
.nts-lead{font-size:1.3rem;line-height:1.4;color:var(--nts-ink);margin-bottom:22px !important;}
.nts-lead strong{font-weight:700;color:var(--nts-indigo);}
.nts-facts{margin-top:36px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.nts-facts li{padding:18px 16px;border-radius:var(--nts-radius);background:var(--nts-sky-soft);text-align:center;}
.nts-facts b{display:block;font-family:var(--nts-serif);font-weight:500;font-size:clamp(1.7rem,2.6vw,2.3rem);line-height:1;color:var(--nts-indigo);}
.nts-facts span{display:block;margin-top:8px;font-size:.86rem;line-height:1.3;font-weight:500;color:var(--nts-body);}

.nts-trio{position:relative;aspect-ratio:1/.9;}
.nts-trio figure{position:absolute;width:40%;aspect-ratio:3/4.3;}
.nts-trio__a{left:0;top:15%;rotate:-6deg;z-index:1;}
.nts-trio__b{left:27%;top:0;width:46% !important;aspect-ratio:3/4 !important;z-index:2;}
.nts-trio__c{right:0;top:19%;rotate:6deg;z-index:1;}

/* ============================================================ THE NIGHT */
.nts-night{padding:var(--nts-section) 0;}
.nts-moments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,36px);counter-reset:none;}
.nts-moment figure{aspect-ratio:4/3;border-radius:var(--nts-radius);overflow:hidden;margin-bottom:20px;box-shadow:0 24px 50px -30px rgba(20,8,56,.5);}
.nts-moment figure img{width:100%;height:100%;object-fit:cover;object-position:50% 35%;transition:transform .9s var(--nts-ease);}
.nts-moment:hover figure img{transform:scale(1.04);}
.nts-moment__n{display:block;font-family:var(--nts-serif);font-size:1rem;color:var(--nts-gold-ink);letter-spacing:.06em;margin-bottom:6px;}
.nts-moment h3,.nts-quiet h3,.nts-roles h3,.nts-steps h3{font-family:var(--nts-serif);font-weight:500;font-size:1.55rem;line-height:1.15;color:var(--nts-indigo);margin-bottom:8px;}
.nts-moment p{font-size:1rem;line-height:1.6;}
.nts-quiet{margin-top:clamp(40px,6vw,64px);display:grid;grid-template-columns:1fr 1fr;border-radius:20px;background:#fff;box-shadow:0 20px 50px -34px rgba(20,8,56,.45);overflow:hidden;}
.nts-quiet>div{padding:clamp(24px,3.4vw,40px);}
.nts-quiet>div+div{border-left:1px solid #e3dfe8;}
.nts-quiet p{font-size:1rem;}

/* ============================================================ CROWNING */
.nts-crown{position:relative;isolation:isolate;padding:clamp(96px,14vw,180px) 0;color:#fff;text-align:center;background:var(--nts-night);}
.nts-crown__bg{position:absolute;inset:0;z-index:-1;}
.nts-crown__bg img{width:100%;height:100%;object-fit:cover;object-position:50% 70%;opacity:.85;}
.nts-crown__bg::after{content:"";position:absolute;inset:0;background:radial-gradient(75% 85% at 50% 50%,rgba(41,15,115,.5),rgba(20,8,56,.9) 80%);}
.nts-crown{text-align:left;padding:clamp(80px,11vw,150px) 0;}
.nts-crown__inner{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(36px,6vw,88px);align-items:center;}
.nts-crown .nts-eyebrow{justify-content:flex-start;}
/* royal spotlight: one of our own Kings */
.nts-crown__photo{position:relative;margin:0;rotate:-2deg;box-shadow:0 50px 90px -40px rgba(0,0,0,.8);}
.nts-crown__photo img{aspect-ratio:5/4;object-position:64% 35%;}
.nts-crown__photo figcaption{
	position:absolute;left:22px;bottom:22px;
	display:inline-flex;align-items:baseline;gap:10px;
	padding:9px 16px 9px 14px;border-radius:999px;
	background:rgba(20,8,56,.78);border:1px solid rgba(214,179,105,.55);
	-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
	font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.8);
}
.nts-crown__photo-name{font-family:var(--nts-serif);font-size:1.2rem;font-weight:500;letter-spacing:0;text-transform:none;color:var(--nts-gold);}
.nts-crown__photo-name::before{content:"";display:inline-block;width:16px;height:16px;margin-right:7px;vertical-align:-1px;background:var(--nts-foil);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);}
.nts-crown__quote{font-family:var(--nts-serif);font-weight:500;font-size:clamp(1.9rem,3.4vw,3.1rem);line-height:1.12;letter-spacing:-.01em;text-wrap:balance;}
.nts-crown__quote span{color:var(--nts-sky);}
.nts-crown__verse{margin-top:30px;font-size:1.08rem;color:rgba(255,255,255,.85);}
.nts-crown__verse cite{display:block;margin-top:8px;font-style:normal;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--nts-gold);}

/* ============================================================ RECAP */
.nts-recap{padding:var(--nts-section) 0;}
.nts .nts-recap-card{position:relative;display:block;width:100%;max-width:1100px;margin:0 auto;aspect-ratio:16/9;border-radius:22px !important;overflow:hidden;padding:0 !important;background:#140838;box-shadow:0 40px 80px -40px rgba(20,8,56,.6);}
.nts-recap-card::before{content:"";position:absolute;inset:0;border-radius:22px;padding:6px;background:var(--nts-foil);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;z-index:3;pointer-events:none;}
.nts-recap-card img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--nts-ease);}
.nts-recap-card:hover img{transform:scale(1.03);}
.nts-recap-card__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(20,8,56,.82),rgba(20,8,56,.1) 55%);}
.nts-recap-card__play{position:absolute;left:50%;top:50%;width:clamp(68px,9vw,104px);height:clamp(68px,9vw,104px);transform:translate(-50%,-50%);border-radius:50%;background:var(--nts-foil);box-shadow:0 0 0 12px rgba(255,255,255,.18);transition:transform .4s var(--nts-ease),box-shadow .4s;}
.nts-recap-card__play::after{content:"";position:absolute;left:54%;top:50%;transform:translate(-40%,-50%);border-style:solid;border-width:14px 0 14px 23px;border-color:transparent transparent transparent var(--nts-night);}
.nts-recap-card:hover .nts-recap-card__play{transform:translate(-50%,-50%) scale(1.07);box-shadow:0 0 0 18px rgba(255,255,255,.14);}
.nts-recap-card__label{position:absolute;left:clamp(20px,3vw,40px);bottom:clamp(18px,3vw,36px);color:#fff;font-family:var(--nts-serif);font-weight:500;font-size:clamp(1.25rem,2.3vw,2rem);line-height:1.15;text-align:left;}
.nts-recap-card__label small{display:block;font-family:var(--nts-sans);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--nts-gold);margin-bottom:6px;}
.nts-strip{margin-top:clamp(20px,3vw,32px);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.6vw,20px);}
.nts-strip li{aspect-ratio:4/3;border-radius:var(--nts-radius);overflow:hidden;}
.nts-strip img{width:100%;height:100%;object-fit:cover;}
.nts-credit{margin-top:18px;font-size:.92rem;color:var(--nts-body);text-align:center;}

/* ============================================================ VOLUNTEER */
.nts-serve{padding:var(--nts-section) 0;}
.nts-serve__top{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,96px);align-items:center;margin-bottom:clamp(56px,7vw,88px);}
.nts-serve__photo{aspect-ratio:4/3;rotate:-2deg;}
.nts-serve__intro .nts-btn{margin-top:32px;}
.nts-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px);}
.nts-roles li{position:relative;padding:28px 26px 26px;border-radius:var(--nts-radius);background:#fff;box-shadow:0 18px 40px -32px rgba(20,8,56,.5);overflow:hidden;}
.nts-roles li::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--nts-foil);}
.nts-roles h3{font-size:1.35rem;}
.nts-roles p{font-size:1rem;line-height:1.55;}
.nts-need{margin-top:clamp(20px,3vw,28px);padding:18px 22px;border-radius:var(--nts-radius);background:var(--nts-indigo);color:#fff;font-size:1.02rem;}
.nts-need strong{color:var(--nts-gold);}
.nts-steps{margin-top:clamp(48px,6vw,72px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,40px);}
.nts-steps li{position:relative;padding-top:66px;}
.nts-steps__n{position:absolute;left:0;top:0;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--nts-indigo);color:#fff;font-family:var(--nts-serif);font-size:1.4rem;line-height:1;}
.nts-steps li:not(:last-child)::after{content:"";position:absolute;left:62px;right:-12px;top:24px;height:2px;background:linear-gradient(to right,var(--nts-gold),rgba(214,179,105,0));}
.nts-steps h3{font-size:1.35rem;}
.nts-steps p{font-size:1rem;}
.nts-serve__cta{margin-top:clamp(40px,5vw,56px);text-align:center;}

/* ============================================================ GUESTS */
.nts-attend{padding:var(--nts-section) 0;}
.nts-attend__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(40px,6vw,96px);align-items:center;}
.nts-checks{margin-top:28px;display:grid;gap:14px;}
.nts-checks li{position:relative;padding-left:38px;font-size:1.02rem;line-height:1.5;}
.nts-checks li::before{content:"";position:absolute;left:0;top:1px;width:24px;height:24px;border-radius:50%;background:var(--nts-sky-soft);}
.nts-checks li::after{content:"";position:absolute;left:8px;top:6px;width:7px;height:12px;border:solid var(--nts-indigo);border-width:0 2.5px 2.5px 0;transform:rotate(45deg);}
.nts-note{margin-top:26px;padding-left:16px;border-left:3px solid var(--nts-crimson);font-size:.98rem;font-weight:500;color:var(--nts-ink);}
.nts-attend__ctas{margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;}
.nts-attend__photo{aspect-ratio:4/3;rotate:2deg;}

/* ============================================================ WORLDWIDE */
.nts-world{position:relative;isolation:isolate;padding:var(--nts-section) 0;color:#fff;
	background:
		radial-gradient(50% 70% at 100% 0%,rgba(105,163,214,.22),transparent 60%),
		radial-gradient(50% 70% at 0% 100%,rgba(173,5,46,.16),transparent 60%),
		linear-gradient(150deg,var(--nts-indigo),#1d1260 55%,var(--cl-navy));}
.nts-world .nts-head{max-width:900px;}
.nts-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,2vw,24px);}
.nts-stats li{padding:clamp(22px,3vw,34px) 16px;border-radius:var(--nts-radius);text-align:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);}
.nts-stats b{display:block;font-family:var(--nts-serif);font-weight:500;font-size:clamp(2.4rem,4.6vw,3.8rem);line-height:1;background:var(--nts-foil);-webkit-background-clip:text;background-clip:text;color:transparent;}
.nts-stats span{display:block;margin-top:12px;font-size:.95rem;font-weight:500;color:rgba(255,255,255,.86);}
.nts-world__src{margin-top:24px;text-align:center;font-size:.85rem;color:rgba(255,255,255,.7);}

/* ============================================================ VOICES */
.nts-voices{padding:var(--nts-section) 0;}
.nts-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,28px);}
.nts .nts-quote{position:relative;padding:6px !important;border-radius:20px;background:var(--nts-foil);}
.nts-quote p{height:100%;padding:clamp(30px,3.2vw,44px) clamp(24px,2.6vw,34px) 86px;border-radius:15px;background:#fff;font-family:var(--nts-serif);font-size:1.15rem;line-height:1.5;color:var(--nts-ink);}
.nts-quote footer{position:absolute;left:clamp(30px,3.2vw,40px);right:24px;bottom:30px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--nts-gold-ink);}
.nts-voices__src{margin-top:24px;font-size:.88rem;color:var(--nts-body);}

/* ============================================================ FAQ */
.nts-faq{padding:var(--nts-section) 0;}
.nts-faq__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px);align-items:start;}
.nts-faq .nts-head{position:sticky;top:120px;margin-bottom:0;}
.nts-faq__list details{border-bottom:1px solid #ddd8e4;}
.nts-faq__list details:first-child{border-top:1px solid #ddd8e4;}
.nts-faq__list summary{position:relative;display:block;list-style:none;cursor:pointer;padding:24px 56px 24px 0;font-family:var(--nts-serif);font-weight:500;font-size:1.3rem;line-height:1.3;color:var(--nts-indigo);}
.nts-faq__list summary::-webkit-details-marker{display:none;}
.nts-faq__list summary::before,.nts-faq__list summary::after{content:"";position:absolute;right:12px;top:50%;width:18px;height:2px;margin-top:-1px;background:var(--cl-blue);transition:transform .3s var(--nts-ease);}
.nts-faq__list summary::after{transform:rotate(90deg);}
.nts-faq__list details[open] summary::after{transform:rotate(0deg);}
.nts-faq__list details p{padding:0 40px 26px 0;font-size:1.02rem;}

/* ============================================================ CLOSING */
.nts-close{padding:var(--nts-section) 0;text-align:center;}
.nts-close__inner{max-width:980px;}
.nts-close__marks{display:flex;align-items:center;justify-content:center;gap:clamp(20px,4vw,48px);margin-bottom:clamp(36px,5vw,56px);}
.nts-close__nts{width:clamp(150px,18vw,220px);height:auto;}
.nts-close__cl{width:clamp(190px,24vw,300px);height:auto;}
.nts-close__plus{width:26px;height:26px;background:var(--nts-foil);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);}
.nts-close .nts-h2{text-wrap:balance;}
.nts-close__ctas{margin-top:36px;display:flex;flex-wrap:wrap;justify-content:center;gap:14px;}
.nts-close__note{margin:32px auto 0;max-width:62ch;font-size:.95rem;}

/* ============================================================ LIGHTBOX */
/* "sign-up opens [day]" box */
.nts-soon{border:0;margin:auto;width:min(92vw,520px);max-width:none;box-sizing:border-box;padding:44px 40px 36px;border-radius:24px;text-align:center;color:#fff;background:linear-gradient(160deg,#311488 0%,var(--nts-indigo) 45%,#1d1260 100%);box-shadow:0 0 0 2px rgba(214,179,105,.65),0 40px 100px rgba(0,0,0,.55);}
.nts-soon::backdrop{background:rgba(12,5,36,.75);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.nts-soon[open]{animation:nts-pop .35s var(--nts-ease);}
.nts-soon__spark{display:block;width:34px;height:34px;margin:0 auto 18px;background:var(--nts-foil);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);}
.nts .nts-soon__msg{margin:0;font-family:var(--nts-serif);font-weight:500;font-size:clamp(1.6rem,4vw,2rem);line-height:1.2;color:#fff;}
.nts .nts-soon__sub{margin:14px 0 26px;font-size:1rem;line-height:1.55;color:rgba(255,255,255,.85);}
.nts-lightbox{border:0;padding:0;margin:auto;background:transparent;width:min(92vw,1180px);max-width:none;max-height:none;overflow:visible;}
.nts-lightbox::backdrop{background:rgba(12,5,36,.9);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.nts-lightbox[open]{animation:nts-pop .35s var(--nts-ease);}
@keyframes nts-pop{from{opacity:0;transform:scale(.96);}to{opacity:1;transform:none;}}
.nts-lightbox__frame{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#000;box-shadow:0 40px 100px rgba(0,0,0,.6);}
.nts-lightbox__frame iframe,.nts-lightbox__frame video{position:absolute;inset:0;width:100%;height:100%;border:0;}
.nts-lightbox__close{position:absolute;right:-6px;top:-54px;width:44px;height:44px;border-radius:50%;background:#fff !important;color:var(--nts-indigo) !important;font-size:28px !important;line-height:44px !important;text-align:center;}

/* ============================================================ FLOATING BUTTON */
.nts-float{
	position:fixed;right:clamp(16px,2.4vw,28px);bottom:clamp(16px,2.4vw,28px);z-index:9990;
	display:inline-flex;align-items:center;gap:8px;
	padding:15px 24px;border-radius:999px;
	background:var(--nts-foil);color:var(--nts-night) !important;
	font-family:var(--nts-sans);font-size:15px;font-weight:700;
	box-shadow:0 16px 36px -14px rgba(20,8,56,.7);
	opacity:0;visibility:hidden;transform:translateY(16px);
	transition:opacity .35s,transform .35s var(--nts-ease),visibility 0s .35s;
}
.nts-float::before{content:"";width:12px;height:12px;background:var(--nts-night);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);}
.nts-float.is-on{opacity:1;visibility:visible;transform:none;transition:opacity .35s,transform .35s var(--nts-ease);}

/* ============================================================ REVEAL */
.nts .reveal{opacity:0;transform:translateY(26px);transition:opacity .9s var(--nts-ease),transform .9s var(--nts-ease);}
.nts .reveal.in{opacity:1;transform:none;}
.nts-moments .reveal:nth-child(3n+2),.nts-roles .reveal:nth-child(3n+2),.nts-quotes .reveal:nth-child(2),.nts-stats .reveal:nth-child(2),.nts-steps .reveal:nth-child(2){transition-delay:.08s;}
.nts-moments .reveal:nth-child(3n),.nts-roles .reveal:nth-child(3n),.nts-quotes .reveal:nth-child(3),.nts-stats .reveal:nth-child(3),.nts-steps .reveal:nth-child(3){transition-delay:.16s;}
.nts-stats .reveal:nth-child(4){transition-delay:.24s;}

/* ============================================================ RESPONSIVE */
@media (max-width:1100px){
	.nts-hero__media{width:74%;}
	.nts-hero__inner{max-width:min(560px,54vw);}
}
/* portrait screens get the tall cut of the banner (nts.js picks the same file) */
@media (max-aspect-ratio:1/1){
	.nts-hero__media{background-image:var(--nts-poster-tall);}
}

@media (max-width:999px){
	.nts-intro__grid,.nts-serve__top,.nts-attend__grid,.nts-faq__grid{grid-template-columns:1fr;}
	.nts-trio{max-width:600px;margin:0 auto;width:100%;}
	.nts-moments,.nts-roles{grid-template-columns:repeat(2,minmax(0,1fr));}
	.nts-quotes{grid-template-columns:1fr;max-width:640px;}
	.nts-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
	.nts-serve__photo,.nts-attend__photo{max-width:520px;}
	.nts-attend__photo{order:-1;margin:0 auto;}
	.nts-faq .nts-head{position:static;}
	.nts-strip{grid-template-columns:repeat(3,minmax(0,1fr));}
	.nts-strip li:nth-child(n+4){display:none;}
}

/* phones & small tablets: the video becomes the full hero background */
@media (max-width:899px){
	.nts-hero{min-height:max(640px,100svh);align-items:flex-end;}
	.nts-hero__grid{grid-template-columns:1fr;padding:130px var(--nts-pad) 96px;}
	.nts.is-guest-full .nts-hero__grid{padding-top:calc(130px + var(--nts-full-h,120px));}
	.nts-full__inner{justify-content:flex-start;padding-top:12px;padding-bottom:14px;}
	.nts .nts-full__text{flex-basis:100%;font-size:.95rem;}
	.nts .nts-full__text strong{display:block;font-size:1.2rem;margin:0 0 2px;}
	.nts-full__spark{display:none;}
	.nts-hero__media{width:100%;-webkit-mask-image:none;mask-image:none;}
	.nts-hero__media::after{background:linear-gradient(to bottom,rgba(20,8,56,.5) 0%,rgba(20,8,56,.32) 16%,rgba(20,8,56,.8) 40%,rgba(20,8,56,.95) 66%,rgba(20,8,56,.98) 100%);}
	.nts-hero__inner{max-width:none;}
	.nts-spark{display:none;}
	.nts-recap-pill--inline{display:inline-flex;margin-top:22px;}
	.nts-recap-pill--float{display:none;}
	.nts-hero__logo{width:170px;}
	.nts-crown{text-align:center;}
	.nts-crown__inner{grid-template-columns:1fr;max-width:640px;}
	.nts-crown .nts-eyebrow{justify-content:center;}
	.nts-crown__photo{rotate:-1.2deg;}
	.nts-crown__photo figcaption{left:14px;bottom:14px;}
	.nts-hero__sub{max-width:none;}
	.nts-hero__cue{display:none;}
}

@media (max-width:699px){
	.nts{font-size:17px;}
	.nts-hero__title{font-size:clamp(2.6rem,11vw,3.4rem);}
	.nts-hero__ctas{flex-direction:column;align-items:stretch;}
	.nts-hero__ctas .nts-btn{width:100%;}
	.nts-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
	.nts-facts li{padding:14px 8px;}
	.nts-facts span{font-size:.78rem;}
	/* swipeable row of moments */
	.nts-moments{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--nts-pad);-webkit-overflow-scrolling:touch;margin:0 calc(var(--nts-pad) * -1);padding:0 var(--nts-pad) 10px;scrollbar-width:none;}
	.nts-moments::-webkit-scrollbar{display:none;}
	.nts-moment{scroll-snap-align:start;}
	.nts-quiet{grid-template-columns:1fr;}
	.nts-quiet>div+div{border-left:0;border-top:1px solid #e3dfe8;}
	.nts-roles{grid-template-columns:1fr;}
	.nts-steps{grid-template-columns:1fr;gap:28px;}
	.nts-steps li{padding:0 0 0 66px;min-height:48px;}
	.nts-steps li:not(:last-child)::after{left:23px;right:auto;top:56px;bottom:-22px;width:2px;height:auto;background:linear-gradient(to bottom,var(--nts-gold),rgba(214,179,105,0));}
	.nts-serve__cta .nts-btn,.nts-serve__intro .nts-btn{width:100%;}
	.nts-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
	.nts-strip li:nth-child(n+3){display:none;}
	.nts-recap-card{aspect-ratio:4/5;}
	.nts-recap-card img{object-position:62% 50%;}
	.nts-attend__ctas .nts-btn{width:100%;}
	.nts-close__ctas{flex-direction:column;align-items:stretch;}
	.nts-close__marks{gap:16px;}
	.nts-close__nts,.nts-close__cl{width:min(40vw,170px);}
	.nts-faq__list summary{font-size:1.15rem;padding-right:44px;}
	.nts-faq__list details p{padding-right:0;}
	.nts-float{padding:13px 20px;}
	.nts-lightbox__close{top:-52px;right:0;}
	.nts-crown__photo figcaption{left:12px;bottom:12px;padding:7px 14px 7px 12px;}
	.nts-crown__photo-year{display:none;}
	.nts-crown__photo-name{font-size:1.05rem;}
}

@media (prefers-reduced-motion:reduce){
	.nts .reveal{rotate:none;}
	.nts *,.nts *::before,.nts *::after{animation:none !important;transition:none !important;}
	.nts .reveal{opacity:1;transform:none;}
}
