/* JVS Group — clean, animation-free multi-page stylesheet. No transitions, no
   keyframes, no scroll effects. Instant, high-contrast, 3-clicks-to-anything. */

:root{
  --navy-900:#0f1a52;
  --navy-800:#152269;
  --navy-700:#1b2c7a;
  --blue:#0090d1;
  --blue-dark:#0a6fa0;
  --cyan:#22b6e8;
  --grey-bg:#f4f6fa;
  --grey-border:#e3e6ee;
  --text:#1d2340;
  --muted:#5c6280;
  --white:#fff;
  --radius:10px;
  --font-head:'Poppins',sans-serif;
  --font-body:'Inter',sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:auto;}
body{margin:0;font-family:var(--font-body);color:var(--text);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:var(--font-head);margin:0;line-height:1.25;color:var(--navy-900);}
p{margin:0 0 1em;}
a{color:var(--blue);text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;display:block;}
ul{margin:0;padding:0;}

.container{width:100%;max-width:1180px;margin:0 auto;padding:0 24px;}
.section-pad{padding:76px 0;}
.section-pad.alt{background:var(--grey-bg);}

/* Buttons */
.btn{display:inline-block;font-family:var(--font-head);font-weight:600;font-size:.95rem;
  padding:14px 30px;border-radius:var(--radius);border:2px solid transparent;cursor:pointer;text-decoration:none;}
.btn:hover{text-decoration:none;}
.btn-primary{background:var(--blue);color:var(--white);}
.btn-primary:hover{background:var(--blue-dark);}
.btn-dark{background:var(--navy-800);color:var(--white);}
.btn-dark:hover{background:var(--navy-900);}
.btn-outline{background:transparent;color:var(--navy-800);border-color:var(--navy-800);}
.btn-outline:hover{background:var(--navy-800);color:var(--white);}
.btn-ghost{background:transparent;color:var(--white);border-color:rgba(255,255,255,.6);}
.btn-ghost:hover{background:var(--white);color:var(--navy-900);}

/* Header + nav (dropdowns, no animation) */
.site-header{position:sticky;top:0;z-index:100;background:var(--white);border-bottom:1px solid var(--grey-border);}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:70px;}
.logo img{height:38px;}
.main-nav>ul{display:flex;align-items:center;gap:28px;list-style:none;}
.main-nav a{font-family:var(--font-head);font-weight:500;font-size:.95rem;color:var(--text);padding:8px 0;}
.main-nav>ul>li>a{white-space:nowrap;}
.main-nav a:hover,.main-nav a.active{color:var(--blue);text-decoration:none;}
.has-drop{position:relative;}
.has-drop>a::after{content:"\25be";font-size:.7em;margin-left:5px;color:var(--muted);}
.drop{display:none;position:absolute;top:100%;left:-14px;background:var(--white);border:1px solid var(--grey-border);
  border-radius:var(--radius);box-shadow:0 12px 32px rgba(15,26,82,.14);min-width:230px;padding:8px 0;list-style:none;}
.has-drop:hover .drop,.has-drop:focus-within .drop{display:block;}
.drop li{display:block;}
.drop a{display:block;padding:10px 18px;font-size:.92rem;white-space:nowrap;}
.drop a:hover{background:var(--grey-bg);color:var(--blue);}
.nav-cta{margin-left:6px;}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px;}
.hamburger span{width:26px;height:3px;background:var(--navy-900);border-radius:2px;}

/* Hero */
.hero{position:relative;background:var(--navy-900);color:var(--white);overflow:hidden;}
.hero-bg{position:absolute;inset:0;}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.28;}
.hero-inner{position:relative;padding:110px 0 96px;max-width:820px;}
.hero .eyebrow{color:var(--cyan);font-family:var(--font-head);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;margin-bottom:18px;}
.hero h1{color:var(--white);font-size:clamp(2rem,4.6vw,3.4rem);font-weight:800;margin-bottom:20px;}
.hero h1 b{color:var(--cyan);font-weight:800;}
.hero p{color:#d3ddff;font-size:1.15rem;max-width:620px;margin-bottom:32px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;}

/* Stat rows (hero + global-footprint) */
.hh-stats,.footprint-stats{display:flex;flex-wrap:wrap;gap:20px 44px;margin-top:36px;}
.hh-stats>div,.footprint-stats>div{display:flex;flex-direction:column;}
.hh-stats b,.footprint-stats b{font-family:var(--font-head);font-weight:800;font-size:1.9rem;line-height:1.1;}
.hh-stats span,.footprint-stats span{font-size:.9rem;opacity:.85;margin-top:4px;}
.hh-stats b{color:var(--cyan);}
.footprint-stats b{color:var(--blue);}

/* Home hero (index) */
.home-hero{position:relative;background:var(--navy-900);color:var(--white);overflow:hidden;}
.home-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--navy-900),var(--navy-700));}
.home-hero-inner{position:relative;padding:104px 24px 88px;}
.home-hero-copy{max-width:820px;}
.hh-eyebrow{color:var(--cyan);font-family:var(--font-head);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;margin-bottom:18px;}
.home-hero h1{color:var(--white);font-size:clamp(2rem,4.6vw,3.4rem);font-weight:800;margin-bottom:20px;}
.home-hero h1 span{color:var(--cyan);}
.hh-lede{color:#d3ddff;font-size:1.15rem;max-width:620px;margin-bottom:32px;}
.hh-actions{display:flex;gap:14px;flex-wrap:wrap;}
.btn-hero-ghost{background:transparent;color:var(--white);border-color:rgba(255,255,255,.6);}
.btn-hero-ghost:hover{background:var(--white);color:var(--navy-900);}
.home-hero .hh-stats{margin-top:44px;}
.home-hero .hh-stats span{color:#c9d4ff;}

/* Trust band (index) */
.trust-band{padding:44px 0 8px;}
.trust-band-label{text-align:center;color:var(--muted);font-family:var(--font-head);font-weight:600;font-size:.9rem;letter-spacing:.04em;margin-bottom:24px;}

/* Bare eyebrow (platform-feature / footprint copy) */
.platform-feature .eyebrow,.footprint .eyebrow{color:var(--blue);font-family:var(--font-head);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;margin-bottom:10px;}

/* Platform feature (index: "One platform. Every department.") */
.platform-feature{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;}
.platform-feature-copy h2{font-size:clamp(1.7rem,3.2vw,2.3rem);font-weight:700;margin-bottom:14px;}
.platform-feature-copy h2 b{color:var(--blue);}
.platform-feature-copy>p{color:var(--muted);font-size:1.05rem;margin-bottom:22px;}
.platform-feature-list{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:12px;}
.platform-feature-list li{padding-left:26px;position:relative;color:var(--text);}
.platform-feature-list li::before{content:"";position:absolute;left:0;top:.55em;width:9px;height:9px;border-radius:2px;background:var(--cyan);}
.platform-feature-list li b{color:var(--navy-900);}
.platform-feature-list a{color:var(--blue);font-weight:600;text-decoration:none;white-space:nowrap;}
.platform-feature-list a:hover{text-decoration:underline;}
.platform-feature-visual img{width:100%;height:100%;object-fit:cover;border-radius:14px;box-shadow:0 18px 44px rgba(15,26,82,.14);}

/* Products grid (index: "Specialised software, beyond the platform") */
.home-products{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.home-prod-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--grey-border);border-radius:14px;padding:26px 24px;text-decoration:none;color:var(--text);box-shadow:0 10px 30px rgba(15,26,82,.06);transition:transform .15s ease,box-shadow .15s ease;}
.home-prod-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(15,26,82,.12);}
.home-prod-card h3{font-size:1.2rem;color:var(--navy-900);margin-bottom:10px;}
.home-prod-card p{color:var(--muted);font-size:.96rem;margin-bottom:18px;flex:1;}
.home-prod-card .go{color:var(--blue);font-family:var(--font-head);font-weight:600;font-size:.92rem;}

/* Global footprint (index) */
.footprint{background:var(--grey-bg);padding:76px 0;}
.footprint-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:center;}
.footprint-copy h2{font-size:clamp(1.7rem,3.2vw,2.3rem);font-weight:700;margin-bottom:14px;}
.footprint-copy h2 b{color:var(--blue);}
.footprint-copy>p{color:var(--muted);font-size:1.05rem;margin-bottom:24px;}
.footprint-stats{display:grid;grid-template-columns:1fr 1fr;gap:26px 20px;}

/* Why JVS grid (index) */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.why-item{background:var(--white);border:1px solid var(--grey-border);border-radius:14px;padding:26px 24px;box-shadow:0 10px 30px rgba(15,26,82,.06);}
.why-item h3{font-size:1.12rem;color:var(--navy-900);margin-bottom:10px;}
.why-item p{color:var(--muted);font-size:.96rem;}

/* Interior page hero */
.page-hero{background:linear-gradient(135deg,var(--navy-900),var(--navy-700));color:var(--white);padding:80px 0 54px;}
.page-hero.center{text-align:center;}
.page-hero h1{color:var(--white);font-size:clamp(1.9rem,4vw,2.9rem);font-weight:800;margin-bottom:14px;}
.page-hero p{color:#c9d4ff;font-size:1.1rem;max-width:680px;}
.page-hero.center p{margin-left:auto;margin-right:auto;}
.page-hero .prod-logo{background:var(--white);display:inline-flex;padding:14px 24px;border-radius:var(--radius);margin-bottom:20px;}
.page-hero .prod-logo img{max-height:44px;}
.page-hero .btn{margin-top:24px;}

/* Quick-path tiles (3-click routing on home) */
.paths{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.path-card{display:block;background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius);
  padding:30px 26px;color:var(--text);box-shadow:0 4px 14px rgba(15,26,82,.05);}
.path-card:hover{border-color:var(--blue);text-decoration:none;box-shadow:0 12px 30px rgba(15,26,82,.12);}
.path-card h3{font-size:1.2rem;margin-bottom:8px;}
.path-card p{color:var(--muted);font-size:.95rem;margin-bottom:14px;}
.path-card .go{font-family:var(--font-head);font-weight:600;color:var(--blue);font-size:.9rem;}

/* Section heading */
.section-heading{max-width:760px;margin:0 auto 44px;text-align:center;}
.section-heading.left{text-align:left;margin:0 0 34px;}
.section-heading .eyebrow{color:var(--blue);font-family:var(--font-head);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;margin-bottom:10px;}
.section-heading h2{font-size:clamp(1.7rem,3.2vw,2.3rem);font-weight:700;}
.section-heading h2 b{color:var(--blue);}
.section-heading p{color:var(--muted);margin-top:12px;font-size:1.03rem;}

/* Products grid */
.products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.product-card{background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius);
  padding:30px 26px;display:flex;flex-direction:column;box-shadow:0 4px 14px rgba(15,26,82,.05);}
.product-card:hover{box-shadow:0 12px 30px rgba(15,26,82,.12);border-color:#cdd3e6;}
.product-logo{height:52px;display:flex;align-items:center;margin-bottom:18px;}
.product-logo img{max-height:46px;width:auto;}
.product-card p{color:var(--muted);font-size:.96rem;flex:1;margin-bottom:20px;}

/* About / two-column */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.two-col .eyebrow{color:var(--blue);font-family:var(--font-head);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;margin-bottom:10px;}
.two-col h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-bottom:16px;}
.two-col p{color:var(--muted);}
.two-col img{border-radius:var(--radius);}

/* Feature grid */
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.feature-item{background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius);padding:26px 22px;}
.section-pad.alt .feature-item{background:var(--white);}
.feature-item h3{color:var(--blue);font-size:1.05rem;margin-bottom:8px;}
.feature-item.big h3{font-size:1.7rem;}
.feature-item p{color:var(--muted);font-size:.93rem;margin:0;}

/* SoftDicom gateway — specialty cards + hero button row */
.hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:24px;}
.hero-cta .btn{margin-top:0;}
.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.spec-card{background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius);padding:28px 24px;box-shadow:0 8px 24px rgba(15,26,82,.05);}
.spec-card h3{font-family:var(--font-head);color:var(--navy-900);font-size:1.18rem;margin-bottom:10px;}
.spec-card p{color:var(--muted);font-size:.95rem;line-height:1.55;margin:0 0 16px;}
.spec-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--grey-border);}
.spec-list li{color:var(--text);font-size:.9rem;padding:9px 0 9px 22px;position:relative;border-bottom:1px solid var(--grey-border);}
.spec-list li:last-child{border-bottom:0;}
.spec-list li::before{content:"";position:absolute;left:0;top:14px;width:8px;height:8px;border-radius:50%;background:var(--cyan);}
@media(max-width:900px){.spec-grid{grid-template-columns:1fr;}}

/* Tabs (SoftClinic GenX platform) — instant switch, no animation */
.tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:36px;}
.tab-btn{font-family:var(--font-head);font-weight:600;font-size:.95rem;padding:12px 22px;border:1px solid var(--grey-border);
  background:var(--white);color:var(--navy-800);border-radius:var(--radius);cursor:pointer;}
.tab-btn:hover{border-color:var(--blue);}
.tab-btn.active{background:var(--navy-800);color:var(--white);border-color:var(--navy-800);}
.tab-panel{display:none;}
.tab-panel.active{display:block;}
.tab-panel .two-col{margin-bottom:28px;}

/* Logo grid (clients / awards — static, no marquee) */
.logo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}
.logo-grid.badges{grid-template-columns:repeat(4,1fr);}
.logo-cell{background:var(--white);border:1px solid var(--grey-border);border-radius:var(--radius);
  height:110px;display:flex;align-items:center;justify-content:center;padding:16px;}
.logo-cell img{max-height:64px;max-width:100%;width:auto;}
.logo-grid.badges .logo-cell{height:150px;}
.logo-grid.badges .logo-cell img{max-height:150px;}

/* Breadcrumb */
.breadcrumb{background:var(--grey-bg);border-bottom:1px solid var(--grey-border);font-size:.85rem;}
.breadcrumb .container{padding-top:12px;padding-bottom:12px;color:var(--muted);}
.breadcrumb .sep{margin:0 8px;color:#c3c8da;}

/* Product / module detail */
.detail{max-width:900px;}
.detail>p{color:var(--muted);font-size:1.05rem;margin-bottom:16px;}
.related{margin-top:38px;background:var(--grey-bg);border:1px solid var(--grey-border);border-radius:var(--radius);padding:26px 28px;}
.related h3{font-size:1.1rem;margin-bottom:14px;}
.related ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px 26px;}
.related a{font-weight:600;font-size:.96rem;}

/* CTA band */
.cta{background:linear-gradient(135deg,var(--navy-800),var(--blue));color:var(--white);padding:58px 0;text-align:center;}
.cta h2{color:var(--white);font-size:clamp(1.4rem,2.6vw,2rem);margin-bottom:22px;}

/* Contact */
.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;}
.form-group{margin-bottom:16px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
label{display:block;font-size:.88rem;font-weight:600;margin-bottom:6px;color:var(--navy-800);}
input,textarea{width:100%;padding:12px 14px;border:1px solid var(--grey-border);border-radius:var(--radius);font-family:var(--font-body);font-size:.95rem;}
input:focus,textarea:focus{outline:none;border-color:var(--blue);}
.error-msg{color:#d64545;font-size:.8rem;display:block;min-height:1em;margin-top:4px;}
.hp-field{position:absolute;left:-9999px;}
.form-success{color:#1a8a4a;font-weight:600;margin-top:10px;}
.contact-info h3{margin-bottom:12px;}
.contact-info .address{color:var(--muted);margin-bottom:16px;}
.email-link{display:inline-flex;align-items:center;gap:8px;color:var(--navy-800);font-weight:600;}
.contact-sites{margin-top:26px;padding-top:22px;border-top:1px solid var(--grey-border);}
.contact-sites h4{margin-bottom:12px;}
.contact-sites ul{list-style:none;display:flex;flex-direction:column;gap:8px;}
.contact-sites a{font-size:.94rem;}

/* Footer */
.site-footer{background:var(--navy-900);color:#c9d0e6;padding:52px 0 0;}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:36px;padding-bottom:38px;}
.footer-logo{height:36px;margin-bottom:16px;filter:brightness(0) invert(1);}
.footer-about p{font-size:.9rem;color:#9aa3c4;}
.footer-col h4{color:var(--white);font-size:1rem;margin-bottom:15px;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-col a{color:#9aa3c4;font-size:.9rem;}
.footer-col a:hover{color:var(--cyan);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;text-align:center;}
.footer-bottom p{font-size:.85rem;color:#7681a6;margin:0;}

/* Responsive */
@media (max-width:960px){
  .paths,.products-grid,.feature-grid{grid-template-columns:repeat(2,1fr);}
  .two-col{grid-template-columns:1fr;gap:32px;}
  .contact-inner{grid-template-columns:1fr;gap:36px;}
  .logo-grid{grid-template-columns:repeat(3,1fr);}
  .logo-grid.badges{grid-template-columns:repeat(3,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:1024px){
  .hamburger{display:flex;}
  .main-nav>ul>li>a{white-space:normal;}
  .main-nav{position:fixed;inset:70px 0 auto 0;background:var(--white);border-bottom:1px solid var(--grey-border);display:none;}
  .main-nav.open{display:block;}
  .main-nav>ul{flex-direction:column;align-items:stretch;gap:0;padding:8px 0;}
  .main-nav>ul>li{border-bottom:1px solid var(--grey-border);}
  .main-nav a{display:block;padding:14px 24px;}
  .has-drop>a::after{float:right;}
  .drop{display:block;position:static;border:0;box-shadow:none;padding:0 0 8px 0;background:var(--grey-bg);}
  .drop a{padding:10px 40px;}
  .nav-cta{margin:10px 24px;}
}
@media (max-width:900px){
  .platform-feature,.footprint-inner{grid-template-columns:1fr;gap:32px;}
  .home-products,.why-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
  .paths,.products-grid,.feature-grid,.logo-grid,.logo-grid.badges{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
  .related ul{flex-direction:column;gap:10px;}
  .section-pad{padding:52px 0;}
  .home-hero-inner{padding:72px 24px 56px;}
  .home-products,.why-grid,.footprint-stats{grid-template-columns:1fr;}
  .footprint{padding:52px 0;}
  .platform-feature-list a{white-space:normal;}
}
/* ---- Home Solutions tabs ---- */
.sol-tabs{margin-bottom:26px;}
.sol-panel{max-width:820px;margin:0 auto;}
.sol-body{background:var(--white);border:1px solid var(--grey-border);border-radius:14px;padding:30px 32px;text-align:center;box-shadow:0 10px 30px rgba(15,26,82,.06);}
.sol-body h3{font-size:1.5rem;color:var(--navy-900);margin-bottom:10px;}
.sol-body p{color:var(--grey-text);font-size:1.06rem;max-width:640px;margin:0 auto 22px;}
.sol-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;}
.sol-links a{font-family:var(--font-head);font-weight:600;font-size:.92rem;padding:9px 16px;border:1px solid var(--blue);color:var(--blue);border-radius:8px;text-decoration:none;}
.sol-links a:first-child{background:var(--blue);color:var(--white);}

/* ---- Clientele: hero ---- */
.clientele-hero{background:linear-gradient(135deg,var(--navy-900),var(--navy-700));color:var(--white);padding:88px 0 64px;}
.clientele-hero .eyebrow{color:var(--cyan);}
.clientele-hero h1{color:var(--white);font-size:clamp(1.9rem,4.4vw,3rem);font-weight:800;margin-bottom:16px;max-width:820px;}
.clientele-hero h1 span{color:var(--cyan);}
.clientele-hero .ch-lede{color:#c9d4ff;font-size:1.12rem;max-width:680px;}
.ch-stats{display:flex;flex-wrap:wrap;gap:20px 44px;margin-top:40px;}
.ch-stats>div{display:flex;flex-direction:column;}
.ch-stats b{font-family:var(--font-head);font-weight:800;font-size:1.9rem;line-height:1.1;color:var(--cyan);}
.ch-stats span{font-size:.9rem;color:#c9d4ff;margin-top:4px;}
/* ---- Clientele: category tabs ---- */
.cat-tabs{margin-bottom:24px;}
.cat-tabs .count{font-size:.78rem;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--blue-soft,#e8f4fb);color:var(--blue);margin-left:6px;}
.cat-tabs .tab-btn.active .count{background:rgba(255,255,255,.22);color:#fff;}
.cat-blurb{color:var(--grey-text);font-size:1rem;text-align:center;max-width:640px;margin:0 auto 4px;}
/* ---- Clientele: categorized real clients (legacy) ---- */
.client-cats{display:flex;flex-direction:column;gap:34px;}
.client-cat-head{margin-bottom:14px;}
.client-cat-head h3{font-size:1.4rem;color:var(--navy-900);display:flex;align-items:center;gap:12px;}
.client-cat-head h3 .count{font-size:.85rem;font-weight:700;color:var(--blue);background:var(--blue-soft,#e8f4fb);border:1px solid var(--grey-border);border-radius:999px;padding:3px 12px;}
.client-cat-head p{color:var(--grey-text);font-size:1rem;margin-top:4px;}
.client-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.client-list li{background:var(--white);border:1px solid var(--grey-border);border-radius:10px;padding:12px 14px;}
.client-list .cn{display:block;font-weight:600;color:var(--navy-900);font-size:.95rem;line-height:1.3;}
.client-list .cl{display:block;color:var(--grey-text);font-size:.82rem;margin-top:3px;}
@media(max-width:760px){.client-list{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.client-list{grid-template-columns:1fr;}}
/* ---- Client / customer walls (clientele + product pages) ---- */
.client-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:14px;}
.client-card{margin:0;display:flex;align-items:center;gap:12px;background:var(--white);border:1px solid var(--grey-border);border-radius:10px;padding:12px 14px;text-decoration:none;color:var(--text);box-shadow:0 6px 18px rgba(15,26,82,.05);transition:transform .15s ease,box-shadow .15s ease;}
.client-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(15,26,82,.12);}
.client-logo{width:40px;height:40px;flex:0 0 40px;border-radius:8px;}
.client-card figcaption,.client-card .cl-txt{display:flex;flex-direction:column;min-width:0;}
.cl-name,.client-card .cn{font-family:var(--font-head);font-weight:600;color:var(--navy-900);font-size:.92rem;line-height:1.25;overflow-wrap:break-word;}
.cl-place,.client-card .cl{display:block;color:var(--muted);font-size:.8rem;margin-top:2px;overflow-wrap:break-word;}
.terr-group{margin-top:26px;}
.terr-group h3{font-family:var(--font-head);color:var(--navy-900);font-size:1.05rem;margin-bottom:2px;}
.terr-lead{color:var(--muted);font-size:.98rem;margin-top:6px;}
@media(max-width:560px){.client-wall{grid-template-columns:1fr;}}
/* ---- Case-study link strip ---- */
.cs-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:14px 16px;background:var(--grey-bg);border:1px solid var(--grey-border);border-radius:12px;margin-bottom:6px;}
.cs-strip-label{font-family:var(--font-head);font-weight:700;color:var(--navy-900);font-size:.9rem;margin-right:4px;}
.cs-chip{font-family:var(--font-head);font-weight:600;font-size:.85rem;text-decoration:none;color:var(--blue);border:1px solid var(--blue);border-radius:999px;padding:6px 14px;}
.cs-chip.active{background:var(--blue);color:var(--white);}
/* ---- Case-study cards ---- */
.cs-grid{display:flex;flex-direction:column;gap:22px;margin-top:22px;}
.cs-card{background:var(--white);border:1px solid var(--grey-border);border-radius:14px;padding:24px 26px;box-shadow:0 8px 24px rgba(15,26,82,.05);}
.cs-card-head{display:flex;align-items:center;gap:16px;margin-bottom:16px;}
.cs-logo{width:56px;height:56px;border-radius:12px;flex:0 0 auto;}
.cs-card-head h2{font-size:1.25rem;color:var(--navy-900);margin:0;}
.cs-meta{color:var(--muted);font-size:.9rem;margin:2px 0 0;}
.cs-body{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:16px;}
.cs-block h3{font-family:var(--font-head);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--blue);margin:0 0 6px;}
.cs-block p{color:var(--text);font-size:.95rem;line-height:1.55;margin:0;}
.cs-links{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--grey-border);padding-top:14px;}
.cs-links a{font-family:var(--font-head);font-weight:600;font-size:.85rem;text-decoration:none;color:var(--blue);border:1px solid var(--grey-border);border-radius:8px;padding:6px 12px;}
@media(max-width:760px){.cs-body{grid-template-columns:1fr;gap:14px;}}/* ---------- Team page ---------- */
.team-group{padding:44px 0;}
.team-group:nth-child(even){background:var(--grey-bg);}
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:22px;margin-top:26px;}
.team-card{margin:0;background:#fff;border:1px solid var(--grey-border);border-radius:14px;padding:22px 16px;text-align:center;}
.team-photo{width:96px;height:96px;border-radius:50%;object-fit:cover;background:var(--grey-bg);display:inline-block;}
.team-card figcaption{display:flex;flex-direction:column;gap:3px;margin-top:14px;}
.tm-name{font-family:var(--font-head);font-weight:600;color:var(--text);font-size:1rem;}
.tm-role{color:var(--blue);font-size:.85rem;font-weight:500;}
.tm-loc{color:var(--muted);font-size:.8rem;}
/* real client logos sit contained, not cropped like monograms */
.client-logo.real{object-fit:contain;background:#fff;padding:8px;}
@media(max-width:560px){.team-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px;}}
/* ---------- Legal / policy pages ---------- */
.legal-body{max-width:820px;margin:0 auto;}
.legal-body h2{font-family:var(--font-head);font-size:1.25rem;color:var(--navy-900);margin:32px 0 10px;}
.legal-body p,.legal-body li{color:var(--text);line-height:1.7;}
.legal-body ul{padding-left:22px;margin:0 0 8px;}
.legal-body li{margin-bottom:6px;}
.legal-meta{color:var(--muted);font-size:.9rem;border-left:3px solid var(--blue);padding-left:12px;}
.legal-related{margin-top:28px;padding-top:16px;border-top:1px solid var(--grey-border);color:var(--muted);font-size:.9rem;}
/* footer legal links */
.footer-bottom{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;justify-content:space-between;}
.legal-links{display:flex;flex-wrap:wrap;gap:6px 16px;list-style:none;margin:0;padding:0;}
.legal-links a{color:inherit;opacity:.85;font-size:.85rem;text-decoration:none;}
.legal-links a:hover{opacity:1;text-decoration:underline;}
/* ---------- Cookie consent banner ---------- */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:var(--navy-900);color:#eaf1ff;box-shadow:0 -6px 24px rgba(0,0,0,.25);}
.cookie-inner{max-width:1180px;margin:0 auto;padding:10px 20px;display:flex;gap:10px 20px;align-items:center;flex-wrap:wrap;justify-content:space-between;}
.cookie-text{margin:0;font-size:.82rem;line-height:1.45;flex:1 1 420px;}
.cookie-text a{color:var(--cyan);}
.cookie-actions{display:flex;gap:8px;flex-wrap:wrap;}
.cookie-btn{padding:7px 13px;font-size:.8rem;white-space:nowrap;}
/* On the dark banner, make the outline/ghost buttons readable (light on dark). */
.cookie-btn.btn-outline{background:transparent;color:#eaf1ff;border-color:rgba(255,255,255,.55);}
.cookie-btn.btn-outline:hover{background:var(--white);color:var(--navy-900);}
.cookie-btn.btn-ghost{color:#eaf1ff;border-color:rgba(255,255,255,.55);}
@media(max-width:560px){.cookie-actions{width:100%;}.cookie-btn{flex:1 1 auto;}}
