/* Brand v2 visual layer. Rules style existing SSR components; no DOM or behavior changes. */
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{font-family:var(--sans);color:var(--ink);background:#fff;line-height:1.6}
.container{max-width:1280px;padding-inline:clamp(16px,3vw,32px)}

/* Consistent display type across home, catalog, product, repair and contact templates. */
h1,h2,h3{font-family:var(--sans);color:var(--neutral-900);text-wrap:pretty}
.fc-hero h1,.fb-l h1{font-size:var(--type-display);line-height:1.02;letter-spacing:-.055em;font-weight:800;max-width:none}
.catalog-page .cat-head h1,.svc-hero-h1,.cn-head h1,.pdp h1,.product-title{font-size:var(--type-h1);line-height:1.08;letter-spacing:-.045em;font-weight:760}
.fc-cats-h h2,.catalog-page .ksecs-h,.svc-section h2,.cn-section h2{font-size:var(--type-h2);line-height:1.16;letter-spacing:-.035em;font-weight:750}
p{line-height:1.65}

/* Red remains reserved for primary actions; secondary actions use quiet neutral surfaces. */
.fc-btn.primary,.svc-hbtn.primary,.cb-send,.pcta .add,.cart-foot .send,.mbar-lead,.empty-lead .el-cta,
.pdp .buy,.pdp .btn-buy,.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.fc-btn.primary:hover,.svc-hbtn.primary:hover,.cb-send:hover,.pcta .add:hover,.cart-foot .send:hover,
.mbar-lead:hover,.empty-lead .el-cta:hover,.pdp .buy:hover,.pdp .btn-buy:hover,.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.head .wa{background:var(--neutral-900);color:#fff}
.head .wa:hover{background:var(--neutral-700)}
.mbar-wa,.mcta-b.wa{color:var(--whatsapp)}
.fc-btn,.svc-hbtn,.cb-btn,.cart button,.pcta button{min-height:44px;border-radius:var(--radius-sm);font-weight:650;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.fc-btn.primary,.svc-hbtn.primary,.cb-send,.pcta .add,.cart-foot .send{box-shadow:0 7px 18px rgba(169,19,26,.18)}
.fc-btn.primary:hover,.svc-hbtn.primary:hover,.cb-send:hover,.pcta .add:hover,.cart-foot .send:hover{transform:translateY(-1px);box-shadow:0 11px 24px rgba(169,19,26,.23)}
.fc-btn:focus-visible,.svc-hbtn:focus-visible,.cb-btn:focus-visible,.pcta button:focus-visible,.cart button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}

/* Header and navigation remain compact, readable and usable with existing handlers. */
.site{background:rgba(255,255,255,.96);backdrop-filter:saturate(150%) blur(14px)}
.head .container{gap:clamp(12px,1.8vw,24px);min-height:76px;padding-block:12px}
.head .container>.logo img{max-height:42px!important}
.head .search{background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:var(--radius-sm)}
.head .search:focus-within{border-color:var(--focus-ring);outline:3px solid rgba(37,99,235,.18)}
.head .search button{background:var(--neutral-900);border-radius:6px}
.head .phone{font-size:15px;letter-spacing:-.02em}
.navbar,.catnav{border-color:var(--neutral-200)}
.nav,.catnav-row{min-height:48px}
.nav a,.nav button,.catnav a{border-radius:8px;font-weight:600;transition:background-color .16s ease,color .16s ease}
.nav .cat-btn{background:var(--neutral-900);border-radius:8px}
.nav .cat-btn:hover{background:var(--neutral-700)}
.mega{border-radius:var(--radius-lg);box-shadow:var(--shadow-3)}

/* Banner surfaces retain their original artwork and text while gaining one visual frame. */
.fc-hero{padding-block:clamp(24px,4vw,52px) 12px}
.fc-banner{border:1px solid var(--neutral-200);border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(135deg,#f7f8fa 0%,#eef1f5 100%);box-shadow:var(--shadow-1)}
.fb-l{padding:clamp(28px,4vw,64px)}
.fb-l h1{margin-bottom:22px}
.fb-l h1 em{color:var(--accent)}
.fb-l>p{font-size:var(--type-body);max-width:44ch;color:var(--neutral-600)}
.fb-promo{background:linear-gradient(145deg,#eceff3,#f7f8fa)}
.fb-promo .promo-slide{border:1px solid rgba(220,225,232,.9);border-radius:var(--radius-md);box-shadow:var(--shadow-2)}
.promo-badge{font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}
.promo-h{letter-spacing:-.04em;line-height:1.08}
.fc-usp{border-color:var(--neutral-200)}
.fc-usp .u{padding-inline:20px}

/* Shared card, field, category and repair components. */
.fc-cat,.pcard,.catalog-page .ksec,.svc-card,.cn-card,.kbymodel,.ctree,.faq details{
  border-radius:var(--radius-md);border-color:var(--neutral-200);box-shadow:var(--shadow-1);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease
}
.fc-cat:not(.repair):hover,.pcard:hover,.catalog-page .ksec:hover,.svc-card:hover,.cn-card:hover{
  transform:translateY(-2px);border-color:var(--neutral-300);box-shadow:var(--shadow-2)
}
.fc-cat.repair{background:var(--neutral-900)}
.fc-cat.repair .rbtn{background:#fff;color:var(--neutral-900)}
.pcard{overflow:hidden;background:#fff}
.pcard .pimg{background:linear-gradient(145deg,#f7f8fa,#eef1f5)}
.pbody .pb-price b,.ltab .lt-price{font-variant-numeric:tabular-nums;letter-spacing:-.025em}
.catalog-page .ksec .kic{background:var(--brand-50);color:var(--accent);border-radius:10px}
.catalog-page .ksec:hover .kic{background:var(--brand-100);color:var(--accent)}
.svc-hero{border-radius:var(--radius-lg);box-shadow:var(--shadow-2)}
.svc-hero-h1{max-width:18ch}
.svc-hero-cta{gap:12px}
.svc-hbtn.primary{background:var(--accent);border-color:var(--accent)}
.cn-card{padding:20px;background:#fff}
.search input,.catalog-page input,.cb-form input:not([type=checkbox]),.cb-form select,.cart-foot input,.cart-foot textarea{
  border-radius:var(--radius-sm);border-color:var(--neutral-300);font:inherit
}
.search input:focus,.catalog-page input:focus,.cb-form input:focus,.cb-form select:focus,.cart-foot input:focus,.cart-foot textarea:focus{outline:3px solid rgba(37,99,235,.18);border-color:var(--focus-ring)}
.badge.hit,.flag.fp{background:var(--brand-700);color:#fff}
.faq details{background:#fff}
.svg-ic,.fc-svg,.catalog-device-icon,.catalog-link-arrow{stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75}

/* Subtle brand texture: CSS only, no extra image request or layout dependency. */
.fc-banner:before{content:"";position:absolute;inset:0 auto auto 45%;width:46%;height:100%;pointer-events:none;background:radial-gradient(ellipse at 75% 30%,rgba(224,33,40,.075),transparent 52%);z-index:0}
.fc-banner{position:relative;isolation:isolate}
.fc-banner>*{position:relative;z-index:1}
.fc-banner:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(rgba(32,38,49,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(32,38,49,.045) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(90deg,transparent 36%,#000 100%);z-index:0}

@media(max-width:900px){
  .head .container{min-height:68px}
  .fc-banner:before{left:0;width:100%}
  .fc-banner:after{background-size:32px 32px}
}
@media(max-width:560px){
  html{scroll-padding-top:76px}
  .head .container>.logo img{max-height:36px!important}
  .fc-banner{border-radius:var(--radius-md)}
  .fb-l{padding:28px 22px}
  .fb-l h1{font-size:clamp(2rem,8.5vw,2.5rem);max-width:none;letter-spacing:-.05em}
  .fc-btn.primary,.svc-hbtn.primary,.cb-send{min-height:48px}
  .fc-usp .u{padding-inline:4px}
  .catalog-page .cat-head h1{font-size:var(--type-h1)}
  .catalog-page .ksec{border-radius:var(--radius-sm)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .fc-cat,.pcard,.catalog-page .ksec,.svc-card,.cn-card,.fc-btn,.svc-hbtn,.cb-btn,.cart button,.pcta button{transition:none}
  .fc-cat:not(.repair):hover,.pcard:hover,.catalog-page .ksec:hover,.svc-card:hover,.cn-card:hover,.fc-btn.primary:hover,.svc-hbtn.primary:hover,.cb-send:hover,.pcta .add:hover,.cart-foot .send:hover{transform:none}
}
