/* Главная страница «Дуняши» по утверждённому референсу (docs/TZ_Claude_Code_Dunyasha.md).
   Все правила — под .home: кабинет, формы и админка этими стилями не затронуты. */
@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/manrope-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/manrope-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+20A0-20AB,U+20AD-20C4,U+2113}
@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/manrope-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

.home{--color-page:#fffaf6;--color-surface:#fff;--color-surface-warm:#fff2e7;--color-brand:#ff642d;--color-brand-soft:#ffe1cd;
  --color-action:#d83c08;--color-action-hover:#be3307;--color-accent-text:#cf3a0a;--color-text:#17192e;--color-muted:#656775;
  --color-border:#eee4dd;--radius-card:24px;--radius-input:14px;--radius-button:999px;--shadow-soft:0 12px 36px rgba(55,30,12,.07);
  --container-max:1320px;--gutter:20px;--header-h:68px;
  background:var(--color-page);color:var(--color-text);font:16px/1.55 Manrope,"Segoe UI",Roboto,system-ui,sans-serif;color-scheme:light}
@media (min-width:768px){.home{--gutter:24px}}
@media (min-width:1200px){.home{--gutter:44px;--header-h:84px}}
.home a{color:inherit}
.home .h-wrap{max-width:var(--container-max);margin:0 auto;padding:0 var(--gutter)}
.home .skip{position:absolute;left:-9999px;top:8px;z-index:60;background:var(--color-surface);border:2px solid var(--color-action);border-radius:10px;padding:8px 14px}
.home .skip:focus{left:8px}
.home :focus-visible{outline:3px solid var(--color-action);outline-offset:3px}
.home [id]{scroll-margin-top:calc(var(--header-h) + 12px)}

/* кнопки */
.home .h-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:var(--radius-button);
  border:1.5px solid var(--color-action);background:var(--color-action);color:#fff;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;
  transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
.home .h-btn:hover{background:var(--color-action-hover);border-color:var(--color-action-hover);box-shadow:0 8px 20px rgba(216,60,8,.22)}
.home .h-btn.ghost{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}
.home .h-btn.ghost:hover{border-color:var(--color-action);box-shadow:var(--shadow-soft)}
.home .h-btn.line{background:transparent;color:var(--color-action-hover);border-color:#f3b89c}
.home .h-btn.line:hover{background:var(--color-surface-warm);border-color:var(--color-action)}
.home .h-btn.big{min-height:52px;padding:0 28px}

/* шапка */
.home .h-top{position:sticky;top:0;z-index:40;background:rgba(255,250,246,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border)}
.home .h-top-row{display:flex;align-items:center;gap:16px;min-height:var(--header-h)}
.home .h-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.home .h-mark{width:38px;height:38px;border-radius:12px;background:var(--color-brand);color:#fff;display:grid;place-items:center;font-weight:800;font-size:22px;line-height:1}
.home .h-name{font-weight:800;font-size:24px;letter-spacing:-.02em}
.home .h-tag{display:none;color:var(--color-muted);font-size:12.5px;line-height:1.3;max-width:190px}
.home .h-nav{display:none}
.home .h-nav a{text-decoration:none;font-weight:600;font-size:15px;padding:10px 4px}
.home .h-nav a:hover{color:var(--color-accent-text)}
.home .h-actions{display:none;gap:10px;margin-left:auto}
.home .h-burger{margin-left:auto;width:48px;height:48px;border-radius:14px;border:1.5px solid var(--color-border);background:var(--color-surface);display:grid;place-items:center;cursor:pointer}
.home .h-burger svg{width:22px;height:22px}
.home .h-menu{display:none;flex-direction:column;gap:4px;padding:8px 0 18px}
.home .h-menu.open{display:flex}
.home .h-menu a{padding:12px 4px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--color-border)}
.home .h-menu .h-btn{margin-top:10px;border-bottom:1.5px solid var(--color-action)}
.home .h-menu .h-btn.ghost{border-bottom-color:var(--color-border)}
/* Без скрипта меню раскрыто. Признак «скрипты есть» ставит js/js-flag.js в <head> — до первой
   отрисовки, иначе меню сначала раскрывается, потом сворачивается и сдвигает всю страницу. */
html:not(.js) .home .h-menu{display:flex}html:not(.js) .home .h-burger{display:none}
@media (min-width:1100px){
  .home .h-nav{display:flex;gap:26px;margin-left:28px}.home .h-actions{display:flex}
  .home .h-burger,.home .h-menu,.home .h-menu.open,html:not(.js) .home .h-menu{display:none}
}
@media (min-width:1280px){.home .h-tag{display:block}}

/* первый экран */
.home .h-hero{position:relative;overflow:hidden}
.home .h-hero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(60% 55% at 78% 40%,rgba(255,100,45,.16),transparent 70%),radial-gradient(40% 40% at 8% 90%,rgba(255,225,205,.7),transparent 70%)}
.home .h-hero-grid{position:relative;display:grid;gap:28px;padding-top:28px;padding-bottom:40px}
.home .h-hero h1{font-size:clamp(30px,8.4vw,38px);line-height:1.1;font-weight:800;letter-spacing:-.025em;margin:0 0 16px;text-wrap:balance}
.home .h-hero h1 em{font-style:normal;color:var(--color-accent-text)}
.home .h-lead{font-size:17px;color:var(--color-text);max-width:34em;margin:0 0 22px}
.home .h-cta{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 24px}
.home .h-points{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 22px}
.home .h-points li{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;line-height:1.3}
.home .h-points svg{flex:none;width:30px;height:30px;color:var(--color-brand)}
.home .h-visual{display:grid;gap:18px;justify-items:center}
.home .h-illus{display:block;width:min(56vw,230px);height:auto}
.home .h-quick{width:100%;max-width:440px;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);border:1px solid var(--color-border);
  border-radius:var(--radius-card);box-shadow:var(--shadow-soft);padding:18px}
.home .h-quick-head{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.home .h-quick-head .h-mark{width:32px;height:32px;border-radius:10px;font-size:18px}
.home .h-quick-head b{font-size:17px;font-weight:800;display:block;line-height:1.2}
.home .h-quick-head span{color:var(--color-muted);font-size:13px}
.home .h-bubble{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px 16px 16px 6px;padding:10px 14px;margin:0 0 12px;font-size:15px}
.home .h-chips{border:0;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.home .h-chips legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.home .h-chips label{position:relative;cursor:pointer}
.home .h-chips input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.home .h-chips span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--color-border);
  background:var(--color-surface);font-weight:600;font-size:14.5px;transition:border-color .18s,background .18s}
.home .h-chips label:hover span{border-color:var(--color-action)}
.home .h-chips input:checked+span{background:var(--color-surface-warm);border-color:var(--color-action);color:var(--color-accent-text)}
.home .h-chips input:focus-visible+span{outline:3px solid var(--color-action);outline-offset:3px}
.home .h-ask{display:flex;gap:8px;align-items:center;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-input);padding:6px 6px 6px 14px}
.home .h-ask:focus-within{border-color:var(--color-action)}
.home .h-ask input{flex:1;min-width:0;border:0;background:none;font:inherit;color:var(--color-text);padding:8px 0;min-height:44px}
.home .h-ask input:focus{outline:none}
.home .h-ask input::placeholder{color:var(--color-muted)}
.home .h-ask button{flex:none;width:44px;height:44px;border-radius:50%;border:0;background:var(--color-action);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .18s}
.home .h-ask button:hover{background:var(--color-action-hover)}
.home .h-ask svg{width:20px;height:20px}
.home .h-ask-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media (min-width:768px){
  .home .h-hero h1{font-size:clamp(38px,5.4vw,50px)}
  .home .h-visual{grid-template-columns:auto minmax(0,440px);align-items:end;justify-content:center}
  .home .h-illus{width:230px}
}
@media (min-width:1200px){
  .home .h-hero-grid{grid-template-columns:minmax(0,47fr) minmax(0,53fr);gap:24px;align-items:center;padding-top:44px;padding-bottom:56px;min-height:560px}
  .home .h-hero h1{font-size:clamp(54px,4.3vw,62px);line-height:1.07;margin-bottom:22px}
  .home .h-lead{font-size:18px;margin-bottom:28px}
  .home .h-cta{margin-bottom:34px}
  .home .h-visual{grid-template-columns:minmax(0,1fr) minmax(0,390px);gap:0;align-items:center;justify-items:end}
  .home .h-illus{width:310px;max-width:none;justify-self:end;margin-right:-64px;position:relative;z-index:0}
  .home .h-quick{position:relative;z-index:1}
}

/* услуги */
.home .h-section{padding:44px 0}
.home .h-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 24px;margin:0 0 22px}
.home .h-section h2{font-size:clamp(26px,3.2vw,38px);line-height:1.15;font-weight:800;letter-spacing:-.02em;margin:0}
.home .h-section-head p{margin:0;color:var(--color-muted)}
.home .h-services{display:grid;gap:16px;grid-template-columns:1fr;list-style:none;margin:0;padding:0}
@media (min-width:480px){.home .h-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:768px){.home .h-services{grid-template-columns:repeat(3,minmax(0,1fr))}.home .h-section{padding:64px 0}}
@media (min-width:1200px){.home .h-services{grid-template-columns:repeat(5,minmax(0,1fr))}}
.home .h-service{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);
  padding:20px;box-shadow:var(--shadow-soft);transition:transform .18s,box-shadow .18s,border-color .18s}
.home .h-service:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(55,30,12,.11);border-color:#f3b89c}
.home .h-service:first-child{background:var(--color-surface-warm);border-color:#f8c4a8}
.home .h-service-ico{width:52px;height:52px;border-radius:16px;background:var(--color-brand-soft);color:var(--color-action);display:grid;place-items:center;margin:0 0 16px}
.home .h-service-ico svg{width:26px;height:26px}
.home .h-service h3{font-size:18px;line-height:1.25;font-weight:800;margin:0 0 6px}
.home .h-service p{margin:0 0 16px;color:var(--color-muted);font-size:14.5px;line-height:1.45;flex:1}
.home .h-price{font-size:32px;line-height:1;font-weight:800;color:var(--color-accent-text);margin:0 0 16px;font-variant-numeric:tabular-nums;white-space:nowrap}
.home .h-price.soft{font-size:18px;color:var(--color-muted);font-weight:700;line-height:32px}
.home .h-ref-note{margin:16px 0 0;color:var(--color-muted);font-size:14px;line-height:1.45}
.home .h-service form{margin:0}
.home .h-service .h-btn{width:100%}
.home .h-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.home .h-tight{padding-top:0}
.home .h-ico{flex:none;width:52px;height:52px;border-radius:16px;background:var(--color-brand-soft);color:var(--color-action);display:grid;place-items:center}
.home .h-ico svg{width:26px;height:26px}

/* преимущества */
.home .h-benefits{list-style:none;margin:0;padding:22px;display:grid;gap:20px;grid-template-columns:1fr;background:var(--color-surface);
  border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-soft)}
.home .h-benefits li{display:flex;gap:14px;align-items:flex-start}
.home .h-benefits b{display:block;font-weight:800;line-height:1.3;margin-bottom:2px}
.home .h-benefits div span{color:var(--color-muted);font-size:14.5px;line-height:1.45;display:block}
@media (min-width:640px){.home .h-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.home .h-benefits{grid-template-columns:repeat(3,minmax(0,1fr));padding:28px}}
@media (min-width:1280px){.home .h-benefits{grid-template-columns:repeat(5,minmax(0,1fr))}.home .h-benefits li{flex-direction:column}}

/* как это работает */
.home .h-steps{list-style:none;margin:0;padding:0;display:grid;gap:22px;grid-template-columns:1fr}
.home .h-steps li{display:flex;gap:16px;align-items:flex-start;position:relative}
.home .h-num{flex:none;width:52px;height:52px;border-radius:50%;background:var(--color-brand-soft);color:var(--color-accent-text);
  display:grid;place-items:center;font-weight:800;font-size:22px}
.home .h-steps b{display:block;font-weight:800;font-size:17px;line-height:1.3;margin-bottom:2px}
.home .h-steps div span{color:var(--color-muted);font-size:15px;line-height:1.45;display:block}
@media (min-width:640px){.home .h-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){
  .home .h-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px}
  .home .h-steps li:not(:last-child)::after{content:"";position:absolute;right:-30px;top:25px;width:20px;height:10px;
    border-top:1.5px solid #f3b89c;border-right:1.5px solid #f3b89c;transform:translateY(-50%) rotate(45deg) skew(10deg,10deg);border-top-right-radius:2px}
}

/* с чем поможет + призыв */
.home .h-info{display:grid;gap:18px;grid-template-columns:1fr}
.home .h-help{background:var(--color-surface-warm);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:22px}
.home .h-help h2{font-size:clamp(22px,2.4vw,28px);margin:0 0 18px}
.home .h-help ul{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:1fr}
.home .h-help li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:8px}
.home .h-help li b{font-weight:800;font-size:17px;line-height:1.3;margin-top:6px}
.home .h-help li>span:last-child{color:var(--color-muted);font-size:14.5px;line-height:1.45}
.home .h-cta-card{position:relative;overflow:hidden;border-radius:var(--radius-card);padding:26px;border:1px solid #f8c4a8;
  background:linear-gradient(140deg,#fff2e7 0%,#ffd9c2 100%);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px}
.home .h-cta-card h2{font-size:clamp(24px,2.6vw,30px);margin:0;max-width:11em}
.home .h-cta-card p{margin:0 0 6px;color:var(--color-text);max-width:22em}
.home .h-plane{position:absolute;right:18px;top:16px;width:64px;height:64px;color:var(--color-brand);opacity:.85}
@media (min-width:768px){.home .h-help ul{grid-template-columns:repeat(3,minmax(0,1fr))}.home .h-help,.home .h-cta-card{padding:30px}}
@media (min-width:1100px){.home .h-info{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}

/* вопросы */
.home .h-faq details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;padding:0 20px;margin:0 0 10px;max-width:920px}
.home .h-faq summary{cursor:pointer;font-weight:700;font-size:17px;padding:16px 28px 16px 0;list-style:none;position:relative;min-height:44px}
.home .h-faq summary::-webkit-details-marker{display:none}
.home .h-faq summary::after{content:"";position:absolute;right:4px;top:50%;width:10px;height:10px;border-right:2px solid var(--color-action);border-bottom:2px solid var(--color-action);
  transform:translateY(-70%) rotate(45deg);transition:transform .18s}
.home .h-faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.home .h-faq details p{margin:0 0 16px;color:var(--color-text);max-width:70ch}
.home .h-faq a{color:var(--color-accent-text)}

/* подвал */
.home .h-foot{border-top:1px solid var(--color-border);padding:32px 0 36px;margin-top:20px;font-size:15px}
.home .h-foot-grid{display:grid;gap:22px;grid-template-columns:1fr}
.home .h-foot p{margin:10px 0 0;color:var(--color-muted);max-width:34em}
.home .h-foot nav{display:flex;flex-direction:column;gap:2px}
.home .h-foot nav a{text-decoration:none;font-weight:600;padding:8px 0;min-height:36px}
.home .h-foot nav a:hover{color:var(--color-accent-text)}
.home .h-legal{font-size:13.5px}
@media (min-width:768px){.home .h-foot-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1.3fr)}.home .h-legal{grid-column:1/-1;margin-top:0}}
@media (prefers-reduced-motion:reduce){.home *{transition:none!important;scroll-behavior:auto!important}.home .h-service:hover{transform:none}}
@media (prefers-reduced-motion:no-preference){html:has(.home){scroll-behavior:smooth}}

/* Быстрый старт: ответ в карточке */
.home .h-slogan{font-size:19px;font-weight:800;color:var(--color-accent-text);margin:0 0 10px;line-height:1.3}
.home .h-bubble.mine{margin-left:auto;width:fit-content;max-width:88%;border-radius:16px 16px 6px 16px;background:var(--color-surface-warm);overflow-wrap:anywhere}
.home .h-bubble b{font-weight:800}
.home .h-bubble:focus{outline:none}
.home .h-quick-go{margin:0 0 8px}
.home .h-quick-go .h-btn{width:100%;justify-content:center}
.home .h-quick-note{margin:0 0 14px;color:var(--color-muted);font-size:12.5px;line-height:1.4}
.home .h-quick-ask{margin:0}
.home .h-chip{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--color-border);background:var(--color-surface);font:inherit;font-weight:600;font-size:14.5px;color:var(--color-text);cursor:pointer}
.home .h-chip:hover,.home .h-chip:focus-visible{border-color:var(--color-action)}

/* Страницы услуг */
.home .h-service h3 a{color:inherit;text-decoration:none}
.home .h-service h3 a:hover{color:var(--color-accent-text)}
.home .h-service-page h1{font-size:clamp(30px,5vw,48px);line-height:1.1;font-weight:800;margin:0 0 14px;max-width:18em}
.home .h-crumbs{font-size:14px;color:var(--color-muted);margin:0 0 16px}
.home .h-crumbs a{color:inherit}
.home .h-buy{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin:0 0 6px}
.home .h-buy .h-price{margin:0}
.home .h-buy form{margin:0}
.home .h-points-list{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:1fr}
.home .h-points-list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;padding:18px 20px}
.home .h-points-list b{display:block;font-size:17px;font-weight:800;margin:0 0 4px}
.home .h-points-list span{color:var(--color-muted);font-size:15px;line-height:1.45}
.home .h-others{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.home .h-others li{border:1.5px solid var(--color-border);border-radius:999px;padding:10px 18px;background:var(--color-surface)}
.home .h-others a{font-weight:700;text-decoration:none;color:var(--color-text)}
.home .h-others a:hover{color:var(--color-accent-text)}
.home .h-others span{color:var(--color-muted);margin-left:6px}
@media (min-width:768px){.home .h-points-list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home .h-foot-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.3fr)}}
