/* Homepage layout from the approved sketches. Photos: our kitchen + category set only. */
/* Разрешить выделение/копирование/вставку в полях (почта, пароль и др.) на мобиле и ПК */
input[type=text],input[type=email],input[type=password],input[type=tel],input[type=search],input[type=url],input[type=number],
input:not([type]),textarea,.field input,.field textarea,#modalContent input,#modalContent textarea{
  -webkit-user-select:text!important;
  user-select:text!important;
  -webkit-touch-callout:default!important;
}
.home-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.home-header{position:sticky;top:0;z-index:20;background:rgba(255,253,250,.94);backdrop-filter:blur(12px);border-bottom:1px solid #ece8e1}
.home-header .bar{display:flex;align-items:center;gap:18px;min-height:72px}
.home-header .main-nav{display:flex;gap:18px;flex:1;margin:0}
.home-header .main-nav a{color:#3d4a44;font-weight:700;font-size:15px;text-decoration:none}
.home-header .main-nav a:hover,.home-header .main-nav a.active{color:#1f6b4a}
.home-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center;padding:28px 0 12px}
.home-kicker{display:inline-flex;align-items:center;gap:8px;background:#e8f6ee;color:#1f6b4a;font-weight:800;font-size:13px;padding:6px 12px;border-radius:999px;margin-bottom:12px}
.home-hero h1{font-family:Comfortaa,Manrope,sans-serif;font-size:clamp(34px,4.4vw,52px);line-height:1.12;letter-spacing:-.03em;margin:0 0 12px;color:#16362c}
.home-hero .lead{font-size:17px;line-height:1.55;color:#5a6860;max-width:520px;margin:0 0 18px}
.home-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.home-ctas .btn{min-height:52px;padding:12px 22px;font-size:16px;border-radius:16px}
.home-checks{display:flex;flex-wrap:wrap;gap:10px 16px;color:#3d5c4c;font-size:14px;font-weight:700}
.home-checks span::before{content:"✓ ";color:#1f6b4a}
.home-visual{position:relative;border-radius:28px;overflow:hidden;min-height:340px;background:#e8eee7}
.home-visual img{width:100%;height:100%;min-height:340px;object-fit:cover;object-position:center 28%;display:block}
.home-finder{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid #e4ece4;border-radius:20px;padding:10px 12px;box-shadow:0 10px 30px rgba(30,50,40,.08);margin:8px 0 28px}
.home-finder .catalog-search{flex:1;border:0;box-shadow:none;background:transparent;padding:0}
.home-finder .btn{flex:none;white-space:nowrap}
.home-city{display:flex;align-items:center;gap:8px;min-width:220px;flex:0 0 240px;border:1px solid #e4ece4;border-radius:14px;padding:4px 12px;background:#f7faf7}
.home-city select{border:0;background:transparent;outline:none;font-size:15px;font-weight:700;color:#1e332b;width:100%;min-height:44px;cursor:pointer}
.pop-head,.section-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:8px 0 14px}
.pop-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:32px}
.pop-card{background:#fff;border:1px solid #e7eee6;border-radius:18px;padding:16px 12px 14px;text-align:center;color:#1e332b;text-decoration:none}
.pop-card img{width:100%;height:88px;object-fit:cover;border-radius:12px;margin-bottom:10px}
.pop-card strong{display:block;font-size:14px}
.pop-card small{display:block;color:#7a8a80;font-size:12px;margin-top:4px}
.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:#eef6f0;border-radius:20px;padding:18px;margin:28px 0}
.trust-row article{display:flex;gap:12px;align-items:flex-start;padding:6px 8px}
.trust-ico{flex:none;width:44px;height:44px;border-radius:12px;background:#fff;display:grid;place-items:center;box-shadow:0 2px 8px rgba(30,60,40,.08)}
.trust-ico svg{width:24px;height:24px;fill:none;stroke:#1f6b4a;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.trust-row strong{display:block;margin-bottom:4px;color:#1e4a38}
.trust-row p{margin:0;font-size:13px;line-height:1.45;color:#5b6d63}
.med-feature{margin-top:22px}
@media(max-width:900px), (max-device-width:920px){
.home-header .main-nav{display:none!important}
.home-hero{grid-template-columns:1fr!important;gap:16px}
.home-hero h1{font-size:32px!important;text-align:left}
.home-ctas{flex-direction:row}
.home-ctas .btn{flex:1;font-size:15px}
.home-visual,.home-visual img{min-height:220px}
.home-finder{flex-direction:column;align-items:stretch}
.pop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.trust-row{grid-template-columns:1fr 1fr}
}
html.is-phone .home-header .main-nav{display:none!important}
html.is-phone .home-hero{grid-template-columns:1fr!important}
html.is-phone .pop-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html.is-phone .trust-row{grid-template-columns:1fr!important}
html.is-phone .home-hero h1{font-size:30px!important;white-space:normal!important}
html.is-phone .home-hero .lead{font-size:17px!important}
html.is-phone .home-ctas .btn{min-height:52px;font-size:16px!important}
.nav-toggle{display:none!important}
.auth-pill{
  display:inline-flex;
  align-items:stretch;
  border:1px solid #cfe0d4;
  border-radius:999px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 6px 18px rgba(31,107,74,.10);
}
.auth-pill__login,.auth-pill__signup{
  border:0;
  background:transparent;
  min-height:42px;
  padding:10px 18px;
  font:inherit;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
  color:#1f6b4a;
  line-height:1;
}
.auth-pill__login{border-right:1px solid #d7e6db;background:#fff}
.auth-pill__signup{background:linear-gradient(180deg,#2f8f63,#1f6b4a);color:#fff}
.auth-pill__login:hover{background:#eef7f1}
.auth-pill__signup:hover{filter:brightness(1.05)}
.auth-pill__login:focus-visible,.auth-pill__signup:focus-visible{outline:3px solid #508662;outline-offset:2px;z-index:1}
.cta-pill{
  display:inline-flex;
  align-items:stretch;
  width:min(100%,420px);
  border:1px solid #cfe0d4;
  border-radius:999px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 8px 22px rgba(31,107,74,.12);
  gap:0!important;
  flex-wrap:nowrap!important;
}
.cta-pill__need,.cta-pill__help{
  border:0;
  flex:1 1 0;
  min-height:52px;
  padding:14px 18px;
  font:inherit;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  line-height:1.1;
  white-space:nowrap;
}
.cta-pill__need{
  background:linear-gradient(180deg,#2f8f63,#1f6b4a);
  color:#fff;
  border-right:1px solid #196347;
}
.cta-pill__help,.cta-pill .hero-help-cta{background:#fff!important;color:#1f6b4a!important;border:0!important;box-shadow:none!important}
.cta-pill__need:hover{filter:brightness(1.05)}
.cta-pill__help:hover,.cta-pill .hero-help-cta:hover{background:#f7fbf8!important;filter:none!important;color:#1f6b4a!important}
.cta-pill__need:focus-visible,.cta-pill__help:focus-visible{outline:3px solid #508662;outline-offset:2px;z-index:1}
@media(max-width:900px),(max-device-width:920px){
.nav-toggle{display:none!important}
.home-header .bar,.home-header .header-inner{flex-wrap:wrap!important;height:auto!important;min-height:64px;padding:8px 0 10px;justify-content:center}
.home-header.nav-open .main-nav{display:none!important}
.home-header .header-actions{margin:6px 0 0;width:100%;flex:1 1 100%;justify-content:center}
.home-header .auth-pill{width:min(100%,340px)}
.home-header .auth-pill__login,.home-header .auth-pill__signup{flex:1 1 0}
.home-hero.hero,.hero.hero-v063{display:flex!important;flex-direction:column}
.home-hero .home-visual,.hero-v063 .hero-photo-stage{order:-1}
.home-hero{padding:12px 0}
.home-hero h1{font-size:28px!important;line-height:1.2!important;text-align:left!important;white-space:normal!important}
.home-hero h1 br{display:block}
.home-hero .lead{font-size:16px!important}
.home-ctas{flex-direction:row!important;gap:8px}
.home-ctas.cta-pill{gap:0!important;width:min(100%,360px);margin-left:auto;margin-right:auto}
.home-ctas .btn{flex:1 1 0;min-height:48px;font-size:15px!important;padding:10px 8px!important}
.home-visual{margin-left:-16px;margin-right:-16px;width:calc(100% + 32px);border-radius:0;min-height:200px}
.home-visual img{min-height:200px;object-fit:cover}
.home-finder{flex-direction:column;align-items:stretch;gap:10px;padding:12px}
.home-finder .catalog-search,.home-city,.home-finder .btn{width:100%!important;flex:none;min-width:0;max-width:none}
.home-city{min-width:0;flex:none}
.home-city select{min-height:48px;font-size:16px}
.home-finder .btn{min-height:52px;font-size:17px}
.pop-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}
.pop-card img{height:110px}
.pop-card strong{font-size:16px}
.pop-card small{font-size:13px}
.trust-row{grid-template-columns:1fr!important;gap:14px}
.trust-row article{align-items:center}
#requests .filters{flex-wrap:wrap;gap:8px}
#requests .scope-tools{flex-direction:column;align-items:stretch}
#requests .scope-tools select,.request-shortcut{width:100%}
.honor-grid{grid-template-columns:1fr!important}
.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.mission-text p{font-size:17px}
}
html.is-phone .nav-toggle{display:none!important}
html.is-phone .home-header .bar,html.is-phone .home-header .header-inner{flex-wrap:wrap!important;height:auto!important;align-items:center;justify-content:center}
html.is-phone .home-header.nav-open .main-nav{display:none!important}
html.is-phone .home-header .header-actions{margin:6px 0 0!important;width:100%!important;flex:1 1 100%!important;justify-content:center!important}
html.is-phone .auth-pill{box-shadow:0 8px 20px rgba(31,107,74,.14);width:min(100%,340px)}
html.is-phone .auth-pill__login,html.is-phone .auth-pill__signup{flex:1 1 0;min-height:44px;padding:10px 16px;font-size:15px}
html.is-phone .home-hero,html.is-phone .hero.hero-v063{display:flex!important;flex-direction:column!important;grid-template-columns:1fr!important;padding-top:8px}
html.is-phone .home-hero .home-visual,html.is-phone .hero-v063 .hero-photo-stage{order:-1}
html.is-phone .home-hero h1{font-size:28px!important;white-space:normal!important;text-align:left!important}
html.is-phone .home-hero h1 br{display:block!important}
html.is-phone .home-ctas{flex-direction:row!important}
html.is-phone .home-visual{margin-left:-16px;margin-right:-16px;width:calc(100% + 32px);border-radius:0}
html.is-phone .home-finder{flex-direction:column!important;align-items:stretch!important}
html.is-phone .home-city,html.is-phone .home-finder .btn,html.is-phone .home-finder .catalog-search{width:100%!important;flex:none!important;max-width:none!important}
html.is-phone .pop-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html.is-phone .trust-row{grid-template-columns:1fr!important}
html.is-phone .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html.is-phone .honor-grid{grid-template-columns:1fr!important}
html.is-phone #requests .scope-tools{flex-direction:column!important}
html.is-phone #requests .scope-tools select,html.is-phone .request-shortcut{width:100%!important}
html.is-phone .catalog-tile{
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
  min-height:0!important;
  padding:12px 8px!important;
}
html.is-phone .catalog-tile strong{
  font-size:13px!important;
  line-height:1.25!important;
  white-space:pre-line!important;
  font-weight:800;
  max-width:100%;
}
html.is-phone .catalog-tile small{font-size:12px!important}
html.is-phone .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
html.is-phone .home-ctas.cta-pill,
html.is-phone .hero-dual-actions.cta-pill{
  display:inline-flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  width:min(100%,360px)!important;
  max-width:100%!important;
  gap:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html.is-phone .cta-pill__need,
html.is-phone .cta-pill__help{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto!important;
  max-width:none!important;
  flex:1 1 0!important;
  white-space:nowrap!important;
  font-size:15px!important;
  min-height:48px!important;
  border-radius:0!important;
  box-shadow:none!important;
  visibility:visible!important;
  opacity:1!important;
}
html.is-phone #mission .section-head,
html.is-phone #honor .section-head,
html.is-phone .pop-head,
html.is-phone .catalog-lead,
html.is-phone #how .section-head{
  display:block!important;
  text-align:center!important;
  width:100%!important;
}
html.is-phone #mission h2,
html.is-phone #honor h2,
html.is-phone #catalog h2,
html.is-phone #how h2,
html.is-phone .catalog-lead h2{
  text-align:center!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html.is-phone .mission-text{margin-left:auto;margin-right:auto;text-align:left}
.toast{
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  bottom:max(16px, env(safe-area-inset-bottom, 0px))!important;
  top:auto!important;
  width:min(90vw,420px)!important;
  transform:translate(-50%,12px)!important;
  text-align:center!important;
  font-size:16px!important;
  line-height:1.45!important;
  padding:14px 18px!important;
  z-index:400!important;
  box-sizing:border-box;
}
.toast.show{opacity:1!important;transform:translate(-50%,0)!important}
html.is-phone .toast{
  left:12px!important;
  right:12px!important;
  width:auto!important;
  transform:none!important;
  bottom:max(12px, env(safe-area-inset-bottom, 0px))!important;
}
html.is-phone .toast.show{transform:none!important}
html.is-phone .modal{padding-bottom:96px}
@media (max-width:900px){
  .toast{
    left:12px!important;
    right:12px!important;
    width:auto!important;
    transform:none!important;
    bottom:max(12px, env(safe-area-inset-bottom, 0px))!important;
  }
  .toast.show{transform:none!important}
  .modal{padding-bottom:96px}
}
.cabinet-rules,.cabinet-rules p,.cabinet-rules strong,.cabinet-rules h3{
  color:#c62828!important;
  font-weight:700;
}
.cabinet-rules{
  border:1px solid #f3c4c0;
  background:#fff5f4;
  border-radius:14px;
  padding:12px 14px;
  line-height:1.45;
}
.cabinet-rules p{margin:8px 0 0}

.market-section{margin:36px 0 20px;padding:28px 24px;border-radius:24px;background:linear-gradient(180deg,#f4faf5 0%,#fff 55%);border:1px solid #dce8df}
.market-section .section-head{align-items:flex-start;margin-bottom:18px}
.market-section h2{margin:0;font-size:clamp(28px,3vw,36px);color:#16362c;letter-spacing:-.5px}
.market-slogan{margin:8px 0 6px;font-size:18px;font-weight:800;color:#1f6b4a}
.market-section .section-head p{margin:0;color:#5a6860;line-height:1.55;max-width:640px}
.market-shell{background:#fff;border:1px solid #e2ebe3;border-radius:18px;padding:22px}
.market-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.market-chip{display:inline-flex;align-items:center;min-height:34px;padding:6px 12px;border-radius:999px;background:#eef6f0;border:1px solid #d5e6da;color:#1f6b4a;font-size:13px;font-weight:700}
.market-empty{display:grid;gap:10px;justify-items:start}
.market-empty strong{font-size:18px;color:#173f34}
.market-empty p{margin:0;color:#5c6d62;line-height:1.55;max-width:560px}
.market-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media(max-width:1100px){.market-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.market-section{padding:22px 16px}.market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.market-grid{grid-template-columns:1fr}.home-header .main-nav a[href="#market"]{display:none}}
.task-more{margin:8px 0 14px;border:1px solid #e4ece4;border-radius:14px;background:#fbfdfb;padding:4px 12px 8px}
.task-more>summary{cursor:pointer;font-weight:800;color:#1e4a38;min-height:44px;display:flex;align-items:center;list-style:none}
.task-more>summary::-webkit-details-marker{display:none}
.task-more>summary::after{content:"+";margin-left:auto;color:#1f6b4a}
.task-more[open]>summary::after{content:"–"}
.task-more-body{padding:4px 0 8px}
.task-more:not([open]) .task-more-body{display:none}
.feed-search{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 12px}
.feed-search .catalog-search{flex:1;min-width:200px}
.feed-search input[type=search]{flex:1;min-width:180px;min-height:44px;font-size:16px;border:1px solid #e4ece4;border-radius:14px;padding:8px 12px}
#cabinetNav{flex-wrap:wrap}
#cabinetHome .dash-controls{flex-direction:row;flex-wrap:wrap}
/* Уточнение места на главной: сначала регион, затем город. */
.home-place-picker{display:flex;align-items:center;gap:8px;flex:1 1 700px;max-width:760px;min-width:360px;margin:0 auto}
.home-place-picker .home-city{min-width:0;flex:1 1 0}
.home-place-picker .home-city.home-region{flex:1.2 1 0}
.home-place-picker select:disabled{color:#8a958d;cursor:not-allowed}
.scope-context{margin:-3px 0 15px;padding:10px 13px;border:1px solid #e0e9df;border-radius:12px;background:#f4f8f2;color:#617466;font-size:12px;line-height:1.5}
@media(max-width:900px){.home-place-picker{min-width:300px;flex:1 1 100%}}
@media(max-width:620px){.home-place-picker{width:100%;min-width:0;flex-direction:column;align-items:stretch}.home-place-picker .home-city{width:100%;flex:none}.scope-context{font-size:13px}}
/* Навигация: мягкая зелёная подсветка появляется под текстом, а не перечёркивает его. */
.home-header .main-nav a{transition:color .2s ease,text-shadow .2s ease}
.home-header .main-nav a::after{left:8%;right:8%;bottom:-5px;height:4px;border-radius:999px;background:#218269;box-shadow:0 4px 11px rgba(33,130,105,.42);opacity:0;transform:scaleX(0);transform-origin:center;transition:transform .23s ease,opacity .23s ease}
.home-header .main-nav a:hover,.home-header .main-nav a:focus-visible,.home-header .main-nav a.active{color:#1f6b4a;text-shadow:0 0 10px rgba(33,130,105,.3);outline:none}
.home-header .main-nav a:hover::after,.home-header .main-nav a:focus-visible::after,.home-header .main-nav a.active::after{right:8%;opacity:1;transform:scaleX(1)}
#requests,#catalog,#market,#how,#honor,#mission{scroll-margin-top:110px}

/* The place picker keeps the region and city controls side by side on tablet widths. */
.home-place-picker .home-city{
  width:auto!important;
  min-width:0;
  max-width:none;
  flex:1 1 0!important;
}
html.is-phone .home-place-picker .home-city{
  width:auto!important;
  flex:1 1 0!important;
}
@media(max-width:620px){
  .home-place-picker{
    flex-direction:column;
    align-items:stretch;
  }
  .home-place-picker .home-city,
  html.is-phone .home-place-picker .home-city{
    width:100%!important;
    flex:none!important;
  }
}

/* Direct Android download beside the region and city selectors. */
#finder .home-app-download{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex:0 0 auto;
  min-height:52px;
  padding:12px 14px;
  border:1px solid #8fc9a0;
  border-radius:999px;
  background:linear-gradient(#f6fff8,#e3f3e8);
  color:#1c4a38;
  font-size:14px;
  font-weight:800;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 #fff,0 4px 0 #2a6b4a,0 10px 18px rgba(30,80,50,.18),0 0 12px 2px rgba(72,210,130,.22);
  transition:transform .2s ease,box-shadow .2s ease;
}
#finder .home-app-download svg{flex:none}
#finder .home-app-download__platform{
  padding:4px 7px;
  border:1px solid #c2dfcd;
  border-radius:999px;
  background:rgba(255,255,255,.7);
  color:#315a47;
  font-size:11px;
  font-weight:700;
}
#finder .home-app-download:hover,
#finder .home-app-download:focus-visible{
  transform:translateY(-2px);
  outline:2px solid #246449;
  outline-offset:3px;
  box-shadow:inset 0 1px 0 #fff,0 6px 0 #245c40,0 14px 22px rgba(30,80,50,.22),0 0 16px 4px rgba(72,210,130,.3);
}
#finder .home-app-download:active{transform:translateY(2px)}
@media(prefers-reduced-motion:reduce){
  #finder .home-app-download{transition:none}
}
