/* ================= inner pages (services / industries) ================= */
.c-violet.ph-icon img,.c-violet .svc-ico img{filter:invert(24%) sepia(95%) saturate(4500%) hue-rotate(255deg) brightness(.95)}
.page-hero{position:relative;padding:clamp(120px,10vw,150px) 0 clamp(44px,5vw,68px);background:linear-gradient(100deg,#fffaf6 0%,#fdeadd 55%,#f6dfd0 100%);overflow:hidden}
.page-hero h1{font-size:clamp(34px,4.2vw,58px);line-height:1.04;letter-spacing:-.045em;margin:6px 0 18px;max-width:860px}
.page-hero .lead{max-width:720px}
.page-hero .hero-cta{margin-top:26px}
.ind-hero::before{content:"";position:absolute;inset:0;background:var(--bg) right center/cover;opacity:.22;-webkit-mask-image:linear-gradient(to right,transparent 35%,#000 90%);mask-image:linear-gradient(to right,transparent 35%,#000 90%)}
.ph-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);gap:clamp(24px,4vw,64px);align-items:center}
.crumbs{font-size:13px;color:#5b6579;margin-bottom:20px;display:flex;flex-wrap:wrap;gap:6px}
.crumbs a:hover{color:var(--orange)}
.crumbs i{font-style:normal;opacity:.5}
.crumbs span{color:var(--ink);font-weight:600}
.ph-icon{display:grid;place-items:center;width:78px;height:78px;border-radius:20px;border:1px solid;margin-bottom:18px;color:var(--c)}
.ph-icon img{height:42px;width:auto}
.ph-icon svg.big{width:42px;height:42px}
.ph-icon .soc{display:grid;grid-template-columns:1fr 1fr;gap:3px}
.ph-icon .amz-a{width:34px;height:30px;font-size:44px}
.pill-ico{width:15px;height:15px;color:var(--orange)}
.ph-card{background:rgba(255,255,255,.92);border:1px solid #f0e4db;border-radius:20px;padding:26px 28px;box-shadow:0 18px 40px rgba(70,50,40,.1)}
.ph-card h2{font-size:22px;margin-bottom:6px}
.ph-card .sub{margin:0 0 16px;font-size:14.5px}
.tick{display:grid;gap:11px}
.tick li{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;font-weight:500;color:#2a3144;line-height:1.4}
.tick svg{flex:none;width:20px;height:20px;padding:4px;border-radius:50%;background:var(--orange);color:#fff;margin-top:1px}
.tick.big li{font-size:16px}
.sec{padding:clamp(44px,5.5vw,76px) 0}
.sec.alt{background:#f7f9fe}
.sec-head{max-width:760px;margin-bottom:34px}
.sec-head h2{margin-top:14px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px)}
.two-col h2{margin:14px 0 22px}
.cards3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cards4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.fcard{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 24px;box-shadow:0 12px 28px rgba(30,40,80,.05);transition:transform .25s,box-shadow .25s}
.fcard:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(30,40,80,.1)}
.fnum{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#fff1e9;color:var(--orange);font:800 14px var(--head);margin-bottom:14px}
.fcard h3{font-size:19px;letter-spacing:-.03em;margin-bottom:8px}
.fcard p{font-size:14.5px;line-height:1.6;color:#505a6e}
.flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.flow li{position:relative;padding:24px 22px;background:#fff;border-radius:18px;border:1px solid var(--line)}
.flow li:not(:last-child)::after{content:"";position:absolute;right:-17px;top:42px;width:9px;height:9px;border-top:2.5px solid #1b2233;border-right:2.5px solid #1b2233;transform:rotate(45deg)}
.snum{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--orange);color:#fff;font:800 16px var(--head);margin-bottom:14px}
.flow h3{font-size:19px;margin-bottom:8px;letter-spacing:-.03em}
.flow p{font-size:14.5px;line-height:1.55;color:#505a6e}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips span{padding:9px 16px;border-radius:999px;background:#fff;border:1px solid #e3e6ef;font-size:14px;font-weight:600;box-shadow:0 4px 10px rgba(30,40,80,.04)}
.minis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.mini{position:relative;display:block;aspect-ratio:1/.7;border-radius:14px;overflow:hidden;background:#222;box-shadow:0 8px 18px rgba(20,25,45,.12)}
.mini img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.mini:hover img{transform:scale(1.08)}
.mini::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,8,16,.85),rgba(4,8,16,.05) 65%)}
.mini span{position:absolute;z-index:2;left:14px;right:10px;bottom:12px;color:#fff;font-weight:700;font-size:15px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:12px;padding:0 20px}
.faq summary{cursor:pointer;list-style:none;padding:18px 28px 18px 0;font-weight:700;font-size:16px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:24px;font-weight:500;color:var(--orange)}
.faq details[open] summary::after{content:"\2212"}
.faq details p{padding:0 0 18px;font-size:15px;line-height:1.65;color:#505a6e}
.faq-col h2{margin-bottom:18px}
.other-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.other-links p{width:100%;font-size:13px;font-weight:700;color:#5b6579;margin-bottom:2px}
.other-links a{padding:7px 14px;border-radius:999px;background:#fff;border:1px solid #e3e6ef;font-size:13px;font-weight:600}
.other-links a:hover{border-color:var(--orange);color:var(--orange)}
/* industry: service map */
.map{display:grid;gap:12px}
.map-row{display:grid;grid-template-columns:130px 230px 1fr 24px;gap:18px;align-items:center;padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:16px;transition:transform .2s,box-shadow .2s,border-color .2s}
.map-row:hover{transform:translateX(4px);box-shadow:0 12px 26px rgba(30,40,80,.08);border-color:#ffc9ad}
.map-row strong{font-family:var(--head);font-size:18px;letter-spacing:-.03em}
.map-row .why{font-size:14.5px;line-height:1.5;color:#505a6e}
.map-row>svg{color:var(--orange);font-size:20px}
.badge{display:inline-block;justify-self:start;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700;background:#ffe8dc;color:#d84a00}
.map-row.support .badge{background:#e3efff;color:#0f62c9}
.map-row.optional .badge{background:#eef0f4;color:#5b6579}
.map-row.optional{opacity:.82}
/* roadmap */
.phases{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.phase{position:relative;background:#fff;border-radius:18px;padding:24px 22px;border:1px solid var(--line);border-top:5px solid var(--orange);box-shadow:0 12px 28px rgba(30,40,80,.05)}
.phase.p2{border-top-color:#7432ee}.phase.p3{border-top-color:#0b8cee}.phase.p4{border-top-color:#0aa96a}
.phase.p2 .tick svg{background:#7432ee}.phase.p3 .tick svg{background:#0b8cee}.phase.p4 .tick svg{background:#0aa96a}
.days{display:inline-block;padding:4px 12px;border-radius:999px;background:#f3f4f8;font-size:12px;font-weight:700;color:#4a5468;margin-bottom:12px}
.phase h3{font-size:22px;margin-bottom:14px;letter-spacing:-.03em}
.phase .tick li{font-size:14px}
/* cta block + footer */
.pg-cta{padding:10px 0 clamp(44px,5vw,70px)}
.pg-cta-box{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:clamp(28px,4vw,48px);border-radius:24px;background:radial-gradient(circle at 100% 100%,rgba(255,90,10,.55),transparent 45%),#06090f;color:#fff}
.pg-cta-box h2{font-size:clamp(24px,3vw,38px);color:#fff}
.pg-cta-box p{margin-top:10px;color:#d6dbe6}
.pg-cta-box .btn{flex:none}
.site-footer{background:#05080e;color:#c9cfdb;padding:56px 0 0}
.foot-grid{display:grid;grid-template-columns:1.2fr 1fr 1.4fr;gap:40px}
.foot-brand{font:800 26px var(--head);color:#fff;letter-spacing:-.04em;margin-bottom:10px}
.site-footer p{color:#aab2c2;font-size:14px;line-height:1.6}
.site-footer h4{color:#fff;font-size:15px;margin:0 0 14px}
.site-footer ul{display:grid;gap:9px;font-size:14px}
.site-footer ul.two{grid-template-columns:1fr 1fr}
.site-footer a:hover{color:var(--orange)}
.foot-bar{display:flex;justify-content:space-between;gap:20px;margin-top:40px;padding:20px 0;border-top:1px solid #1b2230;font-size:13px;color:#8d96a8}
body.inner .sec .svc-grid{margin-top:0}
@media (max-width:1180px){
  .cards4,.phases{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flow li::after{display:none}
  .minis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .map-row{grid-template-columns:120px 200px 1fr 24px}
}
@media (max-width:960px){
  .ph-grid,.two-col,.cards3{grid-template-columns:1fr}
  .map-row{grid-template-columns:1fr;gap:6px}
  .map-row>svg{display:none}
  .pg-cta-box{flex-direction:column;align-items:flex-start}
  .foot-grid{grid-template-columns:1fr 1fr}
  .foot-grid>div:first-child{grid-column:1/-1}
}
@media (max-width:620px){
  .cards4,.phases,.flow{grid-template-columns:1fr}
  .minis{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:1fr}
  .foot-bar{flex-direction:column;gap:6px}
  .page-hero .btn-lg,.page-hero .btn-video{width:100%;justify-content:center}
}

/* case studies */
.case-facts img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px;margin-bottom:16px}
.case-facts dl{display:grid;gap:10px}
.case-facts dl div{display:flex;justify-content:space-between;gap:16px;font-size:14.5px;padding-bottom:10px;border-bottom:1px solid #f0e4db}
.case-facts dl div:last-child{border-bottom:0;padding-bottom:0}
.case-facts dt{color:#5b6579}
.case-facts dd{margin:0;font-weight:600;text-align:right}
.case-facts dd a{color:var(--orange)}
.stats-big{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.stat-big{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px 26px;box-shadow:0 14px 32px rgba(30,40,80,.06);text-align:center}
.stat-big strong{display:block;font:800 clamp(38px,4.4vw,60px)/1 var(--head);letter-spacing:-.05em;color:var(--orange)}
.stat-big span{display:block;margin-top:10px;font-weight:600;color:#4a5468;font-size:15px}
.fine{margin-top:18px;font-size:13px;color:#7a8497}
.big-p{font-size:17px!important;line-height:1.65;color:#2a3144!important;margin:0!important}
.case-list{display:grid;gap:26px}
.case-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 16px 40px rgba(25,35,70,.09);transition:transform .25s,box-shadow .25s}
.case-row:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(25,35,70,.15)}
.case-row img{width:100%;height:100%;min-height:260px;object-fit:cover}
.case-row>div{padding:clamp(22px,3vw,40px);display:flex;flex-direction:column}
.case-row h3{font-size:clamp(24px,2.4vw,34px);margin:10px 0}
.case-row .where{font-size:13.5px;font-weight:600;color:#2a3144}
.case-row .desc{font-size:15px;line-height:1.6;color:#505a6e}
.case-row .results{margin-top:22px}
.read{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-weight:700;color:var(--orange)}
.case-mini{display:block}
@media (max-width:960px){.case-row{grid-template-columns:1fr}.case-row img{min-height:200px;max-height:260px}.stats-big{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.stats-big{grid-template-columns:1fr 1fr;gap:12px}.stat-big{padding:22px 14px}}

/* Inner page dark theme */
body.dark-theme .page-hero{background:radial-gradient(circle at 80% 20%,#29415e 0,transparent 34%),linear-gradient(110deg,#0c1421,#142238)}
body.dark-theme .crumbs,body.dark-theme .other-links p,body.dark-theme .case-facts dt,body.dark-theme .fine{color:#aebcd0}
body.dark-theme .crumbs span{color:#f1f5fb}
body.dark-theme .ph-card,body.dark-theme .fcard,body.dark-theme .flow li,body.dark-theme .faq details,body.dark-theme .map-row,body.dark-theme .phase,body.dark-theme .stat-big,body.dark-theme .case-row{background:#152033;border-color:#34435a;box-shadow:0 14px 32px rgba(0,0,0,.2)}
body.dark-theme .sec.alt{background:#101a29}
body.dark-theme .tick li,body.dark-theme .fcard p,body.dark-theme .flow p,body.dark-theme .faq details p,body.dark-theme .map-row .why,body.dark-theme .case-row .where,body.dark-theme .case-row .desc,body.dark-theme .big-p{color:#bdc9da!important}
body.dark-theme .chips span,body.dark-theme .other-links a{background:#172131;border-color:#3a4a60;color:#e6edf7;box-shadow:none}
body.dark-theme .days{background:#202d40;color:#cbd6e5}
body.dark-theme .badge{background:#3b2a20;color:#ffc6a4}
body.dark-theme .map-row.support .badge{background:#1b3657;color:#a9d1ff}
body.dark-theme .map-row.optional .badge{background:#2b3544;color:#c2cbda}
