/* InvestSofia Pro v3.1 — Full CSS with all corrections */
/* See previous version for base styles — adding only CHANGED/NEW sections here */

:root{
--is-blue-900:#0E3A52;--is-blue-800:#14527A;--is-blue-700:#1D6E9E;--is-blue-600:#2784B5;--is-blue-500:#3198C5;--is-blue-400:#52AED4;--is-blue-300:#7EC5E2;--is-blue-200:#AEDAEE;--is-blue-100:#D6EDF7;--is-blue-50:#EBF6FB;
--is-purple-900:#2A0026;--is-purple-800:#420040;--is-purple-700:#63005B;--is-purple-600:#7D1476;--is-purple-500:#962C90;--is-purple-400:#B054AA;--is-purple-300:#C97FC4;--is-purple-200:#DDA8DA;--is-purple-100:#F0D6EF;--is-purple-50:#F9EEF8;
--is-gray-900:#111827;--is-gray-800:#1F2937;--is-gray-700:#374151;--is-gray-600:#4B5563;--is-gray-500:#6B7280;--is-gray-400:#9CA3AF;--is-gray-300:#D1D5DB;--is-gray-200:#E5E7EB;--is-gray-100:#F3F4F6;--is-gray-50:#F9FAFB;
--is-teal-500:#0D9488;--is-teal-100:#CCFBF1;--is-green-500:#22C55E;--is-green-100:#DCFCE7;
--ff-display:'Plus Jakarta Sans',system-ui,sans-serif;--ff-body:'Inter',system-ui,sans-serif;
--fs-hero:clamp(2.75rem,6vw+1rem,5rem);--fs-h1:clamp(2rem,4vw+.5rem,3.25rem);--fs-h2:clamp(1.625rem,3vw+.5rem,2.5rem);--fs-h3:clamp(1.25rem,2vw+.25rem,1.625rem);--fs-h4:clamp(1.1rem,1.5vw+.25rem,1.25rem);
--fs-body:1rem;--fs-body-lg:1.125rem;--fs-sm:.875rem;--fs-xs:.75rem;
--sp-xs:.25rem;--sp-sm:.5rem;--sp-md:1rem;--sp-lg:1.5rem;--sp-xl:2rem;--sp-2xl:3rem;--sp-3xl:4rem;--sp-4xl:6rem;--sp-5xl:8rem;
--container-max:1280px;--container-wide:1440px;--container-narrow:860px;--gutter:clamp(1rem,3vw,2rem);
--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-2xl:28px;--r-full:9999px;
--sh-sm:0 2px 8px rgba(17,24,39,.06);--sh-md:0 4px 16px rgba(17,24,39,.08);--sh-lg:0 8px 32px rgba(17,24,39,.10);--sh-xl:0 20px 60px rgba(17,24,39,.14);
--sh-blue:0 8px 30px rgba(49,152,197,.18);--sh-purple:0 8px 30px rgba(99,0,91,.14);
--ease:cubic-bezier(.16,1,.3,1);--dur-fast:150ms;--dur-md:300ms;--dur-slow:500ms;
--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-cookie:450;--z-toast:500
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:var(--ff-body);font-size:var(--fs-body);line-height:1.7;color:var(--is-gray-800);background:#fff;overflow-x:hidden}
img,video,svg{display:block;max-width:100%;height:auto}
a{color:var(--is-blue-600);text-decoration:none;transition:color var(--dur-fast) ease}a:hover{color:var(--is-purple-700)}
h1,h2,h3,h4,h5,h6{font-family:var(--ff-display);font-weight:800;line-height:1.15;color:var(--is-gray-900);letter-spacing:-.02em}
h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}h4{font-size:var(--fs-h4)}
p{margin-bottom:1em}::selection{background:var(--is-blue-200);color:var(--is-blue-900)}
:focus-visible{outline:2px solid var(--is-blue-500);outline-offset:3px;border-radius:var(--r-sm)}
.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--gutter)}.container--wide{max-width:var(--container-wide)}.container--narrow{max-width:var(--container-narrow)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.text-center{text-align:center}.text-gradient{background:linear-gradient(135deg,var(--is-blue-500),var(--is-purple-700));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* Section Header */
.section-header{text-align:center;margin-bottom:var(--sp-3xl)}
.section-header__tag{display:inline-flex;align-items:center;gap:var(--sp-sm);font-size:var(--fs-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--is-blue-600);background:var(--is-blue-50);border:1px solid var(--is-blue-100);padding:.4rem 1rem;border-radius:var(--r-full);margin-bottom:var(--sp-lg)}
.section-header__title{margin-bottom:var(--sp-md)}
.section-header__desc{font-size:var(--fs-body-lg);color:var(--is-gray-500);max-width:640px;margin-inline:auto;line-height:1.8}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--ff-display);font-size:var(--fs-sm);font-weight:700;padding:.8rem 1.75rem;border-radius:var(--r-full);border:2px solid transparent;cursor:pointer;transition:all var(--dur-md) var(--ease);white-space:nowrap;line-height:1;text-decoration:none}
.btn:active{transform:scale(.96)}.btn svg{width:16px;height:16px;transition:transform var(--dur-fast) ease}.btn:hover svg{transform:translateX(3px)}
.btn--primary{background:linear-gradient(135deg,var(--is-blue-500),var(--is-blue-600));color:#fff;border-color:var(--is-blue-500);box-shadow:var(--sh-blue)}
.btn--primary:hover{background:linear-gradient(135deg,var(--is-blue-400),var(--is-blue-500));box-shadow:0 12px 36px rgba(49,152,197,.25);transform:translateY(-1px);color:#fff}
.btn--purple{background:linear-gradient(135deg,var(--is-purple-700),var(--is-purple-600));color:#fff;box-shadow:var(--sh-purple)}
.btn--purple:hover{transform:translateY(-1px);color:#fff}
.btn--outline{background:transparent;color:var(--is-gray-800);border-color:var(--is-gray-200)}.btn--outline:hover{background:var(--is-gray-50);border-color:var(--is-blue-300);color:var(--is-blue-700)}
.btn--ghost-white{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.25);backdrop-filter:blur(8px)}.btn--ghost-white:hover{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.5);color:#fff}
.btn--lg{font-size:1rem;padding:1rem 2.5rem}.btn--sm{font-size:var(--fs-xs);padding:.55rem 1.25rem}

/* Header */
.site-header{position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky);transition:all var(--dur-md) var(--ease)}
.site-header--top{background:transparent}.site-header--scrolled{background:rgba(255,255,255,.92);backdrop-filter:blur(24px) saturate(1.5);box-shadow:0 1px 0 rgba(0,0,0,.06)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:76px;padding-inline:var(--gutter);max-width:var(--container-wide);margin-inline:auto}
.site-logo{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.site-logo img{height:42px;width:auto}
.site-logo__text{font-family:var(--ff-display);font-weight:800;font-size:1.15rem;color:var(--is-gray-900);line-height:1.1}
.site-header--top .site-logo__text{color:#fff}.site-logo__text small{display:block;font-weight:400;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;opacity:.5}
.main-nav{display:none}@media(min-width:1024px){.main-nav{display:flex}}
.main-nav__list{display:flex;gap:2px;list-style:none}
.main-nav__link{display:flex;align-items:center;gap:4px;padding:.5rem .9rem;font-size:var(--fs-sm);font-weight:600;color:var(--is-gray-600);border-radius:var(--r-md);transition:all var(--dur-fast) ease}
.main-nav__link:hover{color:var(--is-blue-600);background:var(--is-blue-50)}.site-header--top .main-nav__link{color:rgba(255,255,255,.85)}.site-header--top .main-nav__link:hover{color:#fff;background:rgba(255,255,255,.1)}
.main-nav__link svg{width:12px;height:12px;opacity:.4;transition:transform var(--dur-fast) ease}.main-nav__item:hover .main-nav__link svg{transform:rotate(180deg)}
.main-nav__dropdown{position:absolute;top:calc(100%+8px);left:50%;transform:translateX(-50%) translateY(4px);min-width:260px;background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-xl);padding:.5rem;opacity:0;visibility:hidden;transition:all var(--dur-md) var(--ease);border:1px solid var(--is-gray-100);pointer-events:none}
.main-nav__item:hover .main-nav__dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}
.main-nav__dropdown a{display:block;padding:.6rem 1rem;font-size:var(--fs-sm);color:var(--is-gray-600);border-radius:var(--r-md);transition:all var(--dur-fast) ease}.main-nav__dropdown a:hover{background:var(--is-blue-50);color:var(--is-blue-700)}
.header-cta{display:none}@media(min-width:1024px){.header-cta{display:flex;gap:.5rem;align-items:center}}
.lang-sw{display:flex;gap:4px;margin-left:.5rem}
.lang-btn{padding:.3rem .55rem;font-size:var(--fs-xs);font-weight:700;border-radius:var(--r-sm);border:1px solid var(--is-gray-200);background:transparent;color:var(--is-gray-400);cursor:pointer;transition:all var(--dur-fast) ease;text-decoration:none;display:inline-flex;align-items:center}
.lang-btn--active,.lang-btn:hover{background:var(--is-blue-50);color:var(--is-blue-600);border-color:var(--is-blue-200)}
.site-header--top .lang-btn{border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.5)}.site-header--top .lang-btn--active{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.4)}
.mobile-toggle{display:flex;flex-direction:column;gap:5px;padding:8px;background:none;border:none;cursor:pointer}@media(min-width:1024px){.mobile-toggle{display:none}}
.mobile-toggle span{display:block;width:22px;height:2px;background:var(--is-gray-800);border-radius:2px;transition:all var(--dur-md) var(--ease);transform-origin:center}
.site-header--top .mobile-toggle span{background:#fff}.mobile-toggle--open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-toggle--open span:nth-child(2){opacity:0}.mobile-toggle--open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:var(--z-overlay);background:#fff;padding:88px var(--gutter) var(--sp-xl);overflow-y:auto;transform:translateX(100%);transition:transform var(--dur-slow) var(--ease)}.mobile-menu--open{transform:translateX(0)}
.mobile-menu__list{list-style:none}.mobile-menu__link{display:block;padding:.9rem 0;font-size:1.15rem;font-weight:600;color:var(--is-gray-800);border-bottom:1px solid var(--is-gray-100)}.mobile-menu__link:hover{color:var(--is-blue-600)}
.mobile-menu__sub{list-style:none;padding-left:var(--sp-lg)}.mobile-menu__sub a{display:block;padding:.55rem 0;font-size:var(--fs-body);color:var(--is-gray-500)}.mobile-menu__sub a:hover{color:var(--is-blue-600)}

/* Hero */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:var(--is-gray-900)}
.hero__bg{position:absolute;inset:0}.hero__bg img,.hero__bg video,.hero-slide-video{width:100%;height:100%;object-fit:cover;opacity:.35}
.hero-slide-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#0E3A52,#1a0e2e,#14527A)}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(160deg,rgba(17,24,39,.8) 0%,rgba(99,0,91,.4) 40%,rgba(49,152,197,.3) 70%,rgba(17,24,39,.85) 100%)}
.hero__mesh{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(49,152,197,.15) 0%,transparent 50%),radial-gradient(circle at 75% 70%,rgba(99,0,91,.12) 0%,transparent 50%);pointer-events:none}
.hero__dots{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:32px 32px}
.hero__content{position:relative;z-index:10;width:100%;max-width:var(--container-max);margin-inline:auto;padding:calc(76px + var(--sp-4xl)) var(--gutter) var(--sp-3xl)}
.hero__tag{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1.1rem;border-radius:var(--r-full);background:rgba(49,152,197,.12);border:1px solid rgba(49,152,197,.25);color:var(--is-blue-300);font-size:var(--fs-sm);font-weight:600;margin-bottom:var(--sp-xl);backdrop-filter:blur(8px)}
.hero__tag-dot{width:7px;height:7px;border-radius:50%;background:var(--is-blue-400);animation:pulse-dot 2s ease-in-out infinite}
@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.5)}}
.hero__title{font-size:var(--fs-hero);color:#fff;margin-bottom:var(--sp-lg);max-width:800px;letter-spacing:-.03em;line-height:1.05}
.hero__title .highlight{color:var(--is-blue-300);position:relative}.hero__title .highlight::after{content:'';position:absolute;bottom:2px;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--is-blue-400),var(--is-purple-500));border-radius:2px;opacity:.6}
.hero__desc{font-size:clamp(1rem,2vw,1.2rem);color:rgba(255,255,255,.65);max-width:560px;margin-bottom:var(--sp-2xl);line-height:1.8}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--sp-md);margin-bottom:var(--sp-3xl)}
.hero__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.06);border-radius:var(--r-xl);overflow:hidden;max-width:720px}
@media(min-width:768px){.hero__stats{grid-template-columns:repeat(4,1fr)}}
.hero__stat{padding:var(--sp-lg) var(--sp-md);background:rgba(255,255,255,.03);backdrop-filter:blur(8px);text-align:center}
.hero__stat-val{font-family:var(--ff-display);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:800;background:linear-gradient(135deg,var(--is-blue-300),var(--is-purple-300));-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1.1;margin-bottom:4px}
.hero__stat-lbl{font-size:var(--fs-xs);color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.hero__scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:rgba(255,255,255,.3);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;font-weight:600;animation:scroll-bob 3s ease-in-out infinite}
@keyframes scroll-bob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}}
.hero__scroll-line{width:1px;height:36px;background:linear-gradient(to bottom,rgba(255,255,255,.25),transparent)}
.hero-swiper .swiper-pagination-bullet{background:rgba(255,255,255,.5)!important;opacity:1!important;width:10px;height:10px}
.hero-swiper .swiper-pagination-bullet-active{background:#fff!important;width:28px;border-radius:var(--r-full)!important}
.hero-swiper .swiper-pagination{bottom:20px!important;z-index:20}

/* Industries */
.industries{padding:var(--sp-5xl) 0;background:#fff}
.industries__grid{display:grid;grid-template-columns:1fr;gap:var(--sp-md)}
@media(min-width:640px){.industries__grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.industries__grid{grid-template-columns:repeat(4,1fr)}}
.ind-card{position:relative;background:#fff;border-radius:var(--r-xl);padding:var(--sp-xl) var(--sp-lg);border:1px solid var(--is-gray-100);transition:all var(--dur-md) var(--ease);overflow:hidden;cursor:pointer;display:block;color:inherit}
.ind-card::after{content:'';position:absolute;inset:-1px;border-radius:var(--r-xl);background:linear-gradient(135deg,var(--card-c1,var(--is-blue-500)),var(--card-c2,var(--is-purple-700)));opacity:0;transition:opacity var(--dur-md);z-index:0;pointer-events:none}
.ind-card::before{content:'';position:absolute;inset:0;border-radius:var(--r-xl);background:#fff;z-index:1;transition:all var(--dur-md)}
.ind-card>*{position:relative;z-index:2}.ind-card:hover{transform:translateY(-6px);box-shadow:var(--sh-lg)}.ind-card:hover::after{opacity:1}.ind-card:hover::before{inset:2px;border-radius:calc(var(--r-xl) - 2px)}
.ind-card__icon{width:52px;height:52px;border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-lg);background:var(--card-bg,var(--is-blue-50));color:var(--card-c1,var(--is-blue-500));font-size:1.4rem}
.ind-card__title{font-family:var(--ff-display);font-size:var(--fs-body);font-weight:700;margin-bottom:.35rem}.ind-card__desc{font-size:var(--fs-sm);color:var(--is-gray-500);line-height:1.6;margin:0}
.ind-card__arrow{position:absolute;bottom:var(--sp-lg);right:var(--sp-lg);width:30px;height:30px;border-radius:50%;background:var(--is-gray-50);display:flex;align-items:center;justify-content:center;opacity:0;transform:translateX(-6px);transition:all var(--dur-md) var(--ease);color:var(--card-c1,var(--is-blue-600));z-index:2}
.ind-card:hover .ind-card__arrow{opacity:1;transform:translateX(0)}
.ind--it{--card-c1:#3198C5;--card-c2:#1D6E9E;--card-bg:#EBF6FB}.ind--outsource{--card-c1:#0D9488;--card-c2:#065F46;--card-bg:#CCFBF1}
.ind--biotech{--card-c1:#8B5CF6;--card-c2:#6D28D9;--card-bg:#F3F0FF}.ind--creative{--card-c1:#EC4899;--card-c2:#DB2777;--card-bg:#FDF2F8}
.ind--trade{--card-c1:#F59E0B;--card-c2:#D97706;--card-bg:#FEF3C7}.ind--aero{--card-c1:#3198C5;--card-c2:#63005B;--card-bg:#EBF6FB}
.ind--green{--card-c1:#22C55E;--card-c2:#16A34A;--card-bg:#DCFCE7}.ind--urban{--card-c1:#F97316;--card-c2:#EA580C;--card-bg:#FFF7ED}

/* Why Sofia */
.why-sofia{padding:var(--sp-5xl) 0;background:var(--is-gray-50)}
.why-sofia__layout{display:grid;grid-template-columns:1fr;gap:var(--sp-3xl);align-items:center}@media(min-width:1024px){.why-sofia__layout{grid-template-columns:1fr 1fr}}
.why-sofia__img{position:relative;border-radius:var(--r-2xl);overflow:hidden;aspect-ratio:4/3}.why-sofia__img img{width:100%;height:100%;object-fit:cover}
.why-sofia__badge{position:absolute;bottom:var(--sp-lg);left:var(--sp-lg);background:rgba(17,24,39,.85);backdrop-filter:blur(16px);border-radius:var(--r-lg);padding:var(--sp-md) var(--sp-lg);color:#fff}
.why-sofia__badge-val{font-family:var(--ff-display);font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--is-blue-300),var(--is-purple-300));-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1}
.why-sofia__badge-lbl{font-size:var(--fs-xs);opacity:.6;text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.reason{display:flex;gap:var(--sp-md);padding:var(--sp-md);border-radius:var(--r-lg);transition:background var(--dur-fast),box-shadow var(--dur-fast)}.reason:hover{background:#fff;box-shadow:var(--sh-sm)}
.reason__num{flex-shrink:0;width:38px;height:38px;border-radius:var(--r-md);background:linear-gradient(135deg,var(--is-blue-50),var(--is-purple-50));color:var(--is-blue-600);font-family:var(--ff-display);font-size:var(--fs-sm);font-weight:800;display:flex;align-items:center;justify-content:center}
.reason h4{font-size:var(--fs-body);font-weight:700;margin-bottom:2px}.reason p{font-size:var(--fs-sm);color:var(--is-gray-500);margin:0;line-height:1.6}

/* Services */
.services{padding:var(--sp-5xl) 0;background:linear-gradient(160deg,var(--is-gray-900) 0%,#1a0e2e 50%,var(--is-gray-900) 100%);color:#fff;position:relative;overflow:hidden}
.services__orb1,.services__orb2{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}.services__orb1{width:500px;height:500px;top:-200px;right:-100px;background:rgba(49,152,197,.08)}.services__orb2{width:400px;height:400px;bottom:-150px;left:-100px;background:rgba(99,0,91,.08)}
.services__grid{display:grid;grid-template-columns:1fr;gap:var(--sp-md)}@media(min-width:640px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.services__grid{grid-template-columns:repeat(3,1fr)}}
.svc-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-xl);padding:var(--sp-xl);transition:all var(--dur-md) var(--ease);position:relative;overflow:hidden}
.svc-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--is-blue-500),var(--is-purple-500));transform:scaleX(0);transform-origin:left;transition:transform var(--dur-md) var(--ease)}
.svc-card:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);transform:translateY(-3px)}.svc-card:hover::before{transform:scaleX(1)}
.svc-card__icon{width:46px;height:46px;border-radius:var(--r-md);background:linear-gradient(135deg,rgba(49,152,197,.25),rgba(99,0,91,.15));display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-md);color:var(--is-blue-200)}
.svc-card__title{font-family:var(--ff-display);font-size:var(--fs-body);font-weight:700;color:#fff;margin-bottom:.3rem}.svc-card__desc{font-size:var(--fs-sm);color:rgba(255,255,255,.55);line-height:1.6;margin:0}

/* News */
.news-section{padding:var(--sp-5xl) 0}.news-swiper{padding-bottom:3rem!important}
.news-swiper .swiper-pagination-bullet{background:var(--is-gray-300);opacity:1}.news-swiper .swiper-pagination-bullet-active{background:var(--is-blue-500);width:24px;border-radius:var(--r-full)}
.news-card{display:flex;flex-direction:column;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--is-gray-100);transition:all var(--dur-md) var(--ease);background:#fff;height:100%}
.news-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);border-color:transparent}
.news-card__img{aspect-ratio:16/9;overflow:hidden;background:var(--is-gray-50)}.news-card__img img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease)}.news-card:hover .news-card__img img{transform:scale(1.06)}
.news-card__body{padding:var(--sp-lg);flex:1;display:flex;flex-direction:column}
.news-card__date{font-size:var(--fs-xs);color:var(--is-gray-400);font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}
.news-card__title{font-family:var(--ff-display);font-size:var(--fs-body);font-weight:700;color:var(--is-gray-900);line-height:1.4;margin-bottom:.4rem;flex:1}
.news-card__link{font-size:var(--fs-sm);font-weight:700;color:var(--is-blue-600);display:inline-flex;align-items:center;gap:4px;transition:gap var(--dur-fast)}.news-card:hover .news-card__link{gap:8px;color:var(--is-purple-700)}

/* CTA Band */
.cta-band{padding:var(--sp-5xl) 0;background:linear-gradient(135deg,var(--is-blue-600),var(--is-purple-700));position:relative;overflow:hidden}
.cta-band__mesh{position:absolute;inset:0;background-image:radial-gradient(circle at 25% 50%,rgba(255,255,255,.08) 0%,transparent 50%),radial-gradient(circle at 75% 50%,rgba(255,255,255,.05) 0%,transparent 50%);pointer-events:none}
.cta-band__inner{position:relative;text-align:center;color:#fff}.cta-band__title{font-size:var(--fs-h2);margin-bottom:.75rem}.cta-band__desc{font-size:var(--fs-body-lg);opacity:.75;max-width:560px;margin:0 auto var(--sp-2xl)}

/* ═══ POPUP — NO SCROLL, compact ═══ */
.popup-overlay{position:fixed;inset:0;z-index:var(--z-modal);background:rgba(17,24,39,.6);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:var(--gutter)}.popup-overlay--open{display:flex}
.popup-box{background:#fff;border-radius:var(--r-2xl);width:100%;max-width:500px;overflow:hidden;position:relative;box-shadow:var(--sh-xl);animation:popup-in .4s var(--ease)}
@keyframes popup-in{from{opacity:0;transform:scale(.92) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}
.popup-box__close{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;border-radius:50%;border:none;background:var(--is-gray-50);color:var(--is-gray-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--dur-fast);font-size:1rem;z-index:2}.popup-box__close:hover{background:var(--is-gray-100);color:var(--is-gray-800)}
.popup-box__header{padding:1.5rem 1.5rem 0;text-align:center}.popup-box__header h3{font-size:var(--fs-h4);margin-bottom:.2rem}.popup-box__header p{font-size:var(--fs-xs);color:var(--is-gray-500)}
.popup-box__body{padding:1rem 1.5rem 1.5rem}
.popup-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.form-group{margin-bottom:.6rem}.form-group label{display:block;font-size:var(--fs-xs);font-weight:600;color:var(--is-gray-700);margin-bottom:.2rem}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:.5rem .75rem;border:1px solid var(--is-gray-200);border-radius:var(--r-md);font-family:var(--ff-body);font-size:var(--fs-sm);transition:border-color var(--dur-fast);background:#fff;color:var(--is-gray-800)}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--is-blue-400);outline:none;box-shadow:0 0 0 3px rgba(49,152,197,.1)}
.form-group textarea{resize:vertical;min-height:60px}
.captcha-row{display:flex;align-items:flex-end;gap:.5rem}.captcha-row label{flex:1;margin-bottom:0}.captcha-row input[type="text"]{width:64px;text-align:center;flex-shrink:0;font-size:16px}
.captcha-puzzle{display:inline-block;background:var(--is-blue-50);color:var(--is-blue-700);padding:.1rem .4rem;border-radius:var(--r-sm);font-weight:700;font-family:var(--ff-display);font-size:var(--fs-sm)}
.popup-success{text-align:center;padding:3rem 2rem}
.popup-success__icon{width:56px;height:56px;border-radius:50%;background:var(--is-green-100);display:flex;align-items:center;justify-content:center;margin:0 auto .75rem;font-size:1.5rem;color:var(--is-green-500)}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden;pointer-events:none}

/* ═══ COOKIE CONSENT — Granular ═══ */
.cookie-overlay{position:fixed;inset:0;z-index:var(--z-cookie);background:rgba(17,24,39,.5);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:var(--gutter)}
.cookie-overlay--open{display:flex}
.cookie-modal{background:#fff;border-radius:var(--r-2xl);width:100%;max-width:520px;box-shadow:var(--sh-xl);animation:popup-in .4s var(--ease)}
.cookie-modal__header{padding:1.5rem 1.5rem .5rem}.cookie-modal__header h3{font-size:var(--fs-h4);margin-bottom:.25rem}.cookie-modal__header p{font-size:var(--fs-xs);color:var(--is-gray-500);margin:0}
.cookie-modal__body{padding:.5rem 1.5rem}
.cookie-group{border-bottom:1px solid var(--is-gray-100);padding:.75rem 0}
.cookie-group:last-child{border-bottom:none}
.cookie-group__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.cookie-group__info{flex:1}.cookie-group__info strong{display:block;font-size:var(--fs-sm);font-weight:700;color:var(--is-gray-900)}.cookie-group__info span{display:block;font-size:var(--fs-xs);color:var(--is-gray-500);line-height:1.4;margin-top:2px}
/* Toggle switch */
.cookie-toggle{position:relative;display:inline-block;cursor:pointer;flex-shrink:0}
.cookie-toggle input{position:absolute;opacity:0;width:0;height:0}
.cookie-toggle__track{display:block;width:40px;height:22px;background:var(--is-gray-200);border-radius:11px;transition:background var(--dur-fast)}
.cookie-toggle__thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform var(--dur-fast);box-shadow:0 1px 3px rgba(0,0,0,.15)}
.cookie-toggle input:checked~.cookie-toggle__track{background:var(--is-blue-500)}
.cookie-toggle input:checked~.cookie-toggle__track .cookie-toggle__thumb{transform:translateX(18px)}
.cookie-toggle--locked{opacity:.6;cursor:not-allowed}
.cookie-modal__footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.75rem 1.5rem 1.25rem}

.cookie-bar{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-cookie);background:#fff;box-shadow:0 -4px 30px rgba(17,24,39,.12);border-top:1px solid var(--is-gray-100);padding:var(--sp-md) var(--gutter);transform:translateY(100%);transition:transform var(--dur-slow) var(--ease);display:flex;flex-direction:column;gap:.5rem}
.cookie-bar--visible{transform:translateY(0)}
@media(min-width:768px){.cookie-bar{flex-direction:row;align-items:center}}
.cookie-bar__text{flex:1;font-size:var(--fs-sm);color:var(--is-gray-600);line-height:1.5}.cookie-bar__text a{color:var(--is-blue-600);text-decoration:underline}
.cookie-bar__actions{display:flex;gap:.4rem;flex-shrink:0;flex-wrap:wrap}

/* ═══ PARTNER CARDS ═══ */
.footer__partners{padding-bottom:var(--sp-2xl);margin-bottom:var(--sp-xl);border-bottom:1px solid rgba(255,255,255,.06)}
.partner-grid{display:grid;grid-template-columns:1fr;gap:.6rem}
@media(min-width:640px){.partner-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.partner-grid{grid-template-columns:repeat(4,1fr)}}
.partner-card{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:var(--r-lg);transition:all var(--dur-md) var(--ease);text-decoration:none;color:rgba(255,255,255,.7)}
.partner-card:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);transform:translateY(-2px);color:#fff}
.partner-card__icon{width:40px;height:40px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;background:rgba(49,152,197,.1)}
.partner-card__info{flex:1;min-width:0}.partner-card__info strong{display:block;font-size:var(--fs-sm);font-weight:700;color:#fff}.partner-card__info span{display:block;font-size:var(--fs-xs);color:rgba(255,255,255,.4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.partner-card__arrow{color:rgba(255,255,255,.2);transition:transform var(--dur-fast),color var(--dur-fast);flex-shrink:0}.partner-card:hover .partner-card__arrow{transform:translateX(3px);color:var(--is-blue-300)}

/* Footer Newsletter */
.footer-nl__input{flex:1;padding:.5rem .8rem!important;border-radius:var(--r-full)!important;border:1px solid rgba(255,255,255,.1)!important;background:rgba(255,255,255,.05)!important;color:#fff!important;font-size:.8rem!important}
.footer-nl__input::placeholder{color:rgba(255,255,255,.3)!important}
.footer-nl__input:focus{border-color:var(--is-blue-400)!important;background:rgba(255,255,255,.08)!important;outline:none}

/* Footer base */
.site-footer{background:var(--is-gray-900);color:rgba(255,255,255,.6);padding:var(--sp-3xl) 0 0}
.footer__top{display:grid;grid-template-columns:1fr;gap:var(--sp-2xl);padding-bottom:var(--sp-2xl);border-bottom:1px solid rgba(255,255,255,.06)}
@media(min-width:768px){.footer__top{grid-template-columns:2fr 1fr 1fr 1fr}}
.footer__heading{font-family:var(--ff-display);font-size:var(--fs-sm);font-weight:700;color:rgba(255,255,255,.9);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--sp-lg)}
.footer__links{list-style:none;display:grid;gap:.35rem}.footer__links a{font-size:var(--fs-sm);color:rgba(255,255,255,.45);transition:color var(--dur-fast)}.footer__links a:hover{color:var(--is-blue-300)}
.footer__brand-desc{font-size:var(--fs-sm);line-height:1.7;margin-top:var(--sp-md)}
.footer__bottom{display:flex;flex-direction:column;align-items:center;gap:var(--sp-md);padding:var(--sp-xl) 0;font-size:var(--fs-xs);color:rgba(255,255,255,.25)}
@media(min-width:768px){.footer__bottom{flex-direction:row;justify-content:space-between}}
.footer__socials{display:flex;gap:.4rem}.footer__socials a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.04);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.35);transition:all var(--dur-fast)}.footer__socials a:hover{background:rgba(49,152,197,.15);color:var(--is-blue-300)}

/* Back to Top + Floating CTA */
.back-to-top{position:fixed;bottom:92px;right:28px;z-index:399;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.9);color:var(--is-blue-500);border:1px solid var(--is-gray-200);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 12px rgba(0,0,0,.08);opacity:0;visibility:hidden;transform:translateY(16px);transition:all var(--dur-md) var(--ease);backdrop-filter:blur(8px)}
.back-to-top--visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:#fff;color:var(--is-purple-700);transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.12)}
.floating-cta{position:fixed;bottom:1.5rem;left:1.5rem;z-index:var(--z-dropdown)}
.floating-cta__btn{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.25rem;border-radius:var(--r-full);background:linear-gradient(135deg,var(--is-blue-500),var(--is-purple-700));color:#fff;border:none;cursor:pointer;font-family:var(--ff-display);font-weight:700;font-size:var(--fs-sm);box-shadow:var(--sh-lg);transition:all var(--dur-md) var(--ease);animation:float-pulse 3s ease-in-out infinite}
.floating-cta__btn:hover{transform:scale(1.05)}@keyframes float-pulse{0%,100%{box-shadow:var(--sh-lg)}50%{box-shadow:0 8px 40px rgba(49,152,197,.3)}}
@media(max-width:639px){.floating-cta__btn span{display:none}}

/* Page Header */
.page-header{background:linear-gradient(135deg,var(--is-gray-900),#1a0e2e);padding:calc(76px+var(--sp-3xl)) var(--gutter) var(--sp-3xl);text-align:center}
.page-header__title{font-size:var(--fs-h1);color:#fff;margin-bottom:var(--sp-md)}
.page-header__breadcrumb{display:flex;justify-content:center;flex-wrap:wrap;gap:.4rem;font-size:var(--fs-sm);color:rgba(255,255,255,.4)}.page-header__breadcrumb a{color:rgba(255,255,255,.6)}.page-header__breadcrumb a:hover{color:var(--is-blue-300)}
.single-content{max-width:var(--container-narrow);margin:var(--sp-3xl) auto;padding-inline:var(--gutter)}
.single-content h2{margin:var(--sp-2xl) 0 var(--sp-md)}.single-content img{border-radius:var(--r-lg);margin:var(--sp-xl) 0}
.single-content blockquote{border-left:3px solid var(--is-blue-500);padding:var(--sp-md) var(--sp-lg);background:var(--is-blue-50);border-radius:0 var(--r-md) var(--r-md) 0;margin:var(--sp-xl) 0}

/* Preloader */
.preloader{position:fixed;inset:0;z-index:9999;background:#fff;display:flex;align-items:center;justify-content:center;transition:opacity .5s}.preloader--hide{opacity:0;pointer-events:none}
.preloader__spinner{width:44px;height:44px;border:3px solid var(--is-gray-100);border-top-color:var(--is-blue-500);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}

/* Animations */
@media(prefers-reduced-motion:no-preference){
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal--visible{opacity:1;transform:translateY(0)}
.reveal-left{opacity:0;transform:translateX(-30px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal-left--visible{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(30px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal-right--visible{opacity:1;transform:translateX(0)}
.rd1{transition-delay:80ms}.rd2{transition-delay:160ms}.rd3{transition-delay:240ms}.rd4{transition-delay:320ms}
}

/* ═══════════════════════════════════════════
   v3.2 — Mobile fixes + New page templates
   ═══════════════════════════════════════════ */

/* ─── 1. Industry cards — clean, no decorative clutter ─── */
.ind-card{position:relative;min-height:120px}
/* Remove decorative bg icons — they clutter the card */
.ind-card__bg{display:none}

/* ─── 2. Service cards — remove symbols, keep clean ─── */
.svc-card__symbol{display:none}

/* ─── 3. CTA band buttons equal width ─── */
.cta-band__buttons{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}
.cta-band__buttons .btn{min-width:220px;justify-content:center}
@media(max-width:639px){.cta-band__buttons .btn{width:100%}}

/* ─── 4. Footer nav 2 columns on mobile ─── */
.footer__links--2col{columns:2;column-gap:1rem}
.footer__links--2col li{break-inside:avoid;margin-bottom:.35rem}

/* ─── NEWS PAGE ─── */
.news-page{padding:var(--sp-3xl) 0 var(--sp-5xl)}
.news-featured{display:grid;grid-template-columns:1fr;gap:var(--sp-xl);margin-bottom:var(--sp-3xl)}
@media(min-width:768px){.news-featured{grid-template-columns:1.2fr 1fr}}
.news-featured__main{border-radius:var(--r-xl);overflow:hidden;background:#fff;border:1px solid var(--is-gray-100);transition:all var(--dur-md) var(--ease)}
.news-featured__main:hover{box-shadow:var(--sh-lg);border-color:transparent}
.news-featured__main .news-card__img{aspect-ratio:16/10}
.news-featured__sidebar{display:grid;gap:var(--sp-md)}
.news-mini{display:flex;gap:var(--sp-md);padding:var(--sp-md);border-radius:var(--r-lg);border:1px solid var(--is-gray-100);transition:all var(--dur-md) var(--ease);text-decoration:none;color:inherit}
.news-mini:hover{box-shadow:var(--sh-md);border-color:transparent;transform:translateY(-2px)}
.news-mini__img{width:90px;height:68px;border-radius:var(--r-md);overflow:hidden;flex-shrink:0;background:var(--is-blue-50)}
.news-mini__img img{width:100%;height:100%;object-fit:cover}
.news-mini__body{flex:1;min-width:0}
.news-mini__date{font-size:var(--fs-xs);color:var(--is-gray-400);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.news-mini__title{font-family:var(--ff-display);font-size:var(--fs-sm);font-weight:700;color:var(--is-gray-900);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.news-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-lg)}
@media(min-width:640px){.news-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.news-grid{grid-template-columns:repeat(3,1fr)}}

.news-filters{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:var(--sp-2xl);justify-content:center}
.news-filter{padding:.45rem 1.1rem;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:600;border:1px solid var(--is-gray-200);background:transparent;color:var(--is-gray-600);cursor:pointer;transition:all var(--dur-fast)}
.news-filter:hover,.news-filter--active{background:var(--is-blue-50);color:var(--is-blue-600);border-color:var(--is-blue-200)}

/* Pagination modern */
.pagination{display:flex;justify-content:center;gap:.35rem;margin-top:var(--sp-3xl)}
.pagination .page-numbers{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r-md);font-size:var(--fs-sm);font-weight:600;color:var(--is-gray-600);border:1px solid var(--is-gray-200);transition:all var(--dur-fast);text-decoration:none}
.pagination .page-numbers:hover{background:var(--is-blue-50);border-color:var(--is-blue-200);color:var(--is-blue-600)}
.pagination .page-numbers.current{background:var(--is-blue-500);color:#fff;border-color:var(--is-blue-500)}
.pagination .prev,.pagination .next{width:auto;padding:0 1rem;gap:.25rem}

/* ─── AUCTIONS PAGE ─── */
.auction-card{background:#fff;border:1px solid var(--is-gray-100);border-radius:var(--r-xl);padding:var(--sp-xl);transition:all var(--dur-md) var(--ease);position:relative;overflow:hidden}
.auction-card:hover{box-shadow:var(--sh-lg);border-color:transparent;transform:translateY(-3px)}
.auction-card__status{display:inline-flex;padding:.25rem .75rem;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--sp-md)}
.auction-card__status--active{background:var(--is-green-100);color:#16A34A}
.auction-card__status--upcoming{background:var(--is-blue-100);color:var(--is-blue-700)}
.auction-card__status--closed{background:var(--is-gray-100);color:var(--is-gray-500)}
.auction-card__title{font-family:var(--ff-display);font-size:var(--fs-h4);font-weight:700;margin-bottom:var(--sp-sm);line-height:1.3}
.auction-card__meta{display:flex;flex-wrap:wrap;gap:var(--sp-md);margin:var(--sp-md) 0;font-size:var(--fs-sm);color:var(--is-gray-500)}
.auction-card__meta-item{display:flex;align-items:center;gap:.35rem}
.auction-card__meta-item svg{width:16px;height:16px;opacity:.5}
.auction-card__desc{font-size:var(--fs-sm);color:var(--is-gray-600);line-height:1.6;margin-bottom:var(--sp-md)}
.auction-card__footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--sp-md);border-top:1px solid var(--is-gray-100)}

.auctions-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-lg)}
@media(min-width:768px){.auctions-grid{grid-template-columns:repeat(2,1fr)}}

/* ─── CONTACT PAGE ─── */
.contact-layout{display:grid;grid-template-columns:1fr;gap:var(--sp-3xl)}
@media(min-width:768px){.contact-layout{grid-template-columns:1fr 1fr}}
.contact-info-card{display:flex;gap:var(--sp-md);padding:var(--sp-lg);background:var(--is-gray-50);border-radius:var(--r-lg);transition:all var(--dur-fast)}
.contact-info-card:hover{background:#fff;box-shadow:var(--sh-sm)}
.contact-info-card__icon{flex-shrink:0;width:46px;height:46px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center}
.contact-map{border-radius:var(--r-xl);overflow:hidden;aspect-ratio:16/9;background:var(--is-gray-100);margin-top:var(--sp-2xl)}
.contact-map iframe{width:100%;height:100%;border:none}

/* ─── BROCHURES PAGE ─── */
.brochure-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-xl)}
@media(min-width:640px){.brochure-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.brochure-grid{grid-template-columns:repeat(3,1fr)}}

.brochure-card{background:#fff;border:1px solid var(--is-gray-100);border-radius:var(--r-xl);overflow:hidden;transition:all var(--dur-md) var(--ease)}
.brochure-card:hover{box-shadow:var(--sh-lg);border-color:transparent;transform:translateY(-3px)}
.brochure-card__img{aspect-ratio:3/4;overflow:hidden;background:var(--is-gray-50);position:relative}
.brochure-card__img img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease)}
.brochure-card:hover .brochure-card__img img{transform:scale(1.04)}
.brochure-card__badge{position:absolute;top:var(--sp-md);right:var(--sp-md);padding:.3rem .7rem;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:700;background:rgba(17,24,39,.75);color:#fff;backdrop-filter:blur(8px)}
.brochure-card__body{padding:var(--sp-lg)}
.brochure-card__date{font-size:var(--fs-xs);color:var(--is-gray-400);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem}
.brochure-card__title{font-family:var(--ff-display);font-size:var(--fs-body);font-weight:700;color:var(--is-gray-900);margin-bottom:.35rem;line-height:1.3}
.brochure-card__desc{font-size:var(--fs-sm);color:var(--is-gray-500);line-height:1.5;margin-bottom:var(--sp-md);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.brochure-card__actions{display:flex;gap:.5rem;flex-wrap:wrap}

/* PDF Viewer */
.pdf-viewer-overlay{position:fixed;inset:0;z-index:var(--z-modal);background:rgba(17,24,39,.8);backdrop-filter:blur(8px);display:none;flex-direction:column}
.pdf-viewer-overlay--open{display:flex}
.pdf-viewer__toolbar{display:flex;align-items:center;justify-content:space-between;padding:.75rem var(--gutter);background:var(--is-gray-900);color:#fff;flex-shrink:0}
.pdf-viewer__toolbar-title{font-family:var(--ff-display);font-weight:700;font-size:var(--fs-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;margin:0 1rem}
.pdf-viewer__toolbar-actions{display:flex;gap:.5rem;align-items:center}
.pdf-viewer__toolbar .btn{padding:.4rem .8rem;font-size:var(--fs-xs)}
.pdf-viewer__frame{flex:1;background:#525659}
.pdf-viewer__frame iframe,.pdf-viewer__frame object,.pdf-viewer__frame embed{width:100%;height:100%;border:none}
.pdf-viewer__fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--sp-md);color:rgba(255,255,255,.6);text-align:center;padding:var(--sp-xl)}

/* ═══════════════════════════════════════════
   v3.4 — iPhone/Mobile fixes from screenshots
   ═══════════════════════════════════════════ */

/* Fix 2: Footer newsletter captcha — bigger, usable on mobile */
.footer-nl .captcha-puzzle{font-size:.85rem!important;color:rgba(255,255,255,.6)!important;white-space:nowrap}
.footer-nl .captcha-answer{width:60px!important;padding:.45rem .6rem!important;font-size:1rem!important;border-radius:var(--r-md)!important;border:1px solid rgba(255,255,255,.2)!important;background:rgba(255,255,255,.08)!important;color:#fff!important;text-align:center}
.footer-nl .captcha-answer:focus{border-color:var(--is-blue-400)!important;background:rgba(255,255,255,.12)!important;outline:none}
.footer-nl .captcha-row-inline{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:nowrap}

/* Fix 5: Prevent iPhone Safari zoom on input focus — font-size must be >= 16px */
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width: 1024px) {
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="search"],
  input[type="number"],
  textarea,
  select {
    font-size: 16px !important;
  }
}

/* Also fix popup form inputs explicitly */
.popup-box__body input,
.popup-box__body textarea,
.popup-box__body select {
  font-size: 16px;
}

/* Footer newsletter input */
.footer-nl__input {
  font-size: 16px !important;
}

/* Fix industry card icon clipping — ensure icon has breathing room */
.ind-card__icon {
  flex-shrink: 0;
  overflow: visible;
}
.ind-card {
  padding: var(--sp-xl);
}

/* Service card improved spacing on mobile */
@media(max-width:639px) {
  .svc-card {
    padding: var(--sp-lg);
  }
  .svc-card__icon {
    width: 40px;
    height: 40px;
    margin-bottom: var(--sp-sm);
  }
}

/* ═══════════════════════════════════════════
   v3.8 — Header controls, Search, Lang fix,
   Footer 8-col, Captcha fix, Custom icons
   ═══════════════════════════════════════════ */

/* Header controls — always visible */
.header-controls{display:flex;align-items:center;gap:6px}
.header-icon-btn{width:38px;height:38px;border-radius:50%;border:none;background:transparent;color:var(--is-gray-400);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--dur-fast)}
.header-icon-btn:hover{background:var(--is-gray-100);color:var(--is-gray-700)}
.site-header--top .header-icon-btn{color:rgba(255,255,255,.6)}
.site-header--top .header-icon-btn:hover{background:rgba(255,255,255,.1);color:#fff}
.header-cta-btn{display:none}
@media(min-width:1024px){.header-cta-btn{display:inline-flex}}

/* Lang switcher — ALWAYS visible, including mobile */
.lang-sw{display:flex!important;gap:3px}
.lang-btn{padding:.3rem .5rem;font-size:var(--fs-xs);font-weight:700;border-radius:var(--r-sm);border:1px solid var(--is-gray-200);background:transparent;color:var(--is-gray-500);cursor:pointer;transition:all var(--dur-fast);text-decoration:none;display:inline-flex;align-items:center}
.lang-btn--active{background:var(--is-blue-50);color:var(--is-blue-600);border-color:var(--is-blue-200)}
.lang-btn:hover{background:var(--is-blue-50);color:var(--is-blue-600);border-color:var(--is-blue-200)}
/* Fix 2: Transparent header lang — HIGH CONTRAST on hover */
.site-header--top .lang-btn{border-color:rgba(255,255,255,.25);color:rgba(255,255,255,.6);background:transparent}
.site-header--top .lang-btn--active{background:rgba(255,255,255,.2);color:#fff;border-color:rgba(255,255,255,.5)}
.site-header--top .lang-btn:hover{background:rgba(255,255,255,.2);color:#fff;border-color:rgba(255,255,255,.5)}

/* Search overlay */
.search-overlay{position:fixed;inset:0;z-index:500;background:rgba(17,24,39,.85);backdrop-filter:blur(16px);display:none;flex-direction:column;padding-top:76px}
.search-overlay--open{display:flex}
.search-overlay__inner{width:100%;max-width:680px;margin:var(--sp-xl) auto 0;padding:0 var(--gutter)}
.search-overlay__bar{display:flex;align-items:center;gap:var(--sp-md);background:#fff;border-radius:var(--r-xl);padding:.5rem .75rem .5rem 1rem;box-shadow:var(--sh-xl)}
.search-overlay__icon{flex-shrink:0;color:var(--is-gray-400)}
.search-overlay__bar input{flex:1;border:none;outline:none;font-size:16px;font-family:var(--ff-body);color:var(--is-gray-900);background:transparent;padding:.5rem 0}
.search-overlay__bar input::placeholder{color:var(--is-gray-400)}
.search-overlay__close{width:36px;height:36px;border-radius:50%;border:none;background:var(--is-gray-50);color:var(--is-gray-500);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--dur-fast)}
.search-overlay__close:hover{background:var(--is-gray-100);color:var(--is-gray-900)}
.search-results{margin-top:var(--sp-lg);max-height:60vh;overflow-y:auto}
.search-hint{text-align:center;color:rgba(255,255,255,.5);padding:var(--sp-xl) 0}
.search-hint p{font-size:var(--fs-sm);margin-bottom:var(--sp-md)}
.search-hint__tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.search-hint__tag{padding:.4rem .9rem;border-radius:var(--r-full);background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);font-size:var(--fs-xs);font-weight:600;cursor:pointer;border:1px solid rgba(255,255,255,.1);transition:all var(--dur-fast)}
.search-hint__tag:hover{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.25)}
/* Search result items */
.search-result{display:flex;gap:var(--sp-md);padding:var(--sp-md);background:rgba(255,255,255,.06);border-radius:var(--r-lg);margin-bottom:6px;text-decoration:none;color:#fff;transition:background var(--dur-fast);border:1px solid transparent}
.search-result:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.1);color:#fff}
.search-result__icon{width:40px;height:40px;border-radius:var(--r-md);background:rgba(49,152,197,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--is-blue-300)}
.search-result__info{flex:1;min-width:0}
.search-result__title{font-family:var(--ff-display);font-size:var(--fs-sm);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-result__type{font-size:var(--fs-xs);color:rgba(255,255,255,.4);margin-top:2px}
.search-result__excerpt{font-size:var(--fs-xs);color:rgba(255,255,255,.35);margin-top:2px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.search-loading{text-align:center;padding:var(--sp-xl);color:rgba(255,255,255,.4)}
.search-noresults{text-align:center;padding:var(--sp-2xl);color:rgba(255,255,255,.4);font-size:var(--fs-sm)}

/* Industry card icons — custom SVGs */
.ind-card__icon svg{width:24px;height:24px}

/* Footer 8-column grid */
.footer__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-xl);padding-bottom:var(--sp-2xl);border-bottom:1px solid rgba(255,255,255,.06)}
@media(min-width:768px){.footer__grid{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1200px){.footer__grid{grid-template-columns:1.5fr repeat(4,1fr) 1fr 1.2fr;gap:var(--sp-lg)}}
.footer__brand{grid-column:1/-1}
@media(min-width:1200px){.footer__brand{grid-column:auto}}

/* Footer captcha — LARGE and CLEAR */
.footer-captcha{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:nowrap}
.footer-captcha__puzzle{font-size:1rem!important;color:rgba(255,255,255,.7)!important;white-space:nowrap;font-family:var(--ff-display);font-weight:700;background:rgba(255,255,255,.08);padding:.35rem .7rem;border-radius:var(--r-md)}
.footer-captcha__input{width:64px!important;padding:.5rem .65rem!important;border-radius:var(--r-md)!important;border:1px solid rgba(255,255,255,.2)!important;background:rgba(255,255,255,.08)!important;color:#fff!important;font-size:16px!important;text-align:center!important;font-family:var(--ff-body)!important}
.footer-captcha__input:focus{border-color:var(--is-blue-400)!important;background:rgba(255,255,255,.12)!important;outline:none!important;box-shadow:0 0 0 3px rgba(49,152,197,.2)!important}
.footer-captcha__input::placeholder{color:rgba(255,255,255,.3)!important}
.footer-nl__unsub{font-size:.75rem;color:rgba(255,255,255,.25);text-decoration:underline;display:inline-block;margin-top:4px}
.footer-nl__unsub:hover{color:rgba(255,255,255,.5)}

/* ═══════════════════════════════════════════
   v3.9 — Logo fix, Footer rows, 3-level nav,
   Mobile close, Better menu buttons
   ═══════════════════════════════════════════ */

/* ── FIX 1+2: Logo contained within header ── */
.site-logo{display:flex;align-items:center;gap:.6rem;flex-shrink:0;max-height:100%}
.site-logo img,.site-logo .custom-logo{max-height:44px!important;width:auto!important;height:auto!important;object-fit:contain}
.site-header--scrolled .site-logo img,
.site-header--scrolled .site-logo .custom-logo{max-height:40px!important}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:76px;padding-inline:var(--gutter);max-width:var(--container-wide);margin-inline:auto;overflow:visible}

/* ── FIX 3: Footer — two rows ── */
.footer__row-top{display:grid;grid-template-columns:1fr;gap:var(--sp-2xl);padding-bottom:var(--sp-2xl);border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:var(--sp-xl)}
@media(min-width:768px){.footer__row-top{grid-template-columns:1.5fr 1fr 1.2fr}}

.footer__row-links{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-xl);padding-bottom:var(--sp-2xl);border-bottom:1px solid rgba(255,255,255,.06)}
@media(min-width:768px){.footer__row-links{grid-template-columns:repeat(4,1fr)}}

/* ── FIX 5: Desktop 3-level nav ── */
.main-nav__list{display:flex;gap:2px;list-style:none;align-items:center;margin:0;padding:0}

/* Level 0 */
.nav-L0{position:relative;list-style:none}
.nav-L0__link{display:flex;align-items:center;gap:4px;padding:.5rem .85rem;font-size:var(--fs-sm);font-weight:600;color:var(--is-gray-600);border-radius:var(--r-md);transition:all var(--dur-fast);text-decoration:none;white-space:nowrap}
.nav-L0__link:hover,.nav-L0.nav-active>.nav-L0__link{color:var(--is-blue-600);background:var(--is-blue-50)}
.site-header--top .nav-L0__link{color:rgba(255,255,255,.8)}
.site-header--top .nav-L0__link:hover,.site-header--top .nav-L0.nav-active>.nav-L0__link{color:#fff;background:rgba(255,255,255,.1)}
.nav-chevron{width:12px;height:12px;opacity:.4;transition:transform var(--dur-fast)}.nav-L0:hover .nav-chevron{transform:rotate(180deg)}

/* Level 1 dropdown */
.nav-drop{position:absolute;top:calc(100% + 6px);left:0;min-width:260px;background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-xl);padding:6px;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .25s var(--ease);border:1px solid var(--is-gray-100);z-index:var(--z-dropdown);pointer-events:none}
.nav-L0:hover>.nav-drop{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}

.nav-L1{position:relative}
.nav-L1__link{display:flex;align-items:center;justify-content:space-between;padding:.55rem .9rem;font-size:var(--fs-sm);color:var(--is-gray-600);border-radius:var(--r-md);transition:all var(--dur-fast);text-decoration:none;gap:4px}
.nav-L1__link:hover{background:var(--is-blue-50);color:var(--is-blue-700)}
.nav-chevron-r{width:10px;height:10px;opacity:.3;flex-shrink:0}

/* Level 2 sub-dropdown */
.nav-drop__sub{position:absolute;top:-6px;left:calc(100% + 4px);min-width:220px;background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-xl);padding:6px;opacity:0;visibility:hidden;transform:translateX(6px);transition:all .25s var(--ease);border:1px solid var(--is-gray-100);z-index:var(--z-dropdown);pointer-events:none}
.nav-L1:hover>.nav-drop__sub{opacity:1;visibility:visible;transform:translateX(0);pointer-events:auto}
.nav-L2__link{display:block;padding:.5rem .9rem;font-size:var(--fs-sm);color:var(--is-gray-500);border-radius:var(--r-md);transition:all var(--dur-fast);text-decoration:none}
.nav-L2__link:hover{background:var(--is-blue-50);color:var(--is-blue-700)}

/* ── FIX 6: Mobile menu close button ── */
.mobile-menu{position:fixed;inset:0;z-index:var(--z-overlay);background:#fff;padding:0;overflow-y:auto;transform:translateX(100%);transition:transform var(--dur-slow) var(--ease);display:flex;flex-direction:column}
.mobile-menu--open{transform:translateX(0)}
.mobile-menu__close{position:absolute;top:18px;right:16px;width:44px;height:44px;border-radius:50%;border:1px solid var(--is-gray-200);background:#fff;color:var(--is-gray-600);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:5;transition:all var(--dur-fast)}
.mobile-menu__close:hover{background:var(--is-gray-50);color:var(--is-gray-900);border-color:var(--is-gray-300)}
.mobile-menu__list{list-style:none;padding:72px var(--gutter) 0;margin:0;flex:1;overflow-y:auto}
.mobile-menu__footer{padding:var(--sp-md) var(--gutter) var(--sp-xl);border-top:1px solid var(--is-gray-100)}

/* ── FIX 7: Mobile menu — modern button styling ── */
.mob-item{border-bottom:1px solid var(--is-gray-50)}
.mob-item__row{display:flex;align-items:center}
.mob-link{display:block;padding:.85rem 0;font-family:var(--ff-display);text-decoration:none;transition:color var(--dur-fast);flex:1}
.mob-link--L0{font-size:1.05rem;font-weight:700;color:var(--is-gray-800)}
.mob-link--L0:hover{color:var(--is-blue-600)}
.mob-link--L1{font-size:var(--fs-body);font-weight:600;color:var(--is-gray-600);padding:.7rem 0 .7rem var(--sp-lg)}
.mob-link--L1:hover{color:var(--is-blue-600)}
.mob-link--L2{font-size:var(--fs-sm);font-weight:500;color:var(--is-gray-500);padding:.55rem 0 .55rem var(--sp-2xl)}
.mob-link--L2:hover{color:var(--is-blue-600)}

.mob-toggle-sub{width:44px;height:44px;border:none;background:transparent;color:var(--is-gray-400);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--r-md);transition:all var(--dur-fast)}
.mob-toggle-sub:hover{background:var(--is-gray-50);color:var(--is-gray-700)}
.mob-toggle-sub--open{transform:rotate(180deg);color:var(--is-blue-600)}
.mob-toggle-sub--open:hover{background:var(--is-blue-50)}

.mob-sub{padding-left:0;border-left:2px solid var(--is-blue-100);margin-left:var(--sp-md)}
.mob-sub--L2{margin-left:var(--sp-xl);border-left-color:var(--is-gray-100)}

/* Hide old mobile menu classes if still present */
.mobile-menu__link{display:none}

/* ═══════════════════════════════════════════
   v3.9.1 — CRITICAL fixes from live site
   ═══════════════════════════════════════════ */

/* ── LOGO: Aggressive containment ── */
.site-logo{display:flex;align-items:center;gap:.5rem;flex-shrink:0;height:100%;max-height:76px;padding:8px 0}
.site-logo img,
.site-logo .custom-logo,
.custom-logo-link img,
.site-logo a img{max-height:48px!important;width:auto!important;height:48px!important;object-fit:contain!important;display:block}
.site-header--scrolled .site-logo img,
.site-header--scrolled .site-logo .custom-logo,
.site-header--scrolled .custom-logo-link img{max-height:42px!important;height:42px!important}
/* Footer logo smaller */
.site-footer .site-logo img,
.site-footer .site-logo .custom-logo,
.site-footer .custom-logo-link img{max-height:52px!important;height:52px!important}

/* ── DROPDOWN: Slower hide, bridge gap ── */
.nav-drop{top:100%;padding-top:8px;margin-top:0}
.nav-L0>.nav-drop{transition:opacity .3s ease,visibility .3s ease,transform .3s ease}
.nav-L0:hover>.nav-drop{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;transition-delay:0s}
.nav-drop{opacity:0;visibility:hidden;transform:translateY(6px);transition-delay:.15s}
/* Invisible bridge between link and dropdown */
.nav-L0>.nav-drop::before{content:'';position:absolute;top:-12px;left:0;right:0;height:12px;background:transparent}

.nav-drop__sub{transition:opacity .3s ease,visibility .3s ease,transform .3s ease;transition-delay:.1s}
.nav-L1:hover>.nav-drop__sub{transition-delay:0s}
.nav-drop__sub{transition-delay:.15s}
.nav-L1>.nav-drop__sub::before{content:'';position:absolute;top:0;left:-8px;width:8px;height:100%;background:transparent}

/* ── PAGE HEADER: Safe for long titles ── */
.page-header{background:linear-gradient(135deg,var(--is-gray-900),#1a0e2e);padding:calc(76px + var(--sp-2xl)) var(--gutter) var(--sp-2xl);text-align:center;overflow:hidden}
.page-header__title{font-size:clamp(1.25rem,3vw,var(--fs-h2));color:#fff;margin-bottom:var(--sp-sm);word-break:break-word;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:var(--container-narrow);margin-inline:auto;line-height:1.25}
.page-header__breadcrumb{display:flex;justify-content:center;flex-wrap:wrap;gap:.3rem;font-size:var(--fs-xs);color:rgba(255,255,255,.35);max-width:var(--container-narrow);margin-inline:auto;overflow:hidden}
.page-header__breadcrumb a{color:rgba(255,255,255,.55);white-space:nowrap}.page-header__breadcrumb a:hover{color:var(--is-blue-300)}
.page-header__breadcrumb span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px;display:inline-block;vertical-align:bottom}

/* ═══════════════════════════════════════════
   v3.9.2 — Logo align, service icons, footer
   links styling, social SVGs, address maps
   ═══════════════════════════════════════════ */

/* ── 1. Logo aligned LEFT ── */
.header-inner{justify-content:flex-start;gap:var(--sp-md)}
.main-nav{margin-left:auto}
.header-controls{margin-left:0;gap:6px}
@media(max-width:1023px){
  .header-inner{justify-content:space-between}
}

/* ── 2. Service card icon sizing ── */
.svc-card__icon svg{width:24px;height:24px}

/* ── 3. Footer link section — distinct visual treatment ── */
.footer__row-links{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-xl) var(--sp-lg);padding:var(--sp-2xl) 0;margin:0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);position:relative}
@media(min-width:768px){.footer__row-links{grid-template-columns:repeat(4,1fr);padding:var(--sp-2xl) var(--sp-lg)}}
.footer__row-links::before{content:'';position:absolute;inset:0;background:rgba(255,255,255,.02);border-radius:var(--r-xl);pointer-events:none}
.footer__row-links .footer__heading{color:rgba(255,255,255,.95);font-size:.7rem;margin-bottom:var(--sp-md);padding-bottom:.4rem;border-bottom:2px solid var(--is-blue-500);display:inline-block}
.footer__row-links .footer__links{gap:.25rem}
.footer__row-links .footer__links a{font-size:.8rem;color:rgba(255,255,255,.5);padding:.2rem 0;display:inline-block;transition:color var(--dur-fast),padding-left var(--dur-fast)}
.footer__row-links .footer__links a:hover{color:var(--is-blue-300);padding-left:4px}

/* ── 4. Social icons — proper branded SVGs ── */
.footer__social-link{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.05);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.4);transition:all var(--dur-fast);border:1px solid rgba(255,255,255,.06)}
.footer__social-link:hover{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.15);transform:translateY(-2px)}
.footer__social-link svg{width:16px;height:16px;fill:currentColor}

/* ── 5. Footer logo — bigger ── */
.footer-logo img,
.footer-logo .custom-logo,
.footer-logo .custom-logo-link img{max-height:72px!important;height:72px!important;width:auto!important}
.footer-logo{margin-bottom:var(--sp-md)}

/* ── 6. Address links — map launch cards ── */
.footer-addr{display:flex;align-items:center;gap:.6rem;padding:.65rem .85rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:var(--r-lg);color:rgba(255,255,255,.6);font-size:.8rem;text-decoration:none;transition:all var(--dur-md) var(--ease);line-height:1.4}
.footer-addr:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.9);transform:translateY(-1px)}
.footer-addr__icon{flex-shrink:0;width:32px;height:32px;border-radius:var(--r-md);background:rgba(49,152,197,.12);color:var(--is-blue-300);display:flex;align-items:center;justify-content:center}
.footer-addr span{flex:1}
.footer-addr__arrow{flex-shrink:0;opacity:0;transform:translate(-4px,4px);transition:all var(--dur-fast);color:var(--is-blue-300)}
.footer-addr:hover .footer-addr__arrow{opacity:1;transform:translate(0,0)}

/* ── v3.9.3: Footer spacing + no logo ── */
.footer__row-top{margin-top:var(--sp-2xl);padding-top:var(--sp-2xl)}
.footer__brand-desc{font-size:var(--fs-sm);line-height:1.7;margin:0 0 var(--sp-md);color:rgba(255,255,255,.45)}

/* ═══════════════════════════════════════════
   v3.9.4 — Sticky logo, mobile align,
   PageSpeed accessibility fixes
   ═══════════════════════════════════════════ */

/* ── Sticky logo: show/hide ── */
.site-logo__sticky{display:none}
.site-header--scrolled .site-logo__sticky{display:block}
.site-header--scrolled .custom-logo-link,
.site-header--scrolled .site-logo>.custom-logo-link{display:none}
/* If no sticky logo uploaded, keep default visible */
.site-logo__sticky + .custom-logo-link{display:block}
.site-header--scrolled .site-logo:not(:has(.site-logo__sticky)) .custom-logo-link{display:block}
/* When sticky logo exists and header is scrolled: hide default, show sticky */
.site-header--top .site-logo__sticky{display:none!important}
.site-header--top .custom-logo-link{display:block!important}

/* Both logo variants same sizing */
.site-logo__sticky{max-height:42px!important;width:auto!important;height:42px!important;object-fit:contain}

/* ── Mobile logo LEFT alignment ── */
@media(max-width:1023px){
  .header-inner{justify-content:space-between}
  .site-logo{margin-right:auto}
  .header-controls{margin-left:0;gap:4px}
}

/* ── PageSpeed: Accessibility fixes ── */

/* Buttons need accessible names — already done via aria-label in HTML */
/* Fix contrast — cookie bar text */
.cookie-bar__text{color:var(--is-gray-700)}
.cookie-bar__text a{color:var(--is-blue-600)}

/* Fix contrast — footer links section */
.footer__row-links .footer__links a{color:rgba(255,255,255,.55)}
.footer__row-links .footer__links a:hover{color:var(--is-blue-200)}

/* Fix contrast — footer brand desc */
.footer__brand-desc{color:rgba(255,255,255,.5)}

/* Fix contrast — hero description */
.hero__desc{color:rgba(255,255,255,.7)}

/* Fix contrast — service card description */
.svc-card__desc{color:rgba(255,255,255,.6)}

/* Tables — proper structure for screen readers */
table{border-collapse:collapse;width:100%}
table th,table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--is-gray-100)}
table caption{font-weight:700;margin-bottom:.5rem;text-align:left}

/* Reduced motion: disable all animations */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Focus visible for keyboard nav */
:focus-visible{outline:2px solid var(--is-blue-500);outline-offset:3px;border-radius:var(--r-sm)}
a:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none}

/* Skip link */
.skip-link:focus{position:fixed!important;top:8px;left:8px;z-index:99999;width:auto!important;height:auto!important;clip:auto!important;padding:.75rem 1.5rem;background:var(--is-blue-500);color:#fff;font-weight:700;border-radius:var(--r-md);box-shadow:var(--sh-lg);font-size:var(--fs-sm)}

/* ═══════════════════════════════════════════
   v3.9.5 — 3 New Carousels
   ═══════════════════════════════════════════ */

/* ── TESTIMONIALS ── */
.testimonials-section{padding:var(--sp-5xl) 0;background:var(--is-gray-50)}
.testimonials-swiper{padding-bottom:3rem!important}
.testimonials-swiper .swiper-pagination-bullet{background:var(--is-gray-300);opacity:1}
.testimonials-swiper .swiper-pagination-bullet-active{background:var(--is-blue-500);width:24px;border-radius:var(--r-full)}

.testi-card{background:#fff;border-radius:var(--r-xl);padding:var(--sp-xl);border:1px solid var(--is-gray-100);height:100%;display:flex;flex-direction:column;transition:all var(--dur-md) var(--ease)}
.testi-card:hover{box-shadow:var(--sh-md);border-color:transparent}
.testi-card__quote{position:relative;flex:1;margin-bottom:var(--sp-lg)}
.testi-card__quote-icon{position:absolute;top:0;left:0;color:var(--is-blue-500)}
.testi-card__text{font-size:var(--fs-body);color:var(--is-gray-600);line-height:1.7;margin:0;padding-top:.5rem;font-style:italic}
.testi-card__author{display:flex;align-items:center;gap:var(--sp-md);margin-bottom:var(--sp-md)}
.testi-card__avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--is-blue-50)}
.testi-card__avatar img{width:100%;height:100%;object-fit:cover}
.testi-card__avatar--placeholder{display:flex;align-items:center;justify-content:center;font-family:var(--ff-display);font-weight:800;font-size:1.1rem;color:var(--is-blue-500);background:linear-gradient(135deg,var(--is-blue-50),var(--is-purple-50))}
.testi-card__name{display:block;font-family:var(--ff-display);font-size:var(--fs-sm);font-weight:700;color:var(--is-gray-900)}
.testi-card__role{display:block;font-size:var(--fs-xs);color:var(--is-gray-500)}
.testi-card__more{font-size:var(--fs-sm);color:var(--is-blue-600);font-weight:600;text-decoration:none;transition:color var(--dur-fast)}
.testi-card__more:hover{color:var(--is-purple-700)}

/* ── #SOFIA IS — Logo Carousel ── */
.sofia-is-section{padding:var(--sp-4xl) 0;background:#fff;overflow:hidden}
.logos-swiper{padding:var(--sp-md) 0}
.logo-slide{display:flex;align-items:center;justify-content:center;height:80px;padding:var(--sp-md) var(--sp-lg);background:var(--is-gray-50);border-radius:var(--r-lg);border:1px solid var(--is-gray-100);transition:all var(--dur-md) var(--ease);text-decoration:none}
.logo-slide:hover{background:#fff;box-shadow:var(--sh-md);border-color:transparent;transform:scale(1.05)}
.logo-slide__img{max-height:48px;max-width:140px;width:auto;height:auto;object-fit:contain;filter:grayscale(.6);opacity:.7;transition:all var(--dur-md)}
.logo-slide:hover .logo-slide__img{filter:grayscale(0);opacity:1}
.logo-slide__text{font-family:var(--ff-display);font-weight:700;font-size:var(--fs-sm);color:var(--is-gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ── EVENTS ── */
.events-section{padding:var(--sp-5xl) 0;background:linear-gradient(180deg,#fff 0%,var(--is-gray-50) 100%)}
.events-swiper{padding-bottom:3rem!important}
.events-swiper .swiper-pagination-bullet{background:var(--is-gray-300);opacity:1}
.events-swiper .swiper-pagination-bullet-active{background:var(--is-blue-500);width:24px;border-radius:var(--r-full)}
.events-swiper .swiper-button-prev,.events-swiper .swiper-button-next{width:44px;height:44px;background:#fff;border-radius:50%;box-shadow:var(--sh-md);color:var(--is-gray-600);top:40%}
.events-swiper .swiper-button-prev::after,.events-swiper .swiper-button-next::after{font-size:16px;font-weight:700}
.events-swiper .swiper-button-prev:hover,.events-swiper .swiper-button-next:hover{background:var(--is-blue-500);color:#fff}
@media(max-width:767px){.events-swiper .swiper-button-prev,.events-swiper .swiper-button-next{display:none}}

.event-card{display:grid;grid-template-columns:1fr;background:#fff;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--is-gray-100);transition:all var(--dur-md) var(--ease);text-decoration:none;color:inherit;height:100%}
@media(min-width:768px){.event-card{grid-template-columns:1fr 1fr}}
.event-card:hover{box-shadow:var(--sh-lg);border-color:transparent;transform:translateY(-3px)}

.event-card__img{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--is-gray-50)}
@media(min-width:768px){.event-card__img{aspect-ratio:auto;min-height:280px}}
.event-card__img img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease)}
.event-card:hover .event-card__img img{transform:scale(1.05)}

.event-card__date-badge{position:absolute;top:var(--sp-md);left:var(--sp-md);background:#fff;border-radius:var(--r-lg);padding:.5rem .75rem;text-align:center;box-shadow:var(--sh-md);line-height:1}
.event-card__day{display:block;font-family:var(--ff-display);font-size:1.5rem;font-weight:800;color:var(--is-blue-600);line-height:1}
.event-card__month{display:block;font-size:var(--fs-xs);font-weight:700;color:var(--is-gray-500);text-transform:uppercase;letter-spacing:.08em;margin-top:2px}

.event-card__body{padding:var(--sp-xl);display:flex;flex-direction:column;justify-content:center}
.event-card__meta{display:flex;flex-wrap:wrap;gap:var(--sp-md);margin-bottom:var(--sp-md);font-size:var(--fs-xs);color:var(--is-gray-500)}
.event-card__meta span{display:flex;align-items:center;gap:4px}
.event-card__meta svg{width:14px;height:14px;opacity:.5}
.event-card__title{font-family:var(--ff-display);font-size:var(--fs-h4);font-weight:700;color:var(--is-gray-900);margin-bottom:var(--sp-sm);line-height:1.3}
.event-card__excerpt{font-size:var(--fs-sm);color:var(--is-gray-500);line-height:1.6;margin-bottom:var(--sp-md);flex:1}
.event-card__link{font-size:var(--fs-sm);font-weight:700;color:var(--is-blue-600);display:inline-flex;align-items:center;gap:4px;transition:gap var(--dur-fast)}
.event-card:hover .event-card__link{gap:8px;color:var(--is-purple-700)}

/* ═══ v3.9.6 — Mobile footer + logo fix ═══ */

/* Logo: force left on mobile */
@media(max-width:1023px){
  .header-inner{display:flex!important;justify-content:space-between!important;align-items:center}
  .site-logo{margin-right:auto!important;flex-shrink:0}
  .header-controls{margin-left:auto!important;flex-shrink:0}
}

/* Footer links: proper padding on mobile so text doesn't touch edges */
@media(max-width:767px){
  .footer__row-links{padding:var(--sp-xl) var(--sp-md)!important;gap:var(--sp-lg) var(--sp-md)}
  .footer__row-links .footer__heading{font-size:.65rem}
  .footer__row-links .footer__links a{font-size:.75rem}
}

/* ═══ v3.9.7 — Force logo flush-left on mobile ═══ */
@media(max-width:1023px){
  .header-inner{padding-left:var(--gutter)!important;padding-right:8px!important}
  .site-logo{margin-right:auto!important;padding-right:0!important}
  .site-logo img,.site-logo .custom-logo,.custom-logo-link img{max-height:40px!important;height:40px!important}
  .header-controls{gap:2px!important}
  .header-icon-btn{width:34px;height:34px}
  .lang-btn{padding:.25rem .4rem;font-size:10px}
  .mobile-toggle{padding:6px}
}

/* ═══ v3.9.8 — Logo wrapper fix (div not a) ═══ */
.site-logo{display:flex!important;align-items:center!important;flex-shrink:0!important}
.site-logo .custom-logo-link{display:flex;align-items:center;line-height:0}
.site-logo__sticky-link{display:none;line-height:0}
.site-header--scrolled .site-logo__sticky-link{display:flex;align-items:center}
.site-header--scrolled .site-logo .custom-logo-link{display:none}
.site-header--top .site-logo__sticky-link{display:none!important}
.site-header--top .site-logo .custom-logo-link{display:flex!important}

/* ═══ v3.9.9 — Header controls not off-screen ═══ */
@media(max-width:1023px){
  .header-inner{padding-right:var(--gutter)!important}
}

/* ═══ v3.9.10 — Kill horizontal scroll on mobile ═══ */
html,body{overflow-x:hidden!important}
.hero,.industries,.why-sofia,.services,.news-section,.cta-band,
.testimonials-section,.sofia-is-section,.events-section,.site-footer{overflow-x:hidden}
.site-header{overflow:visible!important}
.services__orb1,.services__orb2{display:none}
@media(min-width:768px){.services__orb1,.services__orb2{display:block}}
.hero__mesh,.hero__dots,.cta-band__mesh{overflow:hidden}

/* ═══ v3.9.12 — Accessibility fixes ═══ */

/* Footer headings as h2 but styled small */
h2.footer__heading{font-size:.7rem!important;margin-bottom:var(--sp-md);font-family:var(--ff-display)}

/* Mobile sub as ul */
ul.mob-sub{list-style:none;padding-left:0;margin:0;border-left:2px solid var(--is-blue-100);margin-left:var(--sp-md)}
ul.mob-sub--L2{margin-left:var(--sp-xl);border-left-color:var(--is-gray-100)}

/* Touch targets minimum 48px */
.mob-toggle-sub{min-width:48px;min-height:48px}
.footer__links a{min-height:44px;display:flex;align-items:center}
.lang-btn{min-height:32px;min-width:32px;display:inline-flex;align-items:center;justify-content:center}
.cookie-bar__actions .btn{min-height:44px}

/* ═══════════════════════════════════════════
   SINGLE POST — Magazine-style
   ═══════════════════════════════════════════ */

/* Article Hero */
.article-hero{position:relative;padding:calc(76px + var(--sp-3xl)) var(--gutter) var(--sp-3xl);background:var(--is-gray-900);overflow:hidden;min-height:320px;display:flex;align-items:flex-end}
.article-hero--has-img{min-height:480px}
@media(min-width:768px){.article-hero--has-img{min-height:540px}}
.article-hero__bg{position:absolute;inset:0}.article-hero__bg img{width:100%;height:100%;object-fit:cover;opacity:.35}
.article-hero__overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,24,39,.9) 0%,rgba(17,24,39,.4) 50%,rgba(17,24,39,.2) 100%)}
.article-hero__content{position:relative;z-index:2;max-width:var(--container-narrow);margin-inline:auto;width:100%}
.article-hero__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:var(--sp-md);font-size:var(--fs-sm);color:rgba(255,255,255,.55)}
.article-hero__cat{display:inline-block;padding:.25rem .75rem;border-radius:var(--r-full);background:rgba(49,152,197,.2);border:1px solid rgba(49,152,197,.3);color:var(--is-blue-300);font-weight:600;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;text-decoration:none;transition:all var(--dur-fast)}
.article-hero__cat:hover{background:rgba(49,152,197,.3);color:#fff}
.article-hero__dot{opacity:.3}
.article-hero__title{font-size:clamp(1.5rem,4vw,var(--fs-h1));color:#fff;line-height:1.2;margin-bottom:var(--sp-md);max-width:100%;word-break:break-word}
.article-hero__excerpt{font-size:var(--fs-body-lg);color:rgba(255,255,255,.65);max-width:640px;line-height:1.7;margin:0}

/* Article Body */
.article-body{padding:var(--sp-3xl) var(--gutter) var(--sp-4xl);position:relative}
.article-body .container--narrow{max-width:var(--container-narrow);margin-inline:auto;position:relative}

/* Share bar */
.article-share{display:flex;align-items:center;gap:.5rem;margin-bottom:var(--sp-2xl);padding-bottom:var(--sp-lg);border-bottom:1px solid var(--is-gray-100)}
@media(min-width:1200px){
  .article-share{position:sticky;top:100px;float:left;flex-direction:column;margin-left:-80px;margin-bottom:0;padding-bottom:0;border-bottom:none;border-right:none;z-index:10;gap:.4rem}
}
.article-share__label{font-size:var(--fs-xs);font-weight:700;color:var(--is-gray-400);text-transform:uppercase;letter-spacing:.08em}
.article-share__btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--is-gray-100);background:#fff;color:var(--is-gray-500);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--dur-fast);text-decoration:none}
.article-share__btn:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.article-share__btn--fb:hover{background:#1877F2;color:#fff;border-color:#1877F2}
.article-share__btn--li:hover{background:#0A66C2;color:#fff;border-color:#0A66C2}
.article-share__btn--x:hover{background:#000;color:#fff;border-color:#000}
.article-share__btn--copy:hover{background:var(--is-blue-500);color:#fff;border-color:var(--is-blue-500)}
.article-share__btn--copy.copied{background:var(--is-green-500)!important;color:#fff!important;border-color:var(--is-green-500)!important}

/* Article Content — clean typography */
.article-content{font-size:var(--fs-body-lg);line-height:1.85;color:var(--is-gray-700)}
.article-content>*+*{margin-top:1.25em}
.article-content h2{font-size:var(--fs-h3);color:var(--is-gray-900);margin-top:2.5em;margin-bottom:.5em;padding-bottom:.4em;border-bottom:2px solid var(--is-blue-100)}
.article-content h3{font-size:var(--fs-h4);color:var(--is-gray-900);margin-top:2em}
.article-content h4{font-size:var(--fs-body-lg);font-weight:700;color:var(--is-gray-800);margin-top:1.5em}
.article-content p{margin-bottom:0}
.article-content a{color:var(--is-blue-600);text-decoration:underline;text-decoration-color:var(--is-blue-200);text-underline-offset:3px;transition:text-decoration-color var(--dur-fast)}
.article-content a:hover{text-decoration-color:var(--is-blue-500)}
.article-content img{border-radius:var(--r-xl);margin:var(--sp-xl) 0;max-width:100%;height:auto}
.article-content figure{margin:var(--sp-2xl) 0}
.article-content figcaption{font-size:var(--fs-sm);color:var(--is-gray-500);text-align:center;margin-top:.5rem}
.article-content blockquote{border-left:3px solid var(--is-blue-500);padding:var(--sp-md) var(--sp-xl);background:var(--is-blue-50);border-radius:0 var(--r-lg) var(--r-lg) 0;margin:var(--sp-xl) 0;font-style:italic;color:var(--is-gray-600)}
.article-content blockquote p{margin:0}
.article-content ul,.article-content ol{padding-left:1.5em}
.article-content li{margin-bottom:.4em}
.article-content pre{background:var(--is-gray-900);color:var(--is-gray-100);padding:var(--sp-lg);border-radius:var(--r-lg);overflow-x:auto;font-size:var(--fs-sm)}
.article-content table{width:100%;border-collapse:collapse;margin:var(--sp-xl) 0;font-size:var(--fs-sm)}
.article-content th{background:var(--is-blue-50);font-weight:700;text-align:left;padding:.65rem .85rem;border-bottom:2px solid var(--is-blue-200)}
.article-content td{padding:.6rem .85rem;border-bottom:1px solid var(--is-gray-100)}
.article-content tr:hover td{background:var(--is-gray-50)}
.article-content iframe,.article-content video{max-width:100%;border-radius:var(--r-lg);margin:var(--sp-xl) 0}
.article-content .wp-block-image{margin:var(--sp-2xl) 0}
.article-content .wp-block-image img{border-radius:var(--r-xl)}

/* Tags */
.article-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:var(--sp-2xl);padding-top:var(--sp-xl);border-top:1px solid var(--is-gray-100)}
.article-tags a{display:inline-block;padding:.3rem .75rem;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:600;background:var(--is-gray-50);color:var(--is-gray-600);border:1px solid var(--is-gray-100);text-decoration:none;transition:all var(--dur-fast)}
.article-tags a:hover{background:var(--is-blue-50);color:var(--is-blue-600);border-color:var(--is-blue-200)}

/* Post Navigation */
.article-nav{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-md);margin-top:var(--sp-2xl)}
.article-nav__item{padding:var(--sp-lg);border-radius:var(--r-lg);border:1px solid var(--is-gray-100);text-decoration:none;transition:all var(--dur-md) var(--ease)}
.article-nav__item:hover{border-color:var(--is-blue-200);background:var(--is-blue-50);transform:translateY(-2px)}
.article-nav__item--next{text-align:right}
.article-nav__label{display:block;font-size:var(--fs-xs);font-weight:600;color:var(--is-gray-400);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem}
.article-nav__title{display:block;font-family:var(--ff-display);font-size:var(--fs-sm);font-weight:700;color:var(--is-gray-900);line-height:1.3}
@media(max-width:639px){.article-nav{grid-template-columns:1fr}}

/* CTA after article */
.article-cta{text-align:center;background:linear-gradient(135deg,var(--is-blue-50),var(--is-purple-50));border-radius:var(--r-2xl);padding:var(--sp-2xl);margin-top:var(--sp-3xl)}
.article-cta p{color:var(--is-gray-500);font-size:var(--fs-sm);margin-bottom:var(--sp-md)}

/* Related Posts */
.related-posts{padding:var(--sp-4xl) 0;background:var(--is-gray-50)}
.related-posts__heading{font-size:var(--fs-h3);text-align:center;margin-bottom:var(--sp-2xl)}
.related-posts__grid{display:grid;grid-template-columns:1fr;gap:var(--sp-lg)}
@media(min-width:640px){.related-posts__grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.related-posts__grid{grid-template-columns:repeat(3,1fr)}}

/* ═══ v3.9.15 — Compact hero + float image ═══ */

/* Override old hero — compact version */
.article-hero-compact{background:linear-gradient(135deg,var(--is-gray-900),#1a0e2e);padding:calc(76px + var(--sp-xl)) var(--gutter) var(--sp-2xl)}
.article-hero-compact .container--narrow{max-width:var(--container-narrow);margin-inline:auto}
.article-hero-compact .article-hero__title{font-size:clamp(1.35rem,3.5vw,var(--fs-h2));color:#fff;line-height:1.25;margin-bottom:var(--sp-sm);word-break:break-word}
.article-hero-compact .article-hero__excerpt{font-size:var(--fs-body);color:rgba(255,255,255,.55);max-width:600px;line-height:1.7;margin:0}
.article-hero-compact .article-hero__meta{margin-bottom:var(--sp-md)}

/* Float image — wraps text around it on desktop */
.article-float-img{margin:0 0 var(--sp-lg) 0;border-radius:var(--r-xl);overflow:hidden}
.article-float-img__pic{width:100%;height:auto;display:block;border-radius:var(--r-xl)}

@media(min-width:768px){
  .article-float-img{float:left;width:48%;margin:0 var(--sp-xl) var(--sp-lg) 0;shape-outside:margin-box}
  .article-float-img__pic{width:100%}
}

/* Clear float after content */
.article-content::after{content:'';display:table;clear:both}
.article-tags{clear:both}

/* ═══ v3.9.16 — Compact hero WITH bg image ═══ */
.article-hero-compact{position:relative;overflow:hidden}
.article-hero-compact--has-img{min-height:280px}
@media(min-width:768px){.article-hero-compact--has-img{min-height:340px}}
.article-hero-compact .article-hero__bg{position:absolute;inset:0}
.article-hero-compact .article-hero__bg img{width:100%;height:100%;object-fit:cover;opacity:.3}
.article-hero-compact .article-hero__overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,24,39,.92) 0%,rgba(17,24,39,.6) 60%,rgba(17,24,39,.4) 100%)}

/* ═══ Key Industries Page ═══ */
:root{--is-pink-500:#EC4899;--is-pink-50:#FDF2F8;--is-amber-500:#F59E0B;--is-amber-50:#FFFBEB;--is-orange-500:#F97316;--is-orange-50:#FFF7ED;--is-rose-500:#F43F5E;--is-rose-50:#FFF1F2;--is-slate-600:#475569;--is-slate-50:#F8FAFC;--is-green-50:#F0FDF4}

.ki-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-xl)}
@media(min-width:768px){.ki-grid{grid-template-columns:repeat(2,1fr)}}

.ki-card{display:flex;flex-direction:column;background:#fff;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--is-gray-100);transition:all var(--dur-md) var(--ease);text-decoration:none;color:inherit}
.ki-card:hover{box-shadow:var(--sh-lg);border-color:transparent;transform:translateY(-4px)}

.ki-card__img{aspect-ratio:16/9;overflow:hidden;background:var(--ki-bg,var(--is-gray-50))}
.ki-card__img img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease)}
.ki-card:hover .ki-card__img img{transform:scale(1.05)}
.ki-card__img--placeholder{display:flex;align-items:center;justify-content:center}
.ki-card__icon{color:var(--ki-color);opacity:.25}
.ki-card__icon svg{width:64px;height:64px}

.ki-card__body{padding:var(--sp-xl);flex:1;display:flex;flex-direction:column}
.ki-card__icon-sm{width:40px;height:40px;border-radius:var(--r-md);background:var(--ki-bg);color:var(--ki-color);display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-md)}
.ki-card__icon-sm svg{width:20px;height:20px}
.ki-card__title{font-family:var(--ff-display);font-size:var(--fs-h4);font-weight:700;color:var(--is-gray-900);margin-bottom:var(--sp-sm)}
.ki-card__desc{font-size:var(--fs-sm);color:var(--is-gray-500);line-height:1.7;margin-bottom:var(--sp-lg);flex:1}

.ki-card__footer{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-md);padding-top:var(--sp-md);border-top:1px solid var(--is-gray-100)}
.ki-card__stat-val{display:block;font-family:var(--ff-display);font-size:var(--fs-h4);font-weight:800;color:var(--ki-color);line-height:1.1}
.ki-card__stat-lbl{display:block;font-size:var(--fs-xs);color:var(--is-gray-400);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.ki-card__link{font-size:var(--fs-sm);font-weight:700;color:var(--ki-color);white-space:nowrap;transition:gap var(--dur-fast)}
.ki-card:hover .ki-card__link{color:var(--is-purple-700)}

/* ═══ Info Page — enhanced content styling ═══ */
.info-content h2{position:relative;padding-left:1rem;border-left:3px solid var(--is-blue-500);border-bottom:none;padding-bottom:0}
.info-content h3{color:var(--is-blue-700)}

/* Auto-detect large stat numbers in content */
.info-content strong{color:var(--is-gray-900)}

/* Images in content get nice treatment */
.info-content .wp-block-image,.info-content figure{margin:var(--sp-2xl) 0;border-radius:var(--r-xl);overflow:hidden}
.info-content .wp-block-image img,.info-content figure img{border-radius:var(--r-xl)}

/* Source citations */
.info-content a[href*="nsi.bg"],
.info-content a[href*="wikipedia"],
.info-content a[href*="bta.bg"],
.info-content a[href*="basscom"]{font-size:var(--fs-xs);color:var(--is-gray-400);text-decoration:underline}

/* Clean up residual builder whitespace */
.info-content>br,.info-content>p:empty{display:none}

/* ═══════════════════════════════════════════
   v3.9.19 — Compact info hero, bigger title,
   Schema.org breadcrumbs
   ═══════════════════════════════════════════ */

/* Info page hero — compact */
.info-hero{position:relative;background:linear-gradient(135deg,var(--is-gray-900),#1a0e2e);padding:calc(76px + var(--sp-lg)) var(--gutter) var(--sp-xl);overflow:hidden}
.info-hero--has-img{min-height:220px}
@media(min-width:768px){.info-hero--has-img{min-height:260px}}
.info-hero .article-hero__bg{position:absolute;inset:0}
.info-hero .article-hero__bg img{width:100%;height:100%;object-fit:cover;opacity:.25}
.info-hero .article-hero__overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,24,39,.92) 0%,rgba(17,24,39,.6) 50%,rgba(17,24,39,.3) 100%)}

/* Bigger title */
.info-hero__title{font-size:clamp(1.5rem,4vw,2.75rem);color:#fff;line-height:1.2;margin:0;word-break:break-word;font-family:var(--ff-display);font-weight:800}

/* Breadcrumb — Schema.org microdata */
.breadcrumb{margin-bottom:var(--sp-md)}
.breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;list-style:none;margin:0;padding:0;font-size:var(--fs-xs)}
.breadcrumb__item{display:flex;align-items:center;gap:.3rem}
.breadcrumb__link{color:rgba(255,255,255,.45);text-decoration:none;transition:color var(--dur-fast)}
.breadcrumb__link:hover{color:var(--is-blue-300)}
.breadcrumb__current{color:rgba(255,255,255,.7);font-weight:600;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;vertical-align:bottom}
.breadcrumb__sep{color:rgba(255,255,255,.2);font-size:.7rem}

/* Breadcrumb on light backgrounds (page-header) */
.page-header .breadcrumb__link{color:rgba(255,255,255,.4)}
.page-header .breadcrumb__link:hover{color:var(--is-blue-200)}
.page-header .breadcrumb__current{color:rgba(255,255,255,.65)}
.page-header .breadcrumb__sep{color:rgba(255,255,255,.15)}

/* Breadcrumb on white backgrounds (if used outside hero) */
.article-body .breadcrumb__link{color:var(--is-gray-400)}
.article-body .breadcrumb__link:hover{color:var(--is-blue-600)}
.article-body .breadcrumb__current{color:var(--is-gray-700)}
.article-body .breadcrumb__sep{color:var(--is-gray-200)}

/* ═══ v3.9.20 — Breadcrumb below title, centered ═══ */
.breadcrumb{margin-top:var(--sp-sm);margin-bottom:var(--sp-md)}
.breadcrumb__list{justify-content:center}
.info-hero__title,.article-hero__title,.page-header__title{text-align:center}
.article-hero__meta{justify-content:center}
.article-hero__excerpt{margin-inline:auto}

/* ═══ v3.9.21 — Full-width centered title+breadcrumb ═══ */
.info-hero>.container--narrow,
.article-hero-compact>.container--narrow{max-width:100%;padding-inline:var(--gutter)}
.info-hero__title,.article-hero__title{max-width:var(--container-narrow);margin-inline:auto}
.info-hero .breadcrumb,.article-hero-compact .breadcrumb{max-width:100%}
.info-hero .article-hero__excerpt{max-width:var(--container-narrow);margin-inline:auto}
.page-header{text-align:center}
