/*
 * Flawery site shell
 * Shared header and footer presentation for the new storefront and legacy public pages.
 * The national homepage keeps its own header composition in home.css.
 */
@font-face {
  font-family:Onest;
  src:url('/assets/storefront/kit/fonts/onest-variable.woff2') format('woff2');
  font-style:normal;
  font-weight:400 700;
  font-display:optional;
}

:root {
  --sf-shell-green:#67b346;
  --sf-shell-ink:#474646;
  --sf-shell-muted:#777676;
  --sf-shell-border:#e5e5e5;
  --sf-shell-footer:#292a2b;
  --sf-shell-width:1170px;
}

/* The legacy 320px body minimum can exceed the available width when the
   browser reserves a scrollbar on a narrow screen. */
body:has(> .sf-shell-header) { min-width:0; }

.sf-h1-city-link { color:#67b346; text-decoration:none; text-underline-offset:.12em; cursor:pointer; }
.sf-h1-city-link:hover { text-decoration:underline; }
.sf-h1-city-link:focus-visible { outline:2px solid #67b346; outline-offset:4px; border-radius:2px; }

/* New root and city documents. */
.sf-page main.fl-page-content[tabindex="-1"]:focus {
  outline:none;
}

.sf-page .site-header {
  --sf-header-top-height:42px;
  --sf-header-main-height:98px;
  --sf-header-logo-width:142px;
  background:#fff;
  border-bottom:1px solid var(--fl-border);
  color:var(--fl-ink);
  font-family:Onest,Arial,sans-serif;
}

.sf-page .site-header .topline {
  min-height:var(--sf-header-top-height);
  border:0;
  background:var(--fl-brand);
  color:#fff;
}

.sf-page .site-header .topline-inner {
  min-height:var(--sf-header-top-height);
  gap:24px;
}

.sf-page .site-header :is(.topnav,.departments) {
  align-items:center;
  gap:30px;
  min-width:0;
  height:var(--sf-header-top-height);
  padding:0;
}

.sf-page .site-header .topline :is(.topnav a,.department,.department.active) {
  position:relative;
  display:inline-flex;
  flex:none;
  align-items:center;
  min-height:var(--sf-header-top-height);
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#fff;
  font-size:14px;
  font-weight:400;
  line-height:1.2;
  white-space:nowrap;
}

.sf-page .site-header :is(.topnav a,.department.active)::after {
  left:0;
  right:0;
  bottom:7px;
  height:1px;
  border-radius:0;
}

.sf-page .site-header :is(.phone,.header-phones) {
  gap:8px;
  color:#fff;
  font-size:14px;
  font-weight:500;
  line-height:1.2;
}

.sf-page .site-header :is(.phone,.header-phones) > .icon {
  width:17px;
  height:17px;
  margin:0;
  color:inherit;
}

.sf-page .site-header :is(.fl-home-header-main,.identity-row) {
  min-height:var(--sf-header-main-height);
}

.sf-page .site-header :is(.fl-home-brand,.identity) {
  display:flex;
  flex:none;
  align-items:center;
  gap:17px;
}

.sf-page .site-header :is(.fl-home-brand img,.logo img) {
  display:block;
  width:var(--sf-header-logo-width);
  height:auto;
}

.sf-page .site-header :is(.fl-home-brand > span,.identity > p) {
  display:block;
  width:auto;
  max-width:none;
  margin:0;
  padding-left:17px;
  border-left:1px solid var(--fl-border);
  color:var(--fl-muted);
  font-size:13px;
  font-weight:400;
  line-height:1.35;
}

.sf-page .site-header .city-inline {
  color:inherit;
  font:inherit;
}

/* City header follows the approved three-row catalog header. */
.sf-page .site-header:not(.fl-home-site-header) {
  --sf-header-top-height:40px;
  --sf-header-main-height:93px;
}

.sf-page .site-header:not(.fl-home-site-header) .container {
  width:calc(100% - 40px);
  max-width:var(--sf-shell-width);
}

.sf-page .site-header:not(.fl-home-site-header) .identity p {
  width:192px;
  max-width:192px;
}

.sf-page .site-header:not(.fl-home-site-header) .sf-search-submit {
  display:none;
}

.sf-page .site-header:not(.fl-home-site-header) .personal-action {
  min-width:66px;
  min-height:70px;
  padding:7px 5px;
  color:var(--sf-shell-ink);
  font-size:14px;
}

.sf-page .site-header:not(.fl-home-site-header) .personal-action .icon {
  width:23px;
  height:23px;
}

.sf-page .site-header:not(.fl-home-site-header) .services-row {
  min-height:65px;
  padding:3px 0 0;
  gap:20px;
}

/* Approved UI Kit 4.31.0 direction: soft-glass material with line actions.
 * These final selectors intentionally outrank the generic page rules. */
.sf-page .sf-shell-header[data-action-design="line"] :is(.service,.address-control) {
  min-height:36px;
  border:1px solid transparent;
  border-radius:0;
  background:transparent;
  color:var(--sf-shell-ink);
  font-size:14px;
  font-weight:500;
  line-height:1.4;
  box-shadow:none;
  transform:none;
  filter:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}

.sf-page .sf-shell-header[data-action-design="line"] :is(.service,.address-control)::before { display:none; }
.sf-page .sf-shell-header[data-action-design="line"] .service-links { gap:0;transform:none; }

.sf-page .sf-shell-header[data-action-design="line"] .service {
  position:relative;
  min-width:0;
  padding:0 17px;
  text-decoration:underline;
  text-decoration-color:transparent;
  text-underline-offset:5px;
}

.sf-page .sf-shell-header[data-action-design="line"] .service:first-child { padding-left:0; }
.sf-page .sf-shell-header[data-action-design="line"] .service + .service::after {
  content:'';
  position:absolute;
  top:10px;
  bottom:10px;
  left:-1px;
  width:1px;
  background:#e0e0e0;
}

.sf-page .sf-shell-header[data-action-design="line"] .service:hover {
  border-color:transparent;
  background:transparent;
  text-decoration-color:var(--sf-shell-green);
}

.sf-page .sf-shell-header[data-action-design="line"] .service > .icon {
  width:19px;
  height:19px;
  color:var(--sf-shell-green);
}

.sf-page .sf-shell-header[data-action-design="line"] .address-control {
  width:auto;
  max-width:310px;
  padding:0 12px;
  border-radius:9px;
  text-decoration:underline;
  text-decoration-color:#d5d5d5;
  text-underline-offset:5px;
}

.sf-page .sf-shell-header[data-action-design="line"] .address-control:hover {
  border-color:transparent;
  background:transparent;
  text-decoration-color:var(--sf-shell-green);
}

.sf-page .sf-shell-header[data-action-design="line"] .address-control > .icon:last-child {
  display:block;
  width:14px;
  height:14px;
  margin-left:6px;
  color:#8d918b;
}

.sf-page .sf-shell-header .pickup-control[aria-pressed="true"] .switch-track {
  background:var(--sf-shell-green);
}

.sf-page .sf-shell-header .pickup-control[aria-pressed="true"] .switch-track > span {
  transform:translateX(12px);
}

@media (min-width:1121px) {
  .sf-page .site-header:not(.fl-home-site-header) .identity-row {
    display:grid;
    grid-template-columns:344px minmax(0,460px) minmax(0,1fr);
    gap:20px;
    padding-top:4px;
  }

  .sf-page .site-header:not(.fl-home-site-header) .logo img { width:135px; }

}

/* The same shell surface is used by every footer. */
.site-footer {
  background:var(--sf-shell-footer);
  color:#edeeec;
  font-family:Onest,Arial,sans-serif;
}

.site-footer .footer-shell {
  max-width:var(--sf-shell-width);
}

/* Legacy public pages: retain the existing controls and apply the shared system. */
#header_menu,
#header_logo,
#header_location,
#footer {
  font-family:Onest,Arial,sans-serif;
}

#header_menu {
  min-height:40px;
  padding:0;
  background:var(--sf-shell-green);
}

#header_menu .content_menu,
#header_logo > .content,
#header_location > .content,
#footer > .content {
  box-sizing:border-box;
  width:calc(100% - 40px);
  max-width:var(--sf-shell-width);
  margin-right:auto;
  margin-left:auto;
}

#header_menu .content_padding {
  padding:0;
}

#header_menu .header_menu {
  min-height:40px;
  flex-wrap:nowrap;
  gap:24px;
}

#header_menu .header_menu .header_menu_left .header_menu_left_lg {
  align-items:center;
  gap:30px;
}

#header_menu .header_menu .header_menu_left .header_menu_left_lg a {
  position:relative;
  display:flex;
  align-items:center;
  min-height:40px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#fff;
  font-size:14px;
  font-weight:400;
  line-height:1.2;
}

#header_menu .header_menu .header_menu_left .header_menu_left_lg a:hover,
#header_menu .header_menu .header_menu_left .header_menu_left_lg a.select {
  border-radius:0;
  background:transparent;
  font-size:14px;
}

#header_menu .header_menu .header_menu_left .header_menu_left_lg a::after {
  content:'';
  position:absolute;
  right:0;
  bottom:7px;
  left:0;
  height:1px;
  background:#fff;
  opacity:0;
}

#header_menu .header_menu .header_menu_left .header_menu_left_lg a:hover::after,
#header_menu .header_menu .header_menu_left .header_menu_left_lg a.select::after {
  opacity:1;
}

#header_menu .header_menu .header_menu_right .header_location_phone {
  gap:8px;
}

#header_menu .header_menu .header_menu_right .header_location_phone .location_phone {
  gap:8px;
}

#header_menu .header_menu .header_menu_right .header_location_phone .location_phone i.fa {
  color:#fff;
  font-size:17px;
}

#header_menu .header_menu .header_menu_right .header_location_phone .location_phone span {
  color:#fff;
  font-family:Onest,Arial,sans-serif;
  font-size:14px;
  font-weight:500;
  line-height:1.2;
}

#header_logo {
  min-height:93px;
  padding:0;
  border:0;
  background:#fff;
}

#header_logo .content_padding_head {
  box-sizing:border-box;
  min-height:93px;
  padding:0;
  gap:28px;
}

#header_logo .header_logo_left {
  flex:none;
}

#header_logo .header_logo_left .header_logo {
  display:flex;
  align-items:center;
  gap:17px;
}

#header_logo .header_logo_left .header_logo_img {
  display:block;
}

#header_logo .header_logo_left .header_logo_img img {
  display:block;
  width:135px;
  height:auto;
}

#header_logo .header_logo_left .header_logo_title {
  display:block;
  max-width:205px;
  padding:0 0 0 17px;
  border-left:1px solid var(--sf-shell-border);
  color:var(--sf-shell-muted);
  font-size:13px;
  font-weight:400;
  line-height:1.35;
  vertical-align:middle;
}

#header_logo .header_logo_center {
  min-width:0;
  padding:0;
}

#header_logo .header_logo_center .filter_block_search .filter_search,
#header_logo .header_logo_center .filter_block_search input,
#header_logo .header_logo_center .filter_block_search .filter_search_request_mobile {
  height:56px;
}

#header_logo .header_logo_center .filter_block_search input,
#header_logo .header_logo_center .filter_block_search .filter_search_request_mobile {
  border:1px solid #e0e0e0;
  border-radius:16px;
  color:var(--sf-shell-ink);
  font-family:Onest,Arial,sans-serif;
  font-size:16px;
  line-height:54px;
}

#header_logo .header_logo_center .filter_block_search input::placeholder {
  color:#929191;
  font-family:Onest,Arial,sans-serif;
}

#header_logo .header_logo_right .header_logo_block_button {
  gap:8px;
}

#header_logo .header_logo_right .header_logo_block_button .header_button {
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-width:66px;
  min-height:70px;
  gap:7px;
  padding:7px 6px;
  border:0;
  border-radius:14px;
  background:transparent;
  color:var(--sf-shell-ink);
  font-family:Onest,Arial,sans-serif;
  font-size:14px;
  text-decoration:none;
}

#header_logo .header_logo_right .header_logo_block_button .header_button:hover {
  background:#f9f9f9;
}

#header_logo .header_logo_right .header_logo_block_button .header_button i.fa {
  color:var(--sf-shell-ink);
  font-size:23px;
}

#header_logo .header_logo_right .header_logo_block_button .header_button .header_button_text {
  color:var(--sf-shell-ink);
  font-size:14px;
}

#header_location {
  min-height:65px;
  padding:0;
  border-bottom:1px solid var(--sf-shell-border);
  background:#fff;
}

#header_location .content_padding {
  padding:0;
}

#header_location .header_location {
  align-items:center;
  gap:20px;
  min-height:65px;
}

#header_location .header_location_button {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0;
}

#header_location .location_button {
  position:relative;
  min-height:36px;
  margin:0;
  padding:0 17px;
  border:1px solid transparent;
  border-radius:0;
  background:transparent;
  color:var(--sf-shell-ink);
  font-size:14px;
  font-weight:500;
  line-height:1.4;
  text-decoration:underline;
  text-decoration-color:transparent;
  text-underline-offset:5px;
  box-shadow:none;
}

#header_location .location_button:first-child {
  padding-left:0;
}

#header_location .location_button + .location_button::before {
  content:'';
  position:absolute;
  top:10px;
  bottom:10px;
  left:-1px;
  width:1px;
  background:#e0e0e0;
}

#header_location .location_button_max,
#header_location .location_button_max:hover {
  border-color:transparent;
  background:transparent;
  color:var(--sf-shell-ink);
}

#header_location .location_button:hover {
  border-color:transparent;
  background:transparent;
  text-decoration-color:var(--sf-shell-green);
}

#header_location .location_button_max span {
  color:inherit;
}

#header_location .header_address {
  color:var(--sf-shell-ink);
  font-size:14px;
}

#header_location .datetime_address {
  min-height:36px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:9px;
  background:transparent;
  color:var(--sf-shell-ink);
  font-size:14px;
  font-weight:500;
  text-decoration:underline;
  text-decoration-color:#d5d5d5;
  text-underline-offset:5px;
}

#header_location :is(.location_button,.datetime_address) i.fa {
  color:var(--sf-shell-green);
}

/* Protect the UI Kit controls from the deeper selectors in main_big.css. */
#header_logo.sf-shell-header .header_logo_right .header_logo_block_button .header_button {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:66px !important;
  min-height:70px !important;
  gap:7px !important;
  padding:7px 6px !important;
  border:0 !important;
  border-radius:14px !important;
  background:transparent !important;
  color:var(--sf-shell-ink) !important;
  font:14px/1.2 Onest,Arial,sans-serif !important;
  text-decoration:none !important;
}

#header_logo.sf-shell-header .header_logo_right .header_logo_block_button .header_button i.fa {
  color:var(--sf-shell-ink) !important;
  font-size:23px !important;
}

#header_logo.sf-shell-header .header_logo_right .header_logo_block_button .header_button .header_button_text {
  color:var(--sf-shell-ink) !important;
  font:14px/1.2 Onest,Arial,sans-serif !important;
}

#header_location.sf-shell-header .header_location .header_location_left .header_location_button {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:0 !important;
}

#header_location.sf-shell-header .header_location .header_location_left .header_location_button .location_button {
  box-sizing:border-box !important;
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  min-height:36px !important;
  height:auto !important;
  margin:0 !important;
  padding:0 17px !important;
  gap:7px !important;
  border:1px solid transparent !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--sf-shell-ink) !important;
  font:500 14px/1.4 Onest,Arial,sans-serif !important;
  text-decoration:underline !important;
  text-decoration-color:transparent !important;
  text-underline-offset:5px !important;
  box-shadow:none !important;
  transform:none !important;
}

#header_location.sf-shell-header .header_location .header_location_left .header_location_button .location_button:first-child {
  padding-left:0 !important;
}

#header_location.sf-shell-header .header_location .header_location_left .header_location_button .location_button span {
  color:inherit !important;
  font:inherit !important;
}

#header_location.sf-shell-header .header_location .header_location_left .header_location_button .location_button:hover {
  border-color:transparent !important;
  background:transparent !important;
  text-decoration-color:var(--sf-shell-green) !important;
}

#header_location.sf-shell-header .header_location .header_location_right .header_address .datetime_address {
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  min-height:36px !important;
  height:auto !important;
  padding:0 12px !important;
  gap:7px !important;
  border:1px solid transparent !important;
  border-radius:9px !important;
  background:transparent !important;
  color:var(--sf-shell-ink) !important;
  font:500 14px/1.4 Onest,Arial,sans-serif !important;
  text-decoration:underline !important;
  text-decoration-color:#d5d5d5 !important;
  text-underline-offset:5px !important;
  box-shadow:none !important;
}

#header_location.sf-shell-header .header_location .header_location_right .header_address .datetime_address span {
  color:inherit !important;
  font:inherit !important;
}

/* Legacy footer follows the same graphite UI Kit surface. */
#footer {
  position:relative;
  padding:0;
  border:0;
  background:var(--sf-shell-footer);
  color:#edeeec;
  text-align:left;
}

#footer > .content > .content_padding:first-child {
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:60px;
  padding:43px 0 0;
}

#footer > .content > .content_padding:last-child {
  padding:0 0 30px;
}

#footer .footer_left {
  min-width:0;
  margin:0;
}

#footer .footer_menu {
  font-size:initial;
}

#footer .footer_menu .footer_left_in {
  display:grid;
  grid-template-columns:1fr 1.12fr;
  gap:10px 35px;
  width:100%;
}

#footer .footer_menu .footer_left_in > div {
  min-width:0;
}

#footer .footer_menu a {
  color:#dededc;
  font-size:16px;
  line-height:1.6;
}

#footer .footer_menu a:hover,
#footer .footer_city a:hover,
#footer .footer_contacts a:hover,
#footer .footer_copy a:hover {
  color:#fff;
  text-decoration:underline;
  text-decoration-color:var(--sf-shell-green);
  text-underline-offset:5px;
}

#footer .footer_city {
  margin-top:31px;
  padding-top:24px;
  border-top:1px solid #ffffff17;
  font-size:14px;
  line-height:1.6;
}

#footer .footer_city a {
  padding-right:16px;
  color:#b5b7b3;
}

#footer .footer_contacts {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 28px;
  padding-top:28px;
  line-height:1.4;
}

#footer .footer_contacts a,
#footer .footer_contacts > span {
  min-height:44px;
  padding:0;
  color:#f2f3ef;
  font-size:16px;
  line-height:44px;
}

#footer .footer_contacts a:first-child {
  font-size:21px;
  font-weight:500;
}

#footer .footer_contacts a > span {
  border:0;
}

#footer .footer_contacts a i,
#footer .footer_contacts > span i {
  color:var(--sf-shell-green);
  font-size:19px;
}

#footer .footer_right {
  position:static;
  display:flex;
  flex-direction:column;
  gap:25px;
  width:auto;
  padding-left:28px;
  border-left:1px solid #ffffff17;
  text-align:left;
}

#footer .footer_social,
#footer .footer_pay,
#footer .footer_app,
#footer .footer_secure {
  padding:0;
}

#footer .footer_social a {
  box-sizing:border-box;
  min-width:41px;
  height:41px;
  margin-right:9px;
  padding:0;
  border:1px solid #ffffff26;
  border-radius:12px;
  color:#eeefec;
  font-size:20px;
  line-height:39px;
  text-align:center;
}

#footer .footer_social a:hover {
  border-color:var(--sf-shell-green);
  background:#ffffff09;
  color:#fff;
}

#footer .footer_pay {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:15px;
}

#footer .footer_pay figure,
#footer .footer_secure figure,
#footer .footer_app figure {
  margin:0;
}

#footer .footer_app {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

#footer .footer_secure {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}

#footer .footer_copy {
  margin-top:34px;
  padding-top:25px;
  border-top:1px solid #ffffff1c;
}

#footer .footer_copy p {
  box-sizing:border-box;
  margin:0;
  padding:0 28px 0 0;
  border:0;
  color:#a3a5a1;
  font-size:14px;
  line-height:1.75;
}

#footer .footer_copy p small {
  color:#a3a5a1;
  font-size:14px;
  line-height:1.75;
}

#footer .footer_copy a {
  color:#c5c7c1;
}

/* The legacy footer keeps its data and markup, while these UI Kit layout rules
 * remain authoritative over main_big.css. */
#footer.sf-shell-footer {
  padding:0 !important;
  border:0 !important;
  background:var(--sf-shell-footer) !important;
  color:#edeeec !important;
  font-family:Onest,Arial,sans-serif !important;
  font-size:16px !important;
  line-height:1.5 !important;
  text-align:left !important;
}

#footer.sf-shell-footer > .content > .content_padding:first-child {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 300px !important;
  gap:60px !important;
  padding:43px 0 0 !important;
}

#footer.sf-shell-footer .footer_left {
  min-width:0 !important;
  margin:0 !important;
  text-align:left !important;
}

#footer.sf-shell-footer .footer_right {
  position:static !important;
  display:flex !important;
  flex-direction:column !important;
  gap:25px !important;
  width:auto !important;
  padding:0 0 0 28px !important;
  border-left:1px solid #ffffff17 !important;
  text-align:left !important;
}

#footer.sf-shell-footer .footer_menu a {
  color:#dededc !important;
  font:16px/1.6 Onest,Arial,sans-serif !important;
  text-decoration:none !important;
}

#footer.sf-shell-footer .footer_contacts {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:8px 28px !important;
  padding-top:28px !important;
}

#footer.sf-shell-footer .footer_social a {
  box-sizing:border-box !important;
  min-width:41px !important;
  height:41px !important;
  margin-right:9px !important;
  padding:0 !important;
  border:1px solid #ffffff26 !important;
  border-radius:12px !important;
  background:transparent !important;
  color:#eeefec !important;
  font-size:20px !important;
  line-height:39px !important;
  text-align:center !important;
}

@media (max-width:1120px) {
  .sf-page .site-header :is(.fl-home-brand > span,.identity > p) { display:none; }

  .sf-page .site-header:not(.fl-home-site-header) .container { width:calc(100% - 48px); }

  #header_menu .content_menu,
  #header_logo > .content,
  #header_location > .content,
  #footer > .content {
    width:calc(100% - 48px);
  }

  #header_logo .header_logo_left .header_logo_title { display:none; }
  #header_logo .content_padding_head { gap:25px; }
}

@media (max-width:880px) {
  .sf-page .site-header {
    --sf-header-main-height:78px;
    --sf-header-logo-width:126px;
  }

  #header_logo .content_padding_head {
    flex-wrap:wrap;
    min-height:0;
    padding:14px 0 18px;
  }

  #header_logo .header_logo_left { order:1;flex:1; }
  #header_logo .header_logo_center { order:3;flex:none;width:100%; }
  #header_logo .header_logo_right { order:2;flex:none; }
  #header_logo .header_logo_left .header_logo_img img { width:126px; }
}

@media (max-width:760px) {
  #footer > .content > .content_padding:first-child {
    grid-template-columns:1fr;
    gap:32px;
    padding-top:33px;
  }

  #footer .footer_right {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:28px;
    padding:27px 0 0;
    border-top:1px solid #ffffff1c;
    border-left:0;
  }

  #footer .footer_secure { display:flex; }

  #footer.sf-shell-footer > .content > .content_padding:first-child {
    grid-template-columns:1fr !important;
    gap:32px !important;
    padding-top:33px !important;
  }

  #footer.sf-shell-footer .footer_right {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:28px !important;
    padding:27px 0 0 !important;
    border-top:1px solid #ffffff1c !important;
    border-left:0 !important;
  }
}

@media (max-width:700px) {
  .sf-page .site-header:not(.fl-home-site-header) .container { width:calc(100% - 32px); }

  .sf-page .site-header:not(.fl-home-site-header) .pickup-control { min-width:0; }

  .sf-page .site-header:not(.fl-home-site-header) .personal-action {
    min-width:42px;
    min-height:44px;
    padding:6px;
  }

  .sf-page .sf-shell-header[data-action-design="line"] .service {
    min-height:36px;
    padding-right:12px;
    padding-left:12px;
    font-size:14px;
  }

  .sf-page .sf-shell-header[data-action-design="line"] .service:first-child { padding-left:0; }
  .sf-page .sf-shell-header[data-action-design="line"] .delivery-link::after { display:none; }

  .sf-page .sf-shell-header[data-action-design="line"] .address-control {
    width:100%;
    max-width:100%;
    min-height:40px;
    font-size:16px;
  }

  .sf-page .site-header .identity-row {
    grid-template-rows:var(--sf-header-main-height) auto;
    row-gap:0;
    padding-top:0;
  }

  .sf-page .site-header:not(.fl-home-site-header) .services-row {
    min-height:0;
    padding-bottom:20px;
  }

  #header_menu .content_menu,
  #header_logo > .content,
  #header_location > .content {
    width:calc(100% - 32px);
  }

  #header_menu .header_menu .header_menu_left .header_menu_left_lg {
    width:100%;
    gap:30px;
    overflow-x:auto;
    scrollbar-width:none;
  }

  #header_menu .header_menu .header_menu_left .header_menu_left_lg::-webkit-scrollbar { display:none; }
  #header_menu .header_menu .header_menu_right { display:none; }

  #header_logo .header_logo_right .header_logo_block_button { gap:5px; }
  #header_logo .header_logo_right .header_logo_block_button .header_button {
    min-width:42px;
    min-height:44px;
    padding:6px;
  }
  #header_logo .header_logo_right .header_logo_block_button .header_button .header_button_text { display:none; }

  #header_logo.sf-shell-header .header_logo_right .header_logo_block_button .header_button {
    min-width:42px !important;
    min-height:44px !important;
    padding:6px !important;
  }

  #header_location .content_padding { padding-bottom:20px; }
  #header_location .header_location { align-items:stretch;gap:13px; }
  #header_location .header_location_button { width:100%; }
  #header_location .location_button { padding:0 12px; }
  #header_location .location_button:first-child { padding-left:0; }
  #header_location .header_location_right { width:100%; }
  #header_location .header_address { width:100%; }
  #header_location .datetime_address { min-height:48px;font-size:16px; }

  #header_location.sf-shell-header .header_location .header_location_left .header_location_button .location_button {
    padding-right:12px !important;
    padding-left:12px !important;
  }

  #header_location.sf-shell-header .header_location .header_location_left .header_location_button .location_button:first-child {
    padding-left:0 !important;
  }

  #header_location.sf-shell-header .header_location .header_location_right .header_address .datetime_address {
    min-height:48px !important;
    font-size:16px !important;
  }
}

@media (max-width:440px) {
  .sf-page .sf-shell-header[data-action-design="line"] .service { padding-right:9px;padding-left:9px; }
  .sf-page .sf-shell-header[data-action-design="line"] .service:first-child { padding-left:0; }
}

@media (max-width:370px) {
  .sf-page .site-header:not(.fl-home-site-header) .app-label-wide { display:none; }
}

@media (max-width:560px) {
  #footer > .content { width:calc(100% - 44px); }
  #footer > .content > .content_padding:first-child { padding-top:28px; }
  #footer > .content > .content_padding:last-child { padding-bottom:28px; }
  #footer .footer_menu .footer_left_in { grid-template-columns:1fr;gap:11px; }
  #footer .footer_contacts { flex-direction:column;align-items:flex-start;gap:7px; }
  #footer .footer_contacts a:first-child { font-size:23px; }
  #footer .footer_right { grid-template-columns:1fr;gap:25px; }
  #footer .footer_copy { margin-top:28px;padding-top:23px; }
  #footer .footer_copy p { display:block;width:100%;padding:0 0 18px; }

  #footer.sf-shell-footer .footer_right {
    grid-template-columns:1fr !important;
    gap:25px !important;
  }

  #footer.sf-shell-footer .footer_contacts {
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:7px !important;
  }
}

@media (prefers-reduced-motion:reduce) {
  #header_menu *,
  #header_logo *,
  #header_location *,
  #footer * {
    transition-duration:.01ms !important;
  }
}
