/*
Theme Name: Olho no Visto
Description: Tema custom para o site institucional Olho no Visto - Assessoria em Visto Americano B1/B2.
Author: Olho no Visto
Version: 1.0
Text Domain: olho-no-visto
*/

:root{
  --navy:#071A33;--navy2:#040F1F;--blue:#123A66;
  --red:#E2231A;--red2:#FF4433;--red3:#B01810;
  --cream:#F4F1EB;--off:#F8F6F1;--white:#fff;
  --g200:#E4E0D8;--g400:#9A9690;--g600:#5C5850;--g800:#1C1A17;
  --fd:'Plus Jakarta Sans',sans-serif;--fb:'DM Sans',sans-serif;
  --ez:cubic-bezier(.16,1,.3,1);--ei:cubic-bezier(.4,0,.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--fb);color:var(--g800);background:var(--white);overflow-x:hidden}
a{text-decoration:none;color:inherit}
ul{list-style:none}
img{max-width:100%;display:block}
button{border:none;background:none;font:inherit;cursor:pointer}
.grain{
  position:fixed;inset:-50%;width:200%;height:200%;
  pointer-events:none;z-index:9997;opacity:.032;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:256px 256px;animation:grain .4s steps(1) infinite;
}
@keyframes grain{
  0%{transform:translate(0,0)}10%{transform:translate(-2%,-3%)}20%{transform:translate(3%,2%)}
  30%{transform:translate(-1%,4%)}40%{transform:translate(3%,-1%)}50%{transform:translate(-3%,3%)}
  60%{transform:translate(2%,-4%)}70%{transform:translate(-2%,2%)}80%{transform:translate(4%,-2%)}90%{transform:translate(-1%,3%)}
}
.c{width:min(1240px,100%);margin-inline:auto;padding-inline:clamp(1.25rem,5vw,3.5rem)}
.sec{padding-block:clamp(5rem,9vw,9rem)}
#hdr{position:fixed;top:0;left:0;right:0;z-index:900;padding:.9rem 0;background:var(--navy2);transition:padding .3s var(--ei),box-shadow .3s}
#hdr.s{box-shadow:0 1px 30px rgba(0,0,0,.35);padding:.65rem 0}
.hdr-i{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.logo{display:flex;align-items:center}
.logo img{height:76px;width:auto;display:block}
footer .logo img{height:46px}
nav{display:flex;align-items:center;gap:.1rem}
nav a{font-size:.875rem;font-weight:500;color:rgba(255,255,255,.75);padding:.45rem .7rem;border-radius:6px;transition:color .2s,background .2s;white-space:nowrap}
nav a:hover{color:var(--white);background:rgba(255,255,255,.08)}
.btn-nav{font-family:var(--fb);font-size:.875rem;font-weight:600;color:var(--white);background:var(--red);padding:.55rem 1.35rem;border-radius:10px;transition:background .2s,transform .25s var(--ez),box-shadow .25s;box-shadow:0 3px 14px rgba(226,35,26,.4);display:inline-flex;align-items:center;gap:.4rem}
.btn-nav:hover{background:var(--red2);transform:translateY(-2px);box-shadow:0 6px 20px rgba(226,35,26,.45)}
.burger{display:none;flex-direction:column;gap:5px;padding:.4rem;z-index:901;cursor:pointer}
.burger span{display:block;width:22px;height:2px;background:var(--white);border-radius:2px;transition:transform .3s var(--ez),opacity .2s}
.burger.o span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.o span:nth-child(2){opacity:0}
.burger.o span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mnav{position:fixed;inset:0;background:var(--navy2);z-index:899;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.75rem;opacity:0;pointer-events:none;transform:translateY(-12px);transition:opacity .35s var(--ez),transform .35s var(--ez)}
.mnav.o{opacity:1;pointer-events:all;transform:none}
.mnav a{font-family:var(--fd);font-size:2rem;font-weight:700;color:rgba(255,255,255,.8);letter-spacing:-.02em;transition:color .2s}
.mnav a:hover{color:var(--red)}
#inicio{min-height:100vh;display:flex;align-items:center;background:var(--navy2);position:relative;overflow:hidden;padding-block:8rem 5rem}
.hero-tag{display:inline-flex;align-items:center;gap:.6rem;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-bottom:1.75rem}
.hero-tag::before{content:'';width:32px;height:1px;background:var(--red);opacity:.6}
.hero-h1{font-family:var(--fd);font-size:clamp(2.2rem,5.2vw,4.2rem);font-weight:700;color:var(--white);line-height:1.1;letter-spacing:-.025em;margin-bottom:1.5rem}
.word{display:inline-block;overflow:hidden;vertical-align:bottom}
.word-i{display:inline-block;transform:translateY(105%);transition:transform .75s var(--ez)}
.word-i.vis{transform:none}
.hero-sub{font-size:clamp(.95rem,1.8vw,1.15rem);font-weight:300;color:rgba(255,255,255,.62);max-width:520px;line-height:1.72;margin-bottom:2.5rem}
.hero-acts{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;margin-bottom:3.5rem}
.btn-p{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--fb);font-size:.95rem;font-weight:600;background:var(--red);color:var(--white);padding:.9rem 2rem;border-radius:10px;box-shadow:0 4px 22px rgba(226,35,26,.42);transition:background .2s,transform .3s var(--ez),box-shadow .3s}
.btn-p:hover{background:var(--red2);transform:translateY(-3px);box-shadow:0 10px 30px rgba(226,35,26,.5)}
.btn-g{font-size:.9rem;font-weight:500;color:rgba(255,255,255,.65);display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.2);transition:color .2s,border-color .2s}
.btn-g:hover{color:var(--white);border-color:rgba(255,255,255,.6)}
.hero-stats{display:flex;flex-wrap:wrap;gap:2rem 3rem;padding-top:2.5rem;border-top:1px solid rgba(255,255,255,.09)}
.stat-n{font-family:var(--fd);font-size:2rem;font-weight:700;color:var(--red);letter-spacing:-.025em;line-height:1;display:block}
.stat-l{font-size:.78rem;font-weight:400;color:rgba(255,255,255,.45);margin-top:.25rem;display:block}
.mqstrip{background:var(--red);padding:.9rem 0;overflow:hidden}
.mqtrack{display:flex;gap:0;animation:mq 28s linear infinite;white-space:nowrap;will-change:transform}
.mqtrack:hover{animation-play-state:paused}
.mqitem{display:inline-flex;align-items:center;gap:2rem;padding-right:2rem;font-family:var(--fd);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.9)}
.mqdot{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.6);flex-shrink:0}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.sec-tag{display:inline-flex;align-items:center;gap:.6rem;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-bottom:.6rem}
.sec-tag::before{content:'';width:24px;height:1px;background:var(--red)}
.sec-title{font-family:var(--fd);font-size:clamp(1.75rem,3.8vw,2.6rem);font-weight:700;letter-spacing:-.025em;line-height:1.15;color:var(--navy);margin-bottom:.75rem}
.sec-title.lt{color:var(--white)}
.sec-sub{font-size:1rem;font-weight:300;color:var(--g600);max-width:520px;line-height:1.7}
.sec-sub.lt{color:rgba(255,255,255,.55)}
.sec-head{margin-bottom:clamp(2.5rem,5vw,4rem)}
#servicos{background:var(--off)}
.svc-list{display:flex;flex-direction:column;gap:1.25rem}
.svc-item{display:grid;grid-template-columns:64px 1fr auto;gap:1.5rem 2rem;align-items:start;padding:2rem 2.25rem 2rem 1.75rem;background:var(--white);border:1px solid var(--g200);border-radius:16px;position:relative;overflow:hidden;transition:box-shadow .35s var(--ez),transform .35s var(--ez),border-color .3s}
.svc-item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--red);transform:scaleY(0);transform-origin:bottom;transition:transform .45s var(--ez)}
.svc-item:hover{box-shadow:0 26px 56px -30px rgba(7,26,51,.32);transform:translateY(-3px);border-color:transparent}
.svc-item:hover::before{transform:scaleY(1)}
.svc-num{font-family:var(--fd);font-size:1.3rem;font-weight:800;color:var(--red);line-height:1;letter-spacing:-.02em;width:52px;height:52px;border-radius:50%;background:var(--off);border:1.5px solid var(--g200);display:flex;align-items:center;justify-content:center;transition:background .3s,border-color .3s,color .3s}
.svc-item:hover .svc-num{background:var(--red);border-color:var(--red);color:var(--white)}
.svc-body h3{font-family:var(--fd);font-size:1.25rem;font-weight:700;color:var(--navy);letter-spacing:-.02em;margin-bottom:.5rem}
.svc-body p{font-size:.9rem;font-weight:300;color:var(--g600);line-height:1.65;margin-bottom:1.1rem}
.svc-checks{display:flex;flex-wrap:wrap;gap:.4rem .65rem}
.svc-check{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:500;color:var(--g600)}
.chk{width:16px;height:16px;border-radius:50%;background:rgba(45,122,79,.12);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.chk svg{width:9px;height:9px;stroke:#2D7A4F;stroke-width:2.5;fill:none}
.svc-cta-wrap{padding-top:.25rem}
.svc-cta{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--navy);padding:.6rem 1.35rem;border-radius:10px;border:1.5px solid var(--g200);transition:background .2s,border-color .2s,color .2s,transform .3s var(--ez);white-space:nowrap}
.svc-cta svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .3s var(--ez)}
.svc-item:hover .svc-cta{background:var(--red);border-color:var(--red);color:var(--white)}
.svc-item:hover .svc-cta svg{transform:translateX(3px)}
.svc-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--red);color:var(--white);padding:.25rem .7rem;border-radius:6px;margin-bottom:.6rem}
#como-funciona{background:var(--navy);position:relative;overflow:hidden}
.timeline{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:1.75rem;padding-top:.25rem}
.timeline-line{position:absolute;top:29px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16) 3%,rgba(255,255,255,.16) 97%,transparent);z-index:0}
.timeline-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:.4rem}
.timeline-marker{width:58px;height:58px;flex-shrink:0;border-radius:50%;background:var(--navy);border:2px solid var(--red);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:800;color:var(--red);font-size:1.05rem;letter-spacing:-.02em;transition:background .3s,color .3s}
.timeline-step:hover .timeline-marker{background:var(--red);color:var(--white)}
.timeline-body{display:flex;flex-direction:column;gap:.5rem}
.timeline-tag{font-family:var(--fd);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-top:.3rem}
.timeline-step h3{font-family:var(--fd);font-size:1.05rem;font-weight:700;color:var(--white);letter-spacing:-.02em}
.timeline-step p{font-size:.82rem;font-weight:300;color:rgba(255,255,255,.5);line-height:1.6}
.proc-cta{text-align:center;margin-top:3.5rem}
.proc-cta p{font-size:.95rem;color:rgba(255,255,255,.45);margin-bottom:1.25rem}
#diferenciais{background:var(--cream)}
.diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.diff-item{padding:2.5rem 2.25rem;background:var(--white);border:1px solid var(--g200);border-radius:16px;position:relative;overflow:hidden;transition:border-color .3s}
.diff-item::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ez)}
.diff-item:hover{border-color:transparent}
.diff-item:hover::after{transform:scaleX(1)}
.diff-i-num{position:absolute;top:.75rem;right:1.25rem;font-family:var(--fd);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--g200)}
.diff-icon{width:44px;height:44px;border-radius:12px;background:rgba(7,26,51,.06);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}
.diff-icon svg{width:22px;height:22px;stroke:var(--navy);stroke-width:1.5;fill:none}
.diff-item h3{font-family:var(--fd);font-size:1.1rem;font-weight:700;color:var(--navy);letter-spacing:-.02em;margin-bottom:.5rem;line-height:1.2}
.diff-item p{font-size:.875rem;font-weight:300;color:var(--g600);line-height:1.65}
#depoimentos{background:var(--white)}
.testi-wrap{position:relative;overflow:hidden;border:1px solid var(--g200);border-radius:14px}
.testi-slides{position:relative;min-height:320px}
.tslide{position:absolute;inset:0;padding:3.5rem clamp(2rem,5vw,4rem);display:flex;flex-direction:column;justify-content:space-between;opacity:0;transform:translateX(40px);transition:opacity .55s var(--ez),transform .55s var(--ez);pointer-events:none}
.tslide.act{opacity:1;transform:none;pointer-events:all;position:relative}
.tslide.out{opacity:0;transform:translateX(-40px)}
.t-qmark{font-family:var(--fd);font-size:6rem;line-height:.8;color:var(--red);opacity:.18;margin-bottom:.5rem;font-weight:800}
.t-text{font-family:var(--fd);font-size:clamp(1.15rem,2.5vw,1.6rem);font-weight:600;color:var(--navy);line-height:1.4;letter-spacing:-.02em;flex:1;margin-bottom:2rem}
.t-author{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.t-name{font-weight:600;font-size:.95rem;color:var(--navy)}
.t-loc{font-size:.8rem;color:var(--g400);margin-top:.15rem}
.t-stars{display:flex;gap:3px}
.t-stars svg{width:14px;height:14px;fill:var(--red)}
.testi-nav{display:flex;align-items:center;justify-content:space-between;padding:1.25rem clamp(2rem,5vw,4rem);border-top:1px solid var(--g200);background:var(--off)}
.t-arrows{display:flex;gap:.75rem}
.t-arr{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--g200);display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,transform .25s var(--ez)}
.t-arr:hover{background:var(--navy);border-color:var(--navy);transform:scale(1.08)}
.t-arr:hover svg{stroke:var(--white)}
.t-arr svg{width:16px;height:16px;stroke:var(--g600);stroke-width:2;fill:none;transition:stroke .2s}
.t-dots{display:flex;gap:.5rem;align-items:center}
.t-dot{width:6px;height:6px;border-radius:50%;background:var(--g200);transition:background .3s,width .3s;cursor:pointer}
.t-dot.a{background:var(--red);width:20px;border-radius:3px}
.testi-cta{text-align:center;margin-top:3rem}
.testi-cta p{font-size:.95rem;color:var(--g600);margin-bottom:1.25rem}
#contato{background:var(--navy2);position:relative;overflow:hidden}
#contato::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 80% 50%,rgba(226,35,26,.07) 0%,transparent 60%);pointer-events:none}
#ebook-promo{background:var(--off)}
.ebook-promo-card{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(2rem,5vw,3.5rem);align-items:center;background:var(--navy2);border-radius:20px;padding:clamp(2rem,5vw,3.5rem);position:relative;overflow:hidden}
.ebook-promo-card::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 15% 30%,rgba(226,35,26,.1) 0%,transparent 60%);pointer-events:none}
.ebook-promo-info{position:relative;z-index:1}
.ebook-promo-info .sec-sub{margin-bottom:1.75rem}
.ebook-promo-cover{position:relative;z-index:1;display:flex;justify-content:center}
.ebook-promo-cover .ebook-cover{max-width:220px}
.cta-grid{display:grid;grid-template-columns:.8fr 1.4fr;gap:3rem;align-items:center;position:relative;z-index:1}
.cta-cards-wrap{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.cta-cards-wrap .cta-box{padding:2.25rem 1.75rem}
.cta-contacts{display:flex;flex-direction:column;gap:.9rem;margin-top:2rem}
.cta-ci{display:flex;align-items:center;gap:1rem;color:rgba(255,255,255,.75);font-size:.9rem;transition:color .2s}
.cta-ci:hover{color:var(--white)}
.cta-ci-icon{width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s}
.cta-ci:hover .cta-ci-icon{background:rgba(255,255,255,.1)}
.cta-ci-icon svg{width:18px;height:18px;stroke:var(--red);stroke-width:1.5;fill:none}
.cta-ci-icon svg.wa path{fill:var(--red);stroke:none}
.cta-box{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:2.75rem 2.25rem;text-align:center;backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}
.cta-box-icon{width:64px;height:64px;border-radius:18px;background:rgba(226,35,26,.15);border:1px solid rgba(226,35,26,.2);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}
.cta-box-icon svg{width:30px;height:30px;stroke:var(--red);stroke-width:1.5;fill:none}
.cta-box h3{font-family:var(--fd);font-size:1.3rem;font-weight:700;color:var(--white);letter-spacing:-.02em;margin-bottom:.6rem}
.cta-box p{font-size:.88rem;color:rgba(255,255,255,.5);line-height:1.65;margin-bottom:1.5rem}
.contact-form{display:flex;flex-direction:column;gap:1rem;text-align:left;margin-bottom:1.25rem}
.form-row{display:flex;flex-direction:column;gap:.4rem}
.form-row label{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.form-row input,.form-row textarea{font-family:var(--fb);font-size:.9rem;color:var(--white);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:.7rem .9rem;transition:border-color .2s,background .2s;width:100%}
.form-row input::placeholder,.form-row textarea::placeholder{color:rgba(255,255,255,.32)}
.form-row input:focus,.form-row textarea:focus{outline:none;border-color:var(--red);background:rgba(255,255,255,.09)}
.form-row textarea{resize:vertical;min-height:70px}
.form-msg{font-size:.82rem;font-weight:500;padding:.75rem 1rem;border-radius:10px;margin-bottom:1.25rem;text-align:left}
.form-msg-ok{background:rgba(45,122,79,.15);border:1px solid rgba(45,122,79,.3);color:#8fd6ab}
.form-msg-err{background:rgba(226,35,26,.12);border:1px solid rgba(226,35,26,.3);color:#ffb3ac}
.btn-cta{display:flex;align-items:center;justify-content:center;gap:.6rem;font-size:.95rem;font-weight:600;color:var(--white);background:var(--red);border-radius:10px;padding:.9rem 1.5rem;width:100%;box-shadow:0 4px 22px rgba(226,35,26,.38);transition:background .2s,transform .3s var(--ez),box-shadow .3s}
.btn-cta:hover{background:var(--red2);transform:translateY(-3px);box-shadow:0 10px 32px rgba(226,35,26,.5)}
.btn-cta svg{width:18px;height:18px;fill:currentColor;flex-shrink:0}
.cta-note{font-size:.75rem;color:rgba(255,255,255,.28);margin-top:.85rem}
footer{background:#020813;padding:3rem 0 1.75rem;border-top:1px solid rgba(255,255,255,.05)}
.foot-grid{display:flex;flex-wrap:wrap;gap:2.5rem;justify-content:space-between;margin-bottom:2.5rem}
.foot-brand p{font-size:.8rem;color:rgba(255,255,255,.35);max-width:220px;line-height:1.65;margin-top:.7rem}
.foot-socials{display:flex;gap:.6rem;margin-top:1rem}
.foot-social{width:36px;height:36px;border-radius:9px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;transition:background .2s,transform .25s var(--ez)}
.foot-social:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
.foot-social svg{width:16px;height:16px;fill:rgba(255,255,255,.6);stroke:none}
.foot-social svg.i{fill:none;stroke:rgba(255,255,255,.6);stroke-width:1.6}
.foot-col h4{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:.9rem}
.foot-col ul{display:flex;flex-direction:column;gap:.55rem}
.foot-col a{font-size:.85rem;color:rgba(255,255,255,.45);transition:color .2s}
.foot-col a:hover{color:var(--red)}
.foot-bottom{border-top:1px solid rgba(255,255,255,.06);padding-top:1.5rem;display:flex;flex-wrap:wrap;gap:.5rem 2rem;justify-content:space-between}
.foot-bottom p{font-size:.78rem;color:rgba(255,255,255,.22)}
.waf{position:fixed;bottom:1.75rem;right:1.75rem;z-index:990;opacity:0;transform:scale(.7) translateY(20px);transition:opacity .4s var(--ez),transform .4s var(--ez);pointer-events:none}
.waf.vis{opacity:1;transform:none;pointer-events:all}
.waf-btn{width:56px;height:56px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 22px rgba(37,211,102,.45);position:relative;transition:transform .25s var(--ez)}
.waf-btn:hover{transform:scale(1.1)}
.waf-btn::before{content:'';position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(37,211,102,.28);animation:wapulse 2.2s ease-in-out infinite}
.waf-btn svg{width:28px;height:28px;fill:var(--white)}
.waf-tip{position:absolute;right:68px;top:50%;transform:translateY(-50%);background:var(--navy);color:var(--white);font-size:.78rem;font-weight:600;padding:.4rem .85rem;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.waf-tip::after{content:'';position:absolute;right:-5px;top:50%;transform:translateY(-50%);border:5px solid transparent;border-right:0;border-left-color:var(--navy)}
.waf:hover .waf-tip{opacity:1}
@keyframes wapulse{0%,100%{transform:scale(1);opacity:.6}50%{transform:scale(1.2);opacity:0}}
.r{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ez),transform .7s var(--ez)}
.r.in{opacity:1;transform:none}
.r.d1{transition-delay:.08s}.r.d2{transition-delay:.16s}.r.d3{transition-delay:.24s}.r.d4{transition-delay:.32s}.r.d5{transition-delay:.40s}
@media(max-width:1024px){
  .timeline{grid-template-columns:1fr;gap:2.25rem}
  .timeline-line{top:0;bottom:0;left:29px;right:auto;width:2px;height:auto;background:linear-gradient(180deg,transparent,rgba(255,255,255,.16) 3%,rgba(255,255,255,.16) 97%,transparent)}
  .timeline-step{flex-direction:row;align-items:flex-start;gap:1.25rem}
  .cta-grid{grid-template-columns:1fr}
  .cta-cards-wrap{max-width:620px;margin-inline:auto;width:100%}
  .ebook-promo-card{grid-template-columns:1fr;text-align:center}
  .ebook-promo-cover{order:-1}
}
@media(max-width:640px){
  .cta-cards-wrap{grid-template-columns:1fr}
}
@media(max-width:1080px){nav,.btn-nav{display:none}.burger{display:flex}}
@media(max-width:768px){
  .svc-item{grid-template-columns:48px 1fr;gap:1rem 1.25rem;padding:1.75rem}
  .svc-num{width:40px;height:40px;font-size:1.05rem}
  .svc-cta-wrap{grid-column:2}
  .diff-grid{grid-template-columns:1fr}
  .cta-grid{grid-template-columns:1fr}
  .tslide{padding:2rem 1.5rem}
  .t-qmark{font-size:4rem}
  .testi-nav{padding:1rem 1.5rem}
  .hero-h1{font-size:clamp(1.9rem,7vw,3rem)}
}
@media(max-width:768px){
  .mqtrack{animation-duration:14s}
}
@media(max-width:540px){
  .timeline-marker{width:48px;height:48px;font-size:.92rem}
  .timeline-line{left:24px}
  .svc-item{grid-template-columns:1fr;padding:1.5rem}
  .svc-num{width:44px;height:44px;font-size:1.1rem}
  .svc-cta-wrap{grid-column:1}
  .hero-stats{gap:1.25rem 2rem}
  .foot-grid{gap:2rem}
  .diff-item{padding:1.75rem 1.5rem}
  .cta-box{padding:2rem 1.5rem}
  .hero-acts{flex-direction:column;align-items:flex-start}
  .hero-acts .btn-p{width:100%;justify-content:center}
  .waf{bottom:1rem;right:1rem}
  .waf-btn{width:52px;height:52px}
}
@media(max-width:380px){
  .hero-h1{font-size:1.75rem}
  .sec-title{font-size:1.6rem}
}

/* ===== modernização ===== */
.hero-em{color:var(--red);font-style:normal}
.hero-blob{position:absolute;width:640px;height:640px;max-width:70vw;max-height:70vw;border-radius:50%;background:radial-gradient(circle,rgba(226,35,26,.32) 0%,transparent 70%);filter:blur(70px);right:-8%;top:5%;pointer-events:none;z-index:0}
#inicio .c{position:relative;z-index:1}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.hero-col{min-width:0}
.hero-visual{position:relative}
.hero-visual-frame{position:relative;border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 90px -24px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.04) inset;aspect-ratio:1/1}
.hero-visual-frame img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.hero-badge{position:absolute;left:-1rem;bottom:-1.25rem;background:var(--white);border-radius:12px;padding:.9rem 1.25rem;box-shadow:0 24px 48px -16px rgba(0,0,0,.4);display:flex;flex-direction:column;gap:.05rem;line-height:1}
.hero-badge-n{font-family:var(--fd);font-size:1.4rem;font-weight:800;color:var(--red);letter-spacing:-.02em}
.hero-badge-l{font-size:.7rem;font-weight:600;color:var(--g600);text-transform:uppercase;letter-spacing:.04em;margin-top:.2rem}
@media(max-width:1024px){
  .hero-grid{grid-template-columns:1fr}
  .hero-visual{order:2;max-width:380px;width:100%;margin-inline:auto;margin-top:1rem}
  .hero-blob{right:-20%;top:-5%}
}
@media(max-width:540px){
  .hero-badge{padding:.7rem 1rem;left:.5rem;bottom:-1rem}
  .hero-badge-n{font-size:1.15rem}
  .logo img{height:56px}
}

.diff-item{transition:box-shadow .35s var(--ez),transform .35s var(--ez),border-color .3s}
.diff-item:hover{box-shadow:0 24px 54px -28px rgba(7,26,51,.35);transform:translateY(-4px)}
.cta-box{box-shadow:0 34px 80px -30px rgba(0,0,0,.55)}
.testi-wrap{box-shadow:0 30px 70px -36px rgba(7,26,51,.25)}

.proof-strip{margin-top:3rem}
.proof-label{text-align:center;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g400);margin-bottom:1.5rem}
.proof-track-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.proof-track{display:flex;gap:1.25rem;width:max-content;animation:proofscroll 36s linear infinite}
.proof-track:hover{animation-play-state:paused}
.proof-card{flex-shrink:0;width:210px;height:340px;border-radius:18px;overflow:hidden;border:1px solid var(--g200);box-shadow:0 18px 42px -20px rgba(7,26,51,.3);transition:transform .3s var(--ez),box-shadow .3s var(--ez)}
.proof-card:hover{transform:translateY(-6px);box-shadow:0 26px 54px -22px rgba(7,26,51,.4)}
.proof-card img{width:100%;height:100%;object-fit:cover;display:block}
@keyframes proofscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:768px){
  .proof-card{width:170px;height:280px}
}
@media(max-width:540px){
  .proof-card{width:145px;height:240px;border-radius:14px}
  .proof-track{gap:.9rem}
}

/* ===== blog ===== */
#blog-hero{background:var(--navy2);position:relative;overflow:hidden;padding-block:10rem 4rem}
#blog-hero .sec-title{margin-bottom:.75rem}
#blog-list{background:var(--off)}
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.75rem;margin-top:1rem}
.post-card{background:var(--white);border:1px solid var(--g200);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .3s var(--ez),transform .3s var(--ez)}
.post-card:hover{box-shadow:0 24px 54px -28px rgba(7,26,51,.3);transform:translateY(-4px)}
.post-card-img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--g200)}
.post-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.post-card-body{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.post-card-date{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--red)}
.post-card h3{font-family:var(--fd);font-size:1.1rem;font-weight:700;color:var(--navy);letter-spacing:-.02em;line-height:1.3}
.post-card h3 a{color:inherit}
.post-card h3 a:hover{color:var(--red)}
.post-card p{font-size:.85rem;font-weight:300;color:var(--g600);line-height:1.6;flex:1}
.post-card-more{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:var(--navy);margin-top:.25rem}
.post-card-more svg{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .3s var(--ez)}
.post-card:hover .post-card-more svg{transform:translateX(3px)}
.pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-top:3rem}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 .75rem;border-radius:10px;border:1.5px solid var(--g200);color:var(--navy);font-size:.85rem;font-weight:600;transition:background .2s,border-color .2s,color .2s}
.pagination .page-numbers.current{background:var(--red);border-color:var(--red);color:var(--white)}
.pagination .page-numbers:hover{border-color:var(--red);color:var(--red)}

/* ===== artigo (single/page) ===== */
.article-sec{background:var(--white)}
.article-wrap{max-width:760px}
.article-title{font-family:var(--fd);font-size:clamp(1.75rem,4vw,2.75rem);font-weight:700;letter-spacing:-.025em;line-height:1.15;color:var(--navy);margin-bottom:.75rem}
.article-meta{font-size:.82rem;color:var(--g400);margin-bottom:2rem}
.article-featured{border-radius:16px;overflow:hidden;margin-bottom:2.5rem}
.article-featured img{width:100%;display:block}
.article-content{font-size:1rem;color:var(--g800);line-height:1.8}
.article-content p{margin-bottom:1.5rem}
.article-content h2{font-family:var(--fd);font-size:1.5rem;font-weight:700;color:var(--navy);letter-spacing:-.02em;margin:2.5rem 0 1rem}
.article-content h3{font-family:var(--fd);font-size:1.2rem;font-weight:700;color:var(--navy);letter-spacing:-.02em;margin:2rem 0 .9rem}
.article-content ul{list-style:disc;margin:0 0 1.5rem 1.25rem}
.article-content ol{list-style:decimal;margin:0 0 1.5rem 1.25rem}
.article-content li{margin-bottom:.5rem;line-height:1.7}
.article-content a{color:var(--red);text-decoration:underline}
.article-content blockquote{border-left:3px solid var(--red);padding-left:1.25rem;margin:2rem 0;font-style:italic;color:var(--g600)}
.article-content img{border-radius:12px;margin:1.5rem 0;max-width:100%}
.article-cta{margin-top:3.5rem;padding:2.25rem;background:var(--off);border-radius:16px;text-align:center}
.article-cta p{font-size:1rem;font-weight:600;color:var(--navy);margin-bottom:1.25rem}

/* ===== ebook ===== */
#ebook-hero{background:var(--navy2);position:relative;overflow:hidden;padding-block:9rem 5rem}
#ebook-hero .c{position:relative;z-index:1}
.ebook-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.ebook-cover-col{display:flex;justify-content:center}
.ebook-cover{width:100%;max-width:320px;aspect-ratio:3/4;background:linear-gradient(160deg,var(--navy) 0%,var(--navy2) 100%);border-radius:16px;border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 90px -24px rgba(0,0,0,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;position:relative;overflow:hidden}
.ebook-cover::before{content:'';position:absolute;top:0;left:0;right:0;height:6px;background:var(--red)}
.ebook-cover-tag{font-family:var(--fd);font-size:.65rem;font-weight:700;letter-spacing:.12em;color:var(--red);margin-bottom:1.5rem}
.ebook-cover h2{font-family:var(--fd);font-size:1.6rem;font-weight:800;color:var(--white);letter-spacing:-.02em;margin-bottom:.5rem}
.ebook-cover p{font-family:var(--fd);font-size:1rem;font-weight:600;color:rgba(255,255,255,.6);line-height:1.4}
.ebook-cover-author{margin-top:2rem;font-size:.78rem;color:rgba(255,255,255,.4)}
#ebook-autor{background:var(--off)}
.author-card{display:flex;align-items:center;gap:2rem;background:var(--white);border:1px solid var(--g200);border-radius:16px;padding:2.5rem;flex-wrap:wrap}
.author-avatar{width:80px;height:80px;border-radius:50%;background:var(--navy);color:var(--white);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:800;font-size:1.5rem;flex-shrink:0}
.author-info{flex:1;min-width:220px}
.author-info h3{font-family:var(--fd);font-size:1.3rem;font-weight:700;color:var(--navy);margin:.4rem 0 .6rem}
.author-info p{font-size:.9rem;color:var(--g600);line-height:1.65}
#ebook-oferta{background:var(--navy2);position:relative;overflow:hidden}
.ebook-offer{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,4rem);align-items:center;position:relative;z-index:1}
.ebook-guarantee{display:flex;align-items:center;gap:.75rem;margin-top:1.5rem;font-size:.85rem;color:rgba(255,255,255,.6)}
.ebook-guarantee svg{flex-shrink:0}
.ebook-price-tag{display:block;font-size:.78rem;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem}
.ebook-price{display:block;font-family:var(--fd);font-size:2.5rem;font-weight:800;color:var(--white);margin-bottom:1.5rem}
#ebook-faq{background:var(--white)}
.faq-list{display:flex;flex-direction:column;gap:1rem;max-width:760px}
.faq-item{background:var(--off);border-radius:14px;padding:1.25rem 1.5rem}
.faq-item summary{font-family:var(--fd);font-weight:700;color:var(--navy);cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';float:right;color:var(--red);font-size:1.2rem;line-height:1}
.faq-item[open] summary::after{content:'−'}
.faq-item p{margin-top:.85rem;font-size:.88rem;color:var(--g600);line-height:1.65}

@media(max-width:1024px){
  .ebook-grid,.ebook-offer{grid-template-columns:1fr}
  .ebook-cover-col{order:2;margin-top:1rem}
}
@media(max-width:540px){
  .author-card{padding:1.75rem;text-align:center;justify-content:center}
  .post-grid{grid-template-columns:1fr}
}
