.sm-site-header { position: fixed; z-index: 1000; top: 16px; left: 16px; right: 16px; max-width: var(--container-max); margin-inline: auto; font-family: var(--font-family-body); color: var(--c-copy); }
.admin-bar .sm-site-header { top: 48px; }
.sm-header-main { display:flex; align-items:center; justify-content:space-between; gap:var(--space-24); height:72px; padding:var(--space-16); background:var(--c-white); border-radius:var(--radius-sm) var(--radius-sm) 0 var(--radius-sm); box-shadow:var(--shadow-blue); }
.sm-header-logo { display:block; flex-shrink:0; width:160.008px; height:38px; }
.sm-header-logo img { display:block; }
.sm-header-desktop { display:flex; align-items:center; gap:var(--space-32); }
.sm-header-nav ul { list-style:none; margin:0; padding:0; }
.sm-header-menu { display:flex; align-items:center; gap:var(--space-24); }
.sm-header-nav a { color:var(--c-copy); text-decoration:none; display:flex; align-items:center; gap:var(--space-8); font-size:var(--font-size-16); font-weight:var(--font-weight-regular); line-height:var(--line-height-sm); }
.sm-header-nav a:hover,.sm-header-nav .current-menu-item>a { text-decoration:underline; text-underline-offset:5px; }
.sm-header-nav--sm_header_actions .sm-header-menu { gap:var(--space-16); }
.sm-header-nav--sm_header_actions a { background:var(--color-brand); padding:10px 12px; border-radius:var(--radius-sm); color:var(--c-white); }
.sm-header-nav .sm-menu-registration>a { background:var(--c-green); }
/* Button-like entries (Kontakt, Rejestracja, secondary pills) keep no underline on hover. */
.sm-header-nav--sm_header_actions a:is(:hover,:focus),.sm-header-secondary a:is(:hover,:focus),.sm-header-nav--sm_header_actions .current-menu-item>a,.sm-header-secondary .current-menu-item>a { text-decoration:none; }
.sm-header-secondary { display:flex; justify-content:flex-end; align-items:flex-start; }
.sm-header-corner { transform:rotate(90deg); }
.sm-header-secondary nav { background:var(--c-white); padding:0 16px 12px; border-radius:0 0 8px 8px; }
.sm-header-secondary ul { gap:var(--space-12); }
.sm-header-secondary a { background:var(--c-bg-navy); padding:8px 16px; border-radius:var(--radius-pill); font-size:var(--font-size-14-4); }
.sm-header-nav li { position:relative; }
.sm-header-nav .sub-menu { display:none; position:absolute; top:100%; left:0; min-width:210px; padding:12px; background:var(--c-white); box-shadow:var(--shadow-blue); border-radius:var(--radius-sm); }
.sm-header-nav .sub-menu a { padding:10px; }
.sm-header-nav li:hover>.sub-menu,.sm-header-nav li:focus-within>.sub-menu { display:block; }
.sm-header-toggle { display:none; }
.sm-header-spacer { height:calc(var(--sm-site-header-height, 114px) + 32px); }
body :is(.sm-location,.sm-doctor,.sm-search,.sm-collection-points) { --sm-header-offset:0px; }
.sm-site-header :is(a,button):focus-visible,.sm-mobile-navigation :is(a,button):focus-visible { outline:3px solid var(--c-blue-light); outline-offset:3px; }
.sm-mobile-navigation:not([open]) { display:none; }
.sm-mobile-navigation[open] { position:fixed; inset:0 0 0 auto; margin:0; border:0; width:min(390px,100%); max-width:100%; height:100dvh; max-height:100%; padding:24px; background:var(--c-white); color:var(--c-copy); font-family:var(--font-family-body); overflow-y:auto; }
.sm-mobile-navigation::backdrop { background:rgb(1 10 34 / 45%); }
.sm-mobile-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; }
.sm-mobile-top h2 { margin:0; font-size:24px; }
.sm-mobile-top button,.sm-header-toggle { border:0; padding:8px 12px; background:var(--c-blue); color:white; border-radius:8px; font-size:24px; cursor:pointer; }
.sm-mobile-navigation [data-sm-menu-close]:is(:hover,:focus),.sm-site-header .sm-header-toggle:is(:hover,:focus) { background:var(--c-blue); color:var(--c-white); }
.sm-mobile-navigation nav { margin-bottom:24px; }
.sm-mobile-navigation .sm-header-menu { flex-direction:column; align-items:stretch; gap:16px; }
.sm-mobile-navigation .sub-menu { display:block; position:static; box-shadow:none; min-width:0; padding:8px 0 0 16px; }
.sm-mobile-navigation .sm-menu-projects img { flex-shrink:0; }
@media(max-width:1100px) { .sm-header-desktop,.sm-header-secondary { display:none; } .sm-header-toggle { display:block; } .sm-header-main { border-radius:var(--radius-sm); } .sm-header-spacer { height:calc(var(--sm-site-header-height,72px) + 32px); } }
@media(max-width:782px) { .admin-bar .sm-site-header { top:62px; } }
