/* ============================================================
   IPCS — visual identity overrides
   Original layout/components preserved; palette adapted to logo.
   ============================================================ */
:root{
 --ink:#073B78; --ink-800:#0B4F98; --ink-700:#1769B2;
 --azure:#0B73BE; --accent:#E59B18; --accent-600:#C77E00;
 --accent-soft:#FFF1D5; --green:#008A67; --green-600:#006B50;
 --green-soft:#E3F5EF; --lime:#00A878; --orange:#E59B18; --orange-600:#C77E00;
 --bg:#FFFFFF; --bg-alt:#F5F8FC; --surface:#FFFFFF; --text:#15243A; --muted:#52627A;
 --line:#DFE6EF; --gold:#F2A51A;
}
body{background:var(--bg);color:var(--text)}
.topbar{background:#062D5B}.topbar-meta svg{color:var(--gold)}
.site-header{border-bottom:1px solid rgba(7,59,120,.08)}
.brand-logo{width:190px;height:auto;max-height:62px;object-fit:contain}
.nav-links > li > a.active,.dropdown a:hover{color:var(--accent-600);background:var(--accent-soft)}
.btn--primary{background:var(--accent);color:#fff}.btn--primary:hover{background:var(--accent-600)}
.btn--green{background:var(--green);color:#fff}.btn--green:hover{background:var(--green-600)}
.hero-ipcs{position:relative;min-height:690px;overflow:hidden;background:linear-gradient(120deg,#062D5B 0%,#073B78 45%,#0A6EAE 100%);color:#fff}
.hero-ipcs:before{content:"";position:absolute;inset:-25%;background:radial-gradient(circle at 18% 20%,rgba(0,168,120,.28),transparent 30%),radial-gradient(circle at 85% 25%,rgba(229,155,24,.25),transparent 28%),linear-gradient(120deg,transparent 40%,rgba(255,255,255,.06) 40%,rgba(255,255,255,.06) 41%,transparent 41%);transform:rotate(-4deg)}
.hero-ipcs .container{position:relative;z-index:2}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:60px;align-items:center;min-height:690px;padding:80px 0}
.hero-kicker{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.08);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.hero-kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(229,155,24,.14)}
.hero-ipcs h1{font-size:clamp(2.6rem,6vw,5.7rem);line-height:.98;color:#fff;margin:22px 0 22px;letter-spacing:-.04em}
.hero-ipcs h1 span{color:#F4B33A}.hero-ipcs p{max-width:680px;color:#D9E6F5;font-size:1.12rem;line-height:1.75}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.hero-card{position:relative;padding:26px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.09);backdrop-filter:blur(14px);border-radius:28px;box-shadow:0 28px 80px rgba(0,0,0,.22)}
.hero-card img{width:100%;max-width:470px;display:block;margin:auto;background:#fff;border-radius:18px;padding:16px}
.hero-card .hero-card-badge{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.hero-card-badge div{padding:15px;border-radius:15px;background:rgba(0,0,0,.15);border:1px solid rgba(255,255,255,.1)}.hero-card-badge strong{display:block;color:#fff;font-size:1.35rem}.hero-card-badge span{color:#BFD2E8;font-size:.82rem}
.band{position:absolute;inset:0;display:flex;align-items:center;opacity:0;pointer-events:none}.band .hero-grid{opacity:calc(.25 + .75 * var(--k,0));transform:translateY(calc(18px * (1 - var(--k,0))));transition:none}.band--settle{opacity:1!important}
.stats-ipcs{background:#062D5B;color:#fff}.stats-ipcs .statValue{color:#fff}.stats-ipcs .stat-label{color:#B9CBE0}
.service-card{height:100%;border:1px solid var(--line);border-radius:22px;background:#fff;padding:28px;box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow-md);border-color:rgba(229,155,24,.55)}
.service-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--accent-soft),var(--green-soft));color:var(--ink);font-size:1.35rem;font-weight:900;margin-bottom:18px}.service-card h3{margin-bottom:10px}.service-card p{color:var(--muted);line-height:1.7}
.page-hero{padding:120px 0 95px;background:linear-gradient(120deg,#062D5B,#0A5F9D);color:#fff;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-150px;top:-170px;border:70px solid rgba(229,155,24,.14)}.page-hero .eyebrow{color:#F4B33A}.page-hero h1{color:#fff;font-size:clamp(2.4rem,5vw,4.6rem);line-height:1.02;max-width:900px}.page-hero p{color:#D8E7F5;max-width:720px;font-size:1.1rem;line-height:1.75}
.ipcs-list{display:grid;gap:14px;margin:25px 0 0;padding:0;list-style:none}.ipcs-list li{padding:15px 18px 15px 46px;border:1px solid var(--line);border-radius:14px;background:#fff;position:relative}.ipcs-list li:before{content:"✓";position:absolute;left:17px;top:13px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-weight:800}
.contact-card{padding:30px;border-radius:22px;background:#062D5B;color:#fff}.contact-card p{color:#C9D9EA}.contact-card a{color:#F4B33A}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}
.footer-ipcs{background:#041F3F;color:#B9CBE0}.footer-ipcs h3{color:#fff}.footer-ipcs a{color:#D8E7F5}.footer-brand{max-width:260px;background:#fff;border-radius:12px;padding:12px;margin-bottom:18px}
.form-card{border:1px solid var(--line);border-radius:22px;background:#fff;padding:30px;box-shadow:var(--shadow-sm)}.form-card label{display:block;font-weight:700;margin:0 0 7px}.form-card input,.form-card textarea,.form-card select{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 14px;font:inherit;color:var(--text);background:#fff}.form-card textarea{min-height:150px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.form-field{margin-bottom:16px}
@media(max-width:900px){.hero-grid,.contact-grid{grid-template-columns:1fr}.hero-ipcs{min-height:auto}.hero-grid{min-height:auto;padding:70px 0}.hero-card{max-width:620px}.form-row{grid-template-columns:1fr}.brand-logo{width:155px}}
@media(max-width:600px){.hero-ipcs h1{font-size:2.65rem}.page-hero{padding:85px 0 70px}.hero-card-badge{grid-template-columns:1fr 1fr}.hero-actions .btn{width:100%;text-align:center}.hero-grid{gap:35px}}

/* IPCS imagery and extended activity system */
.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.activity-card{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.activity-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-md);border-color:rgba(229,155,24,.5)}.activity-card>img,.activity-visual{width:100%;height:230px;display:block;object-fit:cover}.activity-visual{display:grid;place-items:center;font-weight:900;letter-spacing:.14em;font-size:2rem;color:#fff;background:linear-gradient(135deg,#062D5B,#0A73BE 55%,#008A67)}.activity-visual--car{background:linear-gradient(135deg,#073B78,#0B73BE,#F2A51A)}.activity-visual--taxi{background:linear-gradient(135deg,#062D5B,#E59B18,#fff)}.activity-visual--carnet{background:linear-gradient(135deg,#008A67,#073B78,#F2A51A)}.activity-card-body{padding:24px}.activity-card-body>span{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--ink);font-weight:900;margin-bottom:12px}.activity-card-body h3{margin-bottom:10px}.activity-card-body p{color:var(--muted);line-height:1.7;margin-bottom:18px}.brochure-section{background:linear-gradient(180deg,#F5F8FC,#fff)}.brochure-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:42px;align-items:center}.brochure-frame{padding:10px;background:#fff;border-radius:26px;box-shadow:0 25px 70px rgba(4,31,63,.15);border:1px solid var(--line)}.brochure-frame img{width:100%;height:auto;display:block;border-radius:18px}.detail-image{width:100%;max-height:420px;object-fit:cover;border-radius:22px;margin-bottom:25px;box-shadow:var(--shadow-sm)}
@media(max-width:1000px){.activity-grid{grid-template-columns:repeat(2,1fr)}.brochure-grid{grid-template-columns:1fr}}@media(max-width:620px){.activity-grid{grid-template-columns:1fr}.activity-card>img,.activity-visual{height:250px}}

/* ============================================================
   IPCS — Homepage v3: clearer hierarchy + structured footer
   ============================================================ */
.hero-ipcs{min-height:760px;background:#062D5B;position:relative;overflow:hidden}
.hero-image-layer{position:absolute;inset:0;z-index:0}.hero-image-layer img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9)}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,31,63,.97) 0%,rgba(4,31,63,.87) 40%,rgba(4,31,63,.45) 70%,rgba(4,31,63,.28) 100%)}
.hero-container{position:relative!important;z-index:2;min-height:760px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:70px;align-items:center;padding-top:70px;padding-bottom:70px}
.hero-content{max-width:760px}.hero-ipcs h1{font-size:clamp(2.8rem,5.6vw,5.8rem);line-height:1.01;margin:22px 0;color:#fff}.hero-ipcs h1 span{color:#F2A51A}.hero-ipcs p{max-width:700px;font-size:1.15rem;line-height:1.8;color:#E4EFFA}.hero-trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.hero-trust span{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);border-radius:999px;padding:8px 12px;color:#fff}
.hero-side-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.24);border-radius:26px;padding:14px;box-shadow:0 30px 80px rgba(0,0,0,.3);backdrop-filter:blur(12px);transform:rotate(1deg)}.hero-side-card img{width:100%;display:block;border-radius:17px}.hero-side-caption{padding:16px 8px 4px;color:#fff}.hero-side-caption strong{display:block;font-size:1.05rem;margin-bottom:5px}.hero-side-caption span{font-size:.78rem;color:#D8E7F5;line-height:1.5}
.stats-ipcs{padding:72px 0;background:linear-gradient(135deg,#041F3F,#073B78)}.section-head--light h2,.section-head--light p{color:#fff}.section-head--light p{opacity:.78}.stats-ipcs .section-head{margin-bottom:35px}.stats-ipcs .eyebrow{color:#F2A51A}.stats-ipcs .grid--4{align-items:stretch}.stats-ipcs .stat{padding:25px;border-right:1px solid rgba(255,255,255,.12)}.stats-ipcs .stat:last-child{border-right:0}.stats-ipcs .statValue{font-size:2.7rem;font-weight:800}.stats-ipcs .stat-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}
.activities-section{background:#fff}.activity-grid{grid-template-columns:repeat(6,1fr);gap:20px}.activity-card{grid-column:span 2}.activity-card:nth-child(4),.activity-card:nth-child(5),.activity-card:nth-child(6),.activity-card:nth-child(7){grid-column:span 2}.activity-card--featured{border-color:rgba(229,155,24,.55);box-shadow:0 18px 50px rgba(7,59,120,.1)}.activity-card>img{height:245px}.activity-card-body h3{font-size:1.18rem;min-height:48px}
.expertise-band{background:linear-gradient(180deg,#F5F8FC,#fff)}.expertise-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:start}.expertise-grid h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.08}.expertise-grid>div:first-child p{font-size:1.05rem;line-height:1.8;color:var(--muted);max-width:580px;margin-bottom:25px}.expertise-points{display:grid;grid-template-columns:1fr 1fr;gap:14px}.expertise-point{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.expertise-point>strong{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--ink);font-size:.85rem}.expertise-point h3{font-size:1rem;margin:0 0 5px}.expertise-point p{font-size:.87rem;line-height:1.55;color:var(--muted);margin:0}
.cta-home-inner{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:38px 44px;border-radius:24px;background:#062D5B;color:#fff;box-shadow:0 22px 60px rgba(4,31,63,.15)}.cta-home-inner h2{color:#fff;margin:8px 0}.cta-home-inner p{color:#D8E7F5;margin:0;max-width:680px}.cta-home-inner .eyebrow{color:#F2A51A}
/* Structured IPCS footer */
.ipcs-footer{background:#041F3F;color:#B9CBE0;padding:70px 0 0;position:relative;overflow:hidden}.ipcs-footer:before{content:"";position:absolute;right:-180px;bottom:-240px;width:520px;height:520px;border:80px solid rgba(229,155,24,.08);border-radius:50%}.footer-main{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr 1fr .8fr 1.2fr;gap:45px;padding-bottom:55px}.footer-brand-block{max-width:340px}.footer-logo-link{display:inline-block;background:#fff;border-radius:14px;padding:11px 16px;margin-bottom:18px}.footer-logo-link img{width:205px;height:auto;display:block}.footer-tagline{font-size:1.05rem;font-weight:700;color:#fff;margin-bottom:9px}.footer-brand-block>p:not(.footer-tagline){line-height:1.7;font-size:.9rem}.footer-badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.footer-badges span{border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:6px 9px;font-size:.62rem;letter-spacing:.05em;color:#DCE8F5}.footer-column h3{font-size:1rem;color:#fff;margin:0 0 17px}.footer-column .footer-subtitle{margin-top:25px}.footer-column ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.footer-column li a{color:#B9CBE0;font-size:.88rem;transition:color .2s,transform .2s}.footer-column li a:hover,.footer-contact a:hover{color:#F2A51A}.footer-contact p{font-size:.86rem;line-height:1.55;margin:0 0 14px}.footer-contact strong{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#F2A51A}.footer-contact a{color:#DCE8F5}.footer-cta{margin-top:8px}.footer-bottom-new{position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.12);padding:20px 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.76rem}.footer-bottom-new p{margin:0}.footer-bottom-new span{color:#F2A51A;margin:0 5px}
@media(max-width:1050px){.hero-container{grid-template-columns:1fr}.hero-side-card{display:none}.activity-grid{grid-template-columns:repeat(2,1fr)}.activity-card,.activity-card:nth-child(n){grid-column:auto}.footer-main{grid-template-columns:1.2fr 1fr 1fr}.footer-contact{grid-column:span 3;max-width:600px}.expertise-grid{grid-template-columns:1fr}.expertise-points{max-width:850px}}
@media(max-width:700px){.hero-ipcs,.hero-container{min-height:auto}.hero-container{padding-top:100px;padding-bottom:65px}.hero-overlay{background:linear-gradient(180deg,rgba(4,31,63,.95),rgba(4,31,63,.82))}.hero-ipcs h1{font-size:2.75rem}.hero-trust{gap:6px}.hero-trust span{font-size:.65rem}.stats-ipcs .grid--4{grid-template-columns:1fr 1fr}.stats-ipcs .stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.activity-grid{grid-template-columns:1fr}.expertise-points{grid-template-columns:1fr}.cta-home-inner{padding:28px;display:block}.cta-home-inner .btn{margin-top:22px}.footer-main{grid-template-columns:1fr;gap:34px}.footer-contact{grid-column:auto}.footer-bottom-new{display:block}.footer-bottom-new p+p{margin-top:8px}.footer-logo-link img{width:180px}}


/* ============================================================
   IPCS — Homepage hero + statistics refinement
   ============================================================ */
.hero-ipcs{min-height:780px;background:#041F3F}
.hero-image-layer img{object-position:center 42%;filter:saturate(.82) contrast(1.02)}
.hero-overlay{background:linear-gradient(90deg,rgba(3,25,52,.98) 0%,rgba(4,31,63,.92) 39%,rgba(4,31,63,.62) 67%,rgba(4,31,63,.30) 100%)}
.hero-container{min-height:780px;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:72px;padding:92px 0 120px}
.hero-content{max-width:720px;align-self:center}
.hero-kicker{font-size:.72rem;letter-spacing:.11em;padding:10px 15px;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.22)}
.hero-kicker span{width:9px;height:9px;border-radius:50%;background:#F2A51A;box-shadow:0 0 0 5px rgba(242,165,26,.15)}
.hero-ipcs h1{font-size:clamp(3rem,5.25vw,5.4rem);line-height:1.02;letter-spacing:-.045em;margin:25px 0 24px;max-width:760px}
.hero-ipcs h1 span{display:block;color:#F2A51A}
.hero-ipcs p{max-width:650px;font-size:1.04rem;line-height:1.75;color:#DCE8F5}
.hero-actions{margin-top:30px}
.hero-actions .btn{min-height:52px;padding:14px 22px}
.hero-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:42px;max-width:700px;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.12)}
.hero-highlights>div{padding:17px 15px 17px 0;border-right:1px solid rgba(255,255,255,.13)}
.hero-highlights>div+div{padding-left:17px}
.hero-highlights>div:last-child{border-right:0}
.hero-highlights strong{display:block;color:#fff;font-size:.9rem;margin-bottom:4px}
.hero-highlights span{display:block;color:#AFC4DA;font-size:.7rem;line-height:1.4}
.hero-visual{position:relative;align-self:center;max-width:540px;width:100%;justify-self:end}
.hero-visual-frame{position:relative;padding:9px;border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(242,165,26,.55),rgba(0,138,103,.65));box-shadow:0 35px 90px rgba(0,0,0,.35);transform:rotate(1.2deg)}
.hero-visual-frame:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.5);border-radius:19px;pointer-events:none}
.hero-visual-frame img{display:block;width:100%;height:430px;object-fit:cover;object-position:center;border-radius:21px}
.hero-visual-card{position:absolute;left:-34px;bottom:25px;display:flex;align-items:center;gap:13px;max-width:310px;padding:14px 18px;border:1px solid rgba(255,255,255,.28);border-radius:17px;background:rgba(4,31,63,.92);box-shadow:0 18px 45px rgba(0,0,0,.3);backdrop-filter:blur(10px);color:#fff}
.hero-visual-card strong{display:block;font-size:1rem}.hero-visual-card span:not(.hero-visual-icon){display:block;color:#C9D8E8;font-size:.68rem;line-height:1.45;margin-top:3px}
.hero-visual-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:#F2A51A;color:#062D5B;font-weight:900}
.hero-decor{position:absolute;border-radius:50%;pointer-events:none;z-index:1}.hero-decor--one{width:180px;height:180px;right:-65px;top:75px;border:35px solid rgba(242,165,26,.11)}.hero-decor--two{width:260px;height:260px;left:-160px;bottom:80px;border:45px solid rgba(0,168,120,.09)}
.hero-bottom-line{position:absolute;bottom:0;left:0;right:0;z-index:3;background:rgba(2,20,42,.78);border-top:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px)}
.hero-bottom-line .container{display:flex;align-items:center;justify-content:center;gap:18px;min-height:54px}.hero-bottom-line span{font-size:.66rem;text-transform:uppercase;letter-spacing:.11em;color:#E8F1F9;font-weight:700}.hero-bottom-line i{width:5px;height:5px;border-radius:50%;background:#F2A51A}
.stats-ipcs{padding:86px 0 92px;background:linear-gradient(135deg,#031D39 0%,#062D5B 58%,#073B78 100%);position:relative;overflow:hidden}
.stats-ipcs:before{content:"";position:absolute;width:520px;height:520px;right:-300px;top:-300px;border:90px solid rgba(242,165,26,.08);border-radius:50%}.stats-ipcs:after{content:"";position:absolute;width:380px;height:380px;left:-280px;bottom:-250px;border:65px solid rgba(0,168,120,.07);border-radius:50%}
.stats-ipcs .container{position:relative;z-index:1}.stats-head{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:42px}.stats-head .eyebrow{color:#F2A51A}.stats-head h2{color:#fff;font-size:clamp(2rem,3.7vw,3.25rem);line-height:1.08;max-width:760px;margin:9px 0 0}.stats-head>p{color:#BFD1E4;line-height:1.75;font-size:.94rem;max-width:480px;margin:0 0 5px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{position:relative;min-height:270px;padding:24px 24px 22px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045));box-shadow:0 18px 45px rgba(0,0,0,.12);overflow:hidden}.stat-card:before{content:"";position:absolute;left:0;top:0;width:55px;height:3px;background:#F2A51A}.stat-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.stat-index{font-size:.64rem;color:#8EA9C3;letter-spacing:.1em;font-weight:700}.stat-icon{display:grid;place-items:center;min-width:35px;height:35px;padding:0 7px;border-radius:50%;background:rgba(242,165,26,.12);border:1px solid rgba(242,165,26,.35);color:#F2A51A;font-size:.75rem;font-weight:800}.statValue{font-size:3.2rem!important;line-height:1;font-weight:800;color:#fff!important;letter-spacing:-.04em;margin-bottom:10px}.statValue--year{font-size:2.65rem!important}.stat-card h3{color:#fff;font-size:.92rem;margin:0 0 9px}.stat-card p{color:#AFC3D8;font-size:.76rem;line-height:1.55;margin:0;max-width:230px}
@media(max-width:1050px){.hero-container{grid-template-columns:1fr;gap:40px;padding-top:85px;padding-bottom:110px}.hero-content{max-width:820px}.hero-visual{display:none}.hero-ipcs{min-height:690px}.stats-head{grid-template-columns:1fr;gap:14px}.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.hero-ipcs{min-height:0}.hero-container{min-height:0;padding:80px 0 95px}.hero-overlay{background:linear-gradient(180deg,rgba(3,25,52,.97),rgba(4,31,63,.9))}.hero-ipcs h1{font-size:clamp(2.55rem,12vw,3.55rem);margin-top:20px}.hero-ipcs p{font-size:.96rem;line-height:1.65}.hero-highlights{grid-template-columns:1fr;margin-top:30px}.hero-highlights>div,.hero-highlights>div+div{padding:12px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.hero-highlights>div:last-child{border-bottom:0}.hero-bottom-line .container{justify-content:flex-start;overflow:hidden;gap:12px;white-space:nowrap}.hero-bottom-line span{font-size:.56rem}.stats-ipcs{padding:65px 0}.stats-head h2{font-size:2rem}.stats-grid{grid-template-columns:1fr}.stat-card{min-height:225px}.statValue{font-size:2.8rem!important}}

/* ============================================================
   IPCS V5 — Dynamic, compact homepage hero
   ============================================================ */
.hero-dynamic{min-height:760px;isolation:isolate;overflow:hidden}
.hero-dynamic .hero-image-layer img{object-position:center 42%;transform:scale(1.035);animation:ipcsHeroZoom 12s ease-in-out infinite alternate}
@keyframes ipcsHeroZoom{from{transform:scale(1.035)}to{transform:scale(1.10)}}
.hero-dynamic .hero-overlay{background:linear-gradient(90deg,rgba(3,25,52,.97) 0%,rgba(4,31,63,.88) 43%,rgba(4,31,63,.45) 68%,rgba(4,31,63,.16) 100%)}
.hero-dynamic .hero-container{min-height:760px;grid-template-columns:minmax(0,.92fr) minmax(430px,.78fr);gap:60px;padding:70px 0 92px;position:relative;z-index:2}
.hero-dynamic .hero-content{max-width:650px;align-self:center}
.hero-dynamic .hero-kicker{margin-bottom:18px}
.hero-eyebrow-live{font-size:.66rem;letter-spacing:.24em;font-weight:800;color:#F2A51A;margin-bottom:15px;animation:heroFadeUp .8s both}
.hero-eyebrow-live b{color:#8ED9C3;margin:0 7px}
.hero-dynamic h1{font-size:clamp(3.3rem,6vw,6.3rem)!important;line-height:.94!important;letter-spacing:-.055em!important;margin:0 0 18px!important;max-width:680px!important}
.hero-dynamic h1 span{display:inline-block;color:#F2A51A;min-width:5ch;transition:opacity .28s,transform .28s}
.hero-dynamic h1 span.is-changing{opacity:0;transform:translateY(12px)}
.hero-short{font-size:1.02rem!important;line-height:1.4!important;color:#DCE8F5!important;margin:0!important}
.hero-dynamic .hero-actions{margin-top:26px}
.hero-mini-values{display:flex;flex-wrap:wrap;gap:8px;margin-top:27px}
.hero-mini-values span{font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 11px;background:rgba(255,255,255,.06);backdrop-filter:blur(6px)}
.hero-dynamic .hero-visual{max-width:510px;justify-self:end;align-self:center;position:relative}
.hero-dynamic .hero-visual-frame{padding:7px;border-radius:30px;transform:rotate(1.8deg);animation:heroFloat 5.5s ease-in-out infinite;box-shadow:0 38px 90px rgba(0,0,0,.42);background:linear-gradient(135deg,#fff,#F2A51A 42%,#008A67)}
.hero-dynamic .hero-visual-frame img{height:500px;border-radius:24px;object-position:center;filter:saturate(.9)}
@keyframes heroFloat{0%,100%{transform:translateY(0) rotate(1.8deg)}50%{transform:translateY(-9px) rotate(-.2deg)}}
.hero-floating-card{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.24);background:rgba(4,31,63,.9);backdrop-filter:blur(14px);box-shadow:0 20px 50px rgba(0,0,0,.3);color:#fff;border-radius:16px}
.hero-floating-card--top{top:28px;left:-38px;padding:12px 16px;min-width:210px;animation:heroCardFloat 4.5s ease-in-out infinite}
.hero-floating-card--top strong{font-size:1rem;color:#F2A51A}.hero-floating-card--top small{font-size:.62rem;color:#DCE8F5;line-height:1.35;max-width:145px}
.hero-pulse{width:9px;height:9px;border-radius:50%;background:#29C99B;box-shadow:0 0 0 7px rgba(41,201,155,.13),0 0 22px rgba(41,201,155,.75)}
.hero-floating-card--bottom{right:-28px;bottom:38px;padding:13px 18px}.hero-floating-card--bottom b{font-size:2rem;line-height:1;color:#F2A51A}.hero-floating-card--bottom span{font-size:.66rem;line-height:1.35;text-transform:uppercase;letter-spacing:.08em;color:#DCE8F5}
@keyframes heroCardFloat{50%{transform:translateY(-7px)}}
.hero-ring-text{position:absolute;right:-73px;top:50%;transform:rotate(90deg) translateX(50%);transform-origin:center;color:rgba(255,255,255,.55);font-size:.54rem;letter-spacing:.24em;font-weight:800;white-space:nowrap}
.hero-orbit{position:absolute;border-radius:50%;pointer-events:none;z-index:1}.hero-orbit--one{width:360px;height:360px;right:-120px;top:-100px;border:1px solid rgba(242,165,26,.34);box-shadow:0 0 0 32px rgba(242,165,26,.035),0 0 0 64px rgba(242,165,26,.02);animation:orbitSpin 22s linear infinite}.hero-orbit--two{width:220px;height:220px;left:-110px;bottom:30px;border:1px solid rgba(0,201,155,.3);animation:orbitSpin 16s linear infinite reverse}
@keyframes orbitSpin{to{transform:rotate(360deg)}}
.hero-particles i{position:absolute;width:4px;height:4px;border-radius:50%;background:#F2A51A;z-index:1;box-shadow:0 0 14px #F2A51A;animation:particleFloat 5s ease-in-out infinite}.hero-particles i:nth-child(1){right:31%;top:18%;animation-delay:-1s}.hero-particles i:nth-child(2){right:16%;top:37%;animation-delay:-3s}.hero-particles i:nth-child(3){right:42%;bottom:22%;animation-delay:-2s}.hero-particles i:nth-child(4){left:7%;top:28%;animation-delay:-4s;background:#29C99B;box-shadow:0 0 14px #29C99B}.hero-particles i:nth-child(5){left:35%;bottom:17%;animation-delay:-2.5s}.hero-particles i:nth-child(6){right:8%;bottom:18%;animation-delay:-.5s;background:#29C99B;box-shadow:0 0 14px #29C99B}
@keyframes particleFloat{0%,100%{transform:translateY(0);opacity:.35}50%{transform:translateY(-18px) scale(1.5);opacity:1}}
@keyframes heroFadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.hero-dynamic .hero-container{grid-template-columns:1fr;min-height:700px;padding-top:85px}.hero-dynamic .hero-visual{display:block;max-width:390px;width:72%;position:absolute;right:0;bottom:55px;opacity:.32;z-index:-1}.hero-dynamic .hero-visual-frame img{height:420px}.hero-dynamic .hero-content{max-width:720px}.hero-ring-text{display:none}}
@media(max-width:700px){.hero-dynamic{min-height:0}.hero-dynamic .hero-container{min-height:0;padding:88px 0 92px}.hero-dynamic .hero-overlay{background:linear-gradient(180deg,rgba(3,25,52,.98),rgba(4,31,63,.9))}.hero-dynamic h1{font-size:clamp(2.8rem,14vw,4.2rem)!important}.hero-short{font-size:.92rem!important}.hero-dynamic .hero-visual{display:block;position:relative;right:auto;bottom:auto;width:78%;margin:24px auto 0;opacity:1;z-index:2}.hero-dynamic .hero-visual-frame img{height:300px}.hero-floating-card--top{left:-12px;top:18px}.hero-floating-card--bottom{right:-12px;bottom:20px}.hero-mini-values span{font-size:.56rem;padding:7px 9px}.hero-orbit--one{right:-220px}.hero-bottom-line .container{justify-content:center}}
@media(prefers-reduced-motion:reduce){.hero-dynamic .hero-image-layer img,.hero-dynamic .hero-visual-frame,.hero-floating-card,.hero-orbit,.hero-particles i{animation:none!important}}

/* ============================================================
   IPCS — Hero final sizing: one viewport page
   The hero occupies exactly one screen height without excessive vertical space.
   ============================================================ */
.hero-ipcs.hero-dynamic{
  min-height:calc(100svh - 108px);
  height:calc(100svh - 108px);
}
.hero-ipcs.hero-dynamic .hero-container{
  min-height:100%;
  height:100%;
  padding-top:34px;
  padding-bottom:34px;
}
.hero-ipcs.hero-dynamic .hero-visual-frame img{
  max-height:calc(100svh - 190px);
}
@media (max-width:900px){
  .hero-ipcs.hero-dynamic{
    min-height:calc(100svh - 86px);
    height:auto;
  }
  .hero-ipcs.hero-dynamic .hero-container{
    min-height:calc(100svh - 86px);
    height:auto;
    padding-top:48px;
    padding-bottom:48px;
  }
}
@media (max-width:720px){
  .hero-ipcs.hero-dynamic{
    min-height:calc(100svh - 70px);
  }
}

/* ============================================================
   IPCS V7 — Video hero + structured visual + title transitions
   ============================================================ */
.hero-dynamic .hero-video-layer{position:absolute;inset:0;z-index:-3;overflow:hidden;background:#031934}
.hero-dynamic .hero-video-layer video{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:saturate(.82) contrast(1.03)}
.hero-dynamic .hero-image-layer{display:none!important}
.hero-dynamic .hero-overlay{z-index:-2;background:linear-gradient(90deg,rgba(3,25,52,.96) 0%,rgba(4,31,63,.83) 42%,rgba(4,31,63,.46) 72%,rgba(4,31,63,.22) 100%)}
.hero-dynamic .hero-container{position:relative;z-index:2}
.hero-visual--structured{min-height:520px;display:flex!important;align-items:center;justify-content:center}
.hero-visual--structured .hero-visual-frame{width:min(410px,82%);position:relative;padding:7px;border-radius:28px;transform:rotate(1.2deg);overflow:hidden;background:linear-gradient(135deg,#fff 0%,#F2A51A 42%,#008A67 100%);box-shadow:0 35px 85px rgba(0,0,0,.42)}
.hero-visual--structured .hero-visual-frame img{width:100%;height:470px;object-fit:cover;display:block;border-radius:22px;filter:saturate(.94);transform:scale(1.01)}
.hero-visual-shine{position:absolute;inset:7px;border-radius:22px;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.18) 48%,transparent 61%);background-size:220% 100%;animation:heroShine 5s ease-in-out infinite;pointer-events:none}
@keyframes heroShine{0%,55%{background-position:150% 0}75%,100%{background-position:-50% 0}}
.hero-visual-caption{position:absolute;left:22px;right:22px;bottom:22px;padding:13px 15px;border-radius:14px;background:rgba(3,25,52,.82);backdrop-filter:blur(12px);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px}
.hero-visual-caption span{color:#F2A51A;font-size:.68rem;font-weight:800;letter-spacing:.14em}.hero-visual-caption strong{font-size:.72rem;letter-spacing:.04em}
.hero-service-card{position:absolute;z-index:4;display:flex;flex-direction:column;gap:3px;min-width:185px;padding:13px 15px;border:1px solid rgba(255,255,255,.2);border-radius:15px;background:rgba(4,31,63,.9);backdrop-filter:blur(13px);box-shadow:0 18px 42px rgba(0,0,0,.28);color:#fff}
.hero-service-card span{font-size:.58rem;color:#F2A51A;font-weight:800;letter-spacing:.12em}.hero-service-card strong{font-size:.72rem}.hero-service-card small{font-size:.58rem;line-height:1.35;color:#BFD0E1}
.hero-service-card--one{left:0;top:12%;animation:heroCardOne 5s ease-in-out infinite}.hero-service-card--two{right:-12px;top:38%;animation:heroCardTwo 5.6s ease-in-out infinite}.hero-service-card--three{left:8%;bottom:7%;animation:heroCardThree 5.2s ease-in-out infinite}
@keyframes heroCardOne{50%{transform:translate(-4px,-8px)}}@keyframes heroCardTwo{50%{transform:translate(5px,7px)}}@keyframes heroCardThree{50%{transform:translate(-2px,6px)}}
.hero-ring-text{z-index:5}
.hero-dynamic h1 span{will-change:transform,opacity,filter}
.hero-dynamic h1 span.is-changing{opacity:0!important;transform:translateY(18px) scale(.98);filter:blur(7px)}
@media(max-width:1050px){.hero-visual--structured{min-height:470px;width:68%;margin-left:auto}.hero-visual--structured .hero-visual-frame{width:340px}.hero-visual--structured .hero-visual-frame img{height:390px}.hero-service-card--one{left:-20px}.hero-service-card--two{right:-35px}.hero-service-card--three{left:-10px}}
@media(max-width:700px){.hero-dynamic .hero-video-layer video{object-position:58% center}.hero-dynamic .hero-overlay{background:linear-gradient(180deg,rgba(3,25,52,.93),rgba(4,31,63,.87))}.hero-visual--structured{width:100%;min-height:380px;margin-top:10px}.hero-visual--structured .hero-visual-frame{width:78%;transform:rotate(0)}.hero-visual--structured .hero-visual-frame img{height:300px}.hero-service-card{min-width:145px;padding:10px 11px}.hero-service-card strong{font-size:.63rem}.hero-service-card small{font-size:.52rem}.hero-service-card--one{left:0;top:4%}.hero-service-card--two{right:0;top:42%}.hero-service-card--three{left:4%;bottom:1%}.hero-ring-text{display:none}}
@media(prefers-reduced-motion:reduce){.hero-dynamic .hero-video-layer video{animation:none}.hero-visual-shine,.hero-service-card--one,.hero-service-card--two,.hero-service-card--three{animation:none!important}}

/* IPCS V8 — centered video hero */
.hero-centered{min-height:calc(100svh - 104px);height:calc(100svh - 104px);max-height:none;display:flex;align-items:center;position:relative}
.hero-centered .hero-container{width:100%;min-height:100%;display:flex!important;align-items:center;justify-content:center;padding:80px 0 100px!important;position:relative;z-index:2}
.hero-centered .hero-content{width:min(900px,100%);max-width:900px!important;text-align:center!important;align-self:center!important;margin:0 auto!important;display:flex;flex-direction:column;align-items:center}
.hero-centered .hero-kicker{margin-bottom:14px}
.hero-centered .hero-eyebrow-live{margin-bottom:14px}
.hero-centered h1{max-width:900px!important;margin:0 auto 16px!important;font-size:clamp(3.4rem,7vw,7rem)!important;line-height:.92!important}
.hero-centered .hero-short{margin:0 auto!important}
.hero-centered .hero-actions{justify-content:center;margin-top:25px}
.hero-centered .hero-mini-values{justify-content:center;margin-top:23px}
.hero-centered .hero-bottom-line{bottom:0}
.hero-centered .hero-overlay{background:linear-gradient(180deg,rgba(2,22,45,.72) 0%,rgba(3,25,52,.48) 48%,rgba(2,20,42,.78) 100%)}
.hero-centered .hero-video-layer video{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9) contrast(1.03)}
@media(max-width:700px){.hero-centered{min-height:calc(100svh - 88px);height:calc(100svh - 88px)}.hero-centered .hero-container{padding:65px 20px 90px!important}.hero-centered h1{font-size:clamp(2.7rem,13vw,4.5rem)!important}.hero-centered .hero-short{font-size:.92rem!important}.hero-centered .hero-mini-values{gap:6px}.hero-centered .hero-mini-values span{font-size:.55rem;padding:7px 9px}}
