:root{--navy:#142D40;--night:#0C1B28;--ivory:#F7F4ED;--blue:#315D73;--gold:#D9B96E;--brass:#8A6D2F;--burg:#873E43;--text:#28343C}
body{color:var(--text);font-family:"Source Sans 3",system-ui,sans-serif;font-size:18px;line-height:1.65;background:var(--ivory)}
h1,h2,h3,h4{font-family:"Libre Baskerville",Georgia,serif;color:var(--navy);line-height:1.25}
a{color:var(--blue)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

.nh-wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.nh-narrow{max-width:760px}
.nh-center{text-align:center}
.nh-section{padding:72px 0}
.nh-ivory{background:var(--ivory)}
.nh-navy{background:var(--navy);color:#F2EEE3}
.nh-navy h2,.nh-navy h3{color:#fff}
.nh-navy a:not(.nh-btn){color:var(--gold)}
.nh-eyebrow{font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;margin:0 0 10px}
.nh-eyebrow.nh-dark{color:var(--brass)}

.nh-banner{background:var(--burg);color:#fff;text-align:center;padding:12px 20px;font-weight:600}

.nh-hero{position:relative;background:linear-gradient(180deg,#0C1B28 0%,#142D40 70%,#1b3a52 100%);background-size:cover;background-position:center;color:#fff;padding:110px 0 70px;overflow:hidden}
.nh-hero h1{color:#fff;font-size:clamp(2rem,5vw,3.6rem);max-width:820px;margin:0 0 18px}
.nh-hero-text{font-size:1.2rem;max-width:660px;color:#E8E4D8}
.nh-hero .nh-wrap{position:relative;z-index:2}
.nh-lights{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.8;
background-image:radial-gradient(circle at 12% 78%,rgba(217,185,110,.9) 0 2px,transparent 3px),radial-gradient(circle at 28% 84%,rgba(255,236,190,.8) 0 2px,transparent 3px),radial-gradient(circle at 47% 80%,rgba(217,185,110,.9) 0 2px,transparent 3px),radial-gradient(circle at 63% 86%,rgba(255,150,140,.7) 0 2px,transparent 3px),radial-gradient(circle at 81% 79%,rgba(217,185,110,.9) 0 2px,transparent 3px),radial-gradient(circle at 92% 85%,rgba(255,236,190,.8) 0 2px,transparent 3px)}
@media (prefers-reduced-motion:no-preference){.nh-lights{animation:nhtwinkle 5s ease-in-out infinite alternate}}
@keyframes nhtwinkle{from{opacity:.45}to{opacity:1}}

.nh-actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0}
.nh-btn{display:inline-block;padding:14px 28px;border-radius:4px;font-weight:700;text-decoration:none;border:2px solid transparent;font-size:1rem;cursor:pointer;line-height:1.2;transition:background .2s,color .2s}
.nh-btn-gold{background:var(--gold);color:#10202D}
.nh-btn-gold:hover{background:#ecd08c;color:#10202D}
.nh-btn-outline{border-color:var(--gold);color:#fff;background:transparent}
.nh-btn-outline:hover{background:rgba(217,185,110,.18);color:#fff}
.nh-btn-navy{background:var(--navy);color:#fff}
.nh-btn-navy:hover{background:var(--blue);color:#fff}

.nh-strip{list-style:none;margin:36px 0 0;padding:20px 0 0;border-top:1px solid rgba(217,185,110,.5);display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.nh-strip li{font-weight:600}
.nh-strip span{display:block;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}

.nh-cards,.nh-split,.nh-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px}
.nh-card{background:#fff;border-top:4px solid var(--gold);padding:32px;box-shadow:0 6px 22px rgba(20,45,64,.08)}
.nh-card h3{margin-top:0}

.nh-sponsors{display:flex;flex-wrap:wrap;gap:28px;justify-content:center;align-items:center;margin:28px 0}
.nh-sponsor img{max-height:90px;width:auto}
.nh-fleet{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:24px}
.nh-boat{border:1px solid rgba(217,185,110,.5);padding:12px 16px;border-radius:4px}
.nh-boat span{font-size:.9rem;color:#cfd8de}

.nh-form{max-width:820px}
.nh-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0 24px}
.nh-form label{display:block;font-weight:600;margin-bottom:4px}
.nh-form input[type=text],.nh-form input[type=email],.nh-form input[type=tel],.nh-form input:not([type]),.nh-form textarea{width:100%;padding:12px;border:1px solid #9aa7b0;border-radius:4px;font-size:1rem;background:#fff}
.nh-check label{font-weight:400;display:flex;gap:10px;align-items:flex-start}
.nh-hp{position:absolute;left:-9999px}
.nh-alert{padding:16px 20px;border-left:5px solid var(--blue);background:#fff;margin:0 0 24px}
.nh-ok{border-color:#2e7d4f}
.nh-err{border-color:var(--burg)}

.nh-lead{font-size:1.3rem;color:var(--navy)}
.nh-muted{color:#5a6770;font-size:.95rem}
.nh-info{padding-left:20px}
.nh-info li{margin-bottom:10px}
.nh-marshals{list-style:none;padding:0}
.nh-marshals li{padding:12px 0;border-bottom:1px solid #d9d3c3}
.nh-year{display:inline-block;min-width:64px;font-family:"Libre Baskerville",serif;font-weight:700;color:var(--brass)}
.nh-role{display:block;margin-left:68px;color:#5a6770;font-size:.95rem}
.nh-timeline{list-style:none;padding:0;border-left:3px solid var(--gold);margin:32px 0 0 8px}
.nh-timeline li{padding:0 0 28px 28px;position:relative}
.nh-timeline li:before{content:"";position:absolute;left:-10px;top:6px;width:16px;height:16px;background:var(--navy);border:3px solid var(--gold);border-radius:50%}
.nh-timeline p{margin:4px 0 0}
.nh-cup{padding-left:20px}
.nh-cup li{padding:6px 0}
.nh-cup strong{margin-left:12px;color:var(--brass)}
.nh-map iframe{width:100%;height:420px;border:0;margin:20px 0}

#masthead,.main-header-bar{background:var(--navy)}
.main-header-menu a,.ast-header-break-point .main-header-menu a,.site-title a{color:#F2EEE3}
.main-header-menu a:hover{color:var(--gold)}
.main-header-menu .nh-cta>a{background:var(--gold);color:#10202D !important;border-radius:4px;font-weight:700;margin-left:10px}
.home .entry-header,.home .ast-breadcrumbs-wrapper{display:none}
.home .site-content .ast-container{display:block;max-width:100%;padding:0}
.site-footer,.ast-small-footer,.site-below-footer-wrap{background:var(--night);color:#cfd8de}
.site-footer a{color:var(--gold)}
@media(max-width:600px){.nh-section{padding:48px 0}.nh-hero{padding:70px 0 50px}.nh-btn{width:100%;text-align:center}}
.nh-navy .nh-split .nh-theme-tagline,
.nh-theme-tagline {
  font-style: italic !important;
  font-family: 'Libre Baskerville', Georgia, serif;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #d9b45a;
  margin: 0.25rem 0 1.5rem;
}