/* MODO Editora — folha de estilo compartilhada (PT e EN) */
:root{
  --paper:#f4f1ea; --paper-2:#ebe6db; --ink:#182226; --ink-2:#3d4a4e; --mute:#8c7c6b;
  --teal:#0c707d; --teal-deep:#0a3f47; --teal-ink:#0b2a30;
  --orange:#e67345; --orange-deep:#c95a2f; --green:#8da66e; --pink:#e98f95;
  --line:rgba(24,34,38,.14);
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Figtree","Helvetica Neue",Arial,sans-serif;
  --max:1180px;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.055;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;margin:0;text-wrap:balance;letter-spacing:-.01em}
h1{font-size:clamp(2.6rem,6vw,5rem);font-variation-settings:"opsz" 144}
h2{font-size:clamp(2rem,4vw,3.2rem);font-variation-settings:"opsz" 96}
h3{font-size:1.45rem;font-variation-settings:"opsz" 48}
p{margin:0}
em{font-style:italic;font-variation-settings:"opsz" 144}
.wrap{width:min(var(--max),calc(100% - 2.5rem));margin-inline:auto;position:relative;z-index:1}
.eyebrow{font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);display:flex;align-items:center;gap:.7rem}
.eyebrow::before{content:"";width:2rem;height:2px;background:currentColor;opacity:.6}
.lead{font-size:1.15rem;color:var(--ink-2);max-width:34em}
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 1.5rem;border-radius:999px;font-weight:600;font-size:.98rem;text-decoration:none;transition:transform .35s var(--ease),background .3s,box-shadow .3s;border:1.5px solid transparent;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 8px 24px -10px rgba(230,115,69,.7)}
.btn-primary:hover{background:var(--orange-deep)}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-ghost:hover{background:var(--ink);color:var(--paper)}
.on-dark .btn-ghost{border-color:rgba(255,255,255,.55);color:#fff}
.on-dark .btn-ghost:hover{background:#fff;color:var(--teal-ink)}
.btn svg{width:1.05em;height:1.05em;transition:transform .35s var(--ease)}
.btn:hover svg{transform:translateX(3px)}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}

/* NAV */
.nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(244,241,234,.82);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.nav.scrolled{box-shadow:0 10px 30px -20px rgba(24,34,38,.35)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:74px;gap:1.5rem}
.nav .logo img{height:34px;width:auto}
.nav ul{list-style:none;display:flex;gap:2rem;margin:0;padding:0}
.nav ul a{text-decoration:none;font-weight:500;font-size:.95rem;color:var(--ink-2);position:relative;padding:.3rem 0}
.nav ul a::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav ul a:hover::after{transform:scaleX(1)}
.nav .btn{padding:.65rem 1.2rem;font-size:.9rem}
.nav-actions{display:flex;align-items:center;gap:.75rem;flex:none}
.menu-btn{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;color:var(--ink)}

/* SELETOR DE IDIOMA */
.lang{position:relative;display:inline-flex;align-items:center;gap:.45rem;padding:.52rem .95rem .52rem .78rem;border-radius:999px;background:var(--teal);color:#fff;text-decoration:none;font-weight:700;font-size:.82rem;letter-spacing:.09em;white-space:nowrap;box-shadow:0 8px 20px -10px rgba(12,112,125,.9);transition:transform .35s var(--ease),background .3s}
.lang:hover{transform:translateY(-2px);background:var(--teal-deep)}
.lang svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.9;flex:none}
.lang::after{content:"";position:absolute;inset:-4px;border-radius:999px;border:2px solid var(--teal);opacity:0;pointer-events:none;animation:langpulse 2.4s var(--ease) 3}
@keyframes langpulse{0%{opacity:.75;transform:scale(1)}60%,100%{opacity:0;transform:scale(1.4)}}

@media (max-width:900px){
  .nav ul{display:none;position:absolute;left:0;right:0;top:74px;background:var(--paper);flex-direction:column;gap:0;padding:.5rem 1.25rem 1.25rem;border-bottom:1px solid var(--line)}
  .nav ul.open{display:flex}
  .nav ul a{display:block;padding:.85rem 0;font-size:1.1rem;border-bottom:1px solid var(--line)}
  .nav .btn{display:none}
  .menu-btn{display:grid;place-items:center}
}

/* HERO */
.hero{padding:clamp(3rem,8vw,6.5rem) 0 clamp(3rem,6vw,5rem);overflow:hidden;position:relative}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.hero-copy{display:flex;flex-direction:column;gap:1.6rem}
.hero h1 .swap{display:inline-block;position:relative;color:var(--teal);font-style:italic;font-weight:300;min-width:4.2ch;vertical-align:baseline}
.hero h1 .swap span{display:inline-block;transition:opacity .45s var(--ease),transform .45s var(--ease)}
.hero h1 .swap span.out{opacity:0;transform:translateY(-.35em)}
.hero h1 .swap span.in{opacity:0;transform:translateY(.35em)}
.hero h1 .swap::after{content:"";position:absolute;left:0;right:0;bottom:.02em;height:.06em;background:var(--orange);border-radius:2px;transform-origin:left;animation:underline 4s var(--ease) infinite}
@keyframes underline{0%{transform:scaleX(0)}18%{transform:scaleX(1)}85%{transform:scaleX(1);transform-origin:left}86%{transform-origin:right}100%{transform:scaleX(0);transform-origin:right}}
.hero-actions{display:flex;gap:.9rem;flex-wrap:wrap}
.hero-foot{display:flex;gap:1.2rem;align-items:center;font-size:.85rem;color:var(--mute);margin-top:.5rem}
.hero-foot .dots{display:flex;gap:.35rem}
.hero-foot .dots i{width:10px;height:10px;border-radius:50%;display:block}

/* PILHA DE LIVROS
   Modelo: a CAPA fica no plano z=0 e o corpo do livro cresce para TRÁS (-Z).
   Cada face nasce colada a uma borda da capa e gira 90deg para dentro.
   O livro é virado para a direita (rotateY positivo), então a LOMBADA aparece. */
.stage{perspective:1500px;height:600px;position:relative;max-width:480px;margin-left:auto;width:100%}
.stack{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .6s var(--ease)}
.book{position:absolute;width:186px;height:266px;transform-style:preserve-3d;animation:float 7s ease-in-out infinite;--d:29px;--paper-block:repeating-linear-gradient(90deg,#fcf9f0 0 2px,#e9e2d2 2px 3px);--paper-block-h:repeating-linear-gradient(0deg,#fcf9f0 0 2px,#e9e2d2 2px 3px)}
.book>*{position:absolute;backface-visibility:hidden;background:inherit}

/* capa */
.book .cover{inset:0;border-radius:2px 7px 7px 2px;display:flex;align-items:center;justify-content:center;padding:1.3rem 1rem 1.3rem 1.6rem;color:#fff;overflow:hidden;box-shadow:0 26px 48px -22px rgba(24,34,38,.6)}
.book .cover::before{content:"";position:absolute;left:0;top:0;bottom:0;width:18px;background:linear-gradient(90deg,rgba(0,0,0,.26),rgba(0,0,0,0))}
.book .cover::after{content:"";position:absolute;inset:0;background:linear-gradient(118deg,rgba(255,255,255,.15),rgba(255,255,255,0) 45%)}
.book .cover .t{font-family:var(--serif);font-size:1.2rem;line-height:1.18;font-variation-settings:"opsz" 48;position:relative;text-align:center;text-wrap:balance;overflow-wrap:normal;word-break:keep-all;hyphens:none;max-width:100%}
html[lang="pt-BR"] .b1 .cover .t,html[lang="pt-BR"] .b4 .cover .t{font-size:1rem;letter-spacing:-.01em}
html[lang="en"] .b1 .cover .t,html[lang="en"] .b3 .cover .t{font-size:1.05rem;letter-spacing:-.01em}

/* lombada: nasce na borda esquerda da capa e entra para trás */
.book .spine{top:0;bottom:0;right:100%;width:var(--d);transform-origin:right center;transform:rotateY(-90deg);filter:brightness(.72);border-radius:2px 0 0 2px}
.book .spine::after{content:"";position:absolute;right:0;top:0;bottom:0;width:2px;background:rgba(255,255,255,.2)}
/* corte das folhas: borda direita */
.book .edge{top:0;bottom:0;left:100%;width:var(--d);transform-origin:left center;transform:rotateY(90deg);background:var(--paper-block)}
/* cabeça do bloco: borda superior */
.book .head{left:0;right:0;bottom:100%;height:var(--d);transform-origin:center bottom;transform:rotateX(90deg);background:var(--paper-block-h)}
/* face de baixo: os livros acima do centro do palco são vistos por baixo, então ela também precisa existir */
.book .foot{left:0;right:0;top:100%;height:var(--d);transform-origin:center top;transform:rotateX(-90deg);background:var(--paper-block-h)}
/* contracapa */
.book .back{inset:0;transform:translateZ(calc(var(--d) * -1)) rotateY(180deg);filter:brightness(.78);border-radius:2px 7px 7px 2px}

.b1{background:var(--teal);left:4%;top:1%;transform:rotateY(17deg) rotateX(-8deg);animation-delay:0s}
.b2{background:var(--orange);left:53%;top:0;transform:rotateY(14deg) rotateX(-7deg);animation-delay:-2.2s}
.b3{background:var(--green);left:6%;top:53%;transform:rotateY(15deg) rotateX(-9deg);animation-delay:-4.1s}
.b4{background:var(--pink);left:55%;top:50%;transform:rotateY(18deg) rotateX(-7deg);animation-delay:-5.6s}
@keyframes float{0%,100%{margin-top:0}50%{margin-top:-14px}}
.stage .halo{position:absolute;inset:10% 5%;border-radius:50%;background:radial-gradient(closest-side,rgba(12,112,125,.14),transparent 70%);filter:blur(10px);z-index:-1}
@media (max-width:900px){
  .hero .wrap{grid-template-columns:1fr}
  .stage{height:500px;max-width:360px;margin-inline:auto;width:100%}
  .book{width:138px;height:198px;--d:21px}
  .book .cover{padding:1rem .8rem 1rem 1.2rem}
  .book .cover .t{font-size:.95rem}
  html[lang="pt-BR"] .b1 .cover .t,html[lang="pt-BR"] .b4 .cover .t{font-size:.78rem}
  html[lang="en"] .b1 .cover .t,html[lang="en"] .b3 .cover .t{font-size:.82rem}
  .b1{left:2%;top:0}.b2{left:54%;top:5%}.b3{left:5%;top:54%}.b4{left:56%;top:58%}
}

/* MARQUEE */
.marquee{border-block:1px solid var(--line);padding:.9rem 0;overflow:hidden;background:var(--paper-2)}
.marquee .track{display:flex;gap:3rem;width:max-content;animation:marq 38s linear infinite;font-family:var(--serif);font-size:1.15rem;font-variation-settings:"opsz" 48;color:var(--ink-2)}
.marquee .track span{display:flex;align-items:center;gap:3rem;white-space:nowrap}
.marquee .track i{width:9px;height:9px;border-radius:50%;display:inline-block}
@keyframes marq{to{transform:translateX(-50%)}}

/* SEÇÕES */
section{padding:clamp(4rem,9vw,7.5rem) 0}
.sec-head{display:grid;grid-template-columns:1fr 1.4fr;gap:2rem;align-items:end;margin-bottom:clamp(2.5rem,5vw,4rem)}
.sec-head .lead{margin-top:.2rem}
@media (max-width:900px){.sec-head{grid-template-columns:1fr}}
.on-dark{background:var(--teal-ink);color:#eef1ee}
.on-dark .eyebrow{color:var(--green)}
.on-dark .lead{color:rgba(238,241,238,.78)}
.on-dark .line{--line:rgba(255,255,255,.14)}

/* QUEM SOMOS */
.about .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:start}
.about .text{display:flex;flex-direction:column;gap:1.4rem}
.about .text p{color:var(--ink-2);max-width:36em}
.about .text p.big{font-family:var(--serif);font-size:1.35rem;color:var(--ink);line-height:1.4;font-variation-settings:"opsz" 48}
.quote{position:relative;padding:2.4rem 2.2rem 2.2rem;background:var(--teal);color:#fff;border-radius:4px;transform:rotate(-1.2deg);box-shadow:0 30px 60px -30px rgba(12,112,125,.7);margin-top:1rem}
.quote::before{content:"“";position:absolute;top:-.35em;left:1.2rem;font-family:var(--serif);font-size:7rem;line-height:1;color:var(--pink);font-weight:300}
.quote p{font-family:var(--serif);font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.2;font-variation-settings:"opsz" 96;font-weight:300}
.quote p b{font-weight:500;font-style:italic}
.quote .who{margin-top:1.4rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;opacity:.8}
@media (max-width:900px){.about .wrap{grid-template-columns:1fr}}

/* NÚMEROS */
.numbers{padding-top:0}
.nums{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.num{padding:2.2rem 1.6rem 2.2rem 0;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:.6rem}
.num:last-child{border-right:0}
.num + .num{padding-left:1.6rem}
.num .v{font-family:var(--serif);font-size:clamp(2.8rem,5vw,4.2rem);line-height:1;font-variation-settings:"opsz" 144;font-weight:300;color:var(--teal);font-variant-numeric:tabular-nums}
.num .v sup{font-size:.4em;vertical-align:top;top:.5em;position:relative;color:var(--orange)}
.num .l{color:var(--ink-2);font-size:.95rem;max-width:22em}
@media (max-width:900px){.nums{grid-template-columns:1fr 1fr}.num:nth-child(2){border-right:0}.num:nth-child(3){padding-left:0;border-top:1px solid var(--line)}.num:nth-child(4){border-top:1px solid var(--line)}}
@media (max-width:520px){.nums{grid-template-columns:1fr}.num{border-right:0;padding-left:0!important;border-top:1px solid var(--line)}.num:first-child{border-top:0}}

/* LINHAS EDITORIAIS */
.lines-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.line-card{position:relative;padding:2rem 1.6rem 2.2rem;border-radius:4px 14px 14px 4px;color:#fff;min-height:330px;display:flex;flex-direction:column;justify-content:flex-end;gap:.8rem;overflow:hidden;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.line-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:14px;background:rgba(0,0,0,.18)}
.line-card::after{content:"";position:absolute;left:14px;top:0;bottom:0;width:1px;background:rgba(255,255,255,.35)}
.line-card:hover{transform:translateY(-8px) rotate(-.6deg);box-shadow:0 34px 50px -30px rgba(24,34,38,.6)}
.line-card .n{font-family:var(--serif);font-size:4.5rem;line-height:1;position:absolute;top:1rem;right:1.2rem;opacity:.22;font-weight:300;font-variation-settings:"opsz" 144}
.line-card h3{font-size:1.5rem;color:#fff}
.line-card p{font-size:.93rem;line-height:1.5;color:rgba(255,255,255,.9)}
.line-card .tag{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;opacity:.85;font-weight:600}
.c-teal{background:var(--teal)}.c-pink{background:var(--pink)}.c-orange{background:var(--orange)}.c-green{background:var(--green)}
.lines-cta{margin-top:2.5rem;display:flex;gap:1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-top:2rem;border-top:1px solid var(--line)}
.lines-cta p{font-family:var(--serif);font-size:1.4rem;font-variation-settings:"opsz" 48}
@media (max-width:1000px){.lines-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.lines-grid{grid-template-columns:1fr}.line-card{min-height:240px}}

/* CAMINHOS */
.paths{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.path{border:1px solid rgba(255,255,255,.14);border-radius:6px;padding:2.4rem 2.2rem;display:flex;flex-direction:column;gap:1.4rem;background:rgba(255,255,255,.03);position:relative;overflow:hidden;transition:background .4s}
.path:hover{background:rgba(255,255,255,.06)}
.path .pill{align-self:flex-start;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:.4rem .8rem;border-radius:999px}
.path.a .pill{background:var(--orange);color:#fff}
.path.b .pill{background:var(--green);color:var(--teal-ink)}
.path h3{font-size:1.9rem;color:#fff}
.path .sub{color:rgba(238,241,238,.72);font-size:1rem}
.path ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem;border-top:1px solid rgba(255,255,255,.14);padding-top:1.4rem}
.path li{display:flex;gap:.8rem;align-items:flex-start;font-size:.97rem;color:rgba(238,241,238,.9)}
.path li::before{content:"";flex:none;width:9px;height:9px;border-radius:50%;margin-top:.5em;background:var(--pink)}
.path.b li::before{background:var(--green)}
.paths-note{margin-top:2rem;color:rgba(238,241,238,.7);font-family:var(--serif);font-size:1.15rem;font-variation-settings:"opsz" 48;text-align:center;max-width:44em;margin-inline:auto}
@media (max-width:900px){.paths{grid-template-columns:1fr}}

/* PROCESSO */
.timeline{position:relative;display:grid;grid-template-columns:1fr;gap:0;max-width:820px;margin-inline:auto}
.timeline::before{content:"";position:absolute;left:31px;top:12px;bottom:12px;width:2px;background:var(--line)}
.timeline .prog{position:absolute;left:31px;top:12px;width:2px;height:0;background:var(--orange);transition:height .2s linear}
.step{display:grid;grid-template-columns:64px 1fr;gap:1.6rem;padding:1.6rem 0;align-items:start}
.step .k{width:64px;height:64px;border-radius:50%;background:var(--paper);border:2px solid var(--line);display:grid;place-items:center;font-family:var(--serif);font-size:1.5rem;color:var(--teal);position:relative;z-index:1;transition:background .4s,color .4s,border-color .4s,transform .4s var(--ease)}
.step.lit .k{background:var(--teal);color:#fff;border-color:var(--teal);transform:scale(1.05)}
.step h3{margin-bottom:.4rem}
.step p{color:var(--ink-2);max-width:32em}
@media (max-width:560px){.step{grid-template-columns:44px 1fr;gap:1rem}.step .k{width:44px;height:44px;font-size:1.1rem}.timeline::before,.timeline .prog{left:21px}}

/* COMPROMISSOS */
.promises{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:rgba(255,255,255,.35)}
.promise{padding:2rem 1.8rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:.7rem;transition:background .4s}
.promise:hover{background:rgba(255,255,255,.7)}
.promise:nth-child(3n){border-right:0}
.promise:nth-child(n+4){border-bottom:0}
.promise .ic{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:#fff;margin-bottom:.4rem}
.promise .ic svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.promise h3{font-size:1.25rem}
.promise p{color:var(--ink-2);font-size:.95rem}
@media (max-width:900px){.promises{grid-template-columns:1fr 1fr}.promise:nth-child(3n){border-right:1px solid var(--line)}.promise:nth-child(2n){border-right:0}.promise:nth-child(n+4){border-bottom:1px solid var(--line)}.promise:nth-child(n+5){border-bottom:0}}
@media (max-width:560px){.promises{grid-template-columns:1fr}.promise{border-right:0!important;border-bottom:1px solid var(--line)!important}.promise:last-child{border-bottom:0!important}}

/* TIME */
.team .wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:4rem;align-items:center}
.portrait{position:relative;max-width:340px;margin-inline:auto}
.portrait img{border-radius:4px;position:relative;z-index:2;aspect-ratio:4/4.2;object-fit:cover;object-position:center 20%;filter:grayscale(1) contrast(1.05)}
.portrait::before{content:"";position:absolute;inset:0;transform:translate(-18px,18px);background:var(--orange);border-radius:4px;z-index:1;transition:transform .6s var(--ease)}
.portrait::after{content:"";position:absolute;inset:0;transform:translate(18px,-18px);border:2px solid var(--teal);border-radius:4px;z-index:0;transition:transform .6s var(--ease)}
.portrait:hover::before{transform:translate(-26px,26px)}
.portrait:hover::after{transform:translate(26px,-26px)}
.portrait .cap{position:absolute;left:-1rem;bottom:2rem;z-index:3;background:var(--paper);padding:.8rem 1.1rem;border-radius:3px;box-shadow:0 20px 40px -20px rgba(24,34,38,.5);transform:rotate(-2deg)}
.portrait .cap b{display:block;font-family:var(--serif);font-size:1.1rem;font-weight:500}
.portrait .cap span{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.team-copy{display:flex;flex-direction:column;gap:1.6rem}
.team-copy .q{font-family:var(--serif);font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.25;font-variation-settings:"opsz" 96;font-weight:300;color:var(--teal)}
.team-copy p{color:var(--ink-2);max-width:36em}
.team-copy .roles{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.team-copy .role b{display:block;font-family:var(--serif);font-size:1.15rem;font-weight:500;margin-bottom:.3rem}
.team-copy .role span{font-size:.9rem;color:var(--ink-2)}
.team-copy .role i{display:block;width:32px;height:4px;border-radius:2px;margin-bottom:.7rem}
@media (max-width:900px){.team .wrap{grid-template-columns:1fr}.portrait{max-width:300px}}
@media (max-width:560px){.team-copy .roles{grid-template-columns:1fr}}

/* CTA */
.cta{position:relative;overflow:hidden}
.cta .wrap{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.6rem}
.cta h2{font-size:clamp(2.2rem,5vw,4rem);max-width:16em;color:#fff}
.cta h2 em{color:var(--pink)}
.cta .lead{max-width:36em}
.cta .mail{font-family:var(--serif);font-size:clamp(1.2rem,2.4vw,1.7rem);color:#fff;text-decoration:none;border-bottom:2px solid var(--orange);padding-bottom:.15rem;transition:color .3s}
.cta .mail:hover{color:var(--pink)}
.cta .bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.cta .bg i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.35}
.cta .bg i:nth-child(1){width:420px;height:420px;background:var(--teal);left:-120px;top:-100px}
.cta .bg i:nth-child(2){width:360px;height:360px;background:var(--orange);right:-100px;bottom:-140px;opacity:.28}
.cta .bg i:nth-child(3){width:260px;height:260px;background:var(--green);right:25%;top:-120px;opacity:.22}

/* RODAPÉ */
footer{background:var(--teal-ink);color:rgba(238,241,238,.8);border-top:1px solid rgba(255,255,255,.1);padding:3.5rem 0 2.5rem}
footer .wrap{display:grid;grid-template-columns:1.2fr 2fr;gap:3rem;align-items:start}
footer .brand img{height:40px;width:auto;margin-bottom:1rem}
footer .brand p{font-family:var(--serif);font-size:1.05rem;color:rgba(238,241,238,.7);max-width:22em;font-variation-settings:"opsz" 48}
.channels{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 2rem}
.channel{display:flex;flex-direction:column;gap:.15rem;padding-left:1rem;border-left:2px solid}
.channel .l{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:rgba(238,241,238,.6)}
.channel a{color:#fff;text-decoration:none;font-weight:500;font-size:1.02rem;word-break:break-all}
.channel a:hover{color:var(--pink)}
.channel small{font-size:.85rem;color:rgba(238,241,238,.6)}
.foot-bottom{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;font-size:.82rem;color:rgba(238,241,238,.55)}
.foot-lang{color:rgba(238,241,238,.75);text-decoration:none;border-bottom:1px solid rgba(238,241,238,.35);transition:color .3s}
.foot-lang:hover{color:#fff}
@media (max-width:900px){footer .wrap{grid-template-columns:1fr}}
@media (max-width:560px){.channels{grid-template-columns:1fr}}

/* REVELAÇÃO AO ROLAR */
.rv{opacity:1;transform:none}
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .rv.show{opacity:1;transform:none}
.js .rv.d1{transition-delay:.08s}.js .rv.d2{transition-delay:.16s}.js .rv.d3{transition-delay:.24s}.js .rv.d4{transition-delay:.32s}.js .rv.d5{transition-delay:.4s}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .js .rv{opacity:1;transform:none}
}
