/* MacroBex b8: shared styles for every page, both markets */
:root{
  --bg:#030812;--surface:#0A1630;--surface2:#0D1D3C;--line:#ffffff14;--line2:#ffffff26;
  --ink:#F4F8FC;--mute:#90A3BE;--blue:#4FB8F7;--blue2:#2B7FF2;--sky:#9ED8FF;--gray:#C4D8EF;--navy:#00306A;
  --glow:#1f6fd1;
  --f:"Archivo",system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace;
  --bnh:"Anek Bangla","Archivo",sans-serif;--bn:"Noto Sans Bengali","Archivo",sans-serif;
  --pad:clamp(1.1rem,4vw,3.5rem);--max:1320px;--ease:cubic-bezier(.2,.7,.2,1);--r:22px
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:clip}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--bg);color:var(--ink);font-family:var(--f);-webkit-font-smoothing:antialiased;line-height:1.55}
body::before{content:"";position:fixed;inset:-20% -10% auto;height:70vh;pointer-events:none;z-index:-1;background:radial-gradient(50% 60% at 20% 0%,#0d3a7a55,transparent 70%),radial-gradient(40% 50% at 90% 10%,#0a4f8a40,transparent 70%)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer}
ul,ol{list-style:none}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:calc(var(--max) + var(--pad)*2);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.mono{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.blue,.b{color:var(--blue)}
.ph2{font-family:var(--mono);font-size:.56rem;letter-spacing:.08em;text-transform:uppercase;color:#ffffff80;border:1px dashed #ffffff40;padding:.2rem .45rem;border-radius:4px;white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;z-index:300;background:var(--ink);color:#000;padding:.6rem 1rem;border-radius:8px}
.skip:focus{left:1rem;top:1rem}

/* type */
h1,h2,h3,h4{font-weight:700;font-stretch:112%;letter-spacing:-.03em;line-height:1.04}
.h1{font-size:clamp(2.6rem,6vw,5.6rem);line-height:.98}
.h2{font-size:clamp(2.1rem,4.4vw,4rem)}
.h3{font-size:clamp(1.5rem,2.4vw,2.2rem)}
.lead{color:var(--gray);font-size:clamp(1rem,1.3vw,1.18rem);max-width:52ch}
.kick{display:block;font-size:.92rem;font-weight:500;color:var(--mute)}
.sh{display:grid;grid-template-columns:1.3fr 1fr;gap:2rem;align-items:end;margin-bottom:clamp(2rem,5vw,3.5rem)}
.sh .kick{margin-bottom:1rem}
.sh p{color:var(--mute);max-width:42ch;justify-self:end;font-size:1.02rem}
@media(max-width:860px){.sh{grid-template-columns:1fr;gap:1rem}.sh p{justify-self:start}}
section{position:relative}
.sec{padding-top:clamp(5rem,10vw,8.5rem)}
.sec-s{padding-top:clamp(3.5rem,7vw,5.5rem)}

/* Bangla */
html[lang=bn] body{font-family:var(--bn)}
html[lang=bn] h1,html[lang=bn] h2,html[lang=bn] h3,html[lang=bn] h4{font-family:var(--bnh);font-stretch:normal;font-variation-settings:"wdth" 108;letter-spacing:0;line-height:1.2}
html[lang=bn] .h1{line-height:1.14}
html[lang=bn] .mono{font-family:var(--mono),var(--bn);letter-spacing:.03em}
html[lang=bn] .pill,html[lang=bn] nav{font-family:var(--bn)}
html[lang=bn] .pill{padding-top:1rem;padding-bottom:.8rem}
html[lang=bn] nav .go{padding-top:.68rem;padding-bottom:.52rem}

/* buttons */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;border-radius:999px;padding:.9rem 1.45rem;font-weight:600;font-size:.92rem;transition:gap .35s var(--ease),background .3s,color .3s,border-color .3s,box-shadow .3s;white-space:nowrap}
.pill:hover{gap:.95rem}
.pill.solid{background:var(--ink);color:#04101F}
.pill.solid:hover{background:#dfe9f4}
.pill.blue-btn{background:var(--blue);color:#04101F}
.pill.blue-btn:hover{background:#7cccfb}
.pill.ghost{border:1px solid var(--line2);background:#ffffff08}
.pill.ghost:hover{border-color:#ffffff80}
.btns{display:flex;gap:.6rem;flex-wrap:wrap}

/* card */
.card{position:relative;border-radius:16px;background:var(--surface);border:1px solid var(--line);overflow:hidden;transition:border-color .4s,background .4s}
a.card:hover,.card.hov:hover{border-color:#ffffff40;background:#0c1a38}

/* cursor */
@media(pointer:fine){html.cc,html.cc *{cursor:none!important}}
.cur-ring,.cur-dot,.cur-ripple{position:fixed;left:0;top:0;pointer-events:none;will-change:transform}
.cur-ring{width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;z-index:200;opacity:0;border:1.5px solid var(--blue);background:#4FB8F71f;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity .3s}
.cur-ring.link{opacity:1}
.cur-dot{width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#fff;z-index:201;box-shadow:0 0 0 1px rgba(3,6,11,.35)}
.cur-ripple{width:42px;height:42px;margin:-21px 0 0 -21px;z-index:199;transition:opacity .35s}
.cur-ripple::before,.cur-ripple::after{content:"";position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(255,255,255,.8);opacity:0;animation:mbRipple 2.8s cubic-bezier(.15,.55,.3,1) infinite}
.cur-ripple::after{animation-delay:1.4s}
@keyframes mbRipple{0%{transform:scale(.25);opacity:0}12%{opacity:.7}100%{transform:scale(1.85);opacity:0}}
.cur-ripple.off{opacity:0}
.cc-off .cur-ring,.cc-off .cur-dot,.cc-off .cur-ripple{opacity:0}
@media(pointer:coarse){.cur-ring,.cur-dot,.cur-ripple{display:none}}

/* ---------- NAV ---------- */
nav.top{position:fixed;inset:0 0 auto;z-index:80;transition:background .4s,border-color .4s;border-bottom:1px solid transparent}
nav.top>.in{display:flex;justify-content:space-between;align-items:center;padding-top:.9rem;padding-bottom:.9rem;gap:1rem}
nav.top.solid,body.menu-open nav.top{background:#030812d9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:var(--line)}
.brand{display:flex;align-items:center;gap:.6rem;font-family:"Montserrat",sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:-.01em;flex:none}
.brand img{width:28px;height:28px}
.links{display:flex;gap:1.9rem;font-size:.92rem;color:var(--gray)}
.links>a,.links .dd>button{padding:.4rem 0;transition:color .3s;display:inline-flex;align-items:center;gap:.35rem;position:relative}
.links>a:hover,.links .dd>button:hover,.links .dd:focus-within>button{color:var(--ink)}
.links a[aria-current="page"],.links .dd.cur>button{color:var(--ink)}
.links a[aria-current="page"]::after,.links .dd.cur>button::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1.5px;background:var(--blue)}
.links .dd{position:relative}
.links .dd>button svg{width:10px;height:10px;transition:transform .3s}
.links .dd:hover>button svg,.links .dd:focus-within>button svg{transform:rotate(180deg)}
.mega{position:absolute;left:50%;top:calc(100% + 14px);transform:translate(-50%,8px);width:min(640px,90vw);opacity:0;visibility:hidden;transition:opacity .3s,transform .4s var(--ease),visibility .3s;padding:.6rem;display:grid;grid-template-columns:1fr 1fr;gap:.3rem;background:#0A1630f2;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--line2);border-radius:20px;box-shadow:0 30px 80px #000a}
.mega::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.dd:hover .mega,.dd:focus-within .mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mega a{display:grid;grid-template-columns:40px 1fr;gap:.2rem .8rem;padding:.85rem;border-radius:14px;transition:background .3s}
.mega a:hover{background:#ffffff0d}
.mega a i{grid-row:span 2;width:40px;height:40px;display:grid;place-items:center;color:var(--blue)}
.mega a i svg{width:18px;height:18px}
.mega a b{font-size:.92rem;color:var(--ink);font-weight:600}
.mega a span{font-size:.8rem;color:var(--mute);line-height:1.4}
.mega .all{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-radius:0 0 14px 14px;padding:.85rem;font-size:.85rem;color:var(--gray)}
nav .right{display:flex;align-items:center;gap:1rem}
.mk{font-family:var(--mono);font-size:.7rem;color:var(--mute);letter-spacing:.08em}
.mk b{color:var(--ink);font-weight:500}
.mk a:hover{color:var(--ink)}
nav .go{font-size:.84rem;font-weight:600;background:var(--ink);color:#04101F;padding:.6rem 1.1rem;border-radius:999px;white-space:nowrap}
.burger{display:none;width:42px;height:42px;border-radius:50%;border:1px solid var(--line2);place-items:center}
.burger i{display:block;width:16px;height:1.5px;background:var(--ink);position:relative;transition:transform .3s}
.burger i::before,.burger i::after{content:"";position:absolute;left:0;width:16px;height:1.5px;background:var(--ink);transition:transform .3s,top .3s}
.burger i::before{top:-5px}.burger i::after{top:5px}
body.menu-open .burger i{background:transparent}
body.menu-open .burger i::before{top:0;transform:rotate(45deg)}
body.menu-open .burger i::after{top:0;transform:rotate(-45deg)}
.mmenu{position:fixed;inset:0;z-index:70;background:#030812;padding:6rem var(--pad) 2rem;display:flex;flex-direction:column;gap:2rem;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;overflow-y:auto}
body.menu-open .mmenu{opacity:1;visibility:visible}
.mmenu .ml{display:grid;gap:.2rem}
.mmenu .ml a{font-size:1.9rem;font-weight:700;font-stretch:112%;letter-spacing:-.03em;padding:.35rem 0;border-bottom:1px solid var(--line)}
html[lang=bn] .mmenu .ml a{font-family:var(--bnh);font-stretch:normal;letter-spacing:0}
.mmenu .ms{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.mmenu .ms a{font-size:.9rem;color:var(--gray);padding:.7rem .8rem;border:1px solid var(--line);border-radius:12px}
@media(max-width:1000px){.links{display:none}.burger{display:grid}nav .mk{display:none}}
@media(max-width:420px){nav .go{display:none}}

/* ---------- HOME HERO ---------- */
.hero{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.hero .bgimg{position:absolute;inset:-4%;background:url(../assets/cover-bg.webp) 70% center/cover no-repeat;opacity:.6;filter:saturate(1.6) hue-rotate(-6deg);will-change:transform}
.hero .bgimg::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 70% 45%,#1f6fd133 0%,transparent 45%),radial-gradient(ellipse at 60% 45%,transparent 0%,#030812 78%)}
.hero .shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#030812 0%,#030812ee 30%,#03081280 52%,transparent 72%),linear-gradient(#030812aa,transparent 18%),linear-gradient(transparent 70%,#030812)}
.fallback{position:absolute;right:8%;top:50%;width:min(32vw,400px);transform:translateY(-55%);opacity:.95}
.hero-in{position:relative;z-index:2;padding-top:7.5rem;padding-bottom:9rem}
.hero-in .txt{max-width:660px}
.hero h1{margin:1.4rem 0}
.hero .btns{margin-top:2rem}
.trust{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;margin-top:2.2rem;color:var(--mute);font-size:.86rem}
.trust li{display:flex;align-items:center;gap:.5rem}
.trust svg{width:16px;height:16px;flex:none;color:var(--blue)}
.logos{position:absolute;left:0;right:0;bottom:0;z-index:2;border-top:1px solid var(--line);background:#03081299;backdrop-filter:blur(6px)}
.logos .in{display:flex;align-items:center;gap:2rem;padding-top:1.1rem;padding-bottom:1.1rem}
.logos .lbl{flex:none;display:flex;gap:.6rem;align-items:center}
.marq{flex:1;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marq .tr{display:flex;gap:3.5rem;width:max-content;animation:marq 40s linear infinite}
.marq span{font-family:"Montserrat",sans-serif;font-weight:700;letter-spacing:.08em;color:#50627e;font-size:.95rem}
@keyframes marq{to{transform:translateX(-50%)}}
@media(max-width:860px){
  .hero{justify-content:flex-end}
  .hero .shade{background:linear-gradient(transparent 22%,#030812cc 48%,#030812 62%),linear-gradient(#030812aa,transparent 14%)}
  .hero-in{padding-top:46svh;padding-bottom:6.5rem}
  .fallback{left:50%;right:auto;top:26%;width:58vw;transform:translate(-50%,-50%)}
  .logos .lbl .mono:first-child{display:none}
  .logos .in{gap:1rem}
}

/* hero echo stage */
.hero .stage{position:absolute;z-index:1;right:max(1.5rem,calc((100vw - var(--max))/2));top:47%;width:min(40vw,580px);transform:translateY(-50%);cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent}
.hero .stage .cv{display:block;width:150%;margin:-15% 0 -15% -25%;aspect-ratio:720/585;touch-action:pan-y}
.hero .ping{position:absolute;left:56%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;pointer-events:none;z-index:3;box-shadow:0 0 14px #9ED8FF;animation:ping 1.8s cubic-bezier(.2,.7,.2,1) infinite;transition:opacity .5s}
@keyframes ping{0%{box-shadow:0 0 14px #9ED8FF,0 0 0 0 #4FB8F7cc}100%{box-shadow:0 0 14px #9ED8FF,0 0 0 28px #4FB8F700}}
.hero .stage.used .ping{opacity:0}
.hero-in{pointer-events:none}.hero-in .txt{pointer-events:auto}
@media(max-width:860px){.hero .stage{right:auto;left:50%;top:6rem;width:70vw;transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.hero .ping{animation:none}}

/* ---------- PAGE HERO (inner pages) ---------- */
.phero{padding-top:clamp(8rem,16vw,11rem);padding-bottom:clamp(2rem,5vw,3.5rem);position:relative;isolation:isolate}
main{overflow-x:clip}
.phero::after{content:"";position:absolute;right:-10%;top:-20%;width:60vw;height:60vw;max-width:800px;max-height:800px;background:radial-gradient(closest-side,#1f6fd140,transparent);pointer-events:none;z-index:-1}
.crumb{display:flex;gap:.5rem;align-items:center;font-size:.82rem;color:var(--mute);margin-bottom:1.6rem}
.crumb a:hover{color:var(--ink)}
.crumb span{opacity:.5}
.phero h1{max-width:18ch;margin-bottom:1.4rem}
html[lang=bn] .phero h1{max-width:20ch}
.phero .lead{margin-bottom:2rem}
.phero .meta{display:flex;flex-wrap:wrap;gap:2.5rem;margin-top:2.5rem;padding-top:1.6rem;border-top:1px solid var(--line)}
.phero .meta div{display:grid;gap:.3rem}
.phero .meta b{font-weight:600}

/* ---------- SERVICES BENTO ---------- */
.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}
.svc{display:flex;flex-direction:column;min-height:30rem}
.svc:nth-child(1),.svc:nth-child(4){grid-column:span 5}
.svc:nth-child(2),.svc:nth-child(3){grid-column:span 7}
.svc .vis{position:relative;height:15.5rem;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(70% 90% at 50% 0%,#164a86,transparent 70%)}
.svc .body{padding:1.6rem 1.7rem 1.7rem;display:flex;flex-direction:column;gap:.8rem;flex:1}
.svc .top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.svc h3{font-size:clamp(1.5rem,2.2vw,2rem)}
.svc .n{font-family:var(--mono);font-size:.72rem;color:var(--blue)}
.svc p{color:var(--mute);max-width:46ch}
.svc ul{display:flex;flex-wrap:wrap;gap:.2rem 0;margin-top:.2rem;font-size:.86rem;color:var(--gray)}
.svc li:not(:last-child)::after{content:"·";margin:0 .55rem;color:var(--mute)}
.svc .from{margin-top:auto;padding-top:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;border-top:1px solid var(--line);font-size:.88rem;color:var(--mute)}
.svc .from b{color:var(--ink);font-weight:600}
.ar{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;transition:background .3s,color .3s,transform .4s var(--ease)}
a:hover .ar{background:var(--ink);color:#04101F;transform:rotate(-45deg)}
@media(max-width:1000px){.svc:nth-child(n){grid-column:span 6}}
@media(max-width:700px){.svc:nth-child(n){grid-column:1/-1}.svc{min-height:0}.svc .vis{height:13rem}}
/* visuals */
.vmap{position:absolute;inset:0;width:100%;height:100%}
.vmap .gl{stroke:#1a3d66;stroke-width:1}
.vmap .cd{fill:#4a5f80}
.vmap .ring{fill:#4FB8F714;stroke:var(--blue);stroke-dasharray:4 5;transform-box:fill-box;transform-origin:center;animation:gpulse 2.6s ease-in-out infinite}
.vmap .you{fill:#fff;transition:transform 1.2s var(--ease);filter:drop-shadow(0 0 7px #4FB8F7)}
a:hover .vmap .you{transform:translate(150px,-58px)}
.vmap text{font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;fill:#8298b8}
.vmap .gt{fill:var(--blue)}
html[lang=bn] .vmap text{font-family:var(--bn);font-size:10px;letter-spacing:0}
@keyframes gpulse{50%{transform:scale(1.08)}}
.v3d{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:clamp(1.5rem,5vw,4rem);perspective:900px}
.cube{position:relative;width:110px;height:110px;transform-style:preserve-3d;animation:spin 14s linear infinite}
.cube i{position:absolute;inset:0;border-radius:14px;border:1px solid #ffffff45}
.cube i:nth-child(1){transform:translateZ(55px);background:linear-gradient(135deg,#C9EBFFdd,#2B7FF2bb)}
.cube i:nth-child(2){transform:rotateY(180deg) translateZ(55px);background:linear-gradient(135deg,#4FB8F7aa,#00306Add)}
.cube i:nth-child(3){transform:rotateY(90deg) translateZ(55px);background:linear-gradient(135deg,#2B7FF2cc,#0B2A66ee)}
.cube i:nth-child(4){transform:rotateY(-90deg) translateZ(55px);background:linear-gradient(135deg,#7fd0ffaa,#123f80dd)}
.cube i:nth-child(5){transform:rotateX(90deg) translateZ(55px);background:linear-gradient(135deg,#ffffffdd,#C4D8EFbb)}
.cube i:nth-child(6){transform:rotateX(-90deg) translateZ(55px);background:#0B2450}
@keyframes spin{from{transform:rotateX(-22deg) rotateY(0)}to{transform:rotateX(-22deg) rotateY(360deg)}}
a:hover .cube{animation-duration:5s}
.v3d .kit{display:grid;gap:.9rem}
.v3d .sw{display:flex;gap:.4rem}
.v3d .sw i{width:30px;height:30px;border-radius:50%;border:1px solid #ffffff30}
.v3d .aa{font-size:4.2rem;font-weight:800;font-stretch:125%;line-height:.9;letter-spacing:-.04em}
.v3d .aa small{display:block;font-family:var(--mono);font-size:.6rem;font-weight:400;letter-spacing:.1em;color:var(--mute);margin-top:.5rem;font-stretch:100%}
html[lang=bn] .v3d .aa small{font-family:var(--bn);letter-spacing:0;font-size:.72rem}
.vweb{position:absolute;inset:0}
.vweb .br{position:absolute;left:8%;right:22%;top:14%;bottom:-12%;border-radius:12px;border:1px solid #ffffff26;background:#06101f;overflow:hidden;box-shadow:0 30px 60px #0009;transition:transform .7s var(--ease)}
.vweb .br .bar{height:22px;display:flex;align-items:center;gap:5px;padding:0 10px;border-bottom:1px solid #ffffff10;background:#0A1730}
.vweb .br .bar i{width:7px;height:7px;border-radius:50%;background:#2A3d5c}
.vweb .br .bar u{margin-left:10px;height:10px;width:38%;border-radius:5px;background:#13264a}
.vweb .br .hd{margin:12px;height:46%;border-radius:8px;background:linear-gradient(120deg,#1E5DA8,#0C1D3a 75%);display:flex;flex-direction:column;justify-content:center;gap:8px;padding:0 18px}
.vweb .br .hd b{font-size:clamp(.9rem,1.5vw,1.25rem);font-weight:800;font-stretch:120%;letter-spacing:-.02em}
html[lang=bn] .vweb .br .hd b{font-family:var(--bnh);font-stretch:normal;letter-spacing:0}
.vweb .br .hd s{display:block;width:70px;height:16px;border-radius:8px;background:var(--blue);text-decoration:none}
.vweb .br .rows{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 12px}
.vweb .br .rows i{height:50px;border-radius:6px;background:#0F2140}
.vweb .ph{position:absolute;right:9%;top:24%;width:20%;max-width:120px;aspect-ratio:9/18;border-radius:18px;border:1px solid #ffffff2e;background:#06101f;box-shadow:0 30px 50px #000b;overflow:hidden;transition:transform .7s var(--ease)}
.vweb .ph::before{content:"";position:absolute;inset:9% 8% 45%;border-radius:10px;background:linear-gradient(160deg,#4FB8F7,#0C1D3a)}
.vweb .ph::after{content:"";position:absolute;left:10%;right:30%;bottom:30%;height:6px;border-radius:3px;background:#ffffff40;box-shadow:0 13px 0 #ffffff22,0 26px 0 #ffffff14}
a:hover .vweb .br{transform:translateY(-10px)}
a:hover .vweb .ph{transform:translateY(-22px) rotate(-3deg)}
.vgrow{position:absolute;inset:0;width:100%;height:100%}
.vgrow .gl{stroke:#1a3d66}
.vgrow .ln{fill:none;stroke:url(#lg);stroke-width:3;stroke-linecap:round;stroke-dasharray:600;stroke-dashoffset:600;transition:stroke-dashoffset 2.2s var(--ease)}
.in .vgrow .ln{stroke-dashoffset:0}
.vgrow .ar2{opacity:0;transition:opacity 1.2s .8s}
.in .vgrow .ar2{opacity:1}
.chipm{position:absolute;display:flex;align-items:center;gap:.5rem;padding:.45rem .75rem;border-radius:12px;background:#0B1A36e6;border:1px solid #ffffff22;font-size:.74rem;color:var(--gray);box-shadow:0 14px 30px #0008;transition:transform .7s var(--ease);white-space:nowrap}
.chipm b{color:var(--ink)}
.chipm i{width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 8px var(--blue)}
.chipm.c1{left:8%;top:14%}.chipm.c2{left:30%;top:36%}.chipm.c3{right:8%;bottom:16%}
a:hover .chipm.c1{transform:translateY(-6px)}a:hover .chipm.c2{transform:translateY(6px)}

/* ---------- MARKET READ ---------- */
.mr-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.2rem}
.chip{position:relative;overflow:hidden;font-size:.86rem;border:1px solid var(--line2);border-radius:999px;padding:.55rem 1rem;color:var(--gray);background:#ffffff06;transition:border-color .3s,color .3s,background .3s}
.chip:hover{border-color:#ffffff70;color:var(--ink)}
.chip[aria-pressed="true"]{border-color:var(--blue);color:#04101F;background:var(--blue)}
.chip .bar{position:absolute;left:0;bottom:0;height:2px;width:100%;background:#04101F;transform:scaleX(0);transform-origin:left;opacity:.5}
.chip[aria-pressed="true"].auto .bar{animation:chipbar var(--dur,9s) linear forwards}
@keyframes chipbar{to{transform:scaleX(1)}}
.chip.other{border-style:dashed}
.mr-panel{display:grid;grid-template-columns:1.05fr 1fr;min-height:30rem}
.mr-text{padding:clamp(1.4rem,3vw,2.6rem);display:grid;gap:1.25rem;align-content:start}
.mr-step{display:grid;grid-template-columns:2.2rem 1fr;gap:.2rem 1rem;opacity:.12;transform:translateY(8px);transition:opacity .6s,transform .7s var(--ease)}
.mr-step.on{opacity:1;transform:none}
.mr-step .n{font-family:var(--mono);font-size:.68rem;color:var(--blue);padding-top:.25rem}
.mr-step .k{font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);grid-column:2}
html[lang=bn] .mr-step .k{font-family:var(--bn);letter-spacing:.02em;font-size:.8rem;text-transform:none}
.mr-step .mv{grid-column:2;color:var(--gray);font-size:1rem}
.mr-step.gap .mv{color:var(--ink);font-weight:600}
.mr-step.ang .mv{font-size:clamp(1.3rem,2.2vw,1.9rem);font-weight:700;font-stretch:112%;line-height:1.15;letter-spacing:-.02em;color:var(--blue)}
html[lang=bn] .mr-step.ang .mv{font-family:var(--bnh);font-stretch:normal;letter-spacing:0;line-height:1.3}
.tags{display:flex;flex-wrap:wrap;gap:.35rem}
.tags span{font-size:.76rem;border:1px solid var(--line2);border-radius:999px;padding:.2rem .65rem;color:var(--gray)}
.tags.say span{border-style:dashed;color:var(--mute);text-decoration:line-through;text-decoration-color:#ffffff40}
.mr-map{position:relative;border-left:1px solid var(--line);background:radial-gradient(70% 70% at 75% 25%,#164a86,transparent 70%),#0B1A36}
.mr-map svg{position:absolute;inset:0;width:100%;height:100%}
.mr-map .gridl{stroke:#183660}
.mr-map .axl{font-family:var(--mono);font-size:9px;letter-spacing:.08em;fill:#6680a4}
html[lang=bn] .mr-map .axl{font-family:var(--bn);font-size:10px;letter-spacing:0}
.mr-map .cd{fill:#566d90;transition:opacity .5s;opacity:0}
.mr-map .cl{font-family:var(--bn),var(--f);font-size:10px;fill:#8ea3c2;opacity:0;transition:opacity .5s}
.mr-map .on{opacity:1}
.mr-map .gring{fill:#4FB8F718;stroke:var(--blue);stroke-dasharray:5 6;opacity:0;transition:opacity .6s;transform-box:fill-box;transform-origin:center}
.mr-map .gring.on{opacity:1;animation:gpulse 2.4s ease-in-out infinite}
.mr-map .glbl{font-family:var(--mono);font-size:9px;letter-spacing:.12em;fill:var(--blue);opacity:0;transition:opacity .5s}
.mr-map .glbl.on{opacity:1}
.mr-map .you{fill:var(--ink);transition:transform 1.2s var(--ease),opacity .4s;filter:drop-shadow(0 0 7px #4FB8F7)}
.mr-map .youl{font-family:var(--mono);font-size:9px;letter-spacing:.12em;fill:var(--ink);transition:transform 1.2s var(--ease),opacity .4s}
html[lang=bn] .mr-map .glbl,html[lang=bn] .mr-map .youl{font-family:var(--bn);font-size:11px;letter-spacing:0}
.mr-map .note{position:absolute;left:1rem;bottom:.9rem}
.mr-other{display:none;padding:clamp(1.6rem,4vw,3.4rem);min-height:30rem;align-content:center;gap:1.2rem;background:radial-gradient(60% 80% at 80% 20%,#164a86,transparent 70%)}
.mr.is-other .mr-panel{display:none}
.mr.is-other .mr-other{display:grid}
.mr-other h3{font-size:clamp(1.8rem,3.4vw,3rem)}
.mr-other p{color:var(--gray);max-width:46ch}
.mr-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--line);padding:1.1rem clamp(1.4rem,3vw,2.6rem)}
@media(max-width:860px){.mr-panel{grid-template-columns:1fr}.mr-map{height:280px;border-left:0;border-bottom:1px solid var(--line);order:-1}.mr-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.4rem;margin-right:calc(var(--pad)*-1);scrollbar-width:none}.chip{flex:none}}

/* ---------- STEPS ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.step{padding:1.6rem 1.5rem 1.8rem;min-height:15rem;display:flex;flex-direction:column}
.step .sn{font-size:.95rem;font-weight:600;color:var(--blue);font-variant-numeric:tabular-nums}
.track-meta{color:var(--gray);font-size:.95rem;margin-bottom:1.2rem}
.track-meta b{color:var(--ink)}
.track[hidden]{display:none}
.step h3{font-size:1.7rem;margin-top:4.5rem}
.step p{color:var(--mute);font-size:.92rem;margin-top:.5rem}

@media(max-width:1000px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.steps{grid-template-columns:1fr}.step{min-height:0}.step h3{margin-top:2.4rem}}

/* ---------- CASES ---------- */
.cases{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.portfolio-cover{background:#0b1422;overflow:hidden}
.portfolio-cover img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;transition:transform .6s}
.portfolio-card:hover .portfolio-cover img{transform:scale(1.025)}
.portfolio-card .info p{color:var(--gray);line-height:1.65}
.portfolio-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;align-items:start}
.portfolio-image{margin:0;background:#0b1422;border:1px solid var(--line);border-radius:1rem;overflow:hidden}
.portfolio-image:first-child{grid-column:1/-1}
.portfolio-image a{display:block}
.portfolio-image img{display:block;width:100%;height:auto}
.portfolio-source{margin-top:2rem;color:var(--mute)}
.campaign-cover{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:1rem}
@media(max-width:640px){.portfolio-gallery{grid-template-columns:1fr}.portfolio-card .info{padding:1.4rem}}
.case{display:grid;grid-template-rows:17rem 1fr}
.cases .case:first-child{grid-column:1/-1;grid-template-rows:none;grid-template-columns:1fr 1.2fr;min-height:30rem}
.cases .case:not(:first-child) .media{order:-1;border-bottom:1px solid var(--line)}
.cases .case:first-child .media{border-left:1px solid var(--line)}
.case:hover{border-color:#4FB8F766}
.case .info{padding:clamp(1.4rem,2.6vw,2.4rem);display:flex;flex-direction:column;justify-content:space-between;gap:1.4rem}
.case .ind{display:flex;justify-content:space-between}
.case h3{font-size:clamp(1.5rem,2.4vw,2.3rem);max-width:20ch}
.cases .case:not(:first-child) h3{font-size:clamp(1.3rem,1.8vw,1.7rem)}
.case .q{color:var(--mute);font-size:.8rem;margin-top:.7rem}
.case dl{display:grid;grid-template-columns:6.5rem 1fr;gap:.6rem 1rem;font-size:.9rem;border-top:1px solid var(--line);padding-top:1.2rem}
.case dt{font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);padding-top:.2rem}
html[lang=bn] .case dt{font-family:var(--bn);font-size:.8rem;letter-spacing:0;text-transform:none}
.case dd{color:var(--gray)}
.chips{display:flex;flex-wrap:wrap;gap:.35rem}
.chips span{font-size:.74rem;border:1px solid var(--line2);border-radius:999px;padding:.2rem .6rem;color:var(--gray)}
.case dd.out{color:var(--blue);font-family:var(--mono);font-size:.72rem}
html[lang=bn] .case dd.out{font-family:var(--bn);font-size:.85rem}
.case .more{font-size:.88rem;font-weight:600;display:inline-flex;align-items:center;gap:.8rem}
.media{position:relative;background:radial-gradient(80% 80% at 70% 30%,var(--c1),transparent 70%),#0B1A36;overflow:hidden}
.desk{position:absolute;left:9%;top:13%;width:78%;aspect-ratio:16/10;border-radius:10px;border:1px solid #ffffff22;background:#050d1c;overflow:hidden;box-shadow:0 30px 60px #0008;transition:transform .7s var(--ease)}
a:hover .desk{transform:translateY(-8px)}
.cases .case:not(:first-child) .desk{width:68%;left:8%;top:18%}
.desk .bar{height:18px;border-bottom:1px solid #ffffff12;background:#0a1630}
.desk .dh{height:46%;display:grid;place-items:center;text-align:center;padding:0 1rem;background:linear-gradient(120deg,var(--c1),transparent 70%),#0b1a36}
.desk .dh b{font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:clamp(.75rem,1.2vw,1.15rem);color:#ffffffe0;max-width:80%;line-height:1.1}
html[lang=bn] .desk .dh b{font-family:var(--bnh);text-transform:none;font-stretch:normal}
.desk .rows{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:8px}
.desk .rows i{height:46px;border-radius:3px;background:#0f2140}
.media .phone{position:absolute;right:6%;bottom:-14%;width:16%;aspect-ratio:9/19;border-radius:18px;border:1px solid #ffffff28;background:#050d1c;overflow:hidden;box-shadow:0 30px 60px #000a}
.media .phone::before{content:"";position:absolute;inset:8% 8% 40%;border-radius:10px;background:linear-gradient(160deg,var(--c1),#0b1a36)}
.media .phone::after{content:"";position:absolute;left:8%;right:30%;bottom:28%;height:6px;border-radius:3px;background:#ffffff40;box-shadow:0 14px 0 #ffffff22}
.ad{position:absolute;left:5%;bottom:9%;background:#0b1a36ee;border:1px solid #ffffff22;border-radius:10px;padding:.6rem .8rem;font-family:var(--mono);font-size:.6rem;letter-spacing:.06em;color:var(--gray);text-transform:uppercase;display:grid;gap:.25rem;box-shadow:0 20px 40px #0009}
html[lang=bn] .ad{font-family:var(--bn);letter-spacing:0;font-size:.72rem}
.ad b{color:var(--blue);font-weight:500}
.media .phl{position:absolute;left:1rem;top:1rem;font-family:var(--mono);font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff90;border:1px dashed #ffffff50;padding:.25rem .5rem;border-radius:4px;z-index:2}
@media(max-width:860px){.cases{grid-template-columns:1fr}.cases .case:first-child{grid-template-columns:1fr;grid-template-rows:auto}.cases .case:first-child .media{order:-1;height:16rem;border-left:0;border-bottom:1px solid var(--line)}.case{grid-template-rows:16rem auto}}

/* ---------- PROMISES + VOICES ---------- */
.ic{display:block;color:var(--blue);margin-bottom:1.6rem}
.ic svg{width:26px;height:26px}
.prom h3{font-size:1.2rem;letter-spacing:-.015em}
.prom p{color:var(--mute);font-size:.9rem;margin-top:.4rem}
.vq{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:1rem;margin-top:1rem}
.vq.n2{grid-template-columns:1.2fr 1fr}.vq.n4{grid-template-columns:1fr 1fr}.vq.n4 .v:first-child blockquote{font-size:1.15rem}.vq.n1{grid-template-columns:1fr}
.v{padding:clamp(1.3rem,2.4vw,2rem);display:flex;flex-direction:column;justify-content:space-between;gap:2rem}
.v:first-child{background:radial-gradient(90% 90% at 0% 0%,#174f8f,transparent 70%),linear-gradient(180deg,#0F2246,#0A1630)}
.v blockquote{font-size:1rem;color:var(--gray);line-height:1.6}
.v:first-child blockquote{font-size:clamp(1.15rem,1.7vw,1.45rem);color:var(--ink);line-height:1.4;font-weight:500}
.v .stars{color:var(--blue);letter-spacing:.15em;font-size:.85rem;margin-bottom:1rem;display:block}
.who{display:flex;align-items:center;gap:.8rem}
.who i{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#1E5DA8,#0b1a36);border:1px solid #ffffff22;flex:none}
.who b{display:block;font-size:.92rem}
.who span{color:var(--mute);font-size:.8rem}
@media(max-width:1000px){.prom{grid-template-columns:1fr 1fr}.vq{grid-template-columns:1fr}}
@media(max-width:560px){.prom{grid-template-columns:1fr}.prom .ic{margin-bottom:1.2rem}}

/* ---------- PRICING ---------- */
.tabs{display:flex;flex-wrap:wrap;gap:0 2rem;border-bottom:1px solid var(--line);margin-bottom:1.6rem}
.tabs button{padding:.8rem 0;margin-bottom:-1px;border-bottom:2px solid transparent;font-size:1rem;font-weight:600;color:var(--mute);transition:color .3s,border-color .3s}
.tabs button:hover{color:var(--ink)}
.tabs button[aria-selected="true"]{color:var(--ink);border-color:var(--blue)}
.pk-top .tabs{flex:1}
.pk-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch}
.plans.p4{grid-template-columns:repeat(4,1fr)}
.plans[hidden]{display:none}
.plan{padding:1.8rem 1.7rem;display:flex;flex-direction:column}
.plan:hover{border-color:#ffffff40}
.plan .nm{display:flex;justify-content:space-between;align-items:center;gap:.6rem;min-height:1.8rem}
.plan h3{font-size:1.25rem;letter-spacing:-.015em;font-stretch:105%}
.plan .badge{font-size:.78rem;font-weight:600;color:var(--blue);white-space:nowrap}
.plan .for{color:var(--mute);font-size:.88rem;margin-top:.45rem;min-height:2.8em}
.plan .pr{margin:1.6rem 0 1.4rem;padding-bottom:1.4rem;border-bottom:1px solid var(--line)}
.plan .pr small{display:block;font-size:.78rem;color:var(--mute)}
.plan .pr b{font-size:clamp(2.2rem,3.4vw,3rem);font-weight:700;font-stretch:110%;letter-spacing:-.035em;line-height:1.05}
.plan .pr em{font-style:normal;color:var(--mute);font-size:.95rem;margin-left:.2rem}
.plan .pr .sp{display:block;font-size:.74rem;color:var(--mute);margin-top:.3rem}
.plan ul{display:grid;gap:.7rem;margin-bottom:1.8rem;font-size:.9rem;color:var(--gray)}
.plan li,.ticks li{display:flex;gap:.6rem;align-items:flex-start}
.plan li::before,.ticks li::before{content:"";flex:none;width:16px;height:16px;margin-top:.22rem;border-radius:50%;background:#4FB8F726 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%234FB8F7' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/100% no-repeat}
.ticks{display:grid;gap:.7rem;color:var(--gray)}
.crosses li{display:flex;gap:.6rem;align-items:flex-start;color:var(--mute)}
.crosses li::before{content:"–";flex:none;width:16px;text-align:center;color:var(--mute)}
.plan .pill{margin-top:auto;width:100%}
.plan.pop{background:#0e2a5a;border-color:var(--blue)}
.plan:not(.pop) .pill{background:#ffffff0e;color:var(--ink);border:1px solid var(--line2)}
.plan:not(.pop) .pill:hover{background:var(--ink);color:#04101F}
.custom{margin-top:1rem;padding:clamp(1.6rem,3.4vw,2.8rem);display:grid;grid-template-columns:1.4fr auto;gap:1.5rem 3rem;align-items:center;background:linear-gradient(100deg,#0f3570 0%,#0A1630 70%)}
.custom::after{content:"";position:absolute;inset:0;background:url(../assets/cover-bg-sm.webp) right center/cover;opacity:.35;mix-blend-mode:screen;filter:saturate(1.7);pointer-events:none;-webkit-mask:linear-gradient(90deg,transparent 30%,#000);mask:linear-gradient(90deg,transparent 30%,#000)}
.custom>*{position:relative;z-index:1}
.custom h3{font-size:clamp(1.5rem,2.6vw,2.3rem);margin:.8rem 0 .5rem}
.custom p{color:var(--gray);max-width:52ch}
.pk-note{margin-top:1.2rem}
@media(max-width:1000px){.plans,.plans.p4{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.plans,.plans.p4{grid-template-columns:1fr}.custom{grid-template-columns:1fr}.plan .for{min-height:0}}

/* ---------- SERVICES PAGE / DETAIL ---------- */
.srow{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:center;padding:clamp(2.5rem,5vw,4rem) 0;border-top:1px solid var(--line)}
.srow:nth-child(even) .svis{order:-1}
.srow .svis{position:relative;height:clamp(16rem,30vw,24rem)}
.srow .svis .card{position:absolute;inset:0}
.srow .n{font-family:var(--mono);color:var(--blue);font-size:.75rem}
.srow h2{font-size:clamp(1.9rem,3.4vw,3rem);margin:.6rem 0 1rem}
.srow p{color:var(--gray);max-width:48ch}
.srow .ticks{grid-template-columns:1fr 1fr;margin:1.6rem 0;font-size:.92rem}
.srow .row-f{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.srow .row-f small{color:var(--mute);font-size:.88rem}
.srow .row-f small b{color:var(--ink)}
@media(max-width:860px){.srow{grid-template-columns:1fr}.srow:nth-child(even) .svis{order:0}.srow .ticks{grid-template-columns:1fr}}
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.pains>div{padding:1.6rem}
.pains .q{font-size:1.15rem;font-weight:600;line-height:1.35;color:var(--ink)}
html[lang=bn] .pains .q{font-family:var(--bnh);font-weight:600;font-size:1.25rem}
.pains .q::before{content:"\201C";display:block;font-family:Georgia,serif;font-size:2.4rem;line-height:.7;color:var(--blue);margin-bottom:.4rem}
.pains p{color:var(--mute);font-size:.9rem;margin-top:.8rem}
.dlv{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.dlv>div{padding:1.5rem}
.dlv .ic{margin-bottom:1.6rem}
.dlv h3{font-size:1.15rem;letter-spacing:-.015em}
.dlv p{color:var(--mute);font-size:.9rem;margin-top:.4rem}
@media(max-width:1000px){.pains,.dlv{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.pains,.dlv{grid-template-columns:1fr}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.split>div{padding:clamp(1.5rem,3vw,2.4rem)}
.split h3{font-size:1.3rem;margin-bottom:1.2rem}
@media(max-width:760px){.split{grid-template-columns:1fr}}
.stripe{display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center;padding:clamp(1.5rem,3vw,2.4rem)}
.stripe .pr b{font-size:clamp(2rem,3.4vw,2.8rem);font-weight:700;font-stretch:110%;letter-spacing:-.03em}
.stripe .pr small{display:block;color:var(--mute);font-size:.8rem}
.stripe p{color:var(--gray)}
@media(max-width:760px){.stripe{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(1.5rem,4vw,4rem)}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.3rem 0;font-size:1.08rem;font-weight:600;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:none;width:30px;height:30px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;transition:transform .4s var(--ease),background .3s}
.faq summary i::before{content:"+";font-style:normal;font-size:1.1rem;line-height:1}
.faq details[open] summary i{transform:rotate(45deg);background:#ffffff12}
.faq details p{color:var(--gray);padding:0 3rem 1.4rem 0;max-width:62ch}
@media(max-width:860px){.faq{grid-template-columns:1fr}}

/* ---------- CASE DETAIL ---------- */
.cmedia{height:clamp(18rem,40vw,34rem);border-radius:28px;border:1px solid var(--line);margin-top:2rem}
.cbody{display:grid;grid-template-columns:16rem 1fr;gap:clamp(1.5rem,5vw,5rem)}
.cbody aside{position:sticky;top:6rem;align-self:start;display:grid;gap:1.4rem}
.cbody aside div{display:grid;gap:.4rem}
.cbody article>section{padding:2rem 0;border-top:1px solid var(--line)}
.cbody article>section:first-child{border-top:0;padding-top:0}
.cbody article h2{font-size:clamp(1.5rem,2.6vw,2.2rem);margin:.6rem 0 1rem}
.cbody article p{color:var(--gray);max-width:62ch;font-size:1.05rem}
.cbody .ticks{margin-top:1rem}
.result{padding:1.8rem;margin-top:1rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.result b{display:block;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:700;font-stretch:115%;letter-spacing:-.03em}
.result span{color:var(--mute);font-size:.86rem}
@media(max-width:860px){.cbody{grid-template-columns:1fr}.cbody aside{position:static;grid-template-columns:1fr 1fr}.result{grid-template-columns:1fr}}
.next{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:clamp(1.5rem,3vw,2.4rem)}
.next h3{font-size:clamp(1.3rem,2.4vw,2rem);margin-top:.4rem}

/* ---------- ABOUT ---------- */
.belief{font-size:clamp(1.8rem,3.8vw,3.4rem);font-weight:600;font-stretch:108%;letter-spacing:-.025em;line-height:1.15;max-width:24ch}
html[lang=bn] .belief{font-family:var(--bnh);font-stretch:normal;letter-spacing:0;line-height:1.3}
.vals{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.vals>div{padding:1.6rem}
.vals h3{font-size:1.25rem;margin-bottom:.5rem}
.vals p{color:var(--mute);font-size:.92rem}
@media(max-width:900px){.vals{grid-template-columns:1fr}}

/* ---------- LEGAL ---------- */
.legal{display:grid;grid-template-columns:15rem 1fr;gap:clamp(1.5rem,5vw,5rem)}
.legal nav.toc{position:sticky;top:6rem;align-self:start;display:grid;gap:.5rem;font-size:.86rem;color:var(--mute)}
.legal nav.toc a:hover{color:var(--ink)}
.legal .doc h2{font-size:1.45rem;margin:2.4rem 0 .8rem;scroll-margin-top:6rem}
.legal .doc h2:first-child{margin-top:0}
.legal .doc p,.legal .doc li{color:var(--gray);max-width:70ch;margin-bottom:.8rem}
.legal .doc ul{list-style:disc;padding-left:1.2rem}
.draft{padding:1rem 1.2rem;border-radius:14px;border:1px dashed #4FB8F770;background:#4FB8F710;color:var(--gray);font-size:.9rem;margin-bottom:2rem}
@media(max-width:860px){.legal{grid-template-columns:1fr}.legal nav.toc{position:static}}

/* ---------- 404 ---------- */
.nf{min-height:100svh;display:grid;place-items:center;text-align:center;padding:8rem var(--pad) 4rem}
.nf .big4{font-size:clamp(7rem,22vw,16rem);font-weight:800;font-stretch:125%;letter-spacing:-.05em;line-height:.9;color:var(--blue)}
.nf p{color:var(--gray);margin:1rem auto 2rem;max-width:40ch}
.nf .btns{justify-content:center}

/* ---------- CTA ---------- */
.cta{margin-top:clamp(5rem,10vw,8.5rem)}
.cta .box{position:relative;border-radius:32px;overflow:hidden;padding:clamp(3rem,8vw,6.5rem) var(--pad);text-align:center;background:radial-gradient(60% 80% at 50% 0%,#2468c4 0%,#0d2f66 50%,#06122a 100%);border:1px solid #4FB8F750}
.cta .box::before{content:"";position:absolute;inset:0;background:url(../assets/cover-bg.webp) center/cover;opacity:.4;mix-blend-mode:screen;filter:saturate(1.7)}
.cta .box>*{position:relative}
.cta img.m{width:64px;margin:0 auto 1.6rem;filter:drop-shadow(0 10px 30px #4FB8F7aa)}
.cta h2{font-size:clamp(2.4rem,6vw,5.2rem)}
.cta p{color:var(--gray);margin:1.2rem auto 2rem;max-width:46ch}
.cta .btns{justify-content:center}
.cta .direct-l{margin-top:1.6rem;color:var(--gray)}


/* ---------- LOGO WORDMARKS (marquee) ---------- */
.marq span{color:#6f84a6;font-size:1.05rem;letter-spacing:0;white-space:nowrap}
.marq .lg0{font-family:"Montserrat",sans-serif;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.95rem}
.marq .lg1{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;font-size:1.2rem}
.marq .lg2{font-family:var(--f);font-weight:800;font-stretch:125%;letter-spacing:-.03em}
.marq .lg3{font-family:var(--mono);font-weight:500;font-size:.9rem;letter-spacing:.12em;text-transform:lowercase}
html[lang=bn] .marq span{font-family:var(--bnh)}
html[lang=bn] .marq .lg1{font-family:var(--bn);font-style:normal;font-weight:500}

/* ---------- TEAM ---------- */
.crew-stats{display:flex;flex-wrap:wrap;gap:1rem 3.5rem;margin-bottom:2.2rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}
.crew-stats div{display:flex;align-items:baseline;gap:.7rem}
.crew-stats b{font-size:clamp(2.4rem,4vw,3.4rem);font-weight:700;font-stretch:115%;letter-spacing:-.04em;color:var(--blue);line-height:1}
.crew-stats span{color:var(--gray);max-width:14ch;line-height:1.3}
.crew{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.mate{position:relative;border-radius:18px;background:var(--surface);border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;transition:border-color .4s}
.mate:hover{border-color:#ffffff40}
.portrait{position:relative;aspect-ratio:5/4;overflow:hidden;background:#071330;isolation:isolate}
.portrait .o1,.portrait .o2{position:absolute;border-radius:50%;filter:blur(38px);transition:transform 1.2s var(--ease)}
.portrait .o1{width:75%;height:85%;left:-10%;bottom:-30%;background:var(--a);opacity:.9}
.portrait .o2{width:60%;height:70%;right:-15%;top:-20%;background:var(--b);opacity:.7}
.mate:hover .o1{transform:translate(18%,-12%) scale(1.1)}
.mate:hover .o2{transform:translate(-20%,15%)}
.portrait::after{content:"";position:absolute;inset:0;z-index:1;opacity:.35;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.portrait .ini{position:absolute;left:1.2rem;bottom:.6rem;z-index:2;font-size:clamp(4.5rem,8vw,7rem);font-weight:800;font-stretch:125%;letter-spacing:-.05em;line-height:.85;color:#ffffffe6;mix-blend-mode:overlay}
.portrait .yrs{position:absolute;right:1rem;top:1rem;z-index:2;font-size:.8rem;font-weight:600;color:#fff;background:#03081266;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:.3rem .65rem;border-radius:8px}
.mate .mb{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;gap:.35rem;flex:1}
.mate h3{font-size:1.3rem;letter-spacing:-.015em}
.mate .role{color:var(--blue);font-size:.9rem;font-weight:500}
.mate .obs{color:var(--gray);font-size:.93rem;margin-top:.6rem}
.mate .ask{color:var(--mute);font-size:.85rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--line)}
.mate .ask b{color:var(--ink);font-weight:500;display:block;margin-bottom:.15rem}
.mate.join{justify-content:center;padding:2rem;background:#071330;border-style:dashed;gap:.6rem}
.mate.join .plus{font-size:3rem;line-height:1;color:var(--blue);font-weight:300}
.mate.join h3{font-size:1.5rem}
.mate.join p{color:var(--gray)}
.mate.join .more{display:inline-flex;align-items:center;gap:.7rem;font-weight:600;margin-top:.8rem}
@media(max-width:1000px){.crew{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.crew{grid-template-columns:1fr}}

/* ---------- CONTACT ---------- */
.status{display:inline-flex;align-items:center;gap:.6rem;font-size:.92rem;color:var(--gray)}
.status i{width:9px;height:9px;border-radius:50%;background:#7a8aa3}
.status.open i{background:#3ddc97;box-shadow:0 0 0 4px #3ddc9726}
.status.static i{background:var(--blue);box-shadow:0 0 0 4px #4FB8F726}
.cwrap{display:grid;grid-template-columns:1.5fr 1fr;gap:1rem;align-items:start}
.picker{padding:clamp(1.5rem,3.4vw,2.6rem);display:flex;flex-direction:column;min-height:34rem}
.pk-prog{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}
.pk-count{font-size:.9rem;color:var(--mute);white-space:nowrap}
.pk-count b{color:var(--ink)}
.pk-bar{flex:1;height:4px;border-radius:4px;background:#ffffff14;overflow:hidden}
.pk-bar i{display:block;height:100%;width:33.3%;background:var(--blue);border-radius:4px;transition:width .6s var(--ease)}
.pk-step{border:0;display:none;flex:1}
.pk-step.on{display:block;animation:pkIn .5s var(--ease) both}
@keyframes pkIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
.pk-step legend{display:grid;gap:.3rem;margin-bottom:1.5rem;padding:0}
.pk-h{font-size:clamp(1.5rem,2.4vw,2.1rem);font-weight:700;font-stretch:112%;letter-spacing:-.03em;line-height:1.1}
html[lang=bn] .pk-h{font-family:var(--bnh);font-stretch:normal;letter-spacing:0;line-height:1.3}
.pk-sub{color:var(--mute);font-size:.95rem}
.pc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:.75rem}
.pc{position:relative;display:block;cursor:pointer}
.pc input{position:absolute;opacity:0;width:1px;height:1px}
.pc-in{position:relative;display:flex;flex-direction:column;gap:.3rem;height:100%;min-height:9.5rem;padding:1.2rem;border-radius:14px;border:1px solid var(--line2);background:#050e20;transition:border-color .25s,background .25s,transform .25s}
.pc.sm .pc-in{min-height:6rem}
.pc-in .ic{margin-bottom:auto}
.pc-in .ic svg{width:28px;height:28px}
.pc-in b{font-size:1.02rem;margin-top:1rem}
.pc.sm .pc-in b{margin-top:0;font-size:1.1rem}
.pc-in small{color:var(--mute);font-size:.84rem;line-height:1.35}
.pc-in .tick{position:absolute;right:.9rem;top:.9rem;width:22px;height:22px;border-radius:50%;border:1.5px solid #ffffff40;transition:background .25s,border-color .25s}
.pc:hover .pc-in{border-color:#ffffff55;transform:translateY(-2px)}
.pc input:checked+.pc-in{border-color:var(--blue);background:#0e2a5a}
.pc input:checked+.pc-in .tick{background:var(--blue) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M4.2 8.3l2.4 2.4 5-5' fill='none' stroke='%2304101F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/14px no-repeat;border-color:var(--blue)}
.pc input:focus-visible+.pc-in{outline:2px solid var(--blue);outline-offset:3px}
.pk-lbl{margin:1.6rem 0 .7rem;font-size:.92rem;color:var(--gray);font-weight:500}
.segs{display:flex;flex-wrap:wrap;gap:.5rem}
.seg{position:relative}
.seg input{position:absolute;opacity:0;width:1px;height:1px}
.seg span{display:inline-block;padding:.6rem 1rem;border-radius:10px;border:1px solid var(--line2);background:#050e20;color:var(--gray);font-size:.92rem;cursor:pointer;transition:background .25s,border-color .25s,color .25s}
.seg input:checked+span{background:var(--blue);border-color:var(--blue);color:#04101F;font-weight:600}
.seg input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.pk-fields{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1rem}
.pk-fields .full{grid-column:1/-1}
.fld{display:grid;gap:.5rem}
.fld>span{font-size:.88rem;color:var(--gray);font-weight:500}
.fld input,.fld textarea{width:100%;background:#050e20;border:1px solid var(--line2);border-radius:12px;padding:.9rem 1rem;color:var(--ink);font:inherit;font-size:.98rem;transition:border-color .3s,box-shadow .3s}
.fld textarea{resize:vertical}
.fld textarea::placeholder{color:#ffffff40}
.fld input:focus,.fld textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px #4FB8F722}
.fld input:user-invalid{border-color:#ff7a7a}
.pk-nav{display:flex;align-items:center;gap:1rem;margin-top:2rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.pk-back{color:var(--gray);font-size:.92rem}
.pk-back:hover{color:var(--ink)}
.pk-hint{margin-left:auto;font-size:.85rem;color:var(--mute)}
.pk-nav .pill:disabled{opacity:.35;cursor:not-allowed}
.pk-nav [hidden]{display:none!important}
#pk-next,#pk-send{margin-left:auto}
.pk-hint+#pk-next{margin-left:0}
.pk-done{flex:1;display:grid;place-content:center;justify-items:center;text-align:center;gap:.6rem;padding:2rem 0;animation:pkIn .5s var(--ease) both}
.pk-done[hidden]{display:none}
.pk-done .ic svg{width:40px;height:40px}
.pk-done b{font-size:1.5rem}
.pk-done p{color:var(--gray);max-width:36ch;margin-bottom:.8rem}
.picker.sent .pk-prog,.picker.sent .pk-step,.picker.sent .pk-nav{display:none}
@media(max-width:640px){.pc-grid{grid-template-columns:1fr 1fr}.pc-in{min-height:8rem;padding:1rem}.pk-fields{grid-template-columns:1fr}.pk-hint{display:none}.pk-nav .pill{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.pk-step.on,.pk-done{animation:none}}
.channels .flbl{margin-bottom:.9rem}
.chgrid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.ch{display:flex;flex-direction:column;gap:.25rem;padding:1.2rem;min-height:9.5rem}
.ch .ic{margin-bottom:auto}
.ch b{font-size:1rem;margin-top:1.4rem;word-break:break-word}
.ch span:not(.ic):not(.ar){color:var(--mute);font-size:.82rem;line-height:1.4}
.ch .ar{position:absolute;right:1rem;top:1rem;width:30px;height:30px}
.ch.main{background:#0e2a5a;border-color:var(--blue)}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;position:relative;padding-top:2rem}
.timeline::before{content:"";position:absolute;left:0;right:0;top:.55rem;height:1px;background:linear-gradient(90deg,var(--blue),#ffffff1a)}
.timeline li{position:relative;display:grid;gap:.4rem}
.timeline li::before{content:"";position:absolute;left:0;top:-1.9rem;width:11px;height:11px;border-radius:50%;background:var(--bg);border:2px solid var(--blue)}
.timeline .sn{color:var(--blue);font-weight:600;font-size:.9rem}
.timeline b{font-size:1.15rem}
.timeline span:not(.sn){color:var(--mute);font-size:.92rem}
@media(max-width:1000px){.cwrap{grid-template-columns:1fr}.channels{order:-1}}
@media(max-width:760px){.timeline{grid-template-columns:1fr 1fr;row-gap:2.6rem}}
@media(max-width:480px){.ch{min-height:7.5rem;padding:1rem}.ch b{font-size:.9rem;margin-top:1rem}.ch .ar{display:none}.timeline{grid-template-columns:1fr}}

/* ---------- FOOTER (with a brand-blue glow rising from the bottom) ---------- */
footer.ft{margin-top:clamp(5rem,9vw,7rem);position:relative;overflow:hidden;border-top:1px solid var(--line);isolation:isolate;
  background:radial-gradient(55% 75% at 78% 118%,#9ED8FF 0%,#4FB8F7 14%,#2B7FF2 32%,#0b2f6e 55%,transparent 76%),radial-gradient(55% 70% at 18% 115%,#2B7FF2b0 0%,#1f5fc050 40%,transparent 74%),var(--bg)}
.ft .top{display:grid;grid-template-columns:1.3fr 2fr;gap:clamp(2rem,5vw,5rem);padding-top:clamp(3rem,6vw,5rem);padding-bottom:3rem}
.ft .say h3{font-size:clamp(1.8rem,3.4vw,3rem);margin-bottom:1rem}
.ft .say p{color:var(--gray);max-width:38ch;margin-bottom:1.6rem}
.ft .contact-l{display:grid;gap:.5rem;margin-top:1.8rem;font-size:.95rem}
.ft .contact-l a{display:flex;gap:.7rem;align-items:center;color:var(--gray);transition:color .3s}
.ft .contact-l a:hover{color:var(--ink)}
.ft .contact-l svg{width:16px;height:16px;color:var(--blue);flex:none}
.ft .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;font-size:.9rem}
.ft .cols div{display:grid;gap:.6rem;align-content:start}
.ft .cols .mono{margin-bottom:.4rem;color:#6a84a8}
.ft .cols a{color:var(--gray);transition:color .3s,transform .3s;width:fit-content}
.ft .cols a:hover{color:var(--ink);transform:translateX(3px)}
.ft .cols .social{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.4rem}
.ft .social a{width:40px;height:40px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;color:var(--gray);transition:background .3s,color .3s,border-color .3s}
.ft .social a:hover{background:var(--ink);color:#04101F;border-color:var(--ink);transform:none}
.ft .social svg{width:16px;height:16px}
.ft .word{font-family:"Montserrat",sans-serif;font-weight:700;font-size:clamp(4rem,17vw,16rem);letter-spacing:-.05em;line-height:.8;text-align:center;white-space:nowrap;user-select:none;margin-top:1rem;margin-bottom:-.06em;
  background:linear-gradient(180deg,#ffffff08 0%,#ffffff24 45%,#ffffff9e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:blur(1px)}
.ft .bot{position:relative;z-index:1;border-top:1px solid #ffffff1f;background:#03081233;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.82rem;color:#dbe9f7}
.ft .bot .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:1.2rem;padding-bottom:1.4rem}
.ft .bot .lg{display:flex;gap:1.2rem;flex-wrap:wrap}
.ft .bot a:hover{color:#fff}
.mkt{display:inline-flex;gap:.9rem}
.mkt a,.mkt b{font-size:.82rem}
.mkt b{color:#fff;font-weight:600;border-bottom:1.5px solid #fff}
.totop{display:inline-flex;align-items:center;gap:.5rem}
@media(max-width:1000px){.ft .top{grid-template-columns:1fr}.ft .cols{grid-template-columns:1fr 1fr}}

.rv{opacity:0;transform:translateY(30px);transition:opacity .9s,transform 1.1s var(--ease)}
.rv.in{opacity:1;transform:none}
.bento .rv:nth-child(2),.steps .rv:nth-child(2),.plans .rv:nth-child(2),.prom .rv:nth-child(2),.dlv .rv:nth-child(2),.pains .rv:nth-child(2){transition-delay:.08s}
.bento .rv:nth-child(3),.steps .rv:nth-child(3),.plans .rv:nth-child(3),.prom .rv:nth-child(3),.dlv .rv:nth-child(3),.pains .rv:nth-child(3){transition-delay:.16s}
.bento .rv:nth-child(4),.steps .rv:nth-child(4),.plans .rv:nth-child(4),.prom .rv:nth-child(4),.dlv .rv:nth-child(4){transition-delay:.24s}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.rv{opacity:1;transform:none}.mr-step{opacity:1;transform:none}.vgrow .ln{stroke-dashoffset:0}.vgrow .ar2{opacity:1}}

/* Portfolio cards: consistent framed previews, image first, compact editorial copy. */
.cases .portfolio-card,.cases .portfolio-card:first-child{display:flex;flex-direction:column;min-height:0;grid-column:auto;grid-template-columns:none;grid-template-rows:none;overflow:hidden;border-radius:20px}
.cases .portfolio-card .portfolio-cover,.cases .portfolio-card:first-child .portfolio-cover{order:-1;position:relative;width:100%;height:auto;aspect-ratio:16/10;min-height:0;border:0;border-bottom:1px solid var(--line);padding:20px;background:radial-gradient(ellipse at top,#152c49,#09121f 75%)}
.cases .portfolio-card .portfolio-cover img{height:100%;width:100%;object-fit:cover;object-position:top center;border-radius:9px;box-shadow:0 8px 26px #0005}
.cases .portfolio-card.project-vitallogic .portfolio-cover img{object-fit:contain;object-position:center;box-shadow:none}
.cases .portfolio-card.project-ppc-optimization .portfolio-cover,.cases .portfolio-card.project-meta-campaigns .portfolio-cover{padding:0}
.cases .portfolio-card.project-ppc-optimization img,.cases .portfolio-card.project-meta-campaigns img{object-fit:cover;object-position:center;border-radius:0}
.cases .portfolio-card .info{padding:26px;gap:16px;flex:1}
.cases .portfolio-card h3,.cases .portfolio-card:first-child h3{font-size:clamp(1.5rem,2.3vw,2rem);margin:0}
.cases .portfolio-card .info p{font-size:.92rem;line-height:1.65;max-width:52ch}
.cases .portfolio-card .more{margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}
.who .avatar{display:grid;place-items:center;color:#b7d9f4;overflow:hidden}
.who .avatar svg{width:36px;height:36px}
@media(min-width:1000px){.home-work .cases{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.cases .portfolio-card .info{padding:22px}.cases .portfolio-card .portfolio-cover{padding:14px}}

/* promises: open columns, not boxes */
.prom{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:2.5rem;border-top:1px solid var(--line2);padding-top:2rem}
.prom li{position:relative;padding:0}
.prom .pn{display:block;font-family:var(--mono);font-size:.75rem;color:var(--blue);margin-bottom:1.4rem}
.prom .ic{display:none}
.prom h3{font-size:1.3rem;letter-spacing:-.015em;margin-bottom:.5rem}
.prom p{color:var(--mute);font-size:.95rem;line-height:1.55;margin:0}
@media(max-width:1000px){.prom{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.prom{grid-template-columns:1fr;gap:1.8rem}}
/* reviews */
.rvws{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
.rvws.n1{grid-template-columns:1fr}.rvws.n3{grid-template-columns:repeat(3,1fr)}
.rvw{position:relative;margin:0;padding:clamp(1.6rem,3vw,2.4rem);border-radius:22px;background:linear-gradient(160deg,#0f2248 0%,#0a1630 60%);border:1px solid var(--line);display:flex;flex-direction:column;gap:1rem;overflow:hidden}
.rvw::after{content:"";position:absolute;right:-20%;top:-40%;width:60%;height:120%;background:radial-gradient(closest-side,#2B7FF222,transparent);pointer-events:none}
.rtop{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.rproj{font-size:.8rem;font-weight:600;letter-spacing:.02em;color:var(--sky);background:#4FB8F714;border:1px solid #4FB8F733;padding:.35rem .75rem;border-radius:999px}
.vbadge{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:#7fe0b0}
.vbadge svg{width:15px;height:15px}
.rvw .qm{font-family:Georgia,"Times New Roman",serif;font-size:4.2rem;line-height:.5;height:1.6rem;margin-top:.4rem;color:var(--blue);opacity:.9}
.rvw blockquote{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.55;color:var(--ink);font-weight:500;flex:1}
.rvw figcaption{display:flex;flex-direction:column;gap:.15rem;padding-top:1.1rem;border-top:1px solid var(--line)}
.rvw figcaption b{font-size:1rem}
.rvw figcaption span{font-size:.85rem;color:var(--mute)}
@media(max-width:800px){.rvws,.rvws.n3{grid-template-columns:1fr}}
