/* 0.2: shared type and responsive rules, loaded after page styles. */
@font-face{font-family:"Golos Text";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/golos-text-400.woff") format("woff")}
@font-face{font-family:"Golos Text";font-style:normal;font-weight:500;font-display:swap;src:url("assets/fonts/golos-text-500.woff") format("woff")}
@font-face{font-family:"Golos Text";font-style:normal;font-weight:600;font-display:swap;src:url("assets/fonts/golos-text-600.woff") format("woff")}
@font-face{font-family:"Golos Text";font-style:normal;font-weight:700;font-display:swap;src:url("assets/fonts/golos-text-700.woff") format("woff")}
:root{--site-font:"Golos Text","Segoe UI",Arial,sans-serif;--header-height:120px}
body,.service-page,.service-page *{font-family:var(--site-font)}
button,input,select,textarea{font-family:inherit}
html{scroll-padding-top:calc(var(--header-height) + 16px)}
[id]{scroll-margin-top:16px}
.hero-copy h1,.landing-hero__copy h1,.accent-title{letter-spacing:-.035em}
.calc-field-error{display:block;color:#a32f2a;font-size:13px;line-height:1.45;margin-top:6px}
.calc-field-error[hidden],.calc-installation-note[hidden]{display:none!important}
.calc-installation-note{font-size:13px;line-height:1.5;color:var(--muted);margin:12px 0}
.legal-check:has(.calc-field-error:not([hidden])){flex-wrap:wrap}
.legal-check>span:not(.calc-field-error){flex:1;min-width:0}
.legal-check .calc-field-error{flex-basis:100%;color:#a32f2a!important;margin-left:25px}
.mobile-nav[hidden]{display:none!important}
@media(max-width:1020px){
  :root{--shell:calc(100% - 32px)}
  .nav-bar__inner{grid-template-columns:minmax(0,1fr) 44px;gap:16px;min-height:64px}
  .nav,.header-actions{display:none}
  .brand img{width:160px;max-width:100%;height:auto}
  .menu-toggle{display:flex;width:44px;height:44px;justify-self:end;align-items:center;justify-content:center;flex-direction:column;gap:7px;border:0;background:transparent}
  .menu-toggle span{width:22px;height:2px;background:var(--ink)}
  .mobile-nav.is-open{display:grid;max-height:calc(100dvh - var(--header-height) - 16px);overflow-y:auto;overscroll-behavior:contain;padding:8px 16px 20px;background:#fff;border-top:1px solid var(--line)}
  .mobile-nav>a,.mobile-nav summary{display:flex;align-items:center;min-height:44px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px;font-weight:500;list-style:none}
  .mobile-nav summary::after{content:"+";margin-left:auto;font-size:22px}
  .mobile-nav details[open]>summary::after{content:"−"}
  .mobile-nav details>a{display:flex;align-items:center;min-height:44px;padding:10px 12px;font-size:14px;line-height:1.4}
  .mobile-nav__cta{margin-top:12px;padding:12px!important;background:var(--lime);border:0!important}
}
@media(max-width:860px){
  .hero-grid,.landing-hero .landing-hero__grid,.landing-page--entrance .entrance-hero .landing-hero__grid,.landing-page--canopy .canopy-hero .landing-hero__grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .hero-grid>*,.landing-hero__grid>*{min-width:0}
  .hero{padding:30px 0 48px}
  .hero-copy h1{font-size:48px;line-height:1.08}
  .hero-photo{height:420px}
  .hero-actions{display:flex;flex-wrap:wrap}
  .hero-proof{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mobile-estimate{min-height:48px;bottom:calc(10px + env(safe-area-inset-bottom));left:12px;right:12px}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .max-float{bottom:calc(78px + env(safe-area-inset-bottom));right:12px}
  body.is-editing-form .max-float,body.is-editing-form .mobile-estimate,body.has-active-calculator .max-float,body.has-open-menu .max-float,body.has-open-menu .mobile-estimate,body.has-cookie-notice .max-float,body.has-cookie-notice .mobile-estimate,.lead-popover-open .max-float,.lead-popover-open .mobile-estimate{display:none!important}
  .cookie-dialog{bottom:calc(10px + env(safe-area-inset-bottom))}
  .lead-popover__panel{max-height:calc(100dvh - 32px);padding:28px 20px}
}
@media(max-width:620px){
  :root{--shell:calc(100% - 32px)}
  .contact-strip__inner{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:8px;min-height:40px;padding:0;font-size:12px;white-space:nowrap;overflow:visible}
  .contact-strip__inner>a{display:inline-flex;align-items:center;min-height:40px}
  .contact-strip__inner>a[href^="mailto:"]{display:none}
  .contact-strip__inner .messenger{gap:5px;font-size:12px}
  .contact-strip__inner .messenger svg{width:14px;height:14px}
  .contact-strip .messenger-logo--max{height:15px!important;max-width:20px}
  body :is(.hero-copy h1,.landing-hero__copy h1,.project-catalog-hero__copy h1,.contact-intro h1,.project-detail-hero h1){font-size:clamp(32px,8.6vw,42px)!important;line-height:1.1!important;letter-spacing:-.025em!important;max-width:100%;overflow-wrap:normal;word-break:normal;text-wrap:balance}
  .landing-page--entrance .landing-hero__copy h1 span{white-space:normal}
  body .accent-title{font-size:clamp(27px,7vw,34px)!important;line-height:1.15!important;letter-spacing:-.025em!important;overflow-wrap:normal}
  .hero-copy>p,.landing-hero__copy>p{font-size:16px;line-height:1.6}
  .section{padding:52px 0}
  .section-head{margin-bottom:26px}
  .hero-photo,.landing-hero__media{height:340px}
  .hero-actions,.landing-hero__actions{display:grid;grid-template-columns:minmax(0,1fr)}
  .hero-actions .button,.landing-hero__actions .button{min-width:0;white-space:normal}
  .hero-proof>div{padding:10px 8px}.hero-proof strong{font-size:15px}.hero-proof span{font-size:11px}
  .hero-offers{max-width:calc(100% - 24px);gap:6px;right:12px;top:12px}
  .hero-offers .hero-chip{font-size:11px;min-height:30px;padding:6px 9px}
  .breadcrumbs{flex-wrap:wrap;line-height:1.5;font-size:12px}
  .button{font-size:14px;line-height:1.25;min-height:46px}
  .section p,.office-type p,.service-project p,.article-card p{font-size:15px;line-height:1.6}
  .solution-row h3,.office-type h3{font-size:21px;line-height:1.25}
  .footer .footer-links a{font-size:14px;min-height:44px}
  .footer .footer-links>div{font-size:12px}
  .footer .footer-phone{font-size:22px!important}
  .legal-links{font-size:12px;line-height:1.6}
  .mount-process-gallery{display:grid;grid-template-columns:minmax(0,1fr);height:auto;gap:14px;overflow:visible}
  .mount-process-gallery .mount-process-gallery__item,.mount-process-gallery .mount-process-gallery__item.is-active{height:240px;min-width:0;width:100%;flex:none}
  .mount-process-gallery__item span{font-size:15px;line-height:1.4;left:14px;right:14px}
  input:not([type="checkbox"]):not([type="radio"]),textarea,select{font-size:16px!important;max-width:100%}
  .bottom-request-form input,.bottom-request-form textarea{font-size:16px!important}
  .project-calc__intro h3,.project-calc__result>h3{font-size:25px!important;line-height:1.2!important}
  .calc-result__price{font-size:clamp(28px,8.5vw,38px)!important;line-height:1.15!important;letter-spacing:-.025em}
  .calc-result__price[data-locked=true]{font-size:19px!important;line-height:1.5!important}
  .calc-result__config span{font-size:12px;min-height:30px}
  .calc-result__contact label>span,.bottom-request-form label>span,.calc-choice-head strong{font-size:14px!important}
  .calc-choice-row button,.calc-size-mode button{font-size:14px;min-height:46px}
  .calc-toggle strong{font-size:14px}
  .calc-result__back-row{align-items:stretch;gap:10px;flex-wrap:wrap}
  .calc-result__back-row .calc-result__reveal{flex:1;min-width:180px;font-size:14px}
  .legal-check,.legal-check span{font-size:13px!important;line-height:1.5!important}
  .calc-dimensions--sanitary{grid-template-columns:minmax(0,1fr)!important}
  .calc-dimensions--sanitary>.calc-field,.calc-dimensions--sanitary>.calc-area-readout{grid-column:1/-1}
  .project-estimate__compact,.entrance-estimate__compact,.canopy-estimate__compact{grid-template-columns:minmax(0,1fr)!important}
}
