/* ==========================================================
   CREATIVE CRAFT - website styles (v2)
   Layout: a design-grid paper background, big editorial type,
   one electric blue for action, ink for weight.
   ========================================================== */
/* ---------- fonts (self-hosted, in assets/fonts) ---------- */
@font-face{font-family:"Unbounded";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/unbounded-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Unbounded";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/unbounded-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Unbounded";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/unbounded-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/instrument-serif-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/instrument-serif-latin-400-italic.woff2") format("woff2")}
@font-face{font-family:"Hanken Grotesk";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/hanken-grotesk-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Hanken Grotesk";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/hanken-grotesk-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Hanken Grotesk";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/hanken-grotesk-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Hanken Grotesk";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/hanken-grotesk-latin-700-normal.woff2") format("woff2")}

:root{
  /* colours */
  --ink:#121826;          /* dark blue: footer, text, dark buttons, active menu */
  --ink-2:#1c2436;
  --paper:#f4f5f8;        /* page background */
  --white:#ffffff;
  --blue:#1b2f8f;         /* main action colour (navy) */
  --blue-deep:#12206a;
  --saffron:#ffb21e;      /* small highlights */
  --muted:#5b6072;
  --line:rgba(13,15,26,.12);

  /* type */
  --f-display:"Unbounded","Arial Black",system-ui,sans-serif;
  --f-serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --f-body:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;

  --radius:22px;
  --ease:cubic-bezier(.22,.8,.26,1);
  --wrap:1320px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html,body{overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;font-family:var(--f-display);font-weight:600;letter-spacing:-.03em;line-height:1.05}
p{margin:0}
em{font-family:var(--f-serif);font-style:italic;font-weight:400;letter-spacing:-.01em}
::selection{background:var(--blue);color:#fff}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 clamp(18px,4vw,40px)}
.kicker{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);display:inline-flex;align-items:center;gap:10px}
.kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.kicker--light{color:var(--saffron)}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;padding:0 24px;border-radius:50px;border:1.5px solid transparent;font-family:var(--f-body);font-size:15.5px;font-weight:600;cursor:pointer;white-space:nowrap;overflow:hidden;isolation:isolate;transition:color .35s var(--ease),border-color .35s}
.btn--lg{height:60px;padding:0 30px;font-size:16.5px}
.btn--block{width:100%}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;transform:translateY(101%);transition:transform .45s var(--ease)}
.btn:hover::before{transform:none}
.btn i{font-size:13px;transition:transform .35s var(--ease)}
.btn:hover i{transform:translateX(4px) rotate(-45deg)}
.btn--ink{background:var(--ink);color:#fff}
.btn--ink::before{background:var(--blue)}
.btn--blue{background:var(--blue);color:#fff}
.btn--blue::before{background:var(--ink)}
.btn--line{border-color:var(--ink);color:var(--ink)}
.btn--line::before{background:var(--ink)}
.btn--line:hover{color:#fff}
.btn.is-loading{pointer-events:none;opacity:.7}

/* ---------- custom cursor (mouse only) ---------- */
.cursor{display:none}
@media (hover:hover) and (pointer:fine){
  .cursor{display:block;position:fixed;inset:0;pointer-events:none;z-index:9999;transition:opacity .3s}
  .cursor__dot,.cursor__ring{position:fixed;left:0;top:0;border-radius:50%;transform:translate(-50%,-50%);will-change:transform}
  .cursor__dot{width:6px;height:6px;background:var(--blue)}
  .cursor__ring{width:38px;height:38px;border:1.5px solid rgba(27,47,143,.45);transition:width .3s var(--ease),height .3s var(--ease),background .3s,border-color .3s}
  .cursor.is-link .cursor__ring{width:70px;height:70px;background:rgba(27,47,143,.1);border-color:transparent}
  .cursor.is-hidden{opacity:0}
}

/* ---------- header ---------- */
.header{position:fixed;left:0;right:0;top:0;z-index:100;transition:transform .5s var(--ease),background .4s,box-shadow .4s}
.header__in{display:flex;align-items:center;gap:32px;height:108px;transition:height .4s var(--ease)}
.logo img{height:80px;width:auto;transition:height .4s var(--ease)}
.nav{display:flex;gap:4px;margin:0 auto}
.nav__link{padding:10px 16px;border-radius:40px;font-weight:600;font-size:15.5px;transition:background .3s}
.nav__link:hover{background:rgba(13,15,26,.06)}
.nav__link.is-active{background:var(--ink);color:#fff}
.roll{display:inline-block;position:relative;overflow:hidden;vertical-align:top;line-height:1.3}
.roll>span{display:inline-block;transition:transform .45s var(--ease)}
.roll::after{content:attr(data-text);position:absolute;left:0;top:100%;transition:transform .45s var(--ease)}
.nav__link:hover .roll>span,.nav__link:hover .roll::after{transform:translateY(-100%)}
.header__actions{display:flex;align-items:center;gap:18px;margin-left:auto}
@media (min-width:1181px){.header__in{display:grid;grid-template-columns:1fr auto 1fr}.header__in .logo{justify-self:start}.nav{margin:0;gap:10px}.header__actions{justify-self:end}}
.header__phone{font-weight:600;font-size:15px;display:inline-flex;gap:8px;align-items:center}
.header__phone i{color:var(--blue);font-size:13px}
.header.is-scrolled{background:rgba(244,245,248,.82);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);box-shadow:0 1px 0 var(--line)}
.header.is-scrolled .header__in{height:84px}
.header.is-scrolled .logo img{height:60px}
.header.is-hidden{transform:translateY(-100%)}
.burger{display:none;width:50px;height:50px;border-radius:50%;border:0;background:var(--ink);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:6px}
.burger span{width:20px;height:2px;border-radius:2px;background:#fff;transition:transform .4s var(--ease)}
.menu-open .burger span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-open .burger span:last-child{transform:translateY(-4px) rotate(-45deg)}

/* full-screen menu (mobile / tablet) */
.menu{position:fixed;inset:0;z-index:90;background:var(--ink);color:#fff;clip-path:circle(0% at calc(100% - 50px) 48px);transition:clip-path .8s var(--ease);visibility:hidden}
.menu-open .menu{clip-path:circle(150% at calc(100% - 50px) 48px);visibility:visible}
.menu-open .header .logo img{filter:brightness(0) invert(1)}
.menu-open .header{background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.menu-open .burger{background:var(--blue)}
.menu__in{display:flex;flex-direction:column;justify-content:space-between;min-height:100%;padding-top:120px;padding-bottom:40px;height:100%}
.menu__nav{display:flex;flex-direction:column}
.menu__link{display:flex;align-items:baseline;gap:16px;font-family:var(--f-display);font-size:clamp(34px,9vw,64px);font-weight:600;letter-spacing:-.03em;line-height:1.25;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.1);opacity:0;transform:translateY(40px);transition:opacity .5s,transform .6s var(--ease),color .3s}
.menu__link small{font-family:var(--f-body);font-size:13px;color:var(--saffron);letter-spacing:.1em}
.menu__link:hover{color:var(--saffron)}
.menu-open .menu__link{opacity:1;transform:none}
.menu-open .menu__link:nth-child(1){transition-delay:.25s}
.menu-open .menu__link:nth-child(2){transition-delay:.31s}
.menu-open .menu__link:nth-child(3){transition-delay:.37s}
.menu-open .menu__link:nth-child(4){transition-delay:.43s}
.menu-open .menu__link:nth-child(5){transition-delay:.49s}
.menu__foot{display:flex;flex-direction:column;gap:6px;color:rgba(255,255,255,.7);font-size:16px;margin-top:40px}
.menu__social{display:flex;gap:10px;margin-top:14px}
.menu__social a{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;padding-top:130px;display:flex;flex-direction:column;overflow:hidden}
.hero{background:linear-gradient(180deg,#eef2fa 0%,#e5ebf7 100%)}
.hero__bg{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.hero__arc{position:absolute;border-radius:50%}
.hero__arc--tl{width:clamp(460px,44vw,800px);aspect-ratio:1;left:-16%;top:-42%;background:linear-gradient(140deg,#c3cfea 0%,#d3dcf1 55%,rgba(229,235,247,0) 100%)}
.hero__arc--ring{width:clamp(380px,36vw,660px);aspect-ratio:1;left:-22%;top:40%;border:1.5px solid rgba(27,47,143,.16)}
.hero__arc--br{width:clamp(460px,44vw,820px);aspect-ratio:1;right:-18%;bottom:-50%;background:linear-gradient(320deg,#b8c6e6 0%,#cbd6ee 55%,rgba(229,235,247,0) 100%)}
.hero__arc--br2{width:clamp(300px,28vw,520px);aspect-ratio:1;right:-10%;bottom:-30%;background:linear-gradient(320deg,rgba(165,182,224,.8),rgba(229,235,247,0) 75%)}
.hero__arc--ring2{width:clamp(560px,52vw,940px);aspect-ratio:1;right:-34%;top:-12%;border:1.5px solid rgba(255,255,255,.85);animation:drift 18s ease-in-out infinite}
.hero__dots{position:absolute;background-image:radial-gradient(circle,#8e9cc0 1.8px,transparent 2.2px);background-size:24px 24px}
.hero__dots--r{right:28px;top:20%;width:140px;height:110px}
.hero__dots--l{left:16px;bottom:10%;width:110px;height:150px}
.hero__in{z-index:1;padding-bottom:70px}
@keyframes drift{0%,100%{transform:translate(0,0)}50%{transform:translate(-40px,30px)}}
.hero__in{position:relative;flex:1;display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(30px,3.4vw,56px);align-items:center;padding-top:30px;padding-bottom:30px}
.chip{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 10px;border-radius:40px;background:var(--white);border:1px solid var(--line);font-size:14px;font-weight:600;box-shadow:0 6px 20px -12px rgba(13,15,26,.25);transition:transform .35s var(--ease)}
.chip:hover{transform:translateY(-2px)}
.chip img{width:26px;height:26px;object-fit:contain;border-radius:6px}
.chip__sep{width:4px;height:4px;border-radius:50%;background:var(--muted)}
.hero__kicker{display:inline-flex;align-items:center;gap:12px;padding:10px 20px;border-radius:40px;background:rgba(31,99,242,.08);color:#1f63f2;font-size:clamp(13px,1vw,16px);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 26px}
.hero__kicker span{width:16px;height:2px;background:currentColor;border-radius:2px}
.hero__title{font-family:var(--f-body);font-weight:800;font-size:clamp(40px,4.6vw,76px);line-height:1;letter-spacing:-.04em;color:#0b1638;margin:0 0 26px}
.hero__title em{font-family:inherit;font-weight:inherit;font-style:normal;letter-spacing:inherit;color:#1f63f2}
.hero__lead{max-width:520px;font-size:clamp(16px,1.2vw,18.5px);line-height:1.6;color:#5a6075}
.hero__actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:38px}
.hero__btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:17px 32px;border-radius:50px;font-weight:700;font-size:16px;transition:background .3s,color .3s,border-color .3s,translate .4s var(--ease),box-shadow .4s}
.hero__btn i{font-size:14px;transition:transform .35s var(--ease)}
.hero__btn:hover i{transform:translateX(5px)}
.hero__btn--fill{background:#0a5cff;color:#fff;box-shadow:0 18px 34px -14px rgba(10,92,255,.7)}
.hero__btn--fill:hover{background:#0047d6;box-shadow:0 22px 40px -14px rgba(10,92,255,.85)}
.hero__btn--line{background:rgba(255,255,255,.6);color:#0b1638;border:1.5px solid #c3cadb}
.hero__btn--line:hover{border-color:#0a5cff;color:#0a5cff;translate:0 -2px}

/* four solution cards (tilted 2 x 2 grid) */
.hsol{position:relative;margin-right:clamp(-60px,-3vw,0px)}
.hsol__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}
.hsol__cell{transform:perspective(1400px) rotateY(-9deg) rotateX(4deg) rotate(5.5deg);animation:hfloat 7s ease-in-out infinite}
.hsol__cell--2{animation-delay:-2s;margin-top:8px}
.hsol__cell--3{animation-delay:-4s;margin-top:-6px}
.hsol__cell--4{animation-delay:-5.5s}
@keyframes hfloat{0%,100%{translate:0 0}50%{translate:0 -10px}}
.hcard{--glow:rgba(31,99,242,.55);position:relative;display:flex;align-items:flex-start;aspect-ratio:1.62;min-height:230px;border-radius:22px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#141a3a,#0a0f24);box-shadow:0 0 0 1px rgba(255,255,255,.08) inset,0 28px 50px -24px rgba(10,20,60,.6),0 0 46px -14px var(--glow);transition:translate .5s var(--ease),box-shadow .5s var(--ease)}
.hcard--software{--glow:rgba(255,40,60,.6);background:linear-gradient(135deg,#2a0f1e,#0c1236)}
.hcard--media{--glow:rgba(255,140,60,.35);background:linear-gradient(135deg,#1c130e,#0f0b0a)}
.hcard--web{--glow:rgba(31,99,242,.7);background:linear-gradient(135deg,#0c1d5a,#081032)}
.hcard--hardware{--glow:rgba(140,160,190,.4);background:linear-gradient(135deg,#4a525c,#2b3138)}
.hcard__img{position:absolute;inset:0;background-size:cover;background-position:center;transition:scale 1s var(--ease)}
.hcard__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,30,.72) 0%,rgba(8,12,30,.5) 32%,rgba(8,12,30,0) 58%)}
.hcard--hardware .hcard__shade{background:linear-gradient(90deg,rgba(40,46,54,.75) 0%,rgba(40,46,54,.5) 34%,rgba(40,46,54,0) 60%)}
.hcard--media .hcard__shade{background:linear-gradient(90deg,rgba(18,12,8,.72) 0%,rgba(18,12,8,.48) 34%,rgba(18,12,8,0) 60%)}
.hcard__body{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;padding:clamp(16px,1.5vw,24px);max-width:66%}
.hcard__icon{display:grid;place-items:center;width:clamp(40px,3vw,54px);height:clamp(40px,3vw,54px);border-radius:14px;font-size:clamp(17px,1.3vw,23px);color:#fff;margin-bottom:clamp(12px,1.1vw,18px);background:linear-gradient(140deg,#ff4a4a,#e0101e);box-shadow:0 12px 26px -10px rgba(255,40,40,.8)}
.hcard--media .hcard__icon{background:linear-gradient(140deg,#ff5a7a,#f0174d);box-shadow:0 12px 26px -10px rgba(240,23,77,.8)}
.hcard--web .hcard__icon{background:linear-gradient(140deg,#2f7bff,#0a4fe0);box-shadow:0 12px 26px -10px rgba(10,79,224,.9)}
.hcard--hardware .hcard__icon{background:linear-gradient(140deg,#34e07a,#14b85a);box-shadow:0 12px 26px -10px rgba(20,184,90,.8)}
.hcard__title{font-family:var(--f-body);font-weight:800;font-size:clamp(17px,1.5vw,25px);line-height:1.05;letter-spacing:-.02em;margin-bottom:10px}
.hcard__text{font-size:clamp(11.5px,.8vw,13.5px);line-height:1.45;color:rgba(255,255,255,.86)}
.hcard__go{position:absolute;right:clamp(12px,1.2vw,20px);bottom:clamp(12px,1.2vw,20px);z-index:1;display:grid;place-items:center;width:clamp(36px,2.8vw,46px);height:clamp(36px,2.8vw,46px);border-radius:50%;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:14px;transition:background .35s,border-color .35s}
.hcard__go i{transform:rotate(-45deg);transition:transform .45s var(--ease)}
.hcard:hover{translate:0 -8px;box-shadow:0 0 0 1px rgba(255,255,255,.14) inset,0 40px 70px -26px rgba(10,20,60,.7),0 0 60px -10px var(--glow)}
.hcard:hover .hcard__img{scale:1.07}
.hcard:hover .hcard__go{background:#0a5cff;border-color:#0a5cff}
.hcard:hover .hcard__go i{transform:rotate(0deg)}
.hsol__cell:hover{animation-play-state:paused;z-index:2}

/* ---------- technology partners ---------- */
.partners{position:relative;overflow:hidden;padding:clamp(70px,8vw,110px) 0 clamp(80px,9vw,120px);background:linear-gradient(180deg,#f7f8fb 0%,#f2f4f9 100%)}
.partners__waves{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.partners__waves path{fill:var(--blue)}
.partners__waves .w1{opacity:.14}
.partners__waves .w2{opacity:.1}
.partners__waves .w3{opacity:.12}
.partners__waves .w4{opacity:.2;fill:#5a6f9c}
.partners__waves .w5{opacity:.05}
.partners__in{position:relative}
.partners__head{text-align:center;max-width:900px;margin:0 auto 48px}
.partners__kicker{display:inline-flex;align-items:center;gap:22px;font-size:13.5px;font-weight:600;letter-spacing:.34em;text-transform:uppercase;color:#6b7185;margin-bottom:18px}
.partners__kicker span{width:64px;height:2px;background:#9aa0b0}
.partners__kicker span:first-child{background:var(--blue)}
.partners__title{font-family:var(--f-body);font-weight:800;font-size:clamp(32px,4vw,58px);letter-spacing:-.035em;line-height:1.05;margin-bottom:18px}
.partners__title em{font-family:inherit;font-style:normal;font-weight:800;letter-spacing:inherit;color:var(--blue)}
.partners__text{font-size:clamp(16px,1.4vw,20px);color:#5d6478;line-height:1.5}
.partners__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pcard{--accent:var(--blue);position:relative;display:flex;flex-direction:column;padding:28px 24px 26px;border-radius:18px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.9);box-shadow:0 20px 50px -28px rgba(16,24,64,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden;isolation:isolate;transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.pcard::after{content:"";position:absolute;right:-30%;bottom:-40%;width:90%;height:90%;z-index:-1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,transparent),transparent 70%);transition:transform .7s var(--ease)}
.pcard:hover{translate:0 -8px;box-shadow:0 34px 60px -28px color-mix(in srgb,var(--accent) 45%,transparent)}
.pcard:hover::after{transform:scale(1.25)}
.pcard__top{display:flex;align-items:center;gap:14px}
.pcard__logo{width:74px;height:74px;flex-shrink:0;border-radius:16px;background:#fff;box-shadow:0 10px 24px -14px rgba(16,24,40,.35);display:flex;align-items:center;justify-content:center;transition:transform .6s var(--ease)}
.pcard:hover .pcard__logo{transform:rotate(-6deg) scale(1.05)}
.pcard__logo img{max-width:52px;max-height:52px;object-fit:contain}
.pcard__logo i{font-size:42px}
.pcard__logo .fa-redhat{color:#ee0000}
.pcard__logo .fa-microsoft{background:linear-gradient(#f25022,#f25022) 0 0/50% 50% no-repeat,linear-gradient(#7fba00,#7fba00) 100% 0/50% 50% no-repeat,linear-gradient(#00a4ef,#00a4ef) 0 100%/50% 50% no-repeat,linear-gradient(#ffb900,#ffb900) 100% 100%/50% 50% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent}
.pcard__logo b{font-family:var(--f-display);font-size:44px;background:linear-gradient(135deg,#2bb24c,#0696d7 55%,#1a3f9c);-webkit-background-clip:text;background-clip:text;color:transparent}
.pcard__name{display:flex;flex-direction:column;min-width:0}
.pcard__brand{font-family:var(--f-body);font-weight:700;font-size:clamp(20px,1.7vw,26px);line-height:1.1;letter-spacing:-.02em;color:#14161f}
.pcard__brand--autodesk{text-transform:uppercase;letter-spacing:.01em}
.pcard__name span{font-size:14px;color:#2b2f3c;white-space:nowrap}
.pcard__line{display:block;width:34px;height:3px;border-radius:3px;background:var(--accent);margin:26px 0 20px;transition:width .5s var(--ease)}
.pcard:hover .pcard__line{width:70px}
.pcard__text{font-size:16.5px;line-height:1.5;color:#4d5366;max-width:250px;margin-bottom:22px}
.pcard__more{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:var(--accent)}
.pcard__more i{font-size:14px;transition:transform .35s var(--ease)}
.pcard:hover .pcard__more i{transform:translateX(5px)}
.pcard__go{position:absolute;right:22px;bottom:22px;width:52px;height:52px;border-radius:50%;background:#fff;color:var(--accent);box-shadow:0 12px 26px -12px rgba(16,24,40,.35);display:flex;align-items:center;justify-content:center;font-size:18px;transition:background .35s,color .35s,transform .45s var(--ease)}
.pcard:hover .pcard__go{background:var(--accent);color:#fff;transform:rotate(-45deg)}
.partners__more{text-align:center;margin-top:44px}

/* ---------- our approach ---------- */
.approach{--c-blue:#1b2f8f;--c-orange:#f47c1c;--c-purple:#6a35e0;--c-green:#1fa45a;position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:linear-gradient(180deg,#e3e9f6 0%,#dde4f3 100%)}
.approach>.wrap{position:relative;z-index:1}
.approach__bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.approach__curve{position:absolute;border-radius:50%}
.approach__curve--tl{width:clamp(420px,42vw,760px);aspect-ratio:1;left:-14%;top:-38%;background:linear-gradient(135deg,#c3cfea 0%,#d0daef 55%,rgba(221,228,243,0) 100%)}
.approach__curve--br{width:clamp(460px,46vw,820px);aspect-ratio:1;right:-18%;bottom:-48%;background:linear-gradient(315deg,#b8c6e6 0%,#c9d4ec 55%,rgba(221,228,243,0) 100%)}
.approach__curve--br2{width:clamp(300px,28vw,520px);aspect-ratio:1;right:-10%;bottom:-30%;background:linear-gradient(315deg,rgba(165,182,224,.9),rgba(221,228,243,0) 75%)}
.approach__dots{position:absolute;background-image:radial-gradient(circle,#8e9cc0 1.8px,transparent 2.2px);background-size:22px 22px}
.approach__dots--r{right:28px;top:26%;width:120px;height:110px}
.approach__dots--l{left:0;bottom:6%;width:110px;height:180px}
.approach__head{text-align:center;max-width:980px;margin:0 auto clamp(40px,5vw,60px)}
.approach__kicker{display:inline-flex;align-items:center;gap:18px;margin-bottom:22px}
.approach__line{width:48px;height:1.5px;background:#c9cedb}
.approach__pill{display:inline-flex;align-items:center;gap:10px;padding:9px 20px;border-radius:40px;background:#fff;box-shadow:0 8px 20px -12px rgba(27,47,143,.35);color:var(--blue);font-weight:700;font-size:16px}
.approach__title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.9vw,58px);letter-spacing:-.035em;line-height:1.08;margin-bottom:16px;text-wrap:balance}
.approach__title em{font-family:inherit;font-style:normal;font-weight:800;letter-spacing:inherit;color:var(--blue)}
.approach__text{font-size:clamp(16px,1.35vw,19.5px);color:#5d6478;max-width:820px;margin:0 auto;line-height:1.6}

.steps{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1240px;margin:0 auto clamp(40px,5vw,60px)}
.steps__track{position:absolute;top:44px;left:12.5%;right:12.5%;height:2px;background:#e8ebf2;z-index:0}
.steps__fill{position:absolute;inset:0;background:linear-gradient(90deg,var(--c-blue),var(--c-orange) 33%,var(--c-purple) 66%,var(--c-green));transform-origin:left}
.step{--c:var(--c-blue);position:relative;z-index:1;text-align:center;padding:0 6px}
.step--orange{--c:var(--c-orange)}
.step--purple{--c:var(--c-purple)}
.step--green{--c:var(--c-green)}
.step__dot{position:relative;width:88px;height:88px;margin:0 auto 26px;border-radius:50%;background:color-mix(in srgb,var(--c) 12%,#fff);display:flex;align-items:center;justify-content:center}
.step__ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from -90deg,color-mix(in srgb,var(--c) 45%,transparent) 0 25%,transparent 25%);-webkit-mask:radial-gradient(circle,transparent 40px,#000 41px);mask:radial-gradient(circle,transparent 40px,#000 41px);animation:ringSpin 6s linear infinite}
.step:nth-child(3) .step__ring{animation-delay:-1.5s}
.step:nth-child(4) .step__ring{animation-delay:-3s}
.step:nth-child(5) .step__ring{animation-delay:-4.5s}
@keyframes ringSpin{to{transform:rotate(360deg)}}
.step__num{position:relative;width:70px;height:70px;border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--c) 80%,#fff),var(--c));color:#fff;font-family:var(--f-body);font-weight:800;font-size:25px;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 26px -10px color-mix(in srgb,var(--c) 70%,transparent);transition:transform .45s var(--ease)}
.step:hover .step__num{transform:scale(1.1)}
.step__title{font-family:var(--f-body);font-weight:700;font-size:20px;letter-spacing:-.01em;margin-bottom:12px}
.step__text{font-size:15.5px;color:#5d6478;line-height:1.65;max-width:260px;margin:0 auto}

.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1240px;margin:0 auto}
.perk{--c:var(--c-blue);display:flex;align-items:flex-start;gap:22px;padding:24px 26px;border-radius:18px;background:#fff;border:1px solid #eef0f5;box-shadow:0 14px 34px -24px rgba(16,24,64,.25);transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.perk--orange{--c:var(--c-orange)}
.perk--green{--c:var(--c-green)}
.perk:hover{translate:0 -6px;box-shadow:0 26px 44px -24px color-mix(in srgb,var(--c) 40%,transparent)}
.perk__icon{flex-shrink:0;width:74px;height:74px;border-radius:16px;background:color-mix(in srgb,var(--c) 11%,#fff);color:var(--c);display:flex;align-items:center;justify-content:center;font-size:30px;transition:background .4s,color .4s,transform .5s var(--ease)}
.perk:hover .perk__icon{background:var(--c);color:#fff;transform:rotate(-8deg)}
.perk__divider{align-self:stretch;width:1px;background:#e3e6ee;flex-shrink:0}
.perk__title{font-family:var(--f-body);font-weight:700;font-size:18.5px;letter-spacing:-.01em;margin-bottom:8px}
.perk__text{font-size:15.5px;color:#5d6478;line-height:1.6}

/* ---------- our impact ---------- */
.impact{--c-blue:#1b2f8f;--c-orange:#f47c1c;--c-green:#1fa45a;position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:linear-gradient(180deg,#e9eef8 0%,#e3e9f6 100%)}
.impact>.wrap{position:relative;z-index:1}
.impact__bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.impact__arc{position:absolute;border-radius:50%}
.impact__arc--tl{width:clamp(420px,40vw,720px);aspect-ratio:1;left:-18%;top:-40%;background:linear-gradient(140deg,#b9c7ea,#d3dcf1 60%,rgba(227,233,246,0))}
.impact__arc--tl2{width:clamp(360px,34vw,620px);aspect-ratio:1;left:-24%;top:38%;border:1.5px solid rgba(27,47,143,.18)}
.impact__arc--br{width:clamp(420px,40vw,720px);aspect-ratio:1;right:-20%;bottom:-46%;background:linear-gradient(320deg,#b3c2e8,#cfd9f0 60%,rgba(227,233,246,0))}
.impact__arc--br2{width:clamp(520px,48vw,880px);aspect-ratio:1;right:-30%;top:10%;border:1.5px solid rgba(255,255,255,.8)}
.impact__dots{position:absolute;right:24px;top:14%;width:150px;height:110px;background-image:radial-gradient(circle,#8e9cc0 1.8px,transparent 2.2px);background-size:26px 26px}
.impact__head{text-align:center;max-width:980px;margin:0 auto clamp(36px,4vw,50px)}
.impact__text{max-width:860px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1080px;margin:0 auto}
.stat{--c:var(--c-blue);position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:24px 28px 26px;border-radius:18px;background:rgba(255,255,255,.92);border:1px solid color-mix(in srgb,var(--c) 22%,#fff);box-shadow:0 22px 50px -30px color-mix(in srgb,var(--c) 45%,transparent);overflow:hidden;isolation:isolate;transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.stat--orange{--c:var(--c-orange)}
.stat--green{--c:var(--c-green)}
.stat::after{content:"";position:absolute;right:-26%;bottom:-70%;width:80%;aspect-ratio:1;z-index:-1;border-radius:50%;background:linear-gradient(160deg,color-mix(in srgb,var(--c) 14%,transparent),color-mix(in srgb,var(--c) 3%,transparent) 70%);transition:transform .8s var(--ease)}
.stat:hover{translate:0 -8px;box-shadow:0 32px 60px -28px color-mix(in srgb,var(--c) 55%,transparent)}
.stat:hover::after{transform:scale(1.15) translate(-4%,-6%)}
.stat__icon{width:52px;height:52px;border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--c) 70%,#fff),var(--c));color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 12px 24px -10px color-mix(in srgb,var(--c) 70%,transparent);margin-bottom:16px;transition:transform .5s var(--ease)}
.stat:hover .stat__icon{transform:rotate(-8deg) scale(1.06)}
.stat__num{font-family:var(--f-body);font-weight:800;font-size:clamp(32px,3vw,46px);line-height:1;letter-spacing:-.03em;color:#10131f;font-variant-numeric:tabular-nums;margin-bottom:6px}
.stat__label{font-size:16px;font-weight:500;color:#4d5366}

/* ---------- what we offer ---------- */
.offer{--navy:#1b2f8f;--purple:#7a3fe0;--sky:#1e8fe0;--green:#1fa45a;--orange:#f08a17;--teal:#0e9fb3;position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:linear-gradient(180deg,#e3e9f6 0%,#e9eef8 100%)}
.offer>.wrap{position:relative;z-index:1}
.offer__bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.offer__arc--tl{width:clamp(420px,40vw,720px);aspect-ratio:1;left:-20%;top:-36%;background:linear-gradient(140deg,#bccaeb,#d3dcf1 60%,rgba(227,233,246,0))}
.offer__arc--ring{width:clamp(380px,36vw,640px);aspect-ratio:1;left:-26%;top:18%;border:1.5px solid rgba(27,47,143,.18)}
.offer__arc--br{width:clamp(420px,40vw,720px);aspect-ratio:1;right:-22%;bottom:-40%;background:linear-gradient(320deg,#b3c2e8,#cfd9f0 60%,rgba(227,233,246,0))}
.offer__arc--ring2{width:clamp(460px,42vw,760px);aspect-ratio:1;right:-28%;bottom:-24%;border:1.5px solid rgba(27,47,143,.2)}
.offer__dots{position:absolute;background-image:radial-gradient(circle,#8e9cc0 1.8px,transparent 2.2px);background-size:24px 24px}
.offer__dots--r{right:24px;top:10%;width:150px;height:110px}
.offer__dots--l{left:16px;top:34%;width:110px;height:130px}
.offer__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1300px;margin:0 auto}
.ocard{--c:var(--navy);position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:28px 36px 30px;border-radius:18px;background:rgba(255,255,255,.93);border:1px solid color-mix(in srgb,var(--c) 18%,#fff);box-shadow:0 20px 44px -30px color-mix(in srgb,var(--c) 45%,transparent);overflow:hidden;isolation:isolate;transition:translate .45s var(--ease),box-shadow .45s var(--ease),border-color .4s}
.ocard--purple{--c:var(--purple)}
.ocard--sky{--c:var(--sky)}
.ocard--green{--c:var(--green)}
.ocard--orange{--c:var(--orange)}
.ocard--teal{--c:var(--teal)}
.ocard::after{content:"";position:absolute;right:-24%;bottom:-62%;width:74%;aspect-ratio:1;z-index:-1;border-radius:50%;background:linear-gradient(160deg,color-mix(in srgb,var(--c) 16%,transparent),color-mix(in srgb,var(--c) 3%,transparent) 70%);transition:transform .8s var(--ease)}
.ocard:hover{translate:0 -8px;border-color:color-mix(in srgb,var(--c) 40%,#fff);box-shadow:0 32px 56px -28px color-mix(in srgb,var(--c) 55%,transparent)}
.ocard:hover::after{transform:scale(1.2) translate(-6%,-8%)}
.ocard__icon{width:62px;height:62px;border-radius:14px;background:color-mix(in srgb,var(--c) 13%,#fff);color:var(--c);display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 10px 20px -14px color-mix(in srgb,var(--c) 70%,transparent);margin-bottom:22px;transition:background .4s,color .4s,transform .5s var(--ease)}
.ocard:hover .ocard__icon{background:var(--c);color:#fff;transform:rotate(-8deg) scale(1.06)}
.ocard__title{font-family:var(--f-body);font-weight:700;font-size:clamp(19px,1.6vw,23px);letter-spacing:-.015em;margin-bottom:12px}
.ocard__text{font-size:16px;line-height:1.6;color:#555b6e;margin-bottom:20px}
.ocard__more{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:var(--c)}
.ocard__more i{font-size:13px;transition:transform .35s var(--ease)}
.ocard:hover .ocard__more i{transform:translateX(5px)}

/* ---------- why choose us ---------- */
.why{--navy:#1b2f8f;--orange:#f08a17;--red:#e5484d;--green:#1fa45a;position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:linear-gradient(180deg,#e9eef8 0%,#e3e9f6 100%)}
.why>.wrap{position:relative;z-index:1}
.why__arc--tl{width:clamp(420px,40vw,720px);aspect-ratio:1;left:-22%;top:-38%;background:linear-gradient(140deg,#bccaeb,#d3dcf1 60%,rgba(227,233,246,0))}
.why__arc--ring{width:clamp(380px,36vw,640px);aspect-ratio:1;left:-26%;top:14%;border:1.5px solid rgba(27,47,143,.18)}
.why__arc--br{width:clamp(420px,40vw,720px);aspect-ratio:1;right:-22%;bottom:-44%;background:linear-gradient(320deg,#b3c2e8,#cfd9f0 60%,rgba(227,233,246,0))}
.why__arc--ring2{width:clamp(460px,42vw,760px);aspect-ratio:1;right:-30%;top:40%;border:1.5px solid rgba(27,47,143,.2)}
.why__dots--l{left:16px;top:48%;width:120px;height:110px}
.why__in{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,5vw,80px);align-items:center}
.why__media{position:relative;padding:30px 20px}
.why__glass{position:absolute;inset:14px 0 0 40px;border-radius:30px;background:linear-gradient(150deg,rgba(255,255,255,.55),rgba(190,205,240,.35));border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);rotate:5deg}
.orbit{position:relative;width:100%;max-width:520px;aspect-ratio:1;margin:0 auto}
.orbit__glow{position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,rgba(74,107,234,.35),transparent 70%);filter:blur(10px)}
.orbit__ring{position:absolute;border-radius:50%;border:1.5px dashed rgba(27,47,143,.25)}
.orbit__ring--1{inset:22%;animation:orbitVar 28s linear infinite}
.orbit__ring--2{inset:6%;border-style:solid;border-color:rgba(27,47,143,.15);animation:orbitVar 46s linear infinite reverse}
.orbit__ring--3{inset:0;border:1px solid rgba(255,255,255,.9);background:radial-gradient(circle,rgba(255,255,255,.35),rgba(255,255,255,0) 70%)}
@property --spin{syntax:'<angle>';inherits:true;initial-value:0deg}
@keyframes orbitVar{to{--spin:360deg}}
.orbit__item{position:absolute;inset:0;transform:rotate(calc(var(--a) + var(--spin)));pointer-events:none}
.orbit__item i{position:absolute;left:50%;top:0;width:64px;height:64px;margin:-32px 0 0 -32px}
.orbit__item i{border-radius:18px;background:#fff;box-shadow:0 14px 30px -14px rgba(27,47,143,.5);display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--navy)}
.orbit__item i{rotate:calc(-1 * (var(--a) + var(--spin)))}
.orbit__item--sm i{width:52px;height:52px;margin:-26px 0 0 -26px;font-size:19px;border-radius:15px;background:linear-gradient(145deg,#3b5bdb,var(--navy));color:#fff}
.orbit__item .fa-redhat{color:#ee0000}
.orbit__item .fa-microsoft{color:transparent;background:linear-gradient(#f25022,#f25022) 30% 30%/20% 20% no-repeat,linear-gradient(#7fba00,#7fba00) 54% 30%/20% 20% no-repeat,linear-gradient(#00a4ef,#00a4ef) 30% 54%/20% 20% no-repeat,linear-gradient(#ffb900,#ffb900) 54% 54%/20% 20% no-repeat,#fff}
.js .orbit__ring{opacity:0;scale:.4;transition:opacity 1s,scale 1.3s var(--ease)}
.js .orbit__ring--2{transition-delay:.12s}
.js .orbit__item i{scale:0;transition:scale .6s cubic-bezier(.34,1.8,.5,1)}
.js .orbit__ring--1 .orbit__item:nth-child(1) i{transition-delay:.6s}
.js .orbit__ring--1 .orbit__item:nth-child(2) i{transition-delay:.7s}
.js .orbit__ring--1 .orbit__item:nth-child(3) i{transition-delay:.8s}
.js .orbit__ring--2 .orbit__item:nth-child(1) i{transition-delay:.9s}
.js .orbit__ring--2 .orbit__item:nth-child(2) i{transition-delay:1s}
.js .orbit__ring--2 .orbit__item:nth-child(3) i{transition-delay:1.1s}
.js .orbit__ring--2 .orbit__item:nth-child(4) i{transition-delay:1.2s}
.js .orbit__ring--2 .orbit__item:nth-child(5) i{transition-delay:1.3s}
.js .orbit.is-in .orbit__ring{opacity:1;scale:1}
.js .orbit.is-in .orbit__item i{scale:1}
@media (prefers-reduced-motion:reduce){.js .orbit__ring,.js .orbit__item i{opacity:1;scale:1}}
.orbit__core{position:absolute;inset:33%}
.orbit__pulse{position:absolute;inset:0;border-radius:50%;background:rgba(27,47,143,.18);animation:corePulse 2.8s ease-out infinite}
@keyframes corePulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.55);opacity:0}}
.orbit__logo{position:absolute;inset:0;border-radius:50%;background:#fff;box-shadow:0 24px 50px -20px rgba(27,47,143,.6),0 0 0 8px rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;padding:18%}
.orbit__logo img{width:100%;height:auto;object-fit:contain}
.why__bubble{position:absolute;border-radius:50%;background:radial-gradient(circle at 35% 30%,#8fb0ff,#3d63e0);box-shadow:0 10px 20px -8px rgba(27,47,143,.6);animation:bubble 6s ease-in-out infinite}
.why__bubble--1{width:28px;height:28px;left:6%;top:6%}
.why__bubble--2{width:30px;height:30px;right:0;top:46%;animation-delay:-2s}
.why__bubble--3{width:16px;height:16px;left:2%;bottom:16%;animation-delay:-4s}
@keyframes bubble{0%,100%{translate:0 0}50%{translate:0 -14px}}
.why__media-dots{width:120px;height:100px;opacity:.8}
.why__media-dots--t{left:-40px;top:0}
.why__media-dots--b{right:-10px;bottom:0}
.why__pill{display:inline-flex;align-items:center;gap:9px;padding:8px 18px;border-radius:40px;background:#fff;box-shadow:0 8px 20px -12px rgba(27,47,143,.35);position:relative;margin-left:26px;color:var(--navy);font-weight:700;font-size:15px;margin-bottom:20px}
.why__pill-line{position:absolute;right:100%;top:50%;width:22px;height:1.5px;margin-right:6px;background:#9aa6c4}
.why__title{font-family:var(--f-body);font-weight:800;font-size:clamp(32px,3.6vw,54px);letter-spacing:-.035em;line-height:1.06;margin-bottom:20px}
.why__title em{font-family:inherit;font-style:normal;font-weight:800;letter-spacing:inherit;color:var(--navy)}
.why__text{font-size:clamp(16px,1.3vw,19px);color:#555b6e;line-height:1.6;max-width:640px;margin-bottom:28px}
.why__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:30px}
.wcard{--c:var(--navy);position:relative;display:flex;align-items:flex-start;gap:18px;padding:22px 22px 24px;border-radius:16px;background:rgba(255,255,255,.9);border:1px solid color-mix(in srgb,var(--c) 18%,#fff);box-shadow:0 18px 40px -30px color-mix(in srgb,var(--c) 45%,transparent);overflow:hidden;isolation:isolate;transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.wcard--orange{--c:var(--orange)}
.wcard--red{--c:var(--red)}
.wcard--green{--c:var(--green)}
.wcard::after{content:"";position:absolute;right:-28%;bottom:-70%;width:80%;aspect-ratio:1;z-index:-1;border-radius:50%;background:linear-gradient(160deg,color-mix(in srgb,var(--c) 14%,transparent),color-mix(in srgb,var(--c) 3%,transparent) 70%);transition:transform .8s var(--ease)}
.wcard:hover{translate:0 -6px;box-shadow:0 28px 50px -28px color-mix(in srgb,var(--c) 55%,transparent)}
.wcard:hover::after{transform:scale(1.2)}
.wcard__icon{width:50px;height:50px;border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--c) 70%,#fff),var(--c));color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 10px 20px -10px color-mix(in srgb,var(--c) 70%,transparent);flex-shrink:0;transition:transform .5s var(--ease)}
.wcard--navy .wcard__icon{background:linear-gradient(145deg,#3b5bdb,var(--c))}
.wcard:hover .wcard__icon{transform:rotate(-8deg) scale(1.06)}
.wcard__title{font-family:var(--f-body);font-weight:700;font-size:19px;margin-bottom:8px}
.wcard__text{font-size:15px;line-height:1.55;color:#555b6e}

/* ---------- client testimonials ---------- */
.testi{--navy:#1b2f8f;--orange:#f08a17;--green:#1fa45a;--purple:#7a3fe0;--teal:#0e9fb3;position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:linear-gradient(180deg,#e3e9f6 0%,#e9eef8 100%)}
.testi>.wrap{position:relative;z-index:1}
.testi__arc--tl{width:clamp(420px,40vw,720px);aspect-ratio:1;left:-20%;top:-40%;background:linear-gradient(140deg,#bccaeb,#d3dcf1 60%,rgba(227,233,246,0))}
.testi__arc--ring{width:clamp(380px,36vw,640px);aspect-ratio:1;left:-26%;top:22%;border:1.5px solid rgba(27,47,143,.18)}
.testi__arc--br{width:clamp(420px,40vw,720px);aspect-ratio:1;right:-22%;bottom:-46%;background:linear-gradient(320deg,#b3c2e8,#cfd9f0 60%,rgba(227,233,246,0))}
.testi__arc--ring2{width:clamp(460px,42vw,760px);aspect-ratio:1;right:-30%;top:-20%;border:1.5px solid rgba(255,255,255,.85)}
.testi__dots--r{right:24px;top:12%;width:140px;height:110px}
.testi__dots--l{left:16px;bottom:12%;width:110px;height:130px}
.tmarquee{position:relative;margin:0 calc(-1 * clamp(18px,4vw,40px));-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.tmarquee__track{display:flex;width:max-content;padding:14px 0 34px;animation:tmarquee 70s linear infinite}
.tmarquee:hover .tmarquee__track{animation-play-state:paused}
.tmarquee__group{display:flex;gap:28px;padding-right:28px}
@keyframes tmarquee{to{transform:translateX(-50%)}}
.tcard{--c:var(--navy);flex:0 0 380px;margin:0;display:flex;flex-direction:column;padding:30px 30px 28px;border-radius:18px;background:#fff;border:1px solid #edf0f6;box-shadow:0 22px 44px -30px rgba(16,24,64,.35);transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.tcard--orange{--c:var(--orange)}
.tcard--green{--c:var(--green)}
.tcard--purple{--c:var(--purple)}
.tcard--teal{--c:var(--teal)}
.tcard:hover{translate:0 -6px;box-shadow:0 30px 54px -28px color-mix(in srgb,var(--c) 45%,transparent)}
.tcard__top{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.tcard__quote{width:46px;height:46px;border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--c) 70%,#fff),var(--c));color:#fff;display:flex;align-items:center;justify-content:center;font-size:17px;box-shadow:0 10px 20px -10px color-mix(in srgb,var(--c) 70%,transparent)}
.tcard__stars{display:flex;gap:4px;color:#f5b301;font-size:14px}
.tcard__text{margin:0 0 24px;font-size:16px;line-height:1.7;color:#2b2f3c;flex:1}
.tcard__who{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid #eef0f5}
.tcard__avatar{width:42px;height:42px;flex-shrink:0;border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--c) 70%,#fff),var(--c));color:#fff;font-weight:700;font-size:16px;display:flex;align-items:center;justify-content:center}
.tcard__who b{display:block;font-size:16px;color:#10131f}
.tcard__who small{display:block;font-size:13.5px;color:#7a8094;line-height:1.4}

/* ---------- our partners (client logos) ---------- */
.clients{position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,110px) 0;background:linear-gradient(180deg,#e9eef8 0%,#e3e9f6 100%)}
.clients>.wrap{position:relative;z-index:1}
.clients__arc--tl{width:clamp(380px,36vw,640px);aspect-ratio:1;left:-20%;top:-50%;background:linear-gradient(140deg,#bccaeb,#d3dcf1 60%,rgba(227,233,246,0))}
.clients__arc--ring{width:clamp(380px,36vw,640px);aspect-ratio:1;left:-24%;top:30%;border:1.5px solid rgba(27,47,143,.18)}
.clients__arc--br{width:clamp(380px,36vw,640px);aspect-ratio:1;right:-20%;bottom:-55%;background:linear-gradient(320deg,#b3c2e8,#cfd9f0 60%,rgba(227,233,246,0))}
.clients__dots--r{right:24px;top:14%;width:140px;height:100px}
.clients__dots--l{left:16px;bottom:10%;width:110px;height:100px}
.cmarquee{margin:0 calc(-1 * clamp(18px,4vw,40px));-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.cmarquee__track{display:flex;width:max-content;padding:10px 0 20px;animation:tmarquee 40s linear infinite}
.cmarquee:hover .cmarquee__track{animation-play-state:paused}
.cmarquee__group{display:flex;align-items:center;gap:56px;padding-right:56px}
.clogo{width:220px;height:110px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:translate .4s var(--ease)}
.clogo img{max-width:min(100%,165px);max-height:88px;object-fit:contain;mix-blend-mode:multiply;transition:transform .4s var(--ease)}
.clogo:hover{translate:0 -5px}
.clogo:hover img{transform:scale(1.08)}

/* ---------- footer ---------- */
.footer{background:var(--ink);color:rgba(255,255,255,.72);padding:clamp(56px,6vw,76px) 0 0}
.footer__grid{display:grid;grid-template-columns:1.25fr .8fr 1.15fr 1.15fr 1.15fr;gap:40px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.1)}
.footer__col{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0;font-size:15px}
.footer h4{font-family:var(--f-body);font-size:18px;font-weight:700;letter-spacing:0;text-transform:none;color:#fff;margin:0 0 8px}
.footer__logo img{height:66px;width:auto;filter:brightness(0) invert(1)}
.footer__about p{font-size:14.5px;line-height:1.65;color:rgba(255,255,255,.62);max-width:280px}
.footer__social{display:flex;gap:16px;margin-top:4px;flex-wrap:wrap}
.footer__social a{font-size:19px;transition:transform .3s var(--ease),opacity .3s}
.footer__social a:hover{transform:translateY(-3px)}
.footer__social--facebook{color:#4b8cff}
.footer__social--instagram{color:#f0577a}
.footer__social--youtube{color:#ff3b3b}
.footer__social--linkedin,.footer__social--x-twitter{color:#e6e9f3}
.footer__social--google{color:#5b8def}
.footer__link{position:relative;font-size:16px;color:rgba(255,255,255,.88);transition:color .3s}
.footer__link::after{content:"";position:absolute;left:0;bottom:-3px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}
.footer__link:hover{color:#fff}
.footer__link:hover::after{transform:scaleX(1);transform-origin:left}
.footer__info{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.82);transition:color .3s}
.footer__info i{width:16px;flex-shrink:0;margin-top:3px;font-size:13px;color:#6f8dff}
.footer__info .fa-phone{color:#f5b301}
.footer__info .fa-envelope{color:#ef4444}
.footer__info:hover{color:#fff}
.footer__phones{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.footer__phones small{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.footer__bottom{padding:26px 0 30px;text-align:center;font-size:14px;color:rgba(255,255,255,.6)}
.footer__bottom a{color:#7f9bff;transition:color .3s}
.footer__bottom a:hover{color:#fff}

/* ==========================================================
   SERVICES PAGE
   ========================================================== */
.page-services{--sv-web:#2346d8;--sv-soft:#e3342f;--sv-media:#f28a12}
.sv-kicker{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:16px}
.sv-kicker span{width:26px;height:2px;background:currentColor}
.sv-kicker--left span:first-child{display:none}
.sv-kicker--light{color:#7f9bff}
.sv-h2{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.4vw,50px);letter-spacing:-.035em;line-height:1.08;margin-bottom:14px}

/* hero - text left, three slanted pictures right */
.sv-hero{--heroH:clamp(620px,43vw,720px);--mh:calc(var(--heroH) - 134px);--top:104px;--sk:.2254;--cw:min(100% - 2 * clamp(18px,4vw,40px),1240px);--wl:calc((100% - var(--cw)) / 2);--ml:calc(var(--wl) + var(--cw) * .355);position:relative;overflow:hidden;isolation:isolate;min-height:var(--heroH);display:flex;align-items:center;padding:var(--top) 0 30px;background:linear-gradient(180deg,#f5f8fd 0%,#eef3fb 60%,#eaf0fa 100%)}
.sv-hero__bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.sv-hero__blob{position:absolute;border-radius:50%}
.sv-hero__blob--1{width:46vw;height:46vw;left:-22vw;top:-24vw;background:radial-gradient(circle at 60% 60%,rgba(120,160,240,.20),rgba(120,160,240,0) 65%)}
.sv-hero__blob--2{width:36vw;height:36vw;left:4vw;bottom:-30vw;background:radial-gradient(circle at 50% 40%,rgba(80,130,240,.26),rgba(80,130,240,0) 62%)}
.sv-hero__blob--3{width:30vw;height:30vw;left:-14vw;bottom:-12vw;border:1px solid rgba(35,70,216,.10)}
.sv-hero>.wrap{position:relative;z-index:2;width:100%}
.sv-hero__copy{max-width:calc(var(--cw) * .34)}
.sv-hero__kicker{color:#1d5fe0;font-size:clamp(13px,1.05vw,16px);letter-spacing:.14em;margin-bottom:18px}
.sv-hero__kicker span{width:40px}
.sv-hero__title{font-family:var(--f-body);font-weight:800;white-space:nowrap;font-size:clamp(40px,3.9vw,66px);line-height:.98;letter-spacing:-.045em;color:#0f1a3c;margin:0 0 18px}
.sv-line{display:block;overflow:hidden;padding-bottom:.04em}
.sv-line>span{display:inline-block}
.sv-line--blue{color:#1f63f2}
.sv-line--red{color:#f2302f}
.sv-hero__lead{font-size:clamp(16px,1.06vw,18px);font-weight:700;color:#121a33;margin-bottom:14px;letter-spacing:-.01em}
.sv-hero__text{font-size:clamp(15px,1.05vw,17px);line-height:1.6;color:#5a6075;max-width:480px;margin-bottom:30px}
.sv-hero__btn{display:inline-flex;align-items:center;gap:14px;padding:15px 26px;border-radius:10px;background:#1f63f2;color:#fff;font-weight:700;font-size:16px;box-shadow:0 18px 34px -16px rgba(31,99,242,.75);transition:background .3s,translate .4s var(--ease),box-shadow .4s}
.sv-hero__btn i{transition:transform .35s var(--ease)}
.sv-hero__btn:hover{background:#154fd0;translate:0 -3px;box-shadow:0 22px 40px -16px rgba(31,99,242,.85)}
.sv-hero__btn:hover i{transform:translateX(5px)}


.sv-hero__media{position:absolute;z-index:1;top:var(--top);height:var(--mh);left:var(--ml);right:max(0px,calc(var(--wl) - 110px));padding-right:calc(var(--mh) * var(--sk) * .4);display:flex;gap:6px}
.sv-panel{position:relative;flex:1 1 0;transform:skewX(-12.7deg);transform-origin:0 100%}
.sv-panel__clip{position:absolute;inset:0;overflow:hidden}
.sv-panel__img{position:absolute;left:0;top:0;width:calc(100% + var(--mh) * var(--sk));aspect-ratio:.85;transform:skewX(12.7deg);transform-origin:0 var(--mh);background-size:cover;background-repeat:no-repeat;background-position:center top;-webkit-mask-image:linear-gradient(180deg,#000 50%,rgba(0,0,0,.35) 78%,transparent 98%);mask-image:linear-gradient(180deg,#000 50%,rgba(0,0,0,.35) 78%,transparent 98%);transition:scale 1.4s var(--ease)}
.sv-panel:hover .sv-panel__img{scale:1.06}
.sv-hero__labels{--lb:clamp(14px,1.6vw,26px);position:absolute;z-index:2;left:0;right:calc(var(--mh) * var(--sk) * .4);bottom:var(--lb);display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.sv-panel__label{display:flex;flex-direction:column;align-items:center;text-align:center;padding-left:calc((var(--lb) + 80px) * .4508);padding-right:0;color:inherit}
.sv-panel__icon{flex:none;display:grid;place-items:center;width:clamp(38px,2.7vw,46px);height:clamp(38px,2.7vw,46px);border-radius:11px;color:#fff;font-size:clamp(16px,1.15vw,20px);background:var(--pc);box-shadow:0 14px 28px -12px var(--pc);margin-bottom:clamp(10px,1vw,16px);transition:translate .4s var(--ease)}
.sv-panel--software{--pc:#e8202a}
.sv-panel--web{--pc:#1f5cf2}
.sv-panel--media{--pc:#f02a4b}
.sv-panel--hardware{--pc:#17c27a}
.sv-panel__txt b{display:block;white-space:nowrap;font-size:clamp(12.5px,.9vw,15.5px);font-weight:800;line-height:1.2;color:#0f1a3c;letter-spacing:-.01em;margin-bottom:8px}
.sv-panel__txt small{display:block;white-space:nowrap;font-size:clamp(7.5px,.52vw,9.5px);font-weight:600;line-height:1.7;letter-spacing:.04em;text-transform:uppercase;color:#5b6178}
.sv-panel__go{display:grid;place-items:center;width:clamp(28px,2vw,34px);height:clamp(28px,2vw,34px);margin-top:clamp(8px,.8vw,12px);border-radius:50%;border:1.5px solid #2440c8;color:#2440c8;font-size:13px;transition:background .3s,color .3s}
.sv-panel__label:hover .sv-panel__go{background:#2440c8;color:#fff}
.sv-panel__label:hover .sv-panel__icon{translate:0 -4px}

/* three division cards */
.wrap--wide{max-width:1440px}
.sv-divs{position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,7vw,100px) 0 clamp(70px,8vw,110px);background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.sv-divs__bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.sv-divs__wave{position:absolute;border-radius:50%;filter:blur(2px)}
.sv-divs__wave--l{width:60vw;height:60vw;left:-36vw;top:-8vw;background:radial-gradient(closest-side,rgba(110,150,240,.28),rgba(110,150,240,0))}
.sv-divs__wave--r{width:56vw;height:56vw;right:-30vw;bottom:-22vw;background:radial-gradient(closest-side,rgba(90,140,245,.30),rgba(90,140,245,0))}
.sv-divs__ring{position:absolute;border-radius:50%;border:1.5px solid rgba(35,80,220,.14)}
.sv-divs__ring--l{width:clamp(320px,30vw,520px);aspect-ratio:1;left:-14vw;top:30%}
.sv-divs__ring--r{width:clamp(320px,26vw,460px);aspect-ratio:1;right:-9vw;top:-10%}
.sv-divs__dots--l{left:20px;bottom:12%;width:110px;height:100px}
.sv-divs__dots--r{right:24px;top:9%;width:120px;height:100px}
.sv-divs__head{text-align:center;max-width:900px;margin:0 auto clamp(36px,4vw,56px)}
.sv-pill{display:inline-flex;align-items:center;gap:9px;padding:9px 20px;border-radius:40px;background:rgba(255,255,255,.75);box-shadow:0 10px 24px -14px rgba(31,92,242,.45);color:#1f4fd8;font-size:15px;font-weight:700;margin:0 0 20px}
.sv-pill i{font-size:14px}
.sv-divs__title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.6vw,56px);line-height:1.08;letter-spacing:-.035em;color:#0b1638;margin:0 0 18px}
.sv-divs__title span{color:#1f4fd8}
.sv-divs__text{font-size:clamp(15px,1.15vw,18px);line-height:1.6;color:#5a6075;margin:0}
.sv-divs__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.4vw,22px)}
.sv-card{display:flex;flex-direction:column;border-radius:18px;background:#fff;box-shadow:0 26px 56px -34px rgba(18,24,38,.45);overflow:hidden;transition:translate .5s var(--ease),box-shadow .5s var(--ease)}
.sv-card{--c:#1b2f8f;--c2:#2346d8}
.sv-card:hover{translate:0 -8px;box-shadow:0 36px 70px -34px color-mix(in srgb,var(--c) 55%,transparent)}
.sv-card__top{position:relative;aspect-ratio:1.24;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;overflow:hidden}
.sv-card__img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.4s var(--ease)}
.sv-card:hover .sv-card__img{transform:scale(1.07)}
.sv-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,14,30,.45) 0%,rgba(10,14,30,0) 24%,rgba(10,14,30,.4) 50%,rgba(10,14,30,.92) 100%)}
.sv-card__num{position:absolute;left:clamp(18px,1.6vw,26px);top:clamp(16px,1.5vw,24px);display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:rgba(255,255,255,.92)}
.sv-card__num i{width:30px;height:1.5px;background:currentColor}
.sv-card__head{position:relative;padding:0 clamp(18px,1.6vw,26px) clamp(26px,2.4vw,34px)}
.sv-card__name{font-family:var(--f-body);font-weight:800;font-size:clamp(19px,1.55vw,26px);line-height:1.1;letter-spacing:-.02em;margin:0 0 8px}
.sv-card__text{font-size:clamp(12px,.85vw,14px);line-height:1.45;color:rgba(255,255,255,.9);max-width:290px;margin:0}
.sv-card__wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:clamp(18px,1.8vw,26px)}
.sv-card__wave-fill{fill:#fff}
.sv-card__wave-line{fill:none;stroke:var(--c);stroke-width:3;vector-effect:non-scaling-stroke}
.sv-card__list{list-style:none;margin:0;padding:clamp(14px,1.4vw,20px) clamp(16px,1.3vw,22px) 4px;display:grid;align-content:start;gap:clamp(8px,.75vw,12px);flex:1}
.sv-card__list li{display:flex;align-items:center;gap:11px;font-size:clamp(12px,.82vw,14px);line-height:1.35;color:#3a4052}
.sv-card__list li span{width:30px;height:30px;flex-shrink:0;border-radius:9px;background:color-mix(in srgb,var(--c) 11%,#fff);color:var(--c);display:grid;place-items:center;font-size:13px;transition:background .3s,color .3s}
.sv-card__list li:hover span{background:var(--c);color:#fff}
.sv-card__btn{margin:clamp(14px,1.4vw,20px) clamp(18px,1.6vw,26px) clamp(18px,1.6vw,24px);display:flex;align-items:center;justify-content:center;gap:10px;height:clamp(46px,3.4vw,52px);border-radius:50px;border:1.5px solid var(--ink);background:transparent;color:var(--ink);font-weight:600;font-size:clamp(13px,.95vw,15px);transition:background .35s,color .35s}
.sv-card__btn:hover{background:var(--ink);color:#fff}
.sv-card__btn i{transition:transform .35s var(--ease)}
.sv-card__btn:hover i{transform:translateX(5px)}

/* one partner, three capabilities */
.sv-ind{position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,8vw,110px) 0;background:linear-gradient(180deg,#eef3fc 0%,#f4f7fd 100%)}
.sv-ind>.wrap{position:relative}
.sv-ind__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.4vw,22px)}
.sv-ind__card{position:relative;overflow:hidden;padding:clamp(22px,2vw,30px) clamp(20px,1.8vw,26px);border-radius:18px;background:linear-gradient(160deg,color-mix(in srgb,var(--c) 7%,#fff),#fff 70%);box-shadow:0 18px 40px -30px rgba(16,24,64,.35);border:1px solid color-mix(in srgb,var(--c) 14%,#eef1f7);transition:translate .45s var(--ease),box-shadow .45s var(--ease),border-color .45s}
.sv-ind__card::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--c);transform:scaleX(0);transform-origin:0 50%;transition:transform .5s var(--ease)}
.sv-ind__card:hover{translate:0 -6px;border-color:color-mix(in srgb,var(--c) 35%,#fff);box-shadow:0 26px 50px -30px color-mix(in srgb,var(--c) 60%,transparent)}
.sv-ind__card:hover::after{transform:scaleX(1)}
.sv-ind__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--c);color:#fff;font-size:21px;margin-bottom:18px;box-shadow:0 14px 26px -12px var(--c);transition:rotate .45s var(--ease)}
.sv-ind__card:hover .sv-ind__icon{rotate:-8deg}
.sv-ind__card h4{font-family:var(--f-body);font-weight:800;font-size:clamp(16px,1.2vw,19px);letter-spacing:-.01em;color:#0f1a3c;margin:0 0 8px}
.sv-ind__card p{font-size:14px;line-height:1.55;color:#5a6075;margin:0}
.sv-ind__num{position:absolute;right:18px;top:14px;font-family:var(--f-body);font-weight:800;font-size:34px;color:color-mix(in srgb,var(--c) 12%,transparent);letter-spacing:-.04em}

/* how we work */
.sv-work{position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,8vw,110px) 0;background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.sv-work>.wrap{position:relative}
.sv-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}
.sv-step{--c:var(--sv-web);position:relative;text-align:center;padding:30px 18px 26px;border-radius:18px;background:#fff;box-shadow:0 22px 46px -32px rgba(16,24,64,.4);transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.sv-step:hover{translate:0 -6px;box-shadow:0 30px 56px -30px color-mix(in srgb,var(--c) 55%,transparent)}
.sv-step--2{--c:var(--sv-soft)}
.sv-step--3{--c:var(--sv-media)}
.sv-step--4{--c:#2f6fe4}
.sv-step--5{--c:#1fa45a}
.sv-step__num{position:absolute;left:16px;top:16px;z-index:1;width:36px;height:36px;border-radius:50%;background:var(--c);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 5px color-mix(in srgb,var(--c) 15%,#fff)}
.sv-step__icon{width:84px;height:84px;margin:12px auto 18px;border-radius:50%;background:color-mix(in srgb,var(--c) 9%,#fff);color:var(--c);display:flex;align-items:center;justify-content:center;font-size:30px;transition:background .4s,color .4s,transform .5s var(--ease)}
.sv-step:hover .sv-step__icon{background:var(--c);color:#fff;transform:translateY(-6px) rotate(-8deg)}
.sv-step h4{font-family:var(--f-body);font-weight:700;font-size:19px;margin-bottom:8px}
.sv-step p{font-size:14.5px;line-height:1.55;color:#6b7185}
.sv-step__arrow{position:absolute;right:-19px;top:50%;margin-top:-7px;font-size:13px;color:#8e9cc0}

/* ==========================================================
   ABOUT PAGE
   ========================================================== */
.ab-hero{--top:104px;--cw:min(100% - 2 * clamp(18px,4vw,40px),1240px);--wl:calc((100% - var(--cw)) / 2);position:relative;overflow:hidden;isolation:isolate;--heroH:clamp(620px,43vw,720px);min-height:var(--heroH);display:flex;align-items:center;padding:calc(var(--top) + 30px) 0 40px;background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.ab-hero__media{position:absolute;z-index:0;top:calc(var(--top) + 16px);right:max(18px,calc(var(--wl) - 60px));bottom:18px;border-radius:0 28px 28px 0;box-shadow:30px 30px 60px -40px rgba(16,24,64,.45);left:calc(var(--wl) + var(--cw) * .26);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 18%,#000 38%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 18%,#000 38%)}
.ab-hero__img{position:absolute;inset:0;background-size:cover;background-position:center;animation:abZoom 24s ease-in-out infinite alternate}
@keyframes abZoom{from{scale:1.02}to{scale:1.1;translate:-1.5% 0}}
.ab-hero__bg{z-index:-1}
.ab-hero__in{position:relative;z-index:2;width:100%}
.ab-hero__copy{max-width:calc(var(--cw) * .40)}
.ab-hero__kicker{color:#1d5fe0;font-size:clamp(13px,1vw,15px);letter-spacing:.16em;margin-bottom:18px}
.ab-hero__kicker span{width:34px}
.ab-hero__title{font-family:var(--f-body);font-weight:800;white-space:nowrap;font-size:clamp(42px,4.6vw,72px);line-height:1;letter-spacing:-.045em;color:#0b1220;margin:0 0 22px}
.ab-hero__title em{font-family:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit;color:#1f63f2}
.ab-hero__text{font-size:clamp(16px,1.3vw,20px);line-height:1.6;color:#2a3146;max-width:460px;margin:0}
@media (max-width:960px){
  .ab-hero__copy{max-width:520px}
  .ab-hero{flex-direction:column;align-items:stretch;min-height:0;padding:150px 0 0}
  .ab-hero__media{position:relative;top:auto;left:auto;right:auto;width:100%;height:clamp(240px,50vw,420px);margin-top:36px;order:2;border-radius:0;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 25%);mask-image:linear-gradient(180deg,transparent 0%,#000 25%)}
  .ab-hero__media{bottom:auto;width:auto;margin:30px clamp(18px,4vw,40px) 40px;border-radius:20px;-webkit-mask-image:none;mask-image:none}
}
@media (prefers-reduced-motion:reduce){.ab-hero__img{animation:none}}
.ab-story{position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,8vw,110px) 0;background:linear-gradient(180deg,#eef3fc 0%,#f4f7fd 100%)}
.ab-story__dots{left:44%;top:9%;width:120px;height:80px}
.ab-story__grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,4vw,64px);align-items:center}
.ab-story__title{text-align:left}
.ab-story__title span{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:#1f5cf2}
.ab-story__copy p{font-size:clamp(15px,1.12vw,17.5px);line-height:1.7;color:#4a5170;margin:0 0 16px}
.ab-red{color:#e8202a;font-weight:800}
.ab-story__media{position:relative}
.ab-story__blob{display:block;position:relative;aspect-ratio:1.5;overflow:hidden;border-radius:42% 18% 34% 22% / 30% 22% 40% 26%;box-shadow:0 40px 80px -40px rgba(16,24,64,.55);animation:abBlob 14s ease-in-out infinite alternate}
@keyframes abBlob{from{border-radius:42% 18% 34% 22% / 30% 22% 40% 26%}to{border-radius:26% 34% 22% 40% / 22% 38% 26% 34%}}
.ab-story__img{position:absolute;inset:0;background-size:cover;background-position:center;transition:scale 1.4s var(--ease)}
.ab-story__blob:hover .ab-story__img{scale:1.06}
@media (max-width:960px){.ab-story__grid{grid-template-columns:1fr}.ab-story__dots{display:none}}
@media (prefers-reduced-motion:reduce){.ab-story__blob{animation:none}}
.ab-vals{position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,8vw,110px) 0;background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.ab-vals>.wrap{position:relative}
.ab-vals__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,1.6vw,24px);max-width:1100px;margin:0 auto}
.ab-val{padding:clamp(26px,2.4vw,34px) clamp(22px,2vw,30px)}
.ab-val p{font-size:14.5px;line-height:1.65}
@media (max-width:960px){.ab-vals__grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.ab-vals__grid{grid-template-columns:1fr}}
/* ==========================================================
   CONTACT PAGE
   ========================================================== */
.ct-top{padding-bottom:40px}
.ct-top .ab-hero__media{left:max(18px,calc(var(--wl) - 60px));border-radius:28px;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 24%,rgba(0,0,0,.7) 40%,#000 52%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 24%,rgba(0,0,0,.7) 40%,#000 52%)}
.ct-top .ab-hero__img{background-position:0% center;animation-name:ctZoom}
@keyframes ctZoom{from{scale:1}to{scale:1.04}}
.ct-top__copy{max-width:calc(var(--cw) * .52)}
.ct-top__title{text-shadow:0 2px 18px rgba(244,247,253,.9);white-space:normal;font-size:clamp(34px,3.4vw,54px);line-height:1.08}
.ct-top__title .sv-line{white-space:nowrap}
.ct-body{position:relative;overflow:hidden;isolation:isolate;padding:0 0 clamp(70px,8vw,110px);background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.ct-body__grid{position:relative;z-index:3;display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(20px,2.2vw,32px);align-items:stretch}
.ct-info{padding-top:clamp(36px,3.6vw,52px)}
.ct-badge{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:40px;background:#1f5cf2;color:#fff;font-size:14px;font-weight:700;margin:0 0 18px;box-shadow:0 12px 24px -12px rgba(31,92,242,.8)}
.ct-info__cards{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:12px}
.ct-ic{display:flex;gap:12px;align-items:flex-start;padding:clamp(16px,1.4vw,22px);border-radius:16px;background:#fff;box-shadow:0 20px 40px -30px rgba(16,24,64,.45);transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.ct-ic:hover{translate:0 -5px;box-shadow:0 28px 50px -28px color-mix(in srgb,var(--c) 50%,transparent)}
.ct-ic__icon{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:color-mix(in srgb,var(--c) 12%,#fff);color:var(--c);font-size:19px}
.ct-ic h3{font-family:var(--f-body);font-weight:800;font-size:16px;color:#0f1a3c;margin:4px 0 8px}
.ct-ic a{display:block;font-size:13px;line-height:1.5;color:#4a5170;margin-bottom:8px;word-break:break-word;transition:color .3s}
.ct-ic a:hover{color:#1f5cf2}
.ct-depts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.ct-dept2{padding:14px 18px;border-radius:14px;background:rgba(255,255,255,.7);border:1px solid #e3e9f6}
.ct-dept2 small{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7a8094;margin-bottom:6px}
.ct-dept2 a,.ct-dept2 span{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#0f1a3c}
.ct-dept2 i{font-size:12px;color:#f5b301}
.ct-formcard{position:relative;overflow:hidden;margin-top:clamp(36px,3.6vw,52px);padding:clamp(26px,2.6vw,38px);border-radius:24px;background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);border:1px solid #e6ecf8;box-shadow:0 40px 80px -40px rgba(16,24,64,.45),0 0 0 6px rgba(255,255,255,.6)}
.ct-formcard::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#1f5cf2,#7b46f2 40%,#e8202a 72%,#f28a12)}
.ct-formcard::after{content:"";position:absolute;right:-90px;top:-90px;width:220px;height:220px;border-radius:50%;background:radial-gradient(closest-side,rgba(31,92,242,.10),rgba(31,92,242,0));pointer-events:none}
.ct-formcard__head{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px dashed #dfe6f4}
.ct-formcard__badge{flex:none;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:linear-gradient(140deg,#3d7bff,#1f4fd8);color:#fff;font-size:21px;box-shadow:0 14px 28px -12px rgba(31,92,242,.8)}
.ct-formcard h2{font-family:var(--f-body);font-weight:800;font-size:clamp(22px,1.8vw,28px);letter-spacing:-.02em;color:#0b1638;margin:0 0 4px}
.ct-formcard__sub{font-size:13.5px;color:#5a6075;margin:0}
.ct-formcard .form__grid{gap:16px 18px}
.ct-formcard .field label{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:#1d2540}
.ct-formcard .field label i{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#e8efff;font-size:10.5px;color:#1f5cf2}
.ct-formcard .field input,.ct-formcard .field select,.ct-formcard .field textarea{padding:13px 15px;border:1.5px solid #e1e7f3;border-radius:12px;background:#f6f8fd;font-size:14px;transition:border-color .3s,box-shadow .3s,background .3s}
.ct-formcard .field input:hover,.ct-formcard .field select:hover,.ct-formcard .field textarea:hover{border-color:#c9d5ef}
.ct-formcard .field input:focus,.ct-formcard .field select:focus,.ct-formcard .field textarea:focus{background:#fff;border-color:#1f5cf2;box-shadow:0 0 0 4px rgba(31,92,242,.12)}
.ct-formcard .field input::placeholder,.ct-formcard .field textarea::placeholder{color:#9aa3b8}
.ct-formcard .form__msg:empty{display:none}
.ct-send{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:54px;margin-top:8px;border:0;border-radius:14px;background:linear-gradient(135deg,#3d7bff,#1f4fd8);color:#fff;font:inherit;font-weight:700;font-size:15.5px;cursor:pointer;box-shadow:0 18px 34px -14px rgba(31,92,242,.85);transition:translate .35s var(--ease),box-shadow .35s}
.ct-send::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.35),rgba(255,255,255,0));transform:skewX(-20deg);transition:left .7s var(--ease)}
.ct-send:hover{translate:0 -2px;box-shadow:0 24px 40px -14px rgba(31,92,242,.95)}
.ct-send:hover::after{left:120%}
.ct-send i{transition:transform .35s var(--ease)}
.ct-send:hover i{transform:translateX(5px)}
.ct-formcard__note{display:flex;align-items:center;justify-content:center;gap:8px;margin:14px 0 0;font-size:12.5px;color:#7a8094}
.ct-formcard__note i{color:#10a870}
@media (max-width:1180px){.ct-info__cards{grid-template-columns:1fr}.ct-depts{grid-template-columns:1fr}}
@media (max-width:960px){.ct-top .ab-hero__media{left:auto;-webkit-mask-image:none;mask-image:none}.ct-top{padding-bottom:0}.ct-top__copy{max-width:640px}.ct-body__grid{grid-template-columns:1fr}.ct-formcard{margin-top:0;order:-1}.ct-body{padding-top:30px}.ct-info{padding-top:0}.ct-info__cards{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.ct-top__title .sv-line{white-space:normal}.ct-info__cards,.ct-formcard .form__grid{grid-template-columns:1fr}}
.ct-maps{position:relative;overflow:hidden;isolation:isolate;padding:clamp(60px,7vw,100px) 0 clamp(70px,8vw,110px);background:linear-gradient(180deg,#eef3fc 0%,#f6f8fd 100%)}
.ct-maps>.wrap{position:relative}
.ct-maps__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,2.4vw,36px)}
.ct-office{padding:clamp(20px,2vw,28px);border-radius:22px;background:#fff;box-shadow:0 26px 54px -36px rgba(16,24,64,.45);transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.ct-office:hover{translate:0 -5px;box-shadow:0 32px 60px -34px color-mix(in srgb,var(--c) 45%,transparent)}
.ct-office h3{display:flex;align-items:center;gap:10px;font-family:var(--f-body);font-weight:800;font-size:clamp(19px,1.5vw,24px);color:#0f1a3c;margin:0 0 8px}
.ct-office h3 i{color:var(--c)}
.ct-office p{font-size:15px;color:#4a5170;margin:0 0 16px}
.ct-office__map{position:relative;overflow:hidden;border-radius:16px;aspect-ratio:1.45;background:#dfe7fb}
.ct-office__map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ct-office__dir{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:10px 18px;border-radius:10px;background:color-mix(in srgb,var(--c) 10%,#fff);color:var(--c);font-weight:700;font-size:14px;transition:background .3s,color .3s}
.ct-office__dir:hover{background:var(--c);color:#fff}
@media (max-width:960px){.ct-maps__grid{grid-template-columns:1fr}}
.ct-sv .sv-hero__title{font-size:clamp(40px,4vw,66px)}
.ct-sv .sv-hero__text{margin-bottom:0}
.ct-sv .sv-panel{overflow:hidden}
.ct-sv .sv-panel__img{background-position:center;-webkit-mask-image:linear-gradient(180deg,#000 72%,rgba(0,0,0,.6) 88%,transparent 100%);mask-image:linear-gradient(180deg,#000 72%,rgba(0,0,0,.6) 88%,transparent 100%)}
.ab-sv .sv-hero__labels,.ct-sv .sv-hero__labels{grid-template-columns:repeat(3,1fr)}
.ab-sv .sv-panel__img,.ct-sv .sv-panel__img{-webkit-mask-image:linear-gradient(180deg,#000 50%,rgba(0,0,0,.35) 78%,transparent 98%);mask-image:linear-gradient(180deg,#000 50%,rgba(0,0,0,.35) 78%,transparent 98%)}
.ab-lbl--story{--pc:#1f5cf2}
.ab-lbl--values{--pc:#7b46f2}
.ab-lbl--work{--pc:#f28a12}
.ct-lbl--call{--pc:#1f5cf2}
.ct-lbl--mail{--pc:#e8202a}
.ct-lbl--visit{--pc:#10a870}
.ct-sv .sv-panel__txt small{text-transform:none;letter-spacing:.02em}
.ab-sv .sv-hero__text{margin-bottom:30px}
.ab-sv .sv-hero__title{white-space:nowrap}
.ab-blue{font-family:inherit;font-weight:inherit;letter-spacing:inherit;font-style:normal;color:#1f63f2}
.ab-btns{display:flex;flex-wrap:wrap;gap:12px}
.ab-btn2{display:inline-flex;align-items:center;padding:15px 24px;border-radius:10px;border:1.5px solid #c3cadb;color:#0f1a3c;font-weight:700;font-size:16px;transition:border-color .3s,color .3s}
.ab-btn2:hover{border-color:#1f63f2;color:#1f63f2}
.ct-chat{display:flex;align-items:center;gap:16px;margin-top:16px;padding:18px 20px;border-radius:18px;background:linear-gradient(120deg,#121826 0%,#1b2f8f 100%);color:#fff;box-shadow:0 24px 46px -30px rgba(18,24,38,.7)}
.ct-chat__icon{flex:none;display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:#25d366;font-size:25px;box-shadow:0 10px 24px -10px #25d366}
.ct-chat__txt{flex:1;min-width:0}
.ct-chat__txt b{display:block;font-size:16px;margin-bottom:3px}
.ct-chat__txt span{display:block;font-size:13px;line-height:1.5;color:rgba(255,255,255,.75)}
.ct-chat__btn{flex:none;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:10px;background:#fff;color:#121826;font-weight:700;font-size:14px;transition:translate .3s var(--ease)}
.ct-chat__btn:hover{translate:0 -2px}
.ct-faq{margin-top:16px;padding:20px 22px;border-radius:18px;background:#fff;box-shadow:0 20px 40px -30px rgba(16,24,64,.45)}
.ct-faq h3{display:flex;align-items:center;gap:9px;font-family:var(--f-body);font-weight:800;font-size:17px;color:#0f1a3c;margin:0 0 8px}
.ct-faq h3 i{color:#1f5cf2}
.ct-faq__item{border-top:1px solid #edf1f8}
.ct-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;font-size:14.5px;font-weight:700;color:#1d2540;cursor:pointer;list-style:none}
.ct-faq__item summary::-webkit-details-marker{display:none}
.ct-faq__item summary i{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#e8efff;color:#1f5cf2;font-size:11px;transition:rotate .3s var(--ease),background .3s,color .3s}
.ct-faq__item[open] summary i{rotate:45deg;background:#1f5cf2;color:#fff}
.ct-faq__item p{margin:0 0 14px;font-size:13.5px;line-height:1.6;color:#5a6075}
@media (max-width:640px){.ct-chat{flex-wrap:wrap}.ct-chat__btn{width:100%;justify-content:center}}
.ct-formcard{display:flex;flex-direction:column}
.ct-formcard form{flex:1;display:flex;flex-direction:column}
.ct-formcard .form__grid{flex:1;grid-template-rows:auto auto 1fr}
.ct-formcard .field--full{display:flex;flex-direction:column}
.ct-formcard .field--full textarea{flex:1;min-height:110px}
.ct-info{display:flex;flex-direction:column}
.ct-info .ct-badge{align-self:flex-start}
.ct-faq{flex:1}
@media (max-width:960px){.ct-faq{flex:none}}
.ct-info__cards{gap:10px}
.ct-ic{padding:14px 16px;gap:10px}
.ct-ic__icon{width:38px;height:38px;font-size:16px}
.ct-ic h3{font-size:15px;margin:2px 0 6px}
.ct-ic a{font-size:12.5px;margin-bottom:5px;line-height:1.45}
.ct-depts{gap:10px;margin-top:10px}
.ct-dept2{padding:10px 14px}
.ct-chat{margin-top:10px;padding:14px 16px}
.ct-chat__icon{width:42px;height:42px;font-size:21px}
.ct-faq{margin-top:10px;padding:14px 18px}
.ct-faq h3{font-size:15.5px;margin-bottom:4px}
.ct-faq__item summary{padding:10px 0;font-size:14px}
.ct-badge{margin-bottom:12px}
.ct-formcard{padding:clamp(22px,2vw,30px)}
.ct-formcard__head{margin-bottom:16px;padding-bottom:14px}
.ct-formcard__badge{width:46px;height:46px;font-size:18px}
.ct-formcard .form__grid{gap:12px 16px}
.ct-formcard .field input,.ct-formcard .field select,.ct-formcard .field textarea{padding:11px 14px}
.ct-formcard .field--full textarea{min-height:90px}
.ct-send{height:48px}
.ct-formcard__note{margin-top:10px}
.ab-hl{color:#0f1a3c;font-weight:800}
.ab-story__blob{border-radius:24px!important;animation:none!important;aspect-ratio:1.25}
.sv-card__img{z-index:0}
.sv-card__top::before{content:"";position:absolute;left:0;right:0;top:0;height:58%;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(120,128,145,.55) 0%,rgba(120,128,145,.28) 45%,rgba(120,128,145,0) 100%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);-webkit-mask-image:linear-gradient(180deg,#000 35%,transparent 100%);mask-image:linear-gradient(180deg,#000 35%,transparent 100%)}
.sv-card__shade{z-index:1}
.sv-card__num,.sv-card__head,.sv-card__wave{z-index:2}
.sv-ind__card::before{content:"";position:absolute;left:0;right:0;top:0;height:60%;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(150,158,175,.22) 0%,rgba(150,158,175,.08) 55%,rgba(150,158,175,0) 100%);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent 100%);mask-image:linear-gradient(180deg,#000 30%,transparent 100%)}
.sv-ind__card>*{position:relative;z-index:1}
.sv-ind__card>.sv-ind__num{position:absolute}
.sv-ind__card .sv-ind__icon{filter:saturate(.45) brightness(.95);box-shadow:0 12px 22px -14px rgba(16,24,64,.55)}
.sv-ind__card{background:linear-gradient(160deg,color-mix(in srgb,var(--c) 3%,#fff),#fff 70%);border-color:#e9edf5}
.sv-ind__card .sv-ind__num{color:rgba(27,47,143,.07)}
.sv-step__num,.sv-step__icon{filter:saturate(.45) brightness(.95)}
.sv-step__num{box-shadow:0 0 0 5px rgba(27,47,143,.06)}
.sv-step:hover{box-shadow:0 30px 56px -30px rgba(16,24,64,.4)}
.sv-work{padding-bottom:clamp(80px,9vw,130px)}
/* ==========================================================
   ADOBE / SOFTWARE & LICENSING PAGE
   ========================================================== */
.ad-hero{--heroH:clamp(620px,43vw,720px);position:relative;overflow:hidden;isolation:isolate;min-height:var(--heroH);display:flex;align-items:center;padding:124px 0 40px;background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.ad-hero__in{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(30px,4vw,64px);align-items:center;width:100%}
.ad-hero__title{font-family:var(--f-body);font-weight:800;font-size:clamp(38px,3.9vw,64px);line-height:1.04;letter-spacing:-.045em;color:#0f1a3c;margin:0 0 20px}
.ad-hero__title em{font-family:inherit;font-weight:inherit;font-style:normal;letter-spacing:inherit;color:#1f63f2}
.ad-hero__text{max-width:560px;font-size:clamp(15.5px,1.15vw,18px);line-height:1.6;color:#5a6075;margin:0 0 24px}
.ad-badge{display:inline-flex;align-items:center;gap:14px;padding:12px 20px 12px 16px;border-radius:14px;background:#fff;color:#111;margin-bottom:26px;box-shadow:0 18px 38px -26px rgba(16,24,64,.5)}
.ad-badge img{height:40px;width:auto}
.ad-badge b{display:block;font-weight:700;font-size:clamp(16px,1.25vw,20px);line-height:1.2;letter-spacing:-.01em}
.ad-btns{display:flex;flex-wrap:wrap;gap:12px}
.ad-hero__media{position:relative;padding:10px 0}
@media (max-width:1180px){.ad-hero{min-height:0}.ad-hero__in{grid-template-columns:1fr}.ad-hero__media{max-width:680px;width:100%;margin:10px auto 0}}
@media (max-width:640px){.ad-hero{padding-top:112px}.ad-btns a{flex:1 1 100%;justify-content:center}}
.ap{position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,8vw,110px) 0;background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.ap>.wrap{position:relative}
.ap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2vw,30px);max-width:1180px;margin:0 auto}
.ap-card{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:clamp(26px,2.4vw,38px);border-radius:22px;background:#fff;border:1px solid rgba(27,47,143,.06);box-shadow:0 22px 48px -34px rgba(16,24,64,.45);transition:translate .45s var(--ease),box-shadow .45s var(--ease)}
.ap-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--c),transparent);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
.ap-card:hover{translate:0 -8px;box-shadow:0 34px 60px -32px color-mix(in srgb,var(--c) 45%,rgba(16,24,64,.5))}
.ap-card:hover::before{transform:scaleX(1)}
.ap-card__head{position:relative;display:flex;align-items:center;gap:18px;margin-bottom:22px}
.ap-card__icon{position:relative;flex:none;width:62px;height:62px}
.ap-card__icon::after{content:"";position:absolute;inset:8px;border-radius:14px;background:var(--c);filter:blur(16px);opacity:.35;z-index:-1;transition:opacity .4s}
.ap-card__icon img{width:100%;height:100%;display:block;transition:rotate .45s var(--ease),scale .45s var(--ease)}
.ap-card:hover .ap-card__icon img{rotate:-8deg;scale:1.08}
.ap-card:hover .ap-card__icon::after{opacity:.7}
.ap-card__head b{display:block;font-family:var(--f-body);font-weight:800;font-size:clamp(19px,1.5vw,23px);letter-spacing:-.01em;color:#0f1a3c}
.ap-card__head small{display:block;margin-top:3px;font-size:12.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#7a8199}
.ap-card__text{position:relative;margin:0 0 20px;font-size:15px;line-height:1.7;color:#4a5170}
.ap-card__list{position:relative;list-style:none;margin:0 0 26px;padding:0;display:grid;gap:10px}
.ap-card__list li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:#5a6075}
.ap-card__list i{flex:none;font-size:12px;color:#1f4fd8}
.ap-card__btn{position:relative;margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;color:#1f4fd8}
.ap-card__btn i{transition:transform .35s var(--ease)}
.ap-card__btn:hover i{transform:translateX(5px)}
@media (max-width:1180px){.ap-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.ap-grid{grid-template-columns:1fr}}
.aa{position:relative;overflow:hidden;isolation:isolate;padding:clamp(40px,5vw,80px) 0 clamp(70px,8vw,110px);background:linear-gradient(180deg,#eef3fc 0%,#f4f7fd 100%)}
.aa>.wrap{position:relative}
.aa-card{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,70px);align-items:center;max-width:1180px;margin:0 auto;padding:clamp(34px,4.4vw,72px);border-radius:30px;background:linear-gradient(135deg,#1b2f8f 0%,#2346d8 55%,#3d6bff 100%);color:#fff;box-shadow:0 50px 90px -50px rgba(27,47,143,.75)}
.aa-card__glow{position:absolute;border-radius:50%;filter:blur(70px);z-index:-1;pointer-events:none}
.aa-card__glow--1{width:420px;height:420px;right:-120px;top:-160px;background:rgba(126,176,255,.55);animation:aaGlow 7s ease-in-out infinite alternate}
.aa-card__glow--2{width:360px;height:360px;left:-140px;bottom:-180px;background:rgba(18,24,38,.45);animation:aaGlow 9s ease-in-out infinite alternate-reverse}
.aa-card__grid{position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:44px 44px;-webkit-mask:radial-gradient(70% 90% at 0% 50%,#000,transparent);mask:radial-gradient(70% 90% at 0% 50%,#000,transparent)}
@keyframes aaGlow{to{translate:-40px 30px;scale:1.15}}
.aa-pill{display:inline-flex;align-items:center;gap:9px;margin:0 0 18px;padding:8px 18px;border-radius:50px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff}
.aa-pill i{color:#ffd166}
.aa-title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.4vw,52px);line-height:1.08;letter-spacing:-.03em;margin:0 0 18px;color:#fff}
.aa-title span{color:#bcd3ff}
.aa-text{margin:0 0 26px;font-size:clamp(15px,1.12vw,17.5px);line-height:1.75;color:rgba(255,255,255,.78);max-width:560px}
.aa-list{list-style:none;margin:0 0 34px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;max-width:520px}
.aa-list li{display:flex;align-items:center;gap:11px;font-size:15.5px;font-weight:500;color:#fff}
.aa-list i{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.16);font-size:10.5px;color:#fff}
.aa-btn{display:inline-flex;align-items:center;gap:12px;padding:16px 30px;border-radius:50px;background:#fff;color:#1b2f8f;font-weight:700;font-size:16px;box-shadow:0 18px 36px -16px rgba(10,16,48,.6);transition:translate .35s var(--ease),box-shadow .35s var(--ease)}
.aa-btn i{transition:transform .35s var(--ease)}
.aa-btn:hover{translate:0 -3px;box-shadow:0 24px 44px -16px rgba(10,16,48,.7)}
.aa-btn:hover i{transform:translateX(5px)}
.aa-media{position:relative;padding:22px 0}
.aa-photo{position:relative;overflow:hidden;border-radius:24px;aspect-ratio:1472/1090;border:6px solid rgba(255,255,255,.18);box-shadow:0 40px 70px -30px rgba(8,12,40,.7)}
.aa-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:scale 1s var(--ease)}
.aa-card:hover .aa-photo img{scale:1.05}
@media (max-width:1024px){.aa-card{grid-template-columns:1fr}.aa-media{max-width:620px;width:100%;margin:0 auto}}
@media (max-width:640px){.aa-card{padding:32px 22px;border-radius:24px}.aa-list{grid-template-columns:1fr}.aa-media{padding:30px 0 34px}.aa-btn{width:100%;justify-content:center}}
@media (prefers-reduced-motion:reduce){.aa-card__glow{animation:none!important}}
/* ---------- Adobe page: light theme with red design (adobe.com inspired) ---------- */
.page-adobe{--adb-red:#eb1000;--adb-ink:#131313;--adb-ash:#fff;--adb-acc:#131313;--adb-grad:linear-gradient(90deg,#eb1000 0%,#ff4d2e 100%);background:var(--adb-ash)}
.page-adobe ::selection{background:#131313;color:#fff}
/* header: keep the normal light header, red accents */
.page-adobe .header .btn--blue{background:var(--adb-acc);box-shadow:0 14px 30px -14px rgba(19,19,19,0.49)}
.page-adobe .header .btn--blue::before{background:#3a3a3a}
.page-adobe .header.is-scrolled{background:rgba(255,255,255,.88)}
.page-adobe .nav__link.is-active{background:var(--adb-acc)}
.page-adobe .burger{background:var(--adb-acc)}
.page-adobe .callbtn{background:var(--adb-acc);box-shadow:0 16px 34px -12px rgba(19,19,19,0.42)}
.page-adobe .callbtn:hover{background:#3a3a3a}
.page-adobe .callbtn__icon{color:var(--adb-acc)}
/* red background design (same shapes as the other pages, in red) */
.page-adobe .sv-divs__wave--l{background:radial-gradient(closest-side,rgba(255,255,255,.55),rgba(255,255,255,0))}
.page-adobe .sv-divs__wave--r{background:radial-gradient(closest-side,rgba(0,0,0,.05),rgba(0,0,0,0))}
.page-adobe .sv-divs__ring{border-color:rgba(0,0,0,.08)}
.page-adobe .offer__dots{background-image:radial-gradient(circle,rgba(0,0,0,.18) 1.8px,transparent 2.2px)}
.page-adobe .sv-divs__ring--l{animation:adbRing 9s ease-in-out infinite alternate}
.page-adobe .sv-divs__ring--r{animation:adbRing 11s ease-in-out infinite alternate-reverse}
@keyframes adbRing{to{translate:24px -18px;scale:1.06}}
@media (prefers-reduced-motion:reduce){.page-adobe .sv-divs__ring{animation:none!important}}
.page-adobe .ad-hero,.page-adobe .ap,.page-adobe .apl{background:var(--adb-ash)}
.page-adobe .ad-mean,.page-adobe .aa{background:#fff}
/* type */
.page-adobe .ad-hero__title,.page-adobe .sv-divs__title,.page-adobe .ad-mean__item b,.page-adobe .ap-card__head b{color:var(--adb-ink)}
.page-adobe .ad-hero__title em,.page-adobe .sv-divs__title span{background:var(--adb-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.page-adobe .ad-hero__text,.page-adobe .ad-mean__text,.page-adobe .sv-divs__text,.page-adobe .ap-card__text{color:#555a66}
.page-adobe .sv-pill{background:#fff;color:var(--adb-acc);border:1px solid rgba(19,19,19,0.11);box-shadow:0 10px 24px -16px rgba(19,19,19,0.35)}
.page-adobe .sv-pill i{color:var(--adb-acc)}
/* hero */
.page-adobe .ad-badge{border:1px solid #f0e6e4;box-shadow:0 18px 38px -26px rgba(0,0,0,.35)}
.page-adobe .ad-hero .sv-hero__btn{background:var(--adb-acc);box-shadow:0 18px 34px -14px rgba(19,19,19,0.42)}
.page-adobe .ad-hero .sv-hero__btn:hover{background:#3a3a3a}
.page-adobe .ad-hero .ab-btn2{border-color:var(--adb-ink);color:var(--adb-ink);background:transparent}
.page-adobe .ad-hero .ab-btn2:hover{background:var(--adb-ink);color:#fff}
.page-adobe .ad-hero .sv-hero__btn,.page-adobe .ad-hero .ab-btn2{border-radius:50px;transition:background .3s,color .3s,border-color .3s,translate .4s var(--ease)}
/* why it matters */
.page-adobe .ad-mean__item{border:1px solid #f3e7e4;box-shadow:0 20px 44px -32px rgba(0,0,0,.35)}
.page-adobe .ad-mean__icon{background:linear-gradient(140deg,#4a4a4a,#131313);box-shadow:0 12px 24px -10px rgba(19,19,19,0.42)}
.page-adobe .ad-mean__item:hover{border-color:rgba(19,19,19,0.21);box-shadow:0 28px 50px -30px rgba(19,19,19,0.32)}
.page-adobe .ad-mean__num{color:rgba(19,19,19,0.06)}
/* products */
.page-adobe .ap-card{border-color:#f0ebea}
.page-adobe .ap-card:hover{box-shadow:0 34px 60px -32px color-mix(in srgb,var(--c) 45%,rgba(16,24,64,.5))}
.page-adobe .ap-card__list i,.page-adobe .ap-card__btn{color:var(--adb-acc)}
/* all apps */
.page-adobe .aa-card{background:linear-gradient(115deg,#4d4247 0%,#453b40 40%,#3a3437 75%,#353033 100%);color:#fff;border:0;box-shadow:0 50px 90px -50px rgba(40,30,35,.65),inset 0 1px 0 rgba(255,255,255,.08)}
.page-adobe .aa-card__glow--1{background:rgba(255,255,255,.08)}
.page-adobe .aa-card__glow--2{background:rgba(20,16,18,.5)}
.page-adobe .aa-card__grid{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px)}
.page-adobe .aa-pill{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff}
.page-adobe .aa-pill i{color:#fff}
.page-adobe .aa-title{color:#fff}
.page-adobe .aa-title span{background:linear-gradient(90deg,#ff5a3c,#ff8a6a);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.page-adobe .aa-text{color:rgba(255,255,255,.72)}
.page-adobe .aa-list li{color:#fff}
.page-adobe .aa-list i{background:rgba(255,255,255,.14);color:#fff}
.page-adobe .aa-btn{background:#fff;color:var(--adb-ink);box-shadow:0 18px 34px -14px rgba(0,0,0,.5)}
.page-adobe .aa-btn:hover{background:var(--adb-ink);color:#fff}
.page-adobe .aa-photo{border-color:rgba(255,255,255,.14);box-shadow:0 40px 70px -30px rgba(0,0,0,.6)}
.page-adobe .aa-copy{position:relative;z-index:1;max-width:560px}
@media (min-width:1025px){
.page-adobe .aa-card{min-height:560px}
.page-adobe .aa-media{position:absolute;top:0;right:0;bottom:0;width:50%;padding:0}
.page-adobe .aa-photo{height:100%;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}
.page-adobe .aa-photo::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#41383d 0%,rgba(65,56,61,.6) 18%,rgba(65,56,61,0) 45%);pointer-events:none}
}
/* All Apps: whole section in the brown colour */
.page-adobe .aa{background:linear-gradient(115deg,#4d4247 0%,#453b40 40%,#3a3437 75%,#353033 100%)}
.page-adobe .aa::before{display:none}
.page-adobe .aa .aa-card{background:transparent;box-shadow:none}
.page-adobe .aa .aa-card__glow,.page-adobe .aa .aa-card__grid{display:none}
.page-adobe .aa .sv-divs__wave{display:none}
.page-adobe .aa .sv-divs__ring{border-color:rgba(255,255,255,.07)}
.page-adobe .aa .offer__dots{background-image:radial-gradient(circle,rgba(255,255,255,.18) 1.8px,transparent 2.2px)}
.page-adobe .aa .aa-photo::before{background:linear-gradient(90deg,#433a3f 0%,rgba(67,58,63,.55) 16%,rgba(67,58,63,0) 40%)}
@media (min-width:1025px){
.page-adobe .aa .aa-media{top:4%;right:0;bottom:4%;width:50%}
.page-adobe .aa .aa-media .aa-photo{border-radius:0;border:0;box-shadow:none;-webkit-mask-image:linear-gradient(0deg,transparent 0%,#000 14%,#000 86%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 30%,#000 90%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(0deg,transparent 0%,#000 14%,#000 86%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 30%,#000 90%,transparent 100%);mask-composite:intersect}
.page-adobe .aa .aa-photo::before{display:none}
}
@media (max-width:1024px){.page-adobe .aa .aa-photo{border:0;border-radius:0;box-shadow:none;-webkit-mask-image:linear-gradient(0deg,transparent 0%,#000 18%,#000 82%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(0deg,transparent 0%,#000 18%,#000 82%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%);mask-composite:intersect}.page-adobe .aa .aa-photo::before{display:none}}
/* Adobe Solutions & Licensing (text version of the brown section) */
.page-adobe .aa .aa-card--info{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,4vw,70px);align-items:center;min-height:0;padding:clamp(10px,2vw,30px) 0}
.page-adobe .aa-card--info .aa-copy{max-width:none}
.page-adobe .aa-card--info .aa-title{font-size:clamp(28px,3vw,46px)}
.page-adobe .aa-card--info .aa-text{max-width:none;margin-bottom:30px}
.aa-points{display:grid;gap:16px}
.aa-point{display:flex;gap:18px;align-items:flex-start;padding:22px 24px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);transition:background .4s,translate .4s var(--ease),border-color .4s}
.aa-point:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22);translate:-6px 0}
.aa-point__icon{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#fff;color:#131313;font-size:18px;box-shadow:0 12px 24px -12px rgba(0,0,0,.6)}
.aa-point b{display:block;font-family:var(--f-body);font-weight:800;font-size:17px;color:#fff;margin-bottom:6px}
.aa-point p{margin:0;font-size:14.5px;line-height:1.7;color:rgba(255,255,255,.72)}
@media (max-width:1024px){.page-adobe .aa .aa-card--info{grid-template-columns:1fr}}
@media (max-width:560px){.aa-point{padding:18px;gap:14px}.aa-point__icon{width:42px;height:42px}}
/* section separation */
.page-adobe .ad-mean::before,.page-adobe .ap::before,.page-adobe .aa::before,.page-adobe .apl::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;z-index:1;background:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 25%,rgba(0,0,0,.14) 50%,rgba(0,0,0,.08) 75%,transparent 100%)}
.page-adobe .ad-mean,.page-adobe .ap,.page-adobe .aa,.page-adobe .apl{padding-top:clamp(80px,8vw,120px);padding-bottom:clamp(80px,8vw,120px)}
/* licensing plans */
.apl{position:relative;overflow:hidden;isolation:isolate;padding:clamp(60px,7vw,100px) 0 clamp(70px,8vw,110px)}
.apl>.wrap{position:relative}
.apl-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,1.6vw,26px);max-width:1320px;margin:0 auto;align-items:stretch}
.apl-card{position:relative;overflow:hidden;display:flex;flex-direction:column;border-radius:24px;background:#fff;border:1px solid #f0e8e6;box-shadow:0 26px 54px -38px rgba(0,0,0,.4);transition:translate .45s var(--ease),border-color .45s,box-shadow .45s}
.apl-card:hover{translate:0 -8px;border-color:rgba(19,19,19,0.21);box-shadow:0 36px 64px -34px rgba(0,0,0,.3)}
.apl-card--hot{border-color:rgba(19,19,19,0.20);box-shadow:0 26px 54px -38px rgba(0,0,0,.3)}
.apl-card__media{position:relative;aspect-ratio:337/165;overflow:hidden}
.apl-card__media img{width:100%;height:100%;object-fit:cover;object-position:right top;display:block;transform-origin:right top;transition:scale .9s var(--ease)}
.apl-card:hover .apl-card__media img{scale:1.07}
.apl-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 55%,#fff 100%)}
.apl-card__icon{position:absolute;z-index:1;right:0;top:21%;width:22%;aspect-ratio:1;translate:0 -50%;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.94);border:1px solid #fff;color:var(--adb-ink);box-shadow:0 10px 24px -12px rgba(0,0,0,.4);font-size:clamp(15px,1.2vw,19px);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .4s,rotate .5s var(--ease)}
.apl-card:hover .apl-card__icon{background:var(--adb-acc);color:#fff;rotate:-12deg}
.apl-card__head{position:relative;z-index:1;margin-top:-16px;padding:0 clamp(20px,1.8vw,28px)}
.apl-card__tag{display:inline-block;padding:5px 12px;border-radius:30px;background:#fff;border:1px solid rgba(19,19,19,0.17);color:var(--adb-acc);box-shadow:0 8px 18px -12px rgba(19,19,19,0.42);font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}
.apl-card__head h3{font-family:var(--f-body);font-weight:800;font-size:clamp(19px,1.45vw,23px);line-height:1.22;letter-spacing:-.02em;color:var(--adb-ink);margin:0}
.apl-card__body{display:flex;flex-direction:column;flex:1;padding:18px clamp(20px,1.8vw,28px) clamp(22px,2vw,30px)}
.apl-card__body p{margin:0 0 14px;font-size:14.5px;line-height:1.7;color:#555a66}
.apl-card__body .apl-card__lead{margin:4px 0 14px;padding-left:12px;border-left:2px solid var(--adb-acc);font-weight:700;color:var(--adb-ink)}
.apl-card__list{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:11px}
.apl-card__list li{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.45;color:#2a2d36}
.apl-card__list i{flex:none;display:grid;place-items:center;width:20px;height:20px;margin-top:1px;border-radius:50%;background:rgba(19,19,19,0.06);color:var(--adb-acc);font-size:10px}
.apl-card__body .apl-card__note{margin:0 0 24px;padding-top:16px;border-top:1px solid #f0e8e6;font-size:13.5px;font-style:italic;color:#7a7f8c}
.apl-card__btn{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:12px;height:clamp(48px,3.6vw,56px);border-radius:50px;border:1.5px solid var(--adb-ink);background:transparent;color:var(--adb-ink);font-weight:600;font-size:clamp(14px,1vw,16px);transition:background .35s,color .35s,border-color .35s}
.apl-card__btn i{font-size:15px;transition:transform .35s var(--ease)}
.apl-card__btn:hover{background:var(--adb-acc);border-color:var(--adb-acc);color:#fff}
.apl-card__btn:hover i{transform:translateX(5px)}
@media (max-width:1180px){.apl-grid{grid-template-columns:repeat(2,1fr);max-width:820px}}
@media (max-width:640px){.apl-grid{grid-template-columns:1fr;max-width:460px}}
.ad-hero__media{isolation:auto}
.ad-photo{position:relative;width:min(118%,820px);margin:-20px -60px -50px auto;aspect-ratio:1372/1238}
.ad-photo picture{display:block;width:100%;height:100%}
.ad-photo img{width:100%;height:100%;object-fit:contain;display:block}
@media (min-width:1181px){.ad-photo{top:40px;width:clamp(560px,45vw,690px);max-width:none;margin:-40px -10px -50px auto}.ad-hero__media{min-width:0}}
.ad-mean{position:relative;overflow:hidden;isolation:isolate;padding:clamp(60px,7vw,100px) 0;background:linear-gradient(180deg,#eef3fc 0%,#eef3fc 100%)}
.ad-mean__grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,4vw,70px);align-items:center}
.ad-mean__title{text-align:left;font-size:clamp(28px,3vw,46px)}
.ad-mean__text{font-size:clamp(15.5px,1.15vw,18px);line-height:1.75;color:#4a5170;margin:0;max-width:620px}
.ad-mean__list{display:grid;gap:14px}
.ad-mean__item{position:relative;overflow:hidden;display:flex;align-items:center;gap:16px;padding:18px 22px;border-radius:18px;background:#fff;box-shadow:0 20px 44px -32px rgba(16,24,64,.45);transition:translate .4s var(--ease),box-shadow .4s var(--ease)}
.ad-mean__item:nth-child(2){margin-left:28px}
.ad-mean__item:hover{translate:-6px 0;box-shadow:0 28px 50px -30px rgba(31,92,242,.45)}
.ad-mean__icon{flex:none;display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:linear-gradient(140deg,#3d7bff,#1b2f8f);color:#fff;font-size:20px;box-shadow:0 12px 24px -12px rgba(31,92,242,.8)}
.ad-mean__item b{display:block;font-family:var(--f-body);font-weight:800;font-size:16.5px;color:#0f1a3c;margin-bottom:3px}
.ad-mean__item small{display:block;font-size:13.5px;line-height:1.5;color:#5a6075}
.ad-mean__num{position:absolute;right:16px;top:10px;font-family:var(--f-body);font-weight:800;font-size:30px;color:rgba(27,47,143,.07)}
@media (max-width:960px){.ad-mean__grid{grid-template-columns:1fr}.ad-mean__item:nth-child(2){margin-left:0}}
/* ---------- Software & Licensing page ---------- */
.sw-hero{--heroH:clamp(620px,43vw,720px);position:relative;overflow:hidden;isolation:isolate;min-height:var(--heroH);display:flex;align-items:center;padding:124px 0 50px;background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.sw-hero__in{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,70px);align-items:center;width:100%}
.sw-hero__title{font-family:var(--f-body);font-weight:800;font-size:clamp(38px,3.9vw,64px);line-height:1.05;letter-spacing:-.045em;color:#0f1a3c;margin:0 0 20px}
.sw-hero__title em{font-family:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit;color:#1f63f2}
.sw-hero__text{max-width:560px;font-size:clamp(15.5px,1.15vw,18px);line-height:1.65;color:#5a6075;margin:0 0 30px}
.sw-hero__btns{display:flex;flex-wrap:wrap;gap:12px}
.sw-hero__media{position:relative;display:grid;place-items:center}
.sw-hero__glow{position:absolute;inset:6% 8%;border-radius:50%;background:radial-gradient(closest-side,rgba(31,99,242,.22),rgba(31,99,242,0));filter:blur(20px);animation:adGlow 8s ease-in-out infinite alternate}
@keyframes adGlow{to{scale:1.12;opacity:.8}}
.sw-tiles{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,1.6vw,22px);width:min(100%,520px)}
.sw-tile{--accent:var(--blue);position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:clamp(20px,2vw,28px);border-radius:22px;background:rgba(255,255,255,.88);border:1px solid #fff;box-shadow:0 26px 50px -30px rgba(16,24,64,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:swFloat 6s ease-in-out infinite;animation-delay:calc(var(--d) * -1.5s);overflow:hidden}
.sw-tile:nth-child(2),.sw-tile:nth-child(4){translate:0 30px}
.sw-tile::after{content:"";position:absolute;right:-30%;bottom:-40%;width:80%;height:80%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,transparent),transparent 70%);z-index:-1}
.sw-tile__logo{width:60px;height:60px;margin-bottom:12px;border-radius:15px;background:#fff;box-shadow:0 10px 24px -14px rgba(16,24,40,.35);display:grid;place-items:center}
.sw-tile__logo img{max-width:40px;max-height:40px;object-fit:contain}
.sw-tile__logo i{font-size:32px}
.sw-tile__name{font-family:var(--f-body);font-weight:800;font-size:clamp(18px,1.5vw,22px);letter-spacing:-.02em;color:#14161f;line-height:1.1}
.sw-tile__name--autodesk{text-transform:uppercase;letter-spacing:.01em}
.sw-tile small{font-size:13px;color:#5a6075}
@keyframes swFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.sw-tile__logo .fa-redhat,.sw-card__logo .fa-redhat,.sw-jump__logo .fa-redhat,.swd__tag-logo .fa-redhat{color:#ee0000}
.sw-tile__logo .fa-microsoft,.sw-card__logo .fa-microsoft,.sw-jump__logo .fa-microsoft,.swd__tag-logo .fa-microsoft{background:linear-gradient(#f25022,#f25022) 0 0/50% 50% no-repeat,linear-gradient(#7fba00,#7fba00) 100% 0/50% 50% no-repeat,linear-gradient(#00a4ef,#00a4ef) 0 100%/50% 50% no-repeat,linear-gradient(#ffb900,#ffb900) 100% 100%/50% 50% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent}
.sw-tile__logo b,.sw-card__logo b,.sw-jump__logo b,.swd__tag-logo b{font-family:var(--f-display);font-size:38px;line-height:1;background:linear-gradient(135deg,#2bb24c,#0696d7 55%,#1a3f9c);-webkit-background-clip:text;background-clip:text;color:transparent}
.sw-partners,.sw-why{position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,8vw,110px) 0}
.sw-partners{background:#fff}
.sw-why{background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.sw-partners>.wrap,.sw-why>.wrap{position:relative}
.sw-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(18px,2vw,28px);max-width:1180px;margin:0 auto}
.sw-card{--accent:var(--blue);position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;padding:clamp(26px,2.6vw,38px);border-radius:22px;background:#fff;border:1px solid #eef0f6;box-shadow:0 24px 54px -34px rgba(16,24,64,.35);transition:translate .5s var(--ease),box-shadow .5s var(--ease)}
.sw-card::after{content:"";position:absolute;right:-20%;bottom:-45%;width:70%;height:90%;z-index:-1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 18%,transparent),transparent 70%);transition:transform .7s var(--ease)}
.sw-card:hover{translate:0 -8px;box-shadow:0 36px 64px -32px color-mix(in srgb,var(--accent) 40%,transparent)}
.sw-card:hover::after{transform:scale(1.25)}
.sw-card__top{display:flex;align-items:center;gap:16px}
.sw-card__logo{width:78px;height:78px;flex-shrink:0;border-radius:18px;background:#fff;box-shadow:0 10px 24px -14px rgba(16,24,40,.35);display:grid;place-items:center;transition:transform .6s var(--ease)}
.sw-card:hover .sw-card__logo{transform:rotate(-6deg) scale(1.05)}
.sw-card__logo img{max-width:52px;max-height:52px;object-fit:contain}
.sw-card__logo i{font-size:42px}
.sw-card__logo b{font-size:46px}
.sw-card__name{display:flex;flex-direction:column}
.sw-card__brand{font-family:var(--f-body);font-weight:800;font-size:clamp(22px,1.9vw,28px);line-height:1.1;letter-spacing:-.02em;color:#14161f}
.sw-card__brand--autodesk{text-transform:uppercase;letter-spacing:.01em}
.sw-card__name span{font-size:14.5px;color:#4d5366}
.sw-card__line{display:block;width:36px;height:3px;border-radius:3px;background:var(--accent);margin:26px 0 18px;transition:width .5s var(--ease)}
.sw-card:hover .sw-card__line{width:72px}
.sw-card__text{font-size:16px;line-height:1.6;color:#4d5366;max-width:440px;margin-bottom:20px}
.sw-card__items{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;padding-right:60px}
.sw-card__items span{padding:6px 13px;border-radius:30px;background:color-mix(in srgb,var(--accent) 7%,#fff);border:1px solid color-mix(in srgb,var(--accent) 16%,transparent);font-size:13px;font-weight:600;color:#2b2f3c}
.sw-card__more{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:var(--accent)}
.sw-card__more i{font-size:14px;transition:transform .35s var(--ease)}
.sw-card:hover .sw-card__more i{transform:translateX(5px)}
.sw-card__go{position:absolute;right:26px;bottom:26px;width:56px;height:56px;border-radius:50%;background:#fff;color:var(--accent);box-shadow:0 12px 26px -12px rgba(16,24,40,.35);display:grid;place-items:center;font-size:18px;transition:background .4s,color .4s,transform .5s var(--ease)}
.sw-card:hover .sw-card__go{background:var(--accent);color:#fff;transform:rotate(-45deg)}
.sw-why__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,1.6vw,24px);max-width:1180px;margin:0 auto}
.sw-why__item{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding:28px 24px;border-radius:20px;background:#fff;box-shadow:0 20px 44px -32px rgba(16,24,64,.45);transition:translate .4s var(--ease),box-shadow .4s var(--ease)}
.sw-why__item:hover{translate:0 -6px;box-shadow:0 28px 50px -30px rgba(31,92,242,.45)}
.sw-why__icon{width:52px;height:52px;margin-bottom:8px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(140deg,#3d7bff,#1b2f8f);color:#fff;font-size:20px;box-shadow:0 12px 24px -12px rgba(31,92,242,.8)}
.sw-why__item b{font-family:var(--f-body);font-weight:800;font-size:18px;color:#0f1a3c}
.sw-why__item small{font-size:14.5px;line-height:1.55;color:#5a6075}
.sw-why__num{position:absolute;right:18px;top:14px;font-family:var(--f-body);font-weight:800;font-size:34px;color:rgba(27,47,143,.07)}
.sw-cta{padding:0 0 clamp(70px,8vw,110px);background:#eef3fc}
.sw-cta__box{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1180px;margin:0 auto;padding:clamp(32px,4vw,56px) clamp(28px,4vw,64px);border-radius:28px;background:linear-gradient(120deg,#1b2f8f 0%,#2346d8 60%,#3d6bff 100%);color:#fff;box-shadow:0 40px 80px -45px rgba(27,47,143,.8)}
.sw-cta__glow{position:absolute;right:-120px;top:-160px;width:420px;height:420px;border-radius:50%;background:rgba(150,190,255,.35);filter:blur(70px);z-index:-1}
.sw-cta__box h2{font-family:var(--f-body);font-weight:800;font-size:clamp(24px,2.4vw,36px);letter-spacing:-.025em;margin:0 0 10px;color:#fff}
.sw-cta__box p{margin:0;max-width:620px;font-size:16px;line-height:1.6;color:rgba(255,255,255,.78)}
.sw-cta__btn{flex:none;display:inline-flex;align-items:center;gap:12px;padding:16px 30px;border-radius:50px;background:#fff;color:#1b2f8f;font-weight:700;font-size:16px;transition:translate .35s var(--ease),box-shadow .35s}
.sw-cta__btn i{transition:transform .35s var(--ease)}
.sw-cta__btn:hover{translate:0 -3px;box-shadow:0 18px 34px -16px rgba(0,0,0,.5)}
.sw-cta__btn:hover i{transform:translateX(5px)}
@media (max-width:1180px){.sw-hero{min-height:0}.sw-hero__in{grid-template-columns:1fr}.sw-hero__media{max-width:560px;width:100%;margin:10px auto 30px}.sw-why__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){.sw-grid{grid-template-columns:1fr}.sw-cta__box{flex-direction:column;align-items:flex-start}}
@media (max-width:560px){.sw-why__grid{grid-template-columns:1fr}.sw-tile{padding:18px}.sw-tile__logo{width:50px;height:50px}.sw-card__items{padding-right:0;margin-bottom:70px}.sw-hero__btns a{flex:1 1 100%;justify-content:center}}
@media (prefers-reduced-motion:reduce){.sw-tile,.sw-hero__glow{animation:none!important}}
/* ---------- popup form ---------- */
.modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;visibility:hidden;opacity:0;transition:opacity .4s,visibility .4s}
.modal.is-open{visibility:visible;opacity:1}
.modal__backdrop{position:absolute;inset:0;background:rgba(13,15,26,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.modal__box{position:relative;width:100%;max-width:640px;max-height:calc(100vh - 32px);overflow-y:auto;background:var(--paper);border-radius:28px;padding:clamp(26px,4vw,44px);transform:translateY(50px) scale(.97);transition:transform .6s var(--ease)}
.modal.is-open .modal__box{transform:none}
.modal__box h3{font-size:clamp(26px,3vw,36px);margin:12px 0 8px}
.modal__sub{color:var(--muted);margin-bottom:26px}
.modal__close{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--white);cursor:pointer;font-size:16px;transition:transform .45s var(--ease),background .3s,color .3s}
.modal__close:hover{transform:rotate(90deg);background:var(--ink);color:#fff}
.modal-open{overflow:hidden}
.form__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field--full{grid-column:1/-1}
.field label{display:block;font-size:13.5px;font-weight:600;margin-bottom:7px}
.field input,.field select,.field textarea{width:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:14px;background:var(--white);font:inherit;font-size:15.5px;color:var(--ink);transition:border-color .3s,box-shadow .3s}
.field textarea{resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(27,47,143,.12)}
.field .is-invalid{border-color:#e0344b}
.form__msg{min-height:22px;margin:14px 0 6px;font-size:14.5px;font-weight:600}
.form__msg.is-ok{color:#11834a}
.form__msg.is-err{color:#d0283f}
.hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;opacity:0}

/* Floating call button */
.callbtn{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;align-items:center;gap:12px;padding:8px 22px 8px 8px;border-radius:50px;background:var(--blue);color:#fff;font-weight:700;font-size:16px;box-shadow:0 16px 34px -12px rgba(27,47,143,.7);transition:transform .35s var(--ease),background .3s}
.callbtn:hover{transform:translateY(-3px);background:var(--ink)}
.callbtn__icon{position:relative;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:17px}
.callbtn__icon::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 0 rgba(255,255,255,.7);animation:callPulse 2s infinite}
.callbtn__icon i{animation:callRing 2.4s ease-in-out infinite}
@keyframes callPulse{70%{box-shadow:0 0 0 12px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@keyframes callRing{0%,60%,100%{transform:rotate(0)}65%,75%,85%{transform:rotate(-14deg)}70%,80%{transform:rotate(14deg)}}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media (max-width:1180px){
  .sv-ind__grid{grid-template-columns:repeat(2,1fr)}
  .sv-divs__grid{grid-template-columns:repeat(2,1fr);max-width:820px;margin:0 auto}
  .hero__in{grid-template-columns:1fr;gap:60px}
  .hsol{max-width:700px;width:100%;margin:0 auto 30px;padding:0 10px}
  .sv-hero{flex-direction:column;align-items:stretch;min-height:0;padding:130px 0 0;--top:0px;--mh:clamp(420px,52vw,540px)}
  .sv-hero__media{order:2}
  .sv-hero__copy{max-width:640px}
  .sv-hero__media{position:relative;left:auto;right:auto;height:var(--mh);margin:46px var(--wl) 0}
  .sv-hero__media{padding-right:calc(var(--mh) * var(--sk))}
  .sv-hero__labels{right:calc(var(--mh) * var(--sk))}
  .nav,.header__phone{display:none}
  .burger{display:flex}
}
@media (max-width:960px){
  .footer__grid{grid-template-columns:repeat(3,1fr)}
  .footer__about{grid-column:1/-1}
  .partners__grid{grid-template-columns:repeat(2,1fr)}
  .sv-divs__grid{grid-template-columns:repeat(2,1fr);max-width:820px;margin:0 auto}
  .sv-steps{grid-template-columns:repeat(3,1fr);row-gap:40px}
  .sv-step__arrow{display:none}
  .steps{grid-template-columns:1fr 1fr;row-gap:44px}
  .steps__track{display:none}
  .perks{grid-template-columns:1fr;max-width:620px}
  .stats{grid-template-columns:1fr;max-width:520px}
  .offer__grid{grid-template-columns:1fr 1fr}
  .why__in{grid-template-columns:1fr}
  .testi__dots--r{display:none}
  .clients__dots--r{display:none}
  .why__media{max-width:560px;width:100%;margin:0 auto}
  .offer__dots{display:none}
  .impact__dots{display:none}
}
@media (max-width:640px){
  .callbtn{right:14px;bottom:14px;padding:6px 16px 6px 6px;font-size:14.5px;gap:9px}
  .callbtn__icon{width:38px;height:38px;font-size:15px}
  body{font-size:16px}
  .header__in,.header.is-scrolled .header__in{height:84px}
  .logo img,.header.is-scrolled .logo img{height:60px}
  .header__actions .btn{display:none}
  .hero{padding-top:100px}
  .hero__actions .btn{flex:1 1 100%}
  .hsol__grid{grid-template-columns:1fr;gap:18px}
  .hsol__cell,.hsol__cell--2,.hsol__cell--3{margin:0;transform:perspective(1200px) rotateY(-5deg) rotate(2deg)}
  .hcard__title{font-size:22px}
  .hcard__text{font-size:13px}
  .hcard__icon{width:48px;height:48px;font-size:20px}
  .form__grid,.footer__grid{grid-template-columns:1fr}
  .hero__dots{display:none}
  .partners__grid{grid-template-columns:1fr;gap:14px}
  .steps{gap:34px 12px}
  .step__dot{width:72px;height:72px;margin-bottom:18px}
  .step__ring{-webkit-mask:radial-gradient(circle,transparent 32px,#000 33px);mask:radial-gradient(circle,transparent 32px,#000 33px)}
  .step__num{width:56px;height:56px;font-size:20px}
  .step__title{font-size:17px}
  .step__text{font-size:14px}
  .approach__line{width:24px}
  .approach__dots{display:none}
  .stat{padding:24px 26px 28px}
  .offer__grid{grid-template-columns:1fr;gap:16px}
  .ocard{padding:24px 24px 26px}
  .why__grid{grid-template-columns:1fr}
  .sv-hero{padding-top:112px;--mh:230px}
  .sv-panel__img{top:auto;bottom:0;height:100%;aspect-ratio:auto;transform-origin:0 100%;-webkit-mask-image:none;mask-image:none}
  .sv-hero__media{flex-wrap:wrap;height:auto;gap:4px}
  .sv-panel__clip{-webkit-mask-image:linear-gradient(180deg,#000 75%,rgba(0,0,0,.6) 100%);mask-image:linear-gradient(180deg,#000 75%,rgba(0,0,0,.6) 100%)}
  .sv-panel{height:var(--mh)}
  .sv-hero__labels{position:static;flex:0 0 calc(100% + var(--mh) * var(--sk));order:2;grid-template-columns:1fr 1fr;gap:26px 16px;margin-top:22px;padding-bottom:10px}
  .sv-panel__label{padding:0}
  .sv-panel__txt b,.sv-panel__txt small{white-space:normal}
  .sv-ind__grid{grid-template-columns:1fr 1fr;gap:12px}
  .sv-ind__card{padding:18px 16px}
  .sv-ind__icon{width:44px;height:44px;font-size:18px;margin-bottom:12px}
  .sv-ind__card p{font-size:12.5px}
  .sv-ind__num{font-size:26px}
  .sv-divs__grid{grid-template-columns:1fr;max-width:460px}
  .hide-sm{display:none}
  .sv-steps{grid-template-columns:1fr 1fr}
  .tcard{padding:26px 22px 24px;flex-basis:300px}
  .tmarquee__group{gap:16px;padding-right:16px}
  .tmarquee__track{animation-duration:55s}
  .testi__dots--l{display:none}
  .clogo{width:160px;height:84px}
  .clogo img{max-height:66px;max-width:min(100%,120px)}
  .cmarquee__group{gap:32px;padding-right:32px}
  .clients__dots--l{display:none}
  .why__media{padding:40px 0}
  .orbit__item i{width:46px;height:46px;margin:-23px 0 0 -23px;font-size:18px;border-radius:14px}
  .orbit__item--sm i{width:38px;height:38px;margin:-19px 0 0 -19px;font-size:15px}
              .why__media-dots{display:none}
  .why__btn{width:100%}
  .stat__icon{width:58px;height:56px;font-size:24px;margin-bottom:16px}
  .perk{padding:20px;gap:16px}
  .perk__icon{width:60px;height:60px;font-size:24px}
  .pcard{padding:26px 22px 24px}
  .pcard__logo{width:72px;height:72px}
  .pcard__logo i{font-size:40px}
  .pcard__go{width:48px;height:48px;right:20px;bottom:20px}
  .partners__kicker{gap:12px;letter-spacing:.2em;font-size:12px}
  .partners__kicker span{width:28px}
  .partners__more .btn{white-space:normal;height:auto;min-height:52px;padding:12px 22px}
  .footer__grid{grid-template-columns:1fr;gap:30px}
  }
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition-duration:.01ms !important}
}

/* ===== Adobe License Inquiry popup ===== */
.amodal__box{max-width:720px;background:#fff;text-align:left;padding:clamp(26px,4.4vw,52px) clamp(20px,4.4vw,52px) clamp(24px,3.6vw,40px)}
.amodal__icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 18px;border-radius:18px;background:linear-gradient(135deg,#1b2f8f 0%,#2346d8 100%);color:#fff;font-size:24px;box-shadow:0 16px 30px -12px rgba(35,70,216,.6)}
.amodal__box h3{text-align:center;font-size:clamp(26px,3.4vw,36px);letter-spacing:-.01em;margin:0 0 10px;color:var(--ink)}
.amodal__sub{max-width:560px;margin:0 auto 30px;text-align:center;color:var(--muted);font-size:15.5px;line-height:1.55}
.amodal .form__grid{gap:20px 22px}
.amodal .field label{font-size:14px;font-weight:700;color:#1d2540;margin-bottom:9px}
.amodal .field input,.amodal .field select,.amodal .field textarea{padding:14px 18px;border:1.5px solid #e1e7f3;border-radius:14px;background:#f6f8fd;font-size:15px;transition:border-color .3s,box-shadow .3s,background .3s}
.amodal .field select{appearance:none;-webkit-appearance:none;padding-right:44px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%235b6072' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center}
.amodal .field input:hover,.amodal .field select:hover,.amodal .field textarea:hover{border-color:#c9d5ef}
.amodal .field input:focus,.amodal .field select:focus,.amodal .field textarea:focus{background-color:#fff;border-color:#2346d8;box-shadow:0 0 0 4px rgba(35,70,216,.12)}
.amodal .field input::placeholder,.amodal .field textarea::placeholder{color:#9aa3b8}
.amodal .field .is-invalid{border-color:#e0344b;box-shadow:0 0 0 4px rgba(224,52,75,.1)}
.amodal__rows{display:flex;flex-direction:column;gap:12px}
.amodal__row{display:grid;grid-template-columns:1fr 150px 46px;gap:12px;align-items:center}
.amodal__row:only-child{grid-template-columns:1fr 150px}
.amodal__row:only-child .amodal__del{display:none}
.amodal__del{width:46px;height:46px;border-radius:12px;border:1.5px solid #e1e7f3;background:#fff;color:#8a93a8;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.amodal__del:hover{background:#fdecee;border-color:#f5c2c9;color:#d0283f}
.amodal__add{display:inline-flex;align-items:center;gap:9px;margin-top:14px;padding:4px 0;border:0;background:none;font:inherit;font-size:15px;font-weight:700;color:#2346d8;cursor:pointer;transition:color .3s,gap .3s}
.amodal__add:hover{color:var(--blue-deep);gap:12px}
.amodal .field textarea{min-height:110px}
.amodal .form__msg:empty{display:none}
.amodal__submit{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:58px;margin-top:26px;border:0;border-radius:50px;background:linear-gradient(120deg,#1b2f8f 0%,#2346d8 60%,#3d6bff 100%);color:#fff;font:inherit;font-size:16.5px;font-weight:700;cursor:pointer;box-shadow:0 18px 36px -16px rgba(35,70,216,.75);transition:transform .35s var(--ease),box-shadow .35s}
.amodal__submit:hover{transform:translateY(-2px);box-shadow:0 22px 40px -16px rgba(35,70,216,.85)}
.amodal__submit i{transition:transform .35s var(--ease)}
.amodal__submit:hover i{transform:translate(3px,-3px)}
.amodal__submit.is-loading{opacity:.7;pointer-events:none}
.amodal .form__msg + .amodal__submit{margin-top:10px}
@media (max-width:640px){.amodal .form__grid{grid-template-columns:1fr}.amodal__row{grid-template-columns:1fr 76px 42px;gap:8px}.amodal__row:only-child{grid-template-columns:1fr 76px}.amodal__del{width:42px;height:42px}.amodal .field input,.amodal .field select{padding-left:14px}}
/* Adobe popup in Adobe page colours (red + black) */
.page-adobe .amodal__icon{background:var(--adb-grad);box-shadow:0 16px 30px -12px rgba(235,16,0,.55)}
.page-adobe .amodal__box h3{color:var(--adb-ink)}
.page-adobe .amodal .field input:focus,.page-adobe .amodal .field select:focus,.page-adobe .amodal .field textarea:focus{border-color:var(--adb-red);box-shadow:0 0 0 4px rgba(235,16,0,.1)}
.page-adobe .amodal__add{color:var(--adb-red)}
.page-adobe .amodal__add:hover{color:#b80d00}
.page-adobe .amodal__submit{background:var(--adb-ink);box-shadow:0 18px 36px -16px rgba(0,0,0,.55);overflow:hidden;isolation:isolate}
.page-adobe .amodal__submit::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--adb-grad);opacity:0;transition:opacity .4s}
.page-adobe .amodal__submit:hover{box-shadow:0 22px 40px -16px rgba(235,16,0,.6)}
.page-adobe .amodal__submit:hover::before{opacity:1}
.page-adobe .amodal .field input,.page-adobe .amodal .field select,.page-adobe .amodal .field textarea{background-color:#f7f7f8;border-color:#e6e6ea}
.page-adobe .amodal .field input:hover,.page-adobe .amodal .field select:hover,.page-adobe .amodal .field textarea:hover{border-color:#d2d2d8}
.page-adobe .amodal .field input:focus,.page-adobe .amodal .field select:focus,.page-adobe .amodal .field textarea:focus{background-color:#fff;border-color:var(--adb-red)}
.page-adobe .amodal .field label{color:var(--adb-ink)}
.page-adobe .amodal__del{border-color:#e6e6ea}
.page-adobe .amodal .field .is-invalid{border-color:#e0344b;box-shadow:0 0 0 4px rgba(224,52,75,.1)}

/* ===== Software page: intro + 4 business sections ===== */
.sw-intro{position:relative;padding:clamp(70px,8vw,110px) 0 clamp(20px,3vw,40px);background:#fff}
.sw-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:980px;margin:6px auto 0}
.sw-jump__item{--accent:var(--blue);display:flex;align-items:center;gap:12px;padding:10px 20px 10px 10px;border-radius:60px;background:#fff;border:1px solid #e6e9f2;box-shadow:0 14px 30px -22px rgba(16,24,40,.4);font-weight:800;color:#14161f;transition:translate .4s var(--ease),border-color .3s,box-shadow .4s}
.sw-jump__item:hover{translate:0 -4px;border-color:color-mix(in srgb,var(--accent) 45%,#fff);box-shadow:0 20px 36px -22px color-mix(in srgb,var(--accent) 60%,transparent)}
.sw-jump__logo{width:42px;height:42px;border-radius:50%;background:#f4f6fb;display:grid;place-items:center;flex-shrink:0}
.sw-jump__logo img{max-width:24px;max-height:24px}
.sw-jump__logo i{font-size:22px}
.sw-jump__logo b{font-size:24px}
.sw-jump__name--autodesk{text-transform:uppercase;letter-spacing:.02em}
.sw-jump__item>i{font-size:12px;color:var(--accent);transition:transform .35s var(--ease)}
.sw-jump__item:hover>i{transform:translateY(3px)}


/* Software page: the 4 dark business sections (colours come from 'theme' in software.php) */
.swd{--accent:#38bdf8;--g1:#0696d7;--g2:#1a3f9c;--glow:rgba(6,150,215,.35);--bg:#0a1222;--btn-ink:#05121f;position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,8vw,120px) 0;background:var(--bg)}
.swd+.swd{border-top:1px solid rgba(255,255,255,.06)}
.swd>.wrap{position:relative}
.swd__grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.065) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px;-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 30%,transparent 80%);mask-image:radial-gradient(ellipse at 50% 40%,#000 30%,transparent 80%)}
.swd__glow{position:absolute;z-index:-1;left:50%;top:-220px;width:760px;height:520px;translate:-50% 0;border-radius:50%;background:radial-gradient(closest-side,var(--glow),transparent);filter:blur(20px)}
.swd__head{max-width:860px;margin:0 auto clamp(40px,4vw,60px);text-align:center}
.swd__tag{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:6px 18px 6px 6px;border-radius:40px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);font-size:14.5px;font-weight:700;color:#fff}
.swd__tag-logo{width:30px;height:30px;border-radius:50%;background:#fff;display:grid;place-items:center;flex-shrink:0}
.swd__tag-logo img{max-width:18px;max-height:18px}
.swd__tag-logo i{font-size:16px}
.swd__tag-logo b{font-size:17px}
.swd__title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.4vw,52px);line-height:1.08;letter-spacing:-.035em;color:#fff;margin:0 0 20px}
.swd__title em{font-family:inherit;font-weight:inherit;font-style:normal;letter-spacing:inherit;color:var(--accent)}
.swd__text{font-size:clamp(15.5px,1.1vw,17.5px);line-height:1.7;color:rgba(255,255,255,.75);margin:0 auto 14px;max-width:760px}
.swd__h3{font-family:var(--f-body);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff;opacity:.9;text-align:center;margin:0 0 16px}
.swd__h3--left{text-align:left}
.swd__sols{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;max-width:1180px;margin:0 auto}
.swd__sol{position:relative;flex:0 0 calc((100% - 32px) / 3);display:flex;flex-direction:column;gap:6px;padding:26px;border-radius:18px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.11);transition:background .3s,border-color .3s,translate .4s var(--ease)}
.swd__sol:hover{translate:0 -5px;background:color-mix(in srgb,var(--accent) 8%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent)}
.swd__num{position:absolute;right:22px;top:20px;font-family:ui-monospace,Menlo,monospace;font-size:13px;color:color-mix(in srgb,var(--accent) 65%,transparent)}
.swd__icon{display:flex;align-items:center;justify-content:center;gap:6px;width:50px;height:50px;margin-bottom:12px;border-radius:14px;background:linear-gradient(135deg,var(--g1),var(--g2));color:#fff;font-size:20px;box-shadow:0 14px 26px -12px var(--glow)}
.swd__icon--apps{width:auto;height:auto;background:none;box-shadow:none;justify-content:flex-start}
.swd__icon--apps img{width:50px;height:50px;border-radius:12px;box-shadow:0 12px 24px -12px rgba(0,0,0,.7)}
.swd__sol b{font-size:18px;line-height:1.3;color:#fff;padding-right:20px}
.swd__sol small{font-size:14.5px;color:rgba(255,255,255,.6)}
.swd__corner{position:absolute;right:12px;bottom:12px;width:16px;height:16px;border-right:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);border-bottom:1.5px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:0 0 6px 0}
.swd__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;max-width:1180px;margin:clamp(34px,4vw,54px) auto 0;padding:clamp(24px,3vw,36px);border-radius:22px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.11)}
.swd__why{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 34px}
.swd__why li{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.88);font-weight:600;font-size:15.5px}
.swd__why i{color:var(--accent)}
.swd__btn{flex-shrink:0;display:inline-flex;align-items:center;gap:12px;padding:16px 28px;border-radius:50px;background:linear-gradient(120deg,var(--g1),var(--g2));color:var(--btn-ink);font-weight:700;font-size:16px;box-shadow:0 18px 36px -16px var(--glow);transition:translate .4s var(--ease),box-shadow .4s}
.swd__btn i{font-size:14px;transition:transform .35s var(--ease)}
.swd__btn:hover{translate:0 -3px}
.swd__btn:hover i{transform:translateX(5px)}
@media (max-width:980px){.swd__sol{flex-basis:calc((100% - 16px) / 2)}.swd__foot{flex-direction:column;align-items:flex-start}}
@media (max-width:560px){.swd__sol{flex-basis:100%}.swd__why{grid-template-columns:1fr}.sw-jump__item{flex:1 1 calc(50% - 14px);padding-right:14px}}
.swd--autodesk .swd__btn{background:var(--accent)}
.swd--autodesk .swd__icon{color:#1a1300}
.swd__photo{position:absolute;inset:-40px;z-index:-3;background-position:center;background-size:cover;filter:blur(7px) saturate(1.1);transform:scale(1.04)}
.swd--photo::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(21,21,21,.72) 0%,rgba(21,21,21,.5) 45%,rgba(21,21,21,.82) 100%)}
.swd--photo .swd__sol,.swd--photo .swd__foot{background:rgba(18,18,18,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.swd--photo .swd__sol:hover{background:color-mix(in srgb,var(--accent) 14%,rgba(18,18,18,.6))}
.page-software .sw-why{padding-bottom:clamp(80px,9vw,130px)}
.page-software .sw-why__grid{max-width:1240px}

/* ===== Digital contact card (vcard.php) ===== */
.vc-hero{position:relative;overflow:hidden;isolation:isolate;padding:clamp(140px,14vw,190px) 0 clamp(70px,8vw,110px);background:#0b1430;text-align:center}
.vc-hero__grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:80px 80px;-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 25%,transparent 75%);mask-image:radial-gradient(ellipse at 50% 40%,#000 25%,transparent 75%)}
.vc-hero__glow{position:absolute;z-index:-1;left:50%;top:-200px;width:820px;height:560px;translate:-50% 0;border-radius:50%;background:radial-gradient(closest-side,rgba(31,99,242,.45),transparent);filter:blur(20px)}
.vc-pill{display:inline-flex;align-items:center;gap:9px;padding:9px 20px;border-radius:40px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff;font-size:15px;font-weight:700;margin:0 0 22px}
.vc-pill i{color:#ffb21e}
.vc-hero__title{font-family:var(--f-body);font-weight:800;font-size:clamp(38px,5vw,72px);line-height:1.05;letter-spacing:-.045em;color:#fff;margin:0 0 14px}
.vc-hero__title em{font-style:normal;font-family:inherit;color:#5b8cff}
.vc-hero__lead{font-size:clamp(18px,1.6vw,24px);font-weight:700;color:#fff;margin:0 0 12px}
.vc-hero__divs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;margin:0 0 18px;color:rgba(255,255,255,.7);font-size:15.5px}
.vc-hero__divs span+span::before{content:"";display:inline-block;width:5px;height:5px;margin-right:22px;border-radius:50%;background:#ffb21e;vertical-align:middle;translate:0 -2px}
.vc-hero__quote{font-family:var(--f-serif);font-style:italic;font-size:clamp(20px,1.8vw,26px);color:rgba(255,255,255,.9);margin:0 0 34px}
.vc-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.vc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 26px;border-radius:50px;font-weight:700;font-size:16px;transition:translate .4s var(--ease),box-shadow .4s,background .3s,color .3s,border-color .3s}
.vc-btn:hover{translate:0 -3px}
.vc-btn--main{background:#1f63f2;color:#fff;box-shadow:0 18px 34px -16px rgba(31,99,242,.8)}
.vc-btn--wa{background:#25d366;color:#fff;box-shadow:0 18px 34px -16px rgba(37,211,102,.7)}
.vc-btn--line{border:1.5px solid rgba(255,255,255,.35);color:#fff}
.vc-btn--line:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.vc-btn--sm{padding:11px 18px;font-size:14.5px}

.vc-body{position:relative;padding:clamp(70px,8vw,110px) 0;background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.vc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:1040px;margin:0 auto}
.vc-card{display:flex;align-items:flex-start;gap:18px;padding:24px 26px;border-radius:20px;background:#fff;box-shadow:0 18px 40px -30px rgba(16,24,64,.4);transition:translate .4s var(--ease),box-shadow .4s}
.vc-card:hover{translate:0 -4px;box-shadow:0 26px 50px -30px rgba(31,92,242,.45)}
.vc-card__icon{display:grid;place-items:center;width:52px;height:52px;flex-shrink:0;border-radius:14px;background:linear-gradient(140deg,#3d7bff,#1b2f8f);color:#fff;font-size:20px;box-shadow:0 12px 24px -12px rgba(31,92,242,.7)}
.vc-card b,.vc-dept b{display:block;font-size:17.5px;color:#0f1a3c;margin-bottom:4px}
.vc-card small,.vc-dept small{display:block;font-size:15px;color:#5a6075;line-height:1.5}
.vc-link{display:block;font-size:15px;color:#5a6075;line-height:1.55;transition:color .3s}
.vc-link:hover{color:#1f63f2}
.vc-sub{margin-top:clamp(60px,6vw,90px)}
.vc-depts{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:1040px;margin:0 auto}
.vc-dept{padding:26px;border-radius:20px;background:#fff;box-shadow:0 18px 40px -30px rgba(16,24,64,.4)}
.vc-dept__top{display:flex;align-items:flex-start;gap:18px}
.vc-dept__num{display:block;margin:20px 0 16px;font-size:clamp(22px,2vw,28px);font-weight:800;letter-spacing:-.02em;color:#0f1a3c}
.vc-dept__btns{display:flex;flex-wrap:wrap;gap:10px}
.vc-partners,.vc-social{max-width:1040px;margin:clamp(50px,5vw,70px) auto 0;text-align:center}
.vc-partners h3,.vc-social h3{font-family:var(--f-body);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#1f4fd8;margin:0 0 20px}
.vc-partners__row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.vc-partners__logo{display:grid;place-items:center;height:90px;padding:14px;border-radius:16px;background:#fff;box-shadow:0 14px 30px -24px rgba(16,24,64,.4)}
.vc-partners__logo img{max-width:100%;max-height:44px;object-fit:contain}
.vc-social__row{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.vc-social__row a{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;color:#0f1a3c;font-size:19px;box-shadow:0 12px 26px -18px rgba(16,24,64,.45);transition:translate .4s var(--ease),background .3s,color .3s}
.vc-social__row a:hover{translate:0 -4px;background:#1f63f2;color:#fff}
@media (max-width:760px){.vc-grid,.vc-depts{grid-template-columns:1fr}.vc-partners__row{grid-template-columns:1fr 1fr}.vc-hero__divs{flex-direction:column;gap:4px}.vc-hero__divs span+span::before{display:none}}
@media (max-width:480px){.vc-btns .vc-btn{flex:1 1 100%}}

/* ===== Mobile menu (cleaner, smaller) ===== */
.menu{background:radial-gradient(120% 60% at 100% 0%,rgba(31,99,242,.28),transparent 60%),var(--ink);overflow-y:auto}
.menu__in{justify-content:flex-start;gap:26px;padding-top:110px;padding-bottom:32px;min-height:100%}
.menu__nav{gap:10px}
.menu__link{align-items:center;gap:14px;font-family:var(--f-body);font-size:20px;font-weight:700;letter-spacing:-.01em;line-height:1.2;padding:12px 14px 12px 12px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.04);transition:opacity .5s,transform .6s var(--ease),background .3s,border-color .3s,color .3s}
.menu__link:hover,.menu__link.is-active{color:#fff;background:rgba(31,99,242,.18);border-color:rgba(91,140,255,.45)}
.menu__ic{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:12px;background:rgba(255,255,255,.07);color:#9fb8ff;font-size:16px}
.menu__link.is-active .menu__ic{background:#1f63f2;color:#fff}
.menu__label{flex:1}
.menu__go{font-size:14px;color:rgba(255,255,255,.4);transition:transform .35s var(--ease),color .3s}
.menu__link:hover .menu__go,.menu__link.is-active .menu__go{color:#fff;transform:translateX(3px)}
.menu__quick{display:flex;flex-wrap:wrap;gap:8px;opacity:0;transform:translateY(20px);transition:opacity .5s .5s,transform .6s .5s var(--ease)}
.menu__quick a{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:30px;border:1px solid rgba(255,255,255,.14);font-size:14px;font-weight:600;color:rgba(255,255,255,.85)}
.menu__quick a i{color:var(--saffron);font-size:12px}
.menu__foot{margin-top:auto;gap:16px;opacity:0;transform:translateY(20px);transition:opacity .5s .58s,transform .6s .58s var(--ease)}
.menu-open .menu__quick,.menu-open .menu__foot{opacity:1;transform:none}
.menu__cta{display:flex;align-items:center;justify-content:center;gap:10px;height:54px;border-radius:50px;background:#1f63f2;color:#fff;font-weight:700;font-size:16px;box-shadow:0 18px 34px -16px rgba(31,99,242,.8)}
.menu__contact{display:flex;flex-direction:column;gap:8px}
.menu__contact a{display:flex;align-items:center;gap:10px;font-size:15px;color:rgba(255,255,255,.75)}
.menu__contact i{width:16px;color:#9fb8ff;font-size:13px}
.menu__social{margin-top:0;gap:8px}
.menu__social a{width:40px;height:40px;font-size:15px}
@media (min-width:700px){.menu__link{font-size:24px;padding:16px 18px 16px 14px}}
/* mobile menu polish */
.menu__in{gap:0;padding-top:118px}
.menu__nav{gap:12px}
.menu__link{padding:14px 18px 14px 14px;border-radius:18px;font-size:19px}
.menu__ic{width:44px;height:44px;border-radius:13px}
.menu__foot{margin-top:auto;padding-top:36px;gap:18px}
.menu__contact{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:10px 22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}
.menu__contact a{font-size:14.5px}
/* Home + Software hero: same top space / height as the other pages */
.hero{min-height:clamp(620px,43vw,720px);padding-top:110px}
.hero__in{padding-top:10px;padding-bottom:40px}
@media (max-width:1180px){.hero{min-height:0}}
@media (max-width:640px){.hero{padding-top:100px}.sw-hero{padding-top:104px}}
@media (max-width:1180px){.hero__in{grid-template-columns:minmax(0,1fr)}.hero__in>*{min-width:0}}
.tmarquee__track.is-js,.cmarquee__track.is-js{animation:none;width:auto}
.tmarquee__track.is-js .tmarquee__group,.cmarquee__track.is-js .cmarquee__group{padding-right:0;width:max-content}

/* ===== Video Production page ===== */
.vp-hero{position:relative;overflow:hidden;isolation:isolate;padding:clamp(150px,15vw,210px) 0 clamp(80px,9vw,130px);background:#0b0d16;text-align:center}
.vp-hero__bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;transform:scale(1.05)}
.vp-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,10,20,.78) 0%,rgba(8,10,20,.6) 50%,rgba(8,10,20,.92) 100%)}
.vp-pill{display:inline-flex;align-items:center;gap:9px;padding:9px 20px;border-radius:40px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:15px;font-weight:700;margin:0 0 22px}
.vp-pill i{color:#f02a4b}
.vp-hero__title{font-family:var(--f-body);font-weight:800;font-size:clamp(38px,5.4vw,78px);line-height:1.04;letter-spacing:-.045em;color:#fff;margin:0 0 20px}
.vp-hero__title em{font-family:inherit;font-style:normal;color:#ff4d6a}
.vp-hero__text{max-width:640px;margin:0 auto 34px;font-size:clamp(16px,1.3vw,19px);line-height:1.65;color:rgba(255,255,255,.8)}
.vp-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.vp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 28px;border-radius:50px;font-weight:700;font-size:16px;transition:translate .4s var(--ease),box-shadow .4s,background .3s,border-color .3s}
.vp-btn:hover{translate:0 -3px}
.vp-btn--main{background:#e8203f;color:#fff;box-shadow:0 18px 34px -14px rgba(232,32,63,.7)}
.vp-btn--line{border:1.5px solid rgba(255,255,255,.35);color:#fff}
.vp-btn--line:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.vp-sec{position:relative;padding:clamp(70px,8vw,110px) 0;background:#fff}
.vp-sec--soft{background:linear-gradient(180deg,#f4f7fd,#eef3fc)}
.vp-sec--dark{background:#0f1220}
.vp-light{color:#fff}
.vp-left{text-align:left}
.vp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1240px;margin:0 auto}
.vp-card{padding:26px 24px;border-radius:20px;background:#fff;border:1px solid #edf0f6;box-shadow:0 18px 40px -30px rgba(16,24,64,.35);transition:translate .4s var(--ease),box-shadow .4s}
.vp-card:hover{translate:0 -5px;box-shadow:0 26px 50px -30px rgba(232,32,63,.4)}
.vp-card__icon{display:grid;place-items:center;width:52px;height:52px;flex-shrink:0;margin-bottom:16px;border-radius:14px;background:linear-gradient(140deg,#ff4d6a,#c8102e);color:#fff;font-size:20px;box-shadow:0 12px 24px -12px rgba(232,32,63,.7)}
.vp-card__icon--sm{width:46px;height:46px;margin:0;font-size:18px}
.vp-card h3,.vp-step h3{font-family:var(--f-body);font-size:18px;font-weight:800;color:#0f1a3c;margin:0 0 8px}
.vp-card p,.vp-step p{font-size:15px;line-height:1.6;color:#5a6075;margin:0}
.vp-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1240px;margin:0 auto}
.vp-step{position:relative;padding:28px 24px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
.vp-step h3{color:#fff}
.vp-step p{color:rgba(255,255,255,.65)}
.vp-step__num{position:absolute;right:20px;top:16px;font-weight:800;font-size:34px;color:rgba(255,255,255,.08)}
.vp-step__icon{display:grid;place-items:center;width:50px;height:50px;margin-bottom:16px;border-radius:50%;border:1.5px solid rgba(255,77,106,.6);color:#ff4d6a;font-size:18px}
.vp-why{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);align-items:center;max-width:1240px}
.vp-why__pic{border-radius:26px;overflow:hidden;aspect-ratio:4/3.4;box-shadow:0 40px 80px -40px rgba(16,24,64,.5)}
.vp-why__pic img{width:100%;height:100%;object-fit:cover;display:block}
.vp-why .sv-pill{margin-bottom:16px}
.vp-why__list{display:grid;gap:14px;margin-top:10px}
.vp-why__item{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:16px;background:#f6f8fd}
.vp-why__item b{display:block;font-size:16.5px;color:#0f1a3c}
.vp-why__item small{display:block;font-size:14.5px;color:#5a6075}
.vp-faq{max-width:860px;margin:0 auto;display:grid;gap:12px}
.vp-faq__item{border-radius:16px;background:#fff;box-shadow:0 14px 30px -24px rgba(16,24,64,.4);overflow:hidden}
.vp-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;font-weight:700;font-size:16.5px;color:#0f1a3c;cursor:pointer;list-style:none}
.vp-faq__item summary::-webkit-details-marker{display:none}
.vp-faq__item summary i{flex-shrink:0;color:#e8203f;transition:transform .3s}
.vp-faq__item[open] summary i{transform:rotate(45deg)}
.vp-faq__item p{margin:0;padding:0 24px 22px;font-size:15.5px;line-height:1.65;color:#5a6075}
.vp-end{max-width:860px;margin:clamp(50px,6vw,80px) auto 0;padding:clamp(30px,4vw,50px);border-radius:26px;background:#0f1220;text-align:center}
.vp-end h2{font-family:var(--f-body);font-weight:800;font-size:clamp(26px,2.6vw,36px);color:#fff;margin:0 0 10px}
.vp-end p{color:rgba(255,255,255,.7);margin:0 0 24px}
@media (max-width:1100px){.vp-grid,.vp-steps{grid-template-columns:1fr 1fr}.vp-why{grid-template-columns:1fr}}
@media (max-width:560px){.vp-grid,.vp-steps{grid-template-columns:1fr}.vp-btns .vp-btn{flex:1 1 100%}.vp-hero{padding-top:130px}}
/* Adobe "Trusted partner" section: full black + Adobe red */
.page-adobe .aa{background:#000}
.page-adobe .aa .aa-card{background:transparent}
.page-adobe .aa-title span{background:none;-webkit-text-fill-color:var(--adb-red);color:var(--adb-red)}

/* ===== Autodesk page (charcoal + amber, like the Software page) ===== */
.page-autodesk{--adk:#ffc21a;--adk-2:#ff9f0a;--adk-ink:#0f0f0f}
.adk-grid{position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px;-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 30%,transparent 80%);mask-image:radial-gradient(ellipse at 50% 40%,#000 30%,transparent 80%)}
.adk-hero{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(620px,43vw,720px);display:flex;align-items:center;padding:130px 0 60px;background:var(--adk-ink)}
.adk-hero__photo{position:absolute;inset:-30px;z-index:-3;background-size:cover;background-position:center;filter:blur(6px);opacity:.55}
.adk-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(15,15,15,.95) 0%,rgba(15,15,15,.75) 50%,rgba(15,15,15,.45) 100%)}
.adk-hero__in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,4vw,70px);align-items:center;width:100%}
.adk-pill{display:inline-flex;align-items:center;gap:10px;padding:7px 18px 7px 8px;border-radius:40px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:#fff;font-size:14.5px;font-weight:700;margin:0 0 22px}
.adk-pill img{width:30px;height:30px;padding:6px;border-radius:50%;background:#fff;object-fit:contain}
.adk-hero__title{font-family:var(--f-body);font-weight:800;font-size:clamp(38px,4.4vw,68px);line-height:1.04;letter-spacing:-.045em;color:#fff;margin:0 0 20px}
.adk-hero__title em{font-family:inherit;font-style:normal;color:var(--adk)}
.adk-hero__text{max-width:580px;font-size:clamp(15.5px,1.15vw,18px);line-height:1.7;color:rgba(255,255,255,.75);margin:0 0 32px}
.adk-btns{display:flex;flex-wrap:wrap;gap:12px}
.adk-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 28px;border-radius:50px;font-weight:700;font-size:16px;transition:translate .4s var(--ease),box-shadow .4s,background .3s,border-color .3s,color .3s}
.adk-btn:hover{translate:0 -3px}
.adk-btn i{font-size:14px;transition:transform .35s var(--ease)}
.adk-btn:hover i{transform:translateX(5px)}
.adk-btn--main{background:var(--adk);color:#1a1300;box-shadow:0 18px 36px -16px rgba(255,194,26,.6)}
.adk-btn--line{border:1.5px solid rgba(255,255,255,.35);color:#fff}
.adk-btn--line:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.adk-hero__media{position:relative;height:420px}
.adk-badge{position:absolute;left:50%;top:50%;translate:-50% -50%;width:250px;padding:30px 26px;border-radius:26px;background:#fff;text-align:center;box-shadow:0 40px 80px -30px rgba(0,0,0,.8)}
.adk-badge__logo{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 16px;border-radius:20px;background:#f4f4f4}
.adk-badge__logo img{width:56px}
.adk-badge b{display:block;font-size:24px;letter-spacing:.02em;color:#111}
.adk-badge small{display:block;font-size:14px;color:#555}
.adk-chip{position:absolute;padding:10px 18px;border-radius:40px;background:rgba(255,255,255,.08);border:1px solid rgba(255,194,26,.35);color:#fff;font-weight:700;font-size:14.5px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:swFloat 6s ease-in-out infinite}
.adk-chip::before{content:"";display:inline-block;width:7px;height:7px;margin-right:9px;border-radius:50%;background:var(--adk);vertical-align:middle;translate:0 -1px}
.adk-chip--1{left:2%;top:8%}.adk-chip--2{right:4%;top:2%;animation-delay:-1s}.adk-chip--3{left:-2%;top:46%;animation-delay:-2s}.adk-chip--4{right:-2%;top:40%;animation-delay:-3s}.adk-chip--5{left:8%;bottom:8%;animation-delay:-4s}.adk-chip--6{right:8%;bottom:4%;animation-delay:-5s}.adk-chip--7{left:42%;bottom:-2%;animation-delay:-2.5s}
.adk-sec{position:relative;overflow:hidden;isolation:isolate;padding:clamp(70px,8vw,110px) 0;background:#fff}
.adk-sec--dark{background:var(--adk-ink)}
.adk-sec--soft{background:#f6f6f4}
.adk-kicker{display:inline-flex;align-items:center;gap:12px;margin:0 0 16px;font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#b07800}
.adk-kicker::before,.adk-kicker::after{content:"";width:28px;height:2px;background:var(--adk)}
.adk-kicker--light{color:var(--adk)}
.adk-title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.6vw,54px);line-height:1.08;letter-spacing:-.035em;color:#111;margin:0 0 16px}
.adk-title span{color:#d99a00}
.adk-title--light{color:#fff}
.adk-title--light span{color:var(--adk)}
.adk-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 auto 34px}
.adk-tab{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:50px;border:1.5px solid #e4e4e0;background:#fff;font:inherit;font-weight:700;font-size:15px;color:#333;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.adk-tab i{color:#d99a00}
.adk-tab:hover{border-color:var(--adk)}
.adk-tab.is-on{background:var(--adk-ink);border-color:var(--adk-ink);color:#fff}
.adk-tab.is-on i{color:var(--adk)}
.adk-panel{display:none;max-width:1180px;margin:0 auto}
.adk-panel.is-on{display:block;animation:adkIn .5s var(--ease)}
@keyframes adkIn{from{opacity:0;translate:0 20px}}
.adk-panel__lead{text-align:center;color:#666;margin:0 0 24px}
.adk-grid-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.adk-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:26px;border-radius:18px;background:#fff;border:1px solid #ecece8;box-shadow:0 18px 40px -32px rgba(0,0,0,.35);transition:translate .4s var(--ease),border-color .3s,box-shadow .4s}
.adk-card:hover{translate:0 -5px;border-color:rgba(255,194,26,.7);box-shadow:0 26px 50px -30px rgba(217,154,0,.45)}
.adk-card__num{position:absolute;right:22px;top:20px;font-family:ui-monospace,Menlo,monospace;font-size:13px;color:#c9a24a}
.adk-card b{font-size:19px;color:#111;padding-right:30px}
.adk-card small{font-size:15px;line-height:1.6;color:#666;margin-bottom:10px}
.adk-card__go{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14.5px;color:#b07800}
.adk-card__go i{font-size:12px;transition:transform .35s var(--ease)}
.adk-card:hover .adk-card__go i{transform:translateX(4px)}
.adk-services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1180px;margin:0 auto}
.adk-service{display:flex;flex-direction:column;gap:6px;padding:26px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.11);transition:background .3s,border-color .3s,translate .4s var(--ease)}
.adk-service:hover{translate:0 -5px;background:rgba(255,194,26,.07);border-color:rgba(255,194,26,.45)}
.adk-service__icon{display:grid;place-items:center;width:50px;height:50px;margin-bottom:12px;border-radius:14px;background:linear-gradient(135deg,var(--adk),var(--adk-2));color:#1a1300;font-size:19px}
.adk-service b{font-size:18px;color:#fff}
.adk-service small{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.62)}
.adk-why{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1180px;margin:0 auto}
.adk-why__item{position:relative;display:flex;flex-direction:column;gap:8px;padding:28px 24px;border-radius:20px;background:#fafaf8;border:1px solid #ecece8}
.adk-why__num{position:absolute;right:18px;top:12px;font-weight:800;font-size:34px;color:rgba(0,0,0,.06)}
.adk-why__icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:8px;border-radius:14px;background:var(--adk-ink);color:var(--adk);font-size:20px}
.adk-why__item b{font-size:18px;color:#111}
.adk-why__item small{font-size:14.5px;line-height:1.55;color:#666}
.adk-faq{max-width:860px;margin:0 auto;display:grid;gap:12px}
.adk-faq__item{border-radius:16px;background:#fff;box-shadow:0 14px 30px -24px rgba(0,0,0,.35)}
.adk-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;font-weight:700;font-size:16.5px;color:#111;cursor:pointer;list-style:none}
.adk-faq__item summary::-webkit-details-marker{display:none}
.adk-faq__item summary i{flex-shrink:0;color:#d99a00;transition:transform .3s}
.adk-faq__item[open] summary i{transform:rotate(45deg)}
.adk-faq__item p{margin:0;padding:0 24px 22px;font-size:15.5px;line-height:1.65;color:#666}
.adk-end{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1180px;margin:clamp(50px,6vw,80px) auto 0;padding:clamp(30px,4vw,56px) clamp(26px,4vw,60px);border-radius:28px;background:var(--adk-ink)}
.adk-end h2{font-family:var(--f-body);font-weight:800;font-size:clamp(24px,2.4vw,34px);color:#fff;margin:0 0 8px}
.adk-end p{color:rgba(255,255,255,.7);margin:0}
@media (max-width:1100px){.adk-hero__in{grid-template-columns:1fr}.adk-hero__media{max-width:560px;width:100%;margin:0 auto;height:380px}.adk-grid-cards,.adk-services{grid-template-columns:1fr 1fr}.adk-why{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.adk-hero{padding-top:110px}.adk-grid-cards,.adk-services,.adk-why{grid-template-columns:1fr}.adk-end{flex-direction:column;align-items:flex-start}.adk-btns .adk-btn,.adk-end .adk-btn{flex:1 1 100%;width:100%}.adk-hero__media{height:340px}.adk-badge{width:210px;padding:24px 20px}.adk-chip{font-size:13px;padding:8px 14px}.adk-tab{flex:1 1 100%;justify-content:center}}

/* ===== Autodesk page: Adobe layout in Autodesk yellow ===== */
.page-adk{--adb-red:#f2a900;--adb-grad:linear-gradient(90deg,#f5b400 0%,#ff9500 100%)}
.page-adk .ad-badge{border-color:#f1ead6}
.page-adk .ad-badge img{width:44px;height:auto;object-fit:contain}
.page-adk .ad-mean__item{border-color:#f1ead6}
.page-adk .ad-mean__icon{background:linear-gradient(140deg,#ffc21a,#f29900);color:#1a1300;box-shadow:0 12px 24px -10px rgba(242,153,0,.55)}
.page-adk .adk-ic{display:grid;place-items:center;border-radius:16px;background:#141414;color:#ffc21a;font-size:24px;transition:rotate .45s var(--ease),scale .45s var(--ease)}
.page-adk .ap-card:hover .adk-ic{rotate:-8deg;scale:1.08}
.page-adk .ap-card__list i{color:#e09a00}
.page-adk .ap-card__btn:hover{color:#d48f00}
.page-adk .apl-card__icon{background:#ffc21a;color:#1a1300}
.page-adk .aa-title span{-webkit-text-fill-color:#ffc21a;color:#ffc21a}
.page-adk .aa-point__icon{background:#ffc21a;color:#1a1300}
.page-adk .adk-faq__item summary i{color:#e09a00}
.page-adk .sv-hero__btn:hover{background:#ffc21a;color:#1a1300}
/* hero picture: wide banner */
.page-adk .ad-photo{aspect-ratio:1513/793;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 22%),linear-gradient(0deg,transparent 0%,#000 12%,#000 90%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0%,#000 22%),linear-gradient(0deg,transparent 0%,#000 12%,#000 90%,transparent 100%);mask-composite:intersect;mix-blend-mode:multiply}
.page-adk .ad-photo img{object-fit:cover}
@media (min-width:1181px){.page-adk .ad-photo{top:10px;width:clamp(640px,56vw,960px);margin:0 -14vw 0 -60px}}
@media (max-width:1180px){.page-adk .ad-photo{width:100%;margin:10px 0 0}}

/* Autodesk page: closing black section */
.adk-close{position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,130px) 0;background:#000;color:#fff}
.adk-close__glow{position:absolute;z-index:-1;right:-180px;top:-220px;width:640px;height:640px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,194,26,.22),transparent);filter:blur(10px)}
.adk-close__lines{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:90px 90px;-webkit-mask-image:radial-gradient(ellipse at 30% 50%,#000 20%,transparent 70%);mask-image:radial-gradient(ellipse at 30% 50%,#000 20%,transparent 70%)}
.adk-close__in{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,5vw,90px);align-items:center;max-width:1240px}
.adk-close__pill{display:inline-flex;align-items:center;gap:10px;margin:0 0 20px;padding:6px 18px 6px 6px;border-radius:40px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.adk-close__pill img{width:30px;height:30px;padding:6px;border-radius:50%;background:#fff;object-fit:contain}
.adk-close__title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.4vw,52px);line-height:1.08;letter-spacing:-.035em;margin:0 0 22px}
.adk-close__title span{color:#ffc21a}
.adk-close__text{font-size:clamp(15.5px,1.1vw,17.5px);line-height:1.8;color:rgba(255,255,255,.74);margin:0 0 16px;max-width:640px}
.adk-close__btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.adk-close__btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 28px;border-radius:50px;background:#ffc21a;color:#1a1300;font-weight:700;font-size:16px;box-shadow:0 18px 36px -16px rgba(255,194,26,.55);transition:translate .4s var(--ease),background .3s,border-color .3s}
.adk-close__btn:hover{translate:0 -3px}
.adk-close__btn i{font-size:14px}
.adk-close__btn--line{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.3);box-shadow:none}
.adk-close__btn--line:hover{border-color:#fff}
.adk-close__side{display:grid;gap:16px}
.adk-close__box{padding:24px 26px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
.adk-close__box h3{font-family:var(--f-body);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#ffc21a;margin:0 0 16px}
.adk-close__who{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.adk-close__who li{display:flex;align-items:center;gap:14px;font-weight:700;font-size:16.5px}
.adk-close__who i{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#ffc21a;color:#1a1300;font-size:15px}
.adk-close__tags{display:flex;flex-wrap:wrap;gap:8px}
.adk-close__tags span{padding:9px 16px;border-radius:40px;border:1px solid rgba(255,194,26,.4);color:#fff;font-size:14.5px;font-weight:600}
.adk-close__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.adk-close__stats div{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 10px;border-radius:16px;background:linear-gradient(160deg,rgba(255,194,26,.14),rgba(255,194,26,.03));border:1px solid rgba(255,194,26,.22);text-align:center}
.adk-close__stats i{font-size:20px;color:#ffc21a}
.adk-close__stats b{font-size:13.5px;line-height:1.3}
@media (max-width:1024px){.adk-close__in{grid-template-columns:1fr}}
@media (max-width:560px){.adk-close__stats{grid-template-columns:1fr}.adk-close__stats div{flex-direction:row;justify-content:flex-start;padding:14px 16px}.adk-close__btns .adk-close__btn{flex:1 1 100%}}
/* Autodesk hero: transparent cut-out picture */
.page-adk .ad-photo{aspect-ratio:1476/628;-webkit-mask-image:none;mask-image:none;mix-blend-mode:normal}
.page-adk .ad-photo picture{display:block;width:100%;height:100%}
.page-adk .ad-photo img{object-fit:contain}
@media (min-width:1181px){.page-adk .ad-photo{top:20px;width:clamp(600px,50vw,820px);margin:0 -40px 0 -40px}}
/* Autodesk page: contact form + cursor in Autodesk yellow */
.page-adk .modal .kicker{color:#c98a00}
.page-adk .modal__box{background:#fff}
.page-adk .modal .field input,.page-adk .modal .field select,.page-adk .modal .field textarea{background-color:#fafaf7;border-color:#e8e6df}
.page-adk .modal .field input:focus,.page-adk .modal .field select:focus,.page-adk .modal .field textarea:focus{background-color:#fff;border-color:#f2a900;box-shadow:0 0 0 4px rgba(255,194,26,.22)}
.page-adk .modal .field .is-invalid{border-color:#e0344b;box-shadow:none}
.page-adk .modal .btn--blue{background:#ffc21a;color:#1a1300;box-shadow:0 16px 32px -14px rgba(242,169,0,.6)}
.page-adk .modal .btn--blue::before{background:#111}
.page-adk .modal .btn--blue:hover{color:#fff}
.page-adk .modal__close:hover{background:#ffc21a;color:#1a1300}
.page-adk .cursor__dot{background:#f2a900}
.page-adk .cursor__ring{border-color:rgba(242,169,0,.55)}
.page-adk .cursor.is-link .cursor__ring,.page-adk .cursor__ring.is-link{border-color:#f2a900;background:rgba(255,194,26,.12)}
.page-adk .ad-photo{aspect-ratio:1912/786}
.page-adk .ad-photo{aspect-ratio:1983/793;-webkit-mask-image:none;mask-image:none;mix-blend-mode:normal;filter:none}
.page-adk .ad-photo img{object-fit:contain;filter:none;-webkit-mask-image:none;mask-image:none}

/* Autodesk FAQ: plain white like the Adobe page sections */
.page-adk .adk-faqsec{background:#fff}
.page-adk .adk-faqsec>.wrap{position:relative}
.page-adk .adk-faq__item{border:1px solid #efece2}

/* Autodesk page: closing section on white */
.adk-close--light{background:#fff;color:#111;border-top:1px solid #efece2}
.adk-close--light .adk-close__glow{background:radial-gradient(closest-side,rgba(255,194,26,.28),transparent)}
.adk-close--light .adk-close__lines{background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px)}
.adk-close--light .adk-close__pill{background:#fff;border-color:#e9e6dc;color:#111;box-shadow:0 10px 24px -18px rgba(0,0,0,.4)}
.adk-close--light .adk-close__pill img{background:#f5f3ec}
.adk-close--light .adk-close__title{color:#111}
.adk-close--light .adk-close__title span{color:#e6a000}
.adk-close--light .adk-close__text{color:#5a5a5a}
.adk-close--light .adk-close__btn--line{color:#111;border-color:#d8d5cb}
.adk-close--light .adk-close__btn--line:hover{border-color:#111}
.adk-close--light .adk-close__box{background:#fff;border-color:#ece9df;box-shadow:0 20px 44px -32px rgba(0,0,0,.35)}
.adk-close--light .adk-close__box h3{color:#c98a00}
.adk-close--light .adk-close__who li{color:#111}
.adk-close--light .adk-close__tags span{color:#222;background:#fffaf0;border-color:rgba(242,169,0,.45)}
.adk-close--light .adk-close__stats div{background:linear-gradient(160deg,#fff6db,#fffdf6);border-color:rgba(242,169,0,.35)}
.adk-close--light .adk-close__stats b{color:#111}
.adk-close--light .adk-close__stats i{color:#e6a000}
.adk-close--light{border-top:0}
.adk-close--light>.wrap{position:relative}
/* Adobe page: the general contact form in Adobe red + black */
.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .kicker{color:var(--adb-red)}
.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .modal__box{background:#fff}
.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .field input,.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .field select,.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .field textarea{background:#f7f7f8;border-color:#e6e6ea}
.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .field input:focus,.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .field select:focus,.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .field textarea:focus{background:#fff;border-color:var(--adb-red);box-shadow:0 0 0 4px rgba(235,16,0,.1)}
.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .field .is-invalid{border-color:#e0344b;box-shadow:none}
.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .btn--blue{background:var(--adb-ink);color:#fff;box-shadow:0 16px 32px -14px rgba(0,0,0,.5)}
.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .btn--blue::before{background:var(--adb-grad)}
.page-adobe:not(.page-adk):not(.page-ms) #enquiryModal .modal__close:hover{background:var(--adb-red);color:#fff}
.page-adobe:not(.page-adk):not(.page-ms) .cursor__dot{background:var(--adb-red)}
.page-adobe:not(.page-adk):not(.page-ms) .cursor__ring{border-color:rgba(235,16,0,.45)}
.page-adobe:not(.page-adk):not(.page-ms) .cursor.is-link .cursor__ring{background:rgba(235,16,0,.1)}
/* Autodesk product tiles (until official icons are added) */
.page-adk .adk-tile{display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--t) 85%,#fff),var(--t) 55%,color-mix(in srgb,var(--t) 70%,#000));box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 12px 22px -12px color-mix(in srgb,var(--t) 70%,transparent);transition:rotate .45s var(--ease),scale .45s var(--ease)}
.page-adk .adk-tile b{font-family:var(--f-body);font-weight:800;font-size:26px;letter-spacing:-.02em;color:#fff;line-height:1}
.page-adk .adk-tile b.sm{font-size:19px}
.page-adk .ap-card:hover .adk-tile{rotate:-8deg;scale:1.08}
.page-adk .ap-card__icon img{border-radius:14px}

/* ===== Microsoft page: Adobe layout in Microsoft blue ===== */
.page-ms{--adb-red:#0067b8;--adb-grad:linear-gradient(90deg,#0067b8 0%,#00a4ef 100%)}
.ms-logo{display:grid;grid-template-columns:1fr 1fr;gap:3px;width:40px;height:40px;flex-shrink:0}
.ms-logo i:nth-child(1){background:#f25022}.ms-logo i:nth-child(2){background:#7fba00}.ms-logo i:nth-child(3){background:#00a4ef}.ms-logo i:nth-child(4){background:#ffb900}
.ms-logo--sm{width:18px;height:18px;gap:2px;margin:0 6px}
.page-ms .ad-badge{border-color:#e3ebf5}
.page-ms .ad-mean__item{border-color:#e3ebf5}
.page-ms .ad-mean__icon{background:linear-gradient(140deg,#00a4ef,#0067b8);color:#fff;box-shadow:0 12px 24px -10px rgba(0,103,184,.55)}
.page-ms .ms-tile{display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--t) 80%,#fff),var(--t) 55%,color-mix(in srgb,var(--t) 70%,#000));box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 12px 22px -12px color-mix(in srgb,var(--t) 70%,transparent);transition:rotate .45s var(--ease),scale .45s var(--ease)}
.page-ms .ms-tile b{font-family:var(--f-body);font-weight:800;font-size:26px;letter-spacing:-.02em;color:#fff;line-height:1}
.page-ms .ms-tile b.sm{font-size:18px}
.page-ms .ap-card:hover .ms-tile{rotate:-8deg;scale:1.08}
.page-ms .ap-card__icon img{border-radius:14px}
.page-ms .ap-card__list i{color:#0078d4}
.page-ms .ap-card__btn:hover{color:#0067b8}
.page-ms .aa{background:#061a33}
.page-ms .aa-title span{-webkit-text-fill-color:#4cc2ff;color:#4cc2ff}
.page-ms .aa-point__icon{background:#0078d4;color:#fff}
.page-ms .aa-btn:hover{background:#0078d4;color:#fff}
.page-ms .sv-hero__btn:hover{background:#0067b8;color:#fff}
.page-ms .adk-faqsec{background:#fff}
.page-ms .adk-faq__item{border:1px solid #e6edf6}
.page-ms .adk-faq__item summary i{color:#0078d4}
.page-ms .adk-close__title span{color:#0067b8}
.page-ms .adk-close__btn{background:#0067b8;color:#fff;box-shadow:0 18px 36px -16px rgba(0,103,184,.6)}
.page-ms .adk-close__btn--line{background:transparent;color:#111;border-color:#d4dbe6;box-shadow:none}
.page-ms .adk-close__box h3{color:#0067b8}
.page-ms .adk-close__who i{background:#0078d4;color:#fff}
.page-ms .adk-close__tags span{background:#f2f8fd;border-color:rgba(0,120,212,.35)}
.page-ms .adk-close__stats div{background:linear-gradient(160deg,#e9f4fd,#f7fbff);border-color:rgba(0,120,212,.3)}
.page-ms .adk-close__stats i{color:#0078d4}
.page-ms .adk-close__pill{display:inline-flex;align-items:center}
/* hero picture: exactly as supplied */
.page-ms .ad-photo{aspect-ratio:2160/728;-webkit-mask-image:none;mask-image:none;mix-blend-mode:normal;filter:none}
.page-ms .ad-photo img{object-fit:contain;filter:none}
@media (min-width:1181px){.page-ms .ad-photo{top:20px;width:clamp(620px,52vw,880px);margin:0 -40px 0 -40px}}
@media (max-width:1180px){.page-ms .ad-photo{width:100%;margin:10px 0 0}}
/* contact form + cursor in Microsoft blue */
.page-ms #enquiryModal .kicker{color:#0067b8}
.page-ms #enquiryModal .modal__box{background:#fff}
.page-ms #enquiryModal .field input,.page-ms #enquiryModal .field select,.page-ms #enquiryModal .field textarea{background:#f6f9fc;border-color:#e1e8f0}
.page-ms #enquiryModal .field input:focus,.page-ms #enquiryModal .field select:focus,.page-ms #enquiryModal .field textarea:focus{background:#fff;border-color:#0078d4;box-shadow:0 0 0 4px rgba(0,120,212,.14)}
.page-ms #enquiryModal .field .is-invalid{border-color:#e0344b;box-shadow:none}
.page-ms #enquiryModal .btn--blue{background:#0067b8;color:#fff;box-shadow:0 16px 32px -14px rgba(0,103,184,.6)}
.page-ms #enquiryModal .btn--blue::before{background:#111}
.page-ms #enquiryModal .modal__close:hover{background:#0067b8;color:#fff}
.page-ms .cursor__dot{background:#0078d4}
.page-ms .cursor__ring{border-color:rgba(0,120,212,.45)}
@media (min-width:1181px){.page-ms .ad-hero__in{grid-template-columns:.85fr 1.15fr}.page-ms .ad-photo{width:clamp(700px,58vw,1000px);margin:0 -60px 0 -60px}}
.page-ms .ms-tagline{color:#4cc2ff;font-weight:700}
@media (min-width:1181px){.page-ms .ap-grid{grid-template-columns:repeat(4,1fr);max-width:1280px}.page-ms .ap-card{padding:26px 22px}}
.page-ms .ad-photo{aspect-ratio:1498/728;pointer-events:none}
@media (min-width:1181px){.page-ms .ad-hero__in{grid-template-columns:.95fr 1.05fr}.page-ms .ad-photo{width:clamp(560px,46vw,780px);margin:0 -30px 0 -20px}}
/* Microsoft hero: full image exactly as supplied (empty left part sits behind the text) */
.page-ms .ad-hero__copy{position:relative;z-index:2}
.page-ms .ad-hero__media{z-index:1}
.page-ms .ad-photo{aspect-ratio:2160/728;pointer-events:none}
@media (min-width:1181px){.page-ms .ad-hero__in{grid-template-columns:.95fr 1.05fr}.page-ms .ad-photo{width:clamp(820px,66vw,1120px);margin:0 -40px 0 calc(-1 * clamp(260px,22vw,380px))}}
@media (max-width:1180px){.page-ms .ad-photo{width:142%;margin:10px 0 0 -40%}}

/* License Inquiry popup - Autodesk (yellow) and Microsoft (blue) */
.page-adobe.page-adk .amodal__icon{background:linear-gradient(135deg,#ffc21a,#f29900);color:#1a1300;box-shadow:0 16px 30px -12px rgba(242,153,0,.55)}
.page-adobe.page-adk .amodal .field input:focus,.page-adobe.page-adk .amodal .field select:focus,.page-adobe.page-adk .amodal .field textarea:focus{border-color:#f2a900;box-shadow:0 0 0 4px rgba(255,194,26,.22)}
.page-adobe.page-adk .amodal__add{color:#c98a00}
.page-adobe.page-adk .amodal__add:hover{color:#8a5f00}
.page-adobe.page-adk .amodal__submit{background:#111}
.page-adobe.page-adk .amodal__submit::before{background:linear-gradient(90deg,#ffc21a,#f29900)}
.page-adobe.page-adk .amodal__submit:hover{color:#1a1300;box-shadow:0 22px 40px -16px rgba(242,153,0,.6)}
.page-adobe.page-ms .amodal__icon{background:linear-gradient(135deg,#00a4ef,#0067b8);box-shadow:0 16px 30px -12px rgba(0,103,184,.55)}
.page-adobe.page-ms .amodal .field input:focus,.page-adobe.page-ms .amodal .field select:focus,.page-adobe.page-ms .amodal .field textarea:focus{border-color:#0078d4;box-shadow:0 0 0 4px rgba(0,120,212,.14)}
.page-adobe.page-ms .amodal__add{color:#0067b8}
.page-adobe.page-ms .amodal__add:hover{color:#004e8c}
.page-adobe.page-ms .amodal__submit{background:#111}
.page-adobe.page-ms .amodal__submit::before{background:linear-gradient(90deg,#0067b8,#00a4ef)}
.page-adobe.page-ms .amodal__submit:hover{box-shadow:0 22px 40px -16px rgba(0,103,184,.6)}
.amodal .field .is-invalid{border-color:#e0344b!important;box-shadow:0 0 0 4px rgba(224,52,75,.1)!important}
.page-adk .ap-card__icon img{border-radius:0;object-fit:contain}
.page-ms .ap-card__icon img{border-radius:0;object-fit:contain}
.page-ms .ms-other{display:grid;place-items:center}
.page-ms .ms-other .ms-logo{width:50px;height:50px;gap:4px;transition:rotate .45s var(--ease),scale .45s var(--ease)}
.page-ms .ap-card:hover .ms-other .ms-logo{rotate:-8deg;scale:1.08}
.page-ms .ms-other::after{background:#00a4ef}

/* ============ RED HAT PAGE (page-adobe page-rh) - Red Hat red & black ============ */
.page-rh{--adb-red:#ee0000;--adb-ink:#151515;--adb-grad:linear-gradient(90deg,#ee0000 0%,#a60000 100%)}
.page-rh .rh-sub{margin:-6px 0 14px;font-weight:800;font-size:clamp(17px,1.35vw,21px);letter-spacing:-.01em;color:#ee0000}
.page-rh .rh-badge{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#ee0000;color:#fff;font-size:24px;flex-shrink:0}
.page-rh .rh-badge--sm{width:30px;height:30px;border-radius:50%;font-size:15px}
.page-rh .ad-badge{border-color:#f0e1e1}
.page-rh .ad-mean__item{border-color:#f0e1e1}
.page-rh .ad-mean__icon{background:linear-gradient(140deg,#ff2a2a,#c00000);color:#fff;box-shadow:0 12px 24px -10px rgba(238,0,0,.5)}
.page-rh .rh-tile{display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#ff3b3b,#ee0000 55%,#a30000);color:#fff;font-size:24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 12px 22px -12px rgba(238,0,0,.6);transition:rotate .45s var(--ease),scale .45s var(--ease)}
.page-rh .ap-card:hover .rh-tile{rotate:-8deg;scale:1.08}
.page-rh .ap-card__icon img{border-radius:0;object-fit:contain}
.page-rh .ap-card__list i{color:#ee0000}
.page-rh .ap-card__btn:hover{color:#ee0000}
.page-rh .aa{background:#000}
.page-rh .aa-title span{-webkit-text-fill-color:#ff3b3b;color:#ff3b3b}
.page-rh .aa-point__icon{background:#ee0000;color:#fff}
.page-rh .aa-btn:hover{background:#ee0000;color:#fff}
.page-rh .rh-tagline{color:#ff5c5c;font-weight:700}
.page-rh .sv-hero__btn:hover{background:#ee0000;color:#fff}
@media (min-width:1181px){.page-rh .ap-grid{grid-template-columns:repeat(4,1fr);max-width:1280px}.page-rh .ap-card{padding:26px 22px}}
/* hero picture - shown exactly as supplied */
.page-rh .ad-hero__copy{position:relative;z-index:2}
.page-rh .ad-hero__media{z-index:1}
.page-rh .ad-photo{aspect-ratio:1983/793;-webkit-mask-image:none;mask-image:none;mix-blend-mode:normal;filter:none;pointer-events:none}
.page-rh .ad-photo img{object-fit:contain;filter:none;-webkit-mask-image:none;mask-image:none}
@media (min-width:1181px){.page-rh .ad-hero__in{grid-template-columns:.95fr 1.05fr}.page-rh .ad-photo{top:20px;width:clamp(640px,54vw,940px);margin:0 -40px 0 -80px}}
@media (max-width:1180px){.page-rh .ad-photo{width:100%;margin:10px 0 0}}
/* closing section */
.page-rh .adk-close--light .adk-close__glow{background:radial-gradient(closest-side,rgba(238,0,0,.14),transparent)}
.page-rh .adk-close__title span{color:#ee0000}
.page-rh .adk-close__btn{background:#ee0000;color:#fff;box-shadow:0 18px 36px -16px rgba(238,0,0,.55)}
.page-rh .adk-close__btn--line{background:transparent;color:#111;border-color:#e2d6d6;box-shadow:none}
.page-rh .adk-close__box h3{color:#ee0000}
.page-rh .adk-close__who i{background:#ee0000;color:#fff}
.page-rh .adk-close__tags span{background:#fff5f5;border-color:rgba(238,0,0,.3)}
.page-rh .adk-close__stats div{background:linear-gradient(160deg,#ffeded,#fffafa);border-color:rgba(238,0,0,.25)}
.page-rh .adk-close__stats i{color:#ee0000}
/* general contact form + cursor */
.page-rh #enquiryModal .kicker{color:#ee0000}
.page-rh #enquiryModal .field input:focus,.page-rh #enquiryModal .field select:focus,.page-rh #enquiryModal .field textarea:focus{border-color:#ee0000;box-shadow:0 0 0 4px rgba(238,0,0,.1)}
.page-rh #enquiryModal .btn--blue{background:#151515;color:#fff}
.page-rh #enquiryModal .btn--blue::before{background:linear-gradient(90deg,#ee0000,#a60000)}
.page-rh #enquiryModal .modal__close:hover{background:#ee0000;color:#fff}
.page-rh .cursor__dot{background:#ee0000}
.page-rh .cursor__ring{border-color:rgba(238,0,0,.45)}
/* license inquiry popup */
.page-adobe.page-rh .amodal__icon{background:linear-gradient(135deg,#ff2a2a,#c00000);color:#fff;box-shadow:0 16px 30px -12px rgba(238,0,0,.55)}
.page-adobe.page-rh .amodal .field input:focus,.page-adobe.page-rh .amodal .field select:focus,.page-adobe.page-rh .amodal .field textarea:focus{border-color:#ee0000;box-shadow:0 0 0 4px rgba(238,0,0,.1)}
.page-adobe.page-rh .amodal__add{color:#ee0000}
.page-adobe.page-rh .amodal__add:hover{color:#a30000}
.page-adobe.page-rh .amodal__submit{background:#151515}
.page-adobe.page-rh .amodal__submit::before{background:linear-gradient(90deg,#ee0000,#a60000)}
.page-adobe.page-rh .amodal__submit:hover{box-shadow:0 22px 40px -16px rgba(238,0,0,.55)}
/* Red Hat icons - all on the same black tile */
.page-rh .rh-tile{background:#000;color:#ee0000;border-radius:22%;box-shadow:none;font-size:26px}
.page-rh .ap-card__icon img{border-radius:22%;transition:rotate .45s var(--ease),scale .45s var(--ease)}
.page-rh .ap-card:hover .ap-card__icon img{rotate:-8deg;scale:1.08}
/* Red Hat - all icons on one line at the top of the card */
.page-rh .ap-card__head{align-items:flex-start}
.page-rh .ap-card__head b{font-size:clamp(18px,1.4vw,21px);line-height:1.25}
/* Red Hat hero picture v2 (2172x724) - shown exactly as supplied */
.page-rh .ad-photo{aspect-ratio:2172/724}
@media (min-width:1181px){.page-rh .ad-hero__in{grid-template-columns:.95fr 1.05fr}.page-rh .ad-photo{top:20px;width:clamp(780px,62vw,1080px);margin:0 -40px 0 calc(-1 * clamp(200px,18vw,320px))}}
@media (max-width:1180px){.page-rh .ad-photo{width:130%;margin:10px 0 0 -15%}}
@media (min-width:1181px){.page-rh .ad-photo{top:30px;width:clamp(700px,54vw,900px);margin:0 -40px 0 calc(-1 * clamp(20px,3vw,50px))}}
@media (max-width:1180px){.page-rh .ad-photo{width:100%;margin:10px 0 0}}
@media (min-width:1181px){.page-rh .ad-photo{width:clamp(640px,48vw,840px);margin:0 0 0 calc(-1 * clamp(10px,2vw,40px))}}

/* ================= SOFTWARE PAGE - 4 light brand sections (swl) ================= */
.swl{position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,130px) 0}
.swl__deco{position:absolute;inset:0;z-index:-1;pointer-events:none}
.swl__deco i{position:absolute;display:block}
.swl__tag{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:6px 18px 6px 6px;border-radius:40px;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 10px 24px -16px rgba(0,0,0,.35);font-size:14.5px;font-weight:700;color:#111}
.swl__tag-logo{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#f5f5f5;overflow:hidden}
.swl__tag-logo img{width:20px;height:20px;object-fit:contain}
.swl__tag-logo i{font-size:17px}
.swl__tag-logo .fa-redhat{color:#ee0000}
.swl__tag-logo .fa-microsoft{background:linear-gradient(#f25022,#f25022) 0 0/50% 50% no-repeat,linear-gradient(#7fba00,#7fba00) 100% 0/50% 50% no-repeat,linear-gradient(#00a4ef,#00a4ef) 0 100%/50% 50% no-repeat,linear-gradient(#ffb900,#ffb900) 100% 100%/50% 50% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent}
.swl__title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.4vw,52px);line-height:1.08;letter-spacing:-.035em;color:#111;margin:0 0 20px}
.swl__title em{font-style:normal;color:var(--sa)}
.swl__text{font-size:clamp(15.5px,1.1vw,17.5px);line-height:1.8;color:#555c6b;margin:0 0 14px;max-width:640px}
.swl__h3{font-family:var(--f-body);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--sa);margin:30px 0 14px}
.swl__why{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.swl__why li{display:flex;align-items:center;gap:12px;font-weight:600;font-size:16px;color:#1d2230}
.swl__why i{color:var(--sa);font-size:17px}
.swl__btn{display:inline-flex;align-items:center;gap:12px;margin-top:30px;padding:16px 28px;border-radius:50px;background:var(--sa);color:var(--sb,#fff);font-weight:700;font-size:16px;box-shadow:0 18px 36px -16px var(--sg);transition:translate .4s var(--ease),background .3s,color .3s}
.swl__btn:hover{translate:0 -3px;background:#111;color:#fff}
.swl__btn i{font-size:14px;transition:translate .3s var(--ease)}
.swl__btn:hover i{translate:4px 0}
.swl__icon{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;width:54px;height:54px;border-radius:14px;background:linear-gradient(140deg,var(--sa),var(--sa2,var(--sa)));color:#fff;font-size:22px;box-shadow:0 12px 24px -12px var(--sg);transition:rotate .45s var(--ease),scale .45s var(--ease)}
.swl__icon img{width:100%;height:100%;object-fit:contain;display:block}
.swl__icon:has(img){background:none;box-shadow:none}
.swl__icon--apps{width:auto}
.swl__icon--apps img{width:46px;height:46px;border-radius:10px}

/* ---------- 1. ADOBE: warm blush, soft red blobs + dots ---------- */
.swl--adobe{--sa:#eb1000;--sa2:#ff4d2e;--sg:rgba(235,16,0,.45);background:linear-gradient(160deg,#fff6f3 0%,#fff 55%,#fff8f6 100%)}
.swl--adobe .swl__deco i:nth-child(1){right:-160px;top:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,46,.18),transparent)}
.swl--adobe .swl__deco i:nth-child(2){left:-200px;bottom:-220px;width:560px;height:560px;border-radius:50%;background:radial-gradient(closest-side,rgba(235,16,0,.10),transparent)}
.swl--adobe .swl__deco i:nth-child(3){right:6%;bottom:8%;width:180px;height:120px;background-image:radial-gradient(rgba(235,16,0,.25) 1.6px,transparent 1.8px);background-size:20px 20px}
.swl-a{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(36px,5vw,80px);align-items:center;max-width:1240px}
.swl-a__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.swl-a__card{position:relative;display:flex;flex-direction:column;gap:6px;padding:24px 22px;border-radius:20px;background:#fff;border:1px solid #f3e4e0;box-shadow:0 22px 44px -34px rgba(120,20,0,.45);transition:translate .4s var(--ease),border-color .3s,box-shadow .4s}
.swl-a__card:nth-child(even){translate:0 22px}
.swl-a__card .swl__icon{margin-bottom:12px}
.swl-a__card b{font-size:17px;font-weight:800;color:#111;line-height:1.3}
.swl-a__card small{font-size:14.5px;color:#6b6f7b}
.swl-a__num{position:absolute;right:18px;top:16px;font-size:12px;font-weight:800;color:rgba(235,16,0,.4)}
.swl-a__card:hover{border-color:rgba(235,16,0,.35);box-shadow:0 26px 50px -30px rgba(235,16,0,.45)}
.swl-a__card:hover .swl__icon{rotate:-8deg;scale:1.06}

/* ---------- 2. AUTODESK: soft yellow, diagonal lines ---------- */
.swl--autodesk{--sa:#f2a900;--sa2:#ff9500;--sb:#1a1300;--sg:rgba(242,169,0,.55);background:linear-gradient(180deg,#fffaeb 0%,#fffdf6 100%)}
.swl--autodesk .swl__title em{color:#e09a00}
.swl--autodesk .swl__h3,.swl--autodesk .swl__why i{color:#c98a00}
.swl--autodesk .swl__deco i:nth-child(1){inset:0;background-image:repeating-linear-gradient(135deg,rgba(242,169,0,.07) 0 2px,transparent 2px 26px);-webkit-mask-image:radial-gradient(ellipse at 80% 20%,#000 10%,transparent 60%);mask-image:radial-gradient(ellipse at 80% 20%,#000 10%,transparent 60%)}
.swl--autodesk .swl__deco i:nth-child(2){left:-120px;top:20%;width:420px;height:420px;border-radius:50%;border:60px solid rgba(255,194,26,.10)}
.swl-k{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,80px);align-items:center;max-width:1240px}
.swl-k__panel{padding:14px;border-radius:26px;background:#fff;border:1px solid #f1e8cf;box-shadow:0 30px 60px -40px rgba(120,90,0,.45)}
.swl-k__panel-head{display:flex;align-items:center;gap:10px;margin:0;padding:14px 16px 12px;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#c98a00}
.swl-k__row{display:flex;align-items:center;gap:16px;padding:14px 16px;border-radius:16px;color:inherit;transition:background .3s}
.swl-k__row+.swl-k__row{border-top:1px dashed #efe6cc}
.swl-k__row .swl__icon{width:48px;height:48px}
.swl-k__row b{display:block;font-size:16.5px;font-weight:800;color:#111}
.swl-k__row small{display:block;font-size:14px;color:#6b6f7b}
.swl-k__go{margin-left:auto;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#fff6dc;color:#c98a00;font-size:13px;transition:background .3s,color .3s,translate .3s var(--ease)}
.swl-k__row:hover{background:#fffaeb}
.swl-k__row:hover .swl-k__go{background:#ffc21a;color:#1a1300;translate:3px 0}
.swl-k__row:hover .swl__icon{rotate:-8deg;scale:1.06}
.swl-k__steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.swl-k__steps li{display:flex;align-items:center;gap:14px;font-weight:600;font-size:16px;color:#1d2230}
.swl-k__steps span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#ffc21a;color:#1a1300;font-size:12.5px;font-weight:800}
.swl--autodesk .swl__btn{background:#ffc21a}

/* ---------- 3. MICROSOFT: light blue, grid lines, four colour squares ---------- */
.swl--microsoft{--sa:#0067b8;--sa2:#00a4ef;--sg:rgba(0,103,184,.45);background:linear-gradient(180deg,#f2f8fe 0%,#f9fbff 100%)}
.swl--microsoft .swl__deco i:nth-child(1){inset:0;background-image:linear-gradient(rgba(0,103,184,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,103,184,.06) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 50% 0%,#000 20%,transparent 70%);mask-image:radial-gradient(ellipse at 50% 0%,#000 20%,transparent 70%)}
.swl--microsoft .swl__deco i:nth-child(2){left:6%;top:14%;width:56px;height:56px;background:#f25022;opacity:.14;border-radius:6px}
.swl--microsoft .swl__deco i:nth-child(3){right:7%;top:22%;width:44px;height:44px;background:#7fba00;opacity:.16;border-radius:6px}
.swl--microsoft .swl__deco i:nth-child(4){right:12%;bottom:10%;width:64px;height:64px;background:#ffb900;opacity:.14;border-radius:6px;box-shadow:-420px -40px 0 -8px rgba(0,164,239,.9)}
.swl-m__head{text-align:center;max-width:860px;margin:0 auto 46px}
.swl-m__head .swl__text{margin-left:auto;margin-right:auto}
.swl-m__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1240px;margin:0 auto}
.swl-m__tile{position:relative;display:flex;flex-direction:column;gap:6px;padding:26px 22px 24px;border-radius:18px;background:#fff;border:1px solid #e3ecf6;overflow:hidden;transition:translate .4s var(--ease),box-shadow .4s}
.swl-m__tile::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--bar,#0078d4);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.swl-m__tile:nth-child(4n+1){--bar:#f25022}.swl-m__tile:nth-child(4n+2){--bar:#7fba00}.swl-m__tile:nth-child(4n+3){--bar:#00a4ef}.swl-m__tile:nth-child(4n+4){--bar:#ffb900}
.swl-m__tile .swl__icon{margin-bottom:12px;width:50px;height:50px}
.swl-m__tile b{font-size:16.5px;font-weight:800;color:#111}
.swl-m__tile small{font-size:14px;color:#6b6f7b}
.swl-m__tile:hover{translate:0 -5px;box-shadow:0 26px 50px -32px rgba(0,60,120,.45)}
.swl-m__tile:hover::after{transform:scaleX(1)}
.swl-m__tile:hover .swl__icon{rotate:-8deg;scale:1.06}
.swl-m__foot{display:flex;flex-direction:column;align-items:center;margin-top:44px}
.swl-m__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:900px}
.swl-m__chips span{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:40px;background:#fff;border:1px solid #d9e6f3;font-size:14.5px;font-weight:600;color:#1d2230}
.swl-m__chips i{color:#0078d4;font-size:12px}

/* ---------- 4. RED HAT: white, red curves + black card ---------- */
.swl--redhat{--sa:#ee0000;--sa2:#a60000;--sg:rgba(238,0,0,.45);background:#fff}
.swl--redhat .swl__deco i:nth-child(1){right:-260px;bottom:-320px;width:760px;height:760px;border-radius:50%;border:2px solid rgba(238,0,0,.14);box-shadow:0 0 0 60px rgba(238,0,0,.03),0 0 0 120px rgba(238,0,0,.025)}
.swl--redhat .swl__deco i:nth-child(2){left:-140px;top:-140px;width:380px;height:380px;border-radius:50%;background:radial-gradient(closest-side,rgba(238,0,0,.09),transparent)}
.swl-r__top{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,5vw,80px);align-items:center;max-width:1240px;margin:0 auto 48px}
.swl-r__card{position:relative;overflow:hidden;padding:clamp(28px,3vw,40px);border-radius:26px;background:#151515;color:#fff;box-shadow:0 34px 64px -36px rgba(0,0,0,.6)}
.swl-r__card::before{content:"";position:absolute;right:-90px;top:-90px;width:240px;height:240px;border-radius:50%;background:radial-gradient(closest-side,rgba(238,0,0,.45),transparent)}
.swl-r__card h3{position:relative;font-family:var(--f-body);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#ff4d4d;margin:0 0 18px}
.swl-r__card .swl__why{position:relative}
.swl-r__card .swl__why li{color:#fff}
.swl-r__card .swl__why i{color:#ee0000}
.swl-r__card .swl__btn:hover{background:#fff;color:#111}
.swl-r__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1240px;margin:0 auto}
.swl-r__item{position:relative;display:flex;align-items:center;gap:16px;padding:20px 22px;border-radius:18px;background:#fff;border:1px solid #efe3e3;border-left:4px solid #ee0000;box-shadow:0 20px 40px -34px rgba(0,0,0,.4);transition:translate .4s var(--ease),box-shadow .4s}
.swl-r__item b{display:block;font-size:16px;font-weight:800;color:#111;line-height:1.3}
.swl-r__item small{display:block;font-size:14px;color:#6b6f7b}
.swl-r__num{position:absolute;right:16px;top:12px;font-size:12px;font-weight:800;color:rgba(238,0,0,.35)}
.swl-r__item:hover{translate:0 -4px;box-shadow:0 26px 50px -30px rgba(238,0,0,.35)}
.swl-r__item:hover .swl__icon{rotate:-8deg;scale:1.06}

@media (max-width:1100px){.swl-m__grid{grid-template-columns:repeat(2,1fr)}.swl-r__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:1024px){.swl-a,.swl-k,.swl-r__top{grid-template-columns:1fr}.swl-k__panel{order:2}.swl-a__card:nth-child(even){translate:none}}
@media (max-width:600px){.swl-a__grid,.swl-m__grid,.swl-r__grid{grid-template-columns:1fr}.swl__btn{width:100%;justify-content:center}}
.swl__title em{font-family:inherit;font-style:normal;font-weight:800;letter-spacing:inherit}
.swl--microsoft .swl__deco i:nth-child(2){left:4%;top:9%;width:26px;height:26px;opacity:.5;box-shadow:32px 0 0 #7fba00,0 32px 0 #00a4ef,32px 32px 0 #ffb900;border-radius:4px}
.swl--microsoft .swl__deco i:nth-child(3),.swl--microsoft .swl__deco i:nth-child(4){display:none}
@media (max-width:760px){.swl--microsoft .swl__deco i:nth-child(2){display:none}}
.swl-a__card .swl__icon,.swl-m__tile .swl__icon{align-self:flex-start}
@media (max-width:600px){.swl-m__grid{grid-template-columns:repeat(2,1fr);gap:12px}.swl-m__tile{padding:20px 16px}.swl-m__tile b{font-size:15px}.swl-m__tile small{font-size:13px}}
/* ---- Software page: all 4 brands in the Red Hat layout, each in its own colours, on the normal blue background ---- */
.swl{background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.swl--autodesk,.swl--redhat{background:#fff}
.swl .swl__deco{display:none}
.swl-r__card{background:var(--dk,#151515)}
.swl-r__card::before{background:radial-gradient(closest-side,var(--sg),transparent)}
.swl-r__card h3{color:var(--sh,#ff4d4d)}
.swl-r__card .swl__why i{color:var(--sa)}
.swl-r__item{border-color:var(--bd,#efe3e3);border-left-color:var(--sa)}
.swl-r__num{color:var(--sn,rgba(238,0,0,.35))}
.swl-r__item:hover{box-shadow:0 26px 50px -30px var(--sg)}
.swl__btn{background:var(--sa);color:var(--sb,#fff)}
.swl--adobe{--sa:#eb1000;--sa2:#ff4d2e;--sg:rgba(235,16,0,.45);--dk:#131313;--sh:#ff5a3c;--bd:#f3e2de;--sn:rgba(235,16,0,.4);--sb:#fff}
.swl--autodesk{--sa:#ffc21a;--sa2:#f29900;--sg:rgba(242,169,0,.5);--dk:#141414;--sh:#ffc21a;--bd:#f1ead6;--sn:rgba(201,138,0,.55);--sb:#1a1300}
.swl--autodesk .swl__title em{color:#e6a000}
.swl--autodesk .swl__tag-logo img{width:22px;height:22px}
.swl--microsoft{--sa:#0078d4;--sa2:#00a4ef;--sg:rgba(0,120,212,.45);--dk:#061a33;--sh:#4cc2ff;--bd:#e1eaf5;--sn:rgba(0,120,212,.4);--sb:#fff}
.swl--microsoft .swl__title em{color:#0067b8}
.swl--microsoft .swl-r__card .swl__why i{color:#4cc2ff}
.swl--redhat{--sa:#ee0000;--sa2:#a60000;--sg:rgba(238,0,0,.45);--dk:#151515;--sh:#ff4d4d;--bd:#efe3e3;--sn:rgba(238,0,0,.35);--sb:#fff}
.swl .swl-r__card .swl__btn:hover{background:#fff;color:#111}
.swl .swl__title em{font-family:inherit;font-style:normal}
@media (min-width:1101px){.swl--microsoft .swl-r__grid{grid-template-columns:repeat(4,1fr)}.swl--microsoft .swl-r__item{padding:18px 16px;gap:12px}.swl--microsoft .swl-r__item .swl__icon{width:44px;height:44px}}
.swl-r__item .swl__icon--apps img{width:40px;height:40px}
.swl-r__item{padding-right:36px}
/* ---- Software page: each brand section's background design in its own colours ---- */
.swl{--w1:rgba(110,150,240,.28);--w2:rgba(90,140,245,.30);--rg:rgba(35,80,220,.14);--dt:#8e9cc0}
.swl .sv-divs__wave--l{background:radial-gradient(closest-side,var(--w1),transparent)}
.swl .sv-divs__wave--r{background:radial-gradient(closest-side,var(--w2),transparent)}
.swl .sv-divs__ring{border-color:var(--rg)}
.swl .offer__dots{background-image:radial-gradient(circle,var(--dt) 1.8px,transparent 2.2px)}
.swl--adobe{background:linear-gradient(180deg,#fff5f3 0%,#fdeeea 100%);--w1:rgba(255,77,46,.20);--w2:rgba(235,16,0,.16);--rg:rgba(235,16,0,.14);--dt:#f0a093}
.swl--autodesk{background:linear-gradient(180deg,#fffbee 0%,#fff6dc 100%);--w1:rgba(255,194,26,.30);--w2:rgba(242,153,0,.22);--rg:rgba(242,169,0,.25);--dt:#e8c56a}
.swl--microsoft{background:linear-gradient(180deg,#f1f8fe 0%,#e8f3fd 100%);--w1:rgba(0,164,239,.22);--w2:rgba(0,103,184,.18);--rg:rgba(0,120,212,.16);--dt:#8fbde6}
.swl--redhat{background:linear-gradient(180deg,#fff 0%,#fdf1f1 100%);--w1:rgba(238,0,0,.12);--w2:rgba(166,0,0,.12);--rg:rgba(238,0,0,.14);--dt:#e9a3a3}
.swl--microsoft .swl-r__item{padding-right:44px}
/* Software page header tiles are links to each brand page */
a.sw-tile{color:inherit;text-decoration:none;cursor:pointer;transition:translate .4s var(--ease),box-shadow .4s}
a.sw-tile:hover{translate:0 -6px;box-shadow:0 30px 56px -28px color-mix(in srgb,var(--accent) 55%,transparent)}

/* ===================== WEB & APP SOLUTIONS PAGE (page-web) ===================== */
.page-web{--wb:#1f4fd8;--wb2:#1b2f8f;--wc:#22c3ee;--wv:#7c5cff}
.wd-pill{display:inline-flex;align-items:center;gap:10px;margin:0 0 22px;padding:9px 18px;border-radius:40px;background:#fff;border:1px solid #dfe6f7;box-shadow:0 10px 24px -16px rgba(31,79,216,.5);font-size:14.5px;font-weight:700;color:var(--wb);font-family:var(--f-body)}
.wd-pill__dot{width:9px;height:9px;border-radius:50%;background:var(--wc);box-shadow:0 0 0 4px rgba(34,195,238,.2);animation:wdPulse 1.8s ease-in-out infinite}
.wd-pill--dark{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#cfe0ff;box-shadow:none}
@keyframes wdPulse{50%{box-shadow:0 0 0 8px rgba(34,195,238,0)}}
.wd-dots{display:inline-flex;gap:6px}
.wd-dots i{width:10px;height:10px;border-radius:50%;background:#ff5f57}
.wd-dots i:nth-child(2){background:#febc2e}.wd-dots i:nth-child(3){background:#28c840}
.wd-caret{display:inline-block;width:8px;height:1.05em;margin-left:4px;vertical-align:-2px;background:currentColor;animation:wdBlink 1s steps(1) infinite}
@keyframes wdBlink{50%{opacity:0}}
.wd-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 28px;border-radius:50px;font-weight:700;font-size:16px;border:1.5px solid transparent;transition:translate .4s var(--ease),background .3s,color .3s,border-color .3s,box-shadow .4s}
.wd-btn i{font-size:14px;transition:translate .3s var(--ease)}
.wd-btn:hover{translate:0 -3px}.wd-btn:hover i{translate:4px 0}
.wd-btn--main{background:linear-gradient(90deg,var(--wb),var(--wv));color:#fff;box-shadow:0 18px 36px -16px rgba(31,79,216,.65)}
.wd-btn--main:hover{box-shadow:0 22px 44px -16px rgba(124,92,255,.7)}
.wd-btn--line{border-color:#c9d4f0;color:#0b1638;background:rgba(255,255,255,.6)}
.wd-btn--line:hover{border-color:var(--wb);color:var(--wb)}
.wd-btn--white{background:#fff;color:#0b1638}
.wd-btn--ghost{border-color:rgba(255,255,255,.4);color:#fff}
.wd-btn--ghost:hover{background:#25d366;border-color:#25d366}

/* hero */
.wd-hero{position:relative;overflow:hidden;isolation:isolate;padding:clamp(130px,13vw,170px) 0 clamp(70px,8vw,110px);background:linear-gradient(180deg,#f4f7fd 0%,#eaf0fd 100%)}
.wd-hero__grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(31,79,216,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(31,79,216,.07) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000 15%,transparent 70%);mask-image:radial-gradient(ellipse at 70% 40%,#000 15%,transparent 70%)}
.wd-hero__blob{position:absolute;z-index:-1;border-radius:50%;filter:blur(10px)}
.wd-hero__blob--a{width:520px;height:520px;right:-120px;top:-80px;background:radial-gradient(closest-side,rgba(124,92,255,.22),transparent)}
.wd-hero__blob--b{width:460px;height:460px;left:-160px;bottom:-200px;background:radial-gradient(closest-side,rgba(34,195,238,.2),transparent)}
.wd-hero__in{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,4vw,70px);align-items:center;max-width:1280px}
.wd-hero__title{font-family:var(--f-body);font-weight:800;font-size:clamp(38px,4.6vw,70px);line-height:1.04;letter-spacing:-.04em;color:#0b1638;margin:0 0 22px}
.wd-hero__title em{font-style:normal;background:linear-gradient(90deg,var(--wb),var(--wv) 60%,var(--wc));-webkit-background-clip:text;background-clip:text;color:transparent}
.wd-hero__text{font-size:clamp(16px,1.15vw,18px);line-height:1.75;color:#4d5872;max-width:560px;margin:0 0 30px}
.wd-hero__btns{display:flex;flex-wrap:wrap;gap:12px}
.wd-hero__ticks{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;margin:26px 0 0;padding:0;font-weight:700;font-size:15px;color:#0b1638}
.wd-hero__ticks i{width:22px;height:22px;display:inline-grid;place-items:center;margin-right:6px;border-radius:50%;background:rgba(34,195,238,.15);color:#0aa5cc;font-size:11px}
.wd-hero__media{position:relative;height:clamp(380px,36vw,500px);perspective:1200px}
.wd-browser{position:absolute;left:0;top:6%;width:86%;border-radius:18px;background:#fff;border:1px solid #dfe6f5;box-shadow:0 50px 90px -50px rgba(15,40,120,.55),0 0 0 8px rgba(255,255,255,.5);overflow:hidden;animation:wdFloat 7s ease-in-out infinite}
.wd-browser__bar{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#f3f6fc;border-bottom:1px solid #e6ecf7}
.wd-browser__url{flex:1;max-width:280px;padding:6px 14px;border-radius:20px;background:#fff;border:1px solid #e3e9f5;font-size:12.5px;font-weight:600;color:#6a7591}
.wd-browser__url i{color:#28c840;margin-right:6px;font-size:11px}
.wd-browser__body{padding:18px 20px 22px}
.wd-ui__nav{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.wd-ui__nav b{width:70px;height:12px;border-radius:6px;background:linear-gradient(90deg,var(--wb),var(--wv))}
.wd-ui__nav span{width:40px;height:7px;border-radius:4px;background:#e2e8f4}
.wd-ui__nav span:first-of-type{margin-left:auto}
.wd-ui__nav em{width:64px;height:22px;border-radius:12px;background:#0b1638}
.wd-ui__hero{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:center;margin-bottom:22px}
.wd-ui__hero i{display:block;height:13px;border-radius:7px;background:#0b1638;margin-bottom:10px}
.wd-ui__hero i.l1{width:90%}.wd-ui__hero i.l2{width:70%;background:linear-gradient(90deg,var(--wb),var(--wv))}.wd-ui__hero i.l3{width:80%;height:7px;background:#dde4f1;margin-top:16px}
.wd-ui__btn{display:block;width:96px;height:26px;margin-top:16px;border-radius:14px;background:linear-gradient(90deg,var(--wb),var(--wv))}
.wd-ui__pic{position:relative;aspect-ratio:4/3;border-radius:14px;background:linear-gradient(140deg,#dbe6ff,#efe8ff 60%,#d9f6fd);overflow:hidden}
.wd-ui__pic span{position:absolute;left:18%;right:18%;bottom:-20%;height:80%;border-radius:50% 50% 0 0;background:linear-gradient(180deg,rgba(124,92,255,.5),rgba(31,79,216,.35))}
.wd-ui__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.wd-ui__cards span{height:56px;border-radius:12px;background:#f3f6fc;border:1px solid #e6ecf7;position:relative}
.wd-ui__cards span::before{content:"";position:absolute;left:12px;top:12px;width:22px;height:22px;border-radius:7px;background:rgba(31,79,216,.18)}
.wd-ui__cards span:nth-child(2)::before{background:rgba(124,92,255,.2)}.wd-ui__cards span:nth-child(3)::before{background:rgba(34,195,238,.25)}
.wd-phone{position:absolute;right:0;bottom:0;width:clamp(150px,13vw,190px);aspect-ratio:9/18.5;padding:9px;border-radius:30px;background:#0b1638;box-shadow:0 40px 70px -30px rgba(11,22,56,.7);animation:wdFloat 6s ease-in-out -2s infinite}
.wd-phone__notch{position:absolute;left:50%;top:14px;translate:-50% 0;width:34%;height:12px;border-radius:8px;background:#0b1638;z-index:2}
.wd-phone__screen{position:relative;height:100%;border-radius:22px;background:#f6f8fe;overflow:hidden;padding:34px 12px 12px;display:flex;flex-direction:column;gap:9px}
.wd-app__top{height:10px;width:55%;border-radius:5px;background:#0b1638}
.wd-app__card{position:relative;height:74px;border-radius:14px;background:linear-gradient(135deg,var(--wb),var(--wv));overflow:hidden}
.wd-app__card i{position:absolute;right:-14px;top:-14px;width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.18)}
.wd-app__card b{position:absolute;left:12px;bottom:12px;width:50%;height:8px;border-radius:4px;background:rgba(255,255,255,.8)}
.wd-app__row{height:30px;border-radius:10px;background:#fff;border:1px solid #e6ecf7}
.wd-app__row.s{width:70%}
.wd-app__tabs{margin-top:auto;display:flex;justify-content:space-around;padding:8px 0 2px;border-top:1px solid #e6ecf7}
.wd-app__tabs i{width:14px;height:14px;border-radius:5px;background:#d5ddee}
.wd-app__tabs i:first-child{background:var(--wb)}
.wd-code{position:absolute;left:-4%;bottom:4%;padding:14px 18px;border-radius:14px;background:#0b1638;color:#c9d6f5;font:600 12.5px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;box-shadow:0 30px 60px -28px rgba(11,22,56,.7);animation:wdFloat 8s ease-in-out -4s infinite}
.wd-code p{margin:0;white-space:nowrap}
.wd-code .k{color:#c792ea;font-weight:600}.wd-code .v{color:#82aaff;font-weight:600}.wd-code .s{color:#7ee0a1;font-weight:600}
.wd-code .wd-caret{color:var(--wc)}
.wd-chip{position:absolute;display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:30px;background:#fff;border:1px solid #e3e9f5;font-size:13.5px;font-weight:700;color:#0b1638;box-shadow:0 20px 40px -24px rgba(15,40,120,.5);animation:wdFloat 5s ease-in-out infinite}
.wd-chip i{color:var(--wb)}
.wd-chip--a{right:20%;top:0;animation-delay:-1s}
.wd-chip--b{left:34%;bottom:-2%;animation-delay:-3s}
.wd-chip--b i{color:var(--wv)}
@keyframes wdFloat{50%{transform:translateY(-12px)}}

/* services */
.wd-sec{position:relative;overflow:hidden;padding:clamp(80px,9vw,120px) 0;background:#fff}
.wd-sec--soft{background:linear-gradient(180deg,#f4f7fd 0%,#eef3fc 100%)}
.wd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1280px;margin:0 auto}
.wd-card{border-radius:18px;background:#fff;border:1px solid #e3e9f5;overflow:hidden;box-shadow:0 24px 46px -36px rgba(15,40,120,.45);transition:translate .4s var(--ease),box-shadow .4s,border-color .3s}
.wd-card__bar{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;background:#f5f8fe;border-bottom:1px solid #e9eef8}
.wd-card__bar .wd-dots i{width:8px;height:8px;background:#d3dbec;transition:background .3s}
.wd-card__bar small{font:700 12px ui-monospace,Menlo,monospace;color:#9aa6c2}
.wd-card__body{padding:22px 22px 24px}
.wd-card__icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:16px;border-radius:15px;background:linear-gradient(140deg,var(--wb),var(--wv));color:#fff;font-size:21px;box-shadow:0 14px 26px -12px rgba(31,79,216,.6);transition:rotate .45s var(--ease),scale .45s var(--ease)}
.wd-card h3{font-family:var(--f-body);font-size:18.5px;font-weight:800;line-height:1.25;color:#0b1638;margin:0 0 8px}
.wd-card p{font-size:15px;line-height:1.65;color:#5a647d;margin:0 0 14px}
.wd-card ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.wd-card li{padding:5px 11px;border-radius:20px;background:#f1f5fd;color:#1f4fd8;font-size:12.5px;font-weight:700}
.wd-card:hover{translate:0 -6px;border-color:#c9d6f5;box-shadow:0 30px 56px -30px rgba(31,79,216,.45)}
.wd-card:hover .wd-dots i:nth-child(1){background:#ff5f57}.wd-card:hover .wd-dots i:nth-child(2){background:#febc2e}.wd-card:hover .wd-dots i:nth-child(3){background:#28c840}
.wd-card:hover .wd-card__icon{rotate:-8deg;scale:1.06}

/* process - terminal */
.wd-proc{position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:#0b1638;color:#fff}
.wd-proc__grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:54px 54px;-webkit-mask-image:radial-gradient(ellipse at 20% 50%,#000 15%,transparent 70%);mask-image:radial-gradient(ellipse at 20% 50%,#000 15%,transparent 70%)}
.wd-proc::after{content:"";position:absolute;z-index:-1;right:-200px;top:-200px;width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,rgba(124,92,255,.3),transparent)}
.wd-proc__in{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(36px,5vw,80px);align-items:center;max-width:1240px}
.wd-proc__title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.4vw,52px);line-height:1.08;letter-spacing:-.035em;margin:0 0 20px}
.wd-proc__title span{background:linear-gradient(90deg,var(--wc),#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}
.wd-proc__text{font-size:clamp(15.5px,1.1vw,17.5px);line-height:1.8;color:rgba(255,255,255,.72);margin:0 0 30px;max-width:520px}
.wd-term{border-radius:18px;background:#070f27;border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 80px -40px rgba(0,0,0,.8);overflow:hidden}
.wd-term__bar{display:flex;align-items:center;gap:16px;padding:12px 16px;background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.08);font:600 12.5px ui-monospace,Menlo,monospace;color:rgba(255,255,255,.5)}
.wd-term__body{padding:22px 24px 24px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.wd-term__cmd{margin:0 0 18px;font-size:14px;color:#c9d6f5}
.wd-term__cmd span{color:var(--wc);margin-right:8px}
.wd-term__step{display:flex;gap:16px;padding:12px 0;border-top:1px dashed rgba(255,255,255,.08)}
.wd-term__num{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:rgba(124,92,255,.18);color:#b9a6ff;font-size:12.5px;font-weight:700}
.wd-term__step b{display:block;font-family:var(--f-body);font-size:16.5px;font-weight:800;color:#fff}
.wd-term__ok{color:#28c840;margin-right:4px}
.wd-term__step small{display:block;font-family:var(--f-body);font-size:14.5px;line-height:1.55;color:rgba(255,255,255,.62)}
.wd-term__done{margin:16px 0 0;font-size:14px;color:#7ee0a1}

/* technologies */
.wd-tech{padding:clamp(70px,8vw,100px) 0 clamp(60px,7vw,90px);background:#fff}
.wd-tech .sv-divs__head{margin-bottom:30px}
.wd-tech__box{-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);overflow:hidden}
.wd-tech__track{display:flex;width:max-content;padding:10px 0 20px;animation:tmarquee 45s linear infinite}
.wd-tech__track.is-js{animation:none;width:auto}
.wd-tech__row{display:flex;gap:14px;padding-right:14px}
.wd-tech__track.is-js .wd-tech__row{padding-right:0;width:max-content}
.wd-tech__item{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:40px;background:#f5f8fe;border:1px solid #e3e9f5;font-weight:700;font-size:15.5px;color:#0b1638;white-space:nowrap}
.wd-tech__item i{font-size:20px;color:var(--wb)}
.wd-tech__item:nth-child(3n+2) i{color:var(--wv)}.wd-tech__item:nth-child(3n+3) i{color:#0aa5cc}

/* why + cta */
.wd-why{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(36px,5vw,80px);align-items:center;max-width:1240px;margin:0 auto}
.wd-left{text-align:left}
.wd-why__text{font-size:clamp(15.5px,1.1vw,17.5px);line-height:1.8;color:#4d5872;margin:0;max-width:520px}
.wd-why__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.wd-why__item{padding:24px;border-radius:18px;background:#fff;border:1px solid #e3e9f5;box-shadow:0 24px 46px -36px rgba(15,40,120,.45)}
.wd-why__item:nth-child(even){translate:0 24px}
.wd-why__item b{display:block;font-size:17.5px;font-weight:800;color:#0b1638;margin-bottom:6px}
.wd-why__item small{display:block;font-size:14.5px;line-height:1.6;color:#5a647d}
.wd-cta{position:relative;overflow:hidden;display:flex;align-items:center;gap:30px;max-width:1240px;margin:clamp(70px,8vw,100px) auto 0;padding:clamp(30px,4vw,50px) clamp(26px,4vw,56px);border-radius:28px;background:linear-gradient(110deg,#1b2f8f 0%,#1f4fd8 50%,#7c5cff 100%);color:#fff;box-shadow:0 40px 80px -40px rgba(31,79,216,.7)}
.wd-cta__code{position:absolute;right:-20px;bottom:-60px;font:800 220px/1 ui-monospace,Menlo,monospace;color:rgba(255,255,255,.07);pointer-events:none}
.wd-cta h2{font-family:var(--f-body);font-weight:800;font-size:clamp(24px,2.4vw,36px);letter-spacing:-.03em;margin:0 0 6px}
.wd-cta p{margin:0;color:rgba(255,255,255,.8);font-size:16.5px}
.wd-cta__btns{position:relative;display:flex;flex-wrap:wrap;gap:12px;margin-left:auto}

@media (max-width:1180px){.wd-grid{grid-template-columns:repeat(2,1fr)}.wd-hero__in,.wd-proc__in,.wd-why{grid-template-columns:1fr}.wd-hero__media{max-width:640px;width:100%;margin:20px auto 0}.wd-cta{flex-direction:column;align-items:flex-start}.wd-cta__btns{margin-left:0}}
@media (max-width:600px){.wd-grid,.wd-why__grid{grid-template-columns:1fr}.wd-why__item:nth-child(even){translate:none}.wd-hero__media{height:330px}.wd-browser{width:96%}.wd-code{display:none}.wd-phone{width:128px}.wd-chip--b{left:4%}.wd-hero__btns .wd-btn,.wd-cta__btns .wd-btn{flex:1 1 100%}.wd-ui__cards{display:none}}
@media (prefers-reduced-motion:reduce){.wd-browser,.wd-phone,.wd-code,.wd-chip,.wd-pill__dot,.wd-caret{animation:none}}
.wd-hero__title em{font-family:inherit;font-weight:800;letter-spacing:inherit}
/* ---- Web page v2: picture header (navy + gold), coloured service cards, standard process, tech lanes ---- */
.page-web{--wb:#1f4fd8;--wn:#0b1638;--wg:#d4a24c;--wg2:#f2c55c;--wv:#d4a24c;--wc:#3b82f6}
.wd-hero__title em{background:linear-gradient(90deg,#c58b26 0%,#e8b44f 45%,#f6d27a 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.wd-pill__dot{background:var(--wg);box-shadow:0 0 0 4px rgba(212,162,76,.22)}
.wd-hero__ticks i{background:rgba(212,162,76,.16);color:#b98322}
.wd-btn--main{background:var(--wn);color:#fff;box-shadow:0 18px 36px -16px rgba(11,22,56,.6);position:relative;overflow:hidden;isolation:isolate}
.wd-btn--main::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#c58b26,#f2c55c);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.wd-btn--main:hover{color:#1a1200;box-shadow:0 22px 44px -16px rgba(212,162,76,.7)}
.wd-btn--main:hover::before{transform:scaleX(1)}
.wd-btn--line:hover{border-color:var(--wg);color:#a8741b}
.wd-hero__in{grid-template-columns:.9fr 1.1fr}
.wd-hero__media{height:auto;perspective:none}
.wd-hero__media img{display:block;width:clamp(560px,52vw,880px);max-width:none;height:auto;margin-right:calc(-1 * clamp(20px,4vw,80px))}
.wd-hero__blob--a{background:radial-gradient(closest-side,rgba(212,162,76,.18),transparent)}
.wd-hero__blob--b{background:radial-gradient(closest-side,rgba(31,79,216,.16),transparent)}
@media (max-width:1180px){.wd-hero__media img{width:100%;max-width:100%;margin:0}}

/* services - coloured icons */
.wd-sec#services{background:linear-gradient(180deg,#fff 0%,#f6f8fd 100%)}
.wd-card{position:relative;display:flex;flex-direction:column;padding:28px 24px 24px;border-radius:22px;background:#fff;border:1px solid #e8edf6;box-shadow:0 24px 48px -38px rgba(15,40,120,.45);overflow:hidden;isolation:isolate}
.wd-card::before{content:"";position:absolute;z-index:-1;right:-60px;top:-60px;width:170px;height:170px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--c) 18%,transparent),transparent);transition:transform .6s var(--ease)}
.wd-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--c);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.wd-card__num{position:absolute;right:20px;top:18px;font-family:var(--f-body);font-weight:800;font-size:15px;color:color-mix(in srgb,var(--c) 45%,#c9d2e3)}
.wd-card__icon{width:58px;height:58px;margin-bottom:20px;border-radius:18px;background:color-mix(in srgb,var(--c) 12%,#fff);color:var(--c);font-size:24px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c) 22%,transparent)}
.wd-card h3{font-size:19px}
.wd-card ul{flex-direction:column;flex-wrap:nowrap;gap:7px;margin-bottom:20px}
.wd-card li{padding:0;background:none;color:#2b3550;font-size:14.5px;font-weight:600}
.wd-card li i{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:6px;border-radius:50%;background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--c);font-size:9px}
.wd-card__go{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;color:#0b1638}
.wd-card__go i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--c) 12%,#fff);color:var(--c);font-size:12px;transition:background .3s,color .3s,translate .3s var(--ease)}
.wd-card:hover{translate:0 -6px;border-color:color-mix(in srgb,var(--c) 35%,#e8edf6);box-shadow:0 30px 56px -30px color-mix(in srgb,var(--c) 45%,transparent)}
.wd-card:hover::before{transform:scale(1.5)}
.wd-card:hover::after{transform:scaleX(1)}
.wd-card:hover .wd-card__icon{background:var(--c);color:#fff;rotate:-8deg;scale:1.06}
.wd-card:hover .wd-card__go i{background:var(--c);color:#fff;translate:3px 0}

/* process - standard steps, plain navy background */
.wd-proc{background:linear-gradient(180deg,#0b1638 0%,#0f1f4d 100%)}
.wd-proc::after{display:none}
.wd-proc .sv-divs__head{max-width:760px}
.wd-proc__title span{background:linear-gradient(90deg,#e8b44f,#f6d27a);-webkit-background-clip:text;background-clip:text;color:transparent}
.wd-proc__text{margin:0 auto;max-width:620px}
.wd-pill--dark .wd-pill__dot{background:var(--wg)}
.wd-steps{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:18px;max-width:1280px;margin:0 auto}
.wd-steps::before{content:"";position:absolute;left:8%;right:8%;top:27px;height:2px;background:repeating-linear-gradient(90deg,rgba(242,197,92,.55) 0 8px,transparent 8px 16px)}
.wd-step{position:relative;text-align:center;padding:0 6px}
.wd-step__num{position:relative;z-index:1;display:grid;place-items:center;width:56px;height:56px;margin:0 auto 22px;border-radius:50%;background:#0b1638;border:2px solid var(--wg);color:var(--wg2);font-family:var(--f-body);font-weight:800;font-size:17px;box-shadow:0 0 0 6px rgba(212,162,76,.12)}
.wd-step__icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:#fff;font-size:21px;transition:background .3s,color .3s,translate .4s var(--ease)}
.wd-step h3{font-family:var(--f-body);font-size:18px;font-weight:800;color:#fff;margin:0 0 8px}
.wd-step p{font-size:14.5px;line-height:1.65;color:rgba(255,255,255,.66);margin:0}
.wd-step:hover .wd-step__icon{background:var(--wg);color:#1a1200;translate:0 -4px}
.wd-proc__cta{text-align:center;margin-top:50px}
.wd-proc .wd-btn--main{background:#fff;color:#0b1638}
.wd-proc .wd-btn--main:hover{color:#1a1200}
@media (max-width:1100px){.wd-steps{grid-template-columns:repeat(3,1fr);row-gap:40px}.wd-steps::before{display:none}}
@media (max-width:600px){.wd-steps{grid-template-columns:1fr 1fr;gap:30px 14px}}

/* technologies - two lanes moving in opposite directions, coloured tiles */
.wd-tech{background:linear-gradient(180deg,#f6f8fd 0%,#fff 100%)}
.wd-tech__box{display:grid;gap:18px;padding:8px 0}
.wd-tech__lane{overflow:hidden}
.wd-tech__track{display:flex;gap:18px;width:max-content;padding:6px 0 14px;animation:wdLane 40s linear infinite}
.wd-tech__lane--rev .wd-tech__track{animation-direction:reverse;animation-duration:46s}
.wd-tech__box:hover .wd-tech__track{animation-play-state:paused}
@keyframes wdLane{to{transform:translateX(-50%)}}
.wd-tech__item{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:150px;height:130px;padding:0;border-radius:22px;background:#fff;border:1px solid #e8edf6;box-shadow:0 18px 36px -28px rgba(15,40,120,.45);transition:translate .4s var(--ease),border-color .3s,box-shadow .4s}
.wd-tech__item i{font-size:40px;color:var(--c)!important}
.wd-tech__item b{font-size:15px;font-weight:700;color:#0b1638}
.wd-tech__item:hover{translate:0 -6px;border-color:color-mix(in srgb,var(--c) 40%,#e8edf6);box-shadow:0 24px 44px -24px color-mix(in srgb,var(--c) 50%,transparent)}
@media (max-width:600px){.wd-tech__item{width:118px;height:108px;border-radius:18px}.wd-tech__item i{font-size:32px}}
@media (prefers-reduced-motion:reduce){.wd-tech__track{animation:none}}
/* CTA box in navy + gold */
.wd-cta{background:linear-gradient(110deg,#0b1638 0%,#1b2f8f 60%,#1f4fd8 100%)}
.wd-cta::before{content:"";position:absolute;right:-80px;top:-120px;width:340px;height:340px;border-radius:50%;background:radial-gradient(closest-side,rgba(242,197,92,.35),transparent)}
.wd-why__item .wd-card__icon{background:color-mix(in srgb,var(--c,#1f4fd8) 12%,#fff);color:var(--c,#1f4fd8);box-shadow:none}
@media (min-width:1181px){.wd-hero__in{grid-template-columns:1fr 1fr}.wd-hero__title{font-size:clamp(36px,3.9vw,60px)}.wd-hero__media img{width:clamp(600px,54vw,900px);margin-left:calc(-1 * clamp(10px,3vw,50px))}}
@media (max-width:1180px){.wd-hero__in{grid-template-columns:1fr}.wd-hero__media img{width:100%;max-width:100%;margin:0}}
/* ---- Web page header v3 (matches the supplied design) ---- */
.wd-hero{background:linear-gradient(160deg,#f7f9ff 0%,#eef3fe 55%,#f4f7ff 100%);padding:clamp(130px,12vw,160px) 0 clamp(60px,7vw,90px)}
.wd-hero__grid{display:none}
.wd-hero__swoosh{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.wd-hero__swoosh i{position:absolute;display:block;border-radius:50%;border:2px solid rgba(80,130,240,.12)}
.wd-hero__swoosh i:nth-child(1){width:1400px;height:700px;right:-500px;top:-240px;border-color:rgba(80,130,240,.14);box-shadow:inset 0 0 120px rgba(120,160,255,.10)}
.wd-hero__swoosh i:nth-child(2){width:1100px;height:520px;right:-380px;bottom:-300px;border-color:rgba(212,162,76,.14)}
.wd-hero__blob--a{width:700px;height:700px;right:-60px;top:-120px;background:radial-gradient(closest-side,rgba(110,150,255,.22),transparent)}
.wd-hero__blob--b{background:radial-gradient(closest-side,rgba(110,150,255,.14),transparent)}
.wd-pill{padding:10px 20px;gap:12px;font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:#1d4ed8;border-color:#e2e9fb}
.wd-pill__dot{width:11px;height:11px;background:#1d4ed8;box-shadow:0 0 0 4px rgba(29,78,216,.15)}
.wd-hero__title{font-size:clamp(40px,4.5vw,72px);line-height:1.02;letter-spacing:-.045em;color:#0b1638;margin-bottom:24px}
.wd-hero__title em{background:linear-gradient(180deg,#e2b04f 0%,#c58b26 55%,#9c6a17 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.wd-hero__text{font-size:clamp(16px,1.2vw,19px);color:#555f78;max-width:540px}
.wd-btn--main{background:linear-gradient(90deg,#1b3fae,#1d4ed8);box-shadow:0 18px 36px -14px rgba(29,78,216,.7),inset 0 0 0 1px rgba(255,255,255,.12)}
.wd-btn--main::before{background:linear-gradient(90deg,#0b1638,#1b2f8f)}
.wd-btn--main:hover{color:#fff;box-shadow:0 22px 44px -14px rgba(29,78,216,.8)}
.wd-btn--line{border-color:#1d4ed8;color:#1d4ed8;background:#fff}
.wd-btn--line:hover{background:#1d4ed8;color:#fff;border-color:#1d4ed8}
.wd-hero__ticks{gap:14px 0;margin-top:34px;font-size:15.5px}
.wd-hero__ticks li{display:inline-flex;align-items:center;gap:12px;padding-right:22px;margin-right:22px;border-right:1px solid #d9dfec}
.wd-hero__ticks li:last-child{border-right:0;margin-right:0;padding-right:0}
.wd-hero__ticks i{width:44px;height:44px;margin:0;border-radius:50%;background:linear-gradient(145deg,#fdf3dd,#f6e3b8);color:#0b1638;font-size:16px;box-shadow:0 8px 18px -10px rgba(197,139,38,.6)}
@media (min-width:1181px){
  .wd-hero__in{grid-template-columns:.95fr 1.05fr;max-width:1360px}
  .wd-hero__media img{width:clamp(680px,60vw,1040px);margin-left:calc(-1 * clamp(60px,7vw,130px))}
}
@media (max-width:600px){.wd-hero__ticks li{padding-right:12px;margin-right:12px;gap:8px;font-size:14px}.wd-hero__ticks i{width:36px;height:36px;font-size:14px}.wd-pill{letter-spacing:.14em}}
@media (min-width:1181px){
  .wd-hero__in{grid-template-columns:1fr 1fr}
  .wd-hero__title{font-size:clamp(44px,4.3vw,68px)}
  .wd-hero__title .sv-line{white-space:nowrap}
  .wd-hero__copy{position:relative;z-index:2}
  .wd-hero__media img{width:clamp(700px,58vw,1000px);margin-left:calc(-1 * clamp(40px,5vw,100px))}
}
@media (min-width:1181px){.wd-hero__text{max-width:520px}}
/* web header - text a little smaller, picture closer to the text */
.wd-hero__title em{background:linear-gradient(180deg,#e6c06a 0%,#c9993e 50%,#a87a26 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
@media (min-width:1181px){
  .wd-hero__in{grid-template-columns:.85fr 1.15fr;gap:0}
  .wd-hero__title{font-size:clamp(40px,3.7vw,60px);letter-spacing:-.04em}
  .wd-hero__text{font-size:16.5px;line-height:1.7;max-width:480px}
  .wd-hero__media{display:flex;justify-content:flex-start}
  .wd-hero__media img{width:clamp(720px,60vw,1080px);margin-left:calc(-1 * clamp(70px,6vw,120px))}
}
@media (min-width:1181px){.wd-hero__text{max-width:460px}.wd-hero__media img{width:clamp(700px,56vw,1000px);margin-left:calc(-1 * clamp(10px,2vw,40px))}}
/* web header picture: a little smaller, and the gold ring fades out at the picture edges instead of a hard cut */
.wd-hero__media img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 93%,transparent 100%)}
@media (min-width:1181px){.wd-hero__media{justify-content:center}.wd-hero__media img{width:clamp(620px,48vw,860px);margin-left:0}}
/* ---- Web header: same sizes as the Software page header ---- */
.wd-hero{--heroH:clamp(620px,43vw,720px);min-height:var(--heroH);display:flex;align-items:center;padding:124px 0 50px}
.wd-hero__in{width:100%;max-width:none;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,70px)}
.wd-pill{padding:9px 20px;gap:9px;font-size:15px;letter-spacing:0;text-transform:none;font-weight:700;margin:0 0 20px}
.wd-pill__dot{width:9px;height:9px}
.wd-hero__title{font-size:clamp(38px,3.9vw,64px);line-height:1.05;letter-spacing:-.045em;margin:0 0 20px}
.wd-hero__text{max-width:560px;font-size:clamp(15.5px,1.15vw,18px);line-height:1.65;margin:0 0 30px}
.wd-hero .wd-btn{padding:15px 26px;font-size:16px}
.wd-hero__ticks{margin-top:26px;font-size:15px}
.wd-hero__ticks i{width:38px;height:38px;font-size:14px}
@media (min-width:1181px){
  .wd-hero__in{grid-template-columns:1fr 1fr}
  .wd-hero__title{font-size:clamp(38px,3.9vw,64px)}
  .wd-hero__text{font-size:clamp(15.5px,1.15vw,18px);line-height:1.65;max-width:520px}
  .wd-hero__media{justify-content:center}
  .wd-hero__media img{width:118%;max-width:none;margin:0 -9%}
}
@media (max-width:1180px){.wd-hero{min-height:0}}
@media (max-width:640px){.wd-hero{padding-top:104px}}
.wd-hero__in{max-width:var(--wrap)}
@media (min-width:1181px){.wd-hero__media img{width:112%;margin:0 -6% 0 -6%}}
/* ---- Web page: "Digital Solutions" bento layout on light blue ---- */
.wd-svc{position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:linear-gradient(180deg,#f4f7fd 0%,#eaf1fd 100%)}
.wd-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(250px,auto);gap:18px;max-width:1280px;margin:0 auto}
.wd-tile{position:relative;display:flex;flex-direction:column;padding:26px;border-radius:24px;background:rgba(255,255,255,.82);border:1px solid #fff;box-shadow:0 24px 50px -36px rgba(20,50,140,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;isolation:isolate;transition:translate .45s var(--ease),box-shadow .45s,background .3s}
.wd-tile::before{content:"";position:absolute;z-index:-1;right:-70px;bottom:-70px;width:200px;height:200px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--c) 16%,transparent),transparent);transition:transform .6s var(--ease)}
.wd-tile__top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}
.wd-tile__icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:color-mix(in srgb,var(--c) 12%,#fff);color:var(--c);font-size:22px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c) 20%,transparent);transition:background .3s,color .3s,rotate .45s var(--ease)}
.wd-tile__num{font-family:var(--f-body);font-weight:800;font-size:14px;color:#a7b2cc}
.wd-tile h3{font-family:var(--f-body);font-size:19px;font-weight:800;line-height:1.25;letter-spacing:-.01em;color:#0b1638;margin:0 0 8px}
.wd-tile p{font-size:14.8px;line-height:1.6;color:#5a647d;margin:0 0 14px}
.wd-tile__tags{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}
.wd-tile__tags li{padding:5px 11px;border-radius:20px;background:color-mix(in srgb,var(--c) 9%,#fff);color:color-mix(in srgb,var(--c) 80%,#0b1638);font-size:12.5px;font-weight:700}
.wd-tile__go{position:absolute;right:20px;bottom:20px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid #e3e9f5;color:#0b1638;font-size:13px;opacity:0;translate:0 8px;transition:opacity .35s,translate .35s var(--ease),background .3s,color .3s}
.wd-tile:not(.wd-tile--big) .wd-tile__body{padding-bottom:14px}
.wd-tile:hover{translate:0 -6px;background:#fff;box-shadow:0 32px 60px -34px color-mix(in srgb,var(--c) 50%,rgba(20,50,140,.4))}
.wd-tile:hover::before{transform:scale(1.6)}
.wd-tile:hover .wd-tile__icon{background:var(--c);color:#fff;rotate:-8deg}
.wd-tile:hover .wd-tile__go{opacity:1;translate:0 0;background:var(--c);color:#fff;border-color:var(--c)}
/* big card */
.wd-tile--big{grid-column:span 2;grid-row:span 2;padding:clamp(28px,3vw,40px);background:linear-gradient(150deg,#0b1638 0%,#16287a 60%,#1f4fd8 100%);border:0;color:#fff}
.wd-tile--big::before{right:-120px;top:-120px;bottom:auto;width:380px;height:380px;background:radial-gradient(closest-side,rgba(242,197,92,.35),transparent)}
.wd-tile--big .wd-tile__icon{width:66px;height:66px;font-size:28px;background:rgba(255,255,255,.1);color:#f2c55c;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.wd-tile--big .wd-tile__num{color:rgba(255,255,255,.4)}
.wd-tile--big h3{font-size:clamp(26px,2.4vw,36px);color:#fff;letter-spacing:-.03em;margin-bottom:14px}
.wd-tile--big p{font-size:16.5px;line-height:1.7;color:rgba(255,255,255,.75);max-width:440px;margin-bottom:22px}
.wd-tile--big .wd-tile__tags li{padding:8px 14px;background:rgba(255,255,255,.1);color:#fff;font-size:13.5px;border:1px solid rgba(255,255,255,.14)}
.wd-tile__btn{align-self:flex-start;margin-top:auto;padding:14px 24px;font-size:15.5px}
.wd-tile--big:hover{background:linear-gradient(150deg,#0b1638 0%,#16287a 60%,#1f4fd8 100%)}
.wd-tile--big:hover .wd-tile__icon{background:#f2c55c;color:#0b1638}
.wd-tile__art{position:absolute;z-index:-1;right:28px;bottom:28px;width:44%;max-width:250px;aspect-ratio:4/3;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);padding:14px;display:flex;flex-direction:column;gap:9px}
.wd-tile__art i{display:block;height:10px;border-radius:5px;background:rgba(255,255,255,.22)}
.wd-tile__art i:nth-child(1){width:60%;background:linear-gradient(90deg,#e8b44f,#f6d27a)}
.wd-tile__art i:nth-child(2){width:85%}
.wd-tile__art i:nth-child(3){width:45%}
.wd-tile__art::after{content:"";position:absolute;left:14px;right:14px;bottom:14px;height:40%;border-radius:10px;background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.04))}
/* wide card */
.wd-tile--wide{grid-column:span 2;flex-direction:row;align-items:center;gap:24px}
.wd-tile--wide .wd-tile__top{flex-direction:column;align-items:flex-start;gap:12px;margin:0}
.wd-tile--wide .wd-tile__icon{width:70px;height:70px;font-size:28px}
.wd-tile--wide .wd-tile__body{padding:0 40px 0 0}
@media (max-width:1100px){.wd-bento{grid-template-columns:repeat(2,1fr)}.wd-tile--big{grid-row:span 1}.wd-tile__art{display:none}}
@media (max-width:640px){.wd-bento{grid-template-columns:1fr;grid-auto-rows:auto}.wd-tile--big,.wd-tile--wide{grid-column:span 1}.wd-tile--wide{flex-direction:column;align-items:stretch}.wd-tile--wide .wd-tile__top{flex-direction:row;justify-content:space-between;align-items:center}.wd-tile--wide .wd-tile__body{padding:0}.wd-tile__go{opacity:1;translate:none}}
.wd-tile--wide .wd-tile__num{position:absolute;right:24px;top:22px}
/* ---- Web page: "Digital Solutions" as service tabs (list left, details right) ---- */
.wd-tabs{display:grid;grid-template-columns:minmax(300px,.8fr) 1.6fr;gap:22px;max-width:1240px;margin:0 auto;align-items:stretch}
.wd-tabs__nav{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:24px;background:rgba(255,255,255,.7);border:1px solid #fff;box-shadow:0 24px 50px -38px rgba(20,50,140,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.wd-tabs__btn{display:flex;align-items:center;gap:14px;width:100%;padding:12px 14px;border:0;border-radius:16px;background:transparent;font:inherit;text-align:left;cursor:pointer;color:#33405e;transition:background .3s,color .3s,box-shadow .3s}
.wd-tabs__ic{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:color-mix(in srgb,var(--c) 11%,#fff);color:var(--c);font-size:17px;transition:background .3s,color .3s}
.wd-tabs__name{flex:1;font-weight:700;font-size:15.5px;line-height:1.3}
.wd-tabs__arr{font-size:12px;color:#b3bdd3;opacity:0;translate:-6px 0;transition:opacity .3s,translate .3s var(--ease),color .3s}
.wd-tabs__btn:hover{background:#fff}
.wd-tabs__btn.is-active{background:#fff;color:#0b1638;box-shadow:0 14px 30px -20px color-mix(in srgb,var(--c) 60%,transparent),inset 3px 0 0 var(--c)}
.wd-tabs__btn.is-active .wd-tabs__ic{background:var(--c);color:#fff}
.wd-tabs__btn.is-active .wd-tabs__arr{opacity:1;translate:0 0;color:var(--c)}
.wd-tabs__panels{position:relative;min-height:100%}
.wd-panel{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,4vw,56px);border-radius:28px;background:#fff;border:1px solid #e6ecf8;box-shadow:0 34px 70px -44px rgba(20,50,140,.5);overflow:hidden;isolation:isolate;opacity:0;visibility:hidden;translate:0 14px;transition:opacity .45s,translate .55s var(--ease),visibility 0s .45s}
.wd-panel.is-active{opacity:1;visibility:visible;translate:0 0;transition:opacity .45s,translate .55s var(--ease),visibility 0s}
.wd-panel__glow{position:absolute;z-index:-1;right:-140px;top:-140px;width:460px;height:460px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--c) 18%,transparent),transparent)}
.wd-panel__bigic{position:absolute;z-index:-1;right:clamp(20px,4vw,60px);bottom:clamp(10px,3vw,40px);font-size:clamp(120px,14vw,200px);line-height:1;color:color-mix(in srgb,var(--c) 9%,transparent)}
.wd-panel__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.wd-panel__ic{display:grid;place-items:center;width:68px;height:68px;border-radius:20px;background:linear-gradient(140deg,color-mix(in srgb,var(--c) 80%,#fff),var(--c));color:#fff;font-size:28px;box-shadow:0 18px 32px -16px color-mix(in srgb,var(--c) 75%,transparent)}
.wd-panel__count{font-family:var(--f-body);font-weight:800;font-size:22px;color:var(--c)}
.wd-panel__count small{font-size:14px;color:#a7b2cc}
.wd-panel h3{font-family:var(--f-body);font-size:clamp(26px,2.6vw,40px);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:#0b1638;margin:0 0 14px}
.wd-panel p{font-size:clamp(15.5px,1.15vw,18px);line-height:1.7;color:#5a647d;max-width:540px;margin:0 0 24px}
.wd-panel__feats{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px;padding:0}
.wd-panel__feats li{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:40px;background:color-mix(in srgb,var(--c) 8%,#fff);border:1px solid color-mix(in srgb,var(--c) 18%,#fff);font-weight:700;font-size:14.5px;color:#1d2640}
.wd-panel__feats i{color:var(--c)}
.wd-panel__btns{display:flex;flex-wrap:wrap;gap:12px}
.wd-panel .wd-btn{padding:14px 24px;font-size:15.5px}
.wd-panel .wd-btn--line{border-color:#d5ddee;color:#0b1638}
.wd-panel .wd-btn--line i{color:#25d366;font-size:17px}
.wd-panel .wd-btn--line:hover{background:#25d366;border-color:#25d366;color:#fff}
.wd-panel .wd-btn--line:hover i{color:#fff}
@media (max-width:900px){
  .wd-tabs{grid-template-columns:1fr}
  .wd-tabs__nav{display:none}
  .wd-tabs__panels{display:grid;gap:16px}
  .wd-panel{position:relative;inset:auto;opacity:1;visibility:visible;translate:none;padding:26px 22px}
  .wd-panel__bigic{font-size:120px}
}
@media (prefers-reduced-motion:reduce){.wd-panel{transition:none}}
@media (max-width:900px){.wd-panel .wd-btn{padding:12px 18px;font-size:14.5px}.wd-panel__feats{margin-bottom:22px}.wd-panel__feats li{padding:8px 13px;font-size:13.5px}}
/* ---- Web page: "Modern Tools" - grouped tech list + moving orbit ---- */
.wd-stack{position:relative;overflow:hidden;padding:clamp(80px,9vw,120px) 0;background:#fff}
.wd-stack__in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,80px);align-items:center;max-width:1240px}
.wd-stack__text{font-size:clamp(15.5px,1.1vw,17.5px);line-height:1.8;color:#4d5872;margin:0 0 28px;max-width:520px}
.wd-stack__groups{display:grid;gap:14px}
.wd-stack__group{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:start;padding:16px 18px;border-radius:18px;background:#f6f8fd;border:1px solid #e8edf7}
.wd-stack__gname{display:flex;align-items:center;gap:10px;padding-top:7px;font-weight:800;font-size:14.5px;color:#0b1638}
.wd-stack__gname i{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#0b1638;color:#f2c55c;font-size:13px}
.wd-stack__chips{display:flex;flex-wrap:wrap;gap:8px}
.wd-stack__chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:30px;background:#fff;border:1px solid #e3e9f5;font-weight:700;font-size:14px;color:#1d2640;transition:border-color .3s,translate .3s var(--ease),box-shadow .3s}
.wd-stack__chip i{font-size:17px;color:var(--c)}
.wd-stack__chip:hover{translate:0 -2px;border-color:color-mix(in srgb,var(--c) 45%,#e3e9f5);box-shadow:0 10px 20px -14px color-mix(in srgb,var(--c) 70%,transparent)}
/* orbit */
.wd-orbit{--R1:clamp(95px,9.5vw,140px);--R2:clamp(170px,16.5vw,240px);position:relative;width:calc(var(--R2) * 2 + 80px);max-width:100%;aspect-ratio:1;margin:0 auto;display:grid;place-items:center}
.wd-orbit::before{content:"";position:absolute;inset:12%;border-radius:50%;background:radial-gradient(closest-side,rgba(31,79,216,.12),transparent 70%)}
.wd-orbit__ring{position:absolute;left:50%;top:50%;border-radius:50%;translate:-50% -50%;border:1.5px dashed #c9d5f0}
.wd-orbit__ring--1{width:calc(var(--R1) * 2);height:calc(var(--R1) * 2)}
.wd-orbit__ring--2{width:calc(var(--R2) * 2);height:calc(var(--R2) * 2);border-style:solid;border-color:#e3e9f6}
.wd-orbit__core{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:clamp(110px,10vw,140px);aspect-ratio:1;border-radius:50%;background:linear-gradient(150deg,#0b1638,#1f4fd8);color:#fff;box-shadow:0 24px 50px -20px rgba(31,79,216,.7),0 0 0 10px rgba(31,79,216,.08)}
.wd-orbit__core i{font-size:clamp(26px,2.4vw,34px);color:#f2c55c}
.wd-orbit__core b{font-size:12.5px;font-weight:800;letter-spacing:.02em}
.wd-orbit__spin{position:absolute;inset:0;animation:wdSpin 40s linear infinite}
.wd-orbit__spin--out{animation-duration:60s;animation-direction:reverse}
.wd-orbit__item{position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(var(--a)) translateX(var(--R)) rotate(calc(-1 * var(--a)))}
.wd-orbit__spin--in .wd-orbit__item{--R:var(--R1)}
.wd-orbit__spin--out .wd-orbit__item{--R:var(--R2)}
.wd-orbit__item>span{position:absolute;left:0;top:0;translate:-50% -50%;display:grid;place-items:center;width:clamp(48px,4.4vw,62px);aspect-ratio:1;border-radius:18px;background:#fff;border:1px solid #e6ecf7;box-shadow:0 14px 30px -18px rgba(15,40,120,.45);animation:wdSpin 40s linear infinite reverse}
.wd-orbit__spin--out .wd-orbit__item>span{animation-duration:60s;animation-direction:normal}
.wd-orbit__item i{font-size:clamp(22px,2vw,28px);color:var(--c)}
.wd-orbit:hover .wd-orbit__spin,.wd-orbit:hover .wd-orbit__item>span{animation-play-state:paused}
@keyframes wdSpin{to{rotate:360deg}}
@media (max-width:1024px){.wd-stack__in{grid-template-columns:1fr}.wd-orbit{order:-1;margin-bottom:10px}}
@media (max-width:600px){.wd-orbit{--R1:80px;--R2:140px}.wd-stack__group{grid-template-columns:1fr;gap:10px}.wd-stack__gname{padding-top:0}}
@media (prefers-reduced-motion:reduce){.wd-orbit__spin,.wd-orbit__item>span{animation:none}}
/* ---- Web page: Why section (light blue bg, even boxes) ---- */
.wd-whysec{isolation:isolate;background:linear-gradient(180deg,#f4f7fd 0%,#eaf1fd 100%)}
.wd-why__grid{align-items:stretch}
.wd-why__item,.wd-why__item:nth-child(even){translate:none}
.wd-why__item{display:flex;flex-direction:column;background:rgba(255,255,255,.85);border-color:#fff;transition:translate .4s var(--ease),box-shadow .4s}
.wd-why__item:hover{translate:0 -5px;box-shadow:0 30px 56px -32px rgba(31,79,216,.45)}

/* ---- Web page: Our Work (screenshots + Google reviews) ---- */
.wd-work{position:relative;padding:clamp(80px,9vw,120px) 0;background:#fff}
.wd-work__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1240px;margin:0 auto}
.wd-proj{display:flex;flex-direction:column;border-radius:22px;background:#fff;border:1px solid #e8edf6;box-shadow:0 24px 50px -40px rgba(15,40,120,.45);overflow:hidden;transition:translate .45s var(--ease),box-shadow .45s}
.wd-proj__shot{position:relative;display:block;margin:14px 14px 0;border-radius:14px;overflow:hidden;background:#eef2fa;border:1px solid #e3e9f5}
.wd-proj__bar{display:flex;align-items:center;gap:12px;padding:9px 12px;background:#f6f8fd;border-bottom:1px solid #e6ecf7}
.wd-proj__bar .wd-dots i{width:8px;height:8px}
.wd-proj__bar small{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:3px 10px;border-radius:10px;background:#fff;font-size:11.5px;font-weight:600;color:#7a86a3}
.wd-proj__shot img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;transition:scale .8s var(--ease)}
.wd-proj__ph{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;aspect-ratio:16/10;padding:18px;overflow:hidden;background:linear-gradient(140deg,#1b2f8f,#1f4fd8)}
.wd-proj__ph b{position:absolute;left:18px;top:18px;font-family:var(--f-body);font-size:22px;font-weight:800;color:#fff;letter-spacing:-.02em}
.wd-proj__ph i{display:block;height:9px;border-radius:5px;background:rgba(255,255,255,.25)}
.wd-proj__ph i:nth-of-type(1){width:55%}.wd-proj__ph i:nth-of-type(2){width:80%}.wd-proj__ph i:nth-of-type(3){width:35%;background:#f2c55c}
.wd-proj__ph::after{content:"";position:absolute;right:-30px;top:-30px;width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,.12)}
.wd-proj__ph--1{background:linear-gradient(140deg,#4c1d95,#7c3aed)}.wd-proj__ph--2{background:linear-gradient(140deg,#065f46,#10b981)}
.wd-proj__ph--3{background:linear-gradient(140deg,#9a3412,#f97316)}.wd-proj__ph--4{background:linear-gradient(140deg,#155e75,#06b6d4)}.wd-proj__ph--5{background:linear-gradient(140deg,#0b1638,#1b2f8f)}
.wd-proj__body{display:flex;flex-direction:column;flex:1;padding:20px 22px 22px}
.wd-proj__type{align-self:flex-start;margin-bottom:10px;padding:5px 12px;border-radius:20px;background:#eef3fe;color:#1f4fd8;font-size:12.5px;font-weight:800}
.wd-proj h3{font-family:var(--f-body);font-size:20px;font-weight:800;color:#0b1638;margin:0 0 6px}
.wd-proj p{font-size:14.8px;line-height:1.6;color:#5a647d;margin:0 0 16px}
.wd-proj__link{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14.5px;color:#1f4fd8}
.wd-proj__link i{font-size:12px}
.wd-proj:hover{translate:0 -6px;box-shadow:0 30px 60px -34px rgba(31,79,216,.45)}
.wd-proj:hover .wd-proj__shot img{scale:1.04}
.wd-greview{margin:0 0 16px;padding:14px 16px;border-radius:14px;background:#f7f9fd;border:1px solid #e6ecf7}
.wd-greview__top{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.wd-greview__g{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.12);font:800 14px Arial,sans-serif;color:#4285f4}
.wd-greview__stars{color:#fbbc05;font-size:12.5px;letter-spacing:2px}
.wd-greview blockquote{margin:0 0 8px;font-size:14px;line-height:1.6;color:#2b3550;font-style:italic}
.wd-greview figcaption{font-size:13px;color:#6b7590}
.wd-greview figcaption b{color:#0b1638}
.wd-gbar{display:flex;align-items:center;gap:24px;max-width:1240px;margin:34px auto 0;padding:22px 28px;border-radius:22px;background:#f6f8fd;border:1px solid #e6ecf7}
.wd-gbar__logo{font:700 30px/1 Arial,Helvetica,sans-serif;letter-spacing:-.02em}
.wd-gbar__txt b{display:block;font-size:17.5px;font-weight:800;color:#0b1638}
.wd-gbar__txt small{display:block;font-size:14.5px;color:#5a647d}
.wd-gbar__btns{display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}
.wd-gbar .wd-btn{padding:13px 22px;font-size:15px}
.wd-gbar .wd-btn--main i{color:#fbbc05}
@media (max-width:1024px){.wd-work__grid{grid-template-columns:repeat(2,1fr)}.wd-gbar{flex-wrap:wrap}.wd-gbar__btns{margin-left:0}}
@media (max-width:600px){.wd-work__grid{grid-template-columns:1fr}.wd-gbar{flex-direction:column;align-items:flex-start;padding:22px}.wd-gbar__btns .wd-btn{flex:1 1 auto}}
/* Our Work: when one project is left alone on the last row, show it as a wide card */
@media (min-width:1025px){
  .wd-proj:last-child:nth-child(3n+1){grid-column:1/-1;flex-direction:row;align-items:center}
  .wd-proj:last-child:nth-child(3n+1) .wd-proj__shot{flex:0 0 62%;margin:14px}
  .wd-proj:last-child:nth-child(3n+1) .wd-proj__shot img{aspect-ratio:auto;height:auto}
  .wd-proj:last-child:nth-child(3n+1) .wd-proj__body{padding:24px 34px 24px 20px}
  .wd-proj:last-child:nth-child(3n+1) h3{font-size:26px}
}
/* Our Work: show the whole screenshot (images are pre-fitted to 16:10) */
.wd-proj__shot img{object-fit:contain;object-position:center}
/* Modern Tools + Our Work: light blue background design */
.wd-stack,.wd-work{isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#f4f7fd 0%,#eaf1fd 100%)}
.wd-stack__group{background:rgba(255,255,255,.75);border-color:#fff}
.wd-gbar{background:rgba(255,255,255,.8);border-color:#fff}
/* web header picture: bigger and a little to the left */
@media (min-width:1181px){.wd-hero__media img{width:128%;margin:0 -12% 0 -16%}}
/* ---- Web project popup (#webModal) ---- */
.wmodal__box{max-width:780px}
.wmodal .amodal__icon{background:linear-gradient(135deg,#0b1638,#1f4fd8);color:#f2c55c;box-shadow:0 16px 30px -12px rgba(31,79,216,.6)}
.wmodal__step{display:flex;align-items:center;gap:10px;margin:26px 0 14px;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#0b1638}
.wmodal__step:first-of-type{margin-top:0}
.wmodal__step span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#0b1638;color:#f2c55c;font-size:12.5px;letter-spacing:0}
.wmodal__chips{position:relative;display:flex;flex-wrap:wrap;gap:10px;padding:2px;border-radius:16px;transition:box-shadow .3s}
.wmodal__chips.is-invalid{box-shadow:0 0 0 2px rgba(224,52,75,.5);padding:8px}
.wmodal__check{position:absolute;left:0;bottom:0;width:1px;height:1px;opacity:0;pointer-events:none;border:0;padding:0}
.wmodal__chip{position:relative;cursor:pointer}
.wmodal__chip input{position:absolute;opacity:0;pointer-events:none}
.wmodal__chip span{display:inline-flex;align-items:center;gap:9px;padding:11px 16px;border-radius:40px;background:#f6f8fd;border:1.5px solid #e1e7f3;font-size:14.5px;font-weight:700;color:#1d2540;transition:background .25s,border-color .25s,color .25s,box-shadow .25s}
.wmodal__chip span i{color:#1f4fd8;font-size:14px;transition:color .25s}
.wmodal__chip:hover span{border-color:#b9c8ec;background:#fff}
.wmodal__chip input:checked+span{background:#0b1638;border-color:#0b1638;color:#fff;box-shadow:0 10px 22px -12px rgba(11,22,56,.7)}
.wmodal__chip input:checked+span i{color:#f2c55c}
.wmodal__chip input:focus-visible+span{box-shadow:0 0 0 4px rgba(31,79,216,.2)}
.wmodal__radios{display:flex;flex-wrap:wrap;gap:10px}
.wmodal__chip--sm span{padding:10px 16px;font-size:14px}
.wmodal__chip--sm input:checked+span{background:#eef3fe;border-color:#1f4fd8;color:#1f4fd8;box-shadow:none}
.wmodal__chip--sm input:checked+span i{color:#1f4fd8}
.wmodal .amodal__submit{background:linear-gradient(110deg,#0b1638,#1b2f8f 55%,#1f4fd8)}
@media (max-width:640px){.wmodal__chip span{padding:9px 13px;font-size:13.5px}}
a.sv-panel{display:block;cursor:pointer}
.sv-hero__in{pointer-events:none}.sv-hero__in>*{pointer-events:auto}

/* ===================== MEDIA & PRODUCTION PAGE (page-media) - espresso, champagne gold, ivory ===================== */
.page-media{--mk:#120d0a;--mk2:#1c1511;--mg:#d4a35a;--mg2:#f1d39a;--mr:#c58b74;--mi:#faf6f0;--mt:#2a211b}
.md-pill{display:inline-flex;align-items:center;gap:10px;margin:0 0 20px;padding:9px 18px;border-radius:40px;background:#fff;border:1px solid #efe4d3;box-shadow:0 10px 24px -16px rgba(120,80,30,.45);font-size:14.5px;font-weight:700;color:#9a6a24}
.md-pill i{color:var(--mg)}
.md-pill--dark{background:rgba(255,255,255,.05);border-color:rgba(241,211,154,.22);color:var(--mg2);box-shadow:none}
.md-pill__rec{width:9px;height:9px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 4px rgba(229,72,77,.2);animation:wdPulse 1.6s ease-in-out infinite}
.md-head{text-align:center;max-width:820px;margin:0 auto clamp(36px,4vw,56px)}
.md-title{font-family:var(--f-body);font-weight:800;font-size:clamp(30px,3.6vw,56px);line-height:1.08;letter-spacing:-.035em;color:var(--mt);margin:0 0 16px}
.md-title em{font-family:var(--f-serif);font-style:italic;font-weight:400;letter-spacing:-.01em;color:#b07f33}
.md-title--light{color:#fff}.md-title--light em{color:var(--mg2)}
.md-text{font-size:clamp(15.5px,1.15vw,18px);line-height:1.75;color:#6d6157;margin:0 auto;max-width:640px}
.md-text--light{color:rgba(255,255,255,.7)}
.md-left{text-align:left;margin-left:0}
.md-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 26px;border-radius:50px;font-weight:700;font-size:16px;border:1.5px solid transparent;transition:translate .4s var(--ease),background .3s,color .3s,border-color .3s,box-shadow .4s}
.md-btn i{font-size:14px}
.md-btn:hover{translate:0 -3px}
.md-btn--gold{background:linear-gradient(120deg,#b98236,#e2b46b 55%,#f1d39a);color:#1d140c;box-shadow:0 18px 36px -16px rgba(212,163,90,.75)}
.md-btn--gold:hover{box-shadow:0 22px 44px -14px rgba(212,163,90,.9)}
.md-btn--line{border-color:rgba(241,211,154,.45);color:#fff;background:rgba(255,255,255,.04)}
.md-btn--line:hover{border-color:var(--mg2);background:rgba(241,211,154,.1)}

/* hero */
.md-hero{--heroH:clamp(620px,43vw,720px);position:relative;overflow:hidden;isolation:isolate;min-height:var(--heroH);display:flex;align-items:center;padding:124px 0 60px;background:radial-gradient(ellipse at 70% 45%,#2a1d14 0%,#160f0b 45%,#0c0806 100%);color:#fff}
.md-hero__glow{position:absolute;z-index:-1;border-radius:50%;filter:blur(20px)}
.md-hero__glow--a{width:680px;height:680px;right:4%;top:2%;background:radial-gradient(closest-side,rgba(242,170,80,.28),transparent)}
.md-hero__glow--b{width:520px;height:520px;left:-160px;bottom:-240px;background:radial-gradient(closest-side,rgba(197,139,116,.22),transparent)}
.md-hero__grain{position:absolute;inset:0;z-index:-1;opacity:.35;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:4px 4px;-webkit-mask-image:linear-gradient(90deg,#000,transparent 60%);mask-image:linear-gradient(90deg,#000,transparent 60%)}
.md-hero__in{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,70px);align-items:center}
.md-hero__copy{position:relative;z-index:2}
.md-hero .md-pill{background:rgba(255,255,255,.06);border-color:rgba(241,211,154,.25);color:var(--mg2);box-shadow:none}
.md-hero__title{font-family:var(--f-body);font-weight:800;font-size:clamp(38px,3.9vw,64px);line-height:1.05;letter-spacing:-.045em;margin:0 0 20px}
.md-hero__title em{font-family:var(--f-serif);font-style:italic;font-weight:400;letter-spacing:-.01em;background:linear-gradient(90deg,#d9a752,#f6dca6 60%,#e8b97a);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.06em}
.md-hero__text{max-width:540px;font-size:clamp(15.5px,1.15vw,18px);line-height:1.7;color:rgba(255,255,255,.72);margin:0 0 30px}
.md-hero__btns{display:flex;flex-wrap:wrap;gap:12px}
.md-hero__ticks{list-style:none;display:flex;flex-wrap:wrap;gap:12px 24px;margin:28px 0 0;padding:0;font-weight:700;font-size:15px;color:rgba(255,255,255,.85)}
.md-hero__ticks li{display:inline-flex;align-items:center;gap:10px}
.md-hero__ticks i{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:rgba(212,163,90,.14);border:1px solid rgba(241,211,154,.25);color:var(--mg2);font-size:14px}
.md-hero__media{position:relative;display:flex;justify-content:center}
.md-hero__media img{display:block;width:124%;max-width:none;height:auto;margin:0 -10% 0 -14%;filter:drop-shadow(0 40px 60px rgba(0,0,0,.55))}

/* showreel */
.md-reel{position:relative;padding:clamp(70px,8vw,110px) 0 clamp(80px,9vw,120px);background:linear-gradient(180deg,#0c0806 0%,#17100c 100%);overflow:hidden}
.md-reel::before{content:"";position:absolute;left:50%;top:40%;width:1100px;height:600px;translate:-50% -50%;border-radius:50%;background:radial-gradient(closest-side,rgba(212,163,90,.16),transparent);pointer-events:none}
.md-reel__frame{position:relative;max-width:1180px;margin:0 auto;padding:clamp(8px,1vw,14px);border-radius:28px;background:linear-gradient(140deg,rgba(241,211,154,.5),rgba(197,139,116,.25) 40%,rgba(241,211,154,.08) 70%,rgba(241,211,154,.45));box-shadow:0 50px 100px -40px rgba(0,0,0,.9),0 0 80px -20px rgba(212,163,90,.35)}
.md-reel__screen{position:relative;border-radius:20px;overflow:hidden;background:#000;aspect-ratio:1920/822}
.md-reel__screen video{display:block;width:100%;height:100%;object-fit:cover;background:#000}
.md-reel__play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;border:0;background:linear-gradient(180deg,rgba(12,8,6,.15),rgba(12,8,6,.55));color:#fff;cursor:pointer;font:inherit;transition:opacity .4s,visibility .4s}
.md-reel__btn{position:relative;display:grid;place-items:center;width:clamp(74px,7vw,104px);aspect-ratio:1;border-radius:50%;background:linear-gradient(140deg,#e2b46b,#f1d39a);color:#1d140c;font-size:clamp(24px,2.2vw,32px);padding-left:6px;box-shadow:0 20px 50px -10px rgba(212,163,90,.8);transition:scale .4s var(--ease)}
.md-reel__btn::before,.md-reel__btn::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:1.5px solid rgba(241,211,154,.55);animation:mdRing 2.4s ease-out infinite}
.md-reel__btn::after{animation-delay:1.2s}
@keyframes mdRing{0%{transform:scale(.8);opacity:1}100%{transform:scale(1.5);opacity:0}}
.md-reel__label{font-weight:700;font-size:15px;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.6)}
.md-reel__play:hover .md-reel__btn{scale:1.08}
.md-reel__frame.is-playing .md-reel__play{opacity:0;visibility:hidden}
.md-reel__corner{position:absolute;width:46px;height:46px;border:2px solid var(--mg2);z-index:2;pointer-events:none}
.md-reel__corner--tl{left:-14px;top:-14px;border-right:0;border-bottom:0;border-radius:14px 0 0 0}
.md-reel__corner--br{right:-14px;bottom:-14px;border-left:0;border-top:0;border-radius:0 0 14px 0}

/* sections */
.md-sec{position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:#fff}
.md-sec--ivory{background:linear-gradient(180deg,#fbf8f3 0%,#f6efe4 100%)}
.md-sec--ivory .sv-divs__wave--l{background:radial-gradient(closest-side,rgba(212,163,90,.2),transparent)}
.md-sec--ivory .sv-divs__wave--r{background:radial-gradient(closest-side,rgba(197,139,116,.18),transparent)}
.md-sec--ivory .sv-divs__ring{border-color:rgba(176,127,51,.16)}
.md-sec--ivory .offer__dots{background-image:radial-gradient(circle,#d9bf95 1.8px,transparent 2.2px)}
.md-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1280px;margin:0 auto}
.md-card{position:relative;display:flex;flex-direction:column;padding:28px 24px 24px;border-radius:22px;background:rgba(255,255,255,.88);border:1px solid #fff;box-shadow:0 24px 48px -38px rgba(90,60,20,.5);overflow:hidden;isolation:isolate;transition:translate .45s var(--ease),box-shadow .45s}
.md-card::before{content:"";position:absolute;z-index:-1;right:-60px;top:-60px;width:170px;height:170px;border-radius:50%;background:radial-gradient(closest-side,rgba(212,163,90,.18),transparent);transition:transform .6s var(--ease)}
.md-card__num{position:absolute;right:20px;top:18px;font-family:var(--f-serif);font-style:italic;font-size:22px;color:#cfb38a}
.md-card__icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:18px;border-radius:17px;background:linear-gradient(140deg,#fbf1df,#f3e1c2);color:#a8762c;font-size:22px;box-shadow:inset 0 0 0 1px rgba(212,163,90,.3);transition:background .3s,color .3s,rotate .45s var(--ease)}
.md-card h3{font-family:var(--f-body);font-size:19px;font-weight:800;color:var(--mt);margin:0 0 8px}
.md-card p{font-size:15px;line-height:1.65;color:#6d6157;margin:0 0 18px}
.md-card__go{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:14.5px;color:var(--mt)}
.md-card__go i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#f6ebd7;color:#a8762c;font-size:12px;transition:background .3s,color .3s,translate .3s var(--ease)}
.md-card:hover{translate:0 -6px;box-shadow:0 30px 56px -30px rgba(176,127,51,.5)}
.md-card:hover::before{transform:scale(1.6)}
.md-card:hover .md-card__icon{background:linear-gradient(140deg,#b98236,#e2b46b);color:#fff;rotate:-8deg}
.md-card:hover .md-card__go i{background:var(--mg);color:#fff;translate:3px 0}
.md-card--feature{background:linear-gradient(150deg,#1c1511,#2c1f15);border-color:transparent;color:#fff}
.md-card--feature h3{color:#fff}.md-card--feature p{color:rgba(255,255,255,.7)}
.md-card--feature .md-card__icon{background:linear-gradient(140deg,#b98236,#e2b46b);color:#1d140c;box-shadow:none}
.md-card--feature .md-card__go{color:var(--mg2)}
.md-card--feature .md-card__go i{background:rgba(241,211,154,.15);color:var(--mg2)}
.md-card--feature::before{background:radial-gradient(closest-side,rgba(241,170,80,.35),transparent)}

/* wedding feature */
.md-wed{position:relative;overflow:hidden;padding:clamp(80px,9vw,130px) 0;background:#fff}
.md-wed__in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(40px,6vw,90px);align-items:center;max-width:1240px}
.md-wed__pics{position:relative;aspect-ratio:1.05;max-width:600px}
.md-wed__pic{position:absolute;overflow:hidden;border-radius:24px;box-shadow:0 40px 70px -40px rgba(60,35,10,.6)}
.md-wed__pic img{width:100%;height:100%;object-fit:cover;display:block;transition:scale 1s var(--ease)}
.md-wed__pic:hover img{scale:1.05}
.md-wed__pic--a{left:0;top:0;width:78%;height:72%}
.md-wed__pic--b{right:0;bottom:0;width:52%;height:50%;border:8px solid #fff}
.md-wed__badge{position:absolute;left:6%;bottom:6%;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:14px 20px;border-radius:18px;background:#fff;box-shadow:0 24px 50px -24px rgba(60,35,10,.5)}
.md-wed__badge i{grid-row:span 2;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(140deg,#c58b74,#e7b9a3);color:#fff}
.md-wed__badge b{font-size:15.5px;color:var(--mt)}.md-wed__badge small{font-size:13px;color:#8a7c70}
.md-wed__list{list-style:none;margin:24px 0 30px;padding:0;display:grid;gap:12px}
.md-wed__list li{display:flex;align-items:center;gap:12px;font-weight:600;font-size:16px;color:var(--mt)}
.md-wed__list i{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#f6ebd7;color:#a8762c;font-size:11px}

/* process */
.md-proc{position:relative;overflow:hidden;padding:clamp(80px,9vw,120px) 0;background:linear-gradient(180deg,#140e0b,#1d1511);color:#fff}
.md-proc::after{content:"";position:absolute;right:-200px;top:-200px;width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,rgba(212,163,90,.18),transparent);pointer-events:none}
.md-steps{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;max-width:1180px;margin:0 auto}
.md-steps::before{content:"";position:absolute;left:12%;right:12%;top:28px;height:2px;background:repeating-linear-gradient(90deg,rgba(241,211,154,.5) 0 8px,transparent 8px 16px)}
.md-step{position:relative;text-align:center}
.md-step__num{position:relative;z-index:1;display:grid;place-items:center;width:56px;height:56px;margin:0 auto 20px;border-radius:50%;background:#1a120e;border:2px solid var(--mg);color:var(--mg2);font-weight:800;font-size:17px;box-shadow:0 0 0 6px rgba(212,163,90,.12)}
.md-step__icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);font-size:20px;transition:background .3s,color .3s,translate .4s var(--ease)}
.md-step h3{font-family:var(--f-body);font-size:19px;font-weight:800;margin:0 0 8px}
.md-step p{font-size:15px;line-height:1.65;color:rgba(255,255,255,.66);margin:0 auto;max-width:250px}
.md-step:hover .md-step__icon{background:var(--mg);color:#1d140c;translate:0 -4px}

/* why */
.md-why{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(36px,5vw,80px);align-items:center;max-width:1240px}
.md-why__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.md-why__item{padding:24px;border-radius:20px;background:rgba(255,255,255,.88);border:1px solid #fff;box-shadow:0 24px 46px -38px rgba(90,60,20,.5);transition:translate .4s var(--ease)}
.md-why__item:hover{translate:0 -5px}
.md-why__item b{display:block;font-size:17.5px;font-weight:800;color:var(--mt);margin-bottom:6px}
.md-why__item small{display:block;font-size:14.5px;line-height:1.6;color:#6d6157}

/* faq + cta */
.md-faq{max-width:860px;margin:0 auto;display:grid;gap:12px}
.md-faq__item{border-radius:18px;background:#fbf8f3;border:1px solid #efe4d3;padding:0 24px;transition:background .3s}
.md-faq__item[open]{background:#fff;box-shadow:0 20px 44px -34px rgba(90,60,20,.5)}
.md-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;cursor:pointer;list-style:none;font-weight:700;font-size:17px;color:var(--mt)}
.md-faq__item summary::-webkit-details-marker{display:none}
.md-faq__item summary i{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#f6ebd7;color:#a8762c;font-size:13px;transition:rotate .35s var(--ease)}
.md-faq__item[open] summary i{rotate:45deg}
.md-faq__item p{margin:0;padding:0 0 22px;font-size:15.5px;line-height:1.75;color:#6d6157}
.md-cta{position:relative;overflow:hidden;display:flex;align-items:center;gap:26px;max-width:1240px;margin:clamp(60px,7vw,90px) auto 0;padding:clamp(30px,4vw,48px) clamp(26px,4vw,52px);border-radius:28px;background:linear-gradient(115deg,#140e0b,#2a1d14 60%,#3a2617);color:#fff;box-shadow:0 40px 80px -40px rgba(40,20,5,.8)}
.md-cta::before{content:"";position:absolute;right:-60px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(closest-side,rgba(241,170,80,.35),transparent)}
.md-cta__icon{position:relative;flex:none;width:64px;height:64px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(140deg,#b98236,#e2b46b);color:#1d140c;font-size:26px}
.md-cta h2{font-family:var(--f-body);font-weight:800;font-size:clamp(24px,2.4vw,34px);letter-spacing:-.03em;margin:0 0 6px}
.md-cta p{margin:0;color:rgba(255,255,255,.75);font-size:16px}
.md-cta__btns{position:relative;display:flex;flex-wrap:wrap;gap:12px;margin-left:auto}

/* booking popup in gold */
.mmodal .amodal__icon{background:linear-gradient(135deg,#1c1511,#3a2617);color:var(--mg2,#f1d39a);box-shadow:0 16px 30px -12px rgba(60,35,10,.6)}
.mmodal .wmodal__step span{background:#1c1511;color:#f1d39a}
.mmodal .wmodal__chip span i{color:#b07f33}
.mmodal .wmodal__chip:hover span{border-color:#e3cfae}
.mmodal .wmodal__chip input:checked+span{background:#1c1511;border-color:#1c1511}
.mmodal .wmodal__chip input:checked+span i{color:#f1d39a}
.mmodal .wmodal__chip--sm input:checked+span{background:#fbf1df;border-color:#d4a35a;color:#8a5f1f}
.mmodal .wmodal__chip--sm input:checked+span i{color:#b07f33}
.mmodal .field input:focus,.mmodal .field select:focus,.mmodal .field textarea:focus{border-color:#d4a35a;box-shadow:0 0 0 4px rgba(212,163,90,.18)}
.mmodal .amodal__submit{background:linear-gradient(110deg,#1c1511,#3a2617 50%,#b98236)}
.mmodal .amodal__submit:hover{box-shadow:0 22px 40px -16px rgba(185,130,54,.7)}
.page-media .cursor__dot{background:#d4a35a}
.page-media .cursor__ring{border-color:rgba(212,163,90,.5)}
.page-media #enquiryModal .btn--blue{background:#1c1511}

@media (max-width:1180px){.md-hero{min-height:0}.md-hero__in,.md-wed__in,.md-why{grid-template-columns:1fr}.md-hero__media img{width:100%;max-width:100%;margin:10px 0 0}.md-grid{grid-template-columns:repeat(2,1fr)}.md-wed__pics{margin:0 auto;width:100%}.md-cta{flex-direction:column;align-items:flex-start}.md-cta__btns{margin-left:0}}
@media (max-width:900px){.md-steps{grid-template-columns:repeat(2,1fr);row-gap:40px}.md-steps::before{display:none}}
@media (max-width:600px){.md-grid,.md-why__grid{grid-template-columns:1fr}.md-hero{padding-top:104px}.md-hero__btns .md-btn,.md-cta__btns .md-btn{flex:1 1 100%}.md-reel__corner{display:none}.md-reel__label{font-size:12px}.md-wed__badge{left:0;bottom:0}}
@media (prefers-reduced-motion:reduce){.md-reel__btn::before,.md-reel__btn::after,.md-pill__rec{animation:none}}
/* Media page: light menu over the dark header, normal menu after scrolling */
.page-media .header:not(.is-scrolled) .logo img{filter:brightness(0) invert(1)}
.page-media .header:not(.is-scrolled) .nav__link{color:#fff}
.page-media .header:not(.is-scrolled) .nav__link:hover{background:rgba(255,255,255,.1)}
.page-media .header:not(.is-scrolled) .nav__link.is-active{background:#fff;color:#1c1511}

.page-media .header .btn--blue{background:linear-gradient(120deg,#b98236,#e2b46b);color:#1d140c;box-shadow:0 14px 30px -14px rgba(212,163,90,.7)}
.page-media .header.is-scrolled{background:rgba(250,246,240,.9)}
.mmodal .field input,.mmodal .field select,.mmodal .field textarea{background-color:#fbf8f3;border-color:#efe4d3}
.mmodal .wmodal__chip span{background:#fbf8f3;border-color:#efe4d3}
.page-media #enquiryModal .field input:focus,.page-media #enquiryModal .field select:focus,.page-media #enquiryModal .field textarea:focus{border-color:#d4a35a;box-shadow:0 0 0 4px rgba(212,163,90,.18)}
.page-media #enquiryModal .kicker{color:#b07f33}
/* ---- Media page v2: light header + showreel with brown background art ---- */
.md-art{isolation:isolate;background:linear-gradient(180deg,#fbf8f3 0%,#f4ece0 100%);color:var(--mt)}
.md-art .sv-divs__wave--l{background:radial-gradient(closest-side,rgba(212,163,90,.22),transparent)}
.md-art .sv-divs__wave--r{background:radial-gradient(closest-side,rgba(160,105,60,.18),transparent)}
.md-art .sv-divs__ring{border-color:rgba(150,100,45,.18)}
.md-art .offer__dots{background-image:radial-gradient(circle,#cfae7e 1.8px,transparent 2.2px)}
.md-hero.md-art{background:linear-gradient(160deg,#fcf9f4 0%,#f6eee2 60%,#f1e6d6 100%)}
.md-hero.md-art .md-pill{background:#fff;border-color:#efe4d3;color:#9a6a24;box-shadow:0 10px 24px -16px rgba(120,80,30,.45)}
.md-hero.md-art .md-hero__title{color:var(--mt)}
.md-hero.md-art .md-hero__title em{background:linear-gradient(90deg,#9c6a22,#c8913f 55%,#a87332);-webkit-background-clip:text;background-clip:text;color:transparent}
.md-hero.md-art .md-hero__text{color:#6d6157}
.md-hero.md-art .md-hero__ticks{color:var(--mt)}
.md-hero.md-art .md-hero__ticks i{background:linear-gradient(145deg,#fbf1df,#f3e1c2);border-color:rgba(212,163,90,.35);color:#a8762c}
.md-art .md-btn--line,.md-cta .md-btn--line{border-color:#cdb08a;color:var(--mt);background:rgba(255,255,255,.6)}
.md-art .md-btn--line:hover{border-color:#a8762c;background:#fff}
.md-cta .md-btn--line{color:#fff;background:rgba(255,255,255,.05);border-color:rgba(241,211,154,.45)}
.md-hero.md-art .md-hero__media img{filter:drop-shadow(0 30px 40px rgba(80,50,20,.28))}
.md-reel.md-art::before{background:radial-gradient(closest-side,rgba(212,163,90,.2),transparent)}
.md-reel.md-art .md-reel__frame{background:linear-gradient(140deg,#d9b67c,#f3e3c4 40%,#c99a5a 75%,#ecd5ab);box-shadow:0 50px 90px -46px rgba(90,55,20,.6)}
.md-reel.md-art .md-reel__corner{border-color:#b98236}
.md-reel__msg{position:absolute;left:50%;bottom:22px;translate:-50% 0;margin:0;padding:10px 18px;border-radius:30px;background:rgba(0,0,0,.65);color:#fff;font-size:14px;font-weight:600;z-index:3}
/* normal menu on this page (light header now) */
.page-media .header:not(.is-scrolled) .logo img{filter:none}
.page-media .header:not(.is-scrolled) .nav__link{color:inherit}
.page-media .header:not(.is-scrolled) .nav__link:hover{background:rgba(13,15,26,.06)}
.page-media .header:not(.is-scrolled) .nav__link.is-active{background:var(--mt);color:#fff}
.page-media .nav__link.is-active{background:var(--mt)}
/* Media page: black buttons */
.md-btn--gold{background:#15100c;color:#fff;box-shadow:0 18px 36px -16px rgba(21,16,12,.65)}
.md-btn--gold i{color:#f1d39a}
.md-btn--gold:hover{background:#2b1f17;box-shadow:0 22px 44px -14px rgba(21,16,12,.75)}
.md-cta .md-btn--gold{background:#fff;color:#15100c}.md-cta .md-btn--gold i{color:#b07f33}
.md-reel__btn{background:#15100c;color:#fff;box-shadow:0 20px 50px -10px rgba(0,0,0,.6)}
.md-reel__btn::before,.md-reel__btn::after{border-color:rgba(255,255,255,.6)}
.page-media .header .btn--blue{background:#15100c;color:#fff;box-shadow:0 14px 30px -14px rgba(21,16,12,.6)}
.mmodal .amodal__submit{background:#15100c}
.md-card--feature .md-card__icon,.md-cta__icon{background:#f1d39a}
.md-reel__sound{position:absolute;right:18px;top:18px;z-index:3;display:inline-flex;align-items:center;gap:9px;padding:10px 16px;border:0;border-radius:30px;background:rgba(21,16,12,.78);color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .3s}
.md-reel__sound:hover{background:#15100c}
.md-reel__sound i{color:#f1d39a}
/* Media page: CTA section after FAQ removal */
.page-media .md-cta{margin-top:0}
.md-reel__sound[hidden]{display:none}
.md-reel__sound.is-on{background:rgba(255,255,255,.88);color:#15100c}
.md-reel__sound.is-on i{color:#b07f33}
/* Web header: blue background design on the left side */
.wd-hero{isolation:isolate}
.wd-hero__bgl .sv-divs__ring--l{top:18%;left:-12vw}
.wd-hero__bgl .sv-divs__dots--l{bottom:14%;left:24px}
.wd-hero__bgl .sv-divs__wave--l{top:-14vw}
/* Home "What We Offer": 4 main businesses */
.ocard--red{--c:#e8202a}
.offer__grid{grid-template-columns:repeat(4,1fr);max-width:1320px}
.ocard{padding:28px 26px 28px}
.ocard__tags{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 18px}
.ocard__tags span{padding:5px 11px;border-radius:20px;background:color-mix(in srgb,var(--c) 9%,#fff);color:color-mix(in srgb,var(--c) 85%,#0b1638);font-size:12.5px;font-weight:700}
.ocard__more{margin-top:auto}
@media (max-width:1180px){.offer__grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.offer__grid{grid-template-columns:1fr}}
@media (min-width:1181px){.offer .ocard__title{font-size:clamp(17px,1.45vw,21px);white-space:nowrap}}
/* Adobe form: "Select a product" shown in grey like the other placeholders */
.amodal .amodal__row select:invalid{color:#9aa3b8}
.amodal .amodal__row select option{color:#1d2540}
.amodal .amodal__row select option[value=""]{color:#9aa3b8}
/* Autodesk "Why Buy" list: lead line + 4 points */
.ad-mean__lead{margin:0 0 4px;font-weight:700;font-size:15.5px;color:#3a3a3a}
.page-adk .ad-mean__item:nth-child(2){margin-left:0}
@media (min-width:961px){.page-adk .ad-mean__item:nth-child(3),.page-adk .ad-mean__item:nth-child(5){margin-left:28px}}
.ad-mean__text+.ad-mean__text{margin-top:14px}
/* Autodesk "Why Buy" boxes all in one straight line */
.page-adk .ad-mean__item,.page-adk .ad-mean__item:nth-child(n){margin-left:0!important}
/* License forms: product drop-down + "Other" text box */
.amodal__pick{display:grid;gap:10px}
.amodal__pick input[hidden]{display:none}
.amodal .amodal__row .amodal__pick select:invalid{color:#9aa3b8}
.amodal .amodal__row.is-other{align-items:start}

/* ============ IT & HARDWARE PAGE (page-adobe page-hw) - tech blue, violet & cyan ============ */
.page-hw{--adb-red:#4f46e5;--adb-ink:#0f172a;--adb-grad:linear-gradient(90deg,#2563eb 0%,#7c3aed 55%,#06b6d4 100%)}
.page-hw .hw-sub{margin:-6px 0 14px;font-weight:800;font-size:clamp(17px,1.35vw,21px);background:linear-gradient(90deg,#2563eb,#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent}
.page-hw .ad-badge{border-color:#e4e3fb}
.hw-badge__logos{display:flex;align-items:center}
.hw-badge__logos img{width:34px;height:34px;object-fit:contain;padding:4px;border-radius:50%;background:#fff;box-shadow:0 4px 10px -4px rgba(15,23,42,.25);margin-left:-8px}
.hw-badge__logos img:first-child{margin-left:0}
.page-hw .ad-mean__item{border-color:#e7e6fb}
.page-hw .ad-mean__icon{background:linear-gradient(140deg,#2563eb,#7c3aed);color:#fff;box-shadow:0 12px 24px -10px rgba(99,70,230,.55)}
.page-hw .hw-tile{display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--t) 75%,#fff),var(--t) 55%,color-mix(in srgb,var(--t) 70%,#000));color:#fff;font-size:24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 12px 22px -12px color-mix(in srgb,var(--t) 70%,transparent);transition:rotate .45s var(--ease),scale .45s var(--ease)}
.page-hw .ap-card:hover .hw-tile{rotate:-8deg;scale:1.08}
.page-hw .ap-card__list i{color:#6d28d9}
.page-hw .ap-card__btn:hover{color:#4f46e5}
.page-hw .aa{background:linear-gradient(135deg,#0b1030 0%,#1e1b4b 55%,#0c2d48 100%)}
.page-hw .aa-title span{background:linear-gradient(90deg,#60a5fa,#a78bfa,#22d3ee);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.page-hw .aa-point__icon{background:linear-gradient(140deg,#6366f1,#06b6d4);color:#fff}
.page-hw .aa-btn:hover{background:#6366f1;color:#fff}
.page-hw .hw-tagline{color:#67e8f9;font-weight:700}
.page-hw .sv-hero__btn:hover{background:#4f46e5;color:#fff}
@media (min-width:1181px){.page-hw .ap-grid{grid-template-columns:repeat(3,1fr)}}
/* hero picture as supplied */
.page-hw .ad-hero__copy{position:relative;z-index:2}
.page-hw .ad-hero__media{z-index:1}
.page-hw .ad-photo{aspect-ratio:1983/793;-webkit-mask-image:none;mask-image:none;mix-blend-mode:normal;filter:none;pointer-events:none}
.page-hw .ad-photo img{object-fit:contain;filter:none;-webkit-mask-image:none;mask-image:none}
@media (min-width:1181px){.page-hw .ad-hero__in{grid-template-columns:.95fr 1.05fr}.page-hw .ad-photo{top:20px;width:clamp(640px,52vw,900px);margin:0 -40px 0 -40px}}
@media (max-width:1180px){.page-hw .ad-photo{width:100%;margin:10px 0 0}}
/* partners */
.hw-partners{position:relative;overflow:hidden;isolation:isolate;padding:clamp(80px,9vw,120px) 0;background:linear-gradient(180deg,#f5f6ff 0%,#eef1fd 100%)}
.hw-brands{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1180px;margin:0 auto}
.hw-brand{display:flex;flex-direction:column;align-items:flex-start;padding:28px 26px;border-radius:22px;background:#fff;border:1px solid #e7e8f6;box-shadow:0 24px 50px -38px rgba(30,27,75,.5);transition:translate .45s var(--ease),box-shadow .45s}
.hw-brand__logo{display:grid;place-items:center;width:100%;height:120px;margin-bottom:20px;border-radius:16px;background:#f7f8fd;border:1px solid #eef0f8}
.hw-brand__logo img{max-width:62%;max-height:84px;object-fit:contain;transition:scale .45s var(--ease)}
.hw-brand h3{font-family:var(--f-body);font-size:20px;font-weight:800;color:#0f172a;margin:0 0 8px}
.hw-brand p{font-size:15px;line-height:1.65;color:#5a647d;margin:0 0 14px}
.hw-brand__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}
.hw-brand__tags span{padding:5px 11px;border-radius:20px;background:#f1f0fe;color:#4338ca;font-size:12.5px;font-weight:700}
.hw-brand .ap-card__btn{margin-top:auto}
.hw-brand:hover{translate:0 -6px;box-shadow:0 30px 60px -32px rgba(79,70,229,.45)}
.hw-brand:hover .hw-brand__logo img{scale:1.06}
@media (max-width:900px){.hw-brands{grid-template-columns:1fr}}
/* closing */
.hw-badge__dot{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:linear-gradient(140deg,#2563eb,#7c3aed);color:#fff;font-size:13px}
.page-hw .adk-close--light .adk-close__glow{background:radial-gradient(closest-side,rgba(99,102,241,.16),transparent)}
.page-hw .adk-close__title span{background:linear-gradient(90deg,#2563eb,#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent}
.page-hw .adk-close__btn{background:linear-gradient(90deg,#2563eb,#7c3aed);color:#fff;box-shadow:0 18px 36px -16px rgba(99,70,230,.55)}
.page-hw .adk-close__btn--line{background:transparent;color:#111;border-color:#dcdcf3;box-shadow:none}
.page-hw .adk-close__box h3{color:#4f46e5}
.page-hw .adk-close__who i{background:linear-gradient(140deg,#2563eb,#7c3aed);color:#fff}
.page-hw .adk-close__tags span{background:#f5f4ff;border-color:rgba(99,102,241,.3)}
.page-hw .adk-close__stats div{background:linear-gradient(160deg,#eef2ff,#f8f7ff);border-color:rgba(99,102,241,.25)}
.page-hw .adk-close__stats i{color:#6366f1}
/* general form + cursor + inquiry popup */
.page-hw #enquiryModal .kicker{color:#4f46e5}
.page-hw #enquiryModal .field input:focus,.page-hw #enquiryModal .field select:focus,.page-hw #enquiryModal .field textarea:focus{border-color:#6366f1;box-shadow:0 0 0 4px rgba(99,102,241,.14)}
.page-hw #enquiryModal .btn--blue{background:#0f172a;color:#fff}
.page-hw #enquiryModal .btn--blue::before{background:linear-gradient(90deg,#2563eb,#7c3aed)}
.page-hw #enquiryModal .modal__close:hover{background:#4f46e5;color:#fff}
.page-hw .cursor__dot{background:#6366f1}
.page-hw .cursor__ring{border-color:rgba(99,102,241,.45)}
.page-adobe.page-hw .amodal__icon{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;box-shadow:0 16px 30px -12px rgba(99,70,230,.55)}
.page-adobe.page-hw .amodal .field input:focus,.page-adobe.page-hw .amodal .field select:focus,.page-adobe.page-hw .amodal .field textarea:focus{border-color:#6366f1;box-shadow:0 0 0 4px rgba(99,102,241,.14)}
.page-adobe.page-hw .amodal__add{color:#4f46e5}
.page-adobe.page-hw .amodal__submit{background:#0f172a}
.page-adobe.page-hw .amodal__submit::before{background:linear-gradient(90deg,#2563eb,#7c3aed)}
@media (min-width:1181px){.page-hw .ad-photo{top:10px;width:clamp(720px,58vw,1020px);margin:0 -60px 0 -70px}}
@media (min-width:1181px){.page-hw .ad-photo{width:clamp(680px,52vw,940px);margin:0 -10px 0 -60px}}
.page-hw .ad-mean__item,.page-hw .ad-mean__item:nth-child(n){margin-left:0!important}
/* Wedding page hero pictures */
.wd-hero-pics{position:relative;width:100%;max-width:600px;aspect-ratio:1.15;margin:0 auto}
.wd-hero-pics span{position:absolute;overflow:hidden;border-radius:26px;box-shadow:0 40px 70px -40px rgba(60,35,10,.6)}
.wd-hero-pics img{width:100%;height:100%;object-fit:cover;display:block}
.wd-hero-pics__a{left:0;top:0;width:80%;height:78%;animation:wdFloat 7s ease-in-out infinite}
.wd-hero-pics__b{right:0;bottom:0;width:50%;height:52%;border:8px solid #fff;animation:wdFloat 6s ease-in-out -2s infinite}
.wd-hero-pics .wd-hero-pics__tag{left:5%;bottom:6%;display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:40px;background:#fff;font-weight:700;font-size:14.5px;color:#2a211b;overflow:visible;animation:wdFloat 5s ease-in-out -1s infinite}
.wd-hero-pics__tag i{color:#c58b74}
@media (prefers-reduced-motion:reduce){.wd-hero-pics span{animation:none}}

/* ===================== MEDIA & PRODUCTION HUB (page-mhub) - 5 businesses ===================== */
.mh-hero .md-hero__in{grid-template-columns:.85fr 1.15fr}
.mh-tiles{display:grid;grid-template-columns:1fr 1.25fr 1fr;grid-template-rows:repeat(2,minmax(170px,1fr));grid-template-areas:"wedding commercial social" "corporate commercial film";gap:14px;height:clamp(380px,34vw,500px)}
.mh-tile{position:relative;display:block;overflow:hidden;border-radius:22px;background:radial-gradient(120% 90% at 30% 20%,color-mix(in srgb,var(--c) 55%,#2a1d14) 0%,#1a120d 75%);box-shadow:0 30px 60px -36px rgba(40,22,8,.75),inset 0 0 0 1px rgba(255,255,255,.08);isolation:isolate;opacity:0;transform:translateY(40px) scale(.92);animation:mhIn .9s cubic-bezier(.22,.8,.26,1) forwards;animation-delay:calc(.25s + var(--i) * .12s)}
.mh-tile--wedding{grid-area:wedding}.mh-tile--commercial{grid-area:commercial}.mh-tile--social{grid-area:social}.mh-tile--corporate{grid-area:corporate}.mh-tile--film{grid-area:film}
.mh-tile::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 45%,rgba(10,6,4,.75));pointer-events:none}
.mh-tile__pic{position:absolute;inset:6% 6% 16%;display:grid;place-items:center}
.mh-tile__pic img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(0,0,0,.45));animation:mhFloat 6s ease-in-out infinite;animation-delay:calc(var(--i) * -1.2s);transition:scale .6s cubic-bezier(.22,.8,.26,1)}
.mh-tile__label{position:absolute;left:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:30px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:13px;font-weight:700;line-height:1.2}
.mh-tile__label i{color:color-mix(in srgb,var(--c) 70%,#fff)}
.mh-tile:hover .mh-tile__pic img{scale:1.08}
.mh-tile:hover{box-shadow:0 34px 70px -34px color-mix(in srgb,var(--c) 70%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--c) 60%,transparent)}
.mh-tile--commercial .mh-tile__label{font-size:14px;padding:10px 15px}
@keyframes mhIn{to{opacity:1;transform:none}}
@keyframes mhFloat{50%{transform:translateY(-8px)}}
@media (prefers-reduced-motion:reduce){.mh-tile{animation:none;opacity:1;transform:none}.mh-tile__pic img{animation:none}}
@media (max-width:1180px){.mh-hero .md-hero__in{grid-template-columns:1fr}.mh-tiles{height:auto;grid-template-rows:repeat(2,200px);margin-top:20px}}
@media (max-width:640px){.mh-tiles{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:160px;grid-template-areas:"commercial commercial" "wedding social" "corporate film"}.mh-tiles .mh-tile--commercial{grid-row:span 1}.mh-tile__label{font-size:11.5px;padding:6px 10px}}
/* list of the 5 */
.mh-list{display:grid;gap:clamp(26px,3vw,40px);max-width:1180px;margin:0 auto}
.mh-item{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(26px,4vw,60px);align-items:center;padding:clamp(18px,2vw,26px);border-radius:28px;background:rgba(255,255,255,.85);border:1px solid #fff;box-shadow:0 30px 60px -44px rgba(90,60,20,.5)}
.mh-item--rev .mh-item__pic{order:2}
.mh-item__pic{position:relative;display:grid;place-items:center;aspect-ratio:1.45;border-radius:22px;overflow:hidden;background:radial-gradient(120% 100% at 30% 20%,color-mix(in srgb,var(--c) 55%,#2a1d14),#160f0b 78%)}
.mh-item__pic img{max-width:84%;max-height:86%;object-fit:contain;filter:drop-shadow(0 22px 28px rgba(0,0,0,.5));transition:scale .7s cubic-bezier(.22,.8,.26,1)}
.mh-item:hover .mh-item__pic img{scale:1.06}
.mh-item__num{position:absolute;left:18px;top:14px;font-family:var(--f-serif);font-style:italic;font-size:34px;color:rgba(255,255,255,.55)}
.mh-item__icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:14px;border-radius:16px;background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--c);font-size:21px}
.mh-item__short{margin:0 0 6px;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--c)}
.mh-item h3{font-family:var(--f-body);font-size:clamp(24px,2.3vw,34px);font-weight:800;letter-spacing:-.03em;color:var(--mt);margin:0 0 10px}
.mh-item p{font-size:16px;line-height:1.7;color:#6d6157;margin:0 0 16px}
.mh-item ul{list-style:none;margin:0 0 22px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.mh-item li{display:flex;align-items:center;gap:9px;font-weight:600;font-size:15px;color:var(--mt)}
.mh-item li i{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--c);font-size:10px}
@media (max-width:900px){.mh-item,.mh-item--rev{grid-template-columns:1fr}.mh-item--rev .mh-item__pic{order:0}.mh-item ul{grid-template-columns:1fr}}

/* ---- Media hub v2: own colour theme (ink, coral, magenta, violet) + crisp full-size tiles ---- */
.page-mhub{--mt:#15122a;--mg:#ff5a5f;--mg2:#f472b6;--hv:linear-gradient(90deg,#ff5a5f 0%,#d946ef 55%,#7c3aed 100%)}
.page-mhub .md-art,.page-mhub .md-hero.md-art{background:linear-gradient(160deg,#fbfaff 0%,#f3f1fb 55%,#efecf9 100%)}
.page-mhub .md-sec--ivory{background:linear-gradient(180deg,#f8f7fd 0%,#f0eef9 100%)}
.page-mhub .md-art .sv-divs__wave--l,.page-mhub .md-sec--ivory .sv-divs__wave--l{background:radial-gradient(closest-side,rgba(217,70,239,.16),transparent)}
.page-mhub .md-art .sv-divs__wave--r,.page-mhub .md-sec--ivory .sv-divs__wave--r{background:radial-gradient(closest-side,rgba(255,90,95,.14),transparent)}
.page-mhub .md-art .sv-divs__ring,.page-mhub .md-sec--ivory .sv-divs__ring{border-color:rgba(124,58,237,.15)}
.page-mhub .md-art .offer__dots,.page-mhub .md-sec--ivory .offer__dots{background-image:radial-gradient(circle,#c4b5fd 1.8px,transparent 2.2px)}
.page-mhub .md-pill,.page-mhub .md-hero.md-art .md-pill{color:#7c3aed;border-color:#e9e4fb;box-shadow:0 10px 24px -16px rgba(124,58,237,.45)}
.page-mhub .md-pill i{color:#d946ef}
.page-mhub .md-pill--dark{color:#f5d0fe;border-color:rgba(245,208,254,.25);background:rgba(255,255,255,.06)}
.page-mhub .md-title,.page-mhub .md-hero.md-art .md-hero__title,.page-mhub .mh-item h3{color:#15122a}
.page-mhub .md-title em,.page-mhub .md-hero.md-art .md-hero__title em{background:var(--hv);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}
.page-mhub .md-title--light{color:#fff}
.page-mhub .md-text,.page-mhub .md-hero.md-art .md-hero__text,.page-mhub .mh-item p{color:#5f5a78}
.page-mhub .md-btn--gold{background:#15122a;color:#fff;box-shadow:0 18px 36px -16px rgba(21,18,42,.6);position:relative;overflow:hidden;isolation:isolate}
.page-mhub .md-btn--gold::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--hv);opacity:0;transition:opacity .35s}
.page-mhub .md-btn--gold:hover::before{opacity:1}
.page-mhub .md-btn--gold i{color:#f9a8d4}
.page-mhub .md-btn--gold:hover i{color:#fff}
.page-mhub .md-art .md-btn--line{border-color:#d6d0ee;color:#15122a;background:rgba(255,255,255,.7)}
.page-mhub .md-art .md-btn--line:hover{border-color:#7c3aed;color:#7c3aed}
.page-mhub .header .btn--blue{background:#15122a}
.page-mhub .header.is-scrolled{background:rgba(250,249,255,.9)}
.page-mhub .nav__link.is-active{background:#15122a}
.page-mhub .md-proc{background:linear-gradient(160deg,#120f24 0%,#1e1440 60%,#2a0f3a 100%)}
.page-mhub .md-proc::after{background:radial-gradient(closest-side,rgba(217,70,239,.25),transparent)}
.page-mhub .md-steps::before{background:repeating-linear-gradient(90deg,rgba(244,114,182,.55) 0 8px,transparent 8px 16px)}
.page-mhub .md-step__num{background:#160f2b;border-color:#e879f9;color:#f5d0fe;box-shadow:0 0 0 6px rgba(217,70,239,.14)}
.page-mhub .md-step:hover .md-step__icon{background:var(--hv);color:#fff}
.page-mhub .md-cta{background:linear-gradient(115deg,#15122a,#2b1650 60%,#4c1d6e)}
.page-mhub .md-cta::before{background:radial-gradient(closest-side,rgba(255,90,95,.35),transparent)}
.page-mhub .md-cta__icon{background:var(--hv);color:#fff}
.page-mhub .md-cta .md-btn--gold{background:#fff;color:#15122a}
.page-mhub .md-cta .md-btn--gold i{color:#d946ef}
.page-mhub .md-cta .md-btn--gold:hover{color:#fff}
.page-mhub .md-cta .md-btn--gold:hover i{color:#fff}
.page-mhub .mh-item{border-color:#fff;box-shadow:0 30px 60px -44px rgba(60,30,120,.45)}
.page-mhub .md-pill__rec{background:#ff5a5f}
.page-mhub .cursor__dot{background:#d946ef}
.page-mhub .cursor__ring{border-color:rgba(217,70,239,.45)}
.page-mhub .mmodal .amodal__icon{background:var(--hv);color:#fff}
.page-mhub .mmodal .wmodal__step span{background:#15122a;color:#f9a8d4}
.page-mhub .mmodal .wmodal__chip span i{color:#a855f7}
.page-mhub .mmodal .wmodal__chip input:checked+span{background:#15122a;border-color:#15122a}
.page-mhub .mmodal .wmodal__chip input:checked+span i{color:#f9a8d4}
.page-mhub .mmodal .wmodal__chip--sm input:checked+span{background:#f5f3ff;border-color:#7c3aed;color:#6d28d9}
.page-mhub .mmodal .field input,.page-mhub .mmodal .field select,.page-mhub .mmodal .field textarea,.page-mhub .mmodal .wmodal__chip span{background-color:#f8f7fd;border-color:#e6e2f5}
.page-mhub .mmodal .field input:focus,.page-mhub .mmodal .field select:focus,.page-mhub .mmodal .field textarea:focus{border-color:#a855f7;box-shadow:0 0 0 4px rgba(168,85,247,.15)}
.page-mhub .mmodal .amodal__submit{background:#15122a}
/* crisp tiles: picture fills the whole tile, no faded edges */
.mh-tile{background:#16121e}
.mh-tile__pic{inset:0}
.mh-tile__pic img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;filter:none;animation:none;transition:scale .8s cubic-bezier(.22,.8,.26,1)}
.mh-tile::after{background:linear-gradient(180deg,transparent 55%,rgba(10,6,14,.7))}
.mh-tile::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--c) 0%,transparent);transition:box-shadow .4s;pointer-events:none}
.mh-tile:hover::before{box-shadow:inset 0 0 0 2px var(--c)}
.mh-tile{animation:mhIn .9s cubic-bezier(.22,.8,.26,1) forwards,mhBob 7s ease-in-out infinite;animation-delay:calc(.25s + var(--i) * .12s),calc(1.4s + var(--i) * -1.3s)}
@keyframes mhBob{0%,100%{translate:0 0}50%{translate:0 -6px}}
.mh-item__pic{background:#16121e}
.mh-item__pic img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;filter:none}
@media (prefers-reduced-motion:reduce){.mh-tile{animation:none}}
/* media hub v3: fresh mint background, extended pictures */
.page-mhub .md-art,.page-mhub .md-hero.md-art{background:linear-gradient(160deg,#f3fcf9 0%,#e8f8f2 55%,#ddf3eb 100%)}
.page-mhub .md-sec--ivory{background:linear-gradient(180deg,#f1fbf8 0%,#e4f6ef 100%)}
.page-mhub .md-art .sv-divs__wave--l,.page-mhub .md-sec--ivory .sv-divs__wave--l{background:radial-gradient(closest-side,rgba(20,184,166,.16),transparent)}
.page-mhub .md-art .sv-divs__wave--r,.page-mhub .md-sec--ivory .sv-divs__wave--r{background:radial-gradient(closest-side,rgba(255,90,95,.13),transparent)}
.page-mhub .md-art .sv-divs__ring,.page-mhub .md-sec--ivory .sv-divs__ring{border-color:rgba(13,148,136,.16)}
.page-mhub .md-art .offer__dots,.page-mhub .md-sec--ivory .offer__dots{background-image:radial-gradient(circle,#7dd3c0 1.8px,transparent 2.2px)}
.page-mhub .md-pill,.page-mhub .md-hero.md-art .md-pill{border-color:#d3efe6;box-shadow:0 10px 24px -16px rgba(13,148,136,.45)}
.page-mhub .md-text,.page-mhub .md-hero.md-art .md-hero__text,.page-mhub .mh-item p{color:#566a66}
.page-mhub .md-art .md-btn--line{border-color:#c7e7dd}
.page-mhub .header.is-scrolled{background:rgba(243,252,249,.92)}
.page-mhub .mh-item{background:#fff;box-shadow:0 30px 60px -44px rgba(13,90,80,.45)}
.page-mhub .mmodal .field input,.page-mhub .mmodal .field select,.page-mhub .mmodal .field textarea,.page-mhub .mmodal .wmodal__chip span{background-color:#f4fbf9;border-color:#dcefe8}
.mh-tile,.mh-item__pic{background:#141019}
.mh-item__pic{aspect-ratio:1.45}
.mh-item__pic img{object-position:center}
.mh-tile::after{background:linear-gradient(180deg,transparent 62%,rgba(10,6,14,.65))}
/* media hub v4: header 3D carousel (scene pictures) */
.mh-flow{--c:#c58b74;position:relative;padding-bottom:64px}
.mh-flow__glow{position:absolute;left:50%;top:44%;width:62%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--c) 38%,transparent),transparent);transition:background .8s;pointer-events:none}
.mh-flow__stage{position:relative;height:clamp(360px,30vw,470px);perspective:1400px}
.mh-card{--w:44%;position:absolute;left:50%;top:50%;width:var(--w);aspect-ratio:470/520;margin-left:calc(var(--w) / -2);translate:0 -50%;border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 34px 60px -34px rgba(13,60,55,.55),0 0 0 1px rgba(255,255,255,.9);transition:transform .9s cubic-bezier(.22,.8,.26,1),opacity .9s,filter .9s,box-shadow .6s;opacity:0;transform:scale(.4)}
.mh-card img{width:100%;height:100%;object-fit:cover;display:block}
.mh-card__label{position:absolute;left:50%;bottom:14px;translate:-50% 0;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:9px 16px;border-radius:30px;background:var(--c);color:#fff;font-size:14px;font-weight:700;box-shadow:0 10px 22px -10px var(--c);opacity:0;transition:opacity .5s}
.is-ready .mh-card[data-pos="0"]{z-index:5;opacity:1;transform:translateX(0) scale(1);box-shadow:0 44px 70px -36px color-mix(in srgb,var(--c) 75%,#000),0 0 0 3px #fff,0 0 0 5px color-mix(in srgb,var(--c) 60%,transparent);animation:mhLift 5s ease-in-out infinite}
.is-ready .mh-card[data-pos="0"] .mh-card__label{opacity:1;transition-delay:.35s}
.is-ready .mh-card[data-pos="1"]{z-index:4;opacity:1;transform:translateX(58%) scale(.78) rotateY(-24deg);cursor:pointer}
.is-ready .mh-card[data-pos="-1"]{z-index:4;opacity:1;transform:translateX(-58%) scale(.78) rotateY(24deg);cursor:pointer}
.is-ready .mh-card[data-pos="2"]{z-index:3;opacity:.75;transform:translateX(90%) scale(.6) rotateY(-34deg);cursor:pointer}
.is-ready .mh-card[data-pos="-2"]{z-index:3;opacity:.75;transform:translateX(-90%) scale(.6) rotateY(34deg);cursor:pointer}
.is-ready .mh-card:not([data-pos="0"]):hover{opacity:1}
@keyframes mhLift{0%,100%{translate:0 -50%}50%{translate:0 calc(-50% - 10px)}}
.mh-flow__dots{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.mh-dot{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 13px;border-radius:30px;border:1px solid #d3efe6;background:rgba(255,255,255,.85);color:#4f625e;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .35s,color .35s,border-color .35s}
.mh-dot i{color:var(--c)}
.mh-dot span{max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .5s}
.mh-dot.is-on{background:var(--c);border-color:var(--c);color:#fff}
.mh-dot.is-on i{color:#fff}
.mh-dot.is-on span{max-width:220px}
@media (prefers-reduced-motion:reduce){.mh-card{transition:none}.is-ready .mh-card[data-pos="0"]{animation:none}}
@media (max-width:1180px){.mh-flow{margin-top:26px}}
@media (max-width:640px){.mh-flow__stage{height:clamp(300px,82vw,380px)}.mh-card{--w:66%}.is-ready .mh-card[data-pos="1"]{transform:translateX(42%) scale(.74) rotateY(-24deg)}.is-ready .mh-card[data-pos="-1"]{transform:translateX(-42%) scale(.74) rotateY(24deg)}.is-ready .mh-card[data-pos="2"],.is-ready .mh-card[data-pos="-2"]{opacity:0;pointer-events:none}.mh-card__label{font-size:12px;padding:7px 12px}.mh-dot{height:34px;padding:0 11px}}
/* media hub v5: clean grey background + orange accent (no pink / violet) */
.page-mhub{--mt:#16181d;--hv:linear-gradient(90deg,#ff6a1f 0%,#ff9a1f 100%)}
.page-mhub .md-art,.page-mhub .md-hero.md-art{background:linear-gradient(160deg,#f7f8fa 0%,#eef0f4 55%,#e7eaf0 100%)}
.page-mhub .md-sec--ivory{background:linear-gradient(180deg,#f6f7f9 0%,#eceef2 100%)}
.page-mhub .md-art .sv-divs__wave--l,.page-mhub .md-sec--ivory .sv-divs__wave--l{background:radial-gradient(closest-side,rgba(255,122,31,.10),transparent)}
.page-mhub .md-art .sv-divs__wave--r,.page-mhub .md-sec--ivory .sv-divs__wave--r{background:radial-gradient(closest-side,rgba(90,100,120,.10),transparent)}
.page-mhub .md-art .sv-divs__ring,.page-mhub .md-sec--ivory .sv-divs__ring{border-color:rgba(22,24,29,.08)}
.page-mhub .md-art .offer__dots,.page-mhub .md-sec--ivory .offer__dots{background-image:radial-gradient(circle,#c3c8d2 1.8px,transparent 2.2px)}
.page-mhub .md-pill,.page-mhub .md-hero.md-art .md-pill{color:#16181d;border-color:#e2e5eb;box-shadow:0 10px 24px -16px rgba(22,24,29,.35)}
.page-mhub .md-pill i{color:#ff6a1f}
.page-mhub .md-pill--dark{color:#fff;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06)}
.page-mhub .md-pill__rec{background:#ff6a1f}
.page-mhub .md-title,.page-mhub .md-hero.md-art .md-hero__title,.page-mhub .mh-item h3{color:#16181d}
.page-mhub .md-title--light{color:#fff}
.page-mhub .md-text,.page-mhub .md-hero.md-art .md-hero__text,.page-mhub .mh-item p{color:#5b616d}
.page-mhub .md-btn--gold{background:#16181d;box-shadow:0 18px 36px -16px rgba(22,24,29,.55)}
.page-mhub .md-btn--gold i{color:#ff8a3d}
.page-mhub .md-art .md-btn--line{border-color:#d9dde4;color:#16181d}
.page-mhub .md-art .md-btn--line:hover{border-color:#ff6a1f;color:#e85a10}
.page-mhub .header .btn--blue,.page-mhub .nav__link.is-active{background:#16181d}
.page-mhub .header.is-scrolled{background:rgba(247,248,250,.92)}
.page-mhub .md-proc{background:linear-gradient(160deg,#121419 0%,#1a1d24 60%,#22262e 100%)}
.page-mhub .md-proc::after{background:radial-gradient(closest-side,rgba(255,122,31,.16),transparent)}
.page-mhub .md-steps::before{background:repeating-linear-gradient(90deg,rgba(255,138,61,.5) 0 8px,transparent 8px 16px)}
.page-mhub .md-step__num{background:#16181d;border-color:#ff8a3d;color:#fff;box-shadow:0 0 0 6px rgba(255,122,31,.12)}
.page-mhub .md-cta{background:linear-gradient(115deg,#16181d,#22262e 60%,#2c313b)}
.page-mhub .md-cta::before{background:radial-gradient(closest-side,rgba(255,122,31,.28),transparent)}
.page-mhub .md-cta .md-btn--gold{background:#fff;color:#16181d}
.page-mhub .md-cta .md-btn--gold i{color:#ff6a1f}
.page-mhub .md-cta .md-btn--gold:hover,.page-mhub .md-cta .md-btn--gold:hover i{color:#fff}
.page-mhub .mh-item{background:#fff;box-shadow:0 30px 60px -44px rgba(22,24,29,.4)}
.page-mhub .mh-dot{border-color:#e2e5eb;color:#4b515c}
.page-mhub .mh-card{box-shadow:0 34px 60px -34px rgba(22,24,29,.5),0 0 0 1px rgba(255,255,255,.9)}
.page-mhub .cursor__dot{background:#ff6a1f}
.page-mhub .cursor__ring{border-color:rgba(255,106,31,.45)}
.page-mhub .mmodal .wmodal__step span{color:#ff8a3d}
.page-mhub .mmodal .wmodal__chip span i{color:#ff6a1f}
.page-mhub .mmodal .wmodal__chip input:checked+span i{color:#ff8a3d}
.page-mhub .mmodal .wmodal__chip--sm input:checked+span{background:#fff4ec;border-color:#ff6a1f;color:#c2470a}
.page-mhub .mmodal .field input,.page-mhub .mmodal .field select,.page-mhub .mmodal .field textarea,.page-mhub .mmodal .wmodal__chip span{background-color:#f6f7f9;border-color:#e2e5eb}
.page-mhub .mmodal .field input:focus,.page-mhub .mmodal .field select:focus,.page-mhub .mmodal .field textarea:focus{border-color:#ff8a3d;box-shadow:0 0 0 4px rgba(255,122,31,.15)}
.page-mhub .md-art .sv-divs__wave--l,.page-mhub .md-sec--ivory .sv-divs__wave--l{background:radial-gradient(closest-side,rgba(120,130,150,.10),transparent)}
.page-mhub .mh-dot.is-on{color:#fff}
/* media hub v6: cinematic "teal & amber" palette to match the real scene photos */
.page-mhub{--mt:#0f1e28;--hv:linear-gradient(90deg,#e8913a 0%,#f2b154 100%)}
.page-mhub .md-art,.page-mhub .md-hero.md-art{background:linear-gradient(160deg,#fbfbfa 0%,#f1f3f5 55%,#e6ebef 100%)}
.page-mhub .md-sec--ivory{background:linear-gradient(180deg,#f7f8f9 0%,#eceff2 100%)}
.page-mhub .md-art .sv-divs__wave--l,.page-mhub .md-sec--ivory .sv-divs__wave--l{background:radial-gradient(closest-side,rgba(47,142,163,.10),transparent)}
.page-mhub .md-art .sv-divs__wave--r,.page-mhub .md-sec--ivory .sv-divs__wave--r{background:radial-gradient(closest-side,rgba(232,145,58,.12),transparent)}
.page-mhub .md-art .sv-divs__ring,.page-mhub .md-sec--ivory .sv-divs__ring{border-color:rgba(15,30,40,.08)}
.page-mhub .md-art .offer__dots,.page-mhub .md-sec--ivory .offer__dots{background-image:radial-gradient(circle,#b9c6cf 1.8px,transparent 2.2px)}
.page-mhub .md-pill,.page-mhub .md-hero.md-art .md-pill{color:#0f1e28;border-color:#e1e6ea}
.page-mhub .md-pill i,.page-mhub .md-pill__rec{color:#e8913a}
.page-mhub .md-pill__rec{background:#e8913a}
.page-mhub .md-title,.page-mhub .md-hero.md-art .md-hero__title,.page-mhub .mh-item h3{color:#0f1e28}
.page-mhub .md-title--light{color:#fff}
.page-mhub .md-text,.page-mhub .md-hero.md-art .md-hero__text,.page-mhub .mh-item p{color:#55636d}
.page-mhub .md-btn--gold,.page-mhub .header .btn--blue,.page-mhub .nav__link.is-active,.page-mhub .mmodal .amodal__submit,.page-mhub .mmodal .wmodal__chip input:checked+span{background:#0f1e28}
.page-mhub .mmodal .wmodal__chip input:checked+span{border-color:#0f1e28}
.page-mhub .md-btn--gold{box-shadow:0 18px 36px -16px rgba(15,30,40,.55)}
.page-mhub .md-btn--gold i,.page-mhub .mmodal .wmodal__step span,.page-mhub .mmodal .wmodal__chip input:checked+span i{color:#f2b154}
.page-mhub .md-art .md-btn--line:hover{border-color:#2f8ea3;color:#2f8ea3}
.page-mhub .md-proc{background:linear-gradient(160deg,#0b1820 0%,#10242f 60%,#14303d 100%)}
.page-mhub .md-proc::after{background:radial-gradient(closest-side,rgba(232,145,58,.16),transparent)}
.page-mhub .md-steps::before{background:repeating-linear-gradient(90deg,rgba(242,177,84,.5) 0 8px,transparent 8px 16px)}
.page-mhub .md-step__num{background:#0f1e28;border-color:#f2b154;box-shadow:0 0 0 6px rgba(232,145,58,.12)}
.page-mhub .md-cta{background:linear-gradient(115deg,#0f1e28,#13303d 60%,#1a4150)}
.page-mhub .md-cta::before{background:radial-gradient(closest-side,rgba(232,145,58,.28),transparent)}
.page-mhub .md-cta .md-btn--gold{background:#fff;color:#0f1e28}
.page-mhub .md-cta .md-btn--gold i{color:#e8913a}
.page-mhub .md-cta .md-btn--gold:hover,.page-mhub .md-cta .md-btn--gold:hover i{color:#fff}
.page-mhub .mh-item{box-shadow:0 30px 60px -44px rgba(15,30,40,.4)}
.page-mhub .mh-item__pic{background:#fff}
.page-mhub .mh-item__num{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.45)}
.page-mhub .mh-card{box-shadow:0 34px 60px -34px rgba(15,30,40,.5),0 0 0 1px rgba(255,255,255,.9)}
.page-mhub .cursor__dot{background:#e8913a}
.page-mhub .cursor__ring{border-color:rgba(232,145,58,.45)}
.page-mhub .mmodal .wmodal__chip span i{color:#2f8ea3}
.page-mhub .mmodal .wmodal__chip--sm input:checked+span{background:#fdf4e9;border-color:#e8913a;color:#a85f17}
.page-mhub .mmodal .field input:focus,.page-mhub .mmodal .field select:focus,.page-mhub .mmodal .field textarea:focus{border-color:#2f8ea3;box-shadow:0 0 0 4px rgba(47,142,163,.15)}
/* media hub: Wedding card - Individual / Corporate choice */
.mh-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mh-split__opt{position:relative;display:flex;align-items:flex-start;gap:12px;padding:14px 40px 14px 14px;border-radius:18px;background:#f7f8f9;border:1px solid #e3e7eb;color:#0f1e28;text-decoration:none;transition:background .3s,border-color .3s,transform .3s,box-shadow .3s}
.mh-split__icon{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#0f1e28;color:#f2b154;font-size:16px;transition:background .3s}
.mh-split__txt{display:grid;gap:3px}
.mh-split__txt strong{font-size:16px;font-weight:800}
.mh-split__txt small{font-size:13px;line-height:1.45;color:#5f6b74}
.mh-split__go{position:absolute;right:14px;top:50%;translate:0 -50%;font-size:13px;color:var(--c);transition:translate .3s}
.mh-split__opt:hover{background:#fff;border-color:var(--c);transform:translateY(-3px);box-shadow:0 18px 34px -22px color-mix(in srgb,var(--c) 80%,#000)}
.mh-split__opt:hover .mh-split__icon{background:var(--c);color:#fff}
.mh-split__opt:hover .mh-split__go{translate:4px -50%}
@media (max-width:560px){.mh-split{grid-template-columns:1fr}}
/* wedding pages: Individual / Corporate switch */
.wd-switch{display:inline-flex;gap:4px;margin:0 0 18px 10px;padding:4px;border-radius:40px;background:rgba(255,255,255,.75);border:1px solid #eadfce;vertical-align:top}
.wd-switch a{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:30px;font-size:13px;font-weight:700;color:#6d5a48;text-decoration:none;transition:background .3s,color .3s}
.wd-switch a:hover{color:#2a1d14}
.wd-switch a.is-on{background:#2a1d14;color:#fff}
.wd-switch a.is-on i{color:#e6c49a}
@media (max-width:600px){.wd-switch{margin-left:0;display:flex;width:max-content}}
/* IT & Hardware: hero photo */
.page-hw .ad-photo{border-radius:26px;overflow:hidden;box-shadow:0 40px 80px -40px rgba(30,27,75,.55),0 0 0 1px rgba(255,255,255,.7)}
.page-hw .ad-photo img{display:block;width:100%;height:auto;filter:none}
@media (min-width:1181px){.page-hw .ad-photo{top:0;width:clamp(620px,50vw,880px);margin:0 -30px 0 -20px}}
.page-hw .ad-photo{aspect-ratio:2/1}
.page-hw .ad-photo img{height:100%;object-fit:cover;object-position:50% 50%}
@media (max-width:1180px){.page-hw .ad-photo{width:100%;margin:10px 0 0;top:0}}
