/* =========================================================
   PANORAMIKA — FINAL TYPOGRAPHY PASS
   Display: Golos Text (with Inter Display/system fallback)
   Interface/body: Manrope (with Inter/Segoe UI fallback)
   No layout or JS logic changes.
   ========================================================= */
:root{
  --font-display:"Golos Text","Inter Display","Segoe UI Variable Display","Segoe UI",Arial,sans-serif;
  --font-ui:"Manrope",Inter,"Segoe UI Variable Text","Segoe UI",Arial,sans-serif;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body,input,select,textarea,button{font-family:var(--font-ui)!important}
body{
  font-weight:450;
  letter-spacing:-.006em;
  font-synthesis:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Editorial / architectural display type. */
h1,h2,h3,h4,
.hero-copy h1,.page-hero h1,.catalog-hero-copy h1,.product-detail-page h1,
.price,.price-strong,.calc-price,.product-price,.hero-photo-price strong,
.pro-teaser h2,.consultation-card h2,.v47-review-title{
  font-family:var(--font-display)!important;
  font-synthesis:none;
  text-wrap:balance;
}
h1,.hero-copy h1,.page-hero h1,.catalog-hero-copy h1,.product-detail-page h1{
  font-weight:760!important;
  letter-spacing:-.052em!important;
  line-height:.98!important;
}
h2,.pro-teaser h2,.consultation-card h2{
  font-weight:720!important;
  letter-spacing:-.042em!important;
  line-height:1.03!important;
}
h3{font-weight:690!important;letter-spacing:-.03em!important;line-height:1.12!important}
h4{font-weight:670!important;letter-spacing:-.02em!important}

/* Interface typography stays calm and precise. */
.nav a,.btn,.mobile-menu a,.live-mode-btn,.calc-view-btn,.calc-choice label,
.catalog-quick-chips button,.faq-q,.product-buy-actions a,.product-mobile-buy .btn,
input,select,textarea{
  font-family:var(--font-ui)!important;
}
.nav a,.btn,.mobile-menu a,.live-mode-btn,.calc-view-btn,.catalog-quick-chips button{
  font-weight:700!important;
  letter-spacing:-.018em!important;
}
.btn{line-height:1.1!important}
.label,.kicker,.eyebrow,.shot-note,.hero-floating-badge,.catalog-count small,.product-code{
  font-family:var(--font-ui)!important;
  font-weight:750!important;
  letter-spacing:.055em!important;
  text-transform:uppercase;
}

p,.lead,.specs,.price-note,.faq-a,.notice,.product-spec-row,.footer,.form-note,
.calc-field,.calc-builder-head p,.v43-construction-description,.live-mode-note{
  font-family:var(--font-ui)!important;
  letter-spacing:-.008em;
}
p{font-weight:450}
.lead{font-weight:480;letter-spacing:-.014em}

/* Prices and dimensions should scan instantly. */
.price,.price-strong,.calc-price,.product-price,.hero-photo-price strong,.price-bar-item b,
#resultDockPrice,[id*="Price"],.product-mobile-buy b{
  font-family:var(--font-display)!important;
  font-weight:760!important;
  letter-spacing:-.035em!important;
  font-variant-numeric:tabular-nums lining-nums;
}
input[type="number"],.calc-dimension,.calc-sash-tag,.product-spec-row b,.specs b{
  font-variant-numeric:tabular-nums lining-nums;
}

/* Make long sales copy feel intentionally typeset rather than dense. */
.section-head p,.page-hero p,.catalog-hero-copy p,.product-buy-card p,.notice,.faq-a{
  line-height:1.62!important;
}
.section-head h2{max-width:840px}
.hero-copy .lead{max-width:610px}

/* Slight hierarchy adjustments after changing metrics. */
.hero-copy h1{max-width:610px}
.hero-copy .lead{margin-top:0}
.price-bar-intro b,.product-card h3,.catalog-card h3{font-family:var(--font-display)!important;font-weight:680!important;letter-spacing:-.025em!important}
.product-card .specs,.catalog-card .specs{font-size:13px;line-height:1.52}
.footer h4{font-family:var(--font-display)!important;font-weight:680!important;letter-spacing:-.015em!important}
.footer a{font-family:var(--font-ui)!important;font-weight:520}

/* Forms: more professional, less default-browser feeling. */
input,select,textarea{font-size:16px;font-weight:520;letter-spacing:-.012em}
input::placeholder,textarea::placeholder{font-weight:450;letter-spacing:-.006em}
.form-field>label,.calc-field>label{font-weight:680!important;letter-spacing:-.018em}

@media(max-width:840px){
  h1,.hero-copy h1,.page-hero h1,.catalog-hero-copy h1,.product-detail-page h1{
    letter-spacing:-.046em!important;
    line-height:1.005!important;
  }
  h2,.pro-teaser h2,.consultation-card h2{letter-spacing:-.036em!important;line-height:1.045!important}
  .lead{letter-spacing:-.011em}
}
@media(max-width:520px){
  body{letter-spacing:-.003em}
  h1,.hero-copy h1,.page-hero h1,.catalog-hero-copy h1,.product-detail-page h1{
    letter-spacing:-.041em!important;
  }
  h2{letter-spacing:-.032em!important}
  .label,.kicker,.eyebrow{letter-spacing:.045em!important}
  .btn{letter-spacing:-.015em!important}
}
