/* F2C site: dark studio, Archivo-led, orange light; Ouder-style chrome (menu panel, PT/EN, WhatsApp) */
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}
:root{
  --orange:#FF4A02;--orange-700:#D64005;--orange-300:#FF895A;--sand:#D8D6C9;--paper:#F6F6F6;--ink:#1B1B1B;--night:#0A0A0B;--g800:#313236;
  --line:rgba(255,255,255,.09);--muted:#9EA0A5;--card:#121214;--card2:#17171A;
  --body:'Archivo','Helvetica Neue',Arial,sans-serif;--display:'Anton','Arial Narrow',Impact,sans-serif;
  --gl:max(20px,env(safe-area-inset-left,0px));--gr:max(20px,env(safe-area-inset-right,0px));
  --ease:cubic-bezier(.2,.7,.1,1);color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--night);color:var(--paper);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--orange);color:#fff}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:10px}
p{margin:0}
[hidden]{display:none!important}
.wrap{max-width:1240px;margin:0 auto;padding-left:var(--gl);padding-right:var(--gr)}
@media(min-width:760px){.wrap{padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}}
section{position:relative;padding-block:clamp(80px,9vw,130px)}
.h{font-weight:500;letter-spacing:-.04em;line-height:1.04;margin:0;text-wrap:balance}
.h-xl{font-size:clamp(42px,6.6vw,100px)}
.h-l{font-size:clamp(34px,4.6vw,66px)}
.h-m{font-size:clamp(22px,2.1vw,30px);letter-spacing:-.03em;line-height:1.15}
.soft{color:rgba(246,246,246,.4)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:500;color:var(--muted)}
.eyebrow b{color:var(--orange);font-weight:600;font-variant-numeric:tabular-nums}
.eyebrow::after{content:"";width:60px;height:1px;background:var(--line)}
.lead{font-size:clamp(16px,1.3vw,18px);line-height:1.65;color:var(--muted);max-width:56ch}
.head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:24px 64px;align-items:end;margin-bottom:clamp(40px,5vw,72px)}
.head>div{display:flex;flex-direction:column;gap:22px}
@media(max-width:860px){.head{grid-template-columns:1fr}}

/* buttons: wide, glowing, gradient */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:999px;padding:16px 34px;font-size:14px;font-weight:600;letter-spacing:-.01em;transition:transform .45s var(--ease),box-shadow .45s,background .3s,color .3s,border-color .3s;white-space:nowrap;position:relative}
.btn i{font-style:normal;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.2);font-size:12px;transition:transform .45s var(--ease)}
.btn:hover i{transform:translateX(4px)}
.btn-p{color:#fff;background:linear-gradient(135deg,#FF6A2A 0%,#FF4A02 45%,#D64005 100%);box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 12px 34px -8px rgba(255,74,2,.75);animation:btnGlow 3s ease-in-out infinite}
.btn-p:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,255,255,.2) inset,0 18px 46px -8px rgba(255,74,2,.95)}
@keyframes btnGlow{50%{box-shadow:0 0 0 1px rgba(255,255,255,.14) inset,0 14px 40px -6px rgba(255,74,2,.95),0 0 0 4px rgba(255,74,2,.12)}}
.btn-g{border:1px solid rgba(255,255,255,.16);color:#fff;background:rgba(255,255,255,.03)}
.btn-g:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.3)}
.btn-sm{padding:12px 24px;font-size:13px}

/* rotating light border (badge) */
.ring{position:relative;isolation:isolate}
.ring::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from var(--ang),transparent 0 70%,rgba(255,138,80,.95) 82%,transparent 92%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spinAng 3.6s linear infinite;z-index:-1}
@keyframes spinAng{to{--ang:360deg}}
.badge{display:inline-flex;align-items:center;gap:10px;padding:9px 18px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#e3e4e6;background:rgba(255,74,2,.07);border:1px solid rgba(255,74,2,.22)}
.badge .dot{width:7px;height:7px;border-radius:50%;background:var(--orange);animation:pulseDot 2.4s ease-in-out infinite}
@keyframes pulseDot{0%,100%{box-shadow:0 0 6px rgba(255,74,2,.7),0 0 0 0 rgba(255,74,2,.4)}50%{box-shadow:0 0 14px rgba(255,120,60,1),0 0 0 6px rgba(255,74,2,0)}}

/* glows */
.fx{overflow:clip;isolation:isolate}
.fx::before{content:"";position:absolute;inset:-10%;z-index:-1;pointer-events:none;background:radial-gradient(32% 28% at var(--x1,85%) var(--y1,15%),rgba(255,74,2,.17),transparent 70%),radial-gradient(28% 26% at var(--x2,10%) var(--y2,85%),rgba(193,8,1,.13),transparent 70%);filter:blur(8px);animation:drift 24s ease-in-out infinite alternate}
@keyframes drift{50%{transform:translate3d(-2.5%,2%,0) scale(1.05)}100%{transform:translate3d(2%,-2%,0)}}

/* top bar */
.glass{background:rgba(16,16,18,.62);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08)}
.bar{position:fixed;z-index:80;top:calc(env(safe-area-inset-top,0px) + 14px);left:0;right:0;pointer-events:none}
.bar .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}
.bar .l{display:flex;align-items:center;gap:8px;pointer-events:auto}
.mbtn{display:inline-flex;align-items:center;gap:10px;padding:11px 16px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.14em}
.mbtn .g{display:grid;grid-template-columns:repeat(2,4px);gap:3px}
.mbtn .g span{width:4px;height:4px;border-radius:1px;background:#fff;transition:transform .5s var(--ease),background .3s}
.mbtn[aria-expanded="true"] .g{transform:rotate(45deg);transition:transform .5s var(--ease)}
.mbtn[aria-expanded="true"] .g span{background:var(--orange)}
.brandmini{display:flex;align-items:center;padding:11px 15px;border-radius:999px}
.brandmini svg{height:17px;width:auto;color:#fff}
.lang{pointer-events:auto;display:flex;gap:2px;padding:4px;border-radius:999px}
.lang button{display:flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;font-size:12px;font-weight:600;color:#9ea0a5;transition:background .3s,color .3s}
.lang button[aria-pressed="true"]{background:rgba(255,74,2,.14);color:#fff;box-shadow:0 0 0 1px rgba(255,74,2,.45) inset}
.lang .flag{width:16px;height:11px;border-radius:2px;overflow:hidden;display:block}
.bar .r{display:flex;justify-content:flex-end;pointer-events:auto}
.wa{display:inline-flex;align-items:center;gap:10px;padding:7px 18px 7px 7px;border-radius:999px;font-size:13px;font-weight:600;transition:border-color .3s,background .3s}
.wa:hover{border-color:rgba(37,211,102,.5);background:rgba(16,24,18,.75)}
.wa .ic{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#1fb855;box-shadow:0 0 16px rgba(37,211,102,.45)}
.wa .ic svg{width:16px;height:16px;color:#fff}
@media(max-width:760px){.brandmini{display:none}.wa .t{display:none}.wa{padding:7px}.lang button span.t{display:none}}

/* menu panel */
.scrim{position:fixed;inset:0;z-index:78;background:rgba(5,5,6,.55);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .4s}
.scrim.on{opacity:1;pointer-events:auto}
.panel{position:fixed;z-index:79;top:calc(env(safe-area-inset-top,0px) + 70px);left:max(16px,env(safe-area-inset-left,0px));width:min(760px,calc(100% - 32px));border-radius:26px;overflow:hidden;display:grid;grid-template-columns:.85fr 1.15fr;opacity:0;transform:translateY(-10px) scale(.98);transform-origin:top left;pointer-events:none;transition:opacity .4s var(--ease),transform .5s var(--ease)}
.panel.on{opacity:1;transform:none;pointer-events:auto}
.panel nav{padding:28px;display:flex;flex-direction:column;gap:2px}
.panel nav a{font-size:15px;font-weight:600;letter-spacing:.08em;padding:9px 0;color:#d5d6d9;transition:color .25s,transform .35s var(--ease)}
.panel nav a:hover{color:#fff;transform:translateX(6px)}
.panel .who{margin-top:auto;padding-top:24px;display:flex;flex-direction:column;gap:14px}
.panel .who .row{display:flex;align-items:center;gap:12px}
.panel .who .mk{width:44px;height:44px;border-radius:12px;background:#1d1d20;display:grid;place-items:center}
.panel .who .mk svg{width:24px;color:var(--orange)}
.panel .who b{font-size:15px}
.panel .who small{display:block;font-size:10px;letter-spacing:.18em;color:#8d8f93;text-transform:uppercase}
.soc{display:flex;gap:8px}
.soc a{width:34px;height:34px;border-radius:10px;border:1px solid var(--line);display:grid;place-items:center;font-size:11px;font-weight:700;color:#cfd0d3}
.soc a:hover{border-color:var(--orange);color:#fff}
.panel .feat{display:grid;grid-template-rows:1fr 1fr;border-left:1px solid var(--line)}
.panel .feat a{position:relative;overflow:hidden;display:block;min-height:170px;border-bottom:1px solid var(--line)}
.panel .feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease);opacity:.85}
.panel .feat a:hover img{transform:scale(1.05)}
.panel .feat .cap{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;background:linear-gradient(transparent,rgba(0,0,0,.85));font-size:14px;font-weight:600}
.panel .feat .cap small{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#a9abaf;font-weight:500}
@media(max-width:640px){.panel{grid-template-columns:1fr}.panel .feat{display:none}}

/* hero */
.hero{min-height:max(740px,100svh);padding:0;display:flex;align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse 50% 45% at 50% 50%,rgba(255,74,2,.12),transparent 70%),var(--night)}
.hero canvas{position:absolute;inset:0;width:100%;height:100%}
.hero .astslot{position:absolute;left:50%;top:52%;width:min(150vw,1700px);aspect-ratio:232.333/192.524;transform:translate(-50%,-50%);pointer-events:none}
@media(max-width:760px){.hero .astslot{width:220vw}}
.hero .inner{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:28px;padding:140px var(--gr) 120px var(--gl);max-width:1000px}
.hero .lead{color:#c4c5c8;max-width:60ch;text-align:center}
.ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.tags{position:absolute;inset:0;z-index:2;pointer-events:none}
.ftag{position:absolute;display:flex;align-items:center;gap:9px;padding:10px 16px;border-radius:14px;font-size:13px;color:#e4e5e7;will-change:transform}
.ftag span{display:block;animation:floaty 7s ease-in-out infinite;animation-delay:var(--dl,0s)}
.ftag::before{content:"";width:7px;height:7px;border-radius:2px;background:var(--orange);box-shadow:0 0 10px rgba(255,74,2,.8)}
@keyframes floaty{50%{transform:translateY(-8px)}}
@media(max-width:900px){.tags{display:none}}
.cue{position:absolute;z-index:3;bottom:calc(env(safe-area-inset-bottom,0px) + 30px);left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8d8f93}
.cue i{width:1px;height:40px;background:linear-gradient(#8d8f93,transparent);position:relative;overflow:hidden}
.cue i::after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:var(--orange);animation:drop 2.2s var(--ease) infinite}
@keyframes drop{to{top:110%}}
.js .rv{opacity:0;transform:translateY(16px);animation:rv 1.2s var(--ease) forwards;animation-delay:var(--d,.4s)}
@keyframes rv{to{opacity:1;transform:none}}

/* clients marquee */
.clients{padding-block:clamp(56px,6vw,84px);border-block:1px solid var(--line)}
.clients .cap{text-align:center;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#7c7f84;margin-bottom:30px}
.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marquee .track{display:flex;width:max-content;animation:tick 42s linear infinite}
.marquee.rev .track{animation-direction:reverse;animation-duration:52s}
.marquee:hover .track{animation-play-state:paused}
.marquee span{display:flex;align-items:center;gap:36px;padding-right:36px;font-size:clamp(24px,2.8vw,40px);font-weight:500;letter-spacing:-.04em;white-space:nowrap;color:#e7e7e9}
.marquee.rev span{color:#6d7075}
.marquee svg{width:20px;height:17px;color:var(--orange);opacity:.85}
.marquee+.marquee{margin-top:14px}
@keyframes tick{to{transform:translateX(-50%)}}

/* projects */
.projs{display:flex;flex-direction:column;gap:18px}
.proj{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);border-radius:28px;overflow:hidden;background:var(--card);border:1px solid var(--line);min-height:440px;transition:border-color .5s}
.proj:hover{border-color:rgba(255,74,2,.35)}
.proj .media{position:relative;overflow:hidden;background:#0e0e0f;display:grid;place-items:center;padding:36px}
.proj .media::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 60% at 50% 60%,var(--glow,rgba(255,74,2,.35)),transparent 70%)}
.proj .stack{position:relative;display:flex;gap:16px;align-items:center;justify-content:center;height:100%}
.proj .stack img{width:min(42%,220px);border-radius:12px;box-shadow:0 30px 60px rgba(0,0,0,.5);transition:transform 1s var(--ease)}
.proj .stack img:nth-child(1){transform:rotate(-6deg) translateY(10px)}
.proj .stack img:nth-child(2){transform:rotate(5deg) translateY(-8px)}
.proj:hover .stack img:nth-child(1){transform:rotate(-9deg) translate(-8px,6px)}
.proj:hover .stack img:nth-child(2){transform:rotate(8deg) translate(8px,-12px)}
.proj .info{padding:clamp(28px,3.4vw,48px);display:flex;flex-direction:column;gap:18px}
.meta{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding-bottom:18px;border-bottom:1px solid var(--line)}
.meta b{color:var(--orange);font-weight:600}
.proj .info p{color:var(--muted);max-width:42ch}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-radius:999px;border:1px solid var(--line);color:#c4c5c8}
.proj .chips{margin-top:auto;padding-top:14px}
.proj .btn{align-self:flex-start}
@media(max-width:860px){.proj{grid-template-columns:1fr}.proj .media{min-height:320px}}
.center{display:flex;justify-content:center;margin-top:36px}

/* about with portraits */
.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,90px);align-items:start}
.about .duo{position:sticky;top:110px}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.portrait{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:3/4;background:radial-gradient(70% 55% at 50% 30%,rgba(255,74,2,.22),transparent 70%),linear-gradient(180deg,#1a1a1d,#0d0d0e);border:1px solid var(--line);display:flex;align-items:flex-end;justify-content:center}
.portrait:nth-child(2){transform:translateY(40px)}
.portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.portrait .ph{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(48px,6vw,84px);font-weight:500;letter-spacing:-.05em;color:rgba(255,255,255,.08)}
.portrait .ph small{position:absolute;bottom:52px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#6f7277}
.portrait .nm{position:relative;z-index:1;width:100%;padding:16px;text-align:center;font-size:11px;letter-spacing:.2em;text-transform:uppercase;background:linear-gradient(transparent,rgba(0,0,0,.75))}
.about .txt{display:flex;flex-direction:column;gap:20px}
.about .txt p{color:#c4c5c8;font-size:clamp(16px,1.2vw,17px);line-height:1.75;max-width:56ch}
.about .sig{display:flex;align-items:center;gap:14px;padding-top:22px;border-top:1px solid var(--line);font-size:20px;font-weight:500;letter-spacing:-.02em}
.about .sig svg{height:22px;width:auto;color:#fff}
@media(max-width:900px){.about{grid-template-columns:1fr}.portrait:nth-child(2){transform:none}}

/* process: particle logo + bento */
.orb{position:relative;width:min(560px,90vw);aspect-ratio:1;margin:clamp(20px,4vw,48px) auto clamp(40px,5vw,64px)}
.orb canvas{position:absolute;inset:0;width:100%;height:100%}
.orb .circ{position:absolute;inset:0;animation:spin 60s linear infinite;color:#8d8f93}
.orb .circ text{font-size:13px;font-family:var(--body);font-weight:600;fill:currentColor;text-transform:uppercase}
@keyframes spin{to{transform:rotate(360deg)}}
.bento{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bx{background:var(--card2);border:1px solid var(--line);border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:14px;transition:border-color .5s,transform .6s var(--ease)}
.bx:hover{border-color:rgba(255,74,2,.35);transform:translateY(-3px)}
.bx .k{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);font-weight:600}
.bx .ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(255,74,2,.1);border:1px solid rgba(255,74,2,.25)}
.bx .ico svg{width:19px;height:19px;color:var(--orange)}
.bx p{color:var(--muted);font-size:15px}
.bx.tall{grid-row:span 2}
.bx.tall .chips{margin-top:auto}
.bx .big{font-size:clamp(44px,5vw,64px);font-weight:500;letter-spacing:-.05em;line-height:1}
.bx .avs{display:flex}
.bx .avs i{width:34px;height:34px;border-radius:50%;margin-right:-10px;border:2px solid var(--card2);background:linear-gradient(135deg,#FF895A,#D64005)}
.bx .avs i:nth-child(2){background:linear-gradient(135deg,#D8D6C9,#6F7277)}
.bx .avs i:nth-child(3){background:linear-gradient(135deg,#313236,#FF4A02)}
.bx.row{flex-direction:row;align-items:flex-start;gap:16px}
.ready{margin-top:14px;border-radius:24px;padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:linear-gradient(110deg,rgba(255,74,2,.18),rgba(255,74,2,.03) 60%),var(--card2);border:1px solid rgba(255,74,2,.25)}
.ready b{display:block;font-size:20px;font-weight:600;letter-spacing:-.02em}
.ready>div>span{font-size:14px;color:var(--muted)}
@media(max-width:860px){.bento{grid-template-columns:1fr}.bx.tall{grid-row:auto}}

/* services / faq accordions */
.split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,5vw,80px);align-items:start}
.split .side{position:sticky;top:120px;display:flex;flex-direction:column;gap:22px}
@media(max-width:900px){.split{grid-template-columns:1fr}.split .side{position:static}}
.acc{border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:52px 1fr 32px;gap:12px;align-items:center;padding:24px 0}
.acc.plain summary{grid-template-columns:1fr 32px}
.acc summary::-webkit-details-marker{display:none}
.acc summary .n{font-size:13px;color:var(--orange);font-variant-numeric:tabular-nums;font-weight:600}
.acc summary .t{font-size:clamp(19px,1.7vw,24px);font-weight:500;letter-spacing:-.03em}
.acc summary .pm{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:transform .5s var(--ease),background .3s}
.acc summary .pm::before{content:"+";font-size:18px;line-height:1;color:#c4c5c8}
.acc details[open] summary .pm{transform:rotate(45deg);background:var(--orange);border-color:var(--orange)}
.acc details[open] summary .pm::before{color:#fff}
.acc .body{padding:0 0 26px 64px;display:flex;flex-direction:column;gap:14px}
.acc.plain .body{padding-left:0}
.acc .body h4{margin:0;font-size:17px;font-weight:600;letter-spacing:-.02em}
.acc .body p{color:var(--muted);max-width:58ch}
.acc .body small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#6f7277}
@media(max-width:560px){.acc summary{grid-template-columns:40px 1fr 32px}.acc .body{padding-left:0}}

/* testimonials */
.quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.q{margin:0;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:30px;display:flex;flex-direction:column;gap:20px;min-height:320px}
.q .mark{font-size:56px;line-height:.6;color:var(--orange);height:26px}
.q blockquote{margin:0;font-size:clamp(19px,1.6vw,23px);line-height:1.35;letter-spacing:-.025em;font-weight:500}
.q p{font-size:14px;color:var(--muted)}
.q .who{margin-top:auto;display:flex;align-items:center;gap:12px;padding-top:20px;border-top:1px solid var(--line)}
.q .av{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--g800);font-size:14px;font-weight:600;color:var(--orange-300)}
.q .who b{display:block;font-size:14px}
.q .who span{font-size:12px;color:var(--muted)}
@media(max-width:960px){.quotes{grid-template-columns:1fr}}

/* final + footer */
.final{padding-block:clamp(100px,12vw,170px);text-align:center;min-height:max(760px,100svh);display:flex;align-items:center;overflow:clip}




.final .inner{display:flex;flex-direction:column;align-items:center;gap:26px;max-width:880px;margin:0 auto}
.final .bg{position:absolute;left:50%;top:50%;width:min(80vw,760px);transform:translate(-50%,-50%);color:rgba(255,74,2,.07);pointer-events:none}
.mail{display:inline-flex;align-items:center;gap:10px;padding:10px 12px 10px 18px;border-radius:999px;border:1px solid var(--line);font-size:14px;color:#d4d5d8}
.copy{font-size:12px;font-weight:600;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.08)}
footer{border-top:1px solid var(--line);padding-block:56px calc(env(safe-area-inset-bottom,0px) + 40px)}
.foot{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:32px}
.foot .logo{height:26px;width:auto;color:#fff}
.foot h5{margin:0 0 14px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#6f7277}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px;color:#c4c5c8}
.foot ul a:hover{color:#fff}
.foot .claim{margin-top:18px;font-size:20px;font-weight:500;letter-spacing:-.03em}
.foot .claim+p{color:var(--muted);font-size:14px;margin-top:6px}
.legal{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:48px;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:#6f7277}
@media(max-width:760px){.foot{grid-template-columns:1fr 1fr}.foot>div:first-child{grid-column:1/-1}}

/* portfolio + project pages */
.page-top{padding-top:clamp(140px,14vw,190px)}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.filters button{padding:10px 18px;border-radius:999px;border:1px solid var(--line);font-size:13px;color:#c4c5c8;transition:background .3s,border-color .3s,color .3s}
.filters button[aria-pressed="true"]{background:rgba(255,74,2,.14);border-color:rgba(255,74,2,.5);color:#fff}
.pgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}
.pcard{border-radius:24px;overflow:hidden;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;transition:border-color .5s,transform .6s var(--ease)}
.pcard:hover{border-color:rgba(255,74,2,.35);transform:translateY(-4px)}
.pcard .media{aspect-ratio:16/11;position:relative;overflow:hidden;background:#0e0e0f;display:grid;place-items:center}
.pcard .media::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 60% at 50% 60%,var(--glow,rgba(255,74,2,.35)),transparent 70%)}
.pcard .media .stack{position:relative;display:flex;gap:12px;width:100%;justify-content:center}
.pcard .media img{width:34%;min-width:120px;border-radius:10px;box-shadow:0 20px 40px rgba(0,0,0,.5);transition:transform 1s var(--ease)}
.pcard:hover .media img:first-child{transform:rotate(-5deg) translateX(-6px)}
.pcard:hover .media img:last-child{transform:rotate(5deg) translateX(6px)}
.pcard .b{padding:22px 24px;display:flex;flex-direction:column;gap:8px}
.pcard .b small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pcard .b b{font-size:20px;font-weight:500;letter-spacing:-.03em}
@media(max-width:760px){.pgrid{grid-template-columns:1fr}}
.back{display:flex;width:fit-content;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-bottom:28px}
.back:hover{color:#fff}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:22px;overflow:hidden;margin-top:40px;background:var(--card)}
.facts div{padding:20px 22px;border-right:1px solid var(--line)}
.facts div:last-child{border-right:0}
.facts small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#6f7277;margin-bottom:6px}
@media(max-width:760px){.facts{grid-template-columns:1fr 1fr}.facts div:nth-child(2){border-right:0}.facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.gallery{display:flex;flex-direction:column;gap:16px;margin-top:40px}
.gallery .shot{border-radius:24px;overflow:hidden;background:#0e0e0f;border:1px solid var(--line);display:grid;place-items:center;padding:clamp(24px,5vw,64px);position:relative}
.gallery .shot::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 60% at 50% 50%,var(--glow,rgba(255,74,2,.3)),transparent 70%)}
.gallery .shot img{position:relative;width:min(520px,80%);border-radius:14px;box-shadow:0 40px 80px rgba(0,0,0,.55)}
.nextp{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:56px;padding-top:28px;border-top:1px solid var(--line)}

.js .up{transform:translateY(24px);transition:transform 1.1s var(--ease)}
.js .up.in{transform:none}
.toast{position:fixed;z-index:90;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 24px);transform:translate(-50%,10px);padding:10px 16px;border-radius:999px;background:#fff;color:var(--ink);font-size:13px;font-weight:600;opacity:0;transition:opacity .3s,transform .4s var(--ease);pointer-events:none}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}.js .up{transform:none}}

/* ===== v3 additions ===== */
p,.lead,blockquote,figcaption{text-wrap:pretty}
/* hero tags: Ouder system */
@property --py{syntax:'<length>';initial-value:0px;inherits:false}
.ftag{top:50%;left:50%;transform:translate(-50%,-50%) translate(var(--x,0px),var(--y,0px)) translate(var(--px,0px),calc(var(--pym,0px) + var(--py,0px)));transition:transform .5s var(--ease),opacity .8s var(--ease);animation:floatpy 7s ease-in-out infinite;animation-delay:var(--dl,0s)}
.ftag::before{content:none}
.ftag i{width:7px;height:7px;border-radius:2px;background:linear-gradient(135deg,#FF895A,#FF4A02);box-shadow:0 0 10px -1px #FF4A02}
.ftag span{animation:none}
@keyframes floatpy{0%,100%{--py:-8px}50%{--py:8px}}
/* magnetic + spotlight */
.btn.is-mag{transition:transform .35s var(--ease),box-shadow .45s,background .3s}
.spot{position:relative;overflow:hidden}
.ready .btn-p,.ready .btn-p span{color:#fff}
.spot::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),rgba(255,74,2,.12),transparent 60%)}
.spot:hover::after{opacity:1}
/* placeholder media */
.ph-media{position:relative;z-index:1;width:100%;height:100%;min-height:260px;border:1.5px dashed rgba(255,255,255,.16);border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#9ea0a5;font-size:14px;font-weight:500;background:rgba(255,255,255,.015)}
.ph-media .ph-ic{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,74,2,.4);color:var(--orange);font-size:22px;font-weight:400;background:rgba(255,74,2,.06)}
.ph-media small{font-size:11px;letter-spacing:.12em;color:#6f7277}
.proj .media{padding:28px}
.pcard .media{padding:18px}
.gallery .shot{min-height:clamp(320px,46vw,620px)}
.gallery .shot .ph-media{min-height:clamp(280px,42vw,560px)}
.feat-ph{position:absolute;inset:0;background:radial-gradient(60% 70% at 50% 40%,rgba(255,74,2,.22),transparent 70%),repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0 10px,transparent 10px 20px),#141416}
/* experts */
.xrail{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.xtrack{display:flex;gap:16px;width:max-content;animation:tick 60s linear infinite;padding-block:6px}
.xrail:hover .xtrack{animation-play-state:paused}
.expert{margin:0;width:clamp(220px,22vw,300px);flex:none;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:#111113;position:relative;aspect-ratio:3/4;transition:transform .6s var(--ease),border-color .5s}
.expert:hover{transform:translateY(-6px);border-color:rgba(255,74,2,.45)}
.expert img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.xph{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(70% 55% at 50% 32%,rgba(255,74,2,.22),transparent 70%),linear-gradient(180deg,#19191c,#0c0c0d)}
.xph b{font-size:clamp(56px,6vw,84px);font-weight:500;letter-spacing:-.05em;color:rgba(255,255,255,.08)}
.xph small{position:absolute;top:16px;left:16px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#6f7277;padding:5px 9px;border:1px dashed rgba(255,255,255,.14);border-radius:999px}
.expert figcaption{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 18px;background:linear-gradient(transparent,rgba(0,0,0,.85))}
.expert figcaption b{font-size:20px;font-weight:500;letter-spacing:-.03em}
/* about */
.about .lcol{display:flex;flex-direction:column;gap:22px}
.about .duo{position:static;margin-top:20px}
.about .txt{padding-top:clamp(0px,9vw,150px)}
@media(max-width:900px){.about .txt{padding-top:0}}
/* process bento around the logo */
.bento{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr);grid-template-areas:"e1 orb e2" "e1 orb e3" "st cr cr"}
.a-e1{grid-area:e1}.a-orb{grid-area:orb}.a-e2{grid-area:e2}.a-e3{grid-area:e3}.a-st{grid-area:st}.a-cr{grid-area:cr}
.a-e1 .chips{margin-top:auto}
.a-orb{padding:0;display:grid;place-items:center;background:radial-gradient(60% 60% at 50% 50%,rgba(255,74,2,.1),transparent 70%),var(--card2)}
.a-orb .orb{margin:0;width:100%;max-width:520px}
.bx.row{flex-direction:column;gap:14px}
@media(max-width:1000px){.bento{grid-template-columns:1fr 1fr;grid-template-areas:"orb orb" "e1 e2" "e1 e3" "st cr"}}
@media(max-width:640px){.bento{grid-template-columns:1fr;grid-template-areas:"orb" "e1" "e2" "e3" "st" "cr"}}
/* final: premotio composition */
.final{min-height:max(820px,100svh);padding-block:clamp(110px,10vw,150px) clamp(70px,8vw,110px);display:block;text-align:left;overflow:clip;isolation:isolate;background:var(--night)}
.final .vx{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.pm{position:relative;z-index:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));row-gap:0}
.pm h2{margin:0;font-weight:500;letter-spacing:-.05em;line-height:.95;font-size:clamp(50px,8.2vw,132px);color:#F6F6F6;mix-blend-mode:difference}
.pm-a{grid-column:1/-1}
.pm-b{grid-column:1/-1;text-align:right;margin-top:clamp(28px,4vw,60px)!important}
.pm-notes{grid-column:2/-1;display:flex;flex-direction:column;gap:clamp(14px,1.8vw,22px);margin-top:clamp(28px,3.5vw,48px);mix-blend-mode:difference}
.pm-notes p{color:#F6F6F6;font-size:clamp(16px,1.35vw,19px);font-weight:600;line-height:1.3;letter-spacing:-.02em;max-width:30ch}
.pm-notes .n2{margin-left:clamp(0px,22vw,320px)}
.pm-notes .n3{margin-left:clamp(0px,42vw,600px)}
.pm-cta{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:flex-end;margin-top:clamp(36px,5vw,60px);position:relative;z-index:2}
@media(max-width:760px){.pm-notes{grid-column:1/-1}.pm-notes .n2,.pm-notes .n3{margin-left:0}.pm-cta{justify-content:flex-start}}

/* ===== v4 ===== */
/* hero: more air between buttons and scroll cue */
.hero .inner{padding-bottom:200px}
.cue{bottom:calc(env(safe-area-inset-bottom,0px) + 22px)}
/* two-line headings */
.h-two{font-size:clamp(28px,2.8vw,44px);letter-spacing:-.035em;line-height:1.08}
@media(min-width:1000px){.h-two{white-space:nowrap}}
.head-top{align-items:start}
/* accordion plus: drawn, perfectly centered */
.acc summary .pm{position:relative}
.acc summary .pm::before,.acc summary .pm::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;border-radius:2px;background:#c4c5c8;transform:translate(-50%,-50%)}
.acc summary .pm::after{width:1.5px;height:12px}
.acc details[open] summary .pm::before,.acc details[open] summary .pm::after{background:#fff}

/* about: stacked portraits that orbit on click */
.about2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:center}
.about2 .txt{display:flex;flex-direction:column;gap:20px}
.about2 .txt p{color:#c4c5c8;font-size:clamp(16px,1.2vw,17px);line-height:1.75;max-width:56ch}
.stack2{position:relative;height:clamp(440px,37vw,560px);perspective:1400px;cursor:pointer;outline:none}
.stack2:focus-visible{outline:2px solid var(--orange);outline-offset:8px;border-radius:24px}
.pc2{position:absolute;left:19%;top:5%;width:58%;aspect-ratio:3/4;margin:0;border-radius:26px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:radial-gradient(70% 55% at 50% 30%,rgba(255,74,2,.24),transparent 70%),linear-gradient(180deg,#1b1b1e,#0c0c0d);box-shadow:0 40px 80px rgba(0,0,0,.55);will-change:transform,filter;transform-origin:50% 60%}
.pc2 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.pc2 .ph{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(56px,7vw,100px);font-weight:500;letter-spacing:-.05em;color:rgba(255,255,255,.08)}
.pc2 .ph small{position:absolute;top:18px;left:18px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#6f7277;padding:5px 10px;border:1px dashed rgba(255,255,255,.14);border-radius:999px}
.pc2 .nm{position:absolute;left:0;right:0;bottom:0;padding:60px 22px 20px;background:linear-gradient(transparent,rgba(0,0,0,.85));display:flex;flex-direction:column;gap:2px}
.pc2 .nm b{font-size:20px;font-weight:500;letter-spacing:-.03em}
.pc2 .nm span{font-size:12px;color:#a9abaf}
.s2hint{position:absolute;left:4%;bottom:2%;display:flex;align-items:center;gap:8px;font-size:12px;color:#8d8f93}
.s2hint i{font-style:normal;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);color:var(--orange)}
@media(max-width:900px){.about2{grid-template-columns:1fr}.stack2{height:clamp(420px,110vw,560px)}}

/* process bento: logo disc hugged by the cards (Ouder) */
.bento2{display:grid;grid-template-columns:1.25fr .6fr .6fr 1.25fr;grid-auto-rows:minmax(120px,auto);grid-template-areas:"e1 logo logo st" "e1 logo logo cr" "e2 e2 e3 e3";gap:14px}
.b-e1{grid-area:e1;margin-right:-130px;padding-right:164px}
.b-st{grid-area:st;margin-left:-130px;padding-left:164px}
.b-cr{grid-area:cr;margin-left:-130px;padding-left:164px}
.b-e2{grid-area:e2}.b-e3{grid-area:e3}
.b-e1 .chips{margin-top:auto}
.bento2 .bx.hug:hover{transform:none}
.bento2 .bx.hug::before{content:"";position:absolute;left:var(--ox,-9999px);top:var(--oy,-9999px);width:calc(var(--r,0px)*2 + 2px);height:calc(var(--r,0px)*2 + 2px);transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(255,255,255,.12);pointer-events:none;z-index:3}
.b-logo{grid-area:logo;display:grid;place-items:center;position:relative;z-index:2;min-height:340px}
.disc{position:relative;width:clamp(240px,25vw,340px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#17171a,#0b0b0c 70%);border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 1px rgba(255,74,2,.06),0 30px 80px rgba(0,0,0,.5);cursor:pointer}
.disc canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;border-radius:50%}
.disc .slot{position:absolute;left:17%;top:21%;width:66%;aspect-ratio:232.333/192.524}
.cglow{position:absolute;inset:0;border-radius:50%;z-index:1;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(circle 120px at var(--gx,-999px) var(--gy,-999px),rgba(255,120,60,.45),rgba(255,74,2,.18) 45%,transparent 72%)}
.disc:hover .cglow{opacity:1}
.conn{position:absolute;top:50%;left:50%;width:58px;height:1px;transform-origin:0 50%;z-index:1;pointer-events:none}
.conn::before{content:"";position:absolute;left:6px;top:0;width:100%;height:1px;background:linear-gradient(90deg,var(--dot,#FF4A02),transparent);opacity:.5}
.conn::after{content:"";position:absolute;left:0;top:-3.5px;width:8px;height:8px;border-radius:50%;background:var(--dot,#FF4A02);box-shadow:0 0 12px 1px var(--dot,#FF4A02);animation:conndot 3s ease-in-out infinite}
.conn.c1{transform:rotate(148deg) translateX(var(--dr,150px));--dot:#FF895A}
.conn.c2{transform:rotate(212deg) translateX(var(--dr,150px));--dot:#FF4A02}
.conn.c3{transform:rotate(32deg) translateX(var(--dr,150px));--dot:#FF4A02}
.conn.c4{transform:rotate(-32deg) translateX(var(--dr,150px));--dot:#FF895A}
.conn.c2::after,.conn.c4::after{animation-delay:-1.5s}
@keyframes conndot{50%{transform:scale(1.35);opacity:.65}}
@media(max-width:1000px){.bento2{grid-template-columns:1fr 1fr;grid-template-areas:"logo logo" "e1 st" "e1 cr" "e2 e3"}.b-e1{margin-right:0;padding-right:28px}.b-st,.b-cr{margin-left:0;padding-left:28px}.conn,.bento2 .bx.hug::before{display:none}}
@media(max-width:640px){.bento2{grid-template-columns:1fr;grid-template-areas:"logo" "e1" "st" "cr" "e2" "e3"}}

/* testimonials: audio row */
.aud{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.02)}
.aud .play{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:#fff;box-shadow:0 6px 18px -6px rgba(255,74,2,.8);transition:transform .3s var(--ease)}
.aud .play:hover{transform:scale(1.06)}
.aud .play svg{width:16px;height:16px}
.aud .i-pause{display:none}
.aud.playing .i-play{display:none}.aud.playing .i-pause{display:block}
.aud .wave{flex:1;display:flex;align-items:center;gap:2px;height:22px;min-width:0;overflow:hidden}
.aud .wave i{flex:1;max-width:4px;height:var(--h);border-radius:2px;background:rgba(255,255,255,.2);transition:background .3s}
.aud.playing .wave i{background:var(--orange-300);animation:wv 1s ease-in-out infinite alternate}
.aud.playing .wave i:nth-child(3n){animation-delay:-.3s}.aud.playing .wave i:nth-child(3n+1){animation-delay:-.6s}
@keyframes wv{to{transform:scaleY(.45)}}
.aud .dur{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none}

/* final: Clair-style */
.final.cl{min-height:max(820px,100svh);padding:0;display:block;text-align:left;overflow:clip;isolation:isolate;background:#060607}
.cl-bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(45% 55% at 52% 52%,rgba(255,74,2,.22),transparent 70%),radial-gradient(40% 40% at 85% 85%,rgba(193,8,1,.25),transparent 70%),radial-gradient(35% 35% at 10% 20%,rgba(217,195,171,.08),transparent 70%)}
.cl3d{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.cl-grid{position:relative;z-index:1;min-height:max(820px,100svh);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto 1fr auto;grid-template-areas:"title . tag" "left . card" "ctas center card";gap:24px;padding-block:clamp(110px,10vw,140px) clamp(40px,4vw,56px)}
.cl-title{grid-area:title;margin:0;font-weight:400;text-transform:uppercase;letter-spacing:-.025em;line-height:.98;font-size:clamp(40px,5.4vw,86px);white-space:nowrap}
.cl-title .soft{color:rgba(246,246,246,.5)}
.cl-title{text-shadow:0 2px 30px rgba(0,0,0,.5)}
.cl-tag{grid-area:tag;justify-self:end;align-self:center;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#d9dadc;display:flex;align-items:center;gap:10px;margin-top:clamp(40px,8vw,140px)}
.cl-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(255,74,2,.2)}
.cl-left{grid-area:left;align-self:center;font-size:15px;line-height:1.65;color:#d4d5d8;max-width:30ch;text-shadow:0 1px 14px rgba(0,0,0,.8)}
.cl-ctas{grid-area:ctas;align-self:end;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.cl-center{grid-area:center;align-self:end;justify-self:center;font-size:14px;line-height:1.6;color:#d4d5d8;max-width:30ch;text-shadow:0 1px 14px rgba(0,0,0,.8)}
.cl-card{grid-area:card;align-self:end;justify-self:end;position:relative;width:clamp(200px,18vw,260px);aspect-ratio:4/5;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 70px rgba(0,0,0,.55);transition:transform .6s var(--ease)}
.cl-card:hover{transform:translateY(-4px)}
.cl-imgs img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1.2s var(--ease),transform 3s linear}
.cl-imgs img.on{opacity:1;transform:scale(1)}
.cl-cap{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 16px;background:linear-gradient(transparent,rgba(0,0,0,.8));font-size:13px;font-weight:600}
.cl-go{position:absolute;right:12px;bottom:12px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);font-size:15px}
@media(max-width:900px){.cl-grid{grid-template-columns:1fr;grid-template-areas:"title" "tag" "left" "card" "center" "ctas";min-height:auto;padding-top:110px}.cl-title{white-space:normal}.cl-tag{justify-self:start;margin-top:0}.cl-card{justify-self:start;margin-top:clamp(200px,60vw,360px)}.cl-center{justify-self:start}}

.q .aud{margin-top:auto}
.q .aud+.who{margin-top:0}

/* ===== v5 ===== */
.hero .inner{padding-bottom:120px}
.hero .inner .cue{position:static;transform:none;left:auto;bottom:auto}
/* light-up tags */
.ftag{top:50%;left:50%;opacity:0;transform:translate(-50%,-50%) translate(var(--x,0px),var(--y,0px));animation:none;transition:none;border-color:rgba(255,255,255,.08)}
.ftag.still{opacity:1}
.ftag.live{animation:tagLife var(--dur,6s) cubic-bezier(.4,0,.2,1) forwards}
.ftag.live i{animation:tagDot var(--dur,6s) ease-in-out forwards}
@keyframes tagLife{
 0%{opacity:0;transform:translate(-50%,-50%) translate(var(--x),var(--y)) translateY(16px) scale(.94);filter:blur(6px);box-shadow:none}
 16%{opacity:1;filter:blur(0)}
 38%{box-shadow:0 0 0 1px rgba(255,74,2,.35),0 0 28px -6px rgba(255,74,2,.75);border-color:rgba(255,74,2,.45)}
 62%{box-shadow:0 0 0 1px rgba(255,74,2,.1),0 0 0 0 rgba(255,74,2,0);border-color:rgba(255,255,255,.08)}
 84%{opacity:1;filter:blur(0)}
 100%{opacity:0;transform:translate(-50%,-50%) translate(var(--x),var(--y)) translateY(-18px) scale(.97);filter:blur(5px)}
}
@keyframes tagDot{0%,20%{box-shadow:0 0 4px -1px #FF4A02}38%{box-shadow:0 0 16px 2px #FF6A2A;transform:scale(1.25)}60%,100%{box-shadow:0 0 6px -1px #FF4A02;transform:none}}
/* about: two portraits side by side */
.about3{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(36px,5vw,80px);align-items:center}
.duo3{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pp{position:relative;margin:0;aspect-ratio:3/4.6;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:radial-gradient(70% 55% at 50% 30%,rgba(255,74,2,.22),transparent 70%),linear-gradient(180deg,#1b1b1e,#0c0c0d);transition:transform .7s var(--ease),border-color .5s}
.pp:hover{transform:translateY(-6px);border-color:rgba(255,74,2,.4)}
.pp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.pp:hover img{transform:scale(1.04)}
.pp.has-img .nm{background:linear-gradient(transparent,rgba(6,6,8,.78));color:#fff}
.pp.has-img .nm span{color:#d0d1d4}
.pp .ph{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(52px,6vw,90px);font-weight:500;letter-spacing:-.05em;color:rgba(255,255,255,.08)}
.pp .ph small{position:absolute;top:16px;left:16px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#6f7277;padding:5px 10px;border:1px dashed rgba(255,255,255,.14);border-radius:999px}
.pp .nm{position:absolute;left:0;right:0;bottom:0;padding:60px 20px 20px;background:linear-gradient(transparent,rgba(0,0,0,.85));display:flex;flex-direction:column;gap:2px}
.pp .nm b{font-size:19px;font-weight:500;letter-spacing:-.03em}
.pp .nm span{font-size:12px;color:#a9abaf}
.about3 .txt{display:flex;flex-direction:column;gap:18px}
.about3 .txt p{color:#c4c5c8;font-size:15px;line-height:1.72;max-width:52ch}
.h-about{font-size:clamp(26px,2.25vw,36px)}
@media(max-width:900px){.about3{grid-template-columns:1fr}.h-about{white-space:normal}}


/* ===== theme toggle ===== */
.thm{pointer-events:auto;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:#fff;transition:background .3s,transform .4s var(--ease)}
.thm:hover{transform:rotate(18deg)}
.thm svg{width:17px;height:17px;grid-area:1/1;transition:opacity .35s,transform .5s var(--ease)}
.thm .i-moon{opacity:0;transform:rotate(-60deg) scale(.6)}
:root[data-theme="light"] .thm .i-sun{opacity:0;transform:rotate(60deg) scale(.6)}
:root[data-theme="light"] .thm .i-moon{opacity:1;transform:none}
html.theming,html.theming *{transition:background-color .5s ease,color .5s ease,border-color .5s ease,fill .5s ease,box-shadow .5s ease,opacity .35s ease,transform .5s var(--ease)!important}

/* ===== LIGHT THEME ===== */
:root[data-theme="light"]{
  --night:#F4F3EF;--line:rgba(27,27,27,.1);--muted:#5F6267;--card:#FFFFFF;--card2:#FFFFFF;
  color-scheme:light;
}
:root[data-theme="light"] body{background:#F4F3EF;color:#1B1B1B}
:root[data-theme="light"] .soft{color:rgba(27,27,27,.38)}
:root[data-theme="light"] .glass{background:rgba(255,255,255,.72);border-color:rgba(27,27,27,.08);box-shadow:0 6px 24px -12px rgba(27,27,27,.18)}
:root[data-theme="light"] .thm,:root[data-theme="light"] .mbtn{color:#1B1B1B}
:root[data-theme="light"] .mbtn .g span{background:#1B1B1B}
:root[data-theme="light"] .lang button{color:#6f7277}
:root[data-theme="light"] .lang button[aria-pressed="true"]{color:#1B1B1B;background:rgba(255,74,2,.12)}
:root[data-theme="light"] .wa{color:#1B1B1B}
:root[data-theme="light"] .wa:hover{background:rgba(255,255,255,.9);border-color:rgba(37,211,102,.5)}
:root[data-theme="light"] .scrim{background:rgba(244,243,239,.6)}
:root[data-theme="light"] .panel nav a{color:#2a2b2f}
:root[data-theme="light"] .panel nav a:hover{color:#000}
:root[data-theme="light"] .panel .who .mk{background:#F1EFEA}
:root[data-theme="light"] .panel .who b{color:#1B1B1B}
:root[data-theme="light"] .soc a{color:#2a2b2f;border-color:rgba(27,27,27,.12)}
:root[data-theme="light"] .panel .feat{border-left-color:rgba(27,27,27,.08)}
:root[data-theme="light"] .panel .feat a{border-bottom-color:rgba(27,27,27,.08)}
:root[data-theme="light"] .feat-ph{background:radial-gradient(60% 70% at 50% 40%,rgba(255,74,2,.22),transparent 70%),repeating-linear-gradient(135deg,rgba(27,27,27,.04) 0 10px,transparent 10px 20px),#ECEAE5}

/* buttons, badge, tags */
:root[data-theme="light"] .btn-g{color:#1B1B1B;border-color:rgba(27,27,27,.16);background:rgba(255,255,255,.6)}
:root[data-theme="light"] .btn-g:hover{background:#fff;border-color:rgba(27,27,27,.3)}
:root[data-theme="light"] .btn-g i{background:rgba(27,27,27,.08)}
:root[data-theme="light"] .badge{color:#2a2b2f;background:rgba(255,74,2,.08);border-color:rgba(255,74,2,.28)}
:root[data-theme="light"] .ftag{color:#2a2b2f}
:root[data-theme="light"] .cue{color:#6f7277}
:root[data-theme="light"] .cue i{background:linear-gradient(#6f7277,transparent)}

/* hero */
:root[data-theme="light"] .hero{background:radial-gradient(ellipse 50% 45% at 50% 50%,rgba(255,74,2,.12),transparent 70%),#F4F3EF}
:root[data-theme="light"] .hero .lead{color:#45484d}
:root[data-theme="light"] .fx::before{opacity:.75}

/* experts, projects */
:root[data-theme="light"] .expert{background:#fff;border-color:rgba(27,27,27,.08);box-shadow:0 20px 40px -24px rgba(27,27,27,.25)}
:root[data-theme="light"] .xph{background:radial-gradient(70% 55% at 50% 32%,rgba(255,74,2,.16),transparent 70%),linear-gradient(180deg,#F3F1EC,#E6E3DC)}
:root[data-theme="light"] .xph b,:root[data-theme="light"] .pp .ph,:root[data-theme="light"] .pc2 .ph{color:rgba(27,27,27,.1)}
:root[data-theme="light"] .xph small,:root[data-theme="light"] .pp .ph small{border-color:rgba(27,27,27,.18)}
:root[data-theme="light"] .proj,:root[data-theme="light"] .pcard,:root[data-theme="light"] .q,:root[data-theme="light"] .bx{box-shadow:0 24px 50px -30px rgba(27,27,27,.22);border-color:rgba(27,27,27,.08)}
:root[data-theme="light"] .proj .media,:root[data-theme="light"] .pcard .media,:root[data-theme="light"] .gallery .shot{background:#EFEDE8}
:root[data-theme="light"] .ph-media{border-color:rgba(27,27,27,.16);color:#5F6267;background:rgba(255,255,255,.35)}
:root[data-theme="light"] .ph-media small{color:#8a8c90}
:root[data-theme="light"] .chips span{color:#3d4045;border-color:rgba(27,27,27,.12)}
:root[data-theme="light"] .meta{border-bottom-color:rgba(27,27,27,.1)}

/* about */
:root[data-theme="light"] .pp{border-color:rgba(27,27,27,.08);background:radial-gradient(70% 55% at 50% 30%,rgba(255,74,2,.16),transparent 70%),linear-gradient(180deg,#F3F1EC,#E4E1DA);box-shadow:0 30px 60px -36px rgba(27,27,27,.35)}
:root[data-theme="light"] .about3 .txt p{color:#3d4045}

/* process */
:root[data-theme="light"] .disc{background:radial-gradient(circle at 50% 40%,#FFFFFF,#EFEDE8 72%);border-color:rgba(27,27,27,.08);box-shadow:0 0 0 1px rgba(255,74,2,.08),0 30px 70px -30px rgba(27,27,27,.35)}
:root[data-theme="light"] .bento2 .bx.hug::before{border-color:rgba(27,27,27,.12)}
:root[data-theme="light"] .bx .avs i{border-color:#fff}
:root[data-theme="light"] .ready{background:linear-gradient(110deg,rgba(255,74,2,.14),rgba(255,74,2,.02) 60%),#fff}

/* accordions */
:root[data-theme="light"] .acc summary .pm::before,:root[data-theme="light"] .acc summary .pm::after{background:#3d4045}
:root[data-theme="light"] .acc details[open] summary .pm::before,:root[data-theme="light"] .acc details[open] summary .pm::after{background:#fff}
:root[data-theme="light"] .acc details[open] summary .t{color:#000}

/* testimonials */
:root[data-theme="light"] .q .av{background:#F1EFEA;color:#D64005}
:root[data-theme="light"] .aud{background:#FAF9F6;border-color:rgba(27,27,27,.08)}
:root[data-theme="light"] .aud .wave i{background:rgba(27,27,27,.18)}
:root[data-theme="light"] .aud.playing .wave i{background:#FF4A02}

/* final (Clair) */
:root[data-theme="light"] .final.cl{background:#F2F0EB}
:root[data-theme="light"] .cl-bg{background:radial-gradient(45% 55% at 52% 52%,rgba(255,74,2,.18),transparent 70%),radial-gradient(40% 40% at 85% 85%,rgba(193,8,1,.12),transparent 70%),radial-gradient(35% 35% at 10% 20%,rgba(217,195,171,.35),transparent 70%)}
:root[data-theme="light"] .cl-title{text-shadow:0 2px 30px rgba(255,255,255,.6)}
:root[data-theme="light"] .cl-title .soft{color:rgba(27,27,27,.42)}
:root[data-theme="light"] .cl-tag{color:#2a2b2f}
:root[data-theme="light"] .cl-left,:root[data-theme="light"] .cl-center{color:#2a2b2f;text-shadow:0 1px 14px rgba(255,255,255,.95)}
:root[data-theme="light"] .cl-card{border-color:rgba(27,27,27,.1);box-shadow:0 30px 60px -28px rgba(27,27,27,.45)}

/* contact, footer, pages */
:root[data-theme="light"] .mail{color:#2a2b2f;border-color:rgba(27,27,27,.12);background:rgba(255,255,255,.7)}
:root[data-theme="light"] .copy{background:rgba(27,27,27,.07);color:#1B1B1B}
:root[data-theme="light"] .foot .logo{color:#1B1B1B}
:root[data-theme="light"] .foot ul{color:#3d4045}
:root[data-theme="light"] .foot ul a:hover{color:#000}
:root[data-theme="light"] .filters button{color:#3d4045}
:root[data-theme="light"] .filters button[aria-pressed="true"]{color:#1B1B1B}
:root[data-theme="light"] .back:hover{color:#000}
:root[data-theme="light"] .facts{background:#fff}
:root[data-theme="light"] .toast{background:#1B1B1B;color:#fff}
:root[data-theme="light"] .pp .nm,:root[data-theme="light"] .expert figcaption{background:linear-gradient(rgba(244,243,239,0),rgba(244,243,239,.94) 70%);color:#1B1B1B}
:root[data-theme="light"] .pp .nm span,:root[data-theme="light"] .expert figcaption span{color:#5F6267}
:root[data-theme="light"] .xph small,:root[data-theme="light"] .pp .ph small{color:#7a7c80}
:root[data-theme="light"] .panel .feat .cap{background:linear-gradient(rgba(244,243,239,0),rgba(244,243,239,.94) 65%);color:#1B1B1B}
:root[data-theme="light"] .panel .feat .cap small{color:#6f7277}
:root[data-theme="light"] .pp.has-img{border-color:rgba(27,27,27,.06)}
:root[data-theme="light"] .pp.has-img .nm{background:linear-gradient(transparent,rgba(6,6,8,.72));color:#fff}
:root[data-theme="light"] .pp.has-img .nm span{color:#d0d1d4}

/* ===== v7 ===== */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* hero height: less air under the scroll cue */
.hero{min-height:max(700px,92svh)}
.hero .inner{padding-bottom:56px}
/* partners' cursors */
.cursors{position:absolute;inset:0;z-index:4;pointer-events:none;transition:opacity .3s}
.cur{position:absolute;left:0;top:0;opacity:0;transition:opacity .7s;will-change:transform}
.cursors.on .cur{opacity:1}
.cur svg{display:block;width:22px;height:24px;overflow:visible;filter:drop-shadow(0 3px 6px rgba(0,0,0,.35));transform-origin:3px 3px;transition:transform .15s}
.cur path{stroke-width:1.5;stroke-linejoin:round}
.cur-f path{fill:#FF4A02;stroke:#fff}
.cur-c path{fill:#F6F6F6;stroke:#1B1B1B}
.cur span{position:absolute;left:17px;top:21px;padding:4px 9px;border-radius:6px;font-size:11.5px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;box-shadow:0 6px 16px -6px rgba(0,0,0,.45)}
.cur-f span{background:#FF4A02;color:#1B1B1B}
.cur-c span{background:#F6F6F6;color:#1B1B1B}
.cur.down svg{transform:scale(.88)}
.cur::after{content:"";position:absolute;left:-9px;top:-8px;width:24px;height:24px;border-radius:50%;border:2px solid #FF4A02;opacity:0;pointer-events:none}
.cur-c::after{border-color:#F6F6F6}
.cur.clk::after{animation:curClk .6s ease-out}
@keyframes curClk{0%{opacity:.9;transform:scale(.3)}100%{opacity:0;transform:scale(1.5)}}
.sel{position:absolute;left:0;top:0;width:0;height:0;border:1.5px solid #FF4A02;background:rgba(255,74,2,.035);opacity:0;transition:opacity .4s}
.sel.on{opacity:1}
.sel .h{position:absolute;width:9px;height:9px;background:#fff;border:1.5px solid #FF4A02;border-radius:1px}
.sel .tl{left:-5px;top:-5px}.sel .tr{right:-5px;top:-5px}.sel .bl{left:-5px;bottom:-5px}.sel .br{right:-5px;bottom:-5px}
.sel .tm{left:calc(50% - 4.5px);top:-5px}.sel .bm{left:calc(50% - 4.5px);bottom:-5px}.sel .ml{left:-5px;top:calc(50% - 4.5px)}.sel .mr{right:-5px;top:calc(50% - 4.5px)}
.sel b{position:absolute;left:50%;top:100%;transform:translate(-50%,-50%);padding:3px 8px;border-radius:5px;background:#FF4A02;color:#fff;font-size:11px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.btn-p.ghost{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,255,255,.2) inset,0 18px 46px -8px rgba(255,74,2,.95)}
.btn-g.ghost{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3)}
@media(max-width:760px){.cursors{display:none}}
/* big numbers */
.nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(64px,7vw,104px)}
.num{padding:6px clamp(20px,3vw,44px) 6px;border-left:1px solid var(--line)}
.num:first-child{padding-left:0;border-left:0}
.num .n{display:flex;align-items:flex-start;font-family:var(--display);font-weight:400;font-size:clamp(64px,8vw,124px);line-height:1;letter-spacing:.005em;white-space:nowrap}
.num .u{white-space:pre}
.num p{margin-top:16px;color:var(--muted);font-size:15px;line-height:1.5;max-width:31ch}
.odo{display:inline-flex}
.dg{display:inline-flex;justify-content:center;height:1em;overflow:hidden}
.reel{display:flex;flex-direction:column;transform:translateY(0);transition:transform var(--dur,1.8s) cubic-bezier(.12,.72,.14,1)}
.reel span{display:block;height:1em;text-align:center}
.nums.go .reel{transform:translateY(calc(var(--to) * -1em));animation:odoBlur var(--dur,1.8s) ease-out}
@keyframes odoBlur{0%{filter:blur(0)}12%{filter:blur(1.6px)}65%{filter:blur(.4px)}100%{filter:blur(0)}}
@media(max-width:760px){.nums{grid-template-columns:1fr}.num{padding:28px 0;border-left:0;border-top:1px solid var(--line)}.num:first-child{border-top:0;padding-top:0}}
@media(prefers-reduced-motion:reduce){.reel{transition:none}.nums.go .reel{animation:none}}
/* process: full logo in the disc, partners in the card */
.disc .slot.logo{left:16%;top:36.2%;width:68%;aspect-ratio:482.973/195.78}
.bx .avs img{width:40px;height:40px;border-radius:50%;object-fit:cover;margin-right:-10px;border:2px solid var(--card2);background:#2a2a2e}
.bx .avs .av-f{object-position:50% 28%}
.bx .avs .av-c{object-position:58% 34%}
/* light theme */
:root[data-theme="light"] .cur-c path{fill:#1B1B1B;stroke:#fff}
:root[data-theme="light"] .cur-c span{background:#1B1B1B;color:#fff}
:root[data-theme="light"] .cur-c::after{border-color:#1B1B1B}
:root[data-theme="light"] .cur svg{filter:drop-shadow(0 3px 6px rgba(27,27,27,.25))}
:root[data-theme="light"] .btn-g.ghost{background:#fff;border-color:rgba(27,27,27,.3)}
:root[data-theme="light"] .bx .avs img{border-color:#fff}

/* ===== v8: Ouder-style big numbers in our type ===== */
.nums{position:relative;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:clamp(80px,8vw,124px)}
.num,.num:first-child{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;padding:0;border:0}
.bn{display:inline-flex;align-items:baseline;font-family:var(--body);font-weight:500;font-size:clamp(56px,8.2vw,132px);letter-spacing:-.055em;line-height:.9;white-space:nowrap;padding:.04em .08em .1em;color:#fff;background:linear-gradient(176deg,#fff 50%,#FFC4A6 80%,#FF4A02);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:filter .4s}
.bn .u{white-space:pre}
.num:hover .bn,.num.ghost .bn{filter:drop-shadow(0 0 26px rgba(255,74,2,.55))}
.num .cap{margin:0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;line-height:1.6;color:var(--muted);max-width:none}
.bx .big.bn{display:inline-block;font-size:clamp(44px,5vw,64px);letter-spacing:-.05em;line-height:1;padding:0;background:none;-webkit-text-fill-color:currentColor;color:inherit}
.hero .cursors{display:none}
.nums .cursors{inset:-56px -36px}
:root[data-theme="light"] .bn{background:linear-gradient(176deg,#1B1B1B 48%,#7A2E0E 80%,#FF4A02);-webkit-background-clip:text;background-clip:text}
:root[data-theme="light"] .bx .big.bn{background:none}
:root[data-theme="light"] .num:hover .bn,:root[data-theme="light"] .num.ghost .bn{filter:drop-shadow(0 0 22px rgba(255,74,2,.35))}
@media(max-width:760px){.nums{grid-template-columns:1fr;gap:48px}.num,.num:first-child{padding:0;border:0}}

/* ===== v9 ===== */
/* experts: pause, glow, details */
.xtrack{padding-block:30px}
.expert{transition:transform .6s var(--ease),border-color .4s,box-shadow .5s,opacity .5s,filter .5s;outline:none}
.xtrack:has(.expert:hover) .expert:not(:hover){opacity:.42;filter:saturate(.5)}
.expert:hover,.expert:focus-visible{transform:translateY(-8px) scale(1.04);z-index:2;border-color:rgba(255,74,2,.6);box-shadow:0 0 0 1px rgba(255,74,2,.35),0 0 50px -6px rgba(255,74,2,.6),0 30px 60px -30px rgba(0,0,0,.8)}
.expert figcaption{transition:background .5s}
.expert:hover figcaption,.expert:focus-visible figcaption{background:linear-gradient(transparent,rgba(0,0,0,.9) 30%)}
.xmore{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .55s var(--ease),opacity .4s,margin .55s var(--ease)}
.xin{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:8px}
.expert:hover .xmore,.expert:focus-visible .xmore{grid-template-rows:1fr;opacity:1;margin-top:10px}
.xh{font-size:12px;font-weight:600;color:var(--orange-300);letter-spacing:.01em}
.expert figcaption .xh span{color:inherit}
.xb{margin:0;font-size:13px;line-height:1.5;color:#c9cacd}
:root[data-theme="light"] .expert:hover,:root[data-theme="light"] .expert:focus-visible{box-shadow:0 0 0 1px rgba(255,74,2,.3),0 0 46px -8px rgba(255,74,2,.45),0 30px 60px -30px rgba(27,27,27,.35)}
:root[data-theme="light"] .expert:hover figcaption,:root[data-theme="light"] .expert:focus-visible figcaption{background:linear-gradient(rgba(244,243,239,0),rgba(250,249,246,.97) 30%)}
:root[data-theme="light"] .xh,:root[data-theme="light"] .expert figcaption .xh span{color:#D64005}
:root[data-theme="light"] .xb{color:#3d4045}
/* testimonials rail */
.qrail{margin-inline:calc(50% - 50vw);overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.qtrack{display:flex;align-items:stretch;gap:16px;width:max-content;padding-block:8px;animation:tick 80s linear infinite}
.qrail:hover .qtrack,.qrail:has(.aud.playing) .qtrack,.qrail:focus-within .qtrack{animation-play-state:paused}
.qtrack .q{width:clamp(290px,28vw,380px);flex:none}
.qtop{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.qtype{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;border:1px solid var(--line);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.qtype svg{width:13px;height:13px}
.q-aud{background:radial-gradient(120% 75% at 100% 0%,rgba(255,74,2,.17),transparent 60%),var(--card);border-color:rgba(255,74,2,.28)}
.q-aud .qtype{color:#FF895A;border-color:rgba(255,74,2,.42);background:rgba(255,74,2,.08)}
@media(prefers-reduced-motion:reduce){.qtrack{animation:none}.qrail{overflow-x:auto}}
:root[data-theme="light"] .q-aud{background:radial-gradient(120% 75% at 100% 0%,rgba(255,74,2,.11),transparent 60%),#fff;border-color:rgba(255,74,2,.25)}
:root[data-theme="light"] .q-aud .qtype{color:#D64005}
/* final: sentence-case title + quick form */
.cl-title{text-transform:none;font-weight:500;letter-spacing:-.045em;line-height:1}
.cl-form{grid-area:card;align-self:end;justify-self:end;width:min(100%,360px);padding:24px;border-radius:22px;display:flex;flex-direction:column;gap:14px;background:rgba(16,16,18,.7)}
.cf-k{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-300)}
.cf-k i{width:6px;height:6px;border-radius:50%;background:var(--orange);box-shadow:0 0 10px var(--orange)}
.cf-sub{margin:0;font-size:13px;line-height:1.5;color:#b9bbbf}
.fld{display:flex;flex-direction:column;gap:7px;font-size:12.5px;font-weight:600}
.fld em{font-style:normal;font-weight:400;color:var(--muted)}
.fld input,.fld textarea{width:100%;box-sizing:border-box;font:inherit;font-size:14px;font-weight:400;color:inherit;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.13);border-radius:12px;padding:12px 14px;outline:none;transition:border-color .25s,box-shadow .25s;resize:vertical}
.fld input::placeholder,.fld textarea::placeholder{color:#6f7277}
.fld input:focus,.fld textarea:focus{border-color:rgba(255,74,2,.7);box-shadow:0 0 0 3px rgba(255,74,2,.18)}
.fld.err input{border-color:#ff5a4a;box-shadow:0 0 0 3px rgba(255,90,74,.15)}
.cf-go{width:100%;margin-top:2px}
html.modal-open{overflow:hidden}
.qmodal{border:0;padding:0;margin:0;background:transparent;color:inherit;width:100%;height:100%;max-width:none;max-height:none;inset:0}
.qmodal[open]{display:grid;place-items:center}
.qmodal::backdrop{background:rgba(6,6,8,.5);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.qm{position:relative;width:min(680px,calc(100% - 32px));max-height:calc(100svh - 40px);overflow:auto;box-sizing:border-box;padding:clamp(22px,3vw,36px);border-radius:26px;background:#121214;border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 120px -20px rgba(0,0,0,.85);animation:qmIn .5s var(--ease)}
@keyframes qmIn{from{opacity:0;transform:translateY(18px) scale(.98)}}
.qm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}
.qm-head .h{font-size:clamp(24px,2.4vw,32px);margin-top:10px}
.qm-x{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:transparent;color:inherit;font-size:22px;line-height:1;cursor:pointer;transition:border-color .25s,transform .4s var(--ease)}
.qm-x:hover{border-color:rgba(255,255,255,.4);transform:rotate(90deg)}
.qm-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.qm-set{border:0;padding:0;margin:22px 0 0;min-width:0}
.qm-set legend{padding:0;margin-bottom:10px;font-size:12.5px;font-weight:600}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pill{position:relative;cursor:pointer}
.pill input{position:absolute;opacity:0;pointer-events:none}
.pill span{display:inline-block;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.16);font-size:12.5px;font-weight:500;transition:background .25s,border-color .25s,color .25s}
.pill:hover span{border-color:rgba(255,255,255,.36)}
.pill input:checked+span{background:rgba(255,74,2,.16);border-color:rgba(255,74,2,.75);color:#fff}
.pill input:focus-visible+span{box-shadow:0 0 0 3px rgba(255,74,2,.3)}
.qm-about{margin-top:22px}
.qm-send{width:100%;margin-top:24px}
.qm-note{margin:12px 0 0;font-size:12px;color:var(--muted);text-align:center}
.qm-done{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:24px 8px 8px}
.qm-done[hidden]{display:none}
.qm-done p{margin:0;max-width:40ch;color:#c4c5c8}
.qm-ok{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-size:24px;color:#fff;background:var(--orange);box-shadow:0 12px 34px -8px rgba(255,74,2,.75)}
@media(max-width:640px){.qm-grid{grid-template-columns:1fr}.cl-form{justify-self:stretch;width:auto}}
:root[data-theme="light"] .cl-form{background:rgba(255,255,255,.78)}
:root[data-theme="light"] .cf-k{color:#D64005}
:root[data-theme="light"] .cf-sub,:root[data-theme="light"] .qm-done p{color:#45484d}
:root[data-theme="light"] .fld input,:root[data-theme="light"] .fld textarea{background:rgba(255,255,255,.75);border-color:rgba(27,27,27,.15)}
:root[data-theme="light"] .fld input::placeholder,:root[data-theme="light"] .fld textarea::placeholder{color:#9a9ca0}
:root[data-theme="light"] .qmodal::backdrop{background:rgba(244,243,239,.45)}
:root[data-theme="light"] .qm{background:#fff;border-color:rgba(27,27,27,.08);box-shadow:0 40px 120px -30px rgba(27,27,27,.45)}
:root[data-theme="light"] .qm-x{border-color:rgba(27,27,27,.15)}
:root[data-theme="light"] .pill span{border-color:rgba(27,27,27,.18)}
:root[data-theme="light"] .pill:hover span{border-color:rgba(27,27,27,.4)}
:root[data-theme="light"] .pill input:checked+span{background:rgba(255,74,2,.1);color:#1B1B1B}
/* experts with photos: dark caption in both themes */
.expert.has-img img{filter:saturate(.92)}
:root[data-theme="light"] .expert.has-img figcaption{background:linear-gradient(transparent,rgba(6,6,8,.82));color:#fff}
:root[data-theme="light"] .expert.has-img:hover figcaption,:root[data-theme="light"] .expert.has-img:focus-visible figcaption{background:linear-gradient(transparent,rgba(6,6,8,.9) 30%)}
:root[data-theme="light"] .expert.has-img .xh,:root[data-theme="light"] .expert.has-img figcaption .xh span{color:#FF895A}
:root[data-theme="light"] .expert.has-img .xb{color:#d0d1d4}

/* ===== v10 ===== */
/* glows cross section edges instead of being cut */
.fx{overflow:visible;overflow-x:clip}
.fx::before{-webkit-mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent)}
.final.cl{background:var(--night)}
:root[data-theme="light"] .final.cl{background:#F4F3EF}
/* draggable rails */
.is-drag{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}
.is-drag.grabbing{cursor:grabbing}
.is-drag>.xtrack,.is-drag>.qtrack,.is-drag>.ctrack{animation:none!important;will-change:transform}
.is-drag button{cursor:pointer}
/* more experts */
.cl-more{margin-top:clamp(36px,4.5vw,60px);display:flex;flex-direction:column;gap:12px}
.clm-k{margin:0 0 10px;padding-inline:20px;text-align:center;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.crail{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.ctrack{display:flex;gap:12px;width:max-content;padding-block:2px}
.cpill{display:inline-flex;align-items:center;gap:12px;padding:7px 20px 7px 7px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.025);white-space:nowrap;transition:border-color .3s,background .3s}
.cpill:hover{border-color:rgba(255,74,2,.45);background:rgba(255,74,2,.06)}
.cpill img{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none}
.cpill b{display:block;font-size:14px;font-weight:600;letter-spacing:-.015em;line-height:1.3}
.cpill small{display:block;font-size:12px;color:var(--muted);line-height:1.3}
.cpill em{font-style:normal;font-weight:600;color:var(--orange-300);margin-left:4px}
:root[data-theme="light"] .cpill{background:#fff;border-color:rgba(27,27,27,.08);box-shadow:0 8px 20px -14px rgba(27,27,27,.3)}
:root[data-theme="light"] .cpill em{color:#D64005}
/* form highlight when a CTA brings you here */
.cl-form.ping{animation:formPing 1.4s var(--ease)}
@keyframes formPing{0%{box-shadow:0 0 0 0 rgba(255,74,2,.6)}40%{box-shadow:0 0 0 10px rgba(255,74,2,.18),0 0 60px -10px rgba(255,74,2,.6)}100%{box-shadow:0 0 0 0 rgba(255,74,2,0)}}

/* ---------- portfólio vindo da central (/admin → projetos.json) ---------- */
.media.has-cover{padding:0!important}
.media.has-cover::before{display:none}
.media.has-cover img.cover{position:absolute;inset:0;width:100%;height:100%;min-width:0;object-fit:cover;border-radius:0;box-shadow:none;transform:none;transition:transform 1.2s var(--ease)}
.proj:hover .media.has-cover img.cover,.pcard:hover .media.has-cover img.cover{transform:scale(1.04)}
#projeto>.h-xl{margin-top:16px}
#projeto>.lead{margin-top:22px}
@media(min-width:761px){.facts{grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}}
.gallery.real{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.gallery.real.one{grid-template-columns:1fr}
.gallery.real .shot.wide{grid-column:1/-1}
.gallery.real .shot{display:block;padding:0;min-height:0;margin:0;background:none}
.gallery.real .shot::before{display:none}
.gallery.real .shot img{display:block;width:100%;height:auto;border-radius:0;box-shadow:none}
@media(max-width:760px){.gallery.real{grid-template-columns:1fr}}

/* ---------- home: grade de projetos 2 colunas, cards 16:9 iguais, quase de ponta a ponta ---------- */
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
#projetos .mwrap{max-width:1920px;margin:clamp(40px,5vw,64px) auto 0;padding:0 clamp(12px,2.6vw,44px)}
#projetos .mgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,1.3vw,20px)}
#projetos .mwrap+.wrap .center{margin-top:clamp(36px,4vw,56px)}
.mcard{display:block;color:#F4F3EF}
.mcard .ph{position:relative;display:block;overflow:hidden;border-radius:16px;background:#0e0e0f;aspect-ratio:16/9;isolation:isolate}
.mcard .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),filter .7s var(--ease)}
.mcard .ph::after{content:"";position:absolute;inset:0;z-index:1;background:rgba(10,10,11,.74);opacity:0;transition:opacity .6s var(--ease)}
.mcard:hover .ph img{transform:scale(1.05);filter:grayscale(1)}
.mcard:hover .ph::after,.mcard:focus-visible .ph::after{opacity:1}
.mcard .ov{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:clamp(18px,2.2vw,34px);display:grid;gap:10px;justify-items:start;opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .6s var(--ease)}
.mcard .ov small{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-300)}
.mcard .ov b{font-size:clamp(28px,3vw,52px);font-weight:500;letter-spacing:-.04em;line-height:1;text-wrap:balance}
.mcard:hover .ov,.mcard:focus-visible .ov{opacity:1;transform:none}
/* stroke laranja correndo em volta do card em foco */
.mcard .ring{position:absolute;inset:0;z-index:3;border-radius:inherit;padding:2px;pointer-events:none;background:conic-gradient(from var(--ang),rgba(255,74,2,0) 0deg,rgba(255,74,2,0) 250deg,var(--orange) 320deg,#FFC4A6 350deg,rgba(255,74,2,0) 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s;animation:f2c-ring 2.6s linear infinite paused}
.mcard:hover .ring,.mcard:focus-visible .ring{opacity:1;animation-play-state:running}
@keyframes f2c-ring{to{--ang:360deg}}
.vp-cursor{position:fixed;left:0;top:0;z-index:70;pointer-events:none;will-change:transform}
.vp-cursor span{display:block;padding:13px 20px;border-radius:10px;background:var(--orange);color:#fff;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;box-shadow:0 10px 30px rgba(0,0,0,.35);opacity:0;transform:scale(.6);transform-origin:0 0;transition:opacity .25s,transform .35s var(--ease)}
.vp-cursor.on span{opacity:1;transform:none}
.pcard .media.has-cover{aspect-ratio:16/9}
@media(hover:none){.mcard .ov{opacity:1;transform:none;background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.75));padding-top:64px}}
@media(max-width:760px){#projetos .mgrid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.mcard .ph img,.mcard .ph::after,.mcard .ov,.vp-cursor span{transition:none}.mcard .ring{animation:none;background:none;border:2px solid var(--orange);padding:0}}

/* ---------- Sobre nós → Nosso processo: vão menor só entre essas duas seções ---------- */
#sobre{padding-bottom:clamp(40px,4vw,56px)}
#processo{padding-top:clamp(48px,5vw,72px)}
