/* =========================================================================
   Ostsee.info 2026 - design "Ostsee Maritim" (deep blue - wave - sand - lighthouse red) - Layout B
   Child theme of dot-info_master. This stylesheet provides the complete
   magazine design (nav, hero, cards, bands, article Layout B, sidebar, footer)
   and overrides the parent's Bootstrap 3 base.
   ========================================================================= */
:root{
  --danube:#143d5e; --danube-deep:#0d2a42; --paprika:#c93f2e; --paprika-d:#a5301f;
  --ochre:#2b7a9e; --cream:#f2f6f8; --white:#fff; --ink:#1b2530; --gray:#62707e; --line:#dde7ec;
  --serif:'Playfair Display',Georgia,serif; --sans:'Source Sans 3',system-ui,sans-serif; --label:'Montserrat',sans-serif;
  --shadow:0 14px 40px rgba(12,40,64,.16); --maxw:1180px;
}
/* --- Reset/base (overrides the parent) --- */
html{background:var(--cream)!important;font-size:100%}
body.ostsee2026{font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.65;font-size:17px;text-shadow:none!important;margin:0}
body.ostsee2026 a{color:var(--danube);text-decoration:none}
body.ostsee2026 a:hover{color:var(--paprika)}
.ostsee2026 img{max-width:100%;height:auto}
.uw{max-width:var(--maxw);margin:0 auto;padding:0 28px}
/* Hide the parent's legacy elements */
.ostsee2026 #ad_leaderboard,.ostsee2026 #head-nav,.ostsee2026 #time{display:none!important}
.ostsee2026 .container,.ostsee2026 #wrap{width:auto;max-width:none;padding:0;margin:0}

/* --- NAV --- */
.nk-nav{position:sticky;top:0;z-index:80;background:rgba(250,246,238,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nk-nav__in{display:flex;align-items:center;justify-content:space-between;height:70px;max-width:var(--maxw);margin:0 auto;padding:0 28px}
.nk-logo{font-family:var(--serif);font-weight:800;font-size:24px;color:var(--danube);letter-spacing:-.5px}
.nk-logo b{color:var(--paprika)}
.nk-menu{display:flex;gap:26px;list-style:none;margin:0;padding:0;font-family:var(--label);font-weight:600;font-size:13.5px;letter-spacing:.02em;text-transform:uppercase}
.nk-menu a{color:var(--ink)}.nk-menu a:hover{color:var(--paprika)}
.nk-nav__cta{font-family:var(--label);font-weight:700;font-size:12.5px;text-transform:uppercase;background:var(--paprika);color:#fff!important;padding:10px 17px;border-radius:6px}
.nk-burger{display:none;font-size:26px;background:none;border:0;color:var(--danube);cursor:pointer}

/* --- HERO (home page) --- */
.nk-hero{position:relative;min-height:520px;display:flex;align-items:flex-end;color:#fff;
  background:radial-gradient(120% 90% at 80% 0%,#1d567f 0%,#143d5e 45%,#0d2a42 100%)}
.nk-hero__in{max-width:var(--maxw);margin:0 auto;padding:0 28px 56px;width:100%}
.nk-eyebrow{font-family:var(--label);font-weight:700;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ochre);margin-bottom:14px}
.nk-hero h1{font-family:var(--serif);font-weight:800;font-size:54px;line-height:1.05;max-width:16ch;text-shadow:0 2px 24px rgba(0,0,0,.35);margin:0}
.nk-hero p{font-size:19px;max-width:54ch;margin:18px 0 26px;color:#eef2f6}
.nk-btns{display:flex;gap:13px;flex-wrap:wrap}
.nk-btn{font-family:var(--label);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.03em;padding:13px 25px;border-radius:7px;display:inline-block}
.nk-btn--1{background:var(--paprika);color:#fff!important}.nk-btn--1:hover{background:var(--paprika-d);color:#fff!important}
.nk-btn--2{background:rgba(255,255,255,.12);color:#fff!important;border:1.5px solid rgba(255,255,255,.6)}

/* --- SECTION/HEADINGS --- */
.nk-sec{padding:68px 0}
.nk-head{text-align:center;max-width:62ch;margin:0 auto 40px}
.nk-head .nk-eyebrow{color:var(--paprika)}
.nk-head h2{font-family:var(--serif);font-weight:700;font-size:36px;color:var(--danube);line-height:1.12;margin:0}
.nk-head p{color:var(--gray);margin-top:10px;font-size:18px}

/* --- CARDS --- */
.nk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;max-width:var(--maxw);margin:0 auto;padding:0 28px}
.nk-card{background:var(--white);border-radius:12px;overflow:hidden;box-shadow:0 4px 18px rgba(12,40,64,.08);transition:transform .25s,box-shadow .25s}
.nk-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.nk-card__img{height:165px;background-size:cover;background-position:center;position:relative}
.nk-tag{position:absolute;left:12px;top:12px;font-family:var(--label);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:var(--danube);color:#fff;padding:5px 11px;border-radius:5px}
.nk-card__body{padding:17px 17px 21px}
.nk-card__body h3{font-family:var(--serif);font-weight:700;font-size:20px;color:var(--danube);margin:0 0 6px}
.nk-card__body p{font-size:14.5px;color:var(--gray);line-height:1.55;margin:0}
.nk-more{font-family:var(--label);font-weight:700;font-size:12px;text-transform:uppercase;color:var(--paprika)!important;margin-top:12px;display:inline-block}

/* --- USP-BAND --- */
.nk-band{background:var(--paprika);color:#fff;margin:8px 0}
.nk-band__in{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:var(--maxw);margin:0 auto;padding:44px 28px}
.nk-usp{display:flex;gap:15px;align-items:flex-start}
.nk-usp .ic{display:flex;align-items:center;line-height:1}
/* Single-colour inline SVG icons instead of emoji (fill=currentColor -> inherits the colour) */
.nk-icon{display:inline-block;vertical-align:middle;fill:currentColor;flex:0 0 auto}
.nk-usp .ic .nk-icon{width:30px;height:30px;color:#fff}
.nk-usp h4{font-family:var(--serif);font-size:20px;margin:0 0 4px}
.nk-usp p{font-size:14.5px;color:#ffe6e0;margin:0}

/* --- FEATURE --- */
.nk-feat{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.nk-feat__box{background:var(--danube);color:#fff;border-radius:16px;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr;align-items:center}
.nk-feat__txt{padding:48px 44px}
.nk-feat__txt .nk-eyebrow{color:var(--ochre)}
.nk-feat__txt h2{font-family:var(--serif);font-size:32px;line-height:1.15;margin:0 0 12px}
.nk-feat__txt p{color:#d7e0e8;font-size:16.5px;margin:0 0 20px}
.nk-feat__pic{min-height:320px;background:linear-gradient(135deg,#2b7a9e 0%,#143d5e 100%)}

/* =======================================================================
   LAYOUT B - article/subpage (page.php / single.php)
   ======================================================================= */
.nk-bcband{background:var(--white);border-bottom:1px solid var(--line)}
.nk-bcband__in{max-width:var(--maxw);margin:0 auto;padding:13px 28px;font-family:var(--label);font-size:12.5px;letter-spacing:.02em;color:var(--gray)}
.nk-bcband__in a{color:var(--danube)}.nk-bcband__in a:hover{color:var(--paprika)}
.nk-article-head{max-width:var(--maxw);margin:0 auto;padding:34px 28px 0}
.nk-article-head .nk-eyebrow{color:var(--paprika)}
.nk-article-head h1{font-family:var(--serif);font-weight:800;font-size:42px;line-height:1.1;color:var(--danube);margin:6px 0 8px;max-width:24ch}
.nk-byline{font-family:var(--label);font-size:13px;color:var(--gray)}
.nk-shell{max-width:var(--maxw);margin:0 auto;padding:28px 28px 64px;display:grid;grid-template-columns:1fr 320px;gap:46px;align-items:start}
.nk-article{font-size:18px;line-height:1.75;max-width:760px}
.nk-article h2{font-family:var(--serif);font-weight:700;font-size:28px;color:var(--danube);margin:34px 0 12px;line-height:1.2}
.nk-article h3{font-family:var(--serif);font-weight:700;font-size:22px;color:var(--danube);margin:26px 0 10px}
.nk-article p{margin:0 0 16px}
.nk-article a{color:var(--paprika);text-decoration:underline;text-decoration-color:rgba(196,50,31,.35);text-underline-offset:2px}
.nk-article ul,.nk-article ol{margin:0 0 16px 22px}
.nk-article li{margin-bottom:7px}
.nk-article img{border-radius:10px;margin:14px 0}
.nk-article blockquote{border-left:4px solid var(--ochre);background:#fff;margin:20px 0;padding:14px 22px;font-family:var(--serif);font-size:21px;color:var(--danube);border-radius:0 8px 8px 0}
/* Sidebar */
.nk-side{position:sticky;top:90px;display:flex;flex-direction:column;gap:22px}
.nk-box{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px 22px}
.nk-box h4{font-family:var(--label);font-weight:700;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--paprika);margin:0 0 12px;padding-bottom:9px;border-bottom:1px solid var(--line)}
.nk-box dl{margin:0;font-size:14.5px}
.nk-box dt{font-family:var(--label);font-weight:700;color:var(--gray);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;margin-top:10px}
.nk-box dd{margin:0 0 2px;color:var(--ink)}
.nk-box ul{margin:0;padding:0;list-style:none;font-size:14.5px}
.nk-box li{margin-bottom:8px}
.nk-box li a{color:var(--danube)}.nk-box li a:hover{color:var(--paprika)}

/* --- FOOTER --- */
.ostsee2026 footer{background:var(--danube-deep);color:#d3dde6;padding:52px 0 26px;font-size:15px;margin-top:0}
.nk-fgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:34px;max-width:var(--maxw);margin:0 auto;padding:0 28px 32px;border-bottom:1px solid rgba(255,255,255,.1)}
.ostsee2026 footer .nk-logo{color:#fff;display:block;margin-bottom:10px}
.nk-fcol h5{font-family:var(--label);font-weight:700;text-transform:uppercase;font-size:12.5px;letter-spacing:.08em;color:#fff;margin:0 0 12px}
.nk-fcol ul{list-style:none;margin:0;padding:0}
.nk-fcol li{margin-bottom:8px}
.nk-fcol a{color:#e6edf3}.nk-fcol a:hover{color:#f0c761}
.nk-copy{max-width:var(--maxw);margin:0 auto;padding:20px 28px 0;font-size:13px;color:#a6b6c4}

/* --- RESPONSIVE --- */
@media(max-width:1000px){.nk-shell{grid-template-columns:1fr}.nk-side{position:static;flex-direction:row;flex-wrap:wrap}.nk-box{flex:1 1 260px}}
@media(max-width:900px){.nk-grid{grid-template-columns:1fr 1fr}.nk-feat__box{grid-template-columns:1fr}.nk-feat__pic{min-height:230px}.nk-band__in{grid-template-columns:1fr}.nk-hero h1{font-size:38px}.nk-fgrid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.nk-menu{display:none}.nk-burger{display:block}.nk-menu.open{display:flex;position:absolute;top:70px;left:0;right:0;flex-direction:column;background:var(--cream);padding:18px 28px;gap:16px;border-bottom:1px solid var(--line)}.nk-article-head h1{font-size:30px}}

/* =======================================================================
   DOC BUILDING BLOCKS (SEO runbook) - answer capsule, question box, callout, FAQ
   ======================================================================= */
.nk-article .nk-capsule{background:#fff;border-left:4px solid var(--paprika);border-radius:0 10px 10px 0;
  padding:16px 20px;margin:0 0 24px;font-size:18.5px;line-height:1.6;color:var(--danube);box-shadow:0 4px 16px rgba(12,40,64,.07)}
.nk-article .nk-questionbox{background:var(--cream);border:1px solid var(--line);border-radius:10px;padding:16px 20px;margin:0 0 26px}
.nk-article .nk-questionbox strong{display:block;font-family:var(--label);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gray);margin-bottom:8px}
.nk-article .nk-questionbox a{display:inline-block;margin:0 14px 6px 0;color:var(--danube);text-decoration:none;border-bottom:1px solid rgba(18,60,94,.25)}
.nk-article .nk-questionbox a:hover{color:var(--paprika);border-color:var(--paprika)}
.nk-article .nk-callout{background:#fff7e9;border:1px solid #ecd9ad;border-radius:10px;padding:15px 20px;margin:22px 0}
.nk-article .nk-callout strong:first-child{font-family:var(--label);text-transform:uppercase;letter-spacing:.05em;font-size:12.5px;color:var(--ochre)}
.nk-article .nk-faq{margin:18px 0}
.nk-article .nk-faq details{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:10px;overflow:hidden}
.nk-article .nk-faq summary{cursor:pointer;list-style:none;padding:14px 20px;font-family:var(--serif);font-weight:700;font-size:18px;color:var(--danube);position:relative}
.nk-article .nk-faq summary::-webkit-details-marker{display:none}
.nk-article .nk-faq summary::after{content:"+";position:absolute;right:20px;color:var(--paprika);font-size:22px;line-height:1}
.nk-article .nk-faq details[open] summary::after{content:"–"}
.nk-article .nk-faq details[open] summary{border-bottom:1px solid var(--line)}
.nk-article .nk-faq .nk-faq__a{padding:14px 20px;font-size:16.5px}
.nk-article .nk-faq .nk-faq__a p{margin:0 0 10px}

/* Footer link contrast fix: higher specificity beats body.ostsee2026 a{color:donau} */
body.ostsee2026 footer a,
body.ostsee2026 footer .nk-fcol a{ color:#e3ebf2 }
body.ostsee2026 footer a:hover,
body.ostsee2026 footer .nk-fcol a:hover{ color:#f0c761 }
body.ostsee2026 footer .nk-fcol h5{ color:#ffffff }
body.ostsee2026 footer .nk-copy a{ color:#cdd9e4 }

/* =========================================================================
   Header logo mark + dropdown navigation (all hubs, all subpages)
   ========================================================================= */
.nk-logo{display:inline-flex;align-items:center;gap:10px}
.nk-logo-mark{width:38px;height:38px;display:block;flex:0 0 auto}
.nk-logo-wm{font-family:var(--serif);font-weight:800;font-size:23px;color:var(--danube);letter-spacing:-.5px;line-height:1}
.nk-logo-wm b{color:var(--paprika)}

/* Slightly more compact nav so 8 hubs + CTA fit */
.nk-nav__in .nk-menu{gap:20px;font-size:12.7px}

.nk-menu .nk-has-sub{position:relative}
.nk-menu .nk-has-sub > a{display:inline-flex;align-items:center}
.nk-chev{margin-left:2px;transition:transform .2s;opacity:.65;flex:0 0 auto}
.nk-sub-toggle{display:none;background:none;border:0;cursor:pointer;color:inherit;padding:6px;line-height:0}
/* Desktop: hover/focus dropdown */
.nk-sub{position:absolute;top:100%;left:0;min-width:228px;background:var(--white);border:1px solid var(--line);
  border-radius:10px;box-shadow:0 16px 42px rgba(12,40,64,.20);padding:8px;margin:9px 0 0;list-style:none;
  opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s,transform .18s,visibility .18s;z-index:90}
.nk-sub::before{content:"";position:absolute;top:-11px;left:0;right:0;height:11px}
.nk-has-sub:hover > .nk-sub,.nk-has-sub:focus-within > .nk-sub{opacity:1;visibility:visible;transform:translateY(0)}
.nk-has-sub:hover > a .nk-chev,.nk-has-sub:focus-within > a .nk-chev{transform:rotate(180deg)}
.nk-sub li{margin:0}
.nk-sub a{display:block;padding:8px 14px;border-radius:7px;font-family:var(--label);font-weight:600;font-size:13.5px;
  text-transform:none;letter-spacing:0;color:var(--ink);white-space:nowrap}
.nk-sub a:hover{background:var(--cream);color:var(--paprika)}
.nk-sub-all{border-bottom:1px solid var(--line);margin-bottom:4px;padding-bottom:4px}
.nk-sub-all a{color:var(--danube)}
/* Right-hand hubs: dropdown right-aligned (no viewport overflow) */
.nk-menu .nk-has-sub:nth-last-child(-n+2) > .nk-sub{left:auto;right:0}

@media(max-width:680px){
  .nk-logo-mark{width:32px;height:32px}
  .nk-sub-toggle{display:inline-flex;align-items:center}
  .nk-has-sub{display:flex;flex-wrap:wrap;align-items:center}
  .nk-sub{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;
    border-left:2px solid var(--line);border-radius:0;margin:2px 0 6px 6px;padding:2px 0;display:none;min-width:0;width:100%}
  .nk-has-sub.open > .nk-sub{display:block}
  .nk-has-sub.open > a .nk-chev{transform:rotate(180deg)}
  .nk-sub a{white-space:normal;font-size:14px;padding:7px 10px}
}

/* Mobile/tablet fix (2026-07-10): scroll wide content tables inside their own box instead of blowing up the page horizontally. */
@media(max-width:768px){.ostsee2026 table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}


/* === Search box (Ostsee Maritim). Moved out of ostsee2026_searchbox_css() on 2026-09-01:
   it was a wp_add_inline_style blob shipped in every HTML document, and its classes were
   ung-suchbox - copied from the ungarn theme. Renamed to this site's own ost-searchbox. === */
.ost-searchbox{background:#143d5e;color:#fff;border-radius:14px;padding:20px 22px;margin:0 0 26px;box-shadow:0 10px 30px rgba(20,61,94,.2);border-top:4px solid #c93f2e;box-sizing:border-box;max-width:100%}
.ost-searchbox *{box-sizing:border-box}
.ost-searchbox__hd{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}
.ost-searchbox__t{font-family:"Playfair Display",Georgia,serif;font-weight:800;font-size:21px;line-height:1.15}
.ost-searchbox__s{font-size:13px;color:#cddae4}
.ost-searchbox__row{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr auto;gap:12px;align-items:end}
.ost-searchbox__f{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:600;color:#7fb5cc;text-transform:uppercase;letter-spacing:.03em;min-width:0}
.ost-searchbox__f select{font:inherit;font-size:15px;font-weight:400;text-transform:none;letter-spacing:0;color:#1c2733;background:#fff;border:1px solid #cfd8e0;border-radius:8px;padding:10px 11px;width:100%;min-width:0;cursor:pointer}
.ost-searchbox__f select:focus{outline:2px solid #2b7a9e;border-color:#2b7a9e}
.ost-searchbox__btn{background:#c93f2e;color:#fff;font:inherit;font-weight:700;font-size:15.5px;border:0;border-radius:8px;padding:12px 22px;cursor:pointer;white-space:nowrap;transition:background .15s}
.ost-searchbox__btn:hover{background:#a5301f}
@media(max-width:760px){.ost-searchbox__row{grid-template-columns:1fr 1fr}.ost-searchbox__btn{grid-column:1 / -1}}
@media(max-width:560px){.ost-searchbox__row{grid-template-columns:1fr}}

/* ============================================================
   fm720 offer box (fm720/ost-offers.template.php)
   Moved out of the template inline <style> block. mod_pagespeed
   (the reason for inlining) is gone from the gateways, so this
   belongs in the cached stylesheet.
   ============================================================ */
.ost-offers{background:linear-gradient(180deg,#f6f9fb,#e6edf3);border:1px solid #d7e0e8;border-left:4px solid #2b7a9e;border-radius:14px;padding:18px 20px;margin:30px 0}
.ost-offers-h{display:flex;align-items:center;gap:9px;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:20px;color:#0d2a42;margin:0 0 14px;line-height:1.25}
.ost-offers-h svg{color:#2b7a9e;flex:0 0 auto}
.ost-offers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.ost-offers-grid:has(.ost-offer:only-child){justify-items:center}
.ost-offer{display:flex;flex-direction:column;background:#fff;border:1px solid #dde7ec;border-radius:12px;padding:15px 16px;text-decoration:none;color:#0d2a42;transition:.2s;width:100%}
.ost-offer:only-child{max-width:480px}
.ost-offer:hover{box-shadow:0 8px 22px rgba(43,122,158,.18);transform:translateY(-3px);border-color:#2b7a9e}
.ost-offer-stars{color:#c9992e;font-size:13px;letter-spacing:1px}
.ost-offer-name{font-family:'Source Sans 3',system-ui,-apple-system,Arial,sans-serif;font-weight:700;font-size:16px;margin:3px 0;color:#143d5e}
.ost-offer-meta{font-size:12.5px;color:#62707e}
.ost-offer-price{margin-top:10px;padding-top:10px;border-top:1px solid #e6edf3;font-size:14px;color:#2b7a9e}
.ost-offer-price strong{font-size:19px;color:#143d5e}
.ost-offers-more{display:inline-block;margin-top:14px;color:#c93f2e;font-weight:600;text-decoration:underline;font-size:14px}
@media(max-width:520px){.ost-offer:only-child{max-width:100%}}

/* =========================================================================
   Template utilities (2026-09-02)
   Static style="" attributes lifted out of index/archive/search/404/page/
   index-full/footer. Deliberately at the end of the file so they beat the
   base rules (and, as the inline attributes did before, the responsive
   overrides) on source order at equal specificity - no !important needed.
   ========================================================================= */

/* Listing templates run the shell full width (no sidebar column). */
.nk-shell--wide{grid-template-columns:1fr}

/* Card grid nested inside .nk-shell: no own gutter, fewer columns.
   NOTE: like the inline styles they replace, these also override the
   <=900px .nk-grid rule. Kept as-is to preserve the current rendering. */
.nk-grid--3{padding:0;grid-template-columns:repeat(3,1fr)}
.nk-grid--2{padding:0;grid-template-columns:repeat(2,1fr)}

/* Card headline link (default link colour, stated explicitly so the card
   title does not depend on the global a{} rule). */
.nk-card__body h3 a{color:var(--danube)}

/* Title-only card (404 hub list): no teaser paragraph below the headline. */
.nk-card--compact .nk-card__body h3{margin:0}

/* Wrapper around the_posts_pagination(). */
.nk-pagination{margin-top:26px}

/* Sidebar promo box - inverted (danube) variant of .nk-box. */
.nk-box--promo{background:var(--danube);border-color:var(--danube)}
.nk-box--promo h4{color:var(--ochre);border-color:rgba(255,255,255,.2)}
.nk-box--promo p{color:#dce5ec;font-size:14.5px;margin:0 0 14px}
.nk-btn--block{display:block;text-align:center}

/* Inline search form (search.php empty state, 404.php). */
.nk-searchform{display:flex;gap:10px;margin:18px 0;max-width:520px}
.nk-searchform input[type="search"]{flex:1;min-width:0;padding:12px 14px;border:1px solid #cfd8e0;border-radius:8px;font-size:15px}
.nk-searchform .nk-btn{white-space:nowrap}
.nk-searchform--roomy{margin:22px 0 30px}

/* Footer brand blurb. */
.nk-foot__lead{max-width:34ch;color:#d3dde6}


/* =========================================================================
   Header nav usability (2026-09-03) - readable spacing on desktop, clean
   burger drawer on tablets/laptops. Appended last so it wins on source order;
   only overrides values / adds rules, removes no existing selector.
   Problem it fixes: the 7 top-level hubs + CTA filled the 1180px bar edge to
   edge, so an earlier override crammed them to 12.7px UPPERCASE / gap:20px
   with no link padding, and the horizontal bar stayed on down to 680px, where
   it overflowed the shrinking header. Fix: mixed-case ~14px with real gaps and
   full-height hit areas, and the drawer now takes over below 1180px (where the
   seven hubs never fit comfortably next to logo + CTA).
   ========================================================================= */
.nk-nav__in .nk-menu{gap:21px;font-size:14px;text-transform:none;letter-spacing:0}
.nk-nav__in .nk-menu > li > a{padding:23px 2px;display:inline-flex;align-items:center;line-height:1}

@media(max-width:1180px){
  .nk-menu{display:none}
  .nk-burger{display:block}
  .nk-menu.open{display:flex;position:absolute;top:70px;left:0;right:0;flex-direction:column;
    background:var(--cream);padding:8px 24px 16px;gap:0;border-bottom:1px solid var(--line);
    box-shadow:0 14px 30px rgba(12,40,64,.14);max-height:calc(100vh - 70px);overflow-y:auto}
  .nk-menu.open > li{border-bottom:1px solid var(--line)}
  .nk-menu.open > li:last-child{border-bottom:0}
  .nk-menu.open > li > a,.nk-menu.open .nk-has-sub > a{padding:14px 2px;font-size:16px;width:auto}
  /* per-item submenu toggle is shown in the drawer; the submenu opens inline */
  .nk-sub-toggle{display:inline-flex;align-items:center;margin-left:auto;padding:14px 6px}
  .nk-has-sub{display:flex;flex-wrap:wrap;align-items:center}
  .nk-sub{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;
    border-left:2px solid var(--line);border-radius:0;margin:0 0 8px 8px;padding:2px 0;
    display:none;min-width:0;width:100%}
  .nk-has-sub.open > .nk-sub{display:block}
  .nk-has-sub.open > a .nk-chev{transform:rotate(180deg)}
  .nk-sub a{white-space:normal;font-size:15px;padding:9px 12px}
  .nk-logo-mark{width:32px;height:32px}
}
