/* The home page (Ryan's "AIM Squad Homepage.dc.html", tools/design/home.py). Mobile first: each `w >= N`
   of his logic is a min-width query at N (mob = below 700px). Prefix d-h. What moves: site-home.js. */

/* ---- shared on the home page */
.d-hsec{padding:68px 0}
@media(min-width:700px){.d-hsec{padding:110px 0}}
.d-hin{max-width:1240px;margin:0 auto;padding:0 var(--gut)}
.d-hhead{text-align:center;max-width:820px;margin:0 auto}
.d-hhead--16{display:flex;flex-direction:column;align-items:center}
.d-hhead--16 .d-hh2{margin-top:16px}
.d-hhead--720{max-width:720px}
.d-hchip{font-size:16px}
.d-hchip--dark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff;box-shadow:none}
.d-hh2{font-size:clamp(38px,4.8vw,64px);line-height:1.02;letter-spacing:-.015em;font-weight:700;color:#161441;margin-top:10px;text-wrap:balance}
.d-hh2--60{font-size:clamp(36px,4.6vw,60px)}
.d-hgo{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.d-hgo--60{margin-top:60px}
.d-hgo--56{margin-top:56px}
.d-hgo--48{margin-top:48px}

/* the round buttons of the home page (no transition: the design swaps colours at once) */
.d-hbtn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:18px;padding:15px 30px;border-radius:999px}
.d-hbtn--17{font-size:17px;padding:14px 26px}
.d-hbtn--y{background:#EEA715;color:#161441}
.d-hbtn--y:hover,.d-hbtn--y:focus-visible{background:#EEB315;color:#161441}
.d-hbtn--shadow{padding:16px 30px;box-shadow:0 14px 30px -14px rgba(238,167,21,.9)}
.d-hbtn--ghost{color:#fff;padding:16px 30px;border:1.5px solid rgba(255,255,255,.3)}
.d-hbtn--ghost:hover,.d-hbtn--ghost:focus-visible{border-color:#EEB315;color:#EEB315}
.d-hbtn--glass{color:#fff;padding:14px 30px;border:1.5px solid rgba(255,255,255,.5)}
.d-hbtn--glass:hover,.d-hbtn--glass:focus-visible{border-color:#EEB315;color:#EEB315}
.d-hbtn--navy{background:#161441;color:#fff}
.d-hbtn--navy:hover,.d-hbtn--navy:focus-visible{background:#EEA715;color:#161441}
.d-hbtn--line{background:#fff;color:#161441;border:1.5px solid #161441}
.d-hbtn--line:hover,.d-hbtn--line:focus-visible{border-color:#EEA715;color:#161441}
.d-hbtn--soft{background:#fff;color:#161441;border:1.5px solid #E1E5EB}
.d-hbtn--soft:hover,.d-hbtn--soft:focus-visible{border-color:#EEA715;color:#161441}
.d-hbtn--dot{gap:12px;padding:16px 32px;box-shadow:0 18px 36px -18px rgba(238,167,21,.8)}
.d-hbtn-dot{width:28px;height:28px;border-radius:50%;background:#161441;color:#EEB315;display:grid;place-items:center;flex:none;margin-right:-14px}
.d-hbtn-dot svg{display:block;width:15px;height:15px}

/* a row that swipes sideways on a phone (the design's swOv, swBleed, swPad) */
.d-hswipe{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-left:-16px;margin-right:-16px;padding:4px 16px 12px}
.d-hswipe::-webkit-scrollbar{display:none}
@media(min-width:400px){.d-hswipe{margin-left:-20px;margin-right:-20px;padding:4px 20px 12px}}
@media(min-width:700px){.d-hswipe{overflow-x:visible;margin-left:0;margin-right:0;padding:0}}

/* ---- the announcement over the header */
.d-hbar{background:#EEA715;color:#161441;font-size:15px;font-weight:600}
.d-hbar-in{max-width:1240px;margin:0 auto;padding:9px 28px;display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;text-align:center}
.d-hbar a{color:#161441;font-weight:700;text-decoration:underline}

/* ---- hero: the site carousel */
.d-hhero{position:relative;overflow:hidden;background:#161441;color:#fff}
.d-hhero-glow{position:absolute;inset:0;background:radial-gradient(900px 500px at 50% 0%,rgba(66,104,193,.38),transparent 70%);pointer-events:none}
.d-hhero-in{position:relative;max-width:1000px;margin:0 auto;padding:60px 20px 40px;text-align:center;display:flex;flex-direction:column;align-items:center}
@media(min-width:700px){.d-hhero-in{padding:84px 28px 56px}}
.d-hhero-proof{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:8px 16px;font-size:15px;font-weight:600;color:#fff;white-space:nowrap;max-width:100%}
.d-hhero-stars{color:#EEB315;letter-spacing:1px}
.d-hhero-proof i{width:4px;height:4px;border-radius:50%;background:#BEBECA;flex:none}
.d-hhero-short{display:none}
/* Small phones (Ryan, 6 Nov 2026): the short words, and two lines if even they do not fit */
@media(max-width:399px){.d-hhero-long{display:none}.d-hhero-short{display:inline}
  .d-hhero-proof{white-space:normal;flex-wrap:wrap;justify-content:center;row-gap:2px;text-align:center}}
.d-hhero-h1{font-size:clamp(44px,6.4vw,86px);line-height:.98;letter-spacing:-.02em;font-weight:900;color:#fff;margin-top:24px;text-wrap:balance}
.d-hhero-sub{margin-bottom:0;line-height:1.5;font-weight:400;font-size:20px;color:#D9DAE6;margin-top:20px;max-width:640px;text-wrap:pretty}
.d-hhero-go{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap;justify-content:center}
.d-hcar{position:relative;padding:8px 0 84px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);overflow-x:auto;scrollbar-width:none}
.d-hcar::-webkit-scrollbar{display:none}
.d-hcar.is-js{overflow:visible}
.d-hcar-track{display:flex;width:max-content;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.d-hcar.is-js .d-hcar-track{cursor:grab;will-change:transform}
.d-hcar-card{flex:none;width:300px;margin-right:28px;display:flex;flex-direction:column;color:#fff;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
@media(min-width:700px){.d-hcar-card{width:460px}}
.d-hcar-card:hover,.d-hcar-card:focus-visible{transform:translateY(-8px);color:#fff}
.d-hcar-card img{-webkit-user-drag:none}
.d-hcar-frame{border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 40px 70px -34px rgba(0,0,0,.85);border:1px solid rgba(255,255,255,.12)}
.d-hcar-frame .d-browser-bar{height:30px;padding:0 12px}
.d-hcar-frame .d-browser-bar i{width:9px;height:9px}
.d-hcar-shot{position:relative;aspect-ratio:16/10;overflow:hidden;background:#E1E5EB}
.d-hcar-img{position:absolute;top:0;left:0;display:block;width:100%;height:auto}
.d-hcar-shot--cut .d-hcar-img{margin-top:-3.3%}
.d-hcar-cap{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:0 4px}
.d-hcar-cap b{font-size:17px}
.d-hcar-cap span{font-size:14px;color:#D9DAE6}

/* ---- services */
.d-hsvc{background:#fff}
.d-hsvc-in{max-width:1720px;margin:0 auto;padding:0 20px}
@media(min-width:700px){.d-hsvc-in{padding:0 28px}}
@media(min-width:1100px){.d-hsvc-in{padding:0 40px}}
.d-hsvc-grid{display:grid;grid-template-columns:repeat(8,78%);gap:14px;margin-top:48px}
@media(min-width:700px){.d-hsvc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 26px}}
@media(min-width:1100px){.d-hsvc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.d-hsvc-card{scroll-snap-align:center;display:flex;flex-direction:column;border-radius:22px;padding:14px 14px 24px;color:#484848;transition:transform .3s}
.d-hsvc-card:hover,.d-hsvc-card:focus-visible{transform:translateY(-4px);color:#484848}
.d-hsvc-card--new{background:#161441}
.d-hsvc-pic{position:relative;aspect-ratio:1/1;border-radius:18px;overflow:hidden;background:#F3F6FC;box-shadow:0 20px 40px -28px rgba(22,20,65,.5)}
.d-hsvc-img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;transition:transform .6s ease}
.d-hsvc-tag{position:absolute;top:14px;left:14px;background:#161441;color:#EEB315;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:999px}
.d-hsvc-card--new .d-hsvc-tag{background:#EEA715;color:#161441}
.d-hsvc-perks{position:absolute;left:0;right:0;bottom:0;padding:70px 22px 22px;background:linear-gradient(180deg,rgba(22,20,65,0),rgba(22,20,65,.88) 38%,rgba(22,20,65,.97));color:#fff;transform:translateY(101%);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.d-hsvc-perks-h{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#EEB315}
.d-hsvc-perks ul{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.d-hsvc-perks li{display:flex;gap:10px;align-items:flex-start;font-size:16px;font-weight:600;line-height:1.35}
.d-hsvc-perks li span{width:20px;height:20px;border-radius:50%;background:#EEA715;color:#161441;display:grid;place-items:center;font-size:12px;font-weight:900;flex:none;margin-top:1px}
.d-hsvc-h{font-size:26px;line-height:1.08;font-weight:700;color:#161441;margin-top:22px;min-height:2.16em;display:flex;align-items:flex-end}
.d-hsvc-p{font-size:17px;line-height:1.45;margin-top:10px;color:#484848;min-height:2.9em}
.d-hsvc-card--new .d-hsvc-h{color:#fff}
.d-hsvc-card--new .d-hsvc-p{color:#E4E5EE}
.d-hsvc-sp{flex:1;min-height:20px}
.d-hsvc-btn{align-self:flex-start;border:1.5px solid #161441;background:transparent;color:#161441;border-radius:999px;padding:9px 22px;font-size:17px;font-weight:600;transition:background .2s,color .2s}
.d-hsvc-card--new .d-hsvc-btn{border-color:#EEA715;background:#EEA715;color:#161441}
.d-hsvc-card:hover .d-hsvc-img,.d-hsvc-card:focus-visible .d-hsvc-img{transform:scale(1.08)}
.d-hsvc-card:hover .d-hsvc-perks,.d-hsvc-card:focus-visible .d-hsvc-perks{transform:translateY(0)}
.d-hsvc-card:not(.d-hsvc-card--new):hover .d-hsvc-btn,.d-hsvc-card:not(.d-hsvc-card--new):focus-visible .d-hsvc-btn{background:#161441;color:#fff}

/* ---- about */
.d-habout{position:relative;overflow:clip;background:#161441;color:#fff;padding:68px 0 70px}
@media(min-width:700px){.d-habout{padding:110px 0 70px}}
.d-habout-glow{position:absolute;inset:0;background:radial-gradient(600px 340px at 15% 15%,rgba(66,104,193,.38),transparent 70%),radial-gradient(560px 320px at 85% 75%,rgba(120,96,210,.28),transparent 70%);pointer-events:none}
.d-habout-in{position:relative;max-width:1240px;margin:0 auto;padding:0 var(--gut)}
.d-habout-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:56px;align-items:start}
.d-habout-h{font-size:clamp(40px,5vw,66px);line-height:1;color:#fff;text-wrap:wrap}
.d-habout-p{font-size:18px;line-height:1.55;color:#E4E5EE;margin-top:22px;max-width:560px;text-wrap:pretty}
.d-habout-p--2{margin-top:14px}
.d-habout-go{display:flex;align-items:center;gap:22px;margin-top:30px;flex-wrap:wrap}
.d-habout-team{display:flex;align-items:center;gap:14px;color:#E4E5EE}
.d-habout-team:hover,.d-habout-team:focus-visible{color:#fff}
.d-habout-faces{display:flex}
.d-habout-faces img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid #161441;margin-left:-14px}
.d-habout-faces img:first-child{margin-left:0}
.d-habout-team-t{font-size:16px;line-height:1.3}
.d-habout-team-t b{display:block;color:#fff}
/* Below 1000px the design keeps top:120px on a relative box, so the video sits 120px low (over the logos' rule). */
.d-habout-vid{position:relative;top:0;margin-top:0;aspect-ratio:16/9;border-radius:24px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.12);background:#100E33}
@media(min-width:1000px){.d-habout-vid{position:sticky;top:120px;margin-top:54px}}
.d-habout-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.d-habout-vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.d-habout-play{position:absolute;inset:0;margin:auto;width:92px;height:92px;border-radius:50%;border:none;cursor:pointer;background:#EEA715;color:#161441;font-size:30px;line-height:normal;display:grid;place-items:center;padding-left:6px;animation:hireGlow 2.4s ease-in-out infinite;transition:transform .2s}
.d-habout-play:hover,.d-habout-play:focus-visible{color:#161441;transform:scale(1.08);animation-play-state:paused;box-shadow:0 0 0 10px rgba(238,167,21,.3),0 0 40px 10px rgba(238,179,21,.75)}
.d-habout-play:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 10px rgba(238,167,21,.3),0 0 40px 10px rgba(238,179,21,.75)}
.d-habout-logos{margin-top:80px;padding-top:44px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px 40px}
.d-habout-logo{width:auto;max-width:180px;object-fit:contain;filter:brightness(0) invert(1);opacity:.92}
.d-habout-logo--34{height:34px}.d-habout-logo--36{height:36px}.d-habout-logo--38{height:38px}
.d-habout-logo--40{height:40px}.d-habout-logo--42{height:42px}.d-habout-logo--44{height:44px}

/* ---- reviews */
.d-hrev{background:#F3F6FC;overflow:hidden}
.d-hrev-head{max-width:1240px;margin:0 auto;padding:0 var(--gut);text-align:center}
.d-hrev-rating{display:inline-flex;align-items:center;gap:12px;margin-top:20px;background:#fff;border:1px solid #E1E5EB;border-radius:999px;padding:8px 18px}
.d-hrev-rating b{font-size:19px;color:#161441}
.d-hrev-stars{color:#EEA715;letter-spacing:1px}
.d-hrev-rating span:last-child{font-size:16px}
/* The ring: --n cards around a cylinder of radius --r, turned by --a (degrees) from the script. A card
   turned past 90° shows its back, which is hidden, so the front one and two either side are seen. */
.d-hrev-scene{--w:min(640px,84vw);--h:440px;--r:calc(var(--w)*1.18);position:relative;height:var(--h);margin:52px 0 0;perspective:1900px;perspective-origin:50% 40%;touch-action:pan-y;cursor:grab;user-select:none}
.d-hrev-scene.is-drag{cursor:grabbing}
@media(max-width:699px){.d-hrev-scene{--h:430px;perspective:1300px}}
.d-hrev-ring{--a:0;position:absolute;left:50%;top:0;width:var(--w);height:100%;margin-left:calc(var(--w)/-2);transform-style:preserve-3d;
  transform:translateZ(calc(var(--r)*-1)) rotateY(calc(var(--a)*1deg));transition:transform .9s cubic-bezier(.22,.8,.26,1)}
.d-hrev-scene.is-drag .d-hrev-ring{transition:none}
.d-hrev-card{position:absolute;inset:0;margin:0;box-sizing:border-box;background:#fff;border:1px solid #E1E5EB;border-radius:26px;padding:clamp(26px,4vw,48px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;
  transform:rotateY(calc(var(--i)*360deg/var(--n))) translateZ(var(--r));opacity:.5;transition:opacity .6s,box-shadow .6s}
.d-hrev-card.is-front{opacity:1;box-shadow:0 30px 70px -40px rgba(22,20,65,.45)}
.d-hrev-card:not(.is-front){cursor:pointer}
@media(prefers-reduced-motion:reduce){.d-hrev-ring,.d-hrev-card{transition:none}}
.d-hrev-g{width:120px;height:auto;display:block}
.d-hrev-q{margin:18px 0 0;font-size:clamp(18px,2vw,24px);line-height:1.42;font-weight:600;color:#161441;text-wrap:pretty}
.d-hrev-who{display:flex;align-items:center;gap:14px;margin-top:28px;text-align:left}
.d-hrev-face{width:60px;height:60px;border-radius:50%;object-fit:cover;flex:none}
.d-hrev-face--ini{background:#161441;color:#EEB315;display:grid;place-items:center;font-weight:700;font-size:20px}
.d-hrev-who b{display:block;font-size:19px;color:#161441}
.d-hrev-who span{font-size:16px}
.d-hrev-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:36px}
.d-hrev-arrow{width:48px;height:48px;border-radius:50%;border:1.5px solid #161441;background:#fff;color:#161441;font-size:20px;line-height:normal;cursor:pointer;padding:0}
.d-hrev-arrow:hover,.d-hrev-arrow:focus-visible{background:#161441;color:#fff}
.d-hrev-dots{display:flex;gap:8px}
.d-hrev-dot{height:10px;width:10px;border-radius:5px;border:none;padding:0;cursor:pointer;background:#BEBECA;transition:width .25s}
.d-hrev-dot[aria-current="true"]{width:28px;background:#EEA715}
.d-hrev-more{text-align:center;margin-top:32px}

/* ---- case studies */
.d-hwork{position:relative;overflow:hidden;background:#161441;color:#fff}
.d-hwork-glow{position:absolute;inset:0;background:radial-gradient(720px 420px at 100% 0%,rgba(66,104,193,.42),transparent 70%),radial-gradient(520px 320px at 0% 100%,rgba(238,167,21,.10),transparent 70%);pointer-events:none}
.d-hwork-head{position:relative;max-width:1240px;margin:0 auto;padding:0 var(--gut);display:flex;justify-content:space-between;align-items:flex-end;gap:24px 40px;flex-wrap:wrap}
.d-hwork-intro{display:flex;flex-direction:column;gap:14px;max-width:760px}
.d-hwork-intro .d-hchip{align-self:flex-start;white-space:nowrap}
.d-hwork-h2{font-size:clamp(38px,5vw,68px);color:#fff;margin-top:0}
.d-hwork-p{font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:#E4E5EE;text-wrap:pretty}
.d-hwork-ctrl{display:flex;align-items:center;gap:14px}
.d-hwork-all{font-weight:700;font-size:18px;color:#fff;border-bottom:2px solid #EEA715;padding-bottom:3px;margin-right:10px;white-space:nowrap}
.d-hwork-all:hover,.d-hwork-all:focus-visible{color:#EEB315}
.d-hwork-arrow{width:56px;height:56px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center;flex:none;padding:0}
.d-hwork-arrow:hover,.d-hwork-arrow:focus-visible{background:#EEA715;border-color:#EEA715;color:#161441}
.d-hwork-arrow svg{display:block}
/* 8px above the cards (the design has none) so a lifted or focused card is not cut off */
.d-hwork-row{--work-l:var(--gut);position:relative;display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:var(--work-l);scrollbar-width:none;margin-top:44px;padding:8px var(--gut) 8px var(--work-l)}
.d-hwork-row::-webkit-scrollbar{display:none}
@media(pointer:fine){.d-hwork-row{cursor:grab}}
.d-hwork-row.is-drag{cursor:grabbing;scroll-snap-type:none;user-select:none}
.d-hwork-row.is-drag .d-hwork-card{pointer-events:none}
@media(min-width:1240px){.d-hwork-row{--work-l:calc((100vw - 1240px) / 2 + 28px)}}
.d-hwork-card{flex:none;width:82vw;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;background:#1E1C55;border:1px solid rgba(255,255,255,.12);border-radius:26px;overflow:hidden;color:#fff;transition:transform .25s,border-color .25s,box-shadow .25s}
@media(min-width:760px){.d-hwork-card{width:min(46vw,420px)}}
@media(min-width:1200px){.d-hwork-card{width:calc((min(1240px,100vw) - 56px - 48px) / 3)}}
.d-hwork-card:hover,.d-hwork-card:focus-visible{transform:translateY(-6px);border-color:#EEA715;box-shadow:0 40px 70px -40px rgba(0,0,0,.7);color:#fff}
.d-hwork-card:focus-visible{box-shadow:0 0 0 2px #fff,0 40px 70px -40px rgba(0,0,0,.7)}
.d-hwork-pic{position:relative;aspect-ratio:4/3;overflow:hidden;background:#0F0E33}
.d-hwork-img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.d-hwork-tags{position:absolute;top:16px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.d-hwork-tags span{font-size:15px;padding:8px 14px;border-radius:999px;white-space:nowrap}
.d-hwork-tags span:first-child{background:rgba(22,20,65,.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.2);color:#fff;font-weight:600;overflow:hidden;text-overflow:ellipsis;min-width:0}
.d-hwork-tags span:last-child{background:#EEA715;color:#161441;font-weight:700;flex:none}
.d-hwork-body{display:flex;flex-direction:column;gap:10px;padding:28px 28px 30px;flex:1}
.d-hwork-h{font-size:clamp(24px,2.2vw,30px);line-height:1.12;font-weight:700;color:#fff}
.d-hwork-r{font-size:clamp(19px,1.6vw,22px);line-height:1.35;font-weight:700;color:#EEB315;text-wrap:pretty}
.d-hwork-read{margin-top:auto;padding-top:22px;font-size:18px;font-weight:700;color:#fff;display:inline-flex;align-items:center;gap:8px}
.d-hwork-read span{color:#EEA715}
.d-hwork-go{position:relative;display:flex;justify-content:center;margin-top:40px;padding:0 var(--gut)}
.d-hwork-go .d-hbtn{gap:10px;padding:16px 30px}

/* ---- why partner */
.d-hwhy-grid{display:grid;grid-template-columns:repeat(6,82%);gap:14px;margin-top:36px}
@media(min-width:700px){.d-hwhy-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:22px;margin-top:56px;padding:4px 0 0}}
.d-hwhy-card{scroll-snap-align:center;display:flex;flex-direction:column;background:#fff;border:1px solid #E1E5EB;border-radius:24px;padding:30px 28px 32px;transition:transform .25s,box-shadow .25s,border-color .25s}
.d-hwhy-card:hover{transform:translateY(-4px);border-color:#EEA715;box-shadow:0 30px 60px -36px rgba(22,20,65,.5)}
.d-hwhy-ic{width:72px;height:72px;border-radius:20px;background:#F3F6FC;display:grid;place-items:center}
.d-hwhy-ic img{display:block;max-width:46px;max-height:46px;width:auto;height:auto;object-fit:contain}
.d-hwhy-h{font-size:23px;line-height:1.2;font-weight:700;color:#161441;margin-top:22px;text-wrap:balance}
.d-hwhy-p{font-size:17px;line-height:1.55;margin-top:10px;color:#484848;text-wrap:pretty}

/* ---- AI visibility */
.d-hai{background:#161441;color:#fff;position:relative;overflow:hidden}
.d-hai-glow{position:absolute;inset:0;background:radial-gradient(700px 420px at 85% 30%,rgba(66,104,193,.45),transparent 70%);pointer-events:none}
.d-hai-in{position:relative;max-width:1240px;margin:0 auto;padding:0 var(--gut);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:60px;align-items:center}
.d-hai-h{font-size:clamp(36px,4.6vw,60px);color:#fff}
.d-hai-p{font-size:20px;color:#D9DAE6;margin-top:20px;max-width:520px;text-wrap:pretty}
.d-hai-pts{display:flex;flex-direction:column;gap:14px;margin-top:30px}
.d-hai-pts>div{display:flex;gap:14px;align-items:baseline}
.d-hai-pts>div>span:first-child{font-size:15px;font-weight:700;color:#161441;background:#EEB315;border-radius:999px;padding:2px 10px;flex:none}
.d-hai-pts>div>span:last-child{font-size:18px;color:#fff}
.d-hai-go{display:inline-flex;margin-top:34px;padding:15px 28px}
.d-hai-chat{max-width:540px;width:100%;justify-self:center}
.d-hchat{margin:0;background:#fff;color:#484848;border-radius:22px;padding:24px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);min-height:430px;display:flex;flex-direction:column;gap:18px}
.d-hchat-top{display:flex;align-items:center;justify-content:space-between}
.d-hchat-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#161441}
.d-hchat-label span{width:8px;height:8px;border-radius:50%;background:#EEA715}
.d-hchat-src{font-size:14px;color:#484848}
.d-hchat-body{flex:1;display:flex;flex-direction:column;gap:18px}
.d-hchat-body [hidden]{display:none!important}
.d-hchat-q{display:flex;justify-content:flex-end;animation:mWordIn .35s ease both}
.d-hchat-q>div{background:#F3F6FC;color:#161441;font-size:17px;font-weight:600;padding:13px 17px;border-radius:18px 18px 4px 18px;max-width:85%}
.d-hchat-think{display:flex;gap:12px;align-items:center;animation:mWordIn .3s ease both}
.d-hchat-dots{display:flex;gap:5px;background:#F3F6FC;border-radius:999px;padding:12px 16px}
.d-hchat-dots span{width:7px;height:7px;border-radius:50%;background:#161441;animation:mDot 1s ease infinite}
.d-hchat-dots span:nth-child(2){animation-delay:.15s}
.d-hchat-dots span:nth-child(3){animation-delay:.3s}
.d-hchat-a{display:flex;gap:12px}
.d-hchat-av{width:32px;height:32px;border-radius:50%;background:#161441;color:#EEB315;display:grid;place-items:center;font-size:15px;flex:none}
.d-hchat-text{font-size:17px;line-height:1.55}
.d-hchat-text p{margin:0}
.d-hchat-text b{color:#161441;background:rgba(238,179,21,.42);padding:0 4px;border-radius:4px;animation:mPop .4s cubic-bezier(.2,.9,.3,1.3) both;display:inline-block}
.d-hchat-chips{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.d-hchat-chips:empty{display:none}
.d-hchat-chips span{font-size:14px;font-weight:600;color:#161441;background:#F3F6FC;border:1px solid #E1E5EB;padding:4px 12px;border-radius:999px;animation:mPop .35s cubic-bezier(.2,.9,.3,1.3) both}
.d-hchat-caret{display:inline-block;width:2px;height:1.05em;background:#161441;margin-left:2px;vertical-align:text-bottom;animation:mCaret 1s steps(1) infinite}
.d-hchat-input{display:flex;align-items:center;gap:10px;border:1.5px solid #E1E5EB;border-radius:999px;padding:8px 8px 8px 18px}
.d-hchat-typed{flex:1;font-size:16px;color:#9A9AAA;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;text-align:left}
.d-hchat-typed.is-typed{color:#161441}
.d-hchat-send{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:#161441;color:#fff;transition:background .2s;flex:none}
.d-hchat-send.is-ready{background:#EEA715;color:#161441}

/* ---- how it works */
.d-hsteps-grid{list-style:none;display:grid;grid-template-columns:repeat(4,80%);gap:14px;margin-top:36px;margin-bottom:0}
@media(min-width:700px){.d-hsteps-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:56px}}
@media(min-width:1000px){.d-hsteps-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.d-hstep{position:relative;line-height:normal;scroll-snap-align:center;display:flex;flex-direction:column;text-align:left}
.d-hstep-bar{height:6px;border-radius:3px;background:#E1E5EB;overflow:hidden}
.d-hstep-bar i{display:block;height:100%;background:#EEA715;transform-origin:left;transform:scaleX(0)}
.d-hstep.is-on .d-hstep-bar i{animation:mProg 4s linear both}
.d-hstep.is-done .d-hstep-bar i{transform:none;background:#161441}
.d-hstep-card{width:100%;margin-top:18px;border-radius:22px;padding:28px 26px 30px;background:#fff;border:1px solid #E1E5EB;transition:all .5s cubic-bezier(.2,.8,.2,1);min-height:250px;display:flex;flex-direction:column}
.d-hstep-n{font-size:84px;font-weight:900;line-height:.8;letter-spacing:-.04em;color:#D5D8E2;transition:color .5s}
.d-hstep-h{font-size:24px;font-weight:700;margin-top:26px;color:#161441;transition:color .5s}
.d-hstep-p{font-size:17px;line-height:1.5;margin-top:8px;color:#484848;text-wrap:pretty;transition:color .5s}
.d-hstep.is-done .d-hstep-n{color:#161441}
.d-hstep.is-on .d-hstep-card{background:#161441;border-color:#161441;box-shadow:0 30px 60px -30px rgba(22,20,65,.7)}
.d-hstep.is-on .d-hstep-n{color:#EEB315}
.d-hstep.is-on .d-hstep-h{color:#fff}
.d-hstep.is-on .d-hstep-p{color:#E4E5EE}
.d-hstep-go{position:absolute;inset:0;width:100%;background:none;border:none;padding:0;cursor:pointer;border-radius:22px}

/* ---- FAQ */
.d-hfaq{background:#fff}
.d-hfaq-in{max-width:1240px;margin:0 auto;padding:0 var(--gut);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:56px;align-items:start}
.d-hfaq-l{position:sticky;top:110px}
.d-hfaq-p{font-size:19px;line-height:1.55;margin-top:16px;max-width:420px;text-wrap:pretty}
.d-hfaq-go{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}
.d-hfaq-list{display:flex;flex-direction:column;gap:12px}
.d-hfaq-item{background:#fff;border:1.5px solid #E1E5EB;border-radius:18px;overflow:hidden;transition:border-color .3s,box-shadow .3s}
.d-hfaq-item[open]{border-color:#EEA715;box-shadow:0 24px 48px -30px rgba(22,20,65,.45)}
.d-hfaq-item summary{list-style:none;cursor:pointer;text-align:left;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:700;font-size:19px;line-height:normal;color:#161441}
.d-hfaq-item summary::-webkit-details-marker{display:none}
.d-hfaq-chip{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none;background:#161441;color:#EEB315;transition:transform .35s cubic-bezier(.2,.8,.2,1),background .3s,color .3s}
.d-hfaq-chip svg{display:block}
.d-hfaq-item[open] .d-hfaq-chip{background:#EEA715;color:#161441;box-shadow:0 0 0 6px rgba(238,167,21,.18);transform:rotate(180deg)}
.d-hfaq-a{margin:0 22px;padding:16px 0 22px;border-top:1px solid #E1E5EB;font-size:18px;line-height:1.55}

/* ---- the shell's contact section, as the home page's design draws it (its own background, padding, shadow) */
.d-kind-home+.d-contact{padding:68px 16px;background:#E9EEF8;border-top:1px solid #DCE2EE}
@media(min-width:700px){.d-kind-home+.d-contact{padding:110px 28px}}
.d-kind-home+.d-contact .d-contact-card{box-shadow:0 50px 100px -40px rgba(22,20,65,.55),0 0 0 1px rgba(22,20,65,.06)}
