/* ============================================================================
   v5 integrated header + ultra-wide navigation (Logo-Header-v5 mockup port).
   Self-contained: relies on the --rx-* palette already defined in styles.css.
   Loads AFTER styles.css so the scoped .rx-header/.uw-header rules win over the
   legacy .header/.nav/.menu-toggle base rules without editing them.
   ========================================================================== */

:root{--page-container-max:1400px;--page-gutter:60px}
@media(max-width:970px){:root{--page-gutter:35px}}
@media(max-width:730px){:root{--page-gutter:23px}}
@media(max-width:520px){:root{--page-gutter:18px}}

/* --- header shell ------------------------------------------------------- */
.rx-skip{position:fixed;left:12px;top:-100px;padding:10px;background:#fff;z-index:1000}
.rx-skip:focus{top:5px}
.rx-announcement{background:var(--rx-dark);color:#fff;font-size:11px;letter-spacing:.075em;min-height:33px;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:12px;padding:7px 24px;text-align:center}
.rx-announcement a{color:inherit;text-decoration:none}
.rx-announcement span{color:var(--rx-pop)}
.rx-header{position:sticky;top:0;z-index:45;background:var(--rx-paper);border-bottom:1px solid var(--rx-line)}
.rx-navrow{max-width:var(--page-container-max);margin:auto;padding:0 var(--page-gutter);min-height:96px;display:flex;align-items:center;gap:30px}
.rx-logo{display:flex;gap:10px;align-items:center;text-decoration:none;flex-shrink:0}
.rx-header .nav{display:flex;align-items:center;gap:21px;margin-left:auto;position:static;box-shadow:none;background:transparent;width:auto;padding:0;transform:none;opacity:1;visibility:visible}
.rx-header .nav .mobile-home{display:none}
.rx-navcta{font-size:12px;font-weight:600;white-space:nowrap;text-decoration:none;padding:11px 15px;border:1px solid var(--rx-ink);display:flex;align-items:center;gap:14px;color:var(--rx-ink)}
.rx-navcta:hover{background:var(--rx-dark);color:#fff}

/* launch-kit logo layer: supplied integrated wordmark, no external fonts. */
.rx-logo{min-width:132px!important;display:inline-flex!important;align-items:center!important;line-height:1!important;flex-shrink:0}
.rx-logo .kit-brand-logo{display:block;width:142px;height:70px;object-fit:contain;max-width:none}
.rx-navrow{min-height:96px!important;padding-top:12px!important;padding-bottom:12px!important}
.rx-navcta{font-size:11px!important;max-width:185px;white-space:normal;text-align:center;line-height:1.4}

/* --- ultra-wide navigation --------------------------------------------- */
.uw-header{position:sticky;top:0;z-index:1000;width:100%;max-width:none;overflow:visible;background:var(--rx-paper);isolation:isolate;border-bottom:1px solid var(--rx-line);--uw-pad:clamp(24px,3.3vw,80px)}
.uw-header .rx-navrow{width:100%;max-width:none;margin:0;position:static;padding:0 var(--uw-pad)!important;min-height:96px!important;gap:clamp(14px,1.8vw,42px)!important}
.uw-header .rx-logo{margin-right:0}
.uw-header .nav{position:static;gap:clamp(14px,1.6vw,40px)!important;align-self:stretch;align-items:stretch;margin-left:auto}
.uw-header .nav>details{position:static;display:flex;align-items:stretch}
.uw-header .nav>details>summary{display:flex;align-items:center;padding:0;min-height:96px;border:0;position:relative;font-size:13px!important;line-height:1.3;color:var(--rx-ink);font-weight:600;outline-offset:-5px;cursor:pointer;list-style:none}
.uw-header .nav>details>summary::-webkit-details-marker{display:none}
.uw-header .nav>details>summary::after{content:'';width:6px;height:6px;margin:-3px 1px 0 5px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);opacity:.7;transition:transform .16s ease}
.uw-header .nav>details[open]>summary{color:var(--rx-accent)}
.uw-header .nav>details[open]>summary::before{content:'';position:absolute;height:3px;bottom:0;left:0;right:0;background:var(--rx-accent)}
.uw-header .nav>details[open]>summary::after{transform:rotate(225deg);margin-top:3px}
.uw-header .nav>details>.uw-panel,.uw-header .nav>details:last-of-type>.uw-panel{position:absolute;inset:100% 0 auto 0;width:auto;min-width:0;max-width:none;padding:0;margin:0;border:0;border-top:1px solid var(--rx-line);border-bottom:1px solid var(--rx-line);background:var(--rx-paper);color:var(--rx-ink);box-shadow:0 24px 42px #0d17291a;z-index:2;max-height:calc(100vh - var(--uw-bottom,96px) - 12px);max-height:calc(100dvh - var(--uw-bottom,96px) - 12px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
.uw-header .nav>details:not([open])>.uw-panel{display:none}
.uw-inner{width:100%;max-width:none;margin:0;padding:32px var(--uw-pad) 28px;display:grid;grid-template-columns:minmax(180px,.85fr) minmax(400px,2fr) minmax(230px,.95fr);column-gap:clamp(22px,3vw,76px);align-items:start}
.uw-intro{padding:5px 0;min-width:0}
.uw-eyebrow{display:block;font:10px/1.6 Consolas,monospace;letter-spacing:1.6px;text-transform:uppercase;color:var(--rx-accent)}
.uw-intro h2{font-size:clamp(25px,2.1vw,38px);line-height:1.13;font-weight:500;letter-spacing:-1.3px;margin:17px 0 16px}
.uw-intro p{margin:0;font-size:13px;line-height:1.8;color:var(--rx-muted);max-width:31ch}
.uw-count{display:block;margin-top:25px;padding-top:14px;border-top:1px solid var(--rx-line);color:var(--rx-muted);font:10px/1.6 Consolas,monospace;letter-spacing:.4px}
.uw-linkarea{min-width:0}
.uw-group-title{display:block;padding:4px 12px 12px;border-bottom:1px solid var(--rx-line);font:10px/1.5 Consolas,monospace;letter-spacing:1.2px;text-transform:uppercase;color:var(--rx-muted);margin-bottom:9px}
.uw-group-title:not(:first-child){margin-top:20px}
.uw-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px}
.uw-links>li{min-width:0;padding:0;margin:0}
.uw-header .uw-panel .uw-link{text-decoration:none;display:grid;grid-template-columns:32px minmax(0,1fr) 14px;align-items:start;gap:11px;padding:13px 10px;margin:0;border:1px solid transparent;min-height:83px;color:var(--rx-ink);font-size:14px;line-height:1.45;transition:background .14s ease,border-color .14s ease}
.uw-header .uw-panel .uw-link:hover,.uw-header .uw-panel .uw-link:focus-visible{background:var(--rx-soft);border-color:var(--rx-line);color:var(--rx-ink)}
.uw-header .uw-panel .uw-link::after{content:none!important}
.uw-link[aria-current="page"]{background:var(--rx-soft)}
.uw-icon{display:grid;place-items:center;width:32px;height:32px;background:var(--rx-soft);color:var(--rx-accent)}
.uw-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:square;stroke-linejoin:miter}
.uw-link-copy{min-width:0}
.uw-link-title{display:block;font-size:14px;font-weight:600;line-height:1.4}
.uw-link-desc{display:block;margin-top:5px;color:var(--rx-muted);font-size:11px;line-height:1.6;font-weight:400}
.uw-link-arrow{font-size:15px;color:var(--rx-accent);margin-top:2px}
.uw-feature{background:var(--rx-soft);border:1px solid var(--rx-line);padding:24px;min-width:0;position:relative}
.uw-feature::before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:var(--rx-accent)}
.uw-feature h3{margin:18px 0 12px;font-size:clamp(21px,1.8vw,29px);line-height:1.2;font-weight:500;letter-spacing:-.7px}
.uw-feature p{font-size:12px;line-height:1.8;color:var(--rx-muted);margin:0}
.uw-host{margin-top:25px;padding-top:17px;border-top:1px solid var(--rx-line);display:flex;align-items:center;gap:12px}
.uw-host img{display:block;width:46px;height:54px;object-fit:cover;object-position:center 28%;background:var(--rx-paper)}
.uw-host strong{display:block;font-size:12px;font-weight:600;line-height:1.5}
.uw-host small{display:block;font-size:10px;margin-top:3px;color:var(--rx-muted);line-height:1.5}
.uw-panel-bottom{border-top:1px solid var(--rx-line);padding:12px var(--uw-pad);display:flex;gap:20px;justify-content:space-between;align-items:center;background:var(--rx-soft)}
.uw-panel-bottom p{margin:0;color:var(--rx-muted);font-size:11px;line-height:1.6}
.uw-close{background:transparent;color:var(--rx-ink);border:1px solid var(--rx-line);padding:9px 12px;display:inline-flex;align-items:center;gap:16px;min-height:40px;font-size:11px;white-space:nowrap;cursor:pointer}
.uw-close:hover{background:var(--rx-paper)}
.uw-key{font:10px/1.2 Consolas,monospace;color:var(--rx-muted);padding:2px 4px;border:1px solid var(--rx-line)}
.uw-menu-scrim{position:fixed;top:var(--uw-bottom,96px);bottom:0;left:0;right:0;background:#111b2e42;z-index:990}
.uw-menu-scrim[hidden]{display:none}
.uw-header .menu-toggle{display:none;background:transparent;color:var(--rx-ink);border:1px solid var(--rx-line);width:44px;height:44px;place-items:center;padding:8px;flex-shrink:0;cursor:pointer}
.uw-header .menu-toggle span{pointer-events:none;font-size:18px;line-height:1}
.uw-header .nav .mobile-home{display:none}

/* --- responsive --------------------------------------------------------- */
@media(max-width:1250px){
  .rx-logo .kit-brand-logo{width:125px;height:62px}
  .rx-navcta{max-width:160px}
  .uw-header .nav{gap:12px!important}
  .uw-header .nav>details>summary{font-size:11px!important}
}
@media(max-width:1190px){
  .rx-navrow{padding:0 24px;gap:20px}
}
@media(min-width:1120px){
  .uw-header .nav{display:flex!important;width:auto;max-height:none;overflow:visible;padding:0;border:0;box-shadow:none;background:transparent}
  .uw-header .menu-toggle{display:none!important}
  .uw-header .rx-navcta{display:flex;max-width:none}
}
@media(min-width:1120px) and (max-width:1350px){
  .uw-header{--uw-pad:24px}
  .uw-header .rx-navrow{gap:16px!important}
  .uw-header .nav{gap:14px!important}
  .uw-header .nav>details>summary{font-size:11px!important}
  .uw-header .rx-navcta{font-size:11px;padding:11px}
  .uw-inner{grid-template-columns:minmax(160px,.75fr) minmax(380px,2fr) minmax(205px,.95fr);column-gap:20px}
  .uw-feature{padding:20px}
  .uw-link-title{font-size:13px}
  .uw-links{gap:3px 6px}
}
@media(min-width:1120px) and (max-width:1450px){
  .uw-header .rx-navrow{gap:16px!important}
  .uw-header .nav{gap:17px!important}
  .uw-header .rx-navcta{display:none}
  .uw-header .kit-brand-logo{width:130px}
}
@media(min-width:2000px){
  .uw-inner{column-gap:64px;padding-top:42px;padding-bottom:36px}
  .uw-header .nav>details>summary{font-size:15px!important}
  .uw-link-title{font-size:16px}
  .uw-link-desc,.uw-intro p,.uw-feature p{font-size:14px}
  .uw-header .uw-panel .uw-link{min-height:95px;padding:17px 14px;gap:14px}
}
@media(max-width:1119.98px){
  .uw-header{--uw-pad:24px}
  .uw-header .rx-navrow{min-height:80px!important;gap:14px!important;padding:8px var(--uw-pad)!important}
  .uw-header .rx-logo{margin-right:auto}
  .uw-header .rx-navcta{display:none!important}
  .uw-header .nav{display:none!important;position:fixed;top:var(--uw-bottom,80px);bottom:0;left:0;right:0;width:100%;max-height:none;height:auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;margin:0;padding:12px var(--uw-pad) 28px;background:var(--rx-paper);box-shadow:0 18px 24px #111b2e19;align-self:auto}
  .uw-header .nav.open{display:block!important}
  .uw-header .nav>details{display:block;width:100%}
  .uw-header .nav>details>summary{min-height:55px;padding:15px 0;font-size:15px!important;width:100%;border-bottom:1px solid var(--rx-line);justify-content:space-between}
  .uw-header .nav>details[open]>summary::before{height:2px}
  .uw-header .nav>details>.uw-panel,.uw-header .nav>details:last-of-type>.uw-panel{position:static;width:100%;max-height:none;min-width:0;border:0;box-shadow:none;overflow:visible}
  .uw-inner{display:block;padding:8px 0 12px}
  .uw-intro,.uw-feature,.uw-group-title,.uw-panel-bottom{display:none}
  .uw-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 16px}
  .uw-header .uw-panel .uw-link{min-height:74px;padding:12px 6px}
  .uw-link-title{font-size:14px}
  .uw-link-desc{font-size:12px}
  .uw-header .menu-toggle{display:grid!important}
  .uw-header .nav .mobile-home{display:block;padding:14px 0;font-size:14px;text-decoration:none;border-bottom:1px solid var(--rx-line)}
  body.uw-mobile-open{overflow:hidden}
}
@media(max-width:900px){
  .rx-navrow{min-height:78px!important}
  .rx-logo .kit-brand-logo{width:119px;height:57px}
}
@media(max-width:600px){
  .rx-logo .kit-brand-logo{width:108px;height:53px}
  .rx-navrow{gap:10px!important}
  .rx-navcta{font-size:10px!important;max-width:120px}
  .uw-header{--uw-pad:18px}
  .uw-header .rx-navrow{gap:10px!important}
  .uw-links{grid-template-columns:1fr;gap:0}
  .uw-header .uw-panel .uw-link{min-height:72px;padding:12px 5px}
}
@media(max-width:420px){
  .uw-header .kit-brand-logo{max-width:122px!important}
}

/* --- final alignment layer: nav inner matches the page container -------- */
@media screen{
  .uw-header{--uw-pad:var(--page-gutter)}
  .uw-header .rx-navrow{width:100%;max-width:var(--page-container-max)!important;margin:0 auto!important;padding-left:var(--page-gutter)!important;padding-right:var(--page-gutter)!important;min-height:88px!important;gap:16px!important;position:static}
  .uw-header .rx-logo{display:flex;align-items:center;width:224px;flex:0 1 224px;min-width:0;padding:0!important;margin:0;line-height:0;background:transparent}
  .uw-header .rx-logo .kit-brand-logo{width:100%!important;max-width:none!important;height:auto!important;object-fit:contain;object-position:left center;display:block}
  .uw-header .nav{gap:16px!important;min-width:0;flex-shrink:0}
  .uw-header .nav>details>summary{min-height:88px;font-size:12.5px!important}
  .uw-header .rx-navcta{padding:10px 11px;font-size:11px;min-height:42px;gap:6px;flex-shrink:0}
  .uw-header .uw-inner{max-width:var(--page-container-max);width:100%;margin:0 auto;padding-left:var(--page-gutter);padding-right:var(--page-gutter);grid-template-columns:minmax(160px,.82fr) minmax(360px,1.95fr) minmax(210px,.92fr);gap:26px;padding-top:30px;padding-bottom:26px}
  .uw-header .uw-intro h2{font-size:28px}
  .uw-header .uw-feature{padding:22px}
  .uw-header .uw-feature h3{font-size:24px}
  .uw-header .uw-intro p{font-size:13px}
  .uw-header .uw-feature p{font-size:12px}
  .uw-header .uw-link-title{font-size:14px}
  .uw-header .uw-link-desc{font-size:11px}
  .uw-header .uw-links{gap:6px 14px}
  .uw-header .uw-panel .uw-link{min-height:83px;padding:13px 8px;gap:9px}
  .uw-header .uw-panel-bottom{padding-left:max(var(--page-gutter),calc((100% - var(--page-container-max)) / 2 + var(--page-gutter)));padding-right:max(var(--page-gutter),calc((100% - var(--page-container-max)) / 2 + var(--page-gutter)))}
}
@media screen and (min-width:1120px) and (max-width:1519.98px){
  .uw-header .rx-navcta{display:none!important}
}
@media screen and (min-width:1520px){
  .uw-header .rx-navcta{display:flex}
}
@media screen and (max-width:1119.98px){
  .uw-header .rx-navrow{min-height:80px!important;padding-top:10px!important;padding-bottom:10px!important;gap:12px!important}
  .uw-header .rx-logo{width:250px;flex-basis:250px;margin-right:auto}
  .uw-header .nav{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
  .uw-header .nav>details>summary{min-height:55px;font-size:15px!important}
  .uw-header .uw-inner{display:block;padding:8px 0 12px;max-width:none}
  .uw-header .uw-panel .uw-link{min-height:74px;padding:12px 6px}
  .uw-header .uw-link-desc{font-size:12px}
  .uw-header .rx-navcta{display:none!important}
}
@media screen and (max-width:520px){
  .uw-header .rx-navrow{gap:10px!important}
  .uw-header .rx-logo{width:232px;flex:1 1 232px;max-width:270px}
  .uw-header .menu-toggle{width:42px;height:42px}
}
@media(prefers-reduced-motion:reduce){
  .uw-header *,.uw-header *::after{transition:none!important;animation:none!important}
}
@media print{
  .rx-header,.rx-announcement,.uw-header,.uw-menu-scrim,.rx-skip{display:none!important}
}
