/* DIGO family header: one framed surface, two navigation levels. */
.site-header:has(.gift-header-shell) {
    background: transparent;
    border-bottom: 0;
    padding-bottom: 16px !important;
}
.gift-header-shell {
    --header-surface: #f5f9fc;
    --header-soft: #ffffff45;
    position: relative;
    margin-top: 16px;
    background: var(--header-surface);
    border: 1px solid #ffffffb3;
    border-radius: 24px;
    box-shadow: 0 12px 36px #031b3226, inset 0 1px 0 #ffffffed, inset 0 -1px 0 #ffffff66;
}
.gift-header-shell .gift-head {
    display: flex;
    flex-wrap: nowrap;
    gap: 24px;
    padding: 20px 24px;
}
.gift-header-shell .gift-logo { margin-right: 12px; }
.gift-header-shell .gift-logo img { width: 154px; height: auto; }
.gift-header-shell .gift-search {
    order: initial;
    flex: 1;
    min-width: 180px;
    max-width: 560px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #aebed1;
    box-shadow: 0 2px 6px #163c6410;
    border-radius: 10px;
}
.gift-header-shell .gift-search:hover { border-color: #7e96b3; }
.gift-header-shell .gift-search:focus-within { border-color: var(--gift-blue); box-shadow: 0 0 0 3px color-mix(in srgb, var(--gift-blue) 16%, transparent); }
/* The whole search field carries the keyboard focus ring. */
.gift-header-shell .gift-search input:focus-visible { outline: none; }
.gift-header-shell .gift-search button {
    background: transparent;
    color: var(--gift-blue);
    border-left: 1px solid var(--gift-line);
    border-radius: 0;
    min-height: 36px;
    padding: 7px 12px;
}
.gift-header-shell .gift-search button svg { display: none; }
.gift-header-shell .gift-search button:hover { background: #eaf2fd; }
.gift-header-actions { display: flex; align-items: center; gap: 8px; }
.gift-header-shell .gift-head-icon {
    flex-direction: row;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px 13px;
    border: 1px solid var(--gift-line);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 600;
}
.gift-header-shell .gift-head-icon:hover { background: var(--header-soft); border-color: #b8cae0; }
.gift-header-shell .gift-head-icon svg { width: 19px; height: 19px; }
.gift-header-shell .gift-head-icon b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    min-height: 20px;
    margin-left: 3px;
    font-size: 11px;
}
.gift-header-shell .gift-quote-link {
    display: inline-flex;
    flex-shrink: 0;
    gap: 5px;
    background: linear-gradient(110deg, var(--gift-blue), #087d99);
    color: white;
    border-radius: 10px;
    font-size: 13px;
    box-shadow: inset 0 1px 0 #ffffff26;
}
.gift-header-shell .gift-quote-link:hover { background: linear-gradient(110deg, #034089, #066b83); }
.gift-quote-link svg { width: 18px; height: 18px; margin-left: 8px; }
.gift-header-shell .gift-nav {
    gap: 20px;
    flex-wrap: nowrap;
    padding: 12px 24px;
    border-top: 1px solid var(--gift-line);
}
.gift-header-shell .gift-mega summary {
    align-items: center;
    min-height: 44px;
    padding: 10px 14px;
    background: var(--header-soft);
    border: 1px solid var(--gift-line);
    color: var(--gift-ink);
    border-radius: 9px;
    font-size: 13px;
}
.gift-header-shell .gift-mega[open] summary,
.gift-header-shell .gift-mega summary:hover { background: #eaf2fd; color: var(--gift-blue); border-color: #b8cae0; }
.gift-nav-shortcuts {
    display: flex;
    align-items: center;
    flex: 1;
    gap: 24px;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: #c7d3e0 transparent;
}
.gift-nav-shortcuts:focus-visible { outline-offset: -3px; }
.gift-header-shell .gift-promotions { gap: 18px; margin: 0; width: auto; }
.gift-header-shell .gift-nav .gift-offers { font-size: 13px; gap: 6px; min-height: 44px; }
.gift-header-shell .gift-offers svg { width: 20px; height: 20px; }
.gift-header-shell .gift-nav .gift-limited {
    font-size: 12px;
    padding: 7px 10px;
    border: 1px solid #f2d4c9;
    border-radius: 7px;
}
.gift-header-shell .gift-nav-links {
    flex: 0 0 auto;
    gap: 20px;
    padding: 0;
    overflow: visible;
}
.gift-header-shell .gift-nav-links a { display: flex; align-items: center; min-height: 44px; font-size: 13px; }
.gift-header-shell .gift-nav-links a[aria-current="page"] { color: var(--gift-blue); font-weight: 700; }
.gift-header-shell .gift-eco-link { display: block; margin-left: auto; font-size: 12px; }
.gift-header-shell .gift-catalog-menu { top: calc(100% + 8px); left: 0; right: 0; border-radius: 14px; }
@media (max-width: 1200px) {
    .gift-header-shell .gift-head { gap: 14px; padding: 18px; }
    .gift-header-shell .gift-logo { margin-right: 0; }
    .gift-header-shell .gift-logo img { width: 140px; }
    .gift-header-shell .gift-head-icon { padding: 10px; }
    .gift-header-shell .gift-quote-link { padding-inline: 13px; }
    .gift-quote-full { display: none; }
    .gift-header-shell .gift-quote-link { text-transform: capitalize; }
    .gift-header-shell .gift-nav { padding-inline: 18px; gap: 16px; }
}
@media (max-width: 900px) {
    .gift-header-shell .gift-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px 12px; }
    .gift-header-shell .gift-logo { grid-column: 1; grid-row: 1; }
    .gift-header-actions { grid-column: 2; grid-row: 1; justify-content: flex-end; }
    .gift-header-shell .gift-search { grid-row: 2; grid-column: 1; width: 100%; max-width: none; min-width: 0; }
    .gift-header-shell .gift-quote-link { grid-row: 2; grid-column: 2; }
    .gift-header-shell .gift-nav-shortcuts { gap: 18px; }
    .gift-header-shell .gift-nav-links { display: none; }
    .gift-header-shell .gift-eco-link { margin-left: auto; }
}
@media (max-width: 600px) {
    .gift-header-shell { width: calc(100% - 24px); margin-top: 12px; border-radius: 22px; }
    .gift-header-shell .gift-head { padding: 14px 12px; gap: 14px 10px; }
    .gift-header-shell .gift-logo img { width: 124px; }
    .gift-header-shell .gift-head-icon { min-width: 44px; padding: 8px; font-size: 0; gap: 0; }
    .gift-header-shell .gift-head-icon b { font-size: 11px; margin-left: 5px; }
    .gift-header-shell .gift-search { gap: 7px; padding-left: 10px; }
    .gift-header-shell .gift-search input { font-size: 14px; }
    .gift-header-shell .gift-search button { padding-inline: 8px; font-size: 12px; }
    .gift-header-shell .gift-search > svg,
    .gift-header-shell .gift-search button span { display: none; }
    .gift-header-shell .gift-search button svg { display: block; width: 18px; height: 18px; color: var(--gift-blue); }
    .gift-header-shell .gift-quote-link { padding: 12px 10px; font-size: 12px; gap: 0; }
    .gift-header-shell .gift-quote-link svg { width: 15px; margin-left: 5px; }
    .gift-header-shell .gift-nav { padding: 10px 12px; gap: 12px; }
    .gift-header-shell .gift-mega summary { padding: 10px; font-size: 12px; gap: 7px; }
    .gift-header-shell .gift-mega summary > .gift-menu-chevron { display: none; }
    .gift-header-shell .gift-nav .gift-offers { font-size: 12px; }
    .gift-header-shell .gift-promotions { gap: 14px; }
    .gift-header-shell .gift-nav-shortcuts { gap: 14px; }
    .gift-header-shell .gift-search-results { width: calc(100vw - 50px); right: auto; }
    .gift-header-shell .gift-catalog-menu { max-height: 65dvh; grid-template-columns: 135px minmax(0, 1fr); }
    .gift-header-shell .gift-menu-content { padding: 18px 12px; }
}

/* Translucent glass with an opaque fallback for older browsers. */
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .gift-header-shell {
        background: linear-gradient(135deg, #ffffffbd, #eff8ff8f 55%, #ffffffa8);
        -webkit-backdrop-filter: blur(26px) saturate(155%);
        backdrop-filter: blur(26px) saturate(155%);
    }
}
.gift-header-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    box-shadow: inset 1px 1px 0 #ffffffb3, inset -1px -1px 0 #ffffff59;
}
.gift-header-shell .gift-head-icon,
.gift-header-shell .gift-mega summary {
    background: #ffffff4d;
    border-color: #ffffff80;
    box-shadow: inset 0 1px 0 #ffffff66;
}
.gift-header-shell .gift-nav { border-top-color: #ffffff59; }
.gift-header-shell .gift-head-icon:hover,
.gift-header-shell .gift-mega summary:hover { background: #ffffffa3; }
.gift-header-shell .gift-search input { color: var(--gift-ink); }
.gift-header-shell .gift-search input::placeholder { color: #3c5265; opacity: 1; }
.gift-header-shell .gift-nav .gift-offers { color: #a83119; }

/* Only the homepage places the header over the hero. Notices stay in flow. */
body:has(.gift-home) .site-header:has(.gift-header-shell) { padding-bottom: 0 !important; }
body:has(.gift-home) .gift-header-shell {
    position: absolute;
    top: calc(100% + 16px);
    left: 0;
    right: 0;
    margin-top: 0;
}
.gift-home { --gift-header-clearance: 192px; }
.gift-home .gift-hero-full .gift-hero {
    padding-top: var(--gift-header-clearance);
    min-height: calc(560px + var(--gift-header-clearance));
    height: calc(clamp(560px, 36vw, 660px) + var(--gift-header-clearance));
}
@media (max-width: 900px) {
    .gift-home { --gift-header-clearance: 240px; }
}
@media (max-width: 600px) {
    body:has(.gift-home) .gift-header-shell { top: calc(100% + 12px); }
    .gift-home .gift-hero-full .gift-hero { padding-top: 0; height: auto; min-height: 0; }
    .gift-home .gift-hero-full .gift-hero-art {
        aspect-ratio: auto;
        height: calc(75vw + var(--gift-header-clearance));
    }
    .gift-home .gift-hero-full .gift-hero-art img { object-position: center bottom; }
}
@media (prefers-reduced-transparency: reduce) {
    .gift-header-shell { background: #f5f9fc; -webkit-backdrop-filter: none; backdrop-filter: none; }
}
@media (prefers-contrast: more) {
    .gift-header-shell { background: #fff; border-color: var(--gift-ink); }
}

/* Keep shopping actions visible; the second row is recalled with Menu. */
.gift-compact-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: none;
    padding: 0;
    color: var(--gift-ink);
    background: #ffffff66;
    border: 1px solid #ffffff99;
    border-radius: 10px;
}
.gift-compact-toggle svg { width: 20px; height: 20px; }
.gift-compact-toggle:hover, .gift-compact-toggle[aria-expanded="true"] { background: #eaf2fd; color: var(--gift-blue); }
body .site-header .gift-header-shell.is-compact {
    position: fixed;
    top: 8px;
    left: 0;
    right: 0;
    margin-top: 0;
    border-radius: 18px;
    box-shadow: 0 8px 28px #031b3226, inset 0 1px 0 #ffffffed;
}
.gift-header-shell.is-compact .gift-head { padding: 10px 16px; gap: 16px; }
.gift-header-shell.is-compact .gift-logo img { width: 126px; }
.gift-header-shell.is-compact .gift-compact-toggle { display: inline-flex; }
.gift-header-shell.is-compact:not(.is-nav-open) .gift-nav { display: none; }
.gift-header-shell.is-compact .gift-catalog-menu { max-height: calc(100dvh - 200px); }
html:has(.gift-header-shell) { scroll-padding-top: 170px; }
@media (max-width: 900px) {
    .gift-header-shell.is-compact .gift-head { gap: 8px 12px; }
    .gift-header-shell.is-compact .gift-catalog-menu { max-height: calc(100dvh - 265px); }
}
@media (max-width: 600px) {
    .gift-header-shell.is-compact .gift-head { padding: 8px 10px; grid-template-columns: minmax(0, 1fr) 112px; gap: 8px; }
    .gift-header-shell.is-compact .gift-logo img { width: 100px; }
    .gift-header-shell.is-compact .gift-header-actions { grid-column: 1 / -1; justify-self: end; gap: 5px; }
    .gift-header-shell.is-compact .gift-head-icon { padding-inline: 6px; }
    .gift-header-shell.is-compact .gift-quote-link { padding-inline: 8px; }
}
