@import url("brand/variance-tokens.css");

:root{
  --t2: rgba(19,19,26,0.70);
  --t3: rgba(19,19,26,0.62);
  --on-dark: #FFFFFF;
  --on-dark-2: rgba(255,255,255,0.76);
  --on-dark-line: rgba(255,255,255,0.14);
  --sheet-shadow: 0 2px 6px rgba(67,38,130,0.06), 0 22px 48px -22px rgba(67,38,130,0.30);
  --gutter: clamp(20px, 4vw, 40px);
  --maxw: 1320px;
  --sec-y: clamp(88px, 11vw, 148px);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:88px;}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto;}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;caret-color:var(--pink);}
::selection{background:var(--pink-100);color:var(--ink);}
:focus-visible{outline:2px solid var(--pink);outline-offset:3px;border-radius:6px;}
html{scrollbar-color:var(--violet-grey-300) transparent;scrollbar-width:thin;}
img{display:block;max-width:100%;}
figure{margin:0;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{font-family:var(--font-display);font-weight:600;margin:0;text-wrap:balance;}
p{margin:0;text-wrap:pretty;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px;font-weight:600;font-size:14px;}
.skip:focus{top:12px;}

/* type */
.h2{font-size:clamp(36px, 4.6vw, 64px);line-height:0.98;letter-spacing:-0.028em;}
.h3{font-size:clamp(21px, 1.8vw, 25px);line-height:1.12;letter-spacing:-0.015em;}
.lead{font-size:clamp(18px, 1.5vw, 21px);line-height:1.5;color:var(--t2);}
.ill{font-size:12.5px;color:var(--t3);}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:14px;font-family:var(--font-display);font-weight:600;font-size:16px;line-height:1.2;word-spacing:0.1em;border-radius:999px;padding:8px 8px 8px 26px;min-height:56px;border:1px solid transparent;cursor:pointer;transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out), background-color .2s;}
.btn{max-width:100%;text-align:left;}
.btn .ar{width:40px;height:40px;border-radius:999px;display:grid;place-items:center;flex:none;transition:transform .25s var(--ease-out);}
.btn .ar svg{width:18px;height:18px;}
.btn-pink{background:var(--pink);color:#fff;box-shadow:0 12px 28px -10px rgba(255,58,94,0.55);}
.btn-pink .ar{background:rgba(255,255,255,0.2);}
.btn-pink:hover{transform:translateY(-2px);box-shadow:0 18px 36px -12px rgba(255,58,94,0.6);}
.btn-pink:hover .ar{transform:translateX(3px);}
.btn-pink:active{transform:translateY(0);}
.alt-link{font-size:15px;color:var(--t2);border-bottom:1px solid var(--line);padding-bottom:2px;transition:color .2s, border-color .2s;}
.alt-link:hover{color:var(--ink);border-color:var(--pink);}
.tlink{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:600;font-size:15px;word-spacing:0.1em;color:var(--ink);}
.tlink svg{width:16px;height:16px;color:var(--pink);transition:transform .25s var(--ease-out);}
.tlink:hover svg{transform:translateX(4px);}
.tlink-dark{color:#fff;}
.tlink-dark svg{color:var(--pink-300);}

/* nav */
.nav{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid transparent;transition:border-color .25s;}
.nav.scrolled{border-color:var(--line);}
.nav-in{max-width:var(--maxw);margin:0 auto;padding:14px var(--gutter);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;}
.nav-logo img{height:34px;width:auto;}
.nav-links{display:flex;gap:30px;}
.nav-links a{font-size:14.5px;font-weight:500;color:var(--ink);position:relative;padding:6px 0;}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:var(--pink);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-out);}
.nav-links a:hover::after{transform:scaleX(1);}
.nav-cta{justify-self:end;visibility:hidden;transform:translateY(-6px);transition:transform .35s var(--ease-out);}
.nav.scrolled .nav-cta{visibility:visible;transform:none;}
.nav-cta .btn{min-height:44px;font-size:14px;padding:5px 5px 5px 18px;gap:10px;white-space:nowrap;}
.nav-cta .btn .ar{width:34px;height:34px;}
.nav-menu{display:none;justify-self:end;}
.nav-menu summary{list-style:none;cursor:pointer;width:44px;height:44px;border-radius:999px;border:1px solid var(--line);display:grid;place-items:center;}
.nav-menu summary::-webkit-details-marker{display:none;}
.nav-menu summary svg{width:20px;height:20px;}
.nav-menu .panel{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);padding:8px var(--gutter) 24px;display:flex;flex-direction:column;}
.nav-menu .panel a{font-family:var(--font-display);font-weight:600;font-size:22px;padding:12px 0;border-bottom:1px solid var(--line-2);}
.nav-menu .panel .btn{margin-top:18px;align-self:flex-start;}
@media (max-width: 960px){
  .nav-in{grid-template-columns:1fr auto;}
  .nav-links,.nav-cta{display:none;}
  .nav-menu{display:block;}
}

/* hero */
.hero{position:relative;overflow:hidden;background:#fff;padding:clamp(72px, 10vw, 128px) 0 clamp(56px, 7vw, 88px);}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.hero .veil{position:absolute;inset:0;pointer-events:none;background:radial-gradient(44% 34% at 50% 46%, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.62) 58%, rgba(255,255,255,0) 100%);}
.hero .wrap{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;}
.hero h1{font-size:clamp(40px, 5.6vw, 80px);line-height:0.95;letter-spacing:-0.034em;max-width:21ch;}
.hero h1 .hl{color:var(--pink);}
/* o texto de apoio ocupa a largura do título, nem mais nem menos */
.hero-copy{display:grid;justify-items:center;width:fit-content;max-width:100%;}
.hero .lead{width:0;min-width:100%;margin-top:28px;text-wrap:balance;}
.hero .ctas{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:40px;}
@media (max-width: 560px){.hero .ctas,.close .ctas{flex-direction:column;gap:18px;align-self:stretch;}.hero .btn,.close .btn{width:100%;justify-content:space-between;font-size:15px;text-wrap:balance;}}

/* logos */
.logos{background:#fff;padding:8px 0 clamp(64px, 8vw, 96px);}
.logos-h{font-weight:500;font-size:15px;color:var(--t2);text-align:center;margin-bottom:36px;}
.logo-wall ul{list-style:none;margin:0 auto;padding:0 var(--gutter);max-width:1320px;display:grid;grid-template-columns:repeat(8, minmax(0, 1fr));justify-items:center;align-items:center;gap:44px clamp(16px, 2.4vw, 40px);}
.logo-wall li{flex:none;opacity:0.82;transition:opacity .2s;}
.logo-wall li:hover{opacity:1;}
.logo-wall img{width:auto;max-width:100%;object-fit:contain;}
@media (max-width: 960px){.logo-wall ul{grid-template-columns:repeat(4, minmax(0, 1fr));gap:36px 24px;}}
@media (max-width: 560px){.logo-wall ul{gap:30px 14px;}.logo-wall img{transform:scale(0.8);}}

/* section shell */
.sec{padding:var(--sec-y) 0;}
.sec-paper{background:var(--paper);}
.sec-white{background:#fff;}
.sec-dark{background:var(--ink-surf);color:var(--on-dark);}
.sec-head{max-width:760px;}
.sec-head .lead{margin-top:22px;}
.sec-dark h2,.sec-dark h3{color:#fff;}
.sec-dark p,.sec-dark .lead{color:var(--on-dark-2);}

/* 2 · da IA à operação */
.vao{display:grid;gap:clamp(48px, 6vw, 88px);align-items:center;}
.vao > *,.why-item > *,.cycle-grid > *{min-width:0;}
@media (min-width: 1000px){.vao{grid-template-columns:0.82fr 1.18fr;}}
.vao-copy .h2{margin-bottom:30px;}
.vao-copy p{color:var(--t2);max-width:58ch;}
.vao-copy p + p{margin-top:18px;}
.vao-copy .mission{font-size:clamp(19px, 1.6vw, 22px);line-height:1.45;color:var(--ink);font-weight:500;}
.gapchart{background:#fff;border-radius:24px;padding:clamp(20px, 2.4vw, 30px);box-shadow:var(--sheet-shadow);}
.gc-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;font-size:13.5px;color:var(--t2);margin-bottom:18px;}
.gc-legend span{display:inline-flex;align-items:center;gap:8px;}
.gc-legend i{display:inline-block;width:22px;height:2.5px;border-radius:2px;}
.gc-legend .k-ia{background:var(--violet-500);}
.gc-legend .k-op{background:var(--pink);}
.gc-legend .k-dot{width:9px;height:9px;border-radius:999px;background:#fff;border:2px solid var(--violet-500);}
.gc-plot{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"y svg" ". x";column-gap:10px;row-gap:8px;}
.gc-ytitle{grid-area:y;writing-mode:vertical-rl;transform:rotate(180deg);justify-self:center;align-self:center;font-family:var(--font-mono);font-size:11.5px;color:var(--t3);white-space:nowrap;}
.gc-xtitle{grid-area:x;justify-self:center;font-family:var(--font-mono);font-size:11.5px;color:var(--t3);}
.gc-svg{grid-area:svg;position:relative;min-width:0;}
.gc-svg svg{display:block;width:100%;height:auto;overflow:visible;}
.gc-grid line{stroke:var(--line-2);stroke-width:1;stroke-dasharray:2 5;}
.gc-ticks line,.gc-axis{stroke:var(--violet-grey-300);stroke-width:1;}
.gc-ia{fill:none;stroke:var(--violet-500);stroke-width:2.5;stroke-linecap:round;}
.gc-op{fill:none;stroke:var(--pink);stroke-width:2.5;stroke-linecap:round;}
.gc-models circle{fill:#fff;stroke:var(--violet-500);stroke-width:2;}
.gc-span{stroke:var(--violet);stroke-width:1.5;}
.gc-end{stroke:#fff;stroke-width:2.5;}
.gc-end-ia{fill:var(--violet-500);}
.gc-end-op{fill:var(--pink);}
.gc-label{position:absolute;white-space:nowrap;}
.gc-label-gap{font-family:var(--font-display);font-weight:600;font-size:clamp(14px, 1.3vw, 17px);color:var(--violet);left:80.59%;top:37.81%;transform:translate(14px, -50%);}
.gc-has{margin-top:22px;padding-top:20px;border-top:1px solid var(--line-2);}
.gc-has-h{font-size:13.5px;font-weight:500;color:var(--t2);margin-bottom:14px;}
.gc-has-row{display:grid;grid-template-columns:3fr 1.15fr;gap:10px;}
.gc-has ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:10px;}
.gc-has li{background:var(--paper);border-radius:14px;padding:14px 14px 16px;display:grid;gap:4px;align-content:start;}
.gc-has li svg{width:20px;height:20px;fill:none;stroke:var(--violet);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:6px;}
.gc-has li b{font-family:var(--font-display);font-weight:600;font-size:16px;}
.gc-has li span{font-size:13.5px;line-height:1.4;color:var(--t2);}
.gc-miss{background:var(--ink-surf);color:#fff;border-radius:14px;padding:14px 14px 16px;display:grid;gap:4px;align-content:start;font-size:13.5px;line-height:1.4;}
.gc-miss svg{width:20px;height:20px;fill:none;stroke:var(--pink-300);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:6px;}
.gc-miss b{font-family:var(--font-display);font-weight:600;font-size:16px;color:#fff;}
.gc-miss span{color:var(--on-dark-2);}
@media (max-width: 760px){.gc-has-row{grid-template-columns:1fr;}}
.gc-key-gap{display:none !important;}
.gc-legend .k-gap{width:14px;height:12px;border-radius:3px;background:#CDBEE6;}
@media (max-width: 560px){
  .gc-has ul{grid-template-columns:1fr;}
  .gc-has li,.gc-miss{grid-template-columns:auto 1fr;column-gap:12px;}
  .gc-has li svg,.gc-miss svg{grid-row:span 2;margin:2px 0 0;}
  .gc-label-gap{display:none;}
  .gc-key-gap{display:inline-flex !important;}
}

/* eyebrow e cabeçalhos das seções herdadas da v3 */
.eyebrow{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:0.14em;color:var(--pink);margin:0 0 18px;}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--pink);}
.sub{color:var(--t2);font-size:16.5px;line-height:1.6;}

/* 2b · nossas soluções: cartões que abrem no hover, mesma altura fechados */
.sol-head{max-width:900px;margin-bottom:clamp(36px, 4vw, 52px);}
.sol-head .sub{margin-top:20px;max-width:64ch;}
.frentes{display:grid;gap:18px;align-items:start;}
@media (min-width: 860px){.frentes{grid-template-columns:repeat(3, minmax(0, 1fr));}}
.fcard{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:22px;padding:34px 32px 32px;background:#fff;box-shadow:0 12px 30px rgba(67,38,130,0.06);transition:transform .3s var(--ease-out), box-shadow .3s, border-color .3s;}
.fcard:hover,.fcard:focus-within{transform:translateY(-4px);box-shadow:0 26px 56px rgba(67,38,130,0.14);border-color:rgba(255,58,94,0.45);}
.fcard:focus-visible{outline:2px solid var(--pink);outline-offset:3px;}
.fpill{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:0.06em;color:var(--violet);background:rgba(67,38,130,0.08);border-radius:999px;padding:5px 12px;margin:6px 60px 16px 0;width:fit-content;}
.ftitle{font-family:var(--font-display);font-weight:600;font-size:clamp(23px, 2vw, 27px);line-height:1.08;letter-spacing:-0.015em;padding-right:52px;}
.cta-down{position:absolute;top:26px;right:26px;width:46px;height:46px;border-radius:999px;background:var(--pink);color:#fff;display:grid;place-items:center;box-shadow:0 8px 20px rgba(255,58,94,0.30);transition:transform .32s var(--ease-out), box-shadow .3s;}
.cta-down svg{width:20px;height:20px;transform:rotate(90deg);}
.fcard:hover .cta-down,.fcard:focus-within .cta-down{transform:translateY(3px) scale(1.07);box-shadow:0 12px 28px rgba(255,58,94,0.42);}
.fmore{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease-out);}
.fmore > div{min-height:0;overflow:hidden;}
.fcard:hover .fmore,.fcard:focus-within .fmore{grid-template-rows:1fr;}
@media (hover: none){.fmore{grid-template-rows:1fr;}}
.fcard .desc{font-size:15px;line-height:1.55;color:var(--t2);margin-top:16px;}
.sublist{list-style:none;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--line);display:grid;gap:11px;}
.sublist li{position:relative;padding-left:17px;display:grid;}
.sublist li::before{content:"";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:999px;background:var(--pink);}
.sublist b{font-family:var(--font-display);font-weight:600;font-size:14.5px;}
.sublist span{font-size:13px;line-height:1.4;color:var(--t2);}
.fcard .tlink{margin-top:20px;color:var(--pink);}

/* 3 · ciclo */
.cycle{margin-top:clamp(48px, 6vw, 72px);position:relative;--col-gap:48px;--wire:rgba(255,255,255,0.34);--arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 9'%3E%3Cpath d='M0 0l6 4.5L0 9z' fill='rgba(255,255,255,0.5)'/%3E%3C/svg%3E");}
.cycle-grid{display:grid;gap:18px;position:relative;z-index:1;}
.cycle-build{display:grid;gap:18px;grid-auto-rows:1fr;position:relative;}
.door{position:relative;background:rgba(255,255,255,0.045);border:1px solid var(--on-dark-line);border-radius:20px;padding:26px 26px 28px;transition:border-color .3s, background-color .3s;scroll-margin-top:110px;}
.door:target{border-color:rgba(255,58,94,0.7);background:rgba(255,255,255,0.07);}
.door-kpi{border-style:dashed;background:transparent;}
.door .h3{margin:0 0 12px;color:#fff;}
.door p{font-size:15.5px;line-height:1.55;color:var(--on-dark-2);}
.node{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;border:1px solid var(--pink);background:var(--pink);color:#fff;font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;}
.cycle-rail,.cycle-loop{display:none;}
.cycle-return{display:none;}
@media (min-width: 1000px){
  .cycle-grid{grid-template-columns:repeat(4, 1fr);align-items:center;column-gap:var(--col-gap);margin-bottom:64px;}
  .cycle-rail{display:grid;grid-template-columns:repeat(4, 1fr);column-gap:var(--col-gap);justify-items:center;position:relative;margin-bottom:22px;}
  .cycle-rail::before{content:"";position:absolute;top:50%;height:1px;background:var(--on-dark-line);left:calc((100% - 3 * var(--col-gap)) / 8);right:calc((100% - 3 * var(--col-gap)) / 8);}
  .cycle-rail .node{position:relative;}
  .door::before,.door::after,.cycle-build::before,.cycle-build::after{content:"";position:absolute;pointer-events:none;}
  #diagnostico::after,.cycle-build .door::after{top:50%;right:calc(var(--col-gap) / -2);width:calc(var(--col-gap) / 2);height:1px;background:var(--wire);}
  .cycle-build::before,.cycle-build::after{top:calc((100% - 18px) / 4);bottom:calc((100% - 18px) / 4);width:1px;background:var(--wire);}
  .cycle-build::before{left:calc(var(--col-gap) / -2);}
  .cycle-build::after{right:calc(var(--col-gap) / -2);}
  .cycle-build .door::before,#painel::before{top:calc(50% - 4.5px);left:calc(var(--col-gap) / -2);width:calc(var(--col-gap) / 2);height:9px;background:var(--arrow) right center / 6px 9px no-repeat, linear-gradient(var(--wire), var(--wire)) left center / calc(100% - 3px) 1px no-repeat;}
  #painel::after{top:calc(50% - 4.5px);right:calc(var(--col-gap) * -1);width:var(--col-gap);height:9px;background:var(--arrow) right center / 6px 9px no-repeat, linear-gradient(var(--wire), var(--wire)) left center / calc(100% - 3px) 1px no-repeat;}
  .cycle-loop{display:block;position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0;}
  .cycle-loop .lp{fill:none;stroke:var(--wire);stroke-width:1;stroke-dasharray:4 6;}
  .cycle-loop .lp-head,.cycle-loop .br-head{fill:rgba(255,255,255,0.5);}
  .cycle-loop .br{fill:none;stroke:var(--wire);stroke-width:1;}
}
@media (max-width: 999px){
  .cycle-grid{padding-left:52px;}
  .cycle-grid::before{content:"";position:absolute;left:17px;top:26px;bottom:26px;width:1px;background:var(--wire);}
  [data-step]::before{content:attr(data-step);position:absolute;left:-35px;top:22px;transform:translateX(-50%);display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;border:1px solid var(--pink);background:var(--pink);color:#fff;font-size:13px;font-weight:500;white-space:nowrap;z-index:1;}
  .cycle-build{grid-auto-rows:auto;}
  .cycle-return{display:grid;place-items:center;width:34px;height:34px;margin:10px 0 0;border-radius:999px;border:1px dashed var(--wire);color:var(--on-dark-2);}
  .cycle-return svg{width:16px;height:16px;}
}
.lane-train{position:relative;z-index:1;margin-top:18px;background:rgba(255,255,255,0.045);border:1px solid var(--on-dark-line);border-radius:20px;padding:24px 28px;display:grid;gap:8px;scroll-margin-top:110px;}
@media (min-width: 860px){.lane-train{grid-template-columns:minmax(220px, auto) 1fr;gap:36px;align-items:center;}}
.lane-train .h3{color:#fff;}
.lane-train p{color:var(--on-dark-2);font-size:16px;max-width:70ch;}
.lane-train:target{border-color:rgba(255,58,94,0.7);}
@media (min-width: 1000px){.lane-train{margin-top:0;}}
.cycle-foot{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;justify-content:space-between;color:var(--on-dark-2);font-size:16px;}

/* 4 · por que */
.why{margin-top:clamp(48px, 6vw, 72px);}
.why-tabs{display:none;}
.why-item{display:grid;gap:28px;padding:36px 0;border-top:1px solid var(--line);}
.why-item:first-of-type{border-top:0;padding-top:0;}
.why-item .h3{margin-bottom:12px;}
.why-item .txt p{color:var(--t2);max-width:52ch;}
@media (min-width: 1000px){
  .why-item{grid-template-columns:0.9fr 1.1fr;gap:56px;align-items:center;}
  .why.is-tabs{display:grid;grid-template-columns:300px 1fr;gap:56px;align-items:start;}
  .why.is-tabs .why-tabs{display:flex;flex-direction:column;border-left:1px solid var(--line);position:sticky;top:120px;}
  .why.is-tabs .why-item{display:none;border:0;padding:0;grid-template-columns:1fr;gap:28px;}
  .why.is-tabs .why-item.is-active{display:grid;}
  .why.is-tabs .why-item .h3{display:none;}
}
.why-tab{all:unset;cursor:pointer;font-family:var(--font-display);font-weight:600;font-size:18px;line-height:1.25;word-spacing:0.1em;color:var(--t3);padding:14px 0 14px 22px;margin-left:-1px;border-left:1px solid transparent;transition:color .2s, border-color .2s;}
.why-tab:hover{color:var(--ink);}
.why-tab[aria-selected="true"]{color:var(--pink);font-weight:700;border-color:var(--pink);}
.why-tab:focus-visible{outline:2px solid var(--pink);outline-offset:2px;border-radius:4px;}
@keyframes settle{from{transform:translateY(8px);}to{transform:none;}}
@media (min-width: 1000px) and (prefers-reduced-motion: no-preference){.why.is-tabs .why-item.is-active{animation:settle .26s var(--ease-out);}}
@media (min-width: 1000px){.why.is-tabs .why-item .txt p{font-size:clamp(19px, 1.5vw, 21px);line-height:1.5;color:rgba(19,19,26,0.78);max-width:46ch;}}

.why-note{margin-top:clamp(28px, 3vw, 40px);font-size:12.5px;color:var(--t3);}

/* artifact sheets */
.sheet{background:#fff;border:1px solid var(--line-2);border-radius:20px;padding:22px 24px;box-shadow:var(--sheet-shadow);}
.sheet-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;align-items:baseline;margin-bottom:16px;}
.sheet-head b{font-family:var(--font-display);font-weight:600;font-size:16px;}
.sheet table{width:100%;border-collapse:collapse;font-size:14px;}
.sheet th{font-weight:500;font-size:12.5px;color:var(--t3);text-align:left;padding:0 0 8px;}
.sheet th.n,.sheet td.n{text-align:right;}
.sheet td{padding:11px 0;border-top:1px solid var(--line-2);color:var(--t2);}
.sheet td.n{font-family:var(--font-mono);font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:12px;}
.ok{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:999px;background:var(--paper);color:var(--violet);margin-left:8px;vertical-align:-4px;}
.ok svg{width:12px;height:12px;}
.sheet-foot{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.verdict{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--ink);}
.verdict i{width:8px;height:8px;border-radius:999px;background:var(--pink);}
/* lanes: two sources pass through the Variance layer */
.lanes{display:grid;grid-template-columns:minmax(0,1fr) 28px auto 28px auto;grid-template-areas:"a win hub wout to" "b win hub wout to";row-gap:16px;align-items:center;}
.lane-a{grid-area:a;}
.lane-b{grid-area:b;}
.lane-src .from{display:flex;flex-wrap:wrap;gap:8px;}
.lane-lbl{font-size:12.5px;color:var(--t3);margin-bottom:8px;}
.chip{font-size:13.5px;font-weight:500;border:1px solid var(--line);border-radius:999px;padding:6px 12px;color:var(--t2);background:#fff;}
.chip.new{border-style:dashed;border-color:var(--pink-300);color:var(--ink);}
.wire{position:relative;align-self:stretch;}
.wire-in{grid-area:win;}
.wire-out{grid-area:wout;}
.wire::before{content:"";position:absolute;left:0;right:6px;top:50%;height:1px;background:var(--violet-grey-300);}
.wire::after{content:"";position:absolute;right:1px;top:calc(50% - 4px);width:7px;height:7px;border-top:1px solid var(--violet-grey-300);border-right:1px solid var(--violet-grey-300);transform:rotate(45deg);}
.wire-in{border-left:1px solid var(--violet-grey-300);margin:28px 0 22px;}
.hub{grid-area:hub;display:grid;justify-items:center;gap:8px;background:var(--violet);color:#fff;border-radius:14px;padding:16px 14px;text-align:center;}
.hub img{width:26px;height:26px;filter:brightness(0) invert(1);}
.hub span{font-family:var(--font-display);font-weight:600;font-size:14px;line-height:1.15;word-spacing:0.08em;}
.lane-to{grid-area:to;display:grid;gap:10px;}
.lane-to .to{font-family:var(--font-display);font-weight:600;font-size:14.5px;word-spacing:0.08em;background:var(--paper);border-radius:12px;padding:11px 14px;}
@media (max-width: 560px){
  .lanes{grid-template-columns:1fr;grid-template-areas:"a" "b" "win" "hub" "wout" "to";row-gap:12px;}
  .wire{height:22px;align-self:auto;margin:0 0 0 18px;border:0;}
  .wire::before{left:0;right:auto;top:0;bottom:6px;width:1px;height:auto;}
  .wire::after{left:-3px;right:auto;top:auto;bottom:1px;transform:rotate(135deg);}
  .hub{justify-self:start;grid-auto-flow:column;align-items:center;}
}
/* permissions */
.perm{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media (max-width: 440px){.perm{grid-template-columns:1fr;}}
.perm .ph{margin:0 0 10px;font-size:12.5px;font-weight:500;color:var(--t3);}
.perm ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.perm li{font-size:14px;display:flex;gap:8px;align-items:flex-start;color:var(--t2);}
.perm li svg{width:15px;height:15px;flex:none;margin-top:3px;}
.perm .yes svg{color:var(--violet);}
.perm .no li{color:var(--t3);text-decoration:line-through;text-decoration-color:rgba(19,19,26,0.3);}
.perm .no svg{color:var(--t3);}
.log{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:7px;}
.log div{display:grid;grid-template-columns:auto 1fr auto;gap:14px;font-size:13.5px;color:var(--t2);}
.log time,.log span{font-family:var(--font-mono);font-size:12.5px;color:var(--t3);font-variant-numeric:tabular-nums;}
/* ruler */
.ruler{display:grid;grid-template-columns:repeat(4, 1fr);gap:6px;margin:6px 0 10px;}
.ruler .lv{height:10px;border-radius:999px;background:var(--paper-2);}
.ruler .lv.on{background:var(--violet-300);}
.ruler .lv.now{background:var(--pink);}
.ruler-lbls{display:grid;grid-template-columns:repeat(4, 1fr);gap:6px;font-size:12.5px;color:var(--t3);}
.ruler-lbls span{text-wrap:balance;}
.ruler-lbls span.now{color:var(--ink);font-weight:600;}
.ruler-out{margin-top:18px;background:var(--paper);border-radius:14px;padding:14px 16px;display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:14px;}
.ruler-out b{font-weight:600;color:var(--ink);}
@media (max-width: 560px){.ruler-out{flex-direction:column;align-items:flex-start;}}
/* 4 · para quem (layout da v3) */
.head-2col{display:grid;gap:20px 56px;margin-bottom:clamp(36px, 4vw, 52px);}
@media (min-width: 900px){.head-2col{grid-template-columns:1.1fr 0.9fr;align-items:end;}}
.head-2col .sub{max-width:46ch;}
.sizes{display:grid;gap:18px;align-items:stretch;}
@media (min-width: 780px){.sizes{grid-template-columns:1fr 1fr;}}
.sizecard{border-radius:22px;padding:clamp(28px, 3vw, 40px) clamp(24px, 3vw, 38px);border:1px solid var(--line);background:#fff;transition:background-color .3s, transform .3s var(--ease-out), box-shadow .3s, border-color .3s;}
.sizecard:hover{background:var(--pink-600);border-color:transparent;transform:translateY(-3px);box-shadow:0 26px 56px rgba(229,40,81,0.30);}
.sizecard .tag{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:0.12em;color:var(--pink);}
.sizecard .big{font-family:var(--font-display);font-weight:700;font-size:clamp(34px, 3.4vw, 46px);line-height:1;letter-spacing:-0.025em;color:var(--ink);margin:14px 0 10px;}
.sizecard .h3{margin:0 0 14px;}
.sizecard .body{font-size:15.5px;line-height:1.6;color:var(--t2);}
.sizecard ul{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:11px;}
.sizecard li{font-size:14.5px;line-height:1.5;display:flex;gap:10px;align-items:flex-start;color:var(--ink);}
.sizecard li .ck{color:var(--pink);font-weight:700;flex:none;}
.sizecard li a{font-weight:600;border-bottom:1px solid rgba(255,58,94,0.45);}
.sizecard li a:hover{color:var(--pink);}
.sizecard:hover .big,.sizecard:hover .h3,.sizecard:hover li,.sizecard:hover .ck,.sizecard:hover .body{color:#fff;}
.sizecard:hover .tag{color:rgba(255,255,255,0.9);}
.sizecard:hover li a{color:#fff;border-color:rgba(255,255,255,0.6);}

/* pop-up do formulário */
.form-modal{width:min(560px, calc(100% - 32px));max-height:calc(100dvh - 32px);border:0;border-radius:24px;padding:0;background:#fff;color:var(--ink);box-shadow:0 40px 90px -20px rgba(16,20,38,0.45);overflow:auto;}
.form-modal::backdrop{background:rgba(16,20,38,0.55);}
.fm{padding:clamp(26px, 4vw, 40px);display:grid;gap:16px;}
.fm-h{font-family:var(--font-display);font-weight:600;font-size:clamp(24px, 2.6vw, 30px);line-height:1.08;letter-spacing:-0.02em;padding-right:44px;}
.fm-sub{color:var(--t2);font-size:15.5px;margin-top:-6px;}
.field{display:grid;gap:6px;}
.field label{font-size:13.5px;font-weight:500;color:var(--t2);}
.field input,.field textarea{font:inherit;font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px 14px;width:100%;}
.field textarea{resize:vertical;min-height:104px;}
.field input:focus,.field textarea:focus{outline:2px solid var(--pink);outline-offset:1px;background:#fff;}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:var(--pink-600);}
.fm .btn{justify-content:space-between;margin-top:4px;}
.fm-note{font-size:14px;color:var(--t2);}
.fm-note:empty{display:none;}
.fm-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;}
.fm-close svg{width:18px;height:18px;}
.fm-close:hover{border-color:var(--ink);}

/* 6 · fecho */
.close{position:relative;overflow:hidden;background:#fff;text-align:center;}
.close .mark{position:absolute;right:-20%;bottom:-58%;width:min(760px, 90vw);opacity:0.18;pointer-events:none;}
@media (max-width: 560px){.close .mark{right:-110px;top:-150px;bottom:auto;width:240px;}}
.close .wrap{position:relative;display:flex;flex-direction:column;align-items:center;}
.close .h2{max-width:16ch;}
.close .lead{max-width:52ch;margin-top:24px;}
.close .ctas{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:center;margin-top:36px;}

/* footer */
.foot{background:var(--ink-surf);color:var(--on-dark-2);padding:64px 0 40px;font-size:15px;}
.foot-in{display:grid;gap:36px;}
@media (min-width: 860px){.foot-in{grid-template-columns:1.3fr 1fr 1fr;}}
.foot img{height:40px;width:auto;}
.foot .sig{font-family:var(--font-display);font-weight:600;font-size:clamp(26px, 2.6vw, 34px);line-height:1.08;color:#fff;margin-top:22px;letter-spacing:-0.02em;max-width:16ch;}
.foot .sig .op{color:var(--pink);}
.foot .fh{font-family:var(--font-display);font-weight:600;font-size:17px;letter-spacing:-0.005em;color:#fff;margin-bottom:16px;}
.foot ul li,.foot ul a{color:rgba(255,255,255,0.64);font-size:15px;}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.foot ul a:hover{color:#fff;}
.foot .legal{margin-top:48px;padding-top:24px;border-top:1px solid var(--on-dark-line);font-size:13.5px;color:rgba(255,255,255,0.6);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;}
.foot .legal p{color:inherit;}
.legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12.5px;}
.legal-links a{color:rgba(255,255,255,0.6);}
.legal-links a:hover{color:#fff;}
.legal-links span{color:rgba(255,255,255,0.3);}
.foot ul a.foot-li{display:inline-flex;align-items:center;gap:8px;}
.foot-li svg{width:16px;height:16px;}
