:root{--n950:#081726;--n900:#0C2238;--n800:#12324F;--n700:#1B4467;--n600:#2A5A82;--n500:#3A6B94;--n300:#8DB8DD;--n200:#BCCCDB;--n100:#DCE6EF;--n50:#EEF3F8;--o700:#B54B10;--o800:#8F3A0B;--o600:#D35A14;--o300:#F08A4B;--o50:#FDF2EA;--p0:#fff;--p1:#F6F5F2;--p2:#EFEEEA;--p3:#E4E2DD;--p4:#D9DBDE;--i1:#151B22;--i2:#2B333C;--i3:#4A525C;--i4:#646C75;--ok:#1E7A46;--err:#B42318;--fd:'Archivo',system-ui,sans-serif;--fs:'Source Sans 3',system-ui,sans-serif;--ease:cubic-bezier(.2,.6,.3,1);--wrap:1240px;--pad:40px;--pattern:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath d='M6 18V6H18M30 42H42V30' fill='none' stroke='white' stroke-opacity='.09' stroke-width='2'/%3E%3C/svg%3E")}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--p1);color:var(--i2);font:400 17px/1.6 var(--fs);-webkit-font-smoothing:antialiased;text-wrap:pretty}
h1,h2,h3,h4{font-family:var(--fd);font-stretch:112%;font-weight:700;color:var(--i1);margin:0;letter-spacing:-.015em;text-wrap:balance}
p{margin:0}
a{color:var(--n800);text-decoration-color:var(--o600);text-underline-offset:3px}
a:hover{color:var(--n950)}
img{display:block;max-width:100%}
:focus-visible{outline:3px solid var(--o600);outline-offset:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.label{font:700 12px/1.3 var(--fs);letter-spacing:.16em;text-transform:uppercase;color:var(--i3);display:flex;align-items:center;gap:12px}
.label::before{content:"";width:24px;height:2px;background:var(--o600);flex:none}
.dark .label{color:var(--n200)}.dark .label::before{background:var(--o300)}
.dark{background:var(--n800);color:var(--n100)}.dark h1,.dark h2,.dark h3{color:#fff}
.num{font-variant-numeric:tabular-nums}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:48px;padding:0 22px;border-radius:4px;border:1px solid transparent;font:600 16px/1 var(--fs);text-decoration:none;cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease),border-color .12s var(--ease);white-space:nowrap}
.btn svg{width:18px;height:18px}
.btn-lg{height:56px;padding:0 28px;font-size:17px}
.btn-sm{height:40px;padding:0 16px;font-size:15px}
.btn-cta{background:var(--o700);color:#fff}.btn-cta:hover{background:var(--o800);color:#fff}
.btn-primary{background:var(--n800);color:#fff}.btn-primary:hover{background:var(--n900);color:#fff}
.btn-ghost{border-color:rgba(255,255,255,.4);color:#fff;background:transparent}.btn-ghost:hover{background:rgba(255,255,255,.08);color:#fff;border-color:#fff}
.btn-line{border-color:var(--n800);color:var(--n800);background:transparent}.btn-line:hover{background:var(--n50);color:var(--n900)}
.btn:active{box-shadow:inset 0 2px 4px rgba(0,0,0,.2)}
/* header */
.hdr{position:fixed;inset:0 0 auto;z-index:50;transition:background .24s var(--ease),box-shadow .24s var(--ease)}
.hdr .wrap{height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.hdr .logo{display:block;height:44px;position:relative;width:132px}
.hdr .logo img{position:absolute;inset:0;height:44px;width:auto;transition:opacity .17s var(--ease)}
.hdr .logo .pos{opacity:0}
.hdr nav{display:flex;align-items:center;gap:32px}
.hdr nav a:not(.btn){font-weight:600;font-size:15px;color:#fff;text-decoration:none;opacity:.86;white-space:nowrap}
.hdr nav a:not(.btn):hover{opacity:1}
.hdr.solid{background:rgba(255,255,255,.94);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--p4)}
.hdr.solid .logo .pos{opacity:1}.hdr.solid .logo .neg{opacity:0}
.hdr.solid nav a:not(.btn){color:var(--i2)}
.menu-btn{display:none;background:none;border:0;color:#fff;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer}
.hdr.solid .menu-btn{color:var(--n800)}
/* hero */
.hero .label{color:var(--n200)}.hero .label::before{background:var(--o300)}
.hero .wrap{position:relative}
.hero{position:relative;background:var(--n800) var(--pattern);color:var(--n100);overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:center;padding-top:152px;padding-bottom:96px}
.hero h1{color:#fff;font-size:clamp(40px,5.2vw,68px);line-height:1.03;letter-spacing:-.025em;margin:28px 0 28px}
.hero h1 em{font-style:normal;color:var(--o300)}
.hero p.lead{font-size:20px;line-height:1.6;color:var(--n100);max-width:54ch}
.hero .ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}
.frame{position:relative;padding:22px}
.frame .c{position:absolute;width:56px;height:56px;border:0 solid #fff;transition:transform .9s var(--ease) .2s}
.frame .c.tl{top:0;left:0;border-top-width:4px;border-left-width:4px;transform:translate(-28px,-28px)}
.frame .c.tr{top:0;right:0;border-top-width:4px;border-right-width:4px;transform:translate(28px,-28px)}
.frame .c.bl{bottom:0;left:0;border-bottom-width:4px;border-left-width:4px;transform:translate(-28px,28px)}
.frame .c.br{bottom:0;right:0;border-bottom-width:4px;border-right-width:4px;border-color:var(--o300);transform:translate(28px,28px)}
.ready .frame .c{transform:none}

.brandpanel{position:relative;aspect-ratio:4/5;background:var(--n900) var(--pattern);border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;overflow:hidden}
.brandpanel::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 50% at 50% 45%,rgba(141,184,221,.14),transparent 70%)}
.brandpanel img{position:relative;width:58%;height:auto;opacity:0;transform:scale(.96);transition:opacity .9s var(--ease) .35s,transform .9s var(--ease) .35s}
.ready .brandpanel img{opacity:1;transform:none}
.bp-foot{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:12px;padding:18px 22px;border-top:1px solid rgba(255,255,255,.12);font:700 11px/1.3 var(--fs);letter-spacing:.16em;text-transform:uppercase;color:var(--n200)}
.hero-sw{position:absolute;right:var(--pad);top:96px;display:none;align-items:center;gap:6px;font:600 12px/1 var(--fs);color:var(--n200)}
.hero-sw.show{display:flex}
.hero-sw button{height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font:inherit;cursor:pointer}
.hero-sw button.on{background:#fff;color:var(--n800)}
.facts{position:relative;border-top:1px solid rgba(255,255,255,.14)}
.facts .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-top:0;padding-bottom:0}
.facts .f{padding:30px 12px 32px;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px}
.facts .f+.f{border-left:1px solid rgba(255,255,255,.14)}
.facts b{display:block;font:700 clamp(18px,1.75vw,26px)/1.15 var(--fd);font-stretch:108%;letter-spacing:-.01em;color:#fff;text-wrap:balance}
.facts span{font-size:15px;color:var(--n200)}
/* A BJC + processo */
.flx{background:var(--p0);padding:120px 0}
.flx-top{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:end}
.year{display:flex;flex-direction:column;gap:6px;margin-top:24px;font:700 clamp(96px,13vw,184px)/.84 var(--fd);font-stretch:112%;letter-spacing:-.04em;color:var(--n800)}
.year small{font:700 14px/1.2 var(--fs);letter-spacing:.16em;text-transform:uppercase;color:var(--o700);font-stretch:100%}
.flx h2{font-size:clamp(28px,3vw,38px);line-height:1.15;margin-bottom:20px}
.flx-top p{font-size:18px;color:var(--i3);max-width:58ch}
.flow{list-style:none;margin:80px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:36px}
.node{position:relative;background:var(--p1);border:1px solid var(--p4);padding:24px 22px 22px;display:flex;flex-direction:column;gap:10px;opacity:.35;transform:translateY(10px);transition:opacity .45s var(--ease),transform .45s var(--ease),background .17s var(--ease)}
.node.in{opacity:1;transform:none}
.node:nth-child(2){transition-delay:.12s}.node:nth-child(3){transition-delay:.24s}.node:nth-child(4){transition-delay:.36s}.node:nth-child(5){transition-delay:.48s}
.node:not(:last-child)::after{content:"";position:absolute;top:46px;right:-35px;width:34px;height:12px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='12'%3E%3Cpath d='M2 6H30M25 1l6 5-6 5' fill='none' stroke='%2312324F' stroke-width='2'/%3E%3C/svg%3E") no-repeat center}
.nh{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.nn{font:700 30px/1 var(--fd);font-stretch:112%;color:var(--n800)}
.ni{width:44px;height:44px;border-radius:4px;background:var(--n800);color:#fff;display:flex;align-items:center;justify-content:center}
.ni svg{width:22px;height:22px;stroke-width:1.75}
.node h3{font-size:clamp(16px,1.35vw,20px);line-height:1.25;hyphens:auto;overflow-wrap:break-word}
.node p{font-size:15px;line-height:1.55;color:var(--i3);flex:1}
.node .ent{align-self:flex-start;font:700 11px/1 var(--fs);letter-spacing:.12em;text-transform:uppercase;color:var(--o700);background:var(--o50);padding:8px 10px;border-radius:2px}
.node .k{position:absolute;width:16px;height:16px;border:0 solid var(--o600);opacity:0;transition:opacity .17s var(--ease),transform .24s var(--ease)}
.node .k.a{top:-1px;left:-1px;border-top-width:3px;border-left-width:3px;transform:translate(5px,5px)}
.node .k.b{bottom:-1px;right:-1px;border-bottom-width:3px;border-right-width:3px;transform:translate(-5px,-5px)}
.node:hover{background:#fff}.ni{transition:background .17s var(--ease)}.node:hover .ni{background:var(--o600)}.node:hover .k{opacity:1;transform:none}
.loop{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:36px}
.arc{grid-column:2/6;margin:0 calc((100% - 108px)/8);height:44px;border:2px dashed var(--o600);border-top:0;position:relative}
.arc::before{content:"";position:absolute;left:-7px;top:-2px;border:6px solid transparent;border-bottom:9px solid var(--o600);border-top:0}
.arc span{position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);background:var(--p0);padding:0 14px;font:600 15px/24px var(--fs);color:var(--o700);white-space:nowrap;display:flex;gap:8px;align-items:center}
.arc svg,.loop-m svg{width:16px;height:16px}
.loop-m{display:none;margin-top:24px;font-weight:600;color:var(--o700);gap:8px;align-items:center}
/* seguros */
.seg{padding:120px 0}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;margin-bottom:48px}
.head h2{font-size:clamp(30px,3.4vw,44px);line-height:1.1;margin-top:18px;max-width:18ch}
.head p{font-size:18px;color:var(--i3);max-width:46ch}
.publicos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:56px}
.pub{position:relative;border:0;padding:0;text-align:left;cursor:pointer;background:none;font:inherit;color:inherit;display:block}
.pub{background:var(--n800) var(--pattern);transition:background .17s var(--ease)}.pub:hover{background-color:var(--n900)}
.pub .cap{height:100%;padding:36px 32px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;color:#fff}
.pub .pi{width:56px;height:56px;border-radius:4px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;transition:background .17s var(--ease)}.pub .pi svg{width:26px;height:26px;stroke-width:1.75}.pub:hover .pi,.pub.on .pi{background:var(--o600)}
.pub .k{position:absolute;width:18px;height:18px;border:0 solid var(--o300);opacity:0;transition:opacity .17s var(--ease),transform .24s var(--ease)}.pub .k.a{top:10px;left:10px;border-top-width:3px;border-left-width:3px;transform:translate(6px,6px)}.pub .k.b{bottom:10px;right:10px;border-bottom-width:3px;border-right-width:3px;transform:translate(-6px,-6px)}.pub:hover .k,.pub.on .k{opacity:1;transform:none}
.pub h3{color:#fff;font-size:clamp(22px,2.4vw,28px);line-height:1.15}
.pub .cap p{font-size:15px;color:var(--n100);margin-top:6px;max-width:40ch}
.pub .go{width:44px;height:44px;border:1px solid rgba(255,255,255,.5);border-radius:4px;display:flex;align-items:center;justify-content:center;flex:none;transition:background .12s var(--ease)}
.pub:hover .go,.pub.on .go{background:var(--o700);border-color:var(--o700)}
.pub.on{outline:3px solid var(--o600);outline-offset:4px}
.filtros{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}
.chip{height:40px;padding:0 18px;border-radius:999px;border:1px solid var(--p4);background:var(--p0);font:600 15px/1 var(--fs);color:var(--i2);cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.chip:hover{border-color:var(--i4)}
.chip.on{background:var(--n800);border-color:var(--n800);color:#fff}
.chip span{font-weight:400;opacity:.7}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--p4);border:1px solid var(--p4)}
.card{position:relative;background:var(--p0);padding:32px 28px 28px;display:flex;flex-direction:column;gap:12px;cursor:pointer;text-align:left;border:0;font:inherit;color:inherit;transition:background .17s var(--ease)}
.card[hidden]{display:none}
.card .ic{width:48px;height:48px;border-radius:4px;background:var(--n50);color:var(--n800);display:flex;align-items:center;justify-content:center;margin-bottom:8px;transition:background .17s var(--ease),color .17s var(--ease)}
.card .ic svg{width:24px;height:24px;stroke-width:1.75}
.card h3{font-size:20px;line-height:1.25}
.card p{font-size:15px;line-height:1.55;color:var(--i3)}
.card .more{margin-top:auto;padding-top:12px;font-size:14px;font-weight:600;color:var(--n800);display:flex;align-items:center;gap:6px;opacity:0;transform:translateY(4px);transition:opacity .17s var(--ease),transform .17s var(--ease)}
.card .more svg{width:16px;height:16px}
.card .k{position:absolute;width:18px;height:18px;border:0 solid var(--o600);opacity:0;transition:opacity .17s var(--ease),transform .24s var(--ease)}
.card .k.a{top:10px;left:10px;border-top-width:3px;border-left-width:3px;transform:translate(6px,6px)}
.card .k.b{bottom:10px;right:10px;border-bottom-width:3px;border-right-width:3px;transform:translate(-6px,-6px)}
.card:hover .k,.card:focus-visible .k{opacity:1;transform:none}
.card:hover .ic{background:var(--o600);color:#fff}
.card:hover .more{opacity:1;transform:none}
.tag{font:700 11px/1 var(--fs);letter-spacing:.12em;text-transform:uppercase;color:var(--i4)}
.nf{margin-top:32px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding:24px 28px;background:var(--p0);border:1px solid var(--p4)}
.nf p{font-size:17px;color:var(--i2)}
/* manifesto */
.band{position:relative;background:var(--n950) var(--pattern);color:#fff}
.band .wrap{padding-top:104px;padding-bottom:104px;display:flex;justify-content:center;text-align:center}
.band blockquote{margin:0 auto;max-width:24ch;font:700 clamp(32px,4.2vw,56px)/1.1 var(--fd);font-stretch:112%;letter-spacing:-.02em}
.band blockquote em{font-style:normal;color:var(--o300)}
.band cite{display:block;margin-top:28px;font:600 16px/1.4 var(--fs);font-style:normal;color:var(--n200)}
/* valores */
.val{padding:120px 0;background:var(--n900) var(--pattern)}
.val .head h2{color:#fff}.val .head p{color:var(--n200)}
.vrows{border-top:1px solid rgba(255,255,255,.16)}
.vr{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,1.1fr);gap:32px;align-items:baseline;padding:40px 0;border-bottom:1px solid rgba(255,255,255,.16);position:relative}
.vr .vn{font:700 14px/1 var(--fs);letter-spacing:.14em;color:var(--o300)}
.vr h3{font-size:clamp(36px,4.6vw,64px);line-height:1;letter-spacing:-.03em;color:#fff;transition:color .17s var(--ease)}
.vr p{font-size:18px;color:var(--n200);max-width:52ch}
.vr:hover h3{color:var(--o300)}
/* contato */
.ctt{padding:120px 0;background:var(--p0)}
.ctt .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:start}
.ctt h2{font-size:clamp(32px,3.8vw,50px);line-height:1.06;margin:18px 0 20px}
.ctt .intro>p{font-size:18px;color:var(--i3)}
.how{list-style:none;padding:0;margin:40px 0 0;display:flex;flex-direction:column}
.how li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;padding:18px 0;border-top:1px solid var(--p4)}
.how b{display:block;color:var(--i1);font-size:17px}
.how span{font-size:15px;color:var(--i3)}
.how .d{font:700 18px/1.3 var(--fd);font-stretch:112%;color:var(--o700)}
.alt{margin-top:32px;display:flex;flex-direction:column;gap:10px;font-size:16px}
.alt a{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--i2)}
.alt svg{width:18px;height:18px;color:var(--n800)}
form{background:var(--p1);border:1px solid var(--p4);border-radius:8px;padding:36px;display:grid;grid-template-columns:1fr 1fr;gap:20px 18px;position:relative}
.full{grid-column:1/-1}
.fld{display:flex;flex-direction:column;gap:6px}
.fld label,.fld .lb{font-size:14px;font-weight:600;color:var(--i1)}
.fld input,.fld select,.fld textarea{height:48px;border:1px solid var(--i4);border-radius:4px;background:#fff;padding:0 14px;font:400 16px var(--fs);color:var(--i1);width:100%}
.fld textarea{height:96px;padding:12px 14px;resize:vertical}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--n800);box-shadow:0 0 0 3px rgba(211,90,20,.35)}
.fld.bad input{border-color:var(--err)}
.fld .er{font-size:13px;color:var(--err);display:none}
.fld.bad .er{display:block}
.drop{position:relative;border:2px dashed var(--n500);border-radius:6px;background:#fff;padding:28px;display:flex;align-items:center;gap:20px;cursor:pointer;transition:background .12s var(--ease),border-color .12s var(--ease)}
.drop:hover,.drop.over{background:var(--n50);border-color:var(--n800)}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.drop .di{width:56px;height:56px;border-radius:4px;background:var(--n800);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.drop .di svg{width:26px;height:26px}
.drop b{display:block;font-size:17px;color:var(--i1)}
.drop span{font-size:14px;color:var(--i3)}
.files{display:flex;flex-direction:column;gap:6px}
.files div{display:flex;align-items:center;gap:10px;font-size:14px;background:#fff;border:1px solid var(--p4);border-radius:4px;padding:8px 12px}
.files svg{width:16px;height:16px;color:var(--n800);flex:none}
.files em{font-style:normal;color:var(--i4);margin-left:auto}
.files button{background:none;border:0;cursor:pointer;color:var(--i4);display:flex;padding:2px}
.modes{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mode{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--p4);border-radius:6px;background:#fff;cursor:pointer;text-align:left;font:inherit;color:var(--i2);transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}
.mode svg{width:22px;height:22px;color:var(--n800);flex:none}
.mode b{display:block;font-size:16px;line-height:1.3;color:var(--i1)}.mode span{line-height:1.3}
.mode small{font-size:14px;color:var(--i3)}
.mode:hover{border-color:var(--i4)}
.mode.on{border-color:var(--n800);box-shadow:inset 0 0 0 1px var(--n800)}
.pane{grid-column:1/-1;display:flex;flex-direction:column;gap:14px}
.pane[hidden]{display:none}
.drop{flex-direction:column;justify-content:center;text-align:center;gap:10px;padding:44px 28px;min-height:240px}
.drop .di{width:64px;height:64px;margin-bottom:6px}
.drop b{font-size:20px}
.drop u{color:var(--n800);text-decoration-color:var(--o600);text-underline-offset:3px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{white-space:nowrap;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--i4);background:#fff;font:600 15px/1 var(--fs);color:var(--i2);cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.opt:hover{border-color:var(--n800)}
.opt.on{background:var(--n800);border-color:var(--n800);color:#fff}
.fld .lb em{font-style:normal;font-weight:400;color:var(--i4)}
.who{grid-column:1/-1;display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .28s var(--ease),opacity .28s var(--ease)}
.who>*{overflow:hidden}
.who.show{grid-template-rows:auto auto;opacity:1}
.who-t{font:700 18px/1.3 var(--fd);font-stretch:112%;color:var(--i1);margin-bottom:12px}
.who:not(.show) .who-t,.who:not(.show) .who-f{display:none}
.who-f{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.btn:disabled{opacity:.45;cursor:not-allowed}
.submit{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.submit{grid-column:1/-1}.submit small{font-size:13px;color:var(--i3);max-width:40ch}
.ok{position:absolute;inset:0;background:var(--p1);border-radius:8px;display:none;flex-direction:column;justify-content:center;gap:16px;padding:48px}
.ok.show{display:flex}
.ok .oi{width:56px;height:56px;border-radius:4px;background:var(--ok);color:#fff;display:flex;align-items:center;justify-content:center}
.ok h3{font-size:30px}
.ok p{font-size:17px;color:var(--i3);max-width:44ch}
/* footer */
.ftr{background:var(--n800);color:var(--n200)}
.ftr .wrap{padding-top:72px;padding-bottom:32px}
.ftr .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px}
.ftr .cols>div{display:flex;flex-direction:column;gap:10px;font-size:15px}
.ftr h4{font:700 12px/1.3 var(--fs);letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:6px}
.ftr a{color:var(--n200);text-decoration:none}.ftr a:hover{color:#fff}
.ftr .brand img{height:52px;width:auto;margin-bottom:10px}
.ftr .brand p{max-width:34ch}
.legal{margin-top:56px;padding-top:24px;border-top:1px solid rgba(255,255,255,.16);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;letter-spacing:.04em}
/* flutuante */
.float{position:fixed;right:24px;bottom:24px;z-index:40;box-shadow:0 12px 32px rgba(12,24,36,.28);transform:translateY(140%);transition:transform .28s var(--ease)}
.float.show{transform:none}
/* reveal */
.rv{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}*{transition:none!important}html{scroll-behavior:auto}}
@media (max-width:1080px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.flow{grid-template-columns:1fr;gap:28px}.node{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:28px;align-items:start}.node .nh{grid-row:1/4;gap:16px;justify-content:flex-start;margin:0}.node .ent{justify-self:start}.node:not(:last-child)::after{top:auto;right:auto;bottom:-29px;left:44px;width:12px;height:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='30'%3E%3Cpath d='M6 2V26M1 21l5 6 5-6' fill='none' stroke='%2312324F' stroke-width='2'/%3E%3C/svg%3E")}.loop{display:none}.loop-m{display:flex}}
@media (max-width:1000px){.hdr nav{display:none}.menu-btn{display:flex}.hdr.open nav{display:flex;position:absolute;top:80px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;padding:8px 24px 24px;box-shadow:0 12px 32px rgba(12,24,36,.16)}.hdr.open nav a:not(.btn){color:var(--i2);padding:14px 0;border-bottom:1px solid var(--p3)}.hdr.open nav .btn{margin-top:16px}}
@media (max-width:900px){:root{--pad:24px}
.hero .wrap,.flx-top,.ctt .wrap{grid-template-columns:1fr;gap:48px}.hero .wrap{padding-top:120px;padding-bottom:64px}.hero .foto{aspect-ratio:4/3}.facts .wrap{grid-template-columns:1fr 1fr}.facts .f:nth-child(3){border-left:0}.facts .f:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}
.publicos{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vr{grid-template-columns:48px minmax(0,1fr);gap:12px 16px}.vr p{grid-column:2}.ftr .cols{grid-template-columns:1fr 1fr}.flx,.seg,.val,.ctt{padding:80px 0}}
@media (max-width:600px){.grid{grid-template-columns:1fr}form{grid-template-columns:1fr;padding:24px}.node{display:flex}.node .nh{justify-content:space-between}.modes,.who-f{grid-template-columns:1fr}.float{left:16px;right:16px;bottom:16px}.ftr .cols{grid-template-columns:1fr}}
