/* One set of locale controls serves both desktop and mobile headers. */
#store-locale {position:relative; font-variant:normal;}
#store-locale .locale-panel {display:flex; align-items:center; gap:12px;}
#store-locale .locale-section {position:relative; margin:0;}
#store-locale .locale-section-label {display:none;}
#store-locale .locale-trigger,#store-locale .locale-option {display:flex; align-items:center; gap:9px; border:0; padding:8px 12px; color:#46403b; background:transparent; font:inherit; font-variant:normal; text-decoration:none; text-shadow:none; cursor:pointer; white-space:nowrap; box-shadow:none;}
#store-locale .locale-trigger {border-radius:22px; min-height:30px; padding-top:4px; padding-bottom:4px;}
#store-locale .locale-currency .locale-trigger,#store-locale .locale-trigger:hover,#store-locale .locale-section.is-open>.locale-trigger {background:#e4e1dd;}
#store-locale .locale-coin {display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; flex:0 0 22px; border-radius:50%; color:white; background:#99968f; font-size:16px; font-weight:700; line-height:1;}
#store-locale .locale-flag {width:22px; height:22px; border-radius:50%; object-fit:cover; flex:0 0 22px;}
#store-locale .locale-chevron {width:7px; height:7px; border-right:1.5px solid; border-bottom:1.5px solid; transform:rotate(45deg); margin:-4px 2px 0 5px;}
#store-locale .locale-options {display:none; position:absolute; top:100%; left:0; min-width:100%; margin:5px 0 0; padding:5px; list-style:none; background:#f7f6f4; border:1px solid #ebe8e3; border-radius:12px; box-shadow:0 5px 18px #0002; z-index:1100;}
#store-locale .locale-section.is-open>.locale-options {display:block;}
#store-locale .locale-options li {display:block; margin:0; padding:0;}
#store-locale .locale-option {width:100%; min-height:42px; border-radius:8px; text-align:left; font-weight:400;}
#store-locale .locale-option:hover,#store-locale .locale-option.is-selected {background:#e5e2dd; font-weight:400;}
#store-locale .locale-check {width:15px; height:15px; border:1px solid #aaa79f; border-radius:50%; margin-left:auto; flex:0 0 15px;}
#store-locale .is-selected .locale-check {background:radial-gradient(circle,#46403b 0 4px,transparent 4.5px);}
#store-locale button:focus-visible,#store-locale a:focus-visible {outline:2px solid #617848; outline-offset:2px;}
@media (max-width:1199px) {
 #top #social-title {display:none!important;}
 #store-locale .locale-panel {gap:2px;}
 #store-locale .locale-trigger {padding:4px 8px; gap:6px;}
}
/* Social links collapse independently on mobile; desktop links keep their layout. */
#social-links .social-mobile-toggle {display:none;}
@media (max-width:991px) {
 #store-locale .locale-panel {display:flex; gap:3px;}
 #store-locale .locale-trigger {display:flex; width:34px; height:32px; padding:5px 6px; justify-content:center; gap:0;}
 #store-locale .locale-trigger>span:not(.locale-coin):not(.locale-language-code) {display:none;}
 #store-locale .locale-options {left:50%; right:auto; min-width:125px; max-width:calc(100vw - 20px); transform:translateX(calc(-50% + var(--locale-menu-shift, 0px)));}
 #store-locale .locale-language .locale-options {min-width:240px;}
 #store-locale .locale-option {min-height:44px;}
 #social-links {position:relative;}
 #social-links .social-mobile-toggle {display:flex; align-items:center; justify-content:center; width:38px; height:36px; padding:7px; border:0; border-radius:50%; background:transparent; color:#46403b; cursor:pointer; margin:3px 0 0 5px;}
 #social-links.is-open .social-mobile-toggle {background:#e4e1dd;}
 #social-links .social-mobile-toggle:focus-visible {outline:2px solid #617848; outline-offset:2px;}
 #social-links>#header-social-options {display:none; position:absolute; left:5px; top:100%; width:230px; padding:7px; margin:5px 0 0; list-style:none; background:#f7f6f4; border:1px solid #ebe8e3; border-radius:12px; box-shadow:0 5px 18px #0002; z-index:1100;}
 #social-links.is-open>#header-social-options {display:flex; align-items:center; justify-content:space-between;}
 #social-links>#header-social-options>li:not(#social-title) {display:block; padding:0; margin:0; visibility:visible!important; animation:none;}
 #social-links>#header-social-options a {display:flex; align-items:center; justify-content:center; width:42px; height:44px; padding:0;}
 #social-links>#header-social-options a:hover {background:#e5e2dd; border-radius:8px;}
}

/* Keep the mobile top row above the logo, including asynchronously loaded icons. */
@media (max-width:991px) {
 #top:not(.scroll)>.container {display:flex; align-items:center; justify-content:space-between; height:40px;}
 #top:not(.scroll)>.container::before,#top:not(.scroll)>.container::after {display:none;}
 #top:not(.scroll) #top-links {padding-top:0;}
 #top:not(.scroll) #top-links>.list-inline {display:flex; align-items:center; margin:0;}
 #top:not(.scroll) #top-links>.list-inline>li {display:flex; align-items:center; height:36px;}
 #top:not(.scroll) .social-mobile-toggle {margin-top:0;}
 #top:not(.scroll) .phone-dropdown {margin-top:0!important;}
 #top:not(.scroll) .phone-dropdown>.btn {display:flex; align-items:center; justify-content:center; height:32px;}
 #top:not(.scroll) .phone-dropdown>.btn>span {line-height:0;}
 #top:not(.scroll) #quick-signup>a,#top:not(.scroll) #quick-signup>span>a,#top:not(.scroll) #small-cart>a {display:inline-flex; align-items:center; justify-content:center; height:32px; top:0!important; margin-bottom:0; padding-top:0;}
 #top:not(.scroll) #quick-signup>a,#top:not(.scroll) #quick-signup>span>a {width:26px;}
 header:not(.scroll) {padding-top:42px;}
 header:not(.scroll) #logo {margin-bottom:3px;}
}

/* Leave room below the taller desktop locale controls. */
@media (min-width:992px) {
 header:not(.scroll) {padding-top:47px;}
 #menu:not(.scroll) {top:207px;}
 #intro,body:not(.common-home) .container.data-color {padding-top:247px;}
}
/* Account links fill their own menu, independently of the compact icon. */
@media (max-width:991px) {
 #top #quick-signup>.dropdown {position:relative; display:block;}
 #top #quick-signup>.dropdown>.dropdown-menu {top:100%; right:0; left:auto; min-width:180px; max-width:calc(100vw - 20px); margin-top:6px; padding:6px 0;}
 #top #quick-signup .dropdown-menu>li>a {display:block; width:auto; height:auto; padding:10px 16px; text-align:left; white-space:normal;}
}

/* Language abbreviations replace flag images on desktop and mobile. */
#store-locale .locale-language-code {display:inline-flex; align-items:center; justify-content:center; width:26px; flex:0 0 26px; font-size:12px; font-weight:600; line-height:22px; font-variant:normal;}
@media (max-width:991px) {
 #store-locale .locale-language .locale-trigger {padding-left:4px; padding-right:4px;}
}
