:root{--snp-midnight:#090f1c;--snp-navy:#142338;--snp-teal:#1c9a91;--snp-ice:#9bd8e8;--snp-white:#f1f5f8;--snp-ink:#17263a;--snp-line:#d7e1e8;--snp-width:1200px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body.snp-theme{margin:0;color:var(--snp-ink);background:#fff;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}body.snp-menu-open{overflow:hidden}a{color:inherit}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid #16b2a9;outline-offset:3px}.snp-container{width:min(var(--snp-width),calc(100% - 48px));margin-inline:auto}.snp-skip{position:absolute;top:-100px;left:20px;z-index:10000;padding:12px 18px;background:#fff;color:#000}.snp-skip:focus{top:10px}.snp-header{position:sticky;top:0;z-index:100;background:var(--snp-midnight);color:white;transition:background .25s,box-shadow .25s}.home .snp-header{position:fixed;top:0;left:0;right:0;background:rgba(9,15,28,.5)}.home .snp-header.snp-scrolled{background:var(--snp-midnight)}.snp-header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:88px}.snp-brand{display:flex;align-items:center;min-width:0}.snp-brand .custom-logo{max-width:210px;max-height:72px;width:auto;height:auto;display:block}.snp-brand-text{text-decoration:none;font-size:1.2rem;font-weight:850;letter-spacing:.08em;line-height:1.05}.snp-brand-text span{color:var(--snp-ice)}.snp-brand-text small{display:block;font-size:.55rem;letter-spacing:.42em;margin-top:5px;font-weight:550}.snp-nav .snp-menu{display:flex;align-items:center;gap:clamp(10px,2.2vw,28px);padding:0;margin:0;list-style:none}.snp-nav .snp-menu li{position:relative;list-style:none}.snp-nav .snp-menu a{display:block;text-decoration:none;color:#eef5f8;font-size:.86rem;letter-spacing:.025em;padding:12px 0;transition:color .2s}.snp-nav .snp-menu a:hover,.snp-nav .snp-menu .current-menu-item>a{color:var(--snp-ice)}.snp-nav .sub-menu{display:none;position:absolute;left:-18px;top:100%;min-width:210px;background:#182a3e;border:1px solid #34485d;padding:10px 18px;margin:0;list-style:none;box-shadow:0 18px 35px #0005}.snp-nav li:hover>.sub-menu,.snp-nav li:focus-within>.sub-menu{display:block}.snp-nav .sub-menu .sub-menu{left:100%;top:-10px}.snp-menu-toggle{display:none;background:transparent;border:1px solid #526577;border-radius:7px;width:46px;height:42px;padding:9px}.snp-menu-toggle span{display:block;height:2px;background:white;margin:5px 0}.snp-hero{position:relative;min-height:min(850px,100svh);min-height:max(660px,100svh);display:flex;align-items:center;color:#fff;background:#112238 var(--snp-hero-image,none) center 38%/cover no-repeat;overflow:hidden}.snp-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,10,19,.93) 0%,rgba(5,10,19,.74) 42%,rgba(5,10,19,.16) 100%),linear-gradient(0deg,rgba(5,10,19,.6),transparent 35%)}.snp-hero-aurora{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 55% 55% at 68% 12%,rgba(30,175,161,.18),transparent 80%),radial-gradient(ellipse 38% 33% at 82% 28%,rgba(109,95,177,.12),transparent 80%);animation:snp-aurora 11s ease-in-out infinite alternate}.snp-hero-content{position:relative;z-index:1;padding-block:155px 95px}.snp-kicker,.snp-overline{color:#14887f;letter-spacing:.19em;font-size:.75rem;font-weight:800;text-transform:uppercase;margin:0 0 18px}.snp-hero .snp-kicker{color:var(--snp-ice)}.snp-hero h1{font-size:clamp(3.8rem,9vw,9rem);letter-spacing:-.065em;line-height:.97;margin:0;max-width:900px;font-weight:850;text-wrap:balance}.snp-hero-subtitle{font-size:clamp(1.25rem,2.8vw,2rem);color:var(--snp-ice);font-weight:350;margin:26px 0 30px}.snp-actions{display:flex;flex-wrap:wrap;gap:12px}.snp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:12px 23px;border-radius:3px;text-decoration:none;font-weight:700;letter-spacing:.02em;font-size:.85rem;transition:background .2s,transform .2s,color .2s}.snp-btn:hover{transform:translateY(-2px)}.snp-btn-primary{color:#081723;background:var(--snp-ice)}.snp-btn-primary:hover{background:#c9f2f7}.snp-btn-outline{border:1px solid #bfdce5;color:white}.snp-btn-outline:hover{background:#ffffff22}.snp-btn-dark{background:var(--snp-midnight);color:#fff}.snp-btn-dark:hover{background:#24405d}.snp-hero-index{position:absolute;bottom:28px;right:5%;letter-spacing:.18em;font-size:.67rem;color:#c4d1dc}.snp-section{padding:clamp(70px,9vw,135px) 0}.snp-intro{background:#f3f6f8}.snp-intro-grid{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:8%}h2{line-height:1.12;letter-spacing:-.045em}.snp-intro h2,.snp-gallery-feature h2,.snp-section-heading h2{font-size:clamp(2rem,5vw,4.3rem);margin:0}.snp-intro h2 em{color:#177f7a;font-style:normal}.snp-lead{font-size:clamp(1.07rem,1.7vw,1.35rem);line-height:1.75;margin:0 0 20px}.snp-text-link{display:inline-block;text-underline-offset:7px;font-weight:750;font-size:.88rem}.snp-text-link:hover{color:var(--snp-teal)}.snp-performance{color:#eaf4f8;background:linear-gradient(145deg,#090f1c,#14283d)}.snp-section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:35px}.snp-performance .snp-overline{color:var(--snp-ice)}.snp-text-link-light{color:#c8e9ee}.snp-performance-copy{max-width:640px;color:#b9cbd8;font-size:1.1rem}.snp-records-panel{display:flex;align-items:center;gap:20px;margin-top:35px;padding:30px;border:1px solid #4a6475;background:#ffffff0b;text-decoration:none;color:#eef5f8;transition:background .2s}.snp-records-panel:hover{background:#ffffff16}.snp-records-panel strong{display:block;font-size:1.15rem}.snp-records-panel small{display:block;color:#b5c9d5}.snp-records-panel>span:last-child{margin-left:auto;font-size:1.5rem}.snp-records-icon{font-size:2.8rem;color:var(--snp-ice)}.snp-gallery-feature{background:#fff}.snp-gallery-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.snp-gallery-feature p:not(.snp-overline){font-size:1.1rem;max-width:430px;margin:22px 0 29px}.snp-gallery-placeholder{min-height:360px;display:flex;align-items:end;padding:35px;background:linear-gradient(145deg,#173450,#0d1425 70%);color:#d8f8f6;letter-spacing:.25em;font-size:2rem;font-weight:850;line-height:1.2}.snp-news{background:#eef3f6}.snp-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.snp-post-card{min-width:0}.snp-post-thumb{display:flex;min-height:190px;aspect-ratio:1.55;overflow:hidden;align-items:center;justify-content:center;background:#1c344b;color:#c9dce8;text-decoration:none;font-weight:800;letter-spacing:.12em}.snp-post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.snp-post-thumb:hover img{transform:scale(1.035)}.snp-post-meta{font-size:.75rem;color:#557082;letter-spacing:.1em;text-transform:uppercase;margin-top:18px}.snp-post-card h2,.snp-post-card h3{font-size:1.3rem;letter-spacing:-.03em;line-height:1.3;margin:10px 0 15px}.snp-post-card h2 a,.snp-post-card h3 a{text-decoration:none}.snp-post-card h2 a:hover,.snp-post-card h3 a:hover{color:#177f7a}.snp-home-editor{background:#fff;padding:35px 0}.snp-standard{min-height:60vh;background:#fff}.snp-content-wrap,.snp-page-content,.snp-reading-width{padding-block:65px 100px}.snp-page-heading{margin:0 0 40px}.snp-page-heading h1{font-size:clamp(2.6rem,6vw,5rem);line-height:1.05;letter-spacing:-.055em;margin:0}.snp-reading-width{max-width:850px}.snp-article-image{width:100%;height:auto;margin-bottom:40px}.snp-entry{overflow-wrap:anywhere}.snp-entry :is(p,ul,ol){max-width:75ch}.snp-entry :is(h2,h3,h4){line-height:1.2}.snp-entry a{color:#137c77}.snp-not-found{padding-block:110px}.snp-not-found h1{font-size:clamp(2.4rem,5vw,4.5rem);letter-spacing:-.05em}.snp-pagination,.snp-post-navigation{margin:40px 0}.snp-footer{background:#070e19;color:#f1f5f8;padding:50px 0 22px}.snp-footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:start}.snp-footer-grid strong{font-size:1.2rem;letter-spacing:.12em}.snp-footer-grid p{font-size:.85rem;color:#aebdca}.snp-footer-menu{display:flex;gap:18px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.snp-footer-menu a{text-decoration:none;color:#c4d5de;font-size:.85rem}.snp-footer-menu a:hover{color:#fff}.snp-footer-bottom{margin-top:42px;padding-top:17px;border-top:1px solid #273445;font-size:.74rem;color:#8297a6}body.admin-bar .snp-header{top:32px}
@keyframes snp-aurora{from{opacity:.6;transform:translateX(-1%)}to{opacity:1;transform:translateX(2%)}}
@media(max-width:960px){.snp-menu-toggle{display:block}.snp-header-inner{min-height:75px}.snp-nav{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100svh - 75px);overflow:auto;background:#0b1727;border-top:1px solid #33465c;padding:16px 24px 25px;box-shadow:0 18px 35px #0006}.snp-nav.snp-open{display:block}.snp-nav .snp-menu{flex-direction:column;align-items:stretch;gap:0}.snp-nav .snp-menu a{padding:10px 0}.snp-nav .sub-menu{display:block;position:static;box-shadow:none;background:transparent;border:0;padding:0 0 0 18px;min-width:0}.snp-nav .sub-menu .sub-menu{position:static}.snp-intro-grid,.snp-gallery-feature-grid{grid-template-columns:1fr;gap:30px}.snp-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:782px){body.admin-bar .snp-header{top:46px}}
@media(max-width:640px){.snp-container{width:min(var(--snp-width),calc(100% - 32px))}.snp-header-inner{min-height:72px}.snp-brand .custom-logo{max-width:165px}.snp-hero{min-height:680px;min-height:90svh;background-position:60% center}.snp-hero-shade{background:linear-gradient(90deg,#050a13df,#050a1359),linear-gradient(0deg,#050a139c,transparent 70%)}.snp-hero-content{padding-block:130px 70px}.snp-hero h1{font-size:clamp(3.4rem,17vw,6rem)}.snp-hero-index{display:none}.snp-section-heading{align-items:start;flex-direction:column}.snp-post-grid{grid-template-columns:1fr}.snp-records-panel{padding:18px;gap:12px}.snp-gallery-placeholder{min-height:260px}.snp-footer-grid{flex-direction:column}.snp-content-wrap,.snp-page-content,.snp-reading-width{padding-block:35px 65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.snp-hero-aurora{animation:none}*,*::before,*::after{transition-duration:0.01ms!important;animation-duration:0.01ms!important}}

.snp-elementor-page{width:100%;max-width:100%;margin:0;padding:0}.snp-elementor-page .elementor{width:100%}

/* v0.2.0: editorial introduction and records cards */
.snp-about-layout{display:grid;grid-template-columns:minmax(0,0.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(35px,6vw,105px)}
.snp-about-visual{position:relative;min-width:0}
.snp-about-photo{display:block;width:100%;height:clamp(350px,45vw,630px);object-fit:cover;object-position:center 35%;box-shadow:22px 22px 0 #dbe7e9}
.snp-about-photo-empty{min-height:430px;background:linear-gradient(135deg,#0c1827,#235b64);color:#e9f6f6;display:flex;flex-direction:column;justify-content:end;gap:12px;padding:35px;letter-spacing:.14em;font-weight:800}
.snp-about-photo-empty small{letter-spacing:normal;font-weight:400;color:#c4e3e7}
.snp-about-photo-label{position:absolute;bottom:0;left:0;padding:11px 20px;background:#0b1a29;color:#d3eff2;font-weight:700;font-size:.7rem;letter-spacing:.14em}
.snp-about-content .snp-lead{margin:30px 0;font-size:clamp(1.05rem,1.65vw,1.35rem)}
.snp-about-content h2{max-width:650px}
.snp-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:38px}
.snp-stat-card{padding:27px 24px;background:#1a2b3e;border:1px solid #385266;min-width:0}
.snp-stat-card span,.snp-stat-card small{display:block;color:#abc7d1}
.snp-stat-card span{font-size:.72rem;font-weight:800;letter-spacing:.10em}
.snp-stat-card strong{display:block;color:white;font-size:clamp(2rem,4.2vw,3.7rem);line-height:1.15;margin:11px 0;font-variant-numeric:tabular-nums}
.snp-stat-card small{font-size:.78rem}
.snp-latest-event{padding:25px 30px;border:1px solid #385266;margin-top:18px;background:#ffffff09}
.snp-latest-event .snp-overline{font-size:.7rem;margin-bottom:9px}
.snp-latest-event h3{font-size:clamp(1.15rem,2vw,1.6rem);margin:0 0 8px;line-height:1.35}
.snp-latest-event p{color:#b9cbd8;margin:0 0 14px}
@media(max-width:850px){.snp-about-layout{grid-template-columns:1fr}.snp-about-photo{max-height:520px}.snp-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.snp-about-photo{height:380px}.snp-stats-grid{grid-template-columns:1fr}.snp-stat-card{padding:20px}.snp-about-photo-empty{min-height:340px}}

/* v0.3.0: Through the Lens editorial collage. The existing gallery plugin is untouched. */
.snp-gallery-collage{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:10px;min-height:370px;aspect-ratio:1.42;width:100%}
.snp-gallery-tile{display:block;position:relative;overflow:hidden;background:#152941;text-decoration:none;min-width:0;min-height:0}
.snp-gallery-tile-1{grid-column:1;grid-row:1/span 2}
.snp-gallery-tile-2{grid-column:2;grid-row:1}
.snp-gallery-tile-3{grid-column:2;grid-row:2}
.snp-gallery-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.snp-gallery-tile:hover img,.snp-gallery-tile:focus-visible img{transform:scale(1.035);filter:brightness(1.07)}
.snp-gallery-tile-empty{display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,#1c3c54,#101a2a);color:#9bd8e8;font-weight:800;font-size:.75rem;letter-spacing:.18em}
@media(max-width:960px){.snp-gallery-collage{max-width:760px;aspect-ratio:1.4;min-height:290px}}
@media(max-width:520px){.snp-gallery-collage{gap:6px;min-height:220px;aspect-ratio:1.18}}
@media(prefers-reduced-motion:reduce){.snp-gallery-tile img{transition:none}.snp-gallery-tile:hover img,.snp-gallery-tile:focus-visible img{transform:none}}
