@font-face { font-family:'Snaga Display'; src:url('fonts/SnagaDisplay-Regular.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Snaga Display'; src:url('fonts/SnagaDisplay-Medium.woff2') format('woff2'); font-weight:500; font-style:normal; font-display:swap; }
@font-face { font-family:'Snaga Display'; src:url('fonts/SnagaDisplay-Semibold.woff2') format('woff2'); font-weight:600; font-style:normal; font-display:swap; }
@font-face { font-family:'Snaga Display'; src:url('fonts/SnagaDisplay-Italic.woff2') format('woff2'); font-weight:400; font-style:italic; font-display:swap; }

:root{
    --ink:#1E2060;
    --ink-soft:#3A3C7A;
    --paper:#F7F7FB;
    --white:#FFFFFF;
    --blue:#5982FF;
    --orange:#FF9A52;
    --purple:#B98AFF;
    --green:#22C55E;
    --pink:#EF4580;
    --border:#DEDEEB;
    --muted:#63637C;
    --muted-soft:#8A8AA3;
    --radius-sm:12px;
    --radius-md:18px;
    --radius-lg:28px;
    --shadow-off:6px 6px 0 0;
    --shadow-blue:  0 3px 8px rgba(30,32,96,0.10);
    --shadow-orange:0 3px 8px rgba(30,32,96,0.10);
    --shadow-purple:0 3px 8px rgba(30,32,96,0.10);
    --shadow-green: 0 3px 8px rgba(30,32,96,0.10);
    --shadow-neutral:0 3px 8px rgba(30,32,96,0.10);
    --wrap:1180px;
  }
@media (min-width:1440px){ :root{ --wrap:1320px; } }
@media (min-width:1760px){ :root{ --wrap:1440px; } }
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
    font-family:'Snaga Display',-apple-system,BlinkMacSystemFont,sans-serif;
    background:var(--paper);
    color:var(--ink);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
h1,h2,h3,h4,.display{
    font-family:'Snaga Display',sans-serif;
    font-weight:700;
    letter-spacing:-0.01em;
    color:var(--ink);
  }
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
ul{list-style:none;}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px;}
.eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-size:12.5px;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;
    color:var(--ink-soft);
  }
.eyebrow::before{content:"";width:18px;height:2px;background:var(--blue);display:inline-block;border-radius:2px;}
section{padding:86px 0;}
@media (max-width:720px){section{padding:54px 0;}}
.audience-actions-sec{padding:82px 0 86px;}
@media (max-width:720px){.audience-actions-sec{padding:54px 0;}}
@media (min-width:1440px){
    section{padding:108px 0;}
    body{font-size:16.5px;}
  }
/* ---------- Buttons ---------- */
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-family:'Snaga Display',sans-serif;font-weight:800;font-size:15px;
    padding:15px 26px;border-radius:999px;border:1.5px solid var(--ink);
    cursor:pointer;transition:transform .15s ease, box-shadow .15s ease;
    white-space:nowrap;
  }
.btn-primary{background:var(--ink);color:var(--white);box-shadow:var(--shadow-blue);}
.btn-primary:hover{transform:translate(-2px,-2px);box-shadow:0 10px 20px rgba(30,32,96,0.18), 0 3px 8px rgba(30,32,96,0.10);}
.btn-ghost{background:var(--white);color:var(--ink);box-shadow:var(--shadow-neutral);}
.btn-ghost:hover{transform:translate(-2px,-2px);box-shadow:0 10px 20px rgba(30,32,96,0.18), 0 3px 8px rgba(30,32,96,0.10);}
.btn-sm{padding:10px 18px;font-size:13.5px;border-radius:999px;}
.btn-green{background:var(--green);color:#06301A;border-color:var(--green);box-shadow:var(--shadow-off) #14532D;}
.btn-green:hover{transform:translate(-2px,-2px);box-shadow:0 10px 20px rgba(30,32,96,0.18), 0 3px 8px rgba(30,32,96,0.10);}
.link-arrow{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:14px;color:var(--ink);}
.link-arrow svg{width:14px;height:14px;transition:transform .15s ease;}
.link-arrow:hover svg{transform:translateX(3px);}
/* ---------- Header ---------- */
  header{
    position:sticky;top:0;z-index:50;
    background:rgba(247,247,251,0.9);backdrop-filter:blur(10px);
    border-bottom:1.5px solid var(--border);
  }
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:16px;padding-bottom:16px;}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.brand-mark{position:relative;width:34px;height:34px;flex:none;}
.brand-mark svg{width:100%;height:100%;}
.brand-logo-img{height:38px;width:auto;display:block;flex:none;}
.brand-fallback{display:none;align-items:center;gap:10px;}
.logo-chip{
    background:#fff;border-radius:9px;padding:6px 10px;display:inline-flex;align-items:center;
    justify-content:center;flex:none;
  }
.foot-brand .logo-chip{background:transparent;padding:0;border-radius:0;}
.brand-word{font-family:'Snaga Display',sans-serif;font-weight:700;font-size:18px;line-height:1.05;}
.brand-word small{display:block;font-size:11px;font-weight:600;letter-spacing:0.02em;color:var(--muted);text-transform:none;}
nav.main-nav{display:flex;align-items:center;gap:2px;flex-shrink:0;}
nav.main-nav > .nav-item{position:relative;}
nav.main-nav a.top-link{
    display:flex;align-items:center;gap:5px;
    padding:10px 12px;border-radius:999px;font-weight:700;font-size:13.5px;color:var(--ink-soft);
    transition:background .15s ease,color .15s ease;white-space:nowrap;
  }
nav.main-nav a.top-link:hover{background:var(--white);color:var(--ink);box-shadow:0 0 0 1.5px var(--border);}
nav.main-nav a.top-link svg{width:12px;height:12px;transition:transform .15s ease;}
/* The production font (Snaga Display) renders nav-row text noticeably
   wider than the design system's fallback fonts used during earlier
   testing. At 1440-1759px (--wrap:1320px — a very common laptop/monitor
   width band) the full desktop menu + nav-actions no longer both fit with
   the real font, short by roughly 20px. Rather than hiding the full menu
   for this whole common range, tighten nav-row/main-nav/nav-actions
   spacing here to reclaim the room without hiding anything. Verified with
   the real Snaga Display font files to close the gap with margin to
   spare (~30px), so it should hold even with normal cross-browser font
   rendering variance. */
@media (min-width:1440px) and (max-width:1759px){
  nav.main-nav{gap:0;}
  nav.main-nav a.top-link{padding:10px 9px;}
  .nav-row{gap:14px;}
  .nav-actions{gap:7px;}
}
nav.main-nav .nav-item:hover a.top-link svg, nav.main-nav .nav-item.mega-open a.top-link svg{transform:rotate(180deg);}
/* Desktop mega-menu (hover-revealed, pointer devices only) */
  .mega{
    position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(0);padding-top:14px;margin-top:0;
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .15s ease, visibility .15s;
    z-index:60;
  }
.mega-panel{
    background:var(--white);border:1.5px solid var(--ink);border-radius:16px;
    box-shadow:var(--shadow-blue);
    padding:22px;display:grid;grid-template-columns:repeat(2,1fr);gap:6px 28px;
    min-width:520px;
  }
.mega.mega-narrow .mega-panel{min-width:300px;grid-template-columns:1fr;}
.mega a{
    display:block;padding:8px 10px;border-radius:8px;font-size:13.5px;font-weight:700;color:var(--ink-soft);
    transition:background .12s ease,color .12s ease;
  }
.mega a:hover{background:var(--paper);color:var(--ink);}
.mega-group-header{grid-column:1/-1;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-soft);padding:10px 10px 4px;margin-top:2px;}
.mega-group-header:first-child{margin-top:0;padding-top:0;}
.mega-group-header.mega-group-sep{border-top:1.5px dashed var(--border);padding-top:14px;margin-top:8px;}
.mega-foot{
    grid-column:1/-1;margin-top:8px;padding-top:14px;border-top:1.5px dashed var(--border);
    display:flex;justify-content:space-between;align-items:center;gap:12px;
  }
.mega-foot span{font-size:12px;color:var(--muted-soft);font-weight:700;}
.mega-foot .link-arrow{display:inline-flex;flex:none;white-space:nowrap;}
/* JS-controlled state (see script at bottom) replaces pure :hover — a pure
     CSS :hover approach flickers between tightly-packed nav items when a wide
     centered dropdown overhangs into a neighboring item's hover zone, which
     was causing clicks to intermittently miss the submenu and hit the parent
     link instead. The .mega-open class below is set/cleared with a grace
     period in JS so brief cursor gaps no longer close the menu prematurely. */
  @media (hover:hover) and (min-width:1440px){
    .nav-item.mega-open .mega{opacity:1;visibility:visible;pointer-events:auto;}
  }
@media (max-width:1439px){ .mega{display:none;} }
.nav-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.pill-retail{
    display:flex;align-items:center;gap:8px;padding:8px 14px 8px 8px;border-radius:999px;
    background:var(--white);border:1.5px solid var(--border);font-size:13px;font-weight:700;color:var(--muted);
  }
.pill-retail .dot{width:8px;height:8px;border-radius:50%;background:var(--green);flex:none;}
.pill-retail b{color:var(--ink);}
.nav-mini-link{font-size:12.5px;font-weight:700;color:var(--muted-soft);white-space:nowrap;padding:8px 4px;}
.nav-mini-link:hover{color:var(--ink);}
.nav-search-btn{
    display:inline-flex;align-items:center;gap:5px;background:none;border:none;cursor:pointer;
    font-family:inherit;font-size:12.5px;font-weight:700;color:var(--muted-soft);white-space:nowrap;
    padding:8px 4px;-webkit-tap-highlight-color:transparent;
  }
.nav-search-btn svg{width:18px;height:18px;flex:none;}
.nav-search-btn:hover{color:var(--ink);}
.nav-search-btn .btn-label{display:none;}
/* Pill-style header button — same visual treatment as nav.main-nav a.top-link
   (Контакти), but usable outside .main-nav (e.g. search button, claim link
   in .nav-actions). Two-class selector keeps specificity above the plain
   .nav-search-btn / .nav-mini-link rules above so it wins without reordering. */
.nav-actions .nav-pill-btn{
    display:inline-flex;align-items:center;gap:5px;background:none;border:none;cursor:pointer;
    font-family:inherit;padding:10px 12px;border-radius:999px;font-weight:700;font-size:13.5px;
    color:var(--ink-soft);white-space:nowrap;transition:background .15s ease,color .15s ease;
    -webkit-tap-highlight-color:transparent;
  }
.nav-actions .nav-pill-btn svg{width:18px;height:18px;flex:none;}
.nav-actions .nav-pill-btn:hover{background:var(--white);color:var(--ink);box-shadow:0 0 0 1.5px var(--border);}
@media (max-width:1439px){
    .nav-actions .nav-pill-btn{padding:11px;margin:-11px -4px -11px 0;}
  }
.burger{display:block;background:none;border:none;cursor:pointer;padding:13px;margin:-13px -13px -13px 0;border-radius:12px;-webkit-tap-highlight-color:transparent;}
.burger:active{background:var(--paper);}
.burger span{display:block;width:24px;height:2.5px;background:var(--ink);margin:5.5px 0;border-radius:2px;}
@media (max-width:1439px){
    nav.main-nav{display:none;}
    .nav-mini-link{display:none;}
    .pill-retail span.txt{display:none;}
    .burger{display:block;}
    .nav-search-btn{
      padding:11px;margin:-11px -4px -11px 0;border-radius:12px;
    }
    .nav-search-btn:active{background:var(--paper);}
    .nav-search-btn .btn-label{display:none;}
    .nav-search-btn svg{width:19px;height:19px;}
  }
@media (max-width:640px){
    .nav-actions .btn-primary.btn-sm{display:none;}
    /* .nav-actions .nav-pill-btn{display:inline-flex} has higher specificity
       than a plain .nav-mini-link{display:none} would, so it must be hidden
       explicitly here — при щета трябва да се крие на СЪЩИЯ breakpoint като
       "Личен профил" (виждат се или изчезват заедно), не по-рано. */
    .nav-actions .nav-mini-link.nav-pill-btn{display:none;}
  }
/* Narrow phones (iPhone 5/5s/SE 1st gen at 320px, and the very common
   360px-wide Android devices — Galaxy S/Pixel families etc.): at these
   widths the brand lockup (logo + two-line wordmark) plus the remaining
   nav-actions cluster (language switch + search + drawer burger) no longer
   both fit inside .wrap's content width. Below ~320px this forces actual
   horizontal page overflow (the burger gets pushed past the viewport
   edge); in the ~360-366px sliver just above that it still fits but with
   no slack left for justify-content:space-between to push nav-actions
   flush to the right, so the burger lands a few px short of where the
   cards below align. Shrinking the brand lockup and tightening the header
   gaps here reclaims enough width to fix both. Verified with no horizontal
   overflow and correct header/card alignment down to 320px — the smallest
   width among real, currently-supported phones. Devices ≥375px are already
   unaffected without this block. */
@media (max-width:374px){
    .nav-row{gap:12px;}
    .nav-actions{gap:6px;}
    .brand{gap:8px;}
    .brand-logo-img{height:28px;}
    .brand-mark{width:26px;height:26px;}
    .brand-word{font-size:14px;}
    .brand-word small{font-size:9px;}
  }
/* ---------- Hero ---------- */
  .hero{padding:0 0 36px;overflow-x:clip;}
.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.04;margin:18px 0 22px;}
.hero h1 em{font-style:normal;color:var(--blue);}
.hero p.lead{font-size:21.6px;line-height:1.25;color:var(--ink);max-width:560px;margin-bottom:32px;}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px;}

/* Lead paragraph (left) + CTA buttons (right column, starting at the site's
   horizontal midline), bottom-aligned with the last line of the text. */
.hero-lead-row{display:grid;grid-template-columns:1fr 1fr;column-gap:0;align-items:end;margin-bottom:14px;}
.hero-lead-row p.lead{margin-bottom:0;padding-right:24px;box-sizing:border-box;}
.hero-lead-row .hero-cta{margin-bottom:0;justify-content:flex-end;}
.hero-lead-copy .hero-about-link{margin-top:16px;font-size:21.6px;line-height:1.25;gap:8px;}
.hero-lead-copy .hero-about-link svg{width:20px;height:20px;}
@media (max-width:880px){
    .hero-lead-row{grid-template-columns:1fr;row-gap:20px;}
    .hero-lead-row .hero-cta{justify-content:flex-start;}
  }

/* ---- Hero quick-offer row (intro text + mini quote form + KFN/FSC license) ---- */
.hero-offer-row{display:grid;grid-template-columns:0.85fr 1.15fr;gap:48px;align-items:start;margin-top:40px;}
@media (max-width:900px){.hero-offer-row{grid-template-columns:1fr;gap:32px;}}

.hero-offer-intro{padding-top:6px;}

.hero-offer-card{background:#fff;border:1.5px solid var(--ink);border-radius:var(--radius-md);padding:22px 24px;display:flex;align-items:stretch;gap:20px;box-sizing:border-box;}
@media (max-width:720px){.hero-offer-card{flex-direction:column;padding:20px;}}

.hero-offer-form-col{flex:1;display:flex;flex-direction:column;gap:10px;min-width:0;}
.hero-offer-card .eyebrow{margin:0 0 2px;}

.hero-offer-form{display:flex;flex-direction:column;gap:8px;}
.hero-offer-fields-row{display:flex;gap:10px;}
@media (max-width:560px){.hero-offer-fields-row{flex-direction:column;}}

.hero-offer-field{display:flex;flex-direction:column;gap:3px;font-size:11.5px;font-weight:700;color:var(--muted);flex:1;}
.hero-offer-field-wide{flex:1.2;}
.hero-offer-field input,.hero-offer-field select{
    padding:10px 12px;border-radius:10px;border:1.5px solid var(--border);
    font-family:inherit;font-size:13.5px;color:var(--ink);background:#fff;width:100%;box-sizing:border-box;
  }
.hero-offer-submit{align-self:flex-start;}
.hero-note{font-size:13.5px;color:var(--muted-soft);font-weight:700;}
.hero-photo-banner{
    position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
    min-height:380px;border-radius:0;border:none;box-shadow:none;overflow:hidden;
    margin-top:0;margin-bottom:32px;
  }
.hero-photo-banner img{
    position:absolute;left:0;top:-14%;width:100%;height:128%;object-fit:cover;object-position:center 30%;
    will-change:transform;
  }
.hero-photo-banner::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(0deg, rgba(12,0,60,0.55) 10%, rgba(12,0,60,0.20) 55%, rgba(12,0,60,0.0) 100%);
  }
.hero-photo-copy{
    position:absolute;z-index:2;left:0;right:0;bottom:0;max-width:var(--wrap);margin:0 auto;
    padding:36px 24px;color:#fff;will-change:transform;
  }
.hero .eyebrow{margin:28px 0 14px;}
.hero-photo-copy .slogan-main{
    font-family:'Snaga Display',sans-serif;font-weight:700;font-size:clamp(28.8px,4.08vw,43.2px);
    line-height:1.15;margin:0 0 8px;color:#fff;position:relative;
  }
.hero-photo-copy .slogan-main em{
    font-style:normal;color:var(--orange);
  }
.slogan-accent-rule{
    display:block;width:46px;height:4px;border-radius:4px;background:var(--orange);margin-bottom:14px;
  }
.hero-photo-copy .slogan-secondary{
    font-family:'Snaga Display',sans-serif;font-weight:600;font-size:16px;color:#D7DAFF;margin:0;
  }
@media (max-width:720px){
    .hero-photo-banner{min-height:260px;}
    .hero-photo-copy{padding:24px;}
  }
/* ---------- Three main action tiles ---------- */
  .three-cta{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media (max-width:860px){.three-cta{grid-template-columns:1fr;}}
.cta-tile{
    display:flex;align-items:center;gap:16px;background:var(--white);
    border:1.5px solid var(--ink);border-radius:var(--radius-md);padding:22px 22px;
    transition:transform .15s ease, box-shadow .15s ease;
  }
.cta-tile:hover{transform:translate(-3px,-3px);}
.cta-tile-ic{
    flex:none;width:52px;height:52px;border-radius:14px;overflow:hidden;
    display:flex;align-items:center;justify-content:center;
  }
.cta-tile-ic svg{width:100%;height:100%;display:block;}
.cta-tile-txt{flex:1;}
.cta-tile-txt h3{font-size:16.5px;margin-bottom:3px;}
.cta-tile-txt p{font-size:12.5px;color:var(--muted);font-weight:600;}
.cta-tile-arrow{flex:none;width:30px;height:30px;border-radius:50%;background:var(--paper);display:flex;align-items:center;justify-content:center;transition:transform .15s ease;}
.cta-tile-arrow svg{width:15px;height:15px;}
.cta-tile:hover .cta-tile-arrow{transform:translateX(3px);}
.cta-blue{box-shadow:var(--shadow-blue);}
.cta-orange{box-shadow:var(--shadow-orange);}
.cta-green{box-shadow:var(--shadow-green);}
/* ---------- Trust bar ---------- */
  .trust-bar{padding:32px 0;border-top:1.5px solid var(--border);border-bottom:1.5px solid var(--border);}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;}
@media (max-width:720px){.trust-grid{grid-template-columns:repeat(2,1fr);}}
.trust-grid .num{font-family:'Snaga Display',sans-serif;font-weight:700;font-size:30px;color:var(--ink);}
.trust-grid .lbl{font-size:12.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:0.05em;margin-top:4px;}
/* ---------- Section headers ---------- */
  .sec-head{max-width:640px;margin-bottom:48px;}
.sec-head h2{font-size:clamp(22px,3vw,28px);margin-top:14px;line-height:1.12;}
.sec-head p{color:var(--muted);font-size:16px;margin-top:14px;}
.sec-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px;flex-wrap:wrap;}
.sec-head-row .sec-head{margin-bottom:0;}
/* ---------- Who we are ---------- */
  .about-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:56px;align-items:start;}
@media (max-width:900px){.about-grid{grid-template-columns:1fr;}}
.check-list{display:flex;flex-direction:column;gap:16px;}
.check-list li{display:flex;gap:14px;align-items:flex-start;font-size:15.5px;color:var(--ink-soft);font-weight:600;}
.check-ico{
    flex:none;width:26px;height:26px;border-radius:8px;background:var(--green);
    display:flex;align-items:center;justify-content:center;margin-top:1px;
  }
.check-ico svg{width:14px;height:14px;}
/* ---------- Sector cards (signature element) ---------- */
  .sector-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:28px 24px;
  }
@media (max-width:980px){.sector-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.sector-grid{grid-template-columns:1fr;}}
.sector-card{
    background:var(--white);border:1.5px solid var(--ink);border-radius:var(--radius-md);
    padding:24px 20px;display:flex;flex-direction:column;gap:14px;
    transition:transform .15s ease, box-shadow .15s ease;
  }
.sector-card:hover{transform:translate(-3px,-3px);}
.sector-card .ic{
    width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;
    border:1.5px solid var(--ink);
  }
.sector-card .ic svg{width:22px;height:22px;stroke:var(--ink);}
.sector-card h4{font-size:16px;line-height:1.25;}
.sector-card p{font-size:13.5px;color:var(--muted);flex:1;}
.sector-card .link-arrow{font-size:13px;margin-top:4px;}
.sc-blue{box-shadow:var(--shadow-blue);}
.sc-blue .ic{background:#EAF0FF;}
.sc-orange{box-shadow:var(--shadow-orange);}
.sc-orange .ic{background:#FFF1E6;}
.sc-purple{box-shadow:var(--shadow-purple);}
.sc-purple .ic{background:#F4EDFF;}
.sc-green{box-shadow:var(--shadow-green);}
.sc-green .ic{background:#E9FBF0;}
/* ---------- Partner programs ---------- */
  .partner-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:28px;}
@media (max-width:900px){.partner-grid{grid-template-columns:1fr;}}
.partner-main{
    background:var(--ink);color:#fff;border-radius:var(--radius-lg);padding:48px;
    display:flex;flex-direction:column;gap:20px;position:relative;overflow:hidden;
  }
@media (max-width:720px){.partner-main{padding:32px 24px;}}
.partner-main::after{
    content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;
    background:radial-gradient(circle,rgba(89,130,255,0.35),transparent 70%);
  }
.partner-main h3{color:#fff;font-size:26px;position:relative;}
.partner-main p{color:#C7CBFF;font-size:15px;position:relative;max-width:480px;}
.wing-badges{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;position:relative;}
.wing-badge{background:rgba(255,255,255,0.1);border:1.5px solid rgba(255,255,255,0.25);border-radius:14px;padding:14px 18px;min-width:120px;}
.wing-badge .n{font-family:'Snaga Display',sans-serif;font-size:22px;font-weight:700;color:#fff;}
.wing-badge .l{font-size:12px;color:#B9BBD6;font-weight:700;margin-top:2px;}
.partner-side{display:flex;flex-direction:column;gap:18px;}
.partner-card{
    background:var(--white);border:1.5px solid var(--ink);border-radius:var(--radius-md);
    padding:26px;box-shadow:var(--shadow-orange);flex:1;display:flex;flex-direction:column;gap:10px;
  }
.partner-card h4{font-size:17px;}
.partner-card p{font-size:13.5px;color:var(--muted);}
.partner-card.alt{box-shadow:var(--shadow-green);}
.insurer-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.insurer-chip{
    font-size:12.5px;font-weight:800;padding:8px 14px;border-radius:999px;background:var(--paper);
    border:1.5px solid var(--border);color:var(--ink-soft);
  }
/* ---------- Expertise ---------- */
  .expertise{background:var(--ink);border-radius:var(--radius-lg);padding:64px;color:#fff;}
@media (max-width:720px){.expertise{padding:36px 22px;}}
.expertise .eyebrow{color:#B9C0FF;}
.expertise .eyebrow::before{background:var(--orange);}
.expertise h2{color:#fff;font-size:clamp(22px,3vw,28px);}
.exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(255,255,255,0.14);border-radius:var(--radius-md);overflow:hidden;margin-top:44px;}
@media (max-width:900px){.exp-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.exp-grid{grid-template-columns:1fr;}}
.exp-item{background:var(--ink);padding:30px 26px;display:flex;flex-direction:column;gap:10px;}
.exp-item .n{font-family:'Snaga Display',sans-serif;font-size:40px;font-weight:700;color:var(--blue);}
.exp-item h4{color:#fff;font-size:16.5px;}
.exp-item p{font-size:13.5px;color:#B9BBD6;flex:1;}
.exp-item a.link-arrow{color:#9FB4FF;font-size:12.5px;}
/* ---------- Portal / profile tie-in ---------- */
  .portal{
    display:grid;grid-template-columns:1fr 1fr;gap:0;
    border:1.5px solid var(--ink);border-radius:var(--radius-lg);overflow:hidden;
    background:var(--white);
  }
@media (max-width:900px){.portal{grid-template-columns:1fr;}}
.portal-copy{padding:56px;display:flex;flex-direction:column;justify-content:center;gap:18px;min-width:0;}
@media (max-width:720px){.portal-copy{padding:36px 26px;}}
.portal-copy h2{font-size:clamp(22px,3vw,28px);}
.portal-copy p{color:var(--muted);font-size:15.5px;}
.app-chip{
    display:inline-flex;align-items:center;gap:8px;background:#EAF0FF;color:var(--ink);
    font-size:12.5px;font-weight:800;padding:7px 13px;border-radius:999px;width:fit-content;max-width:100%;
  }
.app-chip .dot{width:7px;height:7px;border-radius:50%;background:var(--blue);}
.portal-feats{display:flex;flex-direction:column;gap:12px;margin:8px 0 6px;}
.portal-feats li{display:flex;gap:10px;align-items:center;font-size:14.5px;font-weight:700;color:var(--ink-soft);}
.portal-feats li .dot{width:7px;height:7px;border-radius:50%;background:var(--blue);flex:none;}
.portal-visual{
    background:linear-gradient(160deg,#20226B,#171840);
    padding:44px;display:flex;align-items:center;justify-content:center;position:relative;min-width:0;
  }
@media (max-width:480px){.portal-visual{padding:24px;}}
.phone-mock{
    width:220px;background:#0F1130;border:6px solid #0B0C24;border-radius:34px;padding:16px 14px;
    box-shadow:0 30px 60px rgba(0,0,0,0.45);
  }
.phone-mock .pm-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}
.phone-mock .pm-logo{display:flex;align-items:center;gap:6px;}
.phone-mock .pm-logo span{color:#fff;font-family:'Snaga Display',sans-serif;font-weight:700;font-size:12px;}
.pm-card{background:#1B1D4E;border-radius:14px;padding:14px;margin-bottom:10px;border:1.5px solid #33356E;}
.pm-card .pm-tag{font-size:9.5px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:#7FA0FF;margin-bottom:6px;}
.pm-card .pm-title{color:#fff;font-size:13px;font-weight:700;margin-bottom:4px;}
.pm-card .pm-sub{color:#9497C4;font-size:11px;}
.pm-stripe{height:4px;border-radius:4px;margin-top:10px;}
.pm-webtag{
    position:absolute;bottom:20px;left:50%;transform:translateX(-50%);
    background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.2);color:#C7CBFF;
    font-size:11px;font-weight:700;padding:8px 16px;border-radius:999px;backdrop-filter:blur(6px);
    white-space:nowrap;
  }
/* ---------- Personal insurance (24ins only zone) ---------- */
  .retail-zone{
    border:1.5px solid var(--green);border-radius:var(--radius-lg);padding:48px;
    background:#F3FCF6;
  }
@media (max-width:720px){.retail-zone{padding:28px 22px;}}
.retail-zone-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;margin-bottom:36px;}
.retail-zone-head h2{font-size:clamp(22px,3vw,28px);}
.retail-24-badge{
    display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:#fff;
    padding:10px 18px;border-radius:999px;font-weight:800;font-size:13.5px;flex:none;
  }
.retail-24-badge svg{width:16px;height:16px;}
.retail-lines{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
@media (max-width:900px){.retail-lines{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.retail-lines{grid-template-columns:1fr;}}
/* #special-products sets an inline 2-col style on .retail-lines (desktop/tablet); this overrides it on phone so the 4 product cards stack instead of overflowing the viewport. */
@media (max-width:560px){#special-products .retail-lines{grid-template-columns:1fr !important;}}
.retail-line{
    background:#fff;border:1.5px solid var(--ink);border-radius:14px;padding:20px;
    display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-green);
    transition:transform .15s ease;
  }
.retail-line:hover{transform:translate(-2px,-2px);}
.retail-line .ic{width:38px;height:38px;border-radius:10px;background:#E9FBF0;display:flex;align-items:center;justify-content:center;}
#special-products .retail-line .ic{background:#F5F8FF;}
.retail-line .ic svg{width:20px;height:20px;stroke:var(--ink);}
.retail-line h4{font-size:15px;}
.retail-line span.go{font-size:12.5px;font-weight:800;color:#128A45;}
.retail-cta-row{display:flex;justify-content:center;margin-top:36px;}
/* ---------- News ---------- */
  .news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
@media (max-width:980px){.news-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.news-grid{grid-template-columns:1fr;}}
.news-card{
    background:var(--white);border:1.5px solid var(--ink);border-radius:var(--radius-md);
    padding:0;display:flex;flex-direction:column;overflow:hidden;
  }
.news-img-wrap{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--paper);flex:none;}
.news-img-wrap img{width:100%;height:100%;object-fit:cover;display:block;}
.news-card-body{padding:22px;display:flex;flex-direction:column;gap:12px;flex:1;}
.news-tag{display:inline-flex;align-self:flex-start;font-size:11px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;padding:5px 11px;border-radius:999px;}
.news-img-wrap .news-tag{position:absolute;top:12px;left:12px;z-index:2;box-shadow:0 3px 10px rgba(30,32,96,0.22);}
.nt-new{background:#EAF0FF;color:#2B4FCB;}
.nt-partner{background:#FFF1E6;color:#B5591C;}
.nt-award{background:#F4EDFF;color:#7233C9;}
.nt-analysis{background:#E9FBF0;color:#128A45;}
.nt-blog{background:#E6F7F7;color:#0E7C86;}
.nt-accent{background:#FDE8E8;color:#C81E3A;}
.nt-service{background:#FFF4D6;color:#8A6300;}
.news-date{font-size:12px;color:var(--muted-soft);font-weight:700;}
.news-card h4{font-size:16px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.news-card p{font-size:13.5px;color:var(--muted);flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
/* ---------- Locations ---------- */
  .loc-hq{
    display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch;margin-bottom:36px;
  }
@media (max-width:900px){.loc-hq{grid-template-columns:1fr;}}
.loc-card{
    background:var(--white);border:1.5px solid var(--ink);border-radius:var(--radius-md);
    padding:32px;box-shadow:var(--shadow-orange);
  }
.loc-row{display:flex;gap:14px;padding:14px 0;border-bottom:1.5px dashed var(--border);}
.loc-row:last-child{border-bottom:none;padding-bottom:0;}
.loc-row:first-child{padding-top:0;}
.loc-row .ic{flex:none;width:36px;height:36px;border-radius:10px;background:#FFF1E6;display:flex;align-items:center;justify-content:center;}
.loc-row .ic svg{width:18px;height:18px;stroke:var(--ink);}
.loc-row .t{font-size:13px;font-weight:800;color:var(--muted-soft);text-transform:uppercase;letter-spacing:0.05em;}
.loc-row .v{font-size:15px;font-weight:700;color:var(--ink);margin-top:2px;}
.loc-row a.v{display:block;transition:color .15s ease;}
.loc-row a.v:hover{color:var(--blue);}
.rep-network{
    background:var(--white);border:1.5px solid var(--ink);border-radius:var(--radius-lg);padding:36px;
  }
@media (max-width:720px){.rep-network{padding:24px 20px;}}
.rep-network h4{font-size:16.5px;margin-bottom:6px;}
.rep-network > p{font-size:13.5px;color:var(--muted);margin-bottom:22px;max-width:560px;}
.rep-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
@media (max-width:900px){.rep-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:560px){.rep-grid{grid-template-columns:repeat(2,1fr);}}
.rep-chip{
    border:1.5px solid var(--border);border-radius:12px;padding:14px 12px;text-align:center;
  }
.rep-chip .city{font-weight:800;font-size:14px;}
.rep-chip .lbl{font-size:11px;color:var(--muted-soft);font-weight:700;margin-top:2px;text-transform:uppercase;letter-spacing:0.04em;}
.rep-note{font-size:12.5px;color:var(--muted-soft);margin-top:18px;}
/* ---------- CTA band ---------- */
  .cta-band{
    background:linear-gradient(120deg,var(--ink),#2B2D80);
    border-radius:var(--radius-lg);padding:64px;text-align:center;color:#fff;
  }
@media (max-width:720px){.cta-band{padding:40px 24px;}}
.cta-band h2{color:#fff;font-size:clamp(24px,3.4vw,36px);margin-bottom:16px;}
.cta-band p{color:#C7CBFF;max-width:520px;margin:0 auto 30px;font-size:16px;}
.cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.cta-band .btn-primary{background:#fff;color:var(--ink);border-color:#fff;box-shadow:var(--shadow-orange);}
.cta-band .btn-primary:hover{box-shadow:0 10px 20px rgba(30,32,96,0.18), 0 3px 8px rgba(30,32,96,0.10);}
.cta-band .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,0.5);box-shadow:none;}
.cta-band .btn-ghost:hover{transform:none;background:rgba(255,255,255,0.08);}
/* ---------- Footer ---------- */
  footer{background:#15173F;color:#B9BBD6;padding:64px 0 28px;}
.foot-grid{display:grid;grid-template-columns:1.1fr repeat(5,1fr);gap:28px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,0.1);}
@media (max-width:1200px){.foot-grid{grid-template-columns:1.3fr repeat(2,1fr);}}
@media (max-width:980px){.foot-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.foot-grid{grid-template-columns:1fr;}}
.foot-brand .brand-word{color:#fff;}
.foot-brand .brand-word small{color:#8385B5;}
.foot-brand p{font-size:13.5px;margin-top:14px;max-width:260px;color:#9294C2;}
.foot-social{display:flex;gap:10px;margin-top:18px;}
.foot-social a{width:34px;height:34px;display:flex;align-items:center;justify-content:center;transition:transform .15s ease;}
.foot-social a:hover{transform:translateY(-2px);}
.foot-social svg{width:30px;height:30px;}
footer h5{font-size:12.5px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:#8385B5;margin-bottom:16px;}
footer ul li{margin-bottom:12px;}
footer a.f-link{font-size:14px;color:#C9CBEA;transition:color .15s ease;display:block;line-height:1.3;}
footer a.f-link:hover{color:#fff;}
footer .f-static{display:block;font-size:14px;color:#C9CBEA;font-weight:700;line-height:1.3;}
footer .f-sub{display:block;font-size:11.5px;color:#6E70A0;margin-top:6px;line-height:1.45;}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding-top:24px;font-size:12.5px;color:#7476A8;}
/* ---------- Footer: "Правна информация" (sections > documents) ---------- */
  .legal-accordion{display:flex;flex-direction:column;}
.legal-sec{border-top:1px dashed rgba(255,255,255,0.12);}
.legal-sec:first-child{border-top:none;}
.legal-sec summary{
    list-style:none;cursor:pointer;padding:11px 0;display:flex;align-items:center;
    justify-content:space-between;gap:8px;font-size:13px;font-weight:800;color:#fff;
    line-height:1.3;
  }
.legal-sec summary::-webkit-details-marker{display:none;}
.legal-sec summary .chev{flex:none;width:14px;height:14px;color:#6E70A0;transition:transform .15s ease;}
.legal-sec[open] summary .chev{transform:rotate(180deg);}
.legal-sec-body{padding:0 0 14px;}
.legal-sec-body ul{display:flex;flex-direction:column;gap:9px;}
.legal-sec-body ul li{margin-bottom:0;}
.legal-sec-body ul li a{font-size:12.5px;color:#C9CBEA;line-height:1.35;transition:color .15s ease;}
.legal-sec-body ul li a:hover{color:#fff;}
.legal-doc-pending{font-size:12.5px !important;font-weight:400 !important;color:#6E70A0 !important;cursor:default;}
/* ---------- Mobile nav drawer ---------- */
  .mobile-drawer{
    position:fixed;inset:0;background:rgba(15,17,40,0);z-index:100;
    visibility:hidden;pointer-events:none;
    transition:background .25s ease, visibility 0s linear .25s;
  }
.mobile-drawer.open{
    background:rgba(15,17,40,0.6);
    visibility:visible;pointer-events:auto;
    transition:background .25s ease, visibility 0s linear 0s;
  }
.drawer-panel{
    position:absolute;top:0;right:0;bottom:0;width:min(320px,86vw);background:var(--white);
    padding:26px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;
    transform:translateX(100%);
    transition:transform .28s cubic-bezier(.4,0,.2,1);
  }
.mobile-drawer.open .drawer-panel{transform:translateX(0);}
.drawer-panel a{padding:14px 6px;font-weight:800;font-size:16px;border-bottom:1px solid var(--border);}
@media (min-width:1440px){
  .drawer-panel a.drawer-desktop-hide{display:none;}
}
.drawer-close{align-self:flex-end;background:none;border:none;font-size:22px;cursor:pointer;padding:6px;color:var(--ink);}
/* ---------- Mobile drawer bottom: CTA button + social icons ---------- */
.drawer-bottom{margin-top:12px;padding-top:18px;display:flex;flex-direction:column;align-items:center;gap:16px;}
.drawer-bottom .btn{width:100%;border-bottom:none;}
.drawer-bottom .drawer-social{display:flex;gap:10px;border-bottom:none;padding:0;}
.drawer-bottom .drawer-social a{width:34px;height:34px;border-bottom:none;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .15s ease;}
.drawer-bottom .drawer-social a:hover{transform:translateY(-2px);}
.drawer-bottom .drawer-social svg{width:30px;height:30px;}
/* ---------- Site search overlay ---------- */
  .search-overlay{
    position:fixed;inset:0;background:rgba(15,17,40,0.55);z-index:200;
    display:none;align-items:flex-start;justify-content:center;padding:12vh 20px 20px;
  }
.search-overlay.open{display:flex;}
.search-panel{
    width:100%;max-width:600px;background:var(--white);border:1.5px solid var(--ink);
    border-radius:var(--radius-lg);box-shadow:0 30px 60px rgba(0,0,0,0.28);
    padding:22px;position:relative;
  }
.search-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:18px;cursor:pointer;color:var(--muted);padding:4px;}
.search-close:hover{color:var(--ink);}
.search-input-row{display:flex;align-items:center;gap:12px;border-bottom:2px solid var(--border);padding-bottom:14px;margin-bottom:14px;}
.search-input-row svg{width:20px;height:20px;flex:none;color:var(--muted-soft);}
.search-input-row input{
    flex:1;border:none;outline:none;font-family:'Snaga Display',sans-serif;font-size:17px;
    color:var(--ink);background:transparent;
  }
.search-input-row input::placeholder{color:var(--muted-soft);}
.search-results{min-height:60px;max-height:60vh;overflow-y:auto;}
.search-hint{font-size:13.5px;color:var(--muted-soft);}
.search-loading{font-style:italic;}
.search-group{margin-bottom:18px;}
.search-group:last-child{margin-bottom:0;}
.search-group-title{
    font-size:11px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;
    color:var(--muted-soft);margin-bottom:8px;padding-left:2px;
  }
.search-result-item{
    display:block;padding:10px 12px;border-radius:12px;transition:background .12s ease;
  }
.search-result-item:hover{background:var(--paper);}
.sr-top{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.sr-title{font-size:14.5px;font-weight:700;color:var(--ink);}
.sr-badge{
    flex:none;font-size:10.5px;font-weight:800;color:var(--ink-soft);background:var(--paper);
    border:1.5px solid var(--border);border-radius:999px;padding:2px 9px;white-space:nowrap;
  }
.sr-excerpt{font-size:12.5px;color:var(--muted);margin-top:3px;line-height:1.4;}
.search-results mark{background:#FFF1C2;color:inherit;border-radius:3px;padding:0 1px;}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease, transform .6s ease;}
.reveal.in{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion: reduce){
    .reveal{opacity:1;transform:none;transition:none;}
    html{scroll-behavior:auto;}
  }
/* ---------- Sector subpage additions ---------- */
  .crumbbar{padding:14px 0;border-bottom:1.5px solid var(--border);background:rgba(247,247,251,0.9);}
.crumbs{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--muted-soft);flex-wrap:wrap;}
.crumbs a:hover{color:var(--ink);}
.crumbs .sep{color:var(--border);}
.crumbs .current{color:var(--ink);}
.sector-hero{
    position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
    min-height:480px;border-radius:0;border:none;box-shadow:none;overflow:hidden;margin-top:0;
    display:flex;flex-direction:column;justify-content:flex-end;
  }
.sector-hero img{
    position:absolute;left:0;top:-14%;width:100%;height:128%;object-fit:cover;object-position:center 30%;
    color:transparent;font-size:0;overflow:hidden;text-indent:-9999px;will-change:transform;
  }
.sector-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(12,0,60,0.62) 8%, rgba(12,0,60,0.42) 40%, rgba(12,0,60,0.05) 100%);}
.sector-hero-copy{
    position:relative;z-index:2;max-width:var(--wrap);margin:0 auto;width:100%;
    padding:22px 24px 16px;color:#fff;will-change:transform;
  }
.sector-hero-copy .tag{display:inline-block;background:var(--orange);color:#3A1E00;font-weight:800;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:999px;margin-bottom:14px;}
.sector-hero-copy h1{font-size:clamp(28px,3.8vw,42px);color:#fff;line-height:1.15;max-width:660px;}
.sector-hero-copy p{color:#D7DAFF;font-size:15.5px;margin-top:12px;max-width:580px;}
.hero-stat-row{display:flex;gap:28px;flex-wrap:wrap;margin-top:26px;}
.hero-stat-row .hs{display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:150px;flex:none;}
.hero-stat-row .hs b{
    display:inline-flex;align-items:center;justify-content:center;
    width:78px;height:78px;aspect-ratio:1;padding:0 6px;box-sizing:border-box;
    border:1.5px solid rgba(255,255,255,0.65);border-radius:999px;background:rgba(255,255,255,0.05);
    font-family:'Snaga Display',sans-serif;font-weight:700;font-size:17px;color:#fff;
    margin-bottom:10px;flex:none;
  }
.hero-stat-row .hs span{font-size:12.5px;color:#B9BBD6;font-weight:700;line-height:1.35;}
@media (max-width:720px){
    .sector-hero{min-height:320px;}
    .sector-hero-copy{padding:16px 24px 14px;}
    .hero-stat-row{gap:8px;margin-top:20px;}
    .hero-stat-row .hs{width:93px;}
    .hero-stat-row .hs b{width:60px;height:60px;aspect-ratio:1;padding:0 4px;font-size:14.5px;margin-bottom:8px;}
    .hero-stat-row .hs span{font-size:11.5px;}
  }
/* Секцията веднага след hero снимката на sector страниците: разстоянието
   до нея е с 25% по-малко от подразбиращото се (86px section padding-top +
   40px .intro-row margin-top = 126px общо -> 94.5px общо -> тук 54.5px,
   тъй като .intro-row margin-top остава непроменен/споделен). */
section:has(.sector-hero) + section{padding-top:54.5px;}
.intro-row{display:grid;grid-template-columns:1.3fr 0.7fr;gap:44px;align-items:start;margin:40px 0;}
.intro-row>*{min-width:0;}
@media (max-width:900px){.intro-row{grid-template-columns:1fr;}}
.intro-row h2{font-size:clamp(22px,3vw,28px);}
.intro-row p{color:var(--muted);font-size:15px;}
.fact-card{background:#E7E7ED;border:none;border-radius:var(--radius-md);padding:22px;box-shadow:none;}
.fact-card h5{font-size:12.5px;color:var(--muted-soft);text-transform:uppercase;letter-spacing:.05em;margin-bottom:14px;}
.fact-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1.5px dashed var(--border);font-size:13px;}
.fact-row:last-child{border-bottom:none;padding-bottom:0;}
.fact-row .k{color:var(--muted);font-weight:700;}
.fact-row .v{font-weight:800;text-align:right;}
.cover-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media (max-width:900px){.cover-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.cover-grid{grid-template-columns:1fr;}}
.cover-card{background:#fff;border:1.5px solid var(--ink);border-radius:var(--radius-md);padding:20px;display:flex;flex-direction:column;gap:10px;transition:transform .15s ease;}
.cover-card:hover{transform:translate(-3px,-3px);}
.cover-card .ic{width:40px;height:40px;border-radius:11px;border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;}
.cover-card .ic svg{width:20px;height:20px;stroke:var(--ink);}
/* Self-contained badge icons (own bg + rounded-square shape baked into the SVG) */
.ic.ic-badge{background:none;border:none;padding:0;}
.ic.ic-badge svg{width:100%;height:100%;stroke:none;display:block;}
#special-products .retail-line .ic.ic-badge{background:none;}
.cover-card h4{font-size:15px;}
.cover-card p{font-size:12.5px;color:var(--muted);}
.subvertical-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
@media (max-width:900px){.subvertical-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.subvertical-grid{grid-template-columns:1fr;}}
.subvertical-card{background:#fff;border:1.5px solid var(--border);border-radius:14px;padding:18px;display:flex;align-items:center;gap:12px;}
.subvertical-card .dot{width:9px;height:9px;border-radius:50%;flex:none;}
.subvertical-card b{font-size:13.5px;font-weight:800;}
.process-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:36px;}
@media (max-width:820px){.process-row{grid-template-columns:1fr;gap:22px;}}
.process-step{position:relative;padding:0 18px 0 0;}
.process-step .pn{width:57.6px;height:57.6px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Snaga Display',sans-serif;font-weight:700;font-size:32.4px;margin-bottom:14px;}
.process-step h4{font-size:14.5px;margin-bottom:6px;}
.process-step p{font-size:12.5px;color:var(--muted);}
.process-step::after{content:"";position:absolute;top:28.8px;left:100%;width:18px;height:2px;background:var(--border);}
.process-step:last-child::after{display:none;}
@media (max-width:820px){.process-step::after{display:none;}}
.faq-item{border-bottom:1.5px solid var(--border);padding:18px 0;}
.faq-item summary{cursor:pointer;font-weight:800;font-size:14.5px;color:var(--ink);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;transition:color .2s ease;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-size:20px;color:var(--muted-soft);font-weight:400;flex:none;display:inline-block;transition:transform .28s cubic-bezier(.4,0,.2,1),color .2s ease;}
.faq-item[open] summary::after{content:"+";transform:rotate(45deg);color:var(--ink);}
.faq-item summary:hover::after{color:var(--ink);}
.faq-item p{display:grid !important;grid-template-rows:0fr;opacity:0;margin-top:0;overflow:hidden;font-size:13.5px;color:var(--muted);max-width:720px;transition:grid-template-rows .32s cubic-bezier(.4,0,.2,1),opacity .24s ease .02s,margin-top .32s cubic-bezier(.4,0,.2,1);}
.faq-item p>*{min-height:0;overflow:hidden;}
.faq-item[open] p{grid-template-rows:1fr;opacity:1;margin-top:12px;}
@media (prefers-reduced-motion:reduce){.faq-item p,.faq-item summary::after{transition:none;}}
.other-sectors-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;}
.other-sectors-list a{font-size:12.5px;font-weight:700;color:var(--muted-soft);background:#fff;border:1.5px solid var(--border);padding:7px 13px;border-radius:999px;}
.other-sectors-list a:hover{color:var(--ink);border-color:var(--ink);}
.sector-hero.no-photo{background:linear-gradient(135deg, var(--ink) 0%, #33357A 55%, var(--ink-soft) 100%);min-height:280px;}
.sector-hero.no-photo::after{display:none;}
.special-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media (max-width:860px){.special-grid{grid-template-columns:1fr;}}
.special-card{background:#fff;border:1.5px solid var(--ink);border-radius:var(--radius-lg);padding:30px;display:flex;flex-direction:column;gap:14px;scroll-margin-top:100px;}
/* Sticky header offset fix — предотвратява скриване на заглавието на секцията зад хедъра при anchor-scroll (напр. #locations, #news) */
#news, #locations, #legal-claims, #partners, #business, #personal, #quote, #top, #faq, #employee-benefits, #special-products{scroll-margin-top:90px;}
.special-card .tag2{display:inline-flex;align-self:flex-start;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:999px;}
.special-card ul{margin:4px 0 0;padding-left:18px;color:var(--muted);font-size:14px;line-height:1.7;}
.special-card .sc-cta{margin-top:auto;padding-top:10px;}
.special-card .ic{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;}
.special-note{font-size:12px;color:var(--muted-soft);margin-top:6px;}
.comic-strip{
    display:flex;gap:18px;overflow-x:auto;padding:8px 4px 20px;scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
.comic-strip::-webkit-scrollbar{height:8px;}
.comic-strip::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px;}
.comic-card{
    flex:none;width:220px;scroll-snap-align:start;border:1.5px solid var(--ink);border-radius:14px;
    overflow:hidden;box-shadow:var(--shadow-blue);background:#fff;
  }
.comic-card:nth-child(2){box-shadow:var(--shadow-orange);}
.comic-card:nth-child(3){box-shadow:var(--shadow-purple);}
.comic-card:nth-child(4){box-shadow:var(--shadow-green);}
.comic-card:nth-child(5){box-shadow:var(--shadow-blue);}
.comic-card:nth-child(6){box-shadow:var(--shadow-orange);}
.comic-card img{width:100%;height:auto;display:block;}
.benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media (max-width:860px){.benefit-grid{grid-template-columns:1fr;}}
.benefit-card{background:#fff;border:1.5px solid var(--ink);border-radius:var(--radius-lg);padding:30px;display:flex;flex-direction:column;gap:14px;}
.benefit-card .tag2{display:inline-flex;align-self:flex-start;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:999px;}
.benefit-card ul{margin:4px 0 0;padding-left:18px;color:var(--muted);font-size:14px;line-height:1.7;}
.benefit-card .bc-cta{margin-top:auto;padding-top:10px;}
h1,h2{font-family:'Snaga Display',sans-serif;font-weight:700;color:var(--ink);}
.topbar{padding:16px 0;border-bottom:1.5px solid var(--border);background:rgba(247,247,251,0.9);}
.doc-card{background:#fff;border:1.5px solid var(--ink);border-radius:var(--radius-md);padding:36px 40px;box-shadow:0 6px 14px rgba(30,32,96,0.10), 0 2px 5px rgba(30,32,96,0.06);}
@media (max-width:600px){.doc-card{padding:26px 22px;}}
.doc-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted-soft);}
.doc-eyebrow::before{content:"";width:16px;height:2px;background:var(--blue);display:inline-block;border-radius:2px;}
h1.doc-title{font-size:clamp(24px,3.2vw,32px);margin:14px 0 8px;line-height:1.2;}
.doc-subtitle{color:var(--muted);font-size:15.5px;margin-bottom:28px;}
.doc-body{font-size:15px;color:#33345A;white-space:pre-wrap;}
.doc-body p{margin:0 0 16px;}
.no-text-note{background:var(--paper);border:1.5px dashed var(--border);border-radius:14px;padding:20px 22px;font-size:14px;color:var(--muted);margin-top:6px;}
.no-text-note a{color:var(--ink);font-weight:800;text-decoration:underline;}
.back-link{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:13.5px;color:var(--ink);margin-top:28px;text-decoration:none;}
.back-link svg{width:16px;height:16px;}
.loading{color:var(--muted-soft);font-size:14px;padding:40px 0;text-align:center;}
/* +70% vs previous 18px */
  .map-pin .city-lbl{
    position:absolute;left:100%;top:50%;transform:translateY(-50%);
    margin-left:-3px;white-space:nowrap;
    background:rgba(255,255,255,0.92);border:1px solid rgba(30,32,96,0.12);
    border-radius:20px;padding:4px 11px;box-shadow:0 2px 6px rgba(30,32,96,0.12);
    font-size:10.5px;font-weight:800;color:var(--ink);font-family:'Snaga Display',sans-serif;
    transition:background .15s ease,box-shadow .15s ease;
  }
/* +70% vs previous 18px */
  .map-pin.is-new .city-lbl{color:var(--blue);}
.map-pin.is-central{z-index:50;}
/* pins with a "Централен офис" row sit above regular pins by default */
  .map-pin:hover{z-index:999 !important;}
.map-pin:hover img{transform:scale(1.08);}
.map-pin:hover .city-lbl{background:#fff;box-shadow:0 6px 14px rgba(30,32,96,0.28);}
.map-note{font-size:11px;color:var(--muted-soft);margin-top:8px;}
.rep-card[open]{border-color:var(--ink);}
.rep-card summary{
    list-style:none;cursor:pointer;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;
  }
.rep-card summary::-webkit-details-marker{display:none;}
.rep-card summary .city{font-weight:800;font-size:14px;}
.rep-card summary .lbl{font-size:11px;color:var(--muted-soft);font-weight:700;margin-top:2px;text-transform:uppercase;letter-spacing:0.04em;display:block;}
.rep-card summary .chev{flex:none;width:18px;height:18px;color:var(--muted-soft);transition:transform .15s ease;}
.rep-card[open] summary .chev{transform:rotate(180deg);}
.rep-card-body{padding:0 16px 16px;font-size:12.5px;color:var(--muted);border-top:1px dashed var(--border);margin:0 16px;padding-top:12px;}
.rep-addr-row span{flex:1;}
.addr-line{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--muted);line-height:1.3;}
.addr-line.addr-main{color:var(--muted);font-weight:400;}
.addr-name{display:block;font-size:13.5px;font-weight:800;color:var(--ink);line-height:1.3;margin-bottom:1px;}
.addr-line svg{flex:none;width:13px;height:13px;color:var(--muted-soft);}
.rep-card-body a.addr-line{color:var(--muted);font-weight:400;}
.rep-card-body a.addr-line:hover{color:var(--blue);}
.rep-map-link span{display:none;}
.rep-map-link:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
.rep-card-body a{font-weight:700;color:var(--ink);display:inline-flex;align-items:center;gap:4px;margin-top:6px;}
.rep-card-body a:hover{color:var(--blue);}
.doc-hero{width:100%;aspect-ratio:16/8;object-fit:cover;display:block;background:var(--paper);}
.doc-hero-wrap{position:relative;}
.doc-hero-wrap .doc-tag{position:absolute;top:12px;left:12px;z-index:2;margin-bottom:0;box-shadow:0 3px 10px rgba(30,32,96,0.22);}
.doc-inner{padding:32px 40px 40px;}
@media (max-width:600px){.doc-inner{padding:22px 22px 30px;}}
.doc-tag{display:inline-flex;font-size:11.5px;font-weight:800;padding:4px 12px;border-radius:999px;margin-bottom:10px;}
.doc-tag.nt-new{background:#EAF0FF;color:#2B4FCB;}
.doc-tag.nt-partner{background:#FFF1E6;color:#B5591C;}
.doc-tag.nt-award{background:#F4EDFF;color:#7233C9;}
.doc-tag.nt-analysis{background:#E9FBF0;color:#128A45;}
.doc-tag.nt-blog{background:#E6F7F7;color:#0E7C86;}
.doc-tag.nt-accent{background:#FDE8E8;color:#C81E3A;}
.doc-tag.nt-service{background:#FFF4D6;color:#8A6300;}
/* ---------- Audience segments ---------- */
  .audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media (max-width:860px){.audience-grid{grid-template-columns:1fr;}}
.audience-card{
    background:#fff;border:1.5px solid var(--ink);border-radius:var(--radius-md);padding:26px;
    display:flex;flex-direction:column;gap:12px;transition:transform .15s ease;
  }
.audience-card:hover{transform:translate(-3px,-3px);}
.audience-card .badge{
    display:inline-flex;align-self:flex-start;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
    padding:5px 11px;border-radius:999px;
  }
.audience-card h3{font-size:18px;}
.audience-card p{font-size:13.5px;color:var(--muted);flex:1;}
.ac-blue{box-shadow:var(--shadow-blue);}
.ac-blue .badge{background:#EAF0FF;color:#2B4FCB;}
.ac-orange{box-shadow:var(--shadow-orange);}
.ac-orange .badge{background:#FFF1E6;color:#B5591C;}
.ac-green{box-shadow:var(--shadow-green);}
.ac-green .badge{background:#E9FBF0;color:#128A45;}
.partner-grid-4{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
@media (max-width:860px){.partner-grid-4{grid-template-columns:1fr;}}
.partner-tile{
    background:#fff;border:1.5px solid var(--ink);border-radius:var(--radius-md);padding:26px;
    display:flex;flex-direction:column;gap:12px;
  }
.partner-tile h4{font-size:17px;}
.partner-tile p{font-size:13.5px;color:var(--muted);}
.pt-blue{box-shadow:var(--shadow-blue);}
.pt-orange{box-shadow:var(--shadow-orange);}
.pt-purple{box-shadow:var(--shadow-purple);}
.pt-green{box-shadow:var(--shadow-green);}
.partner-tile .badge-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}
.partner-tile .badge-strip span{font-size:12px;font-weight:800;padding:6px 12px;border-radius:999px;background:var(--paper);border:1.5px solid var(--border);color:var(--ink-soft);}
.intl-partner-list{display:flex;flex-direction:column;gap:10px;margin-top:6px;}
.intl-partner-badge{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:#fff;border:1.5px solid var(--border);text-decoration:none;transition:border-color .15s ease;}
.intl-partner-badge:hover{border-color:var(--ink);}
.intl-partner-badge .wing-mark{font-family:'Snaga Display',sans-serif;font-weight:800;font-size:15px;color:var(--ink);letter-spacing:0.02em;flex:none;padding:4px 10px;border-radius:8px;background:var(--paper);border:1.5px solid var(--border);}
.intl-partner-badge .logo-img{flex:none;height:30px;width:auto;max-width:90px;object-fit:contain;}
.intl-partner-badge .desc{font-size:12.5px;color:var(--muted);line-height:1.35;}
.intl-product-card{padding:10px 14px;border-radius:12px;background:#fff;border:1.5px solid var(--border);font-size:12.5px;color:var(--muted);line-height:1.4;}
.insurer-logo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:6px;}
@media (max-width:560px){.insurer-logo-grid{grid-template-columns:repeat(3,1fr);}}
.insurer-logo{
    display:flex;align-items:center;justify-content:center;background:#fff;border:1.5px solid var(--border);
    border-radius:10px;padding:8px 6px;height:52px;transition:border-color .15s ease, transform .15s ease;
  }
.insurer-logo:hover{border-color:var(--ink);transform:translateY(-2px);}
.insurer-logo img{max-width:100%;max-height:32px;width:auto;height:auto;object-fit:contain;}
.phone-mock-frame{
    width:260px;max-width:100%;height:auto;padding:0;overflow:hidden;position:relative;
    border-radius:34px;background:#0F1130;line-height:0;
  }
.phone-mock-frame img{
    width:100%;height:auto;display:block;border-radius:28px;
  }
.store-badges .store-badge{
    display:flex;align-items:center;gap:8px;padding:9px 16px;border-radius:12px;
    background:var(--ink);color:#fff;border:1.5px solid var(--ink);text-decoration:none;
    transition:transform .15s ease;
  }
.store-badges .store-badge:hover{transform:translateY(-2px);}
.store-badges .store-badge span{display:flex;flex-direction:column;font-size:13px;font-weight:800;line-height:1.15;}
.store-badges .store-badge small{font-size:9.5px;font-weight:600;color:#B9C0FF;text-transform:uppercase;letter-spacing:.03em;}
.map-pin{
    position:absolute;transform:translate(-50%,-50%); /* box == icon size exactly, so this always centers the icon itself on the DB point */
    width:24px;height:24px;
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;z-index:2;
    text-decoration:none;
  }
.map-pin img{width:24px;height:24px;flex:none;display:block;filter:drop-shadow(0 2px 4px rgba(30,32,96,0.28));}
/* sized for this half-width map — keeps proportion with the unchanged 10.5px label font */
  .map-pin .city-lbl{
    position:absolute;left:100%;top:50%;transform:translateY(-50%);
    margin-left:-2px;white-space:nowrap;
    background:rgba(255,255,255,0.92);border:1px solid rgba(30,32,96,0.12);
    border-radius:20px;padding:3px 9px;box-shadow:0 2px 6px rgba(30,32,96,0.12);
    font-size:10.5px;font-weight:800;color:var(--ink);font-family:'Snaga Display',sans-serif;
    transition:background .15s ease,box-shadow .15s ease;
  }
.map-pin.is-new .pin-mark{width:24px;height:24px;flex:none;display:block;border-radius:50%;background:#fff;padding:2px;box-shadow:0 0 0 1.5px var(--blue);}
.map-pin.is-new .city-lbl{color:var(--blue);}
/* ---------- Narrow-screen redesign: Contacts map + rep cards ---------- */
  @media (max-width:720px){
    
    .map-pin{
      width:34px;height:34px;border-radius:50%;
      background:#fff;border:1.5px solid rgba(30,32,96,0.18);
    }
    .map-pin img{width:20px;height:20px;filter:none;}
    .map-pin .city-lbl{display:none;}
    .map-pin:hover img,.map-pin:active img{transform:none;}
    .map-pin:hover,.map-pin:active{transform:translate(-50%,-50%) scale(1.15);}
  }
.rep-card{border:1.5px solid var(--border);border-radius:14px;background:#fff;overflow:hidden;transition:border-color .15s ease;}
.rep-addr-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:6px 0;}
.regional-badge{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;color:var(--blue);background:#EAF0FF;border-radius:999px;padding:3px 10px;margin-bottom:4px;text-transform:none;}
.rep-addr-row .addr-col{display:flex;flex-direction:column;gap:4px;flex:1;}
.rep-map-link{flex:none;width:26px;height:26px;border-radius:8px;background:var(--paper);border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--ink-soft);transition:background .12s ease,color .12s ease,border-color .12s ease;}
.rep-map-link svg{width:14px;height:14px;}
@media (max-width:768px){
    .rep-network{padding:16px 0;border:none;border-radius:0;background:transparent;}
    .rep-network h4{padding:0 4px;}
    .rep-network > p{padding:0 4px;}
    .rep-grid{
      display:flex;flex-direction:column;gap:0;
      border:1.5px solid var(--ink);border-radius:var(--radius-md);overflow:hidden;background:#fff;
    }
    .rep-card{border:none;border-radius:0;border-bottom:1px solid var(--border);}
    .rep-card:last-child{border-bottom:none;}
    .rep-card[open]{border-color:var(--border);}
    .rep-card summary{padding:12px 14px;gap:8px;}
    .rep-card summary .city{font-size:13.5px;}
    .rep-card summary .lbl{font-size:10px;margin-top:1px;}
    .rep-card-body{padding:0 14px 12px;margin:0 14px;padding-top:9px;}
    .rep-addr-row{flex-wrap:wrap;padding:5px 0;font-size:12px;}
    .rep-map-link{width:24px;height:24px;}
  }
/* ---------- CTA band ---------- */
  /* ---------- Laws & claims mini info cards ---------- */
  .legal-claims-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media (max-width:820px){.legal-claims-grid{grid-template-columns:1fr;}}
.mini-info-card{background:#fff;border:1.5px solid var(--ink);border-radius:var(--radius-md);padding:26px;scroll-margin-top:90px;}
.mini-link-list{margin-top:16px;display:flex;flex-direction:column;gap:2px;}
.mini-link-list li{border-top:1.5px dashed var(--border);}
.mini-link-list li:first-child{border-top:none;}
.mini-link-list a,.mini-link-list .mini-static{
    display:flex;flex-direction:column;gap:2px;padding:12px 0;
  }
.mini-link-list a{color:var(--ink);transition:color .15s ease;}
.mini-link-list a:hover{color:var(--blue);}
.mini-link-list a > span:first-child,.mini-link-list .mini-static > span:first-child{font-size:14px;font-weight:800;}
.mini-sub{font-size:12px;color:var(--muted-soft);font-weight:600;}
.cta-band{
    background:linear-gradient(120deg,var(--ink),#2B2D80);
    border-radius:var(--radius-lg);padding:64px;text-align:center;color:#fff;
  }
.about-content h3{font-family:'Snaga Display',sans-serif;font-weight:700;font-size:20px;color:var(--ink);margin:32px 0 12px;}
.about-content p{margin-bottom:14px;}
.about-content .lead{font-size:17px;font-weight:600;color:var(--ink);}
