/* Shared compact navigation, reused from the approved Phase 2 implementation. */
.p2-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px clamp(24px,3vw,58px);border-bottom:1px solid #464643}.p2-header .brand{width:150px}.p2-header-actions{display:flex;gap:28px;align-items:center}.p2-phone{font-size:14px}body .p2-header .button{min-height:46px;padding:14px 20px;line-height:1.4;text-align:center;justify-content:center}.p2-menu{position:relative;font-size:13px}.p2-menu summary{cursor:pointer;padding:12px 0;list-style:none;text-transform:uppercase;letter-spacing:.08em}.p2-menu summary:after{content:' +';font-size:18px}.p2-menu[open] summary:after{content:' −'}.p2-menu nav{position:absolute;z-index:20;right:0;top:100%;background:#333338;border:1px solid #464643;padding:14px;min-width:230px;box-shadow:0 16px 25px #0003;display:grid}.p2-menu nav a{padding:10px 14px}.p2-header a:focus-visible,.p2-header summary:focus-visible{outline:3px solid currentColor;outline-offset:5px}.p2-header a:hover,.p2-menu summary:hover{color:var(--yellow)}.p2-header .button:hover{color:var(--charcoal)}
/* Phase 2 header: explicit intrinsic sizing, compact navigation and mobile spacing. */
.p2-header{position:relative;z-index:30;isolation:isolate;flex-wrap:nowrap;min-width:0;min-height:84px}
.p2-header .brand{display:block;flex:0 0 150px;width:150px;max-width:150px;line-height:0}
.p2-header .brand img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:278/87;object-fit:contain}
.p2-header-actions{min-width:0;flex:0 0 auto;margin-left:auto}
.p2-header .p2-phone,.p2-header .button{white-space:nowrap}
.p2-menu{flex:0 0 auto;font-family:var(--font-body)}
.p2-menu summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:64px;padding:10px 0;line-height:24px;white-space:nowrap}
.p2-menu summary::-webkit-details-marker{display:none}
.p2-menu summary::marker{content:''}
.p2-menu nav{width:300px;min-width:0;max-width:calc(100vw - 44px);max-height:calc(100svh - 110px);overflow-y:auto;overscroll-behavior:contain}
.p2-menu nav a{display:flex;align-items:center;min-height:44px;line-height:1.4;padding:10px 12px;overflow-wrap:break-word}
.p2-menu-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--yellow);padding:8px 12px;margin:0}
.p2-menu-secondary{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:8px;padding-top:8px}
.p2-menu nav .p2-menu-phone{display:none}

@media(max-width:1000px){.p2-header-actions{gap:16px}.p2-header-actions>.p2-phone{display:none}.p2-menu nav .p2-menu-phone{display:flex;border-top:1px solid var(--line);margin-top:8px}}
@media(max-width:700px){.p2-header{padding:18px 22px;gap:12px;min-height:82px}.p2-header .brand{flex-basis:146px;width:146px;max-width:146px}.p2-header-actions>.button{display:none}.p2-menu nav{top:calc(100% + 12px)}}

body .p2-header .button{font-family:var(--font-body);font-size:11px;min-height:42px;padding:12px 16px}
.p2-header a:hover,.p2-header summary:hover,.p2-header nav a:focus-visible{color:var(--yellow)}
.p2-header .button:hover{color:var(--charcoal)}
@media(max-width:700px){body .p2-header-actions>.button{display:none}}
