/* v2-blog.css — GENERATED 2026-06-10. Do not edit by hand.
   Shared rules extracted from the inline <style> blocks of blog/*.html.
   Method: each page's top-level rule blocks were compared byte-for-byte
   (after collapsing whitespace outside strings); a rule is included only if
   it appears exactly once and identically in ALL 51 pages, its selectors
   (incl. those nested in at-rules) do not also occur in any page's remaining
   inline rules (no same-selector cascade splits), and the rules' relative
   order is identical in every page.
   Load order: this file must be linked BEFORE /css/v2-bundle.min.css. */
.skip-link{position:absolute;top:-100%;left:16px;background:var(--navy);color:var(--white);padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;z-index:9999;transition:top .2s;}
.skip-link:focus{top:12px;}
img{max-width:100%;height:auto;}
.nav-burger span{display:block;width:24px;height:2px;background:var(--white);border-radius:2px;transition:all .3s;}
.nav-burger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.nav-burger.open span:nth-child(2){opacity:0;}
.nav-burger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}
.mobile-menu{display:none;position:fixed;inset:68px 0 0;background:rgba(11,36,71,.99);z-index:99;padding:32px 5vw;flex-direction:column;gap:24px;overflow-y:auto;}
.mobile-menu.open{display:flex;}
.mobile-menu a{color:rgba(255,255,255,.85);font-size:18px;font-weight:500;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.mobile-menu a:last-child{border-bottom:none;}
.mobile-menu .nav-cta{color:var(--navy)!important;text-align:center;border-radius:12px;padding:14px 32px;font-size:15px!important;margin-top:8px;}
.nav-parent{position:relative;}
.nav-parent>span{color:rgba(255,255,255,.8);font-size:14px;font-weight:500;cursor:pointer;transition:color .2s;white-space:nowrap;display:flex;align-items:center;gap:4px;}
.nav-parent>span::after{content:'\25BE';font-size:10px;opacity:.5;transition:transform .2s;}
.nav-parent:hover>span{color:var(--gold);}
.nav-parent:hover>span::after{transform:rotate(180deg);}
.nav-drop{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:10px 0;min-width:240px;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:200;}
.nav-parent:hover .nav-drop{opacity:1;visibility:visible;}
.nav-drop a{display:block;padding:9px 20px;font-size:13px;font-weight:500;color:var(--gray-800)!important;transition:background .15s;white-space:nowrap;text-decoration:none;}
.nav-drop a:hover{background:var(--off-white);color:var(--navy)!important;}
.nav-drop .drop-divider{border-top:1px solid var(--gray-100);margin:6px 0;}
.nav-drop .drop-label{padding:4px 20px;font-size:10px;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:.8px;}
.mob-section{border-bottom:1px solid rgba(255,255,255,.06);}
.mob-section-title{display:flex;justify-content:space-between;align-items:center;padding:14px 0;font-size:18px;font-weight:500;color:rgba(255,255,255,.85);cursor:pointer;}
.mob-section-title::after{content:'\25BE';font-size:14px;opacity:.5;transition:transform .3s;}
.mob-section-title.mob-open::after{transform:rotate(180deg);}
.mob-section-links{display:none;padding:4px 0 12px 16px;}
.mob-section-links a{display:block;padding:10px 0;font-size:15px;color:rgba(255,255,255,.65)!important;border-bottom:1px solid rgba(255,255,255,.03);text-decoration:none;}
.mob-section-links a:hover{color:var(--gold)!important;}
.footer-brand{display:flex;flex-direction:column;}
.footer-col{display:flex;flex-direction:column;}
.nav-tp-badge:hover{opacity:1;}
