@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap");

/* Shared by the React layout and generated Stitch header; scope every rule. */
.unified-header { position:fixed; inset:0 0 auto; z-index:70; padding-top:env(safe-area-inset-top,0px); background:rgba(255,255,255,.95); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-bottom:1px solid rgba(0,0,0,.06); color:#1d1d1f; font:500 13px/1.5 -apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",system-ui,sans-serif; text-align:left; }
.unified-header *, .unified-header *::before, .unified-header *::after { box-sizing:border-box; }
.unified-header a { color:inherit; text-decoration:none; }
.unified-header button { font:inherit; color:inherit; cursor:pointer; border:0; padding:0; background:transparent; }
.unified-header :is(a,button):focus-visible { outline:2px solid #0071e3; outline-offset:3px; }
.unified-header [hidden] { display:none !important; }
.unified-bar { height:64px; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; padding:0 max(32px,env(safe-area-inset-right)) 0 max(32px,env(safe-area-inset-left)); gap:24px; }
.unified-brand { display:inline-flex; align-items:center; gap:8px; justify-self:start; white-space:nowrap; }
.unified-mark { display:inline-block; width:24px; height:24px; object-fit:contain; }
.unified-wordmark { font-size:20px; font-weight:700; letter-spacing:-.5px; }
.unified-wordmark span { color:#86868b; }
.unified-desktop { display:flex; align-items:center; gap:24px; white-space:nowrap; }
.unified-direct,.unified-parent { min-height:44px; display:flex; align-items:center; }
.unified-parent > a,.unified-header .unified-parent-button { display:flex; align-items:center; min-height:44px; }
.unified-header .unified-expand { display:inline-flex; align-items:center; justify-content:center; width:22px; height:36px; margin-left:2px; border-radius:4px; }
.unified-expand svg { height:14px; width:14px; }
.unified-header :is(nav a,nav button):hover { color:#6e6e73; }
.unified-header a[aria-current] { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:5px; }
/* Gold line: the open menu, else the section you are in. */
.unified-group[data-active] > .unified-parent,
.unified-group:has(> .unified-parent [aria-expanded="true"]) > .unified-parent { box-shadow:inset 0 -1px #86868b; }
.unified-header nav:has(.unified-parent [aria-expanded="true"]) .unified-group[data-active]:not(:has(> .unified-parent [aria-expanded="true"])) > .unified-parent { box-shadow:none; }
.unified-group { position:relative; }
.unified-dropdown { position:absolute; top:100%; left:-12px; display:grid; min-width:184px; padding:8px; background:#fff; border:1px solid #d2d2d7; border-radius:12px; }
.unified-dropdown a { display:block; padding:10px 12px; border-radius:6px; }
.unified-dropdown a:hover { background:#f5f5f7; }
.unified-actions { display:flex; align-items:center; justify-self:end; gap:10px; white-space:nowrap; }
.unified-header .unified-icon { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:6px; flex-shrink:0; }
.unified-icon:hover { background:rgba(0,0,0,.04); }
.unified-icon svg { width:20px; height:20px; }
.unified-header .unified-cta { display:inline-flex; align-items:center; justify-content:center; height:38px; padding:0 18px; border-radius:999px; background:#1d1d1f; color:#fff; font-size:13px; font-weight:600; transition:background .15s; }
.unified-header .unified-cta:hover { background:#303032; }
.unified-account-slot { display:flex; align-items:center; }
.unified-account-slot:has([data-account-control]) > .unified-account-fallback { display:none; }
.unified-header .unified-menu-toggle { display:none; }
.unified-mobile { padding:12px max(24px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left)); overflow-y:auto; overscroll-behavior:contain; }
.unified-mobile > a,.unified-mobile .unified-parent { min-height:48px; font-size:14px; }
.unified-mobile .unified-parent { justify-content:space-between; }
.unified-mobile .unified-parent > a { flex:1; }
.unified-mobile .unified-expand { width:44px; height:44px; }
.unified-mobile .unified-parent-button { width:100%; text-align:left; }
.unified-mobile .unified-dropdown { position:static; padding:0 0 8px 12px; border:0; background:transparent; }
.unified-burger { position:relative; display:block; width:18px; height:12px; }
.unified-burger > span { position:absolute; left:0; width:100%; height:1.7px; border-radius:1px; background:currentColor; transition:transform .32s cubic-bezier(.32,.72,0,1), opacity .2s ease; }
.unified-burger > span:nth-child(1) { top:0; }
.unified-burger > span:nth-child(2) { top:5.15px; }
.unified-burger > span:nth-child(3) { top:10.3px; }
.unified-menu-toggle[aria-expanded="true"] .unified-burger > span:nth-child(1) { transform:translateY(5.15px) rotate(45deg); }
.unified-menu-toggle[aria-expanded="true"] .unified-burger > span:nth-child(2) { opacity:0; transform:scaleX(.4); }
.unified-menu-toggle[aria-expanded="true"] .unified-burger > span:nth-child(3) { transform:translateY(-5.15px) rotate(-45deg); }
/* Phone menu: a bottom sheet. backdrop-filter would trap fixed children inside
   the header, so it is dropped while the sheet is out. */
.unified-header[data-menu] { background:#fff; backdrop-filter:none; -webkit-backdrop-filter:none; }
.unified-bar { position:relative; z-index:2; }
.unified-scrim { position:fixed; inset:calc(64px + env(safe-area-inset-top,0px)) 0 0; z-index:1; background:rgba(29,29,31,.32); opacity:0; transition:opacity .3s ease; }
.unified-header.is-menu-open .unified-scrim { opacity:1; }
.unified-mobile { position:fixed; left:0; right:0; bottom:0; z-index:3; background:#fff; border-top:0; border-radius:20px 20px 0 0; box-shadow:0 -16px 48px -16px rgba(29,29,31,.28); padding-top:8px; max-height:min(80dvh, calc(100dvh - 64px - env(safe-area-inset-top,0px))); transform:translateY(100%); transition:transform .34s cubic-bezier(.32,.72,0,1); }
.unified-header.is-menu-open .unified-mobile { transform:none; }
.unified-sheet-handle { display:block; width:36px; height:5px; margin:0 auto 6px; border-radius:3px; background:#d2d2d7; }
.unified-header-spacer { height:calc(64px + env(safe-area-inset-top,0px)); }
@media(min-width:1200px) { .unified-mobile, .unified-scrim { display:none; } }
@media(min-width:1440px) { .unified-bar { padding-left:max(48px,env(safe-area-inset-left)); padding-right:max(48px,env(safe-area-inset-right)); } }
@media(max-width:1199px) { .unified-bar { grid-template-columns:minmax(0,1fr) auto; gap:12px; } .unified-desktop { display:none; } .unified-header .unified-menu-toggle { display:inline-flex; } }
@media(max-width:480px) { .unified-bar { padding-left:max(12px,env(safe-area-inset-left)); padding-right:max(12px,env(safe-area-inset-right)); gap:6px; } .unified-actions { gap:2px; } .unified-header .unified-cta { padding:0 10px; font-size:12px; } .unified-header .unified-icon { width:32px; } }
@media(prefers-reduced-motion:reduce) { .unified-header .unified-cta, .unified-burger > span, .unified-scrim, .unified-mobile { transition:none; } }
