/* ORNET brand layer on the Ornet DS — logo red, indigo, silver grey, black; white ground. */
:root{--color-primary:#e40609;--color-primary-focus:#212765;--color-primary-on-dark:#ffffff;--brand-red:#e40609;--brand-red-700:#b30407;--brand-red-50:#fdeced;--brand-indigo:#14276a;--brand-indigo-800:#0f1e55;--brand-indigo-50:#eff2f8;--brand-indigo-100:#dfe3f0;--brand-silver:#a7a9ac;--brand-silver-300:#d4d6d9;--brand-silver-100:#f1f2f3;--brand-black:#1d1d1f;--ease:cubic-bezier(.25,.1,.25,1);--t-hover:250ms;--t-reveal:550ms;--shadow-lift:0 14px 32px -12px rgba(20,39,106,.22)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font-text);color:var(--brand-black)}
a{color:var(--brand-red-700)}a:hover{color:var(--brand-indigo)}
img{display:block;max-width:100%}
:focus-visible{outline:2px solid var(--brand-indigo)!important;outline-offset:2px}
.on-dark :focus-visible{outline-color:#fff!important}
.wrap{max-width:1280px;margin:0 auto;padding:0 40px}
.btn-h{display:inline-flex;border-radius:var(--radius-pill);transition:filter var(--t-hover) var(--ease),background var(--t-hover) var(--ease)}
.btn-h a:hover{text-decoration:none}
.arr{display:inline-flex;transition:transform var(--t-hover) var(--ease)}
@media (hover:hover){.btn-h:hover{filter:brightness(.9)}.btn-h:hover .arr{transform:translateX(4px)}.on-dark .btn-h.ghost:hover{filter:none;background:rgba(255,255,255,.12)}.btn-h.ghost:hover{filter:none;background:var(--brand-red-50)}.on-dark .btn-h.ghost:hover{background:rgba(255,255,255,.12)}}
.kicker{font-size:var(--type-caption-strong-size);font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--brand-red-700);margin:0 0 var(--space-xs)}
.on-dark .kicker{color:#ffb3b4}
.h-sec{font-family:var(--font-display);font-size:var(--type-display-lg-size);line-height:var(--type-display-lg-lh);font-weight:600;letter-spacing:-0.4px;color:var(--brand-indigo);margin:0;text-wrap:pretty}
.on-dark .h-sec{color:#fff}
.lead{font-size:var(--type-body-size);line-height:var(--type-body-lh);color:var(--text-secondary);margin:var(--space-sm) 0 0;max-width:640px;text-wrap:pretty}
.on-dark .lead{color:rgba(255,255,255,.88)}
.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
/* top bar + nav */
.topbar{background:var(--brand-indigo);color:#fff;font-size:var(--type-caption-size)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:36px}
.topbar .tag{letter-spacing:1.2px;font-weight:600;font-size:12px}
.topbar a{color:#fff;display:inline-flex;align-items:center;gap:8px}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--brand-silver-300)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:80px}
.nav-logo{display:flex;align-items:center;flex:none}.nav-logo img{height:60px;width:auto;max-width:100%;object-fit:contain}
.nav-links{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.nav-links a{display:flex;align-items:center;height:44px;padding:0 12px;font-size:15px;color:var(--brand-black);position:relative;letter-spacing:-0.224px;transition:color var(--t-hover) var(--ease)}
.nav-links a::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--brand-red);transform:scaleX(0);transform-origin:left;transition:transform var(--t-hover) var(--ease)}
.nav-links a:hover{color:var(--brand-indigo);text-decoration:none}
.nav-links a[aria-current="page"]{color:var(--brand-indigo);font-weight:600}
.nav-links a[aria-current="page"]::after{transform:none}
.nav-right{display:flex;align-items:center;gap:12px}
.menu-btn{display:none;width:44px;height:44px;border:none;border-radius:50%;background:var(--brand-indigo-50);color:var(--brand-indigo);align-items:center;justify-content:center;cursor:pointer}
.sheet-bg{position:fixed;inset:0;z-index:99;background:rgba(15,30,85,.4);opacity:0;visibility:hidden;transition:opacity 300ms var(--ease),visibility 300ms}
.sheet{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);z-index:100;background:#fff;display:flex;flex-direction:column;padding:12px 24px 32px;overflow:auto;opacity:0;visibility:hidden;transform:translateX(24px);transition:opacity 300ms var(--ease),transform 300ms var(--ease),visibility 300ms}
.sheet.open,.sheet-bg.open{opacity:1;visibility:visible;transform:none;transition-duration:300ms,300ms,0s}
.sheet-head{display:flex;justify-content:space-between;align-items:center;height:64px}
.sheet ul{list-style:none;margin:24px 0;padding:0;display:flex;flex-direction:column}
.sheet li a{display:flex;justify-content:space-between;align-items:center;min-height:56px;font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--brand-indigo);border-bottom:1px solid var(--brand-silver-300)}
.sheet li a[aria-current="page"]{color:var(--brand-red-700)}
/* hero */
.hero{background:var(--brand-indigo);color:#fff;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);min-height:560px}
.hero-copy{padding:88px 48px 88px max(40px,calc((100vw - 1280px)/2 + 40px));display:flex;flex-direction:column;justify-content:center}
.hero h1{font-family:var(--font-display);font-size:72px;line-height:1.04;letter-spacing:-1.4px;font-weight:700;margin:0}
.hero h1 .r{color:#ff3b3e}
.hero p{font-size:var(--type-lead-airy-size);line-height:1.4;font-weight:300;margin:28px 0 36px;max-width:460px;color:rgba(255,255,255,.92)}
.hero-media{position:relative;overflow:hidden;background:var(--brand-indigo-800)}
.hero-media img{width:100%;height:100%;object-fit:cover}
.hero-slides img{position:absolute;inset:0;opacity:0;transition:opacity 900ms var(--ease)}
.hero-slides img.on{opacity:1;animation:imgIn 800ms var(--ease) both}
.hero-dots{position:absolute;left:24px;bottom:24px;display:flex;gap:4px;z-index:2}
.hero-dots button{width:32px;height:32px;padding:0;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center}
.hero-dots button::before{content:"";width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.6);box-shadow:0 0 0 1px rgba(0,0,0,.15);transition:background var(--t-hover) var(--ease),transform var(--t-hover) var(--ease)}
.hero-dots button[aria-current="true"]::before{background:#fff;transform:scale(1.25)}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
.load-in{animation:loadIn 600ms var(--ease) both}
.load-img{animation:imgIn 800ms var(--ease) both}
@keyframes loadIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes imgIn{from{opacity:0;transform:scale(1.02)}to{opacity:1;transform:none}}
/* page hero */
.phero{background:var(--brand-indigo);color:#fff}
.phero .wrap{padding-top:64px;padding-bottom:64px}
.crumbs{display:flex;gap:8px;align-items:center;font-size:var(--type-caption-size);color:rgba(255,255,255,.8);margin-bottom:24px;flex-wrap:wrap}
.crumbs a{color:#fff}
.phero h1{font-family:var(--font-display);font-size:56px;line-height:1.07;letter-spacing:-0.8px;font-weight:700;margin:0;max-width:820px;text-wrap:pretty}
/* clientele strip */
.clients{background:var(--brand-indigo-50);border-bottom:1px solid var(--brand-indigo-100)}
.clients .wrap{display:flex;align-items:center;gap:32px;flex-wrap:wrap;padding-top:28px;padding-bottom:28px}
.clients-label{display:flex;align-items:center;gap:12px;font-size:var(--type-caption-size);color:var(--brand-black);max-width:240px}
.clients ul{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0;flex:1}
.clients li{font-family:var(--font-display);font-size:19px;font-weight:600;color:var(--brand-indigo);padding:4px 28px;border-left:2px solid var(--brand-red)}
/* sections */
.sec{padding:var(--space-section) 0}
.sec.alt{background:var(--brand-silver-100)}
.sec-head{margin-bottom:var(--space-xxl);display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.sec-head.center{justify-content:center}
.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter-grid)}
.svc{background:#fff;border:1px solid var(--brand-silver-300);border-radius:var(--radius-lg);padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md);color:inherit;min-height:220px;transition:border-color var(--t-hover) var(--ease),transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease),opacity var(--t-reveal) var(--ease)}
@media (hover:hover){.svc:hover{border-color:var(--brand-indigo);transform:translateY(-4px);box-shadow:var(--shadow-lift);text-decoration:none}.svc:hover .arr{transform:translateX(4px)}}
.svc-ic{width:48px;height:48px;border-radius:var(--radius-sm);background:var(--brand-indigo-50);color:var(--brand-indigo);display:flex;align-items:center;justify-content:center;flex:none}
.svc h3{font-family:var(--font-display);font-size:var(--type-tagline-size);line-height:1.19;font-weight:600;color:var(--brand-indigo);margin:0;letter-spacing:-0.2px}
.svc p{margin:0;font-size:var(--type-caption-size);line-height:var(--type-caption-lh);color:var(--text-secondary)}
.svc .more{margin-top:auto;display:flex;align-items:center;gap:4px;font-size:var(--type-caption-size);color:var(--brand-red-700);font-weight:600}
.svc.hl{background:var(--brand-red-50);border-color:#f7c6c8}
.svc.hl .svc-ic{background:var(--brand-red);color:#fff}
.svc .badge{font-size:var(--type-fine-print-size);font-weight:600;color:var(--brand-red-700)}
/* expertise banner */
.exp{background:var(--brand-indigo);color:#fff}
.banner{border-radius:var(--radius-lg);overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:440px;background:var(--brand-indigo-800);border:1px solid rgba(255,255,255,.12)}
.banner img{width:100%;height:100%;object-fit:cover}
.banner-body{padding:56px;display:flex;flex-direction:column;justify-content:center;gap:var(--space-sm)}
.banner h3{font-family:var(--font-display);font-size:44px;line-height:1.08;font-weight:600;margin:0;letter-spacing:-0.6px;color:#fff}
.banner p{margin:0 0 var(--space-md);font-size:var(--type-body-size);line-height:var(--type-body-lh);color:rgba(255,255,255,.88);max-width:420px}
/* about */
.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.media{border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/3;background:var(--brand-silver-100)}
.media img{width:100%;height:100%;object-fit:cover}
.values{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:var(--space-xl) 0 0;padding:0;list-style:none;border-top:1px solid var(--brand-silver-300)}
.val{display:flex;flex-direction:column;gap:10px;padding:20px 12px 0 0;font-size:var(--type-caption-strong-size);font-weight:600;color:var(--brand-indigo)}
.val>span:first-child{color:var(--brand-red)}
/* client logos */
.logo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter-grid)}
.logo-tile{background:#fff;border:1px solid var(--brand-silver-300);border-radius:var(--radius-lg);height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--brand-silver);font-size:var(--type-body-size);transition:border-color var(--t-hover) var(--ease),color var(--t-hover) var(--ease),background var(--t-hover) var(--ease)}
.logo-tile .nm{color:var(--brand-indigo);font-family:var(--font-display);font-weight:600;font-size:var(--type-tagline-size)}
@media (hover:hover){.logo-tile:hover{border-color:var(--brand-indigo);color:var(--brand-indigo);background:var(--brand-indigo-50)}}
.sec-foot{display:flex;justify-content:center;margin-top:var(--space-xl)}
/* life + careers */
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gutter-grid)}
.promo{border-radius:var(--radius-lg);padding:var(--space-xxl);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-sm);min-height:300px}
.promo.life{background:var(--brand-red-50)}
.promo.car{background:var(--brand-indigo-50)}
.promo h3{font-family:var(--font-display);font-size:var(--type-display-lg-size);line-height:1.1;font-weight:600;color:var(--brand-indigo);margin:0;letter-spacing:-0.4px}
.promo p{margin:0 0 var(--space-md);color:var(--text-secondary)}
.promo .svc-ic{background:#fff;margin-bottom:var(--space-sm)}
/* contact band */
.contact{background:var(--brand-silver-100);border-top:1px solid var(--brand-silver-300)}
.contact .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;padding-top:72px;padding-bottom:72px}
.contact h2{font-family:var(--font-display);font-size:48px;line-height:1.07;font-weight:600;letter-spacing:-0.6px;color:var(--brand-indigo);margin:0}
.contact-mail{display:inline-flex;align-items:center;gap:10px;margin-top:20px;font-size:var(--type-tagline-size);font-weight:600;color:var(--brand-indigo)}
/* placeholders + misc */
.ph{display:inline-block;font-size:var(--type-fine-print-size);color:#5f6166;border:1px dashed var(--brand-silver);border-radius:var(--radius-xs);padding:4px 8px;line-height:1.3}
.ph-box{border:1px dashed var(--brand-silver);border-radius:var(--radius-lg);background:var(--brand-silver-100);color:#5f6166;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px;font-size:var(--type-caption-size)}
.card{background:#fff;border:1px solid var(--brand-silver-300);border-radius:var(--radius-lg);padding:var(--space-xl)}
.card h3{font-family:var(--font-display);font-size:var(--type-tagline-size);font-weight:600;color:var(--brand-indigo);margin:0 0 var(--space-xs)}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter-grid)}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.list li{display:flex;gap:12px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--brand-silver-300)}
.list li>:first-child{color:var(--brand-red);margin-top:3px}
/* service detail */
.detail{grid-template-areas:"a c" "b c";grid-template-rows:auto 1fr;row-gap:0}
.detail .col-left{grid-area:a}.detail .col-left-2{grid-area:b}
.detail .col-right{grid-area:c;display:flex;flex-direction:column;gap:20px}
.detail .col-left.rv,.detail .card.rv{transition-duration:600ms}
.list.hov li{position:relative}
.list.hov li::before{content:"";position:absolute;inset:0 -12px;background:var(--brand-indigo-50);border-radius:var(--radius-sm);opacity:0;transition:opacity var(--t-hover) var(--ease);z-index:-1}
.list.hov{position:relative;z-index:0}
@media (hover:hover){.list.hov li:hover::before{opacity:1}}
.li-t{color:var(--brand-indigo);font-size:var(--type-body-size)}
.gis{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--brand-silver-100)}
.gis img{width:100%;height:auto}
.gis-scan{position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 40%,rgba(255,255,255,.16) 50%,transparent 60%);transform:translateX(-100%);animation:gisScan 9s linear infinite;animation-play-state:paused}
.gis-ring{position:absolute;width:7%;aspect-ratio:1;margin:-3.5% 0 0 -3.5%;border-radius:50%;border:2px solid var(--c);opacity:0;pointer-events:none;animation:gisRing 2.6s var(--ease) infinite;animation-play-state:paused}
.gis.playing .gis-scan,.gis.playing .gis-ring{animation-play-state:running}
@keyframes gisRing{0%{opacity:.75;transform:scale(.3)}100%{opacity:0;transform:scale(1.5)}}
@keyframes gisScan{0%{transform:translateX(-100%)}60%,100%{transform:translateX(100%)}}
.enq .btn-h{transition:filter var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease)}
@media (hover:hover){.enq .btn-h:hover{box-shadow:0 10px 22px -10px rgba(228,6,9,.6)}}
@media (max-width:1068px){.detail{grid-template-areas:"a" "b" "c";grid-template-rows:auto;row-gap:0}.detail .col-right{margin-top:40px}}
/* tables + forms */
.jobs{width:100%;border-collapse:collapse;font-size:var(--type-caption-size)}
.jobs th{text-align:left;font-weight:600;color:var(--brand-indigo);padding:14px 16px;border-bottom:2px solid var(--brand-indigo)}
.jobs td{padding:18px 16px;border-bottom:1px solid var(--brand-silver-300);vertical-align:top}
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.form .full{grid-column:1/-1}
.fld{display:flex;flex-direction:column;gap:6px;font-size:var(--type-caption-strong-size);font-weight:600;color:var(--brand-indigo)}
.fld input,.fld select,.fld textarea{font:inherit;font-weight:400;font-size:var(--type-body-size);color:var(--brand-black);background:#fff;border:1px solid var(--brand-silver);border-radius:var(--radius-sm);padding:11px 14px;min-height:46px;transition:border-color var(--t-hover) var(--ease)}
.fld textarea{min-height:140px;resize:vertical}
.fld input:hover,.fld select:hover,.fld textarea:hover{border-color:var(--brand-indigo)}
.fld input:focus-visible,.fld select:focus-visible,.fld textarea:focus-visible{border-color:var(--brand-indigo)}
.fld .hint{font-weight:400;color:#5f6166;font-size:var(--type-fine-print-size)}
.info-row{display:flex;gap:14px;align-items:flex-start;padding:20px 0;border-bottom:1px solid var(--brand-silver-300)}
.info-row>:first-child{color:var(--brand-red);margin-top:2px}
.info-row b{display:block;color:var(--brand-indigo);font-size:var(--type-caption-strong-size)}
.success{background:var(--brand-indigo-50);border-radius:var(--radius-lg);padding:var(--space-xl);color:var(--brand-indigo)}
/* reveal (once) */
.rv{transition:opacity var(--t-reveal) var(--ease),transform var(--t-reveal) var(--ease)}
.js-motion .rv:not(.in){opacity:0;transform:translateY(16px)}
.rv.in{opacity:1;transform:none}
.svc.rv.in{transition:border-color var(--t-hover) var(--ease),transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease),opacity var(--t-reveal) var(--ease)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv,.js-motion .rv:not(.in){opacity:1;transform:none}html{scroll-behavior:auto}.svc:hover{transform:none!important}.btn-h:hover .arr{transform:none!important}.gis-scan,.gis-ring{display:none}}
/* responsive */
@media (max-width:1180px){.hero h1{font-size:60px}.banner h3{font-size:36px}}
@media (max-width:1068px){.nav-links{display:none}.menu-btn{display:inline-flex}.hero{grid-template-columns:1fr}.hero-copy{padding:64px 40px}.hero-media{height:400px}.about,.split{grid-template-columns:1fr;gap:40px}.h-sec{font-size:var(--type-display-md-size);line-height:1.15}.banner{grid-template-columns:1fr}.banner img{height:320px}.phero h1{font-size:44px}}
@media (max-width:833px){.duo{grid-template-columns:1fr}.svc-grid,.grid3,.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.values{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:16px}.contact .wrap{grid-template-columns:1fr}.contact h2{font-size:40px}.nav-cta{display:none}.jobs thead{display:none}.jobs tr{display:grid;border-bottom:1px solid var(--brand-silver-300);padding:12px 0}.jobs td{border:0;padding:4px 0}}
@media (max-width:640px){.wrap{padding:0 20px}.topbar .tag{display:none}.nav .wrap{height:68px}.nav-logo img{height:46px}.hero-copy{padding:48px 20px}.hero h1{font-size:48px;letter-spacing:-0.8px}.hero p{font-size:19px}.hero-media{height:260px}.sec{padding:56px 0}.svc-grid,.grid3{grid-template-columns:1fr}.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.logo-tile{height:110px;font-size:14px}.svc{min-height:0;flex-direction:row;align-items:flex-start;gap:16px;flex-wrap:wrap}.svc>span:nth-child(2){flex:1;min-width:0}.svc .more{width:100%;padding-left:64px;margin-top:0}.values{grid-template-columns:repeat(2,minmax(0,1fr))}.promo{padding:var(--space-xl)}.promo h3{font-size:30px}.contact h2{font-size:32px}.contact-mail{font-size:17px}.clients li{padding:4px 16px;font-size:17px}.clients ul{row-gap:8px}.banner-body{padding:var(--space-lg)}.banner h3{font-size:30px}.banner img{height:240px}.ctas .btn-h{flex:1 1 100%}.ctas .btn-h>*{width:100%}.phero h1{font-size:36px}.phero .wrap{padding-top:40px;padding-bottom:40px}.form{grid-template-columns:1fr}.card{padding:var(--space-lg)}}

.ic{display:inline-block;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.btn-static{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-pill);padding:11px 22px;font-family:var(--font-text);font-size:17px;line-height:1.18;letter-spacing:-0.374px;white-space:nowrap;text-decoration:none;transition:transform var(--duration-press,120ms) var(--ease)}
.btn-static:hover{color:#fff;text-decoration:none}.btn-static:active{transform:scale(.95)}
.svc-ic .ic,.menu-btn .ic{display:block}
.svc>span:nth-child(2) h3,.li-t{overflow-wrap:anywhere}
@media (max-width:1068px){html:not(.js-motion) .menu-btn{display:none}html:not(.js-motion) .nav .wrap{height:auto;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:8px}html:not(.js-motion) .nav-links{display:flex;flex-wrap:wrap;width:100%;order:3}html:not(.js-motion) .nav-links a{padding:0 10px;font-size:14px}html:not(.js-motion) .nav-cta{display:inline-flex}html:not(.js-motion) .nav{position:static}}
@media (max-width:400px){.topbar a{font-size:13px}.nav-right .btn-static{padding:9px 16px;font-size:15px}.enq .btn-static{white-space:normal}}
@media (max-width:1240px) and (min-width:1069px){.nav-logo img{height:50px}.nav-links a{padding:0 9px;font-size:14px}}
@media (max-width:360px){.nav-logo img{height:40px}}
/* survey detail pages */
.li-link{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1;color:var(--brand-indigo);font-size:var(--type-body-size)}
.li-link .ic{color:var(--brand-silver);transition:transform var(--t-hover) var(--ease),color var(--t-hover) var(--ease)}
.li-link:hover{text-decoration:none;color:var(--brand-indigo)}
@media (hover:hover){.list.hov li:hover .li-link .ic{color:var(--brand-red);transform:translateX(4px)}}
.phero .sub{font-size:19px}
.sv-wrap{max-width:1080px}
#survey-sections{display:flex;flex-direction:column;gap:72px;margin-bottom:72px}
#survey-sections[hidden],[data-survey-subtitle][hidden]{display:none}
.sv-hero{border-radius:var(--radius-lg);overflow:hidden;margin:0}
.sv-hero-img img{width:100%;height:auto;max-height:640px;object-fit:contain;background:var(--brand-silver-100)}
.sv-hero .sv-vid{border:0}
.prose{max-width:760px;font-size:var(--type-body-size);line-height:var(--type-body-lh);color:var(--text-secondary)}
.prose p{margin:0 0 1em}.prose h3,.prose h4{font-family:var(--font-display);color:var(--brand-indigo);margin:1.4em 0 .4em}.prose h3{font-size:var(--type-tagline-size)}
.prose ul,.prose ol{margin:0 0 1em;padding-left:1.3em}.prose li{margin:.35em 0}.prose li::marker{color:var(--brand-red)}
.sv-steps{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--brand-silver-300)}
.sv-steps li{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;padding:24px 0;border-bottom:1px solid var(--brand-silver-300)}
.sv-num{width:40px;height:40px;border-radius:50%;background:var(--brand-red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600}
.sv-steps h3,.sv-card h3,.sv-vid-body h3{font-family:var(--font-display);font-size:var(--type-tagline-size);color:var(--brand-indigo);margin:0 0 6px;font-weight:600}
.sv-steps p,.sv-card p{margin:0;color:var(--text-secondary)}
.sv-gallery{columns:3 260px;column-gap:var(--gutter-grid)}
.sv-gallery figure{break-inside:avoid;margin:0 0 var(--gutter-grid)}
.sv-gallery figcaption,.sv-fig figcaption{font-size:var(--type-caption-size);color:var(--text-secondary);margin-top:8px}
.sv-thumb{position:relative;display:block;width:100%;padding:0;border:0;background:var(--brand-silver-100);border-radius:var(--radius-lg);overflow:hidden;cursor:zoom-in}
.sv-thumb img{width:100%;height:auto;transition:transform 400ms var(--ease)}
.sv-zoom{position:absolute;right:12px;bottom:12px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--brand-indigo);display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(4px);transition:opacity var(--t-hover) var(--ease),transform var(--t-hover) var(--ease)}
@media (hover:hover){.sv-thumb:hover img{transform:scale(1.03)}.sv-thumb:hover .sv-zoom{opacity:1;transform:none}}
@media (hover:none){.sv-zoom{opacity:1;transform:none}}
.sv-videos,.sv-cards,.sv-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--gutter-grid)}
.sv-vid{background:#fff;border:1px solid var(--brand-silver-300);border-radius:var(--radius-lg);overflow:hidden}
.sv-vid-frame{position:relative;aspect-ratio:16/9;background:var(--brand-indigo-800)}
.sv-vid-frame img,.sv-vid-frame video,.sv-vid-frame iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0;background:#000}
.sv-vid-frame video{object-fit:contain}
.sv-play{position:absolute;left:50%;top:50%;width:68px;height:68px;margin:-34px 0 0 -34px;border-radius:50%;border:0;background:var(--brand-red);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease)}
.sv-play .ic{fill:currentColor;margin-left:3px}
@media (hover:hover){.sv-play:hover{transform:scale(1.06);box-shadow:0 10px 24px -8px rgba(228,6,9,.6)}}
.sv-vid-body{padding:var(--space-lg)}.sv-vid-body p{margin:0;font-size:var(--type-caption-size);color:var(--text-secondary)}
.sv-card{background:#fff;border:1px solid var(--brand-silver-300);border-radius:var(--radius-lg);overflow:hidden;transition:transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease)}
.sv-card img{width:100%;aspect-ratio:16/10;object-fit:cover}.sv-card>div{padding:var(--space-lg)}
@media (hover:hover){.sv-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}}
.sv-fig{margin:0}.sv-fig img{width:100%;height:auto;border-radius:var(--radius-lg)}
.sv-docs{list-style:none;margin:0;padding:0;border-top:1px solid var(--brand-silver-300)}
.sv-docs li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--brand-silver-300)}
.sv-docs li>.ic{color:var(--brand-red)}
.sv-docs b{display:block;color:var(--brand-indigo)}.sv-docs span{display:block;font-size:var(--type-caption-size);color:var(--text-secondary)}.sv-docs .sv-meta{font-size:var(--type-fine-print-size);margin-top:4px}
.btn-static.ghost{background:transparent;color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}
.btn-static.ghost:hover{color:var(--color-primary)}
.sv-enq{max-width:760px}
/* lightbox */
.lb{position:fixed;inset:0;z-index:200;background:rgba(10,16,48,.94);display:grid;grid-template-columns:72px minmax(0,1fr) 72px;grid-template-rows:64px minmax(0,1fr);align-items:center;opacity:0;transition:opacity 250ms var(--ease)}
.lb.open{opacity:1}
.lb[hidden]{display:none}
.lb-top{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:0 16px;color:#fff;font-size:var(--type-caption-size)}
.lb-count{margin-right:auto;padding-left:8px}
.lb-full{color:#fff;display:inline-flex;gap:6px;align-items:center}.lb-full:hover{color:#fff}
.lb-btn{width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;justify-self:center;transition:background var(--t-hover) var(--ease)}
.lb-btn:hover{background:rgba(255,255,255,.24)}.lb-btn[hidden]{visibility:hidden}
.lb-fig{margin:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 0 24px;min-height:0}
.lb-fig img{max-width:100%;max-height:calc(100% - 40px);object-fit:contain}
.lb-fig figcaption{color:#fff;font-size:var(--type-caption-size);margin-top:12px;text-align:center}
@media (max-width:640px){#survey-sections{gap:56px}.sv-gallery{columns:2 140px;column-gap:12px}.sv-gallery figure{margin-bottom:12px}.sv-docs li{grid-template-columns:auto minmax(0,1fr)}.sv-docs li .btn-h{grid-column:1/-1}.sv-docs .btn-static{width:100%}.lb{grid-template-columns:0 minmax(0,1fr) 0;grid-template-rows:56px minmax(0,1fr) 72px}.lb-prev,.lb-next{grid-row:3;position:static}.lb-prev{grid-column:2;justify-self:start;margin-left:16px}.lb-next{grid-column:2;justify-self:end;margin-right:16px}.lb-fig{grid-column:2;grid-row:2}.sv-steps li{grid-template-columns:44px minmax(0,1fr);gap:12px}}
@media (prefers-reduced-motion:reduce){.sv-thumb:hover img{transform:none}.lb{transition:none}}
/* director's desk */
.dir-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start}
.dir-photo{margin:0;border-radius:var(--radius-lg);overflow:hidden;background:var(--brand-silver-100);position:sticky;top:104px}
.dir-photo img{width:100%;height:auto;display:block}
.dir-body .h-sec{margin-bottom:28px}
.dir-quote{position:relative;margin:0 0 32px;padding:4px 0 0 48px}
.dir-qmark{position:absolute;left:0;top:-14px;font-family:Georgia,serif;font-size:72px;line-height:1;color:var(--brand-red)}
.dir-quote p{margin:0;font-family:var(--font-display);font-size:24px;line-height:1.35;color:var(--brand-indigo);text-wrap:pretty}
.dir-quote footer{margin-top:10px;font-size:var(--type-body-size)}.dir-quote cite{font-style:normal;font-weight:700;color:var(--brand-black)}
.dir-text p{margin:0 0 1.1em;font-size:var(--type-body-size);line-height:1.65;color:var(--text-secondary);text-wrap:pretty}
.dir-text strong{color:var(--brand-indigo);font-weight:600}
.dir-sign{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:28px;padding-top:24px;border-top:1px solid var(--brand-silver-300)}
.dir-sign img{width:220px;height:auto}
.dir-sign span{font-size:var(--type-caption-strong-size);font-weight:600;color:var(--brand-indigo);padding-left:10px}
@media (max-width:1068px){.dir-grid{grid-template-columns:1fr;gap:40px}.dir-photo{position:static;max-width:640px}}
@media (max-width:640px){.dir-quote{padding-left:36px}.dir-qmark{font-size:56px}.dir-quote p{font-size:20px}.dir-sign img{width:180px}}
/* clientele */
.org-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gutter-grid)}
.org-card{background:#fff;border:1px solid var(--brand-silver-300);border-radius:var(--radius-lg);padding:32px 20px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;transition:border-color var(--t-hover) var(--ease),transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease),opacity var(--t-reveal) var(--ease)}
.org-card img{width:auto;height:112px;max-width:100%;object-fit:contain}
.org-card .nm{font-family:var(--font-display);font-weight:600;font-size:var(--type-tagline-size);color:var(--brand-indigo)}
.client-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gutter-grid)}
.client-grid figure{margin:0}
.client-card.sv-thumb{background:#fff;border:1px solid var(--brand-silver-300);border-radius:var(--radius-lg);aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:22px;cursor:zoom-in;transition:border-color var(--t-hover) var(--ease),transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease)}
.client-card.sv-thumb img{width:100%;height:100%;object-fit:contain;transition:transform 300ms var(--ease)}
@media (hover:hover){.org-card:hover,.client-card.sv-thumb:hover{border-color:var(--brand-indigo);transform:translateY(-4px);box-shadow:var(--shadow-lift)}.client-card.sv-thumb:hover img{transform:scale(1.04)}}
.lb-fig img{background:#fff;border-radius:var(--radius-lg)}
.client-grid~.lb .lb-fig img,.lb .lb-fig img[src*="assets/clients/"]{padding:24px;min-width:min(420px,80vw);max-height:min(70vh,520px)}
.enq-band{background:var(--brand-indigo);color:#fff}
.enq-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-top:64px;padding-bottom:64px}
.enq-band h2{font-family:var(--font-display);font-size:40px;line-height:1.1;font-weight:600;letter-spacing:-0.4px;margin:0;color:#fff}
@media (max-width:1068px){.org-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.org-grid{grid-template-columns:1fr}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-card.sv-thumb{padding:16px}.enq-band h2{font-size:30px}.enq-band .wrap{padding-top:48px;padding-bottom:48px}.enq-band .btn-h{width:100%}.enq-band .btn-h>*{width:100%}}
/* life gallery */
.life-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}
.life-tab{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--radius-pill);border:1px solid var(--brand-silver-300);background:#fff;color:var(--brand-indigo);font:inherit;font-size:15px;cursor:pointer;transition:background var(--t-hover) var(--ease),border-color var(--t-hover) var(--ease),color var(--t-hover) var(--ease)}
.life-tab span{font-size:12px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--brand-indigo-50);display:inline-flex;align-items:center;justify-content:center}
.life-tab:hover{border-color:var(--brand-indigo)}
.life-tab[aria-selected="true"]{background:var(--brand-indigo);border-color:var(--brand-indigo);color:#fff}
.life-tab[aria-selected="true"] span{background:rgba(255,255,255,.18)}
.life-empty{margin:0;padding:48px 0;color:var(--text-secondary);border-top:1px solid var(--brand-silver-300)}
@media (max-width:640px){.life-tabs{flex-wrap:nowrap;overflow-x:auto;margin-left:-20px;margin-right:-20px;padding:0 20px 4px;scrollbar-width:none}.life-tab{flex:none}}
/* life albums */
.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter-grid)}
.album-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;text-align:left;padding:0;border:1px solid var(--brand-silver-300);border-radius:var(--radius-lg);background:#fff;overflow:hidden;cursor:pointer;font:inherit;color:inherit;transition:border-color var(--t-hover) var(--ease),transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease),opacity var(--t-reveal) var(--ease)}
.album-cover{grid-column:1/-1;aspect-ratio:4/3;background:var(--brand-indigo-50);color:var(--brand-indigo);display:flex;align-items:center;justify-content:center;overflow:hidden}
.album-cover img{width:100%;height:100%;object-fit:cover;transition:transform 400ms var(--ease)}
.album-meta{padding:18px 0 20px 22px;display:flex;flex-direction:column;gap:4px}
.album-meta b{font-family:var(--font-display);font-size:var(--type-tagline-size);font-weight:600;color:var(--brand-indigo);line-height:1.2}
.album-meta span{font-size:var(--type-caption-size);color:var(--text-secondary)}
.album-arr{align-self:center;padding-right:22px;color:var(--brand-red)}
.album-card.is-empty .album-cover{color:var(--brand-silver)}
@media (hover:hover){.album-card:hover{border-color:var(--brand-indigo);transform:translateY(-4px);box-shadow:var(--shadow-lift)}.album-card:hover .album-cover img{transform:scale(1.03)}.album-card:hover .album-arr{transform:translateX(4px)}}
.album-head{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:32px}
.album-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border-radius:var(--radius-pill);border:1px solid var(--brand-silver-300);background:#fff;color:var(--brand-indigo);font:inherit;font-size:15px;cursor:pointer;margin-bottom:12px;transition:border-color var(--t-hover) var(--ease)}
.album-back:hover{border-color:var(--brand-indigo)}
.album-head h3{font-family:var(--font-display);font-size:var(--type-display-md-size);line-height:1.15;font-weight:600;color:var(--brand-indigo);margin:0}
.album-head p{margin:0;color:var(--text-secondary);font-size:var(--type-caption-size)}
.album-media{display:flex;flex-direction:column;gap:48px}
.album-media .sv-sec .h-sec{font-size:var(--type-tagline-size)}
@media (max-width:1068px){.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.album-grid{grid-template-columns:1fr}.album-head h3{font-size:28px}}
.album-empty{aspect-ratio:4/3;border:1px dashed var(--brand-silver);border-radius:var(--radius-lg);background:var(--brand-silver-100);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px;color:#5f6166}
.album-empty .ic,.album-empty>span:first-child{color:#6b6d72}
.album-empty b{font-family:var(--font-display);font-size:var(--type-tagline-size);font-weight:600;color:var(--brand-indigo)}
.album-empty span:last-child{font-size:var(--type-body-size)}
/* life tabs v2 */
.life-tab{background:#fff;border:1px solid var(--brand-silver-300);color:var(--brand-indigo);font-weight:500}
.life-tab:hover{border-color:var(--brand-red);color:var(--brand-red)}
.life-tab[aria-selected="true"],.life-tab[aria-selected="true"]:hover{background:var(--brand-red);border-color:var(--brand-red);color:#fff}
.life-tab:focus-visible{outline:2px solid var(--brand-indigo);outline-offset:2px}
.life-grid.sv-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter-grid)}
.life-grid figure{margin:0}
.life-grid .sv-thumb{display:block;width:100%;aspect-ratio:4/3;padding:0;border:0;border-radius:var(--radius-lg);overflow:hidden;background:var(--brand-silver-100);cursor:zoom-in;position:relative;transition:transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease)}
.life-grid .sv-thumb img{width:100%;height:100%;object-fit:cover;transition:transform 400ms var(--ease)}
.life-grid figcaption{margin-top:10px;font-size:var(--type-caption-size);color:var(--text-secondary)}
@media (hover:hover){.life-grid .sv-thumb:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}.life-grid .sv-thumb:hover img{transform:scale(1.04)}}
.life-soon{min-height:320px;border:1px dashed var(--brand-silver);border-radius:var(--radius-lg);background:var(--brand-silver-100);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:32px;color:#5f6166}
.life-soon b{font-family:var(--font-display);font-size:var(--type-tagline-size);font-weight:600;color:var(--brand-indigo)}
@media (max-width:1068px){.life-grid.sv-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.life-grid.sv-gallery{grid-template-columns:1fr}.life-soon{min-height:220px}}
@media (prefers-reduced-motion:reduce){.life-grid .sv-thumb,.life-grid .sv-thumb img{transition:none}.life-grid .sv-thumb:hover,.life-grid .sv-thumb:hover img{transform:none}}
/* life gallery: frame follows each photo's own shape (no crop) */
.life-grid.sv-gallery{display:block;columns:3;column-gap:var(--gutter-grid)}
.life-grid figure{break-inside:avoid;margin:0 0 var(--gutter-grid);display:block}
.life-grid .sv-thumb{aspect-ratio:auto;height:auto}
.life-grid .sv-thumb img{display:block;width:100%;height:auto;object-fit:contain}
@media (max-width:1068px){.life-grid.sv-gallery{columns:2}}
@media (max-width:640px){.life-grid.sv-gallery{columns:1}}
.logo-tile.has-logo{padding:20px 28px;text-decoration:none;transition:border-color var(--t-hover) var(--ease),transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease)}
.logo-tile.has-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
@media (hover:hover){.logo-tile.has-logo:hover{border-color:var(--brand-indigo);transform:translateY(-4px);box-shadow:var(--shadow-lift)}}
@media (prefers-reduced-motion:reduce){.logo-tile.has-logo{transition:none}.logo-tile.has-logo:hover{transform:none}}
/* client logos: same size as the 4 top cards */
.client-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.client-card.sv-thumb{aspect-ratio:auto;height:auto;min-height:0;padding:32px 20px}
.client-card.sv-thumb img{width:auto;height:112px;max-width:100%}
@media (max-width:1068px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-card.sv-thumb{padding:20px 12px}.client-card.sv-thumb img{height:80px}}
/* wide screens: use the full width */
@media (min-width:1400px){.wrap{max-width:none;padding:0 64px}.sv-wrap{max-width:1280px}.hero-copy{padding-left:64px}}
@media (min-width:1900px){.wrap{padding:0 96px}.hero-copy{padding-left:96px}}
@media (min-width:1400px){.client-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* larger nav + footer on wide screens */
@media (min-width:1400px){
.nav .wrap{height:96px}.nav-logo img{height:72px}
.nav-links{gap:8px}.nav-links a{font-size:18px;padding:0 16px;height:52px}.nav-links a::after{left:16px;right:16px}
.nav-right .btn-static{font-size:18px;padding:14px 30px}
.topbar{font-size:15px}.topbar .wrap{min-height:42px}.topbar .tag{font-size:14px}
.site-ft footer{padding:80px 64px!important}
.site-ft footer>div{max-width:none!important}
.site-ft footer p{font-size:16px!important}
.site-ft footer>div>div:nth-child(2){gap:40px!important}
.site-ft footer>div>div:nth-child(2)>div>div{font-size:20px!important;margin-bottom:12px!important}
.site-ft footer>div>div:nth-child(2) a{font-size:16px!important;line-height:2.4!important}
.site-ft footer>div>div:last-child,.site-ft footer>div>div:last-child a,.site-ft footer>div>div:last-child span{font-size:15px!important}
}
@media (min-width:1900px){.site-ft footer{padding:96px!important}.nav-links a{font-size:19px}}
/* vision mission values strip */
.vmv{background:var(--brand-indigo-50);border-bottom:1px solid var(--brand-indigo-100)}
.vmv .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:32px;padding-bottom:32px}
.vmv a{display:flex;align-items:center;gap:20px;min-height:96px;padding:20px 28px;background:#fff;border:1px solid var(--brand-indigo-100);border-left:4px solid var(--brand-red);border-radius:12px;color:var(--brand-indigo);text-decoration:none;transition:transform var(--t-hover,.25s) ease,box-shadow var(--t-hover,.25s) ease,border-color var(--t-hover,.25s) ease}
.vmv a:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(21,32,90,.12);border-color:var(--brand-indigo-100)}
.vmv a:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
.vmv-ic{flex:none;width:52px;height:52px;border-radius:50%;background:var(--brand-indigo-50);color:var(--brand-red);display:inline-flex;align-items:center;justify-content:center}
.vmv-t{flex:1;font-family:var(--font-display);font-size:24px;font-weight:700;letter-spacing:-.3px}
.vmv .arr{color:var(--brand-red);transition:transform var(--t-hover,.25s) ease}
.vmv a:hover .arr{transform:translateX(4px)}
@media (min-width:1400px){.vmv a{min-height:112px}.vmv-t{font-size:28px}}
@media (max-width:833px){.vmv .wrap{grid-template-columns:1fr;gap:12px}.vmv a{min-height:76px;padding:16px 20px}.vmv-t{font-size:21px}}
@media (prefers-reduced-motion:reduce){.vmv a,.vmv .arr{transition:none}.vmv a:hover{transform:none}.vmv a:hover .arr{transform:none}}
/* vmv page */
.vmv-sec .vmv-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px;align-items:start}
.vmv-sec .h-sec{display:flex;align-items:center;gap:16px}
.vmv-sec .vmv-ic{width:60px;height:60px;background:#fff;border:1px solid var(--brand-indigo-100)}
.vmv-sec .ph-block{margin:0;padding:28px 32px;border:1px dashed var(--brand-indigo-100);border-radius:12px;color:var(--text-secondary);font-size:17px;background:#fff}
@media (max-width:833px){.vmv-sec .vmv-row{grid-template-columns:1fr;gap:20px}}
@media (min-width:834px) and (max-width:1100px){.vmv .wrap{gap:16px}.vmv a{padding:16px 18px;gap:12px}.vmv-ic{width:44px;height:44px}.vmv-t{font-size:20px;white-space:nowrap}}
/* vmv compact */
.vmv .wrap{grid-template-columns:repeat(3,minmax(0,300px));justify-content:flex-start;gap:16px;padding-top:20px;padding-bottom:20px}
.vmv a{min-height:0;padding:12px 18px;gap:12px;border-radius:10px}
.vmv-ic{width:36px;height:36px}.vmv-ic .ic{width:18px;height:18px}
.vmv-t{font-size:18px;white-space:nowrap}
@media (min-width:1400px){.vmv a{min-height:0}.vmv-t{font-size:19px}}
@media (max-width:833px){.vmv .wrap{grid-template-columns:1fr;gap:10px}.vmv a{min-height:56px;padding:10px 16px}.vmv-t{font-size:17px}}
/* vmv as text links */
.vmv .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:0;padding-top:24px;padding-bottom:24px}
.vmv a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:4px 28px;background:none;border:0;border-left:2px solid var(--brand-red);border-radius:0;box-shadow:none;color:var(--brand-indigo);transform:none}
.vmv a:first-child{border-left:0;padding-left:0}
.vmv a:hover{transform:none;box-shadow:none;color:var(--brand-red)}
.vmv a:hover .vmv-t{text-decoration:underline;text-underline-offset:4px}
.vmv-ic{display:none}
.vmv .arr{display:none}
.vmv-t{font-size:19px;font-weight:600;white-space:nowrap}
@media (min-width:1400px){.vmv-t{font-size:20px}}
@media (max-width:833px){.vmv .wrap{flex-wrap:wrap;padding-top:16px;padding-bottom:16px}.vmv a{padding:4px 16px}.vmv-t{font-size:17px}}
/* hero text: even line spacing + scale with screen */
.hero h1{line-height:1.12;letter-spacing:-1px;text-wrap:balance}
.hero p{line-height:1.5;font-weight:400}
@media (min-width:1400px){.hero h1{font-size:clamp(76px,4.6vw,104px)}.hero p{font-size:clamp(22px,1.25vw,26px);max-width:620px;margin-top:32px}}
@media (max-width:640px){.hero h1{line-height:1.1}}
/* client names under logos */
.client-card.sv-thumb{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px}
.client-nm{display:block;font-size:14px;line-height:1.35;font-weight:600;color:var(--brand-indigo);text-align:center;text-wrap:balance}
.org-card .nm{font-size:15px;font-weight:600}
.logo-tile.has-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}
.logo-tile.has-logo{height:auto;min-height:160px;padding:24px 16px}
.logo-tile.has-logo img{max-height:80px;height:80px;width:auto;max-width:100%;object-fit:contain}
/* six values with descriptions */
.vals6{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px}
.vals6 .val{padding:28px 0 28px;border-bottom:1px solid var(--brand-silver-300);gap:10px}
.vals6 .val>svg{color:var(--brand-red)}
.vals6 .val strong{font-family:var(--font-display);font-size:21px;font-weight:700;color:var(--brand-indigo)}
.vals6 .val-d{font-size:16px;line-height:1.55;font-weight:400;color:var(--text-secondary,#4a4f5c);text-wrap:pretty}
@media (max-width:833px){.vals6{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}}
@media (max-width:640px){.vals6{grid-template-columns:1fr}}
.vmv-stmt{margin:0;font-family:var(--font-display);font-size:26px;line-height:1.45;font-weight:500;color:var(--brand-indigo);text-wrap:pretty;max-width:860px}
@media (min-width:1400px){.vmv-stmt{font-size:30px}}
@media (max-width:640px){.vmv-stmt{font-size:20px}}
/* ===== Vision, Mission & Values redesign ===== */
.vm-page{background:#fff}
.vm-eyebrow{display:flex;align-items:center;gap:20px;margin:0 0 16px;font-size:13px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--brand-black)}
.vm-eyebrow::after{content:"";width:56px;height:1px;background:currentColor;opacity:.45}
.vm-eyebrow.on-dark{color:#fff}
.vm-intro{position:relative;overflow:hidden;background:var(--brand-silver-50,#f6f7f9);padding:56px 0 64px}
.crumbs-light{margin-bottom:40px}.crumbs-light a,.crumbs-light span{color:var(--text-secondary,#555)}.crumbs-light a:hover{color:var(--brand-red)}
.vm-title{margin:0;font-family:var(--font-display);font-size:clamp(44px,6vw,84px);line-height:1.05;letter-spacing:-1.5px;font-weight:700;color:var(--brand-indigo)}
.vm-bar{display:block;width:64px;height:3px;background:var(--brand-red);margin-top:24px}
.vm-lines{position:absolute;inset:0;pointer-events:none}
.vm-lines::before{content:"";position:absolute;right:-12%;top:-60%;width:760px;height:760px;border:1px solid var(--brand-silver-300);border-radius:50%;opacity:.7}
.vm-lines::after{content:"";position:absolute;right:22%;top:0;bottom:0;width:38px;border-left:1px solid var(--brand-silver-300);border-right:1px solid var(--brand-red);opacity:.55}
.vm-lines-2::before{left:-18%;right:auto;top:-40%;width:620px;height:620px}
.vm-lines-2::after{display:none}
.vm-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.vm-panel{position:relative;overflow:hidden;min-height:520px;display:flex;flex-direction:column}
.vm-in{position:relative;z-index:1;padding:56px max(40px,calc((100vw - 1280px)/2 + 40px)) 56px;padding-right:56px;max-width:720px}
.vm-vision .vm-in{padding-left:56px;padding-right:max(40px,calc((100vw - 1280px)/2 + 40px))}
.vm-ic{display:block;margin-bottom:28px}
.vm-mission{background:var(--brand-indigo);color:#fff}
.vm-mission .vm-ic{color:var(--brand-red)}
.vm-bg{position:absolute;right:0;top:0;height:100%;width:60%;object-fit:cover;opacity:.35;mix-blend-mode:luminosity;-webkit-mask-image:linear-gradient(90deg,transparent,#000 60%);mask-image:linear-gradient(90deg,transparent,#000 60%)}
.vm-mission::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--brand-indigo) 45%,rgba(21,32,110,.55));pointer-events:none}
.vm-stmt{margin:0;font-family:var(--font-display);font-size:clamp(22px,1.9vw,30px);line-height:1.42;font-weight:400;text-wrap:pretty}
.vm-mission .vm-stmt{color:#fff}
.vm-vision{background:#fff;color:var(--brand-indigo)}
.vm-vision .vm-stmt{font-weight:500;color:var(--brand-indigo)}
.vm-photo{margin:auto 0 0;position:relative}
.vm-photo::before{content:"";position:absolute;inset:0 0 auto;height:40%;background:linear-gradient(#fff,rgba(255,255,255,0));z-index:1}
.vm-photo img{display:block;width:100%;height:220px;object-fit:cover}
.vm-values{position:relative;overflow:hidden;background:var(--brand-silver-50,#f6f7f9);padding:80px 0 96px}
.vm-h2{margin:0 0 40px;font-family:var(--font-display);font-size:clamp(34px,3.6vw,52px);line-height:1.1;letter-spacing:-.8px;font-weight:700;color:var(--brand-indigo)}
.cv-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.cv-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:32px 32px 36px;background:#fff;border:1px solid var(--brand-silver-300);border-radius:6px;box-shadow:0 2px 10px rgba(16,24,64,.05);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.cv-card:nth-child(even){background:#f3f4f7}
.cv-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(16,24,64,.10);border-color:var(--brand-indigo-100)}
.cv-card>svg{color:var(--brand-red);margin-bottom:6px}
.cv-num{position:absolute;top:22px;right:26px;font-family:Georgia,"Times New Roman",serif;font-size:40px;line-height:1;color:var(--brand-silver-300)}
.cv-card h3{margin:0;font-family:var(--font-display);font-size:23px;line-height:1.2;font-weight:700;color:var(--brand-indigo)}
.cv-card p{margin:0;font-size:16.5px;line-height:1.55;color:#3d4250;text-wrap:pretty;max-width:340px}
@media (min-width:1400px){.vm-in{padding-left:64px}.vm-vision .vm-in{padding-right:64px}.vm-panel{min-height:600px}.vm-photo img{height:260px}}
@media (min-width:1900px){.vm-in{padding-left:96px}.vm-vision .vm-in{padding-right:96px}}
@media (max-width:1068px){.vm-duo{grid-template-columns:1fr}.vm-panel{min-height:0}.vm-in,.vm-vision .vm-in{padding:48px 40px;max-width:none}.cv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vm-lines::after{display:none}}
@media (max-width:640px){.vm-intro{padding:32px 0 44px}.crumbs-light{margin-bottom:24px}.vm-title{letter-spacing:-.8px}.vm-in,.vm-vision .vm-in{padding:40px 20px}.vm-eyebrow{letter-spacing:.24em;font-size:12px}.cv-grid{grid-template-columns:1fr;gap:14px}.cv-card{padding:26px 22px 28px}.cv-num{font-size:32px;top:18px;right:18px}.vm-photo img{height:170px}.vm-values{padding:56px 0 64px}.vm-bg{width:100%}}
@media (prefers-reduced-motion:reduce){.cv-card{transition:none}.cv-card:hover{transform:none}}
.crumbs-light{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px}.crumbs-light .ic{color:var(--brand-red);stroke:currentColor}.crumbs-light a,.crumbs-light span{white-space:nowrap}
.vm-bg{position:absolute;right:0;top:0;height:100%;width:58%;opacity:1;mix-blend-mode:normal;background:
repeating-linear-gradient(90deg,rgba(255,255,255,.07) 0 1px,transparent 1px 64px),
repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 1px,transparent 1px 44px),
linear-gradient(115deg,transparent 40%,rgba(255,255,255,.06) 40% 41%,transparent 41%);
-webkit-mask-image:linear-gradient(90deg,transparent,#000 55%);mask-image:linear-gradient(90deg,transparent,#000 55%)}
.vm-mission::after{background:linear-gradient(90deg,var(--brand-indigo) 30%,rgba(21,32,110,.35))}
/* ===== Home: Our Services redesign ===== */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hs{position:relative;overflow:hidden;background:#fff;padding:88px 0 96px}
.hs-contour{position:absolute;inset:0 0 auto;height:420px;pointer-events:none;opacity:.55;background:
radial-gradient(ellipse 420px 180px at 12% 18%,transparent 0 46%,var(--brand-silver-300) 46.3% 46.8%,transparent 47.1% 58%,var(--brand-silver-300) 58.3% 58.8%,transparent 59.1% 70%,var(--brand-silver-300) 70.3% 70.8%,transparent 71.1%),
radial-gradient(ellipse 520px 220px at 82% 10%,transparent 0 40%,var(--brand-silver-300) 40.3% 40.8%,transparent 41.1% 54%,var(--brand-silver-300) 54.3% 54.8%,transparent 55.1% 68%,var(--brand-silver-300) 68.3% 68.8%,transparent 69.1% 82%,var(--brand-silver-300) 82.3% 82.8%,transparent 83.1%);
-webkit-mask-image:linear-gradient(#000 40%,transparent);mask-image:linear-gradient(#000 40%,transparent)}
.hs .wrap{position:relative}
.hs-head{margin-bottom:44px}
.hs-bar{display:block;width:72px;height:3px;background:var(--brand-red);margin-bottom:18px}
.hs-eyebrow{margin:0 0 10px;font-size:14px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--brand-red)}
.hs-title{margin:0;font-family:var(--font-display);font-size:clamp(34px,4.2vw,60px);line-height:1.08;letter-spacing:-1px;font-weight:700;color:var(--brand-indigo);text-wrap:balance}
.hs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.hs-card,.hs-wide{display:flex;background:#fff;border:1px solid var(--brand-silver-300);border-radius:10px;overflow:hidden;color:inherit;text-decoration:none;box-shadow:0 2px 10px rgba(16,24,64,.05);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.hs-card{flex-direction:column}
.hs-card:hover,.hs-wide:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(16,24,64,.12);border-color:var(--brand-indigo-100)}
.hs-card:focus-visible,.hs-wide:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
.hs-photo{display:block;aspect-ratio:2/1;overflow:hidden;background:var(--brand-silver-100)}
.hs-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.hs-card:hover .hs-photo img{transform:scale(1.04)}
.hs-body{display:flex;flex-direction:column;gap:8px;padding:22px 26px 26px;flex:1}
.hs-ic{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:10px;background:var(--brand-indigo-50);margin-bottom:10px}
.hs-ic-lg{width:84px;height:84px;flex:none}
.hs-card h3,.hs-wide h3{margin:0;font-family:var(--font-display);font-size:23px;line-height:1.2;font-weight:700;color:var(--brand-indigo)}
.hs-card p,.hs-wide p{margin:0;font-size:16.5px;line-height:1.5;color:#3d4250;text-wrap:pretty}
.hs-more{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:14px;font-size:16px;font-weight:600;color:var(--brand-red-700,#b3121a)}
.hs-arr{display:inline-block;transition:transform .25s ease}
.hs-card:hover .hs-arr,.hs-wide:hover .hs-arr{transform:translateX(4px)}
.hs-wide{margin-top:20px;align-items:stretch;min-height:240px}
.hs-wide-body{flex:0 0 46%;display:flex;align-items:center;gap:28px;padding:32px 36px}
.hs-wide-txt{display:flex;flex-direction:column;gap:8px}
.hs-wide h3{font-size:clamp(23px,2vw,28px)}
.hs-wide-photo{position:relative;flex:1;overflow:hidden}
.hs-wide-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hs-wide-photo::before{content:"";position:absolute;inset:0 auto 0 0;width:28%;background:linear-gradient(90deg,#fff,rgba(255,255,255,0));z-index:1}
.hs-foot{display:flex;justify-content:center;margin-top:40px}
@media (max-width:1068px){.hs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hs-wide-body{flex-basis:55%}}
@media (max-width:640px){.hs{padding:56px 0 64px}.hs-grid{grid-template-columns:1fr;gap:16px}.hs-body{padding:20px 20px 22px}.hs-wide{flex-direction:column-reverse}.hs-wide-photo{flex:none;aspect-ratio:2/1}.hs-wide-photo::before{display:none}.hs-wide-body{flex-direction:column;align-items:flex-start;gap:6px;padding:22px 20px 24px}.hs-ic-lg{width:60px;height:60px}.hs-foot{justify-content:stretch}.hs-foot>*{width:100%}}
@media (prefers-reduced-motion:reduce){.hs-card,.hs-wide,.hs-photo img,.hs-arr{transition:none}.hs-card:hover,.hs-wide:hover{transform:none}.hs-card:hover .hs-photo img,.hs-card:hover .hs-arr,.hs-wide:hover .hs-arr{transform:none}}
.hs-contour{opacity:.32}
/* wide card: keep whole photo (no head crop) */
.hs-wide{min-height:0}
.hs-wide-body{flex:1 1 auto}
.hs-wide-photo{flex:0 0 min(56%,920px);aspect-ratio:1202/442;align-self:center}
.hs-wide-photo img{object-fit:cover;object-position:center 25%}
@media (max-width:1068px){.hs-wide-photo{flex-basis:50%;aspect-ratio:auto;align-self:stretch;min-height:240px}}
@media (max-width:640px){.hs-wide-photo{flex:none;width:100%;aspect-ratio:1202/442;min-height:0}}
/* ===== Services page ===== */
.sp-hero{position:relative;overflow:hidden;background:#f6f7f9;min-height:460px;display:flex;align-items:center}
.sp-hero-img{position:absolute;right:0;top:0;height:100%;width:68%;object-fit:cover;object-position:center 40%}
.sp-hero-fade{position:absolute;inset:0;background:linear-gradient(90deg,#f6f7f9 30%,rgba(246,247,249,.92) 40%,rgba(246,247,249,0) 62%)}
.sp-contour{height:100%;opacity:.4;-webkit-mask-image:linear-gradient(90deg,#000 35%,transparent 55%);mask-image:linear-gradient(90deg,#000 35%,transparent 55%)}
.sp-hero-in{position:relative;z-index:1;width:100%;padding-top:28px;padding-bottom:56px}
.sp-crumbs{display:flex;gap:12px;align-items:center;font-size:14px;color:#555;margin-bottom:40px}.sp-crumbs a{color:#555}.sp-crumbs a:hover{color:var(--brand-red)}.sp-crumbs [aria-current]{color:var(--brand-black)}
.sp-eyebrow{display:flex;align-items:center;gap:18px;margin:0 0 14px;font-size:14px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:#444}
.sp-eyebrow .hs-bar{margin:0;width:52px}
.sp-title{margin:0;font-family:var(--font-display);font-size:clamp(44px,5.6vw,84px);line-height:1.02;letter-spacing:-1.6px;font-weight:800;color:var(--brand-indigo)}
.sp-dot{color:var(--brand-red)}
.sp-lead{margin:22px 0 0;max-width:470px;font-size:clamp(17px,1.3vw,20px);line-height:1.55;color:#3d4250}
.sp-list{padding-top:40px}
.sp-list .hs-contour{display:none}
.sp-card .hs-photo{margin:8px 8px 0;border-radius:6px;aspect-ratio:2/1}
.sp-body{display:flex;gap:18px;align-items:flex-start;padding:24px 24px 26px;flex:1}
.sp-txt{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0;height:100%}
.sp-ic{flex:none;display:inline-flex;color:var(--brand-red)}
.sp-ic svg *{stroke:var(--brand-red)}
.sp-card h3{margin:0;font-family:var(--font-display);font-size:22px;line-height:1.2;font-weight:700;color:var(--brand-indigo)}
.sp-card p{margin:0;font-size:16px;line-height:1.5;color:#4a4f5c}
.sp-card .hs-wide-body{gap:28px}
@media (max-width:1068px){.sp-hero-img{width:100%;opacity:.9}.sp-hero-fade{background:linear-gradient(90deg,#f6f7f9 35%,rgba(246,247,249,.85) 60%,rgba(246,247,249,.35))}}
@media (max-width:640px){.sp-hero{min-height:0;flex-direction:column;align-items:stretch}.sp-hero-img{position:relative;width:100%;height:200px;order:2}.sp-hero-fade{display:none}.sp-hero-in{padding-bottom:32px}.sp-crumbs{margin-bottom:24px}.sp-title{letter-spacing:-.8px}.sp-body{padding:20px}}
.sp-eyebrow{white-space:nowrap}.sp-contour{opacity:.18}
/* leadership team beside director's message */
.lead-team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px;align-self:start}
.lt-card{margin:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.lt-card.lt-lg{grid-column:span 2;max-width:240px;justify-self:center;width:100%}
.lt-card img{display:block;width:100%;aspect-ratio:183/237;object-fit:cover;object-position:center top;border-radius:10px;border:1px solid var(--brand-silver-300);background:var(--brand-silver-100)}
.lt-card.lt-lg img{aspect-ratio:241/256}
.lt-card figcaption{display:flex;flex-direction:column;gap:2px}
.lt-card strong{font-size:16px;line-height:1.3;color:var(--brand-indigo)}
.lt-card span{font-size:13.5px;line-height:1.35;color:#4a4f5c;text-wrap:balance}
@media (max-width:640px){.lead-team{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.lt-card.lt-lg{grid-column:span 1;max-width:none}.lt-card.lt-lg img{aspect-ratio:183/237}}
.lead-team .lt-card figcaption{position:static;display:flex;flex-direction:column;gap:2px;width:100%;margin:0;padding:0;background:none}
.lead-team .lt-card strong,.lead-team .lt-card span{display:block;position:static;width:100%;white-space:normal}
/* leadership team: smaller */
.lead-team{max-width:620px;margin:0 auto;gap:18px 14px}
.lt-card.lt-lg{max-width:170px}
.lt-card:not(.lt-lg){max-width:130px;justify-self:center;width:100%}
.lt-card{gap:8px}
.lead-team .lt-card strong{font-size:14.5px}
.lead-team .lt-card span{font-size:12.5px}
@media (max-width:640px){.lead-team{max-width:420px}.lt-card.lt-lg,.lt-card:not(.lt-lg){max-width:150px}}
/* ===== Media page ===== */
.md-intro{padding-bottom:48px}
.md-intro-txt{max-width:900px;display:flex;flex-direction:column;gap:18px}
.md-intro-txt p{margin:0;font-size:18px;line-height:1.7;color:#343846;text-wrap:pretty}
.md-intro-txt p:first-child{font-size:20px;color:var(--brand-indigo)}
.md-grid{columns:3 300px;column-gap:20px}
.md-item{break-inside:avoid;margin:0 0 20px}
.md-thumb.sv-thumb{display:block;position:relative;width:100%;padding:12px;background:#fff;border:1px solid var(--brand-silver-300);border-radius:10px;box-shadow:0 2px 10px rgba(16,24,64,.05);cursor:zoom-in;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;aspect-ratio:auto}
.md-thumb.sv-thumb img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:4px;transform:none}
.md-thumb.sv-thumb:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(16,24,64,.12);border-color:var(--brand-indigo-100)}
.md-thumb.sv-thumb:hover img{transform:none}
.md-thumb:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
.lb-fig.zoomed{overflow:auto;max-width:96vw;max-height:84vh;cursor:zoom-out}
.lb-fig.zoomed img{max-width:none!important;max-height:none!important;width:auto;height:auto;transform:none}
.lb-fig img{cursor:zoom-in}
.lb-zoom{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:20px;border:1px solid rgba(255,255,255,.4);background:none;color:#fff;font:inherit;font-size:14px;cursor:pointer}
.lb-zoom:hover{background:rgba(255,255,255,.12)}.lb-zoom:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media (max-width:640px){.md-intro-txt p{font-size:16.5px}.md-intro-txt p:first-child{font-size:18px}.md-grid{columns:1}.md-thumb.sv-thumb{padding:8px}}
@media (prefers-reduced-motion:reduce){.md-thumb.sv-thumb{transition:none}.md-thumb.sv-thumb:hover{transform:none}}
/* media intro: use full layout width */
.md-intro-txt{max-width:none;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:20px 64px;align-items:start}
.md-intro-txt p:first-child{grid-row:span 2;font-family:var(--font-display);font-size:clamp(22px,1.7vw,30px);line-height:1.45;font-weight:500;color:var(--brand-indigo);padding-left:24px;border-left:3px solid var(--brand-red)}
.md-intro-txt p:not(:first-child){font-size:clamp(17px,1.05vw,19px);line-height:1.75}
@media (max-width:1068px){.md-intro-txt{grid-template-columns:1fr;gap:18px}.md-intro-txt p:first-child{grid-row:auto}}
@media (max-width:640px){.md-intro-txt p:first-child{font-size:19px;padding-left:16px}}
/* ===== Featured media ===== */
.fm{padding-bottom:24px}
.fm-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#fff;border:1px solid var(--brand-silver-300);border-radius:12px;overflow:hidden;box-shadow:0 4px 18px rgba(16,24,64,.06)}
.fm-photo{margin:0;background:var(--brand-silver-100)}
.fm-photo img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:909/445}
.fm-body{display:flex;flex-direction:column;gap:12px;padding:40px 44px}
.fm-cat{margin:0;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-red-700,#b3121a)}
.fm-meta{margin:0;display:flex;flex-wrap:wrap;gap:8px;font-size:15px;color:#4a4f5c}.fm-meta span:first-child{font-weight:600;color:var(--brand-black)}
.fm-title{margin:4px 0 0;font-family:var(--font-display);font-size:clamp(26px,2.3vw,36px);line-height:1.15;letter-spacing:-.4px;font-weight:700;color:var(--brand-indigo);text-wrap:balance}
.fm-desc{margin:0;font-size:17px;line-height:1.65;color:#343846;text-wrap:pretty}
.fm-actions{display:flex;flex-wrap:wrap;gap:16px 20px;align-items:flex-start;margin-top:10px}
.fm-ext{display:flex;flex-direction:column;gap:8px;max-width:340px}
.fm-src{margin:0;font-size:14px;line-height:1.45;font-weight:600;color:var(--brand-black)}
.fm-btn{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 22px;border-radius:999px;font:inherit;font-size:15.5px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.fm-primary{background:var(--brand-red);color:#fff;border:1px solid var(--brand-red)}
.fm-primary:hover{background:var(--brand-red-700,#b3121a);border-color:var(--brand-red-700,#b3121a);transform:translateY(-1px)}
.fm-ghost{background:#fff;color:var(--brand-indigo);border:1px solid var(--brand-indigo)}
.fm-ghost:hover{background:var(--brand-indigo);color:#fff;transform:translateY(-1px)}
.fm-btn:focus-visible,.fm-close:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
.fm-dialog{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 48px);padding:0;border:0;border-radius:14px;box-shadow:0 30px 80px rgba(10,16,48,.35);color:inherit}
.fm-dialog::backdrop{background:rgba(12,18,52,.6)}
.fm-dlg-head{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-bottom:1px solid var(--brand-silver-300)}
.fm-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--brand-silver-300);background:#fff;color:var(--brand-indigo);cursor:pointer}.fm-close:hover{background:var(--brand-indigo-50)}
.fm-dlg-body{padding:24px 32px 32px}
.fm-dlg-body h3{margin:0 0 16px;font-family:var(--font-display);font-size:26px;line-height:1.2;color:var(--brand-indigo)}
.fm-dlg-body p{margin:0 0 14px;font-size:16.5px;line-height:1.65;color:#343846}
.fm-dlg-body a{color:var(--brand-red-700,#b3121a);font-weight:600}
.fm-tags{font-size:14px!important;color:var(--brand-indigo)!important}
@media (max-width:1068px){.fm-card{grid-template-columns:1fr}.fm-body{padding:32px}}
@media (max-width:640px){.fm-body{padding:24px 20px}.fm-actions{flex-direction:column;align-items:stretch}.fm-btn{justify-content:center}.fm-ext{max-width:none}.fm-dlg-body{padding:20px}}
@media (prefers-reduced-motion:reduce){.fm-btn{transition:none}.fm-btn:hover{transform:none}}
/* contact map */
.ct-map{position:relative;margin-top:24px;border:1px solid var(--brand-silver-300);border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#eef0f4}
.ct-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ct-map-hit{position:absolute;inset:0;z-index:1}
.ct-map-hit:focus-visible{outline:2px solid var(--brand-red);outline-offset:-3px}
.ct-map-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.ct-dir,.ct-open{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 20px;border-radius:999px;font-size:15px;font-weight:600;text-decoration:none;transition:background .2s ease,color .2s ease,border-color .2s ease}
.ct-dir{background:var(--brand-red);color:#fff}.ct-dir:hover{background:var(--brand-red-700,#b8000f);color:#fff}
.ct-open{border:1px solid var(--brand-indigo);color:var(--brand-indigo)}.ct-open:hover{background:var(--brand-indigo);color:#fff}
.ct-dir:focus-visible,.ct-open:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
@media (max-width:640px){.ct-map{aspect-ratio:1/1}.ct-map-btns a{flex:1 1 100%;justify-content:center}}
/* leaflet map */
#ct-leaflet{position:absolute;inset:0;z-index:0;font-family:Roboto,Arial,sans-serif}
#ct-leaflet .leaflet-tile-pane{filter:grayscale(1) contrast(.95)}
.ct-pin{background:none;border:0}
#ct-leaflet .leaflet-popup-content-wrapper{border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.25)}
#ct-leaflet .leaflet-popup-content{margin:30px 44px 14px 18px;font-size:16px;line-height:1.35;color:#202124}
#ct-leaflet .leaflet-container a.leaflet-popup-close-button,#ct-leaflet a.leaflet-popup-close-button{width:32px;height:32px;font-size:26px;line-height:30px;color:#444;top:8px;right:8px}
.ct-pop b{display:block;font-weight:400}.ct-pop b a{color:#202124;text-decoration:none}.ct-pop b a:hover{text-decoration:underline}
.ct-pop-dir{color:#5a2ca0!important;text-decoration:underline}
/* hero work slider */
.hero-slides{position:relative;overflow:hidden;touch-action:pan-y}
.hero-slides .hs-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s ease;pointer-events:none}
.hero-slides .hs-slide.on{opacity:1;pointer-events:auto;z-index:1}
.hero-slides .hs-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:1!important;transform:none!important}
.hs-label{position:absolute;left:24px;bottom:76px;z-index:2;display:inline-flex;align-items:center;min-height:36px;padding:0 16px;border-radius:999px;background:rgba(20,30,90,.82);color:#fff;font-size:15px;font-weight:600;letter-spacing:.01em;backdrop-filter:blur(4px)}
.hs-ctrl{position:absolute;left:24px;right:24px;bottom:20px;z-index:3;display:flex;align-items:center;gap:10px}
.hs-ctrl .hero-dots{position:static;transform:none;display:flex;gap:8px;margin:0 4px}
.hs-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--brand-indigo);cursor:pointer;transition:background .2s ease,transform .2s ease}
.hs-btn:hover{background:#fff;transform:translateY(-1px)}
.hs-btn:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px var(--brand-red)}
.hs-btn:last-child{margin-left:auto}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:640px){.hs-label{left:16px;bottom:68px;font-size:14px;min-height:32px}.hs-ctrl{left:12px;right:12px;bottom:12px;gap:6px}}
@media (prefers-reduced-motion:reduce){.hero-slides .hs-slide{transition:none}.hs-btn{transition:none}}
.hs-label{white-space:nowrap;line-height:1}
.hs-credit{position:absolute;right:12px;top:10px;z-index:2;font-size:11px;color:rgba(255,255,255,.85);text-shadow:0 1px 2px rgba(0,0,0,.6)}

/* ===== Animated service showcase ===== */
.ss{padding:88px 0 40px;background:#fff}
.ss-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.ss-card{position:relative;display:block;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:var(--brand-indigo);color:#fff;text-decoration:none;isolation:isolate;box-shadow:0 2px 10px rgba(16,24,64,.08);transition:transform .3s cubic-bezier(.25,.1,.25,1),box-shadow .3s cubic-bezier(.25,.1,.25,1)}
.ss-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(16,24,64,.22)}
.ss-card:focus-visible{outline:3px solid var(--brand-red);outline-offset:4px}
.ss-media{position:absolute;inset:0;transition:transform .6s cubic-bezier(.25,.1,.25,1)}
.ss-card:hover .ss-media,.ss-card:focus-visible .ss-media{transform:scale(1.05)}
.ss-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:ssKen 22s ease-in-out infinite alternate;will-change:transform}
.ss-tree .ss-media img{animation-name:ssKenSoft}
@keyframes ssKen{0%{transform:scale(1.02) translate3d(0,0,0)}100%{transform:scale(1.09) translate3d(-1.5%,-1%,0)}}
@keyframes ssKenSoft{0%{transform:scale(1.01)}100%{transform:scale(1.04)}}
.ss-fx{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.ss-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:64px 28px 24px;background:linear-gradient(to top,rgba(10,14,40,.82),rgba(10,14,40,.4) 55%,rgba(10,14,40,0));pointer-events:none}
.ss-name{font-family:var(--font-display);font-size:clamp(20px,2vw,28px);line-height:1.15;font-weight:700;letter-spacing:-.3px;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.ss-arr{flex:none;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:var(--brand-red);color:#fff;transition:transform .25s cubic-bezier(.25,.1,.25,1)}
.ss-card:hover .ss-arr,.ss-card:focus-visible .ss-arr{transform:translateX(5px)}
/* drone: scan line + mapping pulse */
.ss-drone .ss-fx::before{content:"";position:absolute;left:0;right:0;top:-10%;height:2px;background:linear-gradient(90deg,transparent,rgba(120,255,150,.85),transparent);box-shadow:0 0 18px 4px rgba(90,240,130,.35);animation:ssScan 5.5s linear infinite}
.ss-drone .ss-fx::after{content:"";position:absolute;left:24%;top:30%;width:60px;height:60px;margin:-30px 0 0 -30px;border-radius:50%;border:2px solid rgba(110,255,140,.8);animation:ssPulse 2.8s ease-out infinite}
@keyframes ssScan{0%{top:-5%;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:105%;opacity:0}}
@keyframes ssPulse{0%{transform:scale(.4);opacity:.9}100%{transform:scale(4);opacity:0}}
/* environmental: water ripple + soft light */
.ss-env .ss-fx b{position:absolute;left:56.5%;top:80%;width:70px;height:22px;margin:-11px 0 0 -35px;border-radius:50%;border:1.5px solid rgba(255,255,255,.7);animation:ssRipple 3.6s ease-out infinite}
.ss-env .ss-fx b:nth-child(2){animation-delay:1.2s}.ss-env .ss-fx b:nth-child(3){animation-delay:2.4s}
@keyframes ssRipple{0%{transform:scale(.3);opacity:.85}100%{transform:scale(3.4);opacity:0}}
.ss-env .ss-fx::before{content:"";position:absolute;inset:-20%;background:radial-gradient(40% 35% at 20% 15%,rgba(255,244,200,.28),transparent 70%);animation:ssGlow 7s ease-in-out infinite alternate}
@keyframes ssGlow{0%{opacity:.4;transform:translateX(0)}100%{opacity:1;transform:translateX(6%)}}
/* SBM: light sweep */
.ss-sbm .ss-fx::before{content:"";position:absolute;top:-20%;bottom:-20%;left:-40%;width:30%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-14deg);animation:ssSweep 6.5s ease-in-out infinite}
@keyframes ssSweep{0%{left:-40%}60%,100%{left:130%}}
/* tree census: green scanning markers */
.ss-tree .ss-fx i{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:rgba(80,220,120,.95);box-shadow:0 0 0 3px rgba(255,255,255,.75);animation:ssMark 3s ease-in-out infinite}
.ss-tree .ss-fx i::after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid rgba(80,220,120,.9);animation:ssPulse 3s ease-out infinite;animation-delay:inherit}
@keyframes ssMark{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}
@media (max-width:760px){.ss{padding:56px 0 24px}.ss-grid{grid-template-columns:1fr;gap:16px}.ss-cap{padding:48px 18px 16px}.ss-arr{width:40px;height:40px}}
@media (hover:none){.ss-card:hover{transform:none}}
@media (prefers-reduced-motion:reduce){.ss-media img,.ss-fx *,.ss-fx::before,.ss-fx::after,.ss-fx i::after{animation:none!important}.ss-fx{display:none}.ss-card,.ss-media,.ss-arr{transition:none}.ss-card:hover{transform:none}.ss-card:hover .ss-media{transform:none}}
.ds-links{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}.ds-tl{color:var(--brand-indigo);font-weight:600;font-size:17px}.ds-tl:hover{color:var(--brand-red)}

/* hero slider: service photos + motion */
.hero-slides .hs-slide img{animation:ssKen 22s ease-in-out infinite alternate}
.hero-slides .hs-slide .ss-fx{z-index:1}
.hsfx-drone::before{content:"";position:absolute;left:0;right:0;top:-10%;height:2px;background:linear-gradient(90deg,transparent,rgba(120,255,150,.85),transparent);box-shadow:0 0 18px 4px rgba(90,240,130,.35);animation:ssScan 5.5s linear infinite}
.hsfx-drone::after{content:"";position:absolute;left:24%;top:30%;width:60px;height:60px;margin:-30px 0 0 -30px;border-radius:50%;border:2px solid rgba(110,255,140,.8);animation:ssPulse 2.8s ease-out infinite}
.hsfx-env b{position:absolute;left:58%;top:80%;width:70px;height:22px;margin:-11px 0 0 -35px;border-radius:50%;border:1.5px solid rgba(255,255,255,.7);animation:ssRipple 3.6s ease-out infinite}
.hsfx-env b:nth-child(2){animation-delay:1.2s}.hsfx-env b:nth-child(3){animation-delay:2.4s}
.hsfx-sbm::before{content:"";position:absolute;top:-20%;bottom:-20%;left:-40%;width:30%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-14deg);animation:ssSweep 6.5s ease-in-out infinite}
.hsfx-tree i{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:rgba(80,220,120,.95);box-shadow:0 0 0 3px rgba(255,255,255,.75);animation:ssMark 3s ease-in-out infinite}
.hsfx-tree i::after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid rgba(80,220,120,.9);animation:ssPulse 3s ease-out infinite;animation-delay:inherit}
.hs-label{z-index:3}.hs-label a{color:inherit;text-decoration:none}.hs-label a:hover{text-decoration:underline}.hs-label a:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:4px}
@media (prefers-reduced-motion:reduce){.hero-slides .hs-slide img{animation:none}.hero-slides .ss-fx{display:none}}


/* ===== Home: media reel ===== */
.mr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:18px;overflow:hidden;background:#0f1d5c;border:1px solid rgba(255,255,255,.08)}
.mr-stage{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:#0b1440}
.mr-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s cubic-bezier(.25,.1,.25,1)}
.mr-slide.on{opacity:1;z-index:1}
.mr-bg{position:absolute;inset:-30px;background-size:cover;background-position:center;filter:blur(24px) brightness(.55);transform:scale(1.1)}
.mr-slide img{position:absolute;inset:16px;width:calc(100% - 32px);height:calc(100% - 32px);object-fit:contain;transform:scale(.985);transition:transform 4.5s ease-out}
.mr-slide.on img{transform:scale(1)}
.mr-stage:focus-visible{outline:3px solid #fff;outline-offset:-3px}
.mr-body{display:flex;flex-direction:column;justify-content:center;gap:14px;padding:48px 56px;color:#fff}
.mr-kicker{margin:0;font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ff9a8f}
.mr-title{margin:0;font-family:var(--font-display);font-size:clamp(30px,3vw,46px);line-height:1.08;letter-spacing:-.6px;font-weight:600}
.mr-cap{margin:0;min-height:3em;font-size:16px;line-height:1.5;color:rgba(255,255,255,.88)}
.mr-bar{height:3px;background:rgba(255,255,255,.16);border-radius:2px;overflow:hidden}
.mr-bar span{display:block;height:100%;background:var(--brand-red);transition:width .6s ease}
.mr-ctrl{display:flex;align-items:center;gap:10px}
.mr-count{min-width:72px;text-align:center;font-variant-numeric:tabular-nums;font-size:15px;color:rgba(255,255,255,.85)}
.mr-cta{margin-top:8px}
@media (max-width:900px){.mr{grid-template-columns:1fr}.mr-body{padding:28px 22px}}
@media (prefers-reduced-motion:reduce){.mr-slide,.mr-slide img,.mr-bar span{transition:none}.mr-slide img{transform:none}}

/* media reel: white info panel like featured card */
.mr{background:#fff;border:1px solid var(--brand-silver-300,#d9dce3)}
.mr-body{color:var(--brand-black,#1a1a1a);gap:12px;padding:44px 52px}
.mr-text{display:flex;flex-direction:column;gap:12px;min-height:250px;animation:mrIn .6s cubic-bezier(.25,.1,.25,1)}
@keyframes mrIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.mr-kicker{color:var(--brand-red);font-weight:700;letter-spacing:.14em;font-size:14px}
.mr-meta{margin:0;font-size:16px;color:#5a5f6c}.mr-pub{color:var(--brand-black,#1a1a1a);font-weight:600}
.mr-title{font-size:clamp(24px,2.3vw,36px);line-height:1.2;font-weight:700;letter-spacing:-.3px;color:var(--brand-indigo);text-wrap:pretty}
.mr-title a{color:inherit;text-decoration:none}.mr-title a:hover{color:var(--brand-red)}
.mr-cap{min-height:0;font-size:17px;line-height:1.6;color:#4a4f5c}
.mr-bar{background:#e6e8ee}
.mr-count{color:#4a4f5c}
.mr .hs-btn{background:#f1f2f6;color:var(--brand-indigo)}.mr .hs-btn:hover{background:#e3e6ef}
.mr-cta{display:flex;flex-wrap:wrap;gap:12px}
.mr-btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;transition:background .2s,color .2s,transform .2s}
.mr-primary{background:var(--brand-red);color:#fff}.mr-primary:hover{background:#c8101a;transform:translateY(-1px)}
.mr-ghost{border:1.5px solid var(--brand-indigo);color:var(--brand-indigo)}.mr-ghost:hover{background:var(--brand-indigo);color:#fff}
.mr-btn:focus-visible,.mr-title a:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
@media (max-width:900px){.mr-body{padding:26px 20px}.mr-text{min-height:0}}
@media (prefers-reduced-motion:reduce){.mr-text{animation:none}}

@media (min-width:901px){.mr-stage{aspect-ratio:auto;min-height:420px;height:100%;align-self:stretch}}
.mr-btn{white-space:nowrap}

/* media reel: ORNET mention marks */
.mr-fig{position:absolute;inset:16px;display:flex;align-items:center;justify-content:center;container-type:size}
.mr-box{position:relative;display:block;width:min(100cqw,calc(100cqh * var(--r)));aspect-ratio:var(--r)}
.mr-slide .mr-box img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.mr-mark{position:absolute;border-radius:3px;background:rgba(255,214,0,.42);outline:2px solid var(--brand-red);outline-offset:1px;mix-blend-mode:multiply;animation:mrMark 2.4s ease-in-out infinite}
@keyframes mrMark{0%,100%{outline-color:rgba(230,0,18,.55)}50%{outline-color:rgba(230,0,18,1)}}
.mr-ornet{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;color:var(--brand-indigo)}
.mr-ornet mark{background:rgba(255,214,0,.55);color:var(--brand-black,#1a1a1a);padding:2px 8px;border-radius:4px;outline:1.5px solid var(--brand-red)}
.mr-ornet-dot{width:8px;height:8px;border-radius:50%;background:var(--brand-red)}
@media (prefers-reduced-motion:reduce){.mr-mark{animation:none}}

/* ORNET mention: red underline like a hand-marked clipping */
.mr-mark{background:none;outline:0;mix-blend-mode:normal;border-bottom:3px solid var(--brand-red);border-radius:0 0 40% 40%/0 0 3px 3px;animation:none;transform-origin:left;transform:scaleX(0);transition:transform .7s cubic-bezier(.25,.1,.25,1) .5s}
.mr-slide.on .mr-mark{transform:scaleX(1)}
.mr-ornet mark{background:none;outline:0;padding:0 0 2px;border-radius:0;border-bottom:3px solid var(--brand-red)}
@media (prefers-reduced-motion:reduce){.mr-mark{transition:none;transform:none}}

/* ORNET marks removed */
.mr-mark,.mr-ornet{display:none!important}

/* About: service cards with photos (same as Home) */
.svc.svc-pic{padding-top:0;overflow:hidden}
.svc-pic .svc-photo{display:block;margin:0 -24px 20px;aspect-ratio:16/9;overflow:hidden;background:#eef0f5}
.svc-pic .svc-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.25,.1,.25,1)}
.svc-pic:hover .svc-photo img{transform:scale(1.05)}
@media (prefers-reduced-motion:reduce){.svc-pic .svc-photo img{transition:none}.svc-pic:hover .svc-photo img{transform:none}}
.svc-pic .svc-photo{margin:0 calc(-1 * var(--space-lg)) 4px}

/* hero slider: RB Chanakya slide */
.hs-slide .rbs{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;color:#fff;text-decoration:none;background:linear-gradient(90deg,rgba(20,18,20,.55) 0%,rgba(20,18,20,.88) 38%,rgba(40,38,40,.96) 100%)}
.hs-slide.on .rbs{pointer-events:auto}
.rbs-bar{flex:none;background:#e31b23;color:#fff;font-weight:800;font-size:clamp(14px,1.2vw,20px);letter-spacing:.01em;text-align:center;padding:8px 16px;line-height:1.2}
.rbs-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(16px,2vw,32px);align-items:center;padding:clamp(18px,2.4vw,40px) clamp(18px,2.4vw,40px) clamp(64px,6vw,84px)}
.rbs-txt{display:flex;flex-direction:column;gap:clamp(8px,1vw,14px);min-width:0}
.rbs-k{font-size:clamp(11px,.8vw,14px);font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.rbs-h{font-family:var(--font-display,inherit);font-weight:800;text-transform:uppercase;line-height:1.02;font-size:clamp(28px,3vw,54px);letter-spacing:-.5px}
.rbs-h em{display:block;font-style:normal;color:#e31b23}
.rbs-p{font-size:clamp(14px,1.05vw,18px);line-height:1.5;max-width:30ch;color:#f2f2f2}
.rbs-q{position:relative;display:flex;flex-direction:column;padding:2px 0 2px 34px;font-weight:700;font-size:clamp(14px,1.05vw,19px);line-height:1.5}
.rbs-q i{position:absolute;font-style:normal;color:#e31b23;font-size:2.4em;line-height:1;font-family:Georgia,serif}
.rbs-q i:first-child{left:0;top:-4px}.rbs-q i:last-child{position:static;align-self:flex-start;margin:-6px 0 0 6em;height:.5em}
.rbs-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:4px;padding:0 22px;border-radius:999px;background:#e31b23;color:#fff;font-weight:700;font-size:15px;transition:background .2s,transform .2s}
.rbs:hover .rbs-btn{background:#c3121a;transform:translateY(-1px)}
.rbs:focus-visible{outline:3px solid #fff;outline-offset:-6px}
.rbs-photo{min-width:0;align-self:stretch;display:flex;align-items:center}
.rbs-photo img{position:static!important;inset:auto!important;width:100%!important;height:auto!important;max-height:100%;aspect-ratio:16/9;object-fit:cover!important;border:6px solid #4a484a;box-shadow:0 10px 30px rgba(0,0,0,.35);animation:none!important}
.hs-slide img[src*="rb-speaker"]{filter:brightness(.75)}
@media (max-width:1100px){.rbs-body{grid-template-columns:1fr;align-items:start}.rbs-photo{display:none}}
@media (max-width:640px){.rbs-body{padding:18px 18px 68px}.rbs-q{display:none}.rbs-h{font-size:30px}}
.rbs-body{padding-bottom:clamp(112px,8vw,128px)}.rbs-txt{gap:clamp(6px,.8vw,12px)}
@media (max-width:1100px){.rbs-q{display:none}}
@media (max-width:640px){.rbs-body{padding-bottom:104px}}
.hs-slide .rbs{background:linear-gradient(90deg,rgba(20,18,20,.35) 0%,rgba(20,18,20,.72) 42%,rgba(40,38,40,.9) 100%)}
.hs-slide img[src*="rb-speaker"]{filter:brightness(.92)}
@media (max-width:1100px){.hs-slide .rbs{background:linear-gradient(90deg,rgba(20,18,20,.82) 0%,rgba(20,18,20,.45) 70%,rgba(20,18,20,.25) 100%)}}

/* RB slide v2 — match RB Chanakya hero */
.hs-slide img[src*="rb-hero-bg"]{filter:none}
.hs-slide .rbs{background:rgba(18,16,18,.42)}
.rbs-bar{font-family:'Roboto Condensed',var(--font-display,inherit);font-weight:700;font-size:clamp(16px,1.5vw,24px)}
.rbs-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}
.rbs-txt{grid-column:2;gap:clamp(8px,1.1vw,16px)}
.rbs-k{font-family:Inter,system-ui,sans-serif;font-size:clamp(11px,.85vw,14px);letter-spacing:.26em}
.rbs-h{font-family:'Roboto Condensed',var(--font-display,inherit);font-weight:700;font-size:clamp(34px,3.6vw,64px);line-height:1;letter-spacing:0}
.rbs-p{font-weight:400;color:#fff;font-size:clamp(15px,1.15vw,19px)}
.rbs-q{font-family:Inter,system-ui,sans-serif;font-weight:700}
.rbs-btn{font-size:14px;min-height:42px;padding:0 20px}
@media (max-width:1100px){.rbs-body{grid-template-columns:minmax(0,.35fr) minmax(0,1fr)}.hs-slide .rbs{background:linear-gradient(90deg,rgba(18,16,18,.25),rgba(18,16,18,.7))}}
@media (max-width:640px){.rbs-body{grid-template-columns:1fr}.rbs-txt{grid-column:1}.hs-slide .rbs{background:rgba(18,16,18,.6)}.rbs-h{font-size:32px}}
.hs-slide .rbs{background:linear-gradient(90deg,rgba(18,16,18,0) 0%,rgba(18,16,18,.15) 45%,rgba(18,16,18,.35) 100%)}
@media (max-width:1100px){.hs-slide .rbs{background:linear-gradient(90deg,rgba(18,16,18,.05),rgba(18,16,18,.4))}}
@media (max-width:640px){.hs-slide .rbs{background:rgba(18,16,18,.4)}}
.rbs-txt{text-shadow:0 2px 12px rgba(0,0,0,.45)}

/* SBM poster: keep Gandhi spectacles (top) fully visible, no zoom crop */
.hero-slides .hs-slide img[src*="swachh-bharat-sbm"]{animation:none}

/* Skill Development wide card: real photo framing (audience + trainer on right) */
.hs-wide-photo img[src*="skill-development"]{object-position:60% 62%}

/* Skill Development photo: tone down bright white ceiling + white fade */
.hs-wide-photo:has(img[src*="skill-development"])::before{display:block;width:22%;background:linear-gradient(90deg,#fff,rgba(255,255,255,0))}
.hs-wide-photo:has(img[src*="skill-development"])::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(15,20,40,.55) 0%,rgba(15,20,40,.28) 40%,rgba(15,20,40,.12) 100%)}
.hs-wide-photo img[src*="skill-development"]{filter:brightness(.82) contrast(1.08) saturate(1.05)}

.hs-photo img[src*="political-bandra"]{object-position:40% 35%}

.hs-photo img[src*="sbm-poster"]{object-position:50% 30%}


/* wide card: photo fills to the card's right edge */
@media (min-width:1069px){.hs-wide{align-items:stretch}.hs-wide-photo{flex:0 0 56%;max-width:none;margin:0 0 0 auto;align-self:stretch;aspect-ratio:auto;min-height:clamp(260px,19vw,440px)}.hs-wide-photo img{width:100%;height:100%;right:0}}

/* top 4 portfolio logos styled like the featured org cards */
.org-btn{width:100%;height:100%;font:inherit;cursor:zoom-in;transition:transform 250ms var(--ease),box-shadow 250ms var(--ease),border-color 250ms var(--ease)}
.org-btn:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
.org-grid figure{display:flex}

/* uniform logo size across all Portfolio cards */
.org-grid,.client-grid{align-items:stretch}
.org-grid figure,.client-grid figure{display:flex;margin:0}
.org-card,.client-card.sv-thumb{width:100%;aspect-ratio:auto;min-height:290px;padding:32px 20px 26px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:18px}
.org-card img,.client-card.sv-thumb img{flex:none;width:100%;height:160px;max-width:260px;object-fit:contain}
.org-card .nm,.client-nm{margin-top:auto;font-family:var(--font-display);font-size:19px;line-height:1.35;font-weight:600;color:var(--brand-indigo);text-align:center;text-wrap:balance}
@media (max-width:1068px){.org-card,.client-card.sv-thumb{min-height:260px}.org-card img,.client-card.sv-thumb img{height:140px}}
@media (max-width:640px){.org-card,.client-card.sv-thumb{min-height:210px;padding:20px 12px 18px;gap:12px}.org-card img,.client-card.sv-thumb img{height:110px}.org-card .nm,.client-nm{font-size:15px}}

/* mobile: forms never wider than the screen */
.form,.fld,.fld input,.fld select,.fld textarea{min-width:0}
.fld input,.fld select,.fld textarea{width:100%;max-width:100%;box-sizing:border-box}
.split>*,.about>*,.duo>*,.contact-grid>*,.form>*{min-width:0}
@media (max-width:640px){.form{grid-template-columns:1fr;gap:16px}.form .full{grid-column:auto}}
html,body{overflow-x:clip}
img,video,iframe{max-width:100%}

.org-grid.org-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1068px){.org-grid.org-grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.org-grid.org-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.org-grid.org-grid-5{grid-template-columns:1fr}}

/* Core values — 5 title cards */
.cv-grid.cv-grid-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.cv-grid-5 .cv-card{min-height:220px;padding:30px 26px 30px;gap:14px;justify-content:flex-start}
.cv-grid-5 .cv-card h3{font-size:clamp(19px,1.35vw,23px);line-height:1.3;text-wrap:balance;padding-right:8px}
@media (max-width:1200px){.cv-grid.cv-grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.cv-grid.cv-grid-5{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cv-grid-5 .cv-card{min-height:180px;padding:24px 20px}}
@media (max-width:480px){.cv-grid.cv-grid-5{grid-template-columns:1fr}.cv-grid-5 .cv-card{min-height:0}}

/* ===== Core Values v2 (connected timeline) ===== */
.cv2{position:relative;overflow:hidden;background:#f7f8fb;padding:72px 0 88px}
.cv2 .wrap{position:relative;display:flex;flex-direction:column;align-items:center}
.cv2-bar{display:block;width:56px;height:3px;background:var(--brand-red,#e30613);border-radius:2px;margin-bottom:22px}
.cv2-h{margin:0 0 48px;font-family:var(--font-display);font-size:clamp(36px,4vw,60px);line-height:1.05;letter-spacing:-1px;font-weight:700;color:var(--brand-indigo,#17276b);text-align:center}
.cv2-dots{position:absolute;width:120px;height:72px;background:radial-gradient(circle,#c9cedb 1.4px,transparent 1.6px) 0 0/18px 18px;opacity:.8;pointer-events:none}
.cv2-dots-a{left:3%;top:90px}.cv2-dots-b{right:3%;bottom:40px}
.cv2::before{content:"";position:absolute;left:-120px;top:-160px;width:380px;height:380px;border-radius:50%;background:#eef0f5;pointer-events:none}
.cv2::after{content:"";position:absolute;right:-140px;bottom:-200px;width:460px;height:460px;border-radius:50%;background:#eef0f5;pointer-events:none}
.cv2-track{position:relative;width:100%;z-index:1}
.cv2-wave{position:absolute;left:-4%;width:108%;top:118px;height:40px;z-index:0;pointer-events:none}
.cv2-wave path{fill:none;stroke:var(--brand-red,#e30613);stroke-width:1.6;opacity:.45;vector-effect:non-scaling-stroke}
.cv2-list{position:relative;z-index:1;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;align-items:center}
.cv2-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:22px;min-height:300px;padding:30px 20px 34px;background:#fff;border-radius:14px;box-shadow:0 18px 40px rgba(16,24,64,.07),0 2px 6px rgba(16,24,64,.04);text-align:center;cursor:default;outline:none;transition:transform .3s cubic-bezier(.25,.1,.25,1),background .3s,box-shadow .3s}
.cv2-card:not(:last-child)::after{content:"";position:absolute;right:-20px;top:136px;width:12px;height:12px;border-radius:50%;background:#fff;border:2.5px solid var(--brand-red,#e30613);box-sizing:border-box;z-index:2}
.cv2-num{position:absolute;left:24px;top:14px;font-family:var(--font-display);font-size:clamp(40px,3.4vw,58px);line-height:1;font-weight:800;letter-spacing:-1px;color:#dfe2ea;transition:color .3s}
.cv2-badge{position:relative;margin-top:44px;display:flex;align-items:center;justify-content:center;width:132px;height:132px;border-radius:50%;background:#fff;box-shadow:0 10px 24px rgba(16,24,64,.10),inset 0 0 0 6px #f3f4f8}
.cv2-badge::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:3px solid transparent;border-top-color:var(--brand-red,#e30613);border-right-color:var(--brand-red,#e30613);transform:rotate(-10deg);clip-path:polygon(50% 50%,50% -10%,110% -10%,110% 60%);transition:transform .6s cubic-bezier(.25,.1,.25,1)}
.cv2-svg{width:64px;height:64px}
.cv2-card h3{margin:0;font-family:var(--font-display);font-size:clamp(17px,1.3vw,21px);line-height:1.35;font-weight:700;color:var(--brand-indigo,#17276b);text-wrap:balance;transition:color .3s}
.cv2-card.on,.cv2-card:hover,.cv2-card:focus-visible{background:linear-gradient(160deg,#25357e,#121d57);box-shadow:0 26px 50px rgba(18,29,87,.28);transform:translateY(-10px)}
.cv2-card.on{min-height:330px}
.cv2-list:hover .cv2-card.on:not(:hover){background:#fff;box-shadow:0 18px 40px rgba(16,24,64,.07),0 2px 6px rgba(16,24,64,.04);transform:none}
.cv2-list:hover .cv2-card.on:not(:hover) h3{color:var(--brand-indigo,#17276b)}.cv2-list:hover .cv2-card.on:not(:hover) .cv2-num{color:#dfe2ea}
.cv2-card.on h3,.cv2-card:hover h3,.cv2-card:focus-visible h3{color:#fff}
.cv2-card.on .cv2-num,.cv2-card:hover .cv2-num,.cv2-card:focus-visible .cv2-num{color:rgba(255,255,255,.28)}
.cv2-card:hover .cv2-badge::before,.cv2-card:focus-visible .cv2-badge::before{transform:rotate(80deg)}
.cv2-card:focus-visible{outline:3px solid var(--brand-red,#e30613);outline-offset:4px}
@media (max-width:1200px){.cv2-list{gap:18px}.cv2-card:not(:last-child)::after{right:-15px}.cv2-badge{width:112px;height:112px}.cv2-svg{width:54px;height:54px}.cv2-wave{top:108px}.cv2-card:not(:last-child)::after{top:126px}}
@media (max-width:980px){.cv2-wave,.cv2-card::after{display:none}.cv2-list{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.cv2-card{grid-column:span 2;min-height:260px}.cv2-card:nth-child(4){grid-column:2/span 2}.cv2-card:nth-child(5){grid-column:4/span 2}.cv2-card.on{min-height:260px}}
@media (max-width:640px){.cv2{padding:52px 0 60px}.cv2-h{margin-bottom:30px}.cv2-list{grid-template-columns:1fr;gap:14px}.cv2-card,.cv2-card:nth-child(4),.cv2-card:nth-child(5){grid-column:auto;flex-direction:row;align-items:center;gap:18px;min-height:0;padding:18px 18px;text-align:left}.cv2-card.on{min-height:0}.cv2-num{position:static;font-size:30px;order:-1;min-width:44px}.cv2-badge{margin:0;flex:none;width:72px;height:72px}.cv2-badge::before{inset:-5px;border-width:2px}.cv2-svg{width:38px;height:38px}.cv2-card h3{font-size:17px;text-align:left}.cv2-card.on,.cv2-card:hover{transform:none}.cv2-dots{display:none}}
@media (prefers-reduced-motion:reduce){.cv2-card,.cv2-badge::before{transition:none}.cv2-card:hover,.cv2-card.on{transform:none}}

/* standalone Vision / Mission pages */
.vm-solo{display:grid;grid-template-columns:1fr}
.vm-solo .vm-panel{min-height:480px}
.vm-solo .vm-in,.vm-solo .vm-vision .vm-in{max-width:1000px;padding-left:max(40px,calc((100vw - 1280px)/2 + 40px));padding-right:40px}
.vm-solo .vm-stmt{font-size:clamp(24px,2.4vw,38px);max-width:900px}
.vm-solo .vm-bg{width:50%}
.vm-solo .vm-photo img{height:clamp(220px,26vw,420px)}
@media (max-width:640px){.vm-solo .vm-in,.vm-solo .vm-vision .vm-in{padding:40px 20px}.vm-solo .vm-panel{min-height:0}}

/* ===== Core Values v3 (split panel) ===== */
.cv3{display:grid;grid-template-columns:minmax(300px,27%) minmax(0,1fr);background:#fbfbfc;padding:0;position:relative;overflow:hidden}
.cv3::after{content:"";position:absolute;right:-18%;top:-30%;width:60%;height:160%;border-radius:50%;border:1.5px solid rgba(227,6,19,.25);pointer-events:none}
.cv3-side{position:relative;background:radial-gradient(120% 80% at 20% 0%,#1c2c6b 0%,#0e1a45 55%,#0a1333 100%);color:#fff;overflow:hidden}
.cv3-side::before{content:"";position:absolute;left:-30%;bottom:-10%;width:140%;height:60%;border-radius:50%;border-top:2px solid rgba(227,6,19,.7);transform:rotate(-14deg);pointer-events:none}
.cv3-side::after{content:"";position:absolute;left:-40%;top:30%;width:160%;height:50%;border-radius:50%;border-top:1px solid rgba(120,150,255,.25);transform:rotate(-8deg);pointer-events:none}
.cv3-side-in{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:center;gap:28px;padding:72px 48px 72px max(40px,calc((100vw - 1280px)/2 + 40px))}
.cv3-h{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,5.6vw,96px);line-height:.98;font-weight:700;letter-spacing:-1.5px;color:#fff}
.cv3-bar{display:block;width:84px;height:4px;background:var(--brand-red,#e30613);border-radius:2px}
.cv3-ring{position:relative;width:min(240px,80%);aspect-ratio:1;margin-top:16px}
.cv3-ring::before{content:"";position:absolute;inset:12%;border-radius:50%;border:2px solid rgba(255,255,255,.55)}
.cv3-ring i{position:absolute;width:24%;aspect-ratio:1;margin:-12% 0 0 -12%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff6b6b 0%,#e30613 45%,#8f0009 100%);box-shadow:0 0 0 4px #e9ecf2,0 0 0 6px #9aa3b8,0 8px 18px rgba(0,0,0,.45);animation:cv3Glow 3.2s ease-in-out infinite}
@keyframes cv3Glow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.25)}}
.cv3-main{position:relative;z-index:1;padding:28px max(40px,calc((100vw - 1280px)/2 + 40px)) 28px 56px}
.cv3-list{list-style:none;margin:0;padding:0}
.cv3-item{display:grid;grid-template-columns:120px 76px minmax(0,1fr);align-items:center;gap:0;padding:26px 0;border-bottom:1px solid #dfe2e8}
.cv3-item:last-child{border-bottom:0}
.cv3-ic{display:flex;align-items:center;justify-content:center;width:110px;height:110px;border-radius:50%;background:#f7f7f8;box-shadow:0 10px 22px rgba(16,24,64,.12),inset 0 0 0 1px #eceef2;transition:transform .3s cubic-bezier(.25,.1,.25,1),box-shadow .3s}
.cv3-item:hover .cv3-ic{transform:translateY(-3px);box-shadow:0 16px 30px rgba(227,6,19,.16),inset 0 0 0 1px #f3d4d6}
.cv3-num{align-self:start;margin-top:14px;padding:0 22px 0 18px;border-left:1.5px solid #d4d8e0;border-right:1.5px solid #d4d8e0;font-family:Georgia,"Times New Roman",serif;font-size:36px;line-height:1.3;color:#8a8f9c;text-align:center}
.cv3-txt{padding-left:28px;display:flex;flex-direction:column;gap:6px}
.cv3-txt h3{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(26px,2.2vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.4px;color:#0f1630}
.cv3-sub{margin:0;font-size:clamp(17px,1.25vw,20px);color:var(--brand-red,#e30613);font-weight:500}
.cv3-txt p:not(.cv3-sub){margin:4px 0 0;font-size:clamp(17px,1.2vw,20px);line-height:1.5;color:#2c3142;max-width:760px;text-wrap:pretty}
@media (max-width:1100px){.cv3{grid-template-columns:1fr}.cv3-side-in{flex-direction:row;flex-wrap:wrap;align-items:center;padding:48px 40px;gap:24px 40px}.cv3-bar{order:3;flex-basis:100%}.cv3-ring{width:150px;margin:0 0 0 auto}.cv3-main{padding:16px 40px 32px}.cv3::after{display:none}}
@media (max-width:640px){.cv3-side-in{padding:40px 20px;flex-direction:column;align-items:flex-start}.cv3-ring{width:130px;margin:0}.cv3-main{padding:8px 20px 24px}.cv3-item{grid-template-columns:72px minmax(0,1fr);gap:0 16px;padding:22px 0;align-items:start}.cv3-ic{width:68px;height:68px}.cv3-ic svg{width:36px;height:36px}.cv3-num{grid-column:2;grid-row:1;border:0;padding:0;margin:0;font-size:22px;text-align:left}.cv3-txt{grid-column:2;padding-left:0}.cv3-ic{grid-row:1/span 2}}
@media (prefers-reduced-motion:reduce){.cv3-ring i{animation:none}.cv3-ic{transition:none}.cv3-item:hover .cv3-ic{transform:none}}
@media (max-width:1100px){.cv3-bar{order:0;flex-basis:auto;width:84px}.cv3-side-in{flex-direction:column;align-items:flex-start;gap:20px}.cv3-ring{position:absolute;right:40px;top:50%;transform:translateY(-50%);margin:0}}
@media (max-width:640px){.cv3-ring{position:relative;right:auto;top:auto;transform:none}}
@media (max-width:1100px){.cv3-side-in{min-height:240px}.cv3-ring{top:0!important;bottom:0;height:150px;margin:auto 0!important;transform:none!important}}
@media (max-width:640px){.cv3-side-in{min-height:0}.cv3-ring{height:auto;margin:0!important}}

/* Core Values v3 — wide-screen fix */
.cv3::after{right:-22%;top:-55%;width:40%;height:110%;border-color:rgba(227,6,19,.35)}
.cv3-num{font-variant-numeric:lining-nums}
@media (min-width:1101px){
.cv3{grid-template-columns:minmax(340px,27%) minmax(0,1fr);min-height:720px}
.cv3-side-in{padding:72px clamp(36px,4vw,88px);justify-content:center;gap:30px}
.cv3-h{font-size:clamp(64px,5.4vw,128px);line-height:.95}
.cv3-bar{width:clamp(84px,6vw,130px)}
.cv3-ring{width:clamp(200px,15vw,320px);margin-top:28px}
.cv3-main{display:flex;align-items:center;padding:32px clamp(40px,6vw,160px) 32px clamp(40px,4vw,96px)}
.cv3-list{width:100%;max-width:1280px}
.cv3-item{grid-template-columns:clamp(120px,8vw,160px) clamp(76px,5vw,104px) minmax(0,1fr)}
.cv3-ic{width:clamp(110px,7.4vw,150px);height:clamp(110px,7.4vw,150px)}
.cv3-ic svg{width:48%;height:48%}
.cv3-num{font-size:clamp(34px,2.4vw,48px);margin-top:6px}
.cv3-txt h3{font-size:clamp(28px,2.2vw,46px)}
.cv3-txt p:not(.cv3-sub){font-size:clamp(17px,1.15vw,22px);max-width:900px}
.cv3-sub{font-size:clamp(17px,1.2vw,23px)}
}

/* Core Values: cap overall width on large screens */
.cv3{max-width:1440px;margin-left:auto;margin-right:auto;grid-template-columns:minmax(300px,30%) minmax(0,1fr);min-height:0}
.cv3-main{padding:32px 48px 32px 56px}
.cv3-list{max-width:900px}
.cv3-item{grid-template-columns:120px 76px minmax(0,1fr)}
@media (min-width:1440px){.cv3{border-left:1px solid #e6e8ee;border-right:1px solid #e6e8ee}}
@media (max-width:1100px){.cv3{grid-template-columns:1fr}.cv3-main{padding:16px 40px 32px}}
@media (max-width:640px){.cv3-main{padding:8px 20px 24px}.cv3-item{grid-template-columns:72px minmax(0,1fr)}}

/* Core Values: same full-width 50/50 split as Mission / Vision */
.cv3{max-width:none;margin:0;border:0;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1440px){.cv3{border:0}}
.cv3-side-in{padding-left:56px;padding-right:56px}
.cv3-main{padding:32px 56px}
.cv3-list{max-width:none}
.cv3-item{grid-template-columns:104px 72px minmax(0,1fr)}
@media (min-width:1400px){.cv3-side-in{padding-left:64px;padding-right:64px}.cv3-main{padding:32px 64px}}
@media (min-width:1900px){.cv3-side-in{padding-left:96px;padding-right:96px}.cv3-main{padding:32px 96px}}
@media (max-width:1100px){.cv3{grid-template-columns:1fr}.cv3-side-in{padding:48px 40px}.cv3-main{padding:16px 40px 32px}}
@media (max-width:640px){.cv3-side-in{padding:40px 20px}.cv3-main{padding:8px 20px 24px}.cv3-item{grid-template-columns:72px minmax(0,1fr)}}

/* Core Values: remove decorative red arc over the list */
.cv3::after{display:none!important}

/* Home strip: two items after Core Values removal */
.vmv .wrap{grid-template-columns:repeat(2,minmax(0,300px))}
@media (max-width:833px){.vmv .wrap{grid-template-columns:1fr}}

/* Core Values supplied image */
.vm-cvimg{background:#fff;line-height:0}
.vm-cvimg img{display:block;width:100%;height:auto;max-width:none}
.vmv .wrap{grid-template-columns:repeat(3,minmax(0,300px))}@media (max-width:833px){.vmv .wrap{grid-template-columns:1fr}}

/* ===== Mission/Vision compact + Core Values v4 (matches mockup, mission typeface) ===== */
.vm-duo .vm-panel{min-height:clamp(380px,27vw,560px)}
.vm-duo .vm-in{padding-top:clamp(36px,3vw,56px);padding-bottom:clamp(32px,2.6vw,48px)}
.vm-duo .vm-ic{margin-bottom:18px}
.vm-duo .vm-stmt{font-size:clamp(19px,1.45vw,26px);max-width:560px}
.vm-duo .vm-photo img{height:clamp(170px,12vw,240px)}
.cv4{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(260px,20%) minmax(0,1fr);background:#fff;font-family:var(--font-display)}
.cv4-side{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:48px clamp(28px,3vw,64px);background:radial-gradient(120% 90% at 10% 0%,#22337e 0%,#121f5a 50%,#0a1336 100%);color:#fff}
.cv4-side::before{content:"";position:absolute;left:-40%;bottom:-18%;width:170%;height:46%;border-radius:50%;border-top:2px solid rgba(227,6,19,.75);transform:rotate(-12deg);pointer-events:none}
.cv4-side::after{content:"";position:absolute;left:-30%;top:-10%;width:160%;height:60%;border-radius:50%;border-bottom:1px solid rgba(120,150,255,.28);transform:rotate(-10deg);pointer-events:none}
.cv4-h{position:relative;margin:0;font-family:var(--font-display);font-size:clamp(44px,3.6vw,72px);line-height:1;letter-spacing:-1px;font-weight:700;color:#fff}
.cv4-bar{position:relative;display:block;width:64px;height:3px;background:var(--brand-red,#e30613);margin:22px 0 32px}
.cv4-ring{position:relative;width:min(200px,80%);aspect-ratio:1;border-radius:50%}
.cv4-ring::before{content:"";position:absolute;inset:14%;border-radius:50%;border:1.5px solid rgba(255,255,255,.55)}
.cv4-ring i{position:absolute;width:24%;aspect-ratio:1;margin:-12% 0 0 -12%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff6a6a 0%,#e30613 45%,#8f0009 100%);box-shadow:0 0 0 3px rgba(255,255,255,.85),0 6px 16px rgba(0,0,0,.4);animation:cv4Glow 3s ease-in-out infinite}
@keyframes cv4Glow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.25)}}
.cv4-main{position:relative;display:flex;align-items:center;padding:12px clamp(40px,6vw,120px) 12px clamp(32px,3.5vw,72px)}
.cv4-main::before{content:"";position:absolute;right:-60px;top:-90px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle at 30% 70%,transparent 58%,rgba(227,6,19,.85) 60%,rgba(227,6,19,.0) 75%);pointer-events:none}
.cv4-main::after{content:"";position:absolute;right:-80px;bottom:-110px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle at 30% 30%,transparent 58%,rgba(227,6,19,.85) 60%,rgba(227,6,19,0) 75%);pointer-events:none}
.cv4-list{position:relative;z-index:1;list-style:none;margin:0;padding:0;width:100%}
.cv4-item{display:grid;grid-template-columns:clamp(80px,5.6vw,108px) clamp(64px,4.4vw,88px) minmax(0,1fr);align-items:center;padding:clamp(14px,1.2vw,22px) 0;border-bottom:1px solid #e3e6ec}
.cv4-item:last-child{border-bottom:0}
.cv4-ic{display:flex;align-items:center;justify-content:center;width:clamp(68px,4.8vw,92px);aspect-ratio:1;border-radius:50%;background:#fff;color:var(--brand-red,#e30613);box-shadow:0 8px 20px rgba(16,24,64,.10),inset 0 0 0 1px #eef0f4;transition:transform .25s ease,box-shadow .25s ease}
.cv4-ic svg{width:46%;height:46%}
.cv4-item:hover .cv4-ic{transform:translateY(-3px);box-shadow:0 14px 28px rgba(16,24,64,.16),inset 0 0 0 1px #eef0f4}
.cv4-num{align-self:stretch;display:flex;align-items:center;justify-content:center;border-left:1px solid #dfe2e8;border-right:1px solid #dfe2e8;margin:6px 0;font-family:var(--font-display);font-size:clamp(24px,1.9vw,36px);font-weight:300;color:#9aa0ad;font-variant-numeric:lining-nums}
.cv4-txt{padding-left:clamp(18px,1.8vw,32px)}
.cv4-txt h3{margin:0;font-family:var(--font-display);font-size:clamp(20px,1.6vw,30px);line-height:1.2;font-weight:700;letter-spacing:-.3px;color:var(--brand-indigo,#17276b)}
.cv4-sub{margin:4px 0 0!important;font-size:clamp(15px,1.05vw,18px)!important;font-weight:600;color:var(--brand-red,#e30613)!important}
.cv4-txt p{margin:6px 0 0;font-family:var(--font-display);font-size:clamp(15px,1.05vw,18px);line-height:1.5;font-weight:400;color:#3d4250;text-wrap:pretty}
@media (max-width:1100px){.cv4{grid-template-columns:1fr}.cv4-side{flex-direction:row;flex-wrap:wrap;align-items:center;gap:20px 40px;padding:40px}.cv4-bar{order:3;flex-basis:100%;margin:0}.cv4-ring{width:140px;margin-left:auto}.cv4-main{padding:8px 40px 24px}.cv4-main::before,.cv4-main::after{display:none}}
@media (max-width:640px){.vm-duo .vm-panel{min-height:0}.cv4-side{padding:32px 20px;flex-direction:column;align-items:flex-start}.cv4-ring{width:120px;margin:0}.cv4-main{padding:4px 20px 16px}.cv4-item{grid-template-columns:64px minmax(0,1fr);align-items:start;gap:0 14px;padding:18px 0}.cv4-ic{width:60px;grid-row:1/span 2}.cv4-num{grid-column:2;border:0;margin:0;justify-content:flex-start;font-size:20px}.cv4-txt{grid-column:2;padding-left:0}}
@media (prefers-reduced-motion:reduce){.cv4-ring i{animation:none}.cv4-ic{transition:none}}

@media (max-width:1100px){.cv4-bar{flex-basis:auto;width:64px;margin:0 calc(100% - 64px) 0 0}}
@media (max-width:640px){.cv4-bar{margin:0}}

/* About: team grid */
.tm-sec{background:#faf8f3}
.tm-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:40px 28px}
.tm-card figure{margin:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}
.tm-photo{display:block;width:100%;max-width:180px;aspect-ratio:4/5;overflow:hidden;background:#fff;clip-path:polygon(0 0,100% 0,100% 82%,82% 100%,0 100%);transition:transform .25s ease}
.tm-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.tm-card:hover .tm-photo{transform:translateY(-4px)}
.tm-card figcaption{display:flex;flex-direction:column;gap:4px}
.tm-name{font-family:var(--font-display);font-size:17px;line-height:1.25;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand-indigo,#17276b)}
.tm-role{font-size:15px;line-height:1.4;color:#5a5f6c}
@media (min-width:1400px){.tm-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}
@media (max-width:640px){.tm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.tm-name{font-size:15px}.tm-role{font-size:14px}}
@media (prefers-reduced-motion:reduce){.tm-photo{transition:none}.tm-card:hover .tm-photo{transform:none}}

/* About: team collage */
.tm-sec{background:#f4f4f4}
.tc{display:flex;gap:14px;align-items:flex-start;justify-content:center;margin-top:8px}
.tc-col{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:14px}
.tc-center{flex:1.75 1 0}
.tc-col:nth-child(1){margin-top:13%}.tc-col:nth-child(2){margin-top:5%}.tc-col:nth-child(3){margin-top:1%}.tc-col:nth-child(4){margin-top:2.5%}.tc-col:nth-child(5){margin-top:0}.tc-col:nth-child(6){margin-top:6%}.tc-col:nth-child(7){margin-top:15%}
.tc-pair{display:flex;gap:14px}.tc-pair .tc-tile{flex:1 1 0;min-width:0}
.tc-tile{position:relative;margin:0;overflow:hidden;background:#e4e4e4;box-shadow:0 2px 10px rgba(16,24,64,.08)}
.tc-tile img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 12%;transform:scale(1.1);transform-origin:50% 0;transition:transform .5s cubic-bezier(.25,.1,.25,1)}
.tc-tile:hover img{transform:scale(1.16)}
.tc-tile figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:2px;padding:34px 10px 10px;background:linear-gradient(rgba(14,24,72,0),rgba(14,24,72,.88));color:#fff}
.tc-name{font-family:var(--font-display);font-size:13px;line-height:1.2;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.tc-role{font-size:12px;line-height:1.3;color:#e3e7f5}
.tc-big .tc-name{font-size:18px}.tc-big .tc-role{font-size:15px}.tc-big figcaption{padding:56px 16px 16px}
@media (min-width:1400px){.tc-name{font-size:14px}.tc-role{font-size:13px}}
@media (max-width:900px){.tc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tc-col,.tc-pair{display:contents}.tc-col{margin-top:0!important}.tc-tile{aspect-ratio:4/5!important}.tc-big{grid-column:span 2;grid-row:span 2}.tc-big .tc-name{font-size:16px}}
@media (max-width:560px){.tc{grid-template-columns:repeat(2,minmax(0,1fr))}.tc-big{grid-column:span 2;grid-row:auto;aspect-ratio:4/5!important}}
@media (prefers-reduced-motion:reduce){.tc-tile img{transition:none}.tc-tile:hover img{transform:scale(1.1)}}

/* team collage v2: caption below photo, collage only on wide screens */
.tc-tile{overflow:visible;background:none;box-shadow:none;display:flex;flex-direction:column}
.tc-ph{display:block;overflow:hidden;background:#e4e4e4;box-shadow:0 2px 10px rgba(16,24,64,.08)}
.tc-tile figcaption,.tc-big figcaption{position:static;padding:8px 2px 0;background:none;color:inherit;gap:2px;text-align:left}
.tc-name{color:var(--brand-indigo,#17276b);font-size:13px}
.tc-role{color:#5a5f6c;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tc-big .tc-name{font-size:17px}.tc-big .tc-role{font-size:14px}
.tc-center .tc-tile:not(.tc-big) .tc-ph{aspect-ratio:16/11!important}
.tc-center .tc-tile:not(.tc-big) .tc-ph img{object-position:50% 18%}
@media (min-width:1400px){.tc-name{font-size:14px}.tc-role{font-size:13px}}
@media (max-width:1180px){.tc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 14px}.tc-col{display:contents}.tc-col{margin-top:0!important}.tc-ph{aspect-ratio:4/5!important}.tc-big{grid-column:span 2;grid-row:span 2}.tc-role{white-space:normal}}
@media (max-width:900px){.tc{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.tc{grid-template-columns:repeat(2,minmax(0,1fr))}.tc-big{grid-row:auto}}

/* team collage v3: equal size, uncropped photos */
.tc-ph,.tc-center .tc-tile:not(.tc-big) .tc-ph{aspect-ratio:auto!important;background:#fff}
.tc-tile img,.tc-center .tc-tile:not(.tc-big) .tc-ph img{width:100%;height:auto;object-fit:contain;transform:none!important}
.tc-tile:hover .tc-ph{transform:translateY(-4px)}
.tc-ph{transition:transform .3s ease}
.tc-center{flex:1 1 0}
.tc-big .tc-name{font-size:13px}.tc-big .tc-role{font-size:12.5px}
.tc-role{white-space:normal}
@media (min-width:1400px){.tc-big .tc-name{font-size:14px}.tc-big .tc-role{font-size:13px}}
@media (max-width:1180px){.tc-big{grid-column:auto;grid-row:auto}}
@media (prefers-reduced-motion:reduce){.tc-ph{transition:none}.tc-tile:hover .tc-ph{transform:none}}

/* team collage v4: smaller photos */
.tc{max-width:1040px;margin-left:auto;margin-right:auto;gap:12px}
.tc-col{gap:16px}
.tc-name{font-size:12px}.tc-role{font-size:11.5px}
.tc-big .tc-name{font-size:12px}.tc-big .tc-role{font-size:11.5px}
@media (min-width:1400px){.tc{max-width:1120px}.tc-name,.tc-big .tc-name{font-size:13px}.tc-role,.tc-big .tc-role{font-size:12px}}
@media (max-width:1180px){.tc{max-width:820px;grid-template-columns:repeat(5,minmax(0,1fr))}}
@media (max-width:900px){.tc{max-width:600px;grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:560px){.tc{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 10px}.tc-name{font-size:11px}.tc-role{font-size:10.5px}}

/* About: team mosaic (reference silhouette) */
.mz{position:relative;width:100%;max-width:1180px;margin:8px auto 0;aspect-ratio:var(--ar)}
.mz-tile,.mz-acc{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);margin:0}
.mz-tile{overflow:hidden;background:#e4e4e4;cursor:default;outline:none}
.mz-tile img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 18%;transition:transform .5s cubic-bezier(.25,.1,.25,1)}
.mz-tile:hover img,.mz-tile:focus-visible img{transform:scale(1.06)}
.mz-tile:focus-visible{outline:2px solid var(--brand-red);outline-offset:2px}
.mz-tile figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;padding:4px 7px;background:rgba(14,24,72,.82);color:#fff}
.mz-name{font-family:var(--font-display);font-size:11px;line-height:1.25;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mz-role{font-size:11px;line-height:1.3;color:#dfe4f4;max-height:0;overflow:hidden;opacity:0;transition:max-height .25s ease,opacity .25s ease}
.mz-tile:hover .mz-role,.mz-tile:focus-visible .mz-role{max-height:3em;opacity:1}
.mz-acc-r{background:var(--brand-red)}.mz-acc-i{background:var(--brand-indigo,#17276b)}
@media (min-width:1400px){.mz-name{font-size:12px}.mz-role{font-size:12px}}
@media (max-width:900px){.mz{aspect-ratio:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 12px;max-width:640px}.mz-acc{display:none}.mz-tile{position:static;width:auto;height:auto;overflow:visible;background:none}.mz-tile img{height:auto;aspect-ratio:240/226;object-fit:cover}.mz-tile figcaption{position:static;background:none;color:inherit;padding:6px 0 0}.mz-name{color:var(--brand-indigo,#17276b);white-space:normal}.mz-role{max-height:none;opacity:1;color:#5a5f6c}}
@media (max-width:560px){.mz{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 10px}.mz-name,.mz-role{font-size:10.5px}}
@media (prefers-reduced-motion:reduce){.mz-tile img,.mz-role{transition:none}.mz-tile:hover img{transform:none}}

/* team: cloud of uncropped photos */
.mzr{display:flex;flex-direction:column;align-items:center;gap:22px;margin-top:8px}
.mzr-row{width:100%;display:flex;justify-content:center;align-items:center;gap:16px}
.mzr-tile{flex:0 0 calc(var(--s) * 1%);margin:0;display:flex;flex-direction:column;gap:8px}
.mzr-ph{display:block;background:#fff;box-shadow:0 2px 10px rgba(16,24,64,.08);transition:transform .3s ease}
.mzr-ph img{display:block;width:100%;height:auto}
.mzr-tile:hover .mzr-ph{transform:translateY(-4px)}
.mzr-tile figcaption{display:flex;flex-direction:column;gap:2px;text-align:center}
.mzr-name{font-family:var(--font-display);font-size:13px;line-height:1.25;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand-indigo,#17276b)}
.mzr-role{font-size:12.5px;line-height:1.35;color:#5a5f6c}
@media (min-width:1400px){.mzr-name{font-size:14px}.mzr-role{font-size:13px}}
@media (max-width:1100px){.mzr-name{font-size:11.5px}.mzr-role{font-size:11px}}
@media (max-width:820px){.mzr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 12px}.mzr-row{display:contents}.mzr-tile{flex:none}.mzr-name{font-size:12px}.mzr-role{font-size:11.5px}}
@media (max-width:480px){.mzr{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.mzr-ph{transition:none}.mzr-tile:hover .mzr-ph{transform:none}}

/* team: all photos same size */
.mzr-tile{flex:0 0 12%}
@media (max-width:1100px){.mzr-tile{flex-basis:15%}}

/* team: 3-band mosaic, uncropped */
.mzr{gap:26px}.mzr-row{gap:14px}
.mzr-tile{flex:0 0 calc(var(--s) * 1%)}
.mzr-end{align-items:flex-end}.mzr-center{align-items:center}.mzr-start{align-items:flex-start}
.mzr-end .mzr-tile{flex-direction:column}
@media (max-width:1100px){.mzr-tile{flex-basis:calc(var(--s) * 1%)}.mzr-name{font-size:11px}.mzr-role{font-size:10.5px}}
@media (max-width:820px){.mzr-tile{flex:none}}


/* team: 8 per band */
.mzr-row{gap:12px}
@media (max-width:1100px){.mzr-name{font-size:10.5px}.mzr-role{font-size:10px}}

/* ===== Media: photo-collage layout ===== */
.md-collage-wrap{position:relative;padding:48px 32px;border-radius:14px;background:
radial-gradient(120% 80% at 15% 10%,rgba(255,255,255,.95),rgba(255,255,255,0) 60%),
radial-gradient(90% 70% at 85% 90%,rgba(230,232,238,.7),rgba(230,232,238,0) 60%),
linear-gradient(160deg,#fbfbfc,#eef0f4);box-shadow:inset 0 0 0 1px var(--brand-silver-300)}
.md-grid.md-collage{columns:auto;display:grid;grid-template-columns:repeat(var(--cols,12),minmax(0,1fr));grid-auto-rows:8px;grid-auto-flow:dense;gap:8px;max-width:1180px;margin:0 auto}
.md-collage .md-item{margin:0;break-inside:auto;min-width:0}
.md-collage .md-thumb.sv-thumb{height:100%;padding:0;border:0;border-radius:2px;background:#fff;box-shadow:0 1px 2px rgba(16,24,64,.10),0 4px 12px rgba(16,24,64,.08);outline:4px solid #fff;outline-offset:-4px}
.md-collage .md-thumb.sv-thumb img{width:100%;height:100%;object-fit:cover;object-position:top center;border-radius:2px}
.md-collage .md-thumb.sv-thumb:hover{transform:translateY(-3px) scale(1.015);z-index:2;box-shadow:0 14px 30px rgba(16,24,64,.18)}
.md-collage .md-thumb:focus-visible{outline:3px solid var(--brand-red);outline-offset:2px;z-index:2}
@media (max-width:640px){.md-collage-wrap{padding:16px 10px}.md-grid.md-collage{gap:5px}}
.md-collage .md-thumb.sv-thumb img{object-fit:contain;object-position:center}

/* About: team photo collage (reference pattern) */
.tc-collage{position:relative;width:100%;max-width:1320px;margin:0 auto;aspect-ratio:1422/783}
.tc-tile{position:absolute;margin:0;padding:3px;background:#fff;box-shadow:0 1px 2px rgba(16,24,64,.10),0 6px 16px rgba(16,24,64,.08);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;outline:0}
.tc-ph{display:block;width:100%;height:100%;overflow:hidden;background:#e7e8ec}
.tc-ph img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .4s ease}
.tc-cap{position:absolute;left:3px;right:3px;bottom:3px;display:flex;flex-direction:column;gap:2px;padding:28px 10px 8px;background:linear-gradient(transparent,rgba(10,16,48,.88));color:#fff;pointer-events:none}
.tc-name{font-size:clamp(11px,1vw,14px);font-weight:700;line-height:1.2}
.tc-role{font-size:clamp(10px,.85vw,12.5px);line-height:1.25;opacity:.92}
.tc-tile:hover,.tc-tile:focus-visible{transform:translateY(-3px) scale(1.04);z-index:3;box-shadow:0 16px 34px rgba(16,24,64,.25)}
.tc-tile:hover .tc-ph img,.tc-tile:focus-visible .tc-ph img{transform:scale(1.04)}
.tc-tile:focus-visible{outline:3px solid var(--brand-red);outline-offset:2px}
@media (max-width:1100px){.tc-collage{aspect-ratio:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tc-tile{position:relative;left:auto!important;top:auto!important;width:auto!important;height:auto!important;aspect-ratio:4/5}.tc-name{font-size:13px}.tc-role{font-size:11.5px}}
@media (max-width:520px){.tc-collage{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.tc-tile,.tc-ph img{transition:none}.tc-tile:hover,.tc-tile:focus-visible{transform:none}}

.tc-collage .tc-tile{display:block}
.tc-collage .tc-ph{position:absolute;inset:3px;width:auto;height:auto;aspect-ratio:auto}
.tc-collage .tc-cap{position:absolute;left:3px;right:3px;bottom:3px;top:auto;margin:0;padding:26px 9px 7px;background:linear-gradient(transparent,rgba(10,16,48,.9));text-align:left;align-items:flex-start}
.tc-collage .tc-name{color:#fff;text-transform:none;letter-spacing:0;font-family:inherit}
.tc-collage .tc-role{color:#fff}
@media (max-width:1100px){.tc-collage .tc-ph{inset:3px}}

.tc-collage .tc-cap{display:flex;flex-direction:column;gap:1px;padding:22px 8px 6px;background:linear-gradient(transparent,rgba(10,16,48,.82) 55%)}
.tc-collage .tc-name,.tc-collage .tc-role{position:static;display:block;transform:none;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tc-collage .tc-name{font-size:clamp(11px,.95vw,14px);font-weight:700}
.tc-collage .tc-role{max-height:0;opacity:0;font-size:clamp(10px,.8vw,12px);transition:max-height .25s ease,opacity .25s ease}
.tc-collage .tc-tile:hover .tc-role,.tc-collage .tc-tile:focus-visible .tc-role{max-height:2.6em;opacity:.95;white-space:normal}
@media (hover:none),(max-width:1100px){.tc-collage .tc-role{max-height:2.6em;opacity:.95;white-space:normal}}
.tc-collage .tc-name{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.15}.tc-collage .tc-ph img{object-position:center 30%}

/* team collage: small captions, role always visible */
.tc-collage .tc-cap{padding:12px 7px 5px;background:linear-gradient(transparent,rgba(10,16,48,.85) 45%)}
.tc-collage .tc-name{font-size:clamp(10px,.82vw,13px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tc-collage .tc-role{max-height:none;opacity:.92;font-size:clamp(9px,.7vw,11.5px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tc-collage .tc-tile:hover .tc-name,.tc-collage .tc-tile:focus-visible .tc-name,.tc-collage .tc-tile:hover .tc-role,.tc-collage .tc-tile:focus-visible .tc-role{white-space:normal}
@media (max-width:1100px){.tc-collage .tc-cap{padding:20px 9px 7px}.tc-collage .tc-name{font-size:13px;white-space:normal}.tc-collage .tc-role{font-size:11.5px;white-space:normal}}

/* team collage: no dark overlay — white name strip under photo */
.tc-collage .tc-tile{display:flex;flex-direction:column}
.tc-collage .tc-ph{position:relative;inset:auto;flex:1 1 auto;min-height:0;width:100%}
.tc-collage .tc-cap{position:static;flex:none;background:#fff;padding:5px 6px 3px;gap:0}
.tc-collage .tc-name{color:var(--brand-indigo,#17276b)}
.tc-collage .tc-role{color:#5a5f6c;opacity:1}
@media (max-width:1100px){.tc-collage .tc-tile{aspect-ratio:auto}.tc-collage .tc-ph{flex:none;aspect-ratio:4/5}.tc-collage .tc-cap{padding:8px 8px 6px}}
.tc-collage .tc-name,.tc-collage .tc-role{white-space:normal!important;overflow:visible;text-overflow:clip;max-height:none;height:auto;display:block}.tc-collage .tc-cap{overflow:visible}.tc-collage .tc-name{line-height:1.2}.tc-collage .tc-role{line-height:1.25}
.tc-collage .tc-cap{align-items:stretch}.tc-collage .tc-name,.tc-collage .tc-role{width:100%}

/* team collage: show full photo, no crop */
.tc-collage .tc-ph{background:#fff}
.tc-collage .tc-ph img{object-fit:contain;object-position:center}
@media (max-width:1100px){.tc-collage .tc-ph{aspect-ratio:222/281}}

/* team collage v2: polaroid wall (reference) */
.tc-collage .tc-tile{padding:5px 5px 0;background:#fff;box-shadow:0 1px 2px rgba(16,24,64,.12),0 4px 12px rgba(16,24,64,.08)}
.tc-collage .tc-ph{background:#eceef2}
.tc-collage .tc-cap{padding:6px 4px 6px;min-height:0}

/* team grid (tablet/mobile): tile grows to fit photo + name + role */
@media (max-width:1100px){.tc-collage .tc-tile{aspect-ratio:auto!important;height:auto!important;overflow:visible;padding:5px 5px 0}.tc-collage .tc-ph{flex:none;aspect-ratio:222/281;height:auto}.tc-collage .tc-cap{padding:8px 4px 10px}.tc-collage .tc-name{font-size:14px}.tc-collage .tc-role{font-size:12.5px}}
@media (max-width:520px){.tc-collage .tc-name{font-size:13.5px}.tc-collage .tc-role{font-size:12px}}

/* team collage: use the full section width on wide screens */
.tc-collage{max-width:none;margin:0}
@media (min-width:1101px){.tc-collage .tc-name{font-size:clamp(12px,.85vw,17px)}.tc-collage .tc-role{font-size:clamp(11px,.72vw,14.5px)}}

/* team collage v3: cluster pattern, photos only */
.tc-nocap{aspect-ratio:1424/822}
.tc-nocap .tc-cap{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.tc-nocap .tc-tile{padding:4px;background:#fff}
.tc-nocap .tc-ph{position:relative;flex:1 1 auto;height:100%;background:#e9ebef;overflow:hidden}
.tc-nocap .tc-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.tc-nocap .tc-ph img.tc-bg{object-fit:cover;filter:blur(14px) saturate(.9);transform:scale(1.2);opacity:.55}
.tc-nocap .tc-tile:hover .tc-ph img:not(.tc-bg),.tc-nocap .tc-tile:focus-visible .tc-ph img:not(.tc-bg){transform:scale(1.04)}
@media (max-width:1100px){.tc-nocap{aspect-ratio:auto}.tc-nocap .tc-tile{aspect-ratio:222/281!important;padding:4px}.tc-nocap .tc-ph{aspect-ratio:auto;height:100%}}

/* team collage: photos fill their frames */
.tc-nocap .tc-ph img{object-fit:cover;object-position:center 25%}
.tc-nocap .tc-ph{background:#fff}

/* team collage: portrait frames so every face fits fully */
.tc-nocap{aspect-ratio:1414/712}
.tc-nocap .tc-ph img{object-fit:cover;object-position:center 20%}

/* ===== Core Values v5: 5 cards in a row ===== */
.cv5{position:relative;overflow:hidden;background:#f6f7fb;padding:72px 0 88px}
.cv5::before{content:"";position:absolute;right:-140px;top:-160px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(230,0,18,.18)}
.cv5::after{content:"";position:absolute;left:-120px;top:-100px;width:360px;height:360px;border-radius:50%;background:rgba(21,32,110,.035)}
.cv5 .wrap{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
.cv5-bar{display:block;width:60px;height:3px;background:var(--brand-red);margin-bottom:18px}
.cv5-h{margin:0 0 44px;font-family:var(--font-display);font-size:clamp(36px,4vw,60px);line-height:1.1;font-weight:700;letter-spacing:-.8px;color:var(--brand-indigo);text-align:center}
.cv5-track{position:relative;width:100%}
.cv5-line{position:absolute;left:0;right:0;top:118px;width:100%;height:40px;z-index:0}
.cv5-line path{stroke:rgba(230,0,18,.45);stroke-width:1.5;vector-effect:non-scaling-stroke}
.cv5-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px;margin:0;padding:0;list-style:none;align-items:center}
.cv5-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:22px;min-height:300px;padding:32px 20px 36px;background:#fff;border-radius:14px;box-shadow:0 10px 30px rgba(21,32,110,.08);text-align:center;transition:transform .25s ease,box-shadow .25s ease}
.cv5-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(21,32,110,.14)}
.cv5-num{position:absolute;left:22px;top:12px;font-family:var(--font-display);font-size:52px;font-weight:800;line-height:1;color:#dde0e8;letter-spacing:-1px}
.cv5-ic{position:relative;display:flex;align-items:center;justify-content:center;width:120px;height:120px;margin-top:36px;border-radius:50%;background:#fff;box-shadow:0 8px 22px rgba(21,32,110,.12),inset 0 0 0 1px #eef0f5}
.cv5-ic::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:2.5px solid transparent;border-top-color:var(--brand-red);border-right-color:var(--brand-red);transform:rotate(-10deg)}
.cv5-card h3{margin:0;font-family:var(--font-display);font-size:20px;line-height:1.35;font-weight:700;color:var(--brand-indigo);text-wrap:balance}
.cv5-hl{min-height:340px;background:linear-gradient(160deg,#243a8a,var(--brand-indigo) 55%,#0d1a5c);box-shadow:0 20px 44px rgba(21,32,110,.32)}
.cv5-hl .cv5-num{color:rgba(255,255,255,.28)}
.cv5-hl h3{color:#fff}
.cv5-hl .cv5-ic{box-shadow:0 8px 22px rgba(0,0,0,.25)}
@media (max-width:1068px){.cv5-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cv5-line{display:none}.cv5-hl{min-height:300px}}
@media (max-width:700px){.cv5{padding:52px 0 60px}.cv5-h{margin-bottom:28px}.cv5-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cv5-card{min-height:0;padding:24px 14px 26px;gap:16px}.cv5-hl{min-height:0}.cv5-ic{width:92px;height:92px;margin-top:26px}.cv5-ic svg{width:36px;height:36px}.cv5-num{font-size:38px;left:16px}.cv5-card h3{font-size:17px}}
@media (max-width:420px){.cv5-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.cv5-card{transition:none}.cv5-card:hover{transform:none}}

/* Vision left (white), Mission right (indigo) */
.vm-duo .vm-vision .vm-in{padding-left:max(40px,calc((100vw - 1280px)/2 + 40px));padding-right:56px}
.vm-duo .vm-mission .vm-in{padding-left:56px;padding-right:max(40px,calc((100vw - 1280px)/2 + 40px))}
.vm-duo .vm-vision{border-right:1px solid var(--brand-silver-300,#d9dce3)}
@media (max-width:1068px){.vm-duo .vm-vision .vm-in,.vm-duo .vm-mission .vm-in{padding:48px 40px}.vm-duo .vm-vision{border-right:0}}
@media (max-width:640px){.vm-duo .vm-vision .vm-in,.vm-duo .vm-mission .vm-in{padding:40px 20px}}

/* Core Values: hover animation on every card */
.cv5-card{transition:transform .35s cubic-bezier(.25,.1,.25,1),box-shadow .35s ease,background .35s ease}
.cv5-card::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(160deg,#243a8a,var(--brand-indigo) 55%,#0d1a5c);opacity:0;transition:opacity .35s ease;z-index:0}
.cv5-card>*{position:relative;z-index:1}
.cv5-card .cv5-num{position:absolute;transition:color .35s ease,transform .35s ease}
.cv5-card h3{transition:color .35s ease}
.cv5-ic{transition:transform .45s cubic-bezier(.25,.1,.25,1),box-shadow .35s ease}
.cv5-ic::after{transition:transform .7s cubic-bezier(.25,.1,.25,1)}
.cv5-ic svg{transition:transform .45s cubic-bezier(.25,.1,.25,1)}
.cv5-card:hover,.cv5-card:focus-within{transform:translateY(-10px);box-shadow:0 22px 46px rgba(21,32,110,.30)}
.cv5-card:hover::before{opacity:1}
.cv5-card:hover h3{color:#fff}
.cv5-card:hover .cv5-num{color:rgba(255,255,255,.28);transform:translateY(-2px)}
.cv5-card:hover .cv5-ic{transform:scale(1.06);box-shadow:0 10px 26px rgba(0,0,0,.28)}
.cv5-card:hover .cv5-ic::after{transform:rotate(170deg)}
.cv5-card:hover .cv5-ic svg{transform:scale(1.12)}
.cv5-hl::before{opacity:1}
.cv5-grid:hover .cv5-hl:not(:hover)::before{opacity:0}
.cv5-grid:hover .cv5-hl:not(:hover) h3{color:var(--brand-indigo)}
.cv5-grid:hover .cv5-hl:not(:hover) .cv5-num{color:#dde0e8}
.cv5-grid:hover .cv5-hl:not(:hover){background:#fff;box-shadow:0 10px 30px rgba(21,32,110,.08)}
.cv5-hl{background:#fff}
@media (hover:none){.cv5-card:hover{transform:none}}
@media (prefers-reduced-motion:reduce){.cv5-card,.cv5-card::before,.cv5-ic,.cv5-ic::after,.cv5-ic svg{transition:none}.cv5-card:hover{transform:none}.cv5-card:hover .cv5-ic,.cv5-card:hover .cv5-ic svg,.cv5-card:hover .cv5-ic::after{transform:none}}

/* Portfolio: yellow customer-quote banner */
.cq{background:#ffd400;border-bottom:1px solid rgba(0,0,0,.06)}
.cq-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:40px;padding-top:28px;padding-bottom:28px}
.cq-art{display:block;width:100%;max-width:400px;height:auto;aspect-ratio:1/1;object-fit:contain;justify-self:center}
.cq-right{display:flex;flex-direction:column;gap:22px}
.cq-stage{display:grid}
.cq-q{grid-area:1/1;margin:0;font-family:"Kalam","Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-style:italic;font-size:clamp(26px,2.6vw,42px);line-height:1.35;color:#111;text-wrap:pretty;opacity:0;transition:opacity .8s ease;pointer-events:none}
.cq-q.on{opacity:1;pointer-events:auto}
.cq-dots{display:flex;gap:12px}
.cq-dot{width:12px;height:12px;padding:0;border-radius:50%;border:2px solid #111;background:transparent;cursor:pointer;transition:background .2s,transform .2s}
.cq-dot.on{background:#111}
.cq-dot:hover{transform:scale(1.2)}
.cq-dot:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
@media (max-width:767px){.cq-in{grid-template-columns:1fr;gap:16px;padding-top:24px;padding-bottom:28px}.cq-art{max-width:260px}.cq-q{font-size:24px}.cq-dots{justify-content:center}.cq-right{gap:16px}}
@media (prefers-reduced-motion:reduce){.cq-q{transition:none}}
.cq-in{padding-top:8px;padding-bottom:8px}.cq-art{max-width:360px;margin:-24px 0}@media (max-width:767px){.cq-art{max-width:240px;margin:-20px auto -16px}.cq-in{padding-bottom:24px}}

/* Team: user-supplied pattern + hover animation */
.tp-pattern{position:relative;width:100%;aspect-ratio:var(--tp-r);height:auto!important;margin-top:8px}
.tp-pattern .tp-tile{position:absolute;margin:0;border:3px solid #222;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.08);overflow:hidden;transition:transform .35s cubic-bezier(.25,.1,.25,1),box-shadow .35s,opacity .55s;z-index:1;cursor:pointer}
.tp-pattern .tp-tile .tp-ph{position:absolute;inset:0;display:block;background:#fff}
.tp-pattern .tp-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.25,.1,.25,1),filter .35s}
.tp-pattern .tp-tile .tp-cap{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:2px;padding:18px 10px 8px;background:linear-gradient(transparent,rgba(20,39,106,.92));color:#fff;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s;pointer-events:none}
.tp-pattern .tp-name{font-weight:700;font-size:clamp(11px,1vw,15px);line-height:1.2}
.tp-pattern .tp-role{font-size:clamp(10px,.8vw,12px);opacity:.9}
@media (hover:hover){
.tp-pattern:hover .tp-tile{filter:saturate(.85)}
.tp-pattern .tp-tile:hover,.tp-pattern .tp-tile:focus-visible{transform:translateY(-6px) scale(1.12) rotate(-1deg);box-shadow:0 22px 40px -12px rgba(20,39,106,.45);z-index:5;filter:none;border-color:var(--brand-red)}
.tp-pattern .tp-tile:hover img,.tp-pattern .tp-tile:focus-visible img{transform:scale(1.06)}
.tp-pattern .tp-tile:hover .tp-cap,.tp-pattern .tp-tile:focus-visible .tp-cap{opacity:1;transform:none}
}
.tp-pattern .tp-tile:focus-visible{outline:2px solid var(--brand-red)!important;outline-offset:2px}
@media (max-width:833px){.tp-pattern{aspect-ratio:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tp-pattern .tp-tile{position:relative;left:auto!important;top:auto!important;width:auto!important;height:auto!important;aspect-ratio:4/5}.tp-pattern .tp-tile .tp-cap{opacity:1;transform:none}}
@media (max-width:560px){.tp-pattern{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.tp-pattern .tp-tile,.tp-pattern .tp-tile img{transition:none}.tp-pattern .tp-tile:hover{transform:none}}
.tp-pattern .tp-name,.tp-pattern .tp-role{display:block;color:#fff}
.tp-pattern .tp-tile.rv{opacity:0;transform:translateY(12px)}.tp-pattern .tp-tile.rv.in{opacity:1;transform:none}
@media (hover:hover){.tp-pattern .tp-tile.rv.in:hover,.tp-pattern .tp-tile.rv.in:focus-visible{transform:translateY(-6px) scale(1.12) rotate(-1deg)}}
html:not(.js-motion) .tp-pattern .tp-tile.rv{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.tp-pattern .tp-tile.rv{opacity:1;transform:none}.tp-pattern .tp-tile.rv.in:hover{transform:none}}
.tp-pattern .tp-tile .tp-cap{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;opacity:1!important;transform:none!important;background:none!important}

/* VMV: very wide screens (fix squeezed text) */
.vm-duo .vm-in{max-width:none;box-sizing:border-box}
.vm-duo .vm-vision .vm-in{padding-left:clamp(40px,calc((100vw - 1440px)/2 + 40px),160px);padding-right:clamp(40px,4vw,96px);margin-left:auto;width:min(100%,820px)}
.vm-duo .vm-mission .vm-in{padding-left:clamp(40px,4vw,96px);padding-right:clamp(40px,calc((100vw - 1440px)/2 + 40px),160px);width:min(100%,820px)}
.vm-duo .vm-stmt{max-width:620px}
@media (min-width:1900px){.vm-duo .vm-stmt{font-size:28px;max-width:680px}.vm-duo .vm-in{width:min(100%,900px)}}
.cv5 .wrap{max-width:1440px;margin-left:auto;margin-right:auto}
@media (min-width:1900px){.cv5 .wrap{max-width:1600px}.cv5-card h3{font-size:22px}}
@media (max-width:1068px){.vm-duo .vm-vision .vm-in,.vm-duo .vm-mission .vm-in{padding:48px 40px;width:auto;margin:0}}
@media (max-width:640px){.vm-duo .vm-vision .vm-in,.vm-duo .vm-mission .vm-in{padding:40px 20px}}

/* ===== Core Values — side panel + list ===== */
.cvl{display:grid;grid-template-columns:minmax(260px,20%) minmax(0,1fr);background:#fff;border-top:1px solid #e6e8ef;position:relative;overflow:hidden}
.cvl-side{position:relative;overflow:hidden;background:linear-gradient(160deg,#1a2a7a 0%,var(--brand-indigo) 45%,#0b1450 100%);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:56px clamp(28px,3vw,64px)}
.cvl-side::before{content:"";position:absolute;left:-30%;bottom:-18%;width:160%;height:45%;border-top:2px solid rgba(230,0,18,.75);border-radius:50%;transform:rotate(-12deg)}
.cvl-side::after{content:"";position:absolute;left:-40%;top:-20%;width:150%;height:60%;border-bottom:1px solid rgba(120,150,255,.35);border-radius:50%;transform:rotate(14deg)}
.cvl-h{position:relative;z-index:1;margin:0;font-family:var(--font-display);font-size:clamp(46px,4.4vw,84px);line-height:.98;font-weight:800;letter-spacing:-1.5px;color:#fff}
.cvl-bar{position:relative;z-index:1;display:block;width:72px;height:4px;background:var(--brand-red);margin:22px 0 40px}
.cvl-ring{position:relative;z-index:1;display:block;width:clamp(150px,11vw,210px);aspect-ratio:1;border:2px solid rgba(255,255,255,.75);border-radius:50%;margin-left:8px}
.cvl-ring i{position:absolute;left:50%;top:50%;width:26%;aspect-ratio:1;margin:-13% 0 0 -13%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff8a8a,#e60012 45%,#7a0009);box-shadow:0 0 0 3px rgba(255,255,255,.85),0 6px 14px rgba(0,0,0,.4);transform:rotate(calc(var(--k) * 72deg - 90deg)) translate(calc(50% + 150%)) rotate(calc(var(--k) * -72deg + 90deg));transform:rotate(calc(var(--k) * 72deg - 90deg)) translateX(192%)}
.cvl-main{position:relative;padding:clamp(24px,2.4vw,44px) clamp(28px,4vw,96px)}
.cvl-main::after{content:"";position:absolute;right:-80px;top:-60px;width:260px;height:260px;border-radius:50%;border:1.5px solid rgba(230,0,18,.35);pointer-events:none}
.cvl-list{list-style:none;margin:0;padding:0;max-width:1300px}
.cvl-row{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:clamp(18px,2vw,36px);padding:clamp(14px,1.3vw,22px) 0;border-bottom:1px solid #e3e5ec}
.cvl-row:last-child{border-bottom:0}
.cvl-ic{display:flex;align-items:center;justify-content:center;width:clamp(68px,5vw,96px);aspect-ratio:1;border-radius:50%;background:#fff;box-shadow:0 8px 20px rgba(21,32,110,.12),inset 0 0 0 1px #eef0f5;transition:transform .35s cubic-bezier(.25,.1,.25,1),box-shadow .35s}
.cvl-ic svg{width:44%;height:44%}
.cvl-num{padding:6px clamp(16px,1.6vw,30px);border-left:1px solid #d8dbe4;border-right:1px solid #d8dbe4;font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,2.4vw,42px);line-height:1;color:#9aa0ad}
.cvl-txt h3{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(24px,2.1vw,40px);line-height:1.15;font-weight:700;color:#161a2e;letter-spacing:-.3px}
.cvl-sub{margin:4px 0 0;font-size:clamp(16px,1.1vw,20px);color:var(--brand-red)}
.cvl-txt p:last-child{margin:6px 0 0;font-size:clamp(15px,1.05vw,19px);line-height:1.5;color:#2c3142}
.cvl-row:hover .cvl-ic{transform:scale(1.08);box-shadow:0 12px 26px rgba(230,0,18,.18),inset 0 0 0 1px #f3d4d6}
.cvl-row:hover h3{color:var(--brand-indigo)}
@media (max-width:1068px){.cvl{grid-template-columns:1fr}.cvl-side{padding:44px 40px;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}.cvl-bar{margin:16px 0 0}.cvl-ring{width:130px;margin:0}.cvl-side>.cvl-h+.cvl-bar{order:0}}
@media (max-width:640px){.cvl-side{padding:36px 20px}.cvl-ring{width:100px}.cvl-main{padding:12px 20px 28px}.cvl-row{grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}.cvl-num{display:none}.cvl-ic{width:58px}}
@media (prefers-reduced-motion:reduce){.cvl-ic{transition:none}.cvl-row:hover .cvl-ic{transform:none}}

@media (max-width:1068px){.cvl-side{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:24px}.cvl-h{grid-column:1;grid-row:1}.cvl-bar{grid-column:1;grid-row:2;margin:16px 0 0}.cvl-ring{grid-column:2;grid-row:1 / span 2}}

/* Core Values: compact height */
.cvl-main{padding:clamp(14px,1.2vw,24px) clamp(28px,4vw,96px)}
.cvl-row{padding:clamp(8px,.7vw,13px) 0;gap:clamp(14px,1.4vw,28px)}
.cvl-ic{width:clamp(52px,3.4vw,66px)}
.cvl-num{font-size:clamp(22px,1.6vw,30px);padding:4px clamp(12px,1.2vw,22px)}
.cvl-txt h3{font-size:clamp(20px,1.45vw,28px)}
.cvl-sub{margin:2px 0 0;font-size:clamp(14px,.9vw,16px)}
.cvl-txt p:last-child{margin:3px 0 0;font-size:clamp(14px,.85vw,16px);line-height:1.45}
.cvl-side{padding:32px clamp(24px,2.4vw,52px)}
.cvl-h{font-size:clamp(40px,3.4vw,64px)}
.cvl-bar{margin:16px 0 26px}
.cvl-ring{width:clamp(120px,8vw,160px)}
.cvl-main::after{width:200px;height:200px}
@media (max-width:1068px){.cvl-side{padding:28px 32px}.cvl-ring{width:110px}}
@media (max-width:640px){.cvl-side{padding:26px 20px}.cvl-ring{width:84px}.cvl-ic{width:48px}}

/* Vision always left, Mission right */
.vm-duo .vm-vision{order:1}.vm-duo .vm-mission{order:2}

/* Vision text flush to left edge (aligned with header logo) */
@media (min-width:1069px){
.vm-duo .vm-vision .vm-in{margin-left:0;width:auto;padding-left:clamp(32px,3.6vw,64px);padding-right:clamp(32px,4vw,80px)}
.vm-duo .vm-mission .vm-in{margin-left:0;width:auto;padding-left:clamp(32px,4vw,72px);padding-right:clamp(32px,4vw,80px)}
.vm-duo .vm-stmt{max-width:640px}
}

/* ===== VMV motion graphics ===== */
@keyframes vmFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes vmBlink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes vmSpin{to{transform:rotate(360deg)}}
@keyframes vmPulse{0%{box-shadow:0 0 0 0 rgba(230,0,18,.45)}70%{box-shadow:0 0 0 18px rgba(230,0,18,0)}100%{box-shadow:0 0 0 0 rgba(230,0,18,0)}}
@keyframes vmDrift{0%{transform:translate3d(0,0,0)}50%{transform:translate3d(-24px,10px,0)}100%{transform:translate3d(0,0,0)}}
@keyframes vmPan{0%{transform:scale(1.04) translateX(0)}100%{transform:scale(1.1) translateX(-2%)}}
@keyframes vmGrid{to{background-position:64px 44px,64px 44px,0 0}}
@keyframes vmLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes vmOrbit{to{transform:rotate(360deg)}}
.vm-vision .vm-ic{transform-origin:center;animation:vmFloat 5s ease-in-out infinite}
.vm-vision .vm-ic path:nth-of-type(2),.vm-vision .vm-ic path:nth-of-type(3){transform-origin:17px 16px;animation:vmBlink 6s ease-in-out infinite}
.vm-mission .vm-ic{animation:vmFloat 5s ease-in-out infinite .8s}
.vm-mission .vm-ic circle:first-child{transform-origin:11px 13px;animation:vmSpin 14s linear infinite}
.vm-photo{overflow:hidden}.vm-photo img{animation:vmPan 18s ease-in-out infinite alternate}
.vm-bg{animation:vmGrid 20s linear infinite}
.vm-lines::before{animation:vmDrift 16s ease-in-out infinite}
.vm-eyebrow::after{transform-origin:left;animation:vmLine 1s cubic-bezier(.25,.1,.25,1) both .4s}
.vm-bar{transform-origin:left;animation:vmLine .9s cubic-bezier(.25,.1,.25,1) both .3s}
.cvl-ring{animation:vmOrbit 30s linear infinite}
.cvl-ring i{animation:vmPulse 2.6s ease-out infinite;animation-delay:calc(var(--k) * .5s)}
.cvl-side::before{animation:vmDrift 14s ease-in-out infinite}
.cvl-ic{animation:vmFloat 4.5s ease-in-out infinite}
.cvl-row:nth-child(2) .cvl-ic{animation-delay:.4s}.cvl-row:nth-child(3) .cvl-ic{animation-delay:.8s}.cvl-row:nth-child(4) .cvl-ic{animation-delay:1.2s}.cvl-row:nth-child(5) .cvl-ic{animation-delay:1.6s}
.cvl-row{position:relative}
.cvl-row::after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--brand-red);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.25,.1,.25,1)}
.cvl-row:hover::after{transform:scaleX(1)}
.cvl-row.rv{opacity:0;transform:translateX(24px);transition:opacity .6s ease,transform .6s cubic-bezier(.25,.1,.25,1)}
.cvl-row.rv.in{opacity:1;transform:none}
.vm-panel .vm-in.rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.25,.1,.25,1)}
.vm-panel .vm-in.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.vm-ic,.vm-ic *,.vm-photo img,.vm-bg,.vm-lines::before,.vm-eyebrow::after,.vm-bar,.cvl-ring,.cvl-ring i,.cvl-side::before,.cvl-ic{animation:none!important}.cvl-row.rv,.vm-panel .vm-in.rv{opacity:1;transform:none;transition:none}}

/* ===== Portfolio motion graphics ===== */
@keyframes cqFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-.6deg)}}
@keyframes cqWord{from{opacity:0;transform:translateY(10px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
@keyframes cqProg{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes cqSun{0%,100%{transform:translate(0,0)}50%{transform:translate(-6%,8%)}}
@keyframes cqSheen{0%,70%{transform:translateX(-120%) skewX(-18deg)}100%{transform:translateX(320%) skewX(-18deg)}}
.cq{position:relative;overflow:hidden}
.cq::before{content:"";position:absolute;right:-10%;top:-60%;width:60%;height:200%;background:radial-gradient(closest-side,rgba(255,255,255,.35),rgba(255,255,255,0));animation:cqSun 14s ease-in-out infinite;pointer-events:none}
.cq-in{position:relative}
.cq-art{animation:cqFloat 6s ease-in-out infinite;transform-origin:center bottom}
.cq-in::after{content:"";position:absolute;top:10%;bottom:10%;left:0;width:18%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);animation:cqSheen 7s ease-in-out infinite;pointer-events:none}
.cq-q .cq-w{display:inline-block;white-space:pre}
.cq-q.on .cq-w{animation:cqWord .55s cubic-bezier(.25,.1,.25,1) both}
.cq-dot{position:relative;overflow:hidden}
.cq-dot.on{background:transparent}
.cq-prog{position:absolute;inset:0;border-radius:50%;background:#111;transform-origin:center;animation:cqProg 5s linear both}
.cq-dot.held .cq-prog{animation:none;transform:none}
.org-card,.client-card{transition:transform .3s cubic-bezier(.25,.1,.25,1),box-shadow .3s,border-color .3s}
.org-card:hover,.client-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(21,32,110,.14);border-color:var(--brand-red)}
.org-card img,.client-card img{transition:transform .35s cubic-bezier(.25,.1,.25,1)}
.org-card:hover img,.client-card:hover img{transform:scale(1.06)}
@media (prefers-reduced-motion:reduce){.cq::before,.cq-art,.cq-in::after,.cq-q.on .cq-w,.cq-prog{animation:none!important}.cq-prog{transform:none}.org-card:hover,.client-card:hover,.org-card:hover img,.client-card:hover img{transform:none}}

/* ===== Team v2: borderless tiles + motion ===== */
.tp-tile,.tp-tile .tp-ph{border:0!important;outline:0;box-shadow:none}
.tp-tile .tp-ph{background:transparent}
.tp-tile .tp-ph img{border:0!important}
@keyframes tpFloat{0%,100%{translate:0 0}50%{translate:0 -5px}}
@keyframes tpIn{from{opacity:0;scale:.86;filter:blur(4px)}to{opacity:1;scale:1;filter:none}}
.tp-pattern .tp-tile{animation:tpFloat 6s ease-in-out infinite}
.tp-pattern .tp-tile:nth-child(3n+1){animation-duration:7s;animation-delay:-1.2s}
.tp-pattern .tp-tile:nth-child(3n+2){animation-duration:5.5s;animation-delay:-2.6s}
.tp-pattern .tp-tile:nth-child(4n){animation-duration:6.5s;animation-delay:-3.8s}
.tp-pattern .tp-tile.rv.in .tp-ph{animation:tpIn .7s cubic-bezier(.25,.1,.25,1) both;animation-delay:inherit}
.tp-pattern .tp-tile:hover,.tp-pattern .tp-tile:focus-visible{animation-play-state:paused;z-index:5}
.tp-pattern .tp-tile .tp-ph{transition:transform .35s cubic-bezier(.25,.1,.25,1),box-shadow .35s}
.tp-pattern .tp-tile:hover .tp-ph,.tp-pattern .tp-tile:focus-visible .tp-ph{transform:scale(1.08);box-shadow:0 18px 36px rgba(21,32,110,.22)}
.tp-pattern .tp-tile:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.tp-pattern .tp-tile,.tp-pattern .tp-tile.rv.in .tp-ph{animation:none!important}.tp-pattern .tp-tile:hover .tp-ph{transform:none}}

/* ===== Slider controls: visibility is its own state (independent of play/pause) ===== */
.hero-slides .hs-ctrl{opacity:0!important;visibility:hidden!important;transform:translateY(6px)!important;pointer-events:none!important;transition:opacity .25s ease,transform .25s ease,visibility 0s linear .25s!important}
.hero-slides.ctrl-on .hs-ctrl,.hero-slides .hs-ctrl:has(:focus-visible){opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;transition:opacity .25s ease,transform .25s ease,visibility 0s!important}
@media (prefers-reduced-motion:reduce){.hero-slides .hs-ctrl,.hero-slides.ctrl-on .hs-ctrl{transition:none!important;transform:none!important}}

/* ===== Mobile: slider controls never cover slide content (RB slide CTA, labels) ===== */
@media (max-width:640px){
.hero-slides .hs-ctrl{top:8px;bottom:auto;left:10px;right:10px}
.hero-slides .hs-ctrl .hs-btn{width:40px;height:40px}
.hs-slide .rbs-p{display:none}
}

/* Mobile: slider controls back at the bottom; label sits above them, RB CTA above the label */
@media (max-width:640px){
.hero-slides .hs-ctrl{top:auto!important;bottom:8px!important;left:10px;right:10px}
.hero-slides .hs-label{bottom:60px!important}
.hs-slide .rbs-body{padding-bottom:112px}
}

/* Mobile RB slide: CTA already names RB Chanakya — hide the duplicate label so nothing overlaps */
@media (max-width:640px){
.hs-slide:has(.rbs) .hs-label{display:none}
.hs-slide .rbs-body{padding-bottom:56px}
}

/* ===== RB slide quote: People / Strategy / Development / Victory with matched quote marks ===== */
.hs-slide .rbs-q{display:flex;flex-direction:column;align-items:flex-start;position:relative;padding:0 0 0 .95em;margin:2px 0;font-family:Inter,system-ui,sans-serif;font-weight:700;font-size:clamp(15px,1.1vw,20px);line-height:1.35;color:#fff}
.hs-slide .rbs-q i{font-style:normal;font-family:Georgia,"Times New Roman",serif;color:#e31b23;font-weight:700;line-height:1;pointer-events:none}
.hs-slide .rbs-q .rbs-qo{position:absolute;left:-.1em;top:-.12em;font-size:1.9em;margin:0}
.hs-slide .rbs-q .rbs-qc{position:static;display:inline-block;font-size:1.9em;height:auto;margin:0 0 0 .12em;vertical-align:-.42em;align-self:auto}
.hs-slide .rbs-qw{display:block;white-space:nowrap}
@media (max-width:1068px){
.hs-slide .rbs-q{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:0 .5em;padding-left:.75em;font-size:15px;line-height:1.3}
.hs-slide .rbs-qw{display:inline}
.hs-slide .rbs-qw+.rbs-qw::before{content:"·";color:#e31b23;margin-right:.5em}
.hs-slide .rbs-q .rbs-qo{font-size:1.6em;top:-.1em}
.hs-slide .rbs-q .rbs-qc{font-size:1.6em;vertical-align:-.38em}
}
@media (max-width:640px){
.hs-slide .rbs-q{font-size:13px;gap:0 .4em}
.hs-slide .rbs-qw+.rbs-qw::before{margin-right:.4em}
.hs-slide .rbs-txt{gap:6px}
}

/* RB slide: keep CTA clear of controls/label after quote was made visible */
@media (max-width:1068px){
.hs-slide:has(.rbs) .hs-label{display:none}
}
@media (min-width:641px) and (max-width:1068px){
.hs-slide .rbs-body{padding-bottom:64px}
}
@media (max-width:640px){
.hs-slide .rbs-body{align-content:start;padding-top:10px;padding-bottom:60px}
.hs-slide .rbs-txt{gap:4px}
.hs-slide .rbs-k{font-size:10px;letter-spacing:.14em}
.hs-slide .rbs-h{font-size:clamp(22px,7vw,28px);line-height:1}
.hs-slide .rbs-q{font-size:12px;margin:0}
.hs-slide .rbs-btn{min-height:40px;font-size:13px;padding:0 16px;margin-top:2px}
}
@media (min-width:1069px){
.hs-slide .rbs-body{padding-bottom:max(76px,var(--rbs-pb,0px))}
}

/* Slide label rests at the bottom; lifts above the controls only while they are shown (hover / tap / focus) */
.hero-slides .hs-label{bottom:20px!important;transition:bottom .3s cubic-bezier(.25,.1,.25,1),background .2s}
.hero-slides.ctrl-on .hs-label,.hero-slides:has(.hs-ctrl :focus-visible) .hs-label{bottom:76px!important}
@media (max-width:640px){
.hero-slides .hs-label{bottom:12px!important}
.hero-slides.ctrl-on .hs-label,.hero-slides:has(.hs-ctrl :focus-visible) .hs-label{bottom:60px!important}
}
@media (prefers-reduced-motion:reduce){.hero-slides .hs-label{transition:none}}

/* ===== Mobile RB slide: two-column layout (title + CTA left, subtitle + quote panel right) ===== */
@media (max-width:640px){
.hs-slide .rbs-body{padding:8px 14px 0;align-content:start}
.hs-slide .rbs-txt{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,47%);column-gap:10px;row-gap:4px;align-items:start}
.hs-slide .rbs-k,.hs-slide .rbs-h{grid-column:1/-1}
.hs-slide .rbs-k{font-size:10px;letter-spacing:.14em}
.hs-slide .rbs-h{font-size:clamp(22px,6.8vw,26px);line-height:1}
.hs-slide .rbs-btn{grid-column:1;grid-row:3;justify-self:start;align-self:start;min-height:40px;font-size:13px;padding:0 16px;margin:2px 0 0}
.hs-slide .rbs-p{display:block;grid-column:2;grid-row:3;margin:0;padding:8px 10px 4px;font-size:11px;line-height:1.3;color:#fff;background:rgba(18,18,22,.62);border-radius:8px 8px 0 0}
.hs-slide .rbs-q{grid-column:2;grid-row:4;margin:-4px 0 0;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:0;padding:2px 10px 8px 26px;font-size:11px;line-height:1.25;background:rgba(18,18,22,.62);border-radius:0 0 8px 8px}
.hs-slide .rbs-qw{display:block}
.hs-slide .rbs-qw+.rbs-qw::before{content:none}
.hs-slide .rbs-q .rbs-qo{left:8px;top:0;font-size:1.9em}
.hs-slide .rbs-q .rbs-qc{font-size:1.9em;margin-left:.3em;vertical-align:-.45em}
.hs-slide:has(.rbs) .hs-label{display:inline-flex;max-width:calc(53% - 24px);white-space:normal;font-size:11px;line-height:1.25;padding:6px 10px;min-height:0;border-radius:12px}
.hs-slide:has(.rbs) .hs-label a{display:inline}
}

/* Mobile RB slide: tighten so the quote panel clears the controls bar */
@media (max-width:640px){
.hs-slide .rbs-body{padding-top:4px}
.hs-slide .rbs-txt{row-gap:3px}
.hs-slide .rbs-k{margin:0}
.hs-slide .rbs-h{font-size:clamp(20px,6.2vw,24px)}
.hs-slide .rbs-p{padding-top:6px;line-height:1.2}
.hs-slide .rbs-q{line-height:1.15;padding-bottom:4px}
.hs-slide .rbs-q .rbs-qc{display:inline-block;line-height:0;height:0;vertical-align:-.35em}
.hs-slide .rbs-q .rbs-qo{line-height:1}
}

/* ===== Mobile RB slide v3: photo-led — title bottom-left, CTA + label bottom-right; lift together when controls show ===== */
@media (max-width:640px){
.hs-slide .rbs{background:linear-gradient(180deg,rgba(18,16,18,.08) 30%,rgba(18,16,18,.72) 100%)}
.hs-slide .rbs-body{position:relative;flex:1;display:block;padding:0}
.hs-slide .rbs-txt{position:absolute;left:12px;right:12px;bottom:14px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;transition:bottom .3s cubic-bezier(.25,.1,.25,1)}
.hs-slide .rbs-k{font-size:10px;letter-spacing:.14em;margin:0}
.hs-slide .rbs-h{font-size:clamp(21px,6.4vw,25px);line-height:1.02;max-width:58%}
.hs-slide .rbs-p,.hs-slide .rbs-q{display:none}
.hs-slide .rbs-btn{position:absolute;right:0;bottom:28px;margin:0;min-height:36px;font-size:12.5px;padding:0 14px}
.hs-slide:has(.rbs) .hs-label{display:inline-flex;left:auto;right:12px;bottom:14px!important;max-width:none;white-space:nowrap;font-size:9.5px;line-height:1;padding:5px 10px;min-height:0;border-radius:999px;transition:bottom .3s cubic-bezier(.25,.1,.25,1)}
.hero-slides.ctrl-on .hs-slide .rbs-txt,.hero-slides:has(.hs-ctrl :focus-visible) .hs-slide .rbs-txt{bottom:56px}
.hero-slides.ctrl-on .hs-slide:has(.rbs) .hs-label,.hero-slides:has(.hs-ctrl :focus-visible) .hs-slide:has(.rbs) .hs-label{bottom:56px!important}
}
@media (max-width:640px) and (prefers-reduced-motion:reduce){.hs-slide .rbs-txt,.hs-slide:has(.rbs) .hs-label{transition:none}}

/* Narrow phones: keep RB kicker clear of the right-anchored CTA */
@media (max-width:380px){
.hs-slide .rbs-k{max-width:calc(100% - 150px);white-space:normal;font-size:9px;letter-spacing:.06em;line-height:1.3}
.hs-slide .rbs-btn{font-size:12px;padding:0 12px}
}

/* Mobile: show the full Swachh Bharat poster (no side crop); soft blurred fill behind */
@media (max-width:640px){
.hs-slide:has(img[src*="swachh-bharat-sbm"]){overflow:hidden}
.hs-slide:has(img[src*="swachh-bharat-sbm"])::before{content:"";position:absolute;inset:-24px;z-index:0;background:url("assets/showcase/swachh-bharat-sbm.jpg") center/cover no-repeat;filter:blur(18px) saturate(1.1);opacity:.9}
.hero-slides .hs-slide img[src*="swachh-bharat-sbm"]{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:contain!important;object-position:center!important;animation:none!important;transform:none!important}
.hs-slide:has(img[src*="swachh-bharat-sbm"]) .ss-fx{z-index:2}
}

/* Mobile SBM slide: image fills the slide (cover), no blurred bands, label on top */
@media (max-width:640px){
.hs-slide:has(img[src*="swachh-bharat-sbm"])::before{display:none!important}
.hero-slides .hs-slide img[src*="swachh-bharat-sbm"]{object-fit:cover!important;object-position:55% 50%!important;animation:none!important;transform:none!important}
.hs-slide:has(img[src*="swachh-bharat-sbm"]) .hs-label{z-index:3}
}
@media (max-width:640px){.hero-slides .hs-slide img[src*="swachh-bharat-sbm"]{object-position:76% 50%!important}}
@media (max-width:370px){.hero-slides .hs-slide img[src*="swachh-bharat-sbm"]{object-position:80% 50%!important}}

/* Mobile Tree Census slide: full collage, no zoom crop, no marker overlay; label stays */
@media (max-width:640px){
.hero-slides .hs-slide img[src*="tree-census"]{animation:none!important;transform:none!important;object-fit:cover!important;object-position:50% 50%!important}
.hs-slide:has(img[src*="tree-census"]) .ss-fx{display:none!important}
.hs-slide:has(img[src*="tree-census"]) .hs-label{z-index:3}
}
