/* Local NoDak identity across the existing WordPress templates. */
:root{--nd-ink:#0B2444;--nd-paper:#F7F1E6;--nd-gold:#B87952;--nd-muted:#365267;--color-deep-navy:#0B2444;--color-navy:#0B2444}
body{background:var(--nd-paper);color:var(--nd-ink)}
.nd-site{background:var(--nd-paper)}
.nd-site h1,.nd-site h2,.nd-site h3{color:var(--nd-ink)}
.nd-site .nd-kicker,.quote-page .studio-kicker,.blog-kicker{color:#0B2444;letter-spacing:.12em}
.nd-site h1 em{color:#B87952}
.nd-site .nd-button,.nd-site .nd-button-gold,.quote-form .button[type=submit],.site-footer .button{background:#B87952;color:#fff;border:1px solid #B87952;border-radius:3px;box-shadow:none}
.nd-site .nd-button:hover,.nd-site .nd-button-gold:hover,.quote-form .button[type=submit]:hover,.site-footer .button:hover{background:#0B2444;color:#fff}
.nd-site .nd-link,.nd-service-jump a{color:#0a3654}
.nd-site .nd-band,.nd-service-spotlight{background:#eee7da}
.nd-service-planning,.nd-brand-card,.nd-service-choices article,.nd-help-services>a,.quote-page .quote-form{background:#fffcf6;border-color:#e0d3be}
.nd-service-choices article{border-top-color:var(--nd-gold)}
.nd-cta,.nd-strip{background:#0B2444}
.nd-cta h2,.nd-cta p,.nd-cta .nd-kicker{color:#fff}
.nd-brand-card{border-top:3px solid var(--nd-gold);box-shadow:0 8px 24px #0B244410}
.nd-brand-card>img{width:min(100%,320px);height:135px;object-position:left center}
.nd-service-hero{position:relative;padding-block:56px 68px;gap:clamp(35px,5vw,80px)}
.nd-service-hero:before{content:"";position:absolute;top:0;left:0;width:84px;height:4px;background:#B87952}
.nd-service-hero figure{min-width:0}
.nd-service-hero figure>img:not(.nd-division-logo){border-radius:3px;box-shadow:0 14px 35px #0B244423}
.nd-service-hero .nd-division-logo{display:block;width:min(300px,75%);height:auto;max-height:145px;object-fit:contain;object-position:left;margin:0 0 12px}
.nd-service-hero .nd-lead{color:#294459}
.nd-service-jump{background:#fdfaf4;border-color:#decbb0}
.nd-service-jump a:hover,.nd-service-jump a:focus-visible{color:#0B2444}
.blog-hero p:last-child{color:#365267}
.blog-hero__inner::before,.single-post__hero-inner::before{background:#B87952}
.blog-card .blog-card__link{color:#0B2444}
.quote-page{background:var(--nd-paper)}
.quote-page__hero{border-top:4px solid var(--nd-gold);padding-top:22px}
.quote-page__hero h1,.quote-page__hero p{color:var(--nd-ink)}
.quote-form input:focus,.quote-form textarea:focus,.quote-form select:focus{border-color:#B87952}
.breadcrumbs,.breadcrumb-trail{background:#f1e8d7;color:#294459;border-color:#e2d4bc}
.site-footer{background:#0B2444;color:#F7F1E6;border-top:4px solid #B87952}
.site-footer p,.site-footer a,.site-footer h2,.site-footer__bottom,.site-footer__nav h2{color:#F7F1E6}
.site-footer__nav h2{color:#F7F1E6;letter-spacing:.1em}
.site-footer__title{font-family:var(--font-display);font-size:clamp(30px,2.8vw,40px);line-height:1.1}
.site-footer__nav a:hover,.site-footer__brand a:hover{text-decoration:underline;text-underline-offset:3px}
.site-footer__bottom{border-top:1px solid #ffffff30}
/* Home header elements are now shared by every page. Home retains its approved styling. */
body:not(.home) .welcome-banner{background:#0B2444;color:#fff}
body:not(.home) .welcome-banner__inner{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:48px;padding-block:7px;max-width:1500px}
body:not(.home) .welcome-banner__inner p{margin:0;color:#fff;line-height:1.3}
body:not(.home) .nd-home-location{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:13px;font-weight:650;letter-spacing:.13em;text-transform:uppercase}
body:not(.home) .nd-home-location svg{display:block;width:17px;height:20px;flex:none}
body:not(.home) .nd-home-banner-line{font-size:12px;font-weight:700;letter-spacing:.12em;text-align:center;text-transform:uppercase;white-space:nowrap}
body:not(.home) .nd-home-banner-actions{display:flex;align-items:center;justify-self:end;gap:24px}
body:not(.home) .nd-home-search{position:static;color:#fff}
body:not(.home) .nd-home-search summary{display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;list-style:none;font-size:14px;font-weight:600}
body:not(.home) .nd-home-search summary::-webkit-details-marker{display:none}
body:not(.home) .nd-home-search summary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
body:not(.home) .nd-home-search form{position:absolute;z-index:50;top:calc(100% + 8px);right:0;width:min(350px,100%);padding:17px;background:#F7F1E6;color:#0B2444;border:1px solid #cdbb9d;box-shadow:0 12px 26px #0B244440}
body:not(.home) .nd-home-search form label{display:block;margin-bottom:8px;font-size:14px;font-weight:700}
body:not(.home) .nd-home-search form>div{display:flex}
body:not(.home) .nd-home-search input{min-width:0;flex:1;padding:10px;border:1px solid #0B2444;border-right:0;background:#fff;color:#0B2444;font:inherit}
body:not(.home) .nd-home-search button{padding:10px 13px;border:1px solid #B87952;background:#B87952;color:#fff;font:inherit;font-weight:750;cursor:pointer}
body:not(.home) .welcome-banner .welcome-banner__link{display:inline-flex;align-items:center;justify-content:center;min-width:135px;min-height:34px;padding:6px 17px;border:1px solid #B87952;border-radius:3px;background:#B87952;color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;white-space:nowrap}
body:not(.home) .welcome-banner__link:hover{background:#0B2444}
body:not(.home) .site-header{background:#F7F1E6;border-bottom:1px solid #e2d6c3}
body:not(.home) .site-header__inner{max-width:1500px;min-height:116px;padding-block:13px;gap:30px}
.nd-home-header-brand{flex:0 0 auto}
.nd-home-header-brand a{display:block;width:300px}
.nd-home-header-brand__art{display:block;width:100%;height:auto}
body:not(.home) .site-nav .nd-home-nav{display:flex;align-items:center;gap:clamp(16px,2.2vw,32px);padding:0;margin:0;list-style:none}
body:not(.home) .site-nav .nd-home-nav a{display:block;color:#0b2943;font-size:16px;font-weight:600;padding:12px 3px;text-decoration:none}
body:not(.home) .site-nav .nd-home-nav a:hover,body:not(.home) .site-nav .nd-home-nav a[aria-current]{border-bottom:3px solid #B87952;text-decoration:none}
:where(a,button,input,select,textarea,summary):focus-visible{outline-color:#B87952}
@media(max-width:1200px){body:not(.home) .site-header__inner{min-height:96px;gap:12px}body:not(.home) .site-nav .nd-home-nav{display:block}body:not(.home) .site-nav .nd-home-nav a{font-size:16px}}
@media(max-width:1050px){body:not(.home) .welcome-banner__inner{grid-template-columns:1fr auto}body:not(.home) .nd-home-banner-line{display:none}}
@media(max-width:760px){body:not(.home) .welcome-banner__inner{gap:8px;min-height:43px}body:not(.home) .welcome-banner__inner .nd-home-location{width:auto;text-align:left;font-size:11px}body:not(.home) .nd-home-banner-actions{gap:12px}body:not(.home) .nd-home-search summary{min-width:44px;justify-content:center}body:not(.home) .nd-home-search summary span{display:none}body:not(.home) .welcome-banner .welcome-banner__link{min-width:0;padding:5px 9px;font-size:10px}body:not(.home) .site-header__inner{min-height:84px}.nd-service-hero{padding-block:38px 48px}.nd-service-hero .nd-division-logo{width:min(260px,80%);max-height:105px}}
@media(max-width:420px){.nd-home-header-brand a{width:204px}body:not(.home) .nd-home-location svg{width:13px;height:17px}body:not(.home) .nd-home-location{gap:5px;letter-spacing:.04em}}
@media(max-width:760px){body:not(.home) .welcome-banner .nd-home-location span{display:inline}body:not(.home) .site-nav .nd-home-nav a{width:100%;min-height:46px;padding:11px 13px;background:#fffaf3;border:1px solid #e4d5bf;border-radius:3px}body:not(.home) .site-nav .nd-home-nav a[aria-current]{border-bottom:3px solid #B87952}}

/* Make the two trading names visible beside the NoDak umbrella mark at every size. */
.nd-home-header-brand__family{width:300px;max-width:100%;margin:-3px 0 0;color:#0b2943;font-size:11px;font-weight:800;line-height:1.3;letter-spacing:.055em;text-align:center;text-transform:uppercase;white-space:nowrap}
.nd-home-header-brand__family .nd-family-separator{color:#B87952;padding-inline:3px}
.nd-home-header-brand__family .nd-family-name{white-space:nowrap}
@media(max-width:1200px){.nd-home-header-brand__family{font-size:10px}}
@media(max-width:420px){.nd-home-header-brand__family{width:204px;font-size:11px;letter-spacing:0;white-space:normal}}

@media(max-width:1250px){.nd-home-banner-line{display:none!important}.welcome-banner__inner{grid-template-columns:1fr auto!important}}

/* Match the interior top-strip typography to the rendered homepage. */
body:not(.home) .welcome-banner .nd-home-location{font-size:16px;letter-spacing:2.08px}
body:not(.home) .welcome-banner .nd-home-banner-line{font-size:16px;letter-spacing:1.92px}
@media(max-width:760px){body:not(.home) .welcome-banner .nd-home-location{font-size:11px;letter-spacing:1.43px}}
@media(max-width:420px){body:not(.home) .welcome-banner .nd-home-location{letter-spacing:.44px}}
/* Keep small text accessible on copper and cream. */
.nd-site h1 em{color:#0B2444}
.nd-site .nd-button,.nd-site .nd-button-gold,.quote-form .button[type=submit],.site-footer .button,body:not(.home) .nd-home-search button,body:not(.home) .welcome-banner .welcome-banner__link{color:#0B2444}
.nd-site .nd-button:hover,.nd-site .nd-button-gold:hover,.quote-form .button[type=submit]:hover,.site-footer .button:hover,body:not(.home) .welcome-banner .welcome-banner__link:hover{color:#F7F1E6}

.nd-site .nd-button,.nd-site .nd-button-gold,.quote-form .button[type=submit],.site-footer .button,body:not(.home) .nd-home-search button,body:not(.home) .welcome-banner .welcome-banner__link{background:#0B2444;color:#F7F1E6;border-color:#B87952}

/* Retired neon styling remains in legacy policy and pagination components. */
.policy-hero { background:#0B2444; border-bottom-color:#B87952; }
.policy-hero :is(h1,p) { color:#F7F1E6; }
.policy-section { border-top-color:#B87952; }
.blog-pagination :is(a,span) { background:#F7F1E6; color:#0B2444; border-color:#B87952; }
.blog-pagination :is(.current,a:hover,a:focus-visible) { background:#0B2444; color:#F7F1E6; border-color:#B87952; }

/* Keep the roadtrip project's existing panels; prevent shared text styles from obscuring their labels. */
.single-post__content .gs-camp-story__facts strong { color:#0B2444; }
.single-post__content :is(.gs-camp-story__shirt,.gs-camp-story__cta) :is(p,figcaption) { color:#F7F1E6; }
.single-post__content .gs-camp-story__coasters figcaption { color:#0B2444; }
.single-post__content .gs-camp-story__cta .wp-block-button .wp-block-button__link,
.single-post__content .gs-camp-story__cta .wp-block-button .wp-block-button__link:is(:hover,:focus-visible) { background:#0B2444; color:#F7F1E6; border:1px solid #B87952; }

/* Header social links. */
.welcome-banner .nd-header-social{display:flex;align-items:center;gap:2px}
.welcome-banner .nd-header-social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:#fff;border-radius:3px}
.welcome-banner .nd-header-social a:hover{background:#ffffff20}
.welcome-banner .nd-header-social a:focus-visible{outline:2px solid #fff;outline-offset:2px}
.welcome-banner .nd-header-social svg{width:20px;height:20px}
@media(max-width:760px){.welcome-banner .nd-home-banner-actions{gap:4px}.welcome-banner .nd-header-social a{width:36px}}
@media(max-width:420px){.welcome-banner__inner{grid-template-columns:1fr!important}.welcome-banner .nd-home-location{display:none}.welcome-banner .nd-home-banner-actions{justify-self:end}}
