/* Isabela Furquim Advocacia — LP v2
   Paleta (manual da marca, RGB):
   marsala #2A070D · nude médio #B09D8F · nude suave #E3DCD5 · off-white #F0EEE9
   Tipografia: Aboreto (títulos) · Raleway (apoio) */

@font-face { font-family: "Aboreto"; src: url("fonts/Aboreto-Regular.ttf") format("truetype"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Raleway"; src: url("fonts/Raleway-Light.ttf") format("truetype"); font-weight: 300; font-display: swap; }
@font-face { font-family: "Raleway"; src: url("fonts/Raleway-Regular.ttf") format("truetype"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Raleway"; src: url("fonts/Raleway-Medium.ttf") format("truetype"); font-weight: 500; font-display: swap; }
@font-face { font-family: "Raleway"; src: url("fonts/Raleway-SemiBold.ttf") format("truetype"); font-weight: 600; font-display: swap; }

:root{
  --marsala:#2A070D;
  --marsala-hover:#4A1219;
  --nude:#B09D8F;
  --nude-suave:#E3DCD5;
  --off:#F0EEE9;
  --pad:clamp(20px,4vw,56px);
  --sec-y:clamp(76px,10vw,148px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--off);color:var(--marsala);font-family:Raleway,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--marsala);text-decoration:none;transition:color .3s ease,background .3s ease,border-color .3s ease}
a:hover{color:var(--nude)}
button{font-family:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--nude);outline-offset:4px}
::selection{background:var(--nude-suave);color:var(--marsala)}
[hidden]{display:none !important}

.wrap{max-width:1280px;margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.wrap--narrow{max-width:960px}
.center{text-align:center}
.row{display:flex;flex-wrap:wrap;align-items:center;gap:14px clamp(26px,3vw,40px);margin-top:clamp(30px,3.6vw,42px)}

/* Tipografia ------------------------------------------------------------- */
.h1{font-family:Aboreto,serif;font-weight:400;font-size:clamp(32px,3.65vw,52px);line-height:1.15;margin:0;text-wrap:balance;color:var(--off)}
.h1 em{font-style:normal;color:var(--nude)}
.h2{font-family:Aboreto,serif;font-weight:400;font-size:clamp(26px,3.4vw,44px);line-height:1.28;letter-spacing:.015em;margin:0;max-width:24em;text-wrap:pretty}
.h2--light{color:var(--off)}
.h3{font-family:Aboreto,serif;font-weight:400;font-size:clamp(19px,1.9vw,24px);line-height:1.3;margin:0}
.h3--light{color:var(--off)}
.kicker{font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;margin:0 0 12px}
.eyebrow{margin:0 0 18px;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--nude);font-weight:600}
.eyebrow--dim{color:rgba(42,7,13,.55)}
.eyebrow--sm{margin:0 0 6px;font-size:9.5px;letter-spacing:.2em}
.lead{margin:18px auto 0;font-size:clamp(15px,1.4vw,17.5px);font-weight:300;line-height:1.8;color:rgba(42,7,13,.7);max-width:34em;text-wrap:pretty}
.lead--light{color:rgba(240,238,233,.72);margin-left:0}
.body{margin:22px 0 0;font-size:clamp(14.5px,1.25vw,16.5px);font-weight:300;line-height:1.85;color:rgba(42,7,13,.76);text-wrap:pretty}
.p--light{margin:0;font-size:14.5px;font-weight:300;line-height:1.8;color:rgba(240,238,233,.66);text-wrap:pretty}
.num{font-family:Aboreto,serif;font-size:24px;margin:0 0 16px;color:var(--nude)}

/* Botões ----------------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:19px 38px;border-radius:0;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;transition:transform .3s ease,box-shadow .3s ease,color .3s ease,background .3s ease,border-color .3s ease}
.btn:hover{transform:translateY(-2px)}
.btn--nude{background:var(--nude);color:var(--marsala);padding:13px 24px;letter-spacing:.16em;font-size:11px}
.btn--nude:hover{background:var(--off);color:var(--marsala)}
.btn--light{background:var(--off);color:var(--marsala)}
.btn--light:hover{background:var(--nude);color:var(--marsala)}
.btn--ghost{align-self:center;padding:8px 2px;border-bottom:1px solid rgba(240,238,233,.34);color:rgba(240,238,233,.86);font-weight:500}
.btn--ghost:hover{border-bottom-color:var(--nude);color:var(--nude);transform:none}
.btn--dark{background:var(--marsala);color:var(--off);margin-top:clamp(28px,3.2vw,38px)}
.btn--dark:hover{background:var(--marsala-hover);color:var(--off)}
.btn--block{width:100%;margin-top:16px}
.link-arrow{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-top:auto}
.link-arrow--nude{color:var(--nude)}
.link-arrow--nude:hover{color:var(--off)}
.link-back{margin-top:22px;padding:0;background:none;border:0;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(42,7,13,.5)}
.link-back:hover{color:var(--nude)}

/* Nav -------------------------------------------------------------------- */
.nav{position:sticky;top:0;z-index:50;background:var(--marsala);border-bottom:1px solid rgba(240,238,233,.08)}
.nav__inner{max-width:1360px;margin:0 auto;padding:0 var(--pad);height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav__logo{display:flex;align-items:center;flex-shrink:0}
.nav__logo img{display:block;width:180px;height:auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.1));transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .35s ease,filter .35s ease}
.nav__logo:hover img{transform:scale(1.035);opacity:.94;filter:drop-shadow(0 10px 22px rgba(0,0,0,.18))}
.nav__links{display:flex;align-items:center;gap:clamp(16px,2.2vw,34px)}
.nav__links a{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:rgba(240,238,233,.78)}
.nav__links a:hover{color:var(--nude)}
.nav__burger{display:none;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:46px;height:46px;background:none;border:1px solid rgba(240,238,233,.28);border-radius:0}
.nav__burger span{display:block;width:18px;height:1px;background:var(--off)}
.nav__mobile{display:flex;flex-direction:column;max-height:0;overflow:hidden;visibility:hidden;opacity:0;padding:0 var(--pad);border-top:1px solid transparent;transition:max-height .4s ease,opacity .3s ease,padding .4s ease,border-color .3s ease,visibility .4s}
.nav__mobile.open{max-height:520px;visibility:visible;opacity:1;padding:4px var(--pad) 26px;border-top-color:rgba(240,238,233,.14)}
.nav__mobile a:not(.btn){padding:15px 0;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:rgba(240,238,233,.82);border-bottom:1px solid rgba(240,238,233,.1)}

/* Hero ------------------------------------------------------------------- */
.hero{position:relative;background:var(--marsala);overflow:hidden}
.hero__mark{position:absolute;left:4%;top:58%;transform:translateY(-50%);width:min(42vw,600px);height:auto;object-fit:contain;opacity:.045;pointer-events:none;animation:markDrift 14s ease-in-out infinite alternate}
.mark--mobile{display:none}
.hero__inner{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:clamp(560px,calc(100vh - 82px),1200px)}
.hero__copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,4.4vw,56px) clamp(28px,4vw,64px) clamp(32px,4.4vw,56px) max(var(--pad),calc(50vw - 680px + var(--pad)))}
.hero__copy>*{opacity:0;animation:heroRise .8s cubic-bezier(.22,1,.36,1) forwards}
.hero__copy .tag{animation-delay:.08s}
.hero__copy .hero__title{animation-delay:.16s}
.hero__copy .chips{animation-delay:.28s}
.tag{display:inline-flex;align-self:flex-start;align-items:center;gap:12px;padding:8px 16px;border:1px solid rgba(240,238,233,.26);border-radius:0;margin:0 0 clamp(16px,2vw,22px);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgba(240,238,233,.8)}
.dot{display:block;width:5px;height:5px;background:var(--nude);border-radius:50%}
.dot--dark{background:var(--marsala)}
.hero__title{margin:0;max-width:760px;color:var(--off)}
.hero__title-display{display:block;font-family:Aboreto,serif;font-size:clamp(44px,5.45vw,82px);font-weight:400;letter-spacing:-.03em;line-height:1.02;text-transform:uppercase;text-wrap:balance}
.hero__title-support{display:block;margin-top:clamp(20px,2.4vw,30px);font-size:clamp(22px,2.4vw,35px);font-weight:300;line-height:1.25}
.hero__title strong{display:block;color:var(--nude);font-size:clamp(22px,2.4vw,35px);font-weight:600;line-height:1.25}
.chips{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr);gap:clamp(18px,2.4vw,34px);margin:clamp(34px,4vw,50px) 0 0;padding:clamp(24px,2.8vw,32px) 0 0;border-top:1px solid rgba(240,238,233,.2);list-style:none}
.chips li{position:relative;min-width:0;padding-left:17px;font-size:12.5px;font-weight:300;line-height:1.5;color:rgba(240,238,233,.72)}
.chips li::before{content:"";position:absolute;left:0;top:.46em;width:6px;height:6px;background:var(--nude)}

.hero__media{position:relative;margin:0;overflow:hidden;background:#eeece8 url("assets/hero-wall-bg.jpg") center/100% 100% no-repeat;opacity:0;animation:portraitIn 1s .18s cubic-bezier(.22,1,.36,1) forwards}
.hero__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;display:block;transform:scale(1);transform-origin:center bottom;transition:transform .9s cubic-bezier(.22,1,.36,1)}
.hero__veil{position:absolute;inset:0 0 0 -1px;pointer-events:none;background:linear-gradient(90deg,var(--marsala) 0%,var(--marsala) 10%,rgba(42,7,13,.94) 17%,rgba(42,7,13,.68) 25%,rgba(42,7,13,.38) 34%,rgba(42,7,13,.14) 44%,rgba(42,7,13,.03) 52%,rgba(42,7,13,0) 58%)}
.hero__oab{position:absolute;right:clamp(20px,3vw,36px);bottom:clamp(22px,3vw,36px);display:flex;align-items:center;gap:10px;padding:11px 14px;background:var(--marsala);border-left:3px solid var(--nude);box-shadow:0 10px 28px rgba(42,7,13,.24)}
.hero__oab b{font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--nude);font-weight:600}
.hero__oab span{font-family:Aboreto,serif;font-size:14px;color:var(--off);letter-spacing:.04em}
.hero__seal{position:absolute;left:50%;bottom:clamp(22px,4.8vw,62px);width:clamp(132px,11.5vw,172px);height:auto;border-radius:50%;transform:translateX(-50%);object-fit:contain;display:block;z-index:2;filter:drop-shadow(0 16px 36px rgba(42,7,13,.22))}

@media (min-width:901px){
  .hero__copy{transform:translateY(clamp(-44px,-2.6vw,-20px))}
  .hero__media{margin-left:clamp(-72px,-3.8vw,-42px)}
}

/* Seções ----------------------------------------------------------------- */
.sec{position:relative;overflow:hidden;padding:var(--sec-y) 0}
.sec--nude{background:var(--nude-suave)}
.sec--dark{background:var(--marsala)}
.sec__mark{position:absolute;right:-10%;top:50%;transform:translateY(-50%);height:160%;width:auto;opacity:.05;pointer-events:none}
.sec__mark--left{right:auto;left:-12%}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,84px);align-items:center}
.about{isolation:isolate}
.about .split{position:relative;z-index:2;grid-template-columns:.88fr 1.12fr;gap:clamp(56px,6.5vw,100px)}
.about__portrait{position:absolute;right:-6vw;top:-15%;z-index:1;width:min(46vw,710px);height:122%;object-fit:cover;object-position:62% top;opacity:.21;filter:grayscale(1) contrast(1.08);mix-blend-mode:multiply;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.38) 20%,#000 46%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.38) 20%,#000 46%,#000 100%)}
.about__content{position:relative;z-index:2;padding:clamp(20px,3vw,44px) 0}
.about__quote{position:relative;display:flex;min-height:770px;margin:clamp(24px,4vw,56px) 0 0;padding:clamp(52px,5.2vw,72px);overflow:hidden;flex-direction:column;justify-content:flex-end;background:var(--nude-suave);border:1px solid rgba(42,7,13,.1);transform:translateX(clamp(-18px,-1.2vw,-6px)) rotate(-.45deg);transform-origin:center}
.about__quote::before{content:"";position:absolute;inset:18px;border:1px solid rgba(42,7,13,.12);pointer-events:none}
.about__watermark{position:absolute;top:50%;right:-18%;width:78%;opacity:.045;transform:translateY(-50%)}
.about__seal{position:absolute;left:clamp(52px,5.2vw,72px);top:clamp(46px,5vw,64px);display:grid;place-items:center;width:116px;height:116px;padding:0;background:var(--marsala);border:0;border-radius:50%;outline:1px solid rgba(176,157,143,.75);outline-offset:-1px;transition:transform .5s cubic-bezier(.22,1,.36,1)}
.about__seal img{display:block;width:100%;height:100%}
.about__quote:hover .about__seal{transform:translateY(-4px)}
.about__quote p{position:relative;margin:0;font-family:Aboreto,serif;font-size:clamp(23px,2.15vw,31px);line-height:1.44;text-wrap:balance}
.about__quote cite{position:relative;margin-top:28px;font-size:10.5px;font-style:normal;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--nude)}

.grid{display:grid;gap:clamp(18px,2vw,28px);margin-top:clamp(38px,5vw,60px)}
.grid--cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(20px,2.2vw,30px)}
.grid--steps{grid-template-columns:repeat(5,1fr);gap:clamp(22px,2.6vw,34px)}
.grid--four{grid-template-columns:repeat(4,1fr);gap:clamp(26px,3.2vw,44px)}
.grid--badges{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-top:clamp(30px,3.4vw,40px)}

.card{background:var(--off);border:1px solid rgba(42,7,13,.09);border-radius:0;padding:clamp(32px,3.6vw,48px)}
.card--area{position:relative;display:flex;flex-direction:column;gap:18px;min-height:100%;background:var(--nude-suave);border-color:transparent;transition:background .42s ease}
.card--area::before,.grid--cards .card--dark::before{content:"";position:absolute;left:0;top:0;width:44px;height:2px;background:var(--marsala);transition:width .5s cubic-bezier(.22,1,.36,1)}
.card--area p{margin:0;font-size:14.5px;font-weight:300;line-height:1.8;color:rgba(42,7,13,.74);text-wrap:pretty}
.card--area strong{font-weight:600;color:var(--marsala)}
.card--dark{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:24px;background:var(--marsala);border-color:var(--marsala)}
.grid--cards .card--dark::before{background:var(--nude)}
.grid--cards .link-arrow{transition:gap .35s ease,color .3s ease}
@media (hover:hover){
  .grid--cards .card:hover::before,.grid--cards .card:focus-within::before{width:100%}
  .card--area:hover,.card--area:focus-within{background:#e7e1da}
  .grid--cards .card:hover .link-arrow,.grid--cards .card:focus-within .link-arrow{gap:16px}
}
.card--step{padding:22px 0 0;background:none;border:0;border-top:1px solid rgba(42,7,13,.2)}
.card--step .num{margin:0 0 14px;font-size:22px}
.card--step p:last-child{margin:0;font-size:14px;font-weight:300;line-height:1.75;color:rgba(42,7,13,.72)}
.minicard{background:var(--nude-suave);border:1px solid rgba(42,7,13,.1);border-radius:0;padding:20px 22px}
.minicard p:last-child{margin:0;font-size:14.5px;font-weight:300}
.ruled{border-top:1px solid rgba(240,238,233,.22);padding-top:24px}
.ruled .h3{margin-bottom:14px;font-size:20px}

/* Triagem ---------------------------------------------------------------- */
.quiz{position:relative;isolation:isolate;overflow:hidden;margin-top:clamp(34px,4vw,48px);padding:clamp(34px,5vw,62px);background:var(--off);border-color:rgba(42,7,13,.1)}
.quiz::before{content:"";position:absolute;right:-92px;bottom:-128px;z-index:-1;width:330px;height:330px;background:url("assets/simbolo-marsala.png") center/contain no-repeat;opacity:.028;pointer-events:none}
.quiz__topline{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.quiz__stage,.quiz__note{font-size:9.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.quiz__stage{color:var(--marsala)}
.quiz__note{color:rgba(42,7,13,.46)}
.quiz__bar{display:flex;gap:10px;margin-bottom:clamp(30px,3.4vw,40px)}
.quiz__bar span{flex:1;height:3px;background:rgba(42,7,13,.11);transition:background .4s ease,transform .4s cubic-bezier(.22,1,.36,1)}
.quiz__bar span.on{background:var(--marsala);transform:scaleY(1.35)}
.quiz__q{margin:0;font-family:Aboreto,serif;font-size:clamp(18px,1.9vw,23px);line-height:1.45;text-wrap:balance}
.quiz__hint{margin:9px 0 24px;font-size:13.5px;font-weight:300;line-height:1.65;color:rgba(42,7,13,.58)}
.quiz__opts{display:grid;gap:11px;counter-reset:opcao}
.quiz__opts button{counter-increment:opcao;display:grid;grid-template-columns:38px 1fr;align-items:center;gap:14px;text-align:left;padding:17px 22px;background:transparent;border:1px solid rgba(42,7,13,.14);border-radius:0;font-size:14px;font-weight:400;line-height:1.45;color:var(--marsala);transition:transform .32s cubic-bezier(.22,1,.36,1),background .32s ease,border-color .32s ease,color .32s ease}
.quiz__opts button::before{content:counter(opcao,decimal-leading-zero);display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(42,7,13,.18);border-radius:50%;font-family:Aboreto,serif;font-size:10px;color:var(--nude);transition:border-color .32s ease,color .32s ease,background .32s ease}
.quiz__opts button:hover,.quiz__opts button:focus-visible{background:var(--marsala);border-color:var(--marsala);color:var(--off);transform:translateX(6px)}
.quiz__opts button:hover::before,.quiz__opts button:focus-visible::before{background:rgba(240,238,233,.08);border-color:var(--nude);color:var(--off)}
#resumo{margin:0 auto 26px}

/* FAQ -------------------------------------------------------------------- */
.faq{border-top:1px solid rgba(42,7,13,.14);margin-top:clamp(34px,4vw,48px)}
.faq__item{border-bottom:1px solid rgba(42,7,13,.14)}
.faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;padding:24px 0;background:none;border:0;font-size:clamp(15px,1.4vw,17px);font-weight:400;color:var(--marsala)}
.faq__q span{font-size:18px;color:var(--nude);flex-shrink:0}
.faq__a{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .35s ease,opacity .3s ease}
.faq__item.open .faq__a{grid-template-rows:1fr;opacity:1}
.faq__a p{min-height:0;overflow:hidden;margin:0;font-size:14.5px;font-weight:300;line-height:1.85;color:rgba(42,7,13,.74);max-width:44em;text-wrap:pretty;transition:padding-bottom .35s ease}
.faq__item.open .faq__a p{padding-bottom:26px}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;margin-top:clamp(34px,4vw,46px);padding:26px 28px;background:var(--nude-suave);border:1px solid rgba(42,7,13,.1);border-radius:0}
.bar p{margin:0;font-size:15px;font-weight:300;color:rgba(42,7,13,.78)}

/* Rodapé ----------------------------------------------------------------- */
.contact{background:var(--nude-suave)}
.contact .sec__mark{left:50%;right:auto;top:60%;width:clamp(250px,25vw,360px);height:auto;max-height:none;aspect-ratio:633 / 1030;object-fit:contain;transform:translate(-50%,-50%);opacity:.035;filter:brightness(0) saturate(100%) invert(8%) sepia(36%) saturate(2493%) hue-rotate(318deg) brightness(82%) contrast(106%);animation:none}
.contact__inner{position:relative;isolation:isolate;overflow:hidden;padding-top:clamp(62px,8vw,100px);padding-bottom:clamp(62px,8vw,100px);background:var(--off);border:1px solid rgba(42,7,13,.1)}
.contact__inner>:not(.sec__mark){position:relative;z-index:1}
.contact__inner .h2{margin-left:auto;margin-right:auto}
.contact__actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px 28px;margin-top:clamp(30px,3.6vw,42px)}
.btn--wa{gap:13px;background:var(--marsala);color:var(--off)}
.btn--wa:hover{background:var(--marsala-hover);color:var(--off)}
.btn--wa svg{width:23px;height:23px;flex-shrink:0}
.contact__secondary{font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid rgba(42,7,13,.28);padding-bottom:5px}
.footer{background:var(--marsala);color:rgba(240,238,233,.7)}
.footer__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(34px,5vw,60px);padding-top:clamp(52px,7vw,84px);padding-bottom:clamp(52px,7vw,84px)}
.footer__logo{display:block;width:min(100%,270px);height:auto;margin:-4px 0 24px}
.footer__grid>div:first-child .p--light{max-width:34em}
.footer__list{display:flex;flex-direction:column;gap:11px;font-size:14px;font-weight:300}
.footer__list a,.footer__list span{color:rgba(240,238,233,.8)}
.footer__list a:hover{color:var(--nude)}
.footer__bottom{border-top:1px solid rgba(240,238,233,.12)}
.footer__bottominner{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding-top:24px;padding-bottom:24px;font-size:11.5px;color:rgba(240,238,233,.48)}

/* WhatsApp flutuante ----------------------------------------------------- */
.float{position:fixed;right:clamp(16px,3vw,30px);bottom:clamp(16px,3vw,30px);z-index:60;display:inline-flex;align-items:center;gap:13px;padding:10px 24px 10px 10px;background:var(--marsala);color:var(--off);border:1px solid rgba(240,238,233,.42);border-radius:48px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;box-shadow:0 16px 42px rgba(42,7,13,.38);transition:opacity .3s ease,transform .3s ease,background .3s ease,color .3s ease,box-shadow .3s ease}
.float:hover{background:var(--marsala-hover);color:var(--off);transform:translateY(-3px);box-shadow:0 21px 48px rgba(42,7,13,.42)}
.float__icon-wrap{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:rgba(240,238,233,.1);color:var(--off);box-shadow:0 0 0 0 rgba(240,238,233,.2);animation:waPulse 2.8s ease-out infinite}
.float__icon{width:26px;height:26px;flex-shrink:0}
.float.is-hidden{opacity:0;transform:translateY(12px);pointer-events:none}

/* Movimento sutil -------------------------------------------------------- */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms),transform .75s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms)}
.reveal.is-visible{opacity:1;transform:none}
@keyframes heroRise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes portraitIn{from{opacity:0;transform:translateX(24px) scale(.985)}to{opacity:1;transform:none}}
@keyframes markDrift{from{transform:translateY(-51%) translateX(-8px)}to{transform:translateY(-49%) translateX(8px)}}
@keyframes waPulse{0%,58%{box-shadow:0 0 0 0 rgba(42,7,13,.28)}85%,100%{box-shadow:0 0 0 12px rgba(42,7,13,0)}}

/* Página 404 ------------------------------------------------------------- */
.error-page{min-height:100vh;display:grid;place-items:center;padding:32px;background:var(--marsala);overflow:hidden}
.error-page::before{content:"";position:fixed;right:-18vw;top:50%;width:70vw;height:70vw;border:1px solid rgba(240,238,233,.08);border-radius:50%;transform:translateY(-50%);box-shadow:0 0 0 7vw rgba(240,238,233,.025)}
.error-page__inner{position:relative;width:min(760px,100%)}
.error-page__logo{width:min(100%,342px);height:auto;margin-bottom:clamp(54px,8vw,92px)}
.error-page .h1{max-width:12em}
.error-page .lead{margin-left:0}

/* Responsivo ------------------------------------------------------------- */
@media (max-width:1180px){
  .nav__links{display:none}
  .nav__burger{display:flex}
  /* 5 e 4 itens so fecham linha cheia com 5 e 4 colunas; abaixo disso
     empilha em vez de deixar item orfao sozinho na ultima linha */
  .grid--steps{grid-template-columns:1fr}
  .grid--four{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){
  .split{grid-template-columns:1fr}
  .about .split{grid-template-columns:1fr}
  .about__portrait{display:none}
  .hero__inner{grid-template-columns:1fr}
  .hero__copy{order:1;padding:clamp(64px,11vw,84px) var(--pad) clamp(72px,12vw,96px)}
  .hero__copy .chips{margin-top:clamp(28px,5vw,36px)}
  .hero__media{order:2;min-height:clamp(430px,64vh,620px)}
  .hero__photo{object-position:center bottom}
  .hero__veil{background:linear-gradient(180deg,rgba(42,7,13,.96) 0%,rgba(42,7,13,.12) 34%,rgba(42,7,13,.28) 100%)}
  .hero__seal{left:50%;right:auto;top:auto;bottom:calc(clamp(430px,64vh,620px) - clamp(55px,14vw,69px));transform:translateX(-50%);width:clamp(110px,28vw,138px)}
  .hero__oab{right:auto;left:var(--pad)}
  .about__quote{min-height:550px;margin:0;transform:none}
}
@media (max-width:600px){
  html{scroll-padding-top:82px}
  .nav__inner{height:72px}
  /* Mantém a proporção original da marca no cabeçalho estreito. */
  .nav__logo{max-width:calc(100vw - 92px);overflow:hidden}
  .nav__logo img{display:block;width:145px;max-width:none;height:auto;object-fit:contain;object-position:left center}
  /* No mobile, usa o arquivo oficial sem moldura e preserva rigorosamente
     sua proporção original (633 x 1030). */
  .mark--desktop{display:none}
  .mark--mobile{display:block}
  .hero__mark--mobile{left:50%;top:31.5%;width:min(64vw,240px);height:auto;aspect-ratio:633 / 1030;object-fit:contain;transform:translate(-50%,-50%);opacity:.045;animation:none}
  .sec__mark--mobile{left:50%;right:auto;top:50%;width:min(64vw,240px);height:auto;max-height:none;aspect-ratio:633 / 1030;object-fit:contain;transform:translate(-50%,-50%);opacity:.04}
  .hero__title-display{font-size:clamp(37px,11.5vw,50px)}
  .hero__title-support,.hero__title strong{font-size:clamp(19px,5.7vw,24px)}
  .hero__media{min-height:clamp(420px,62vh,540px)}
  .hero__seal{bottom:calc(clamp(420px,62vh,540px) - clamp(46px,12vw,58px));width:clamp(92px,24vw,116px)}
  /* Empilha: lado a lado o link secundario era jogado para a borda
     direita, longe do botao, e os chips quebravam 1 + 2 por linha */
  .row{flex-direction:column;align-items:flex-start}
  .row .btn--ghost{align-self:flex-start}
  .hero__copy .chips{grid-template-columns:1fr;gap:11px}
  /* Cabe em uma linha so; antes quebrava deixando um "·" solto no fim */
  .tag{gap:10px;padding:8px 14px;font-size:9px;letter-spacing:.14em}
  .contact__inner{margin-left:14px;margin-right:14px;padding-left:24px;padding-right:24px}
  .contact .sec__mark{top:50%;width:min(62vw,260px)}
  .contact__actions{flex-direction:column}
  .float{right:18px;bottom:18px;width:64px;height:64px;padding:7px;border-radius:50%}
  .float__label{display:none}
  .float__icon-wrap{width:48px;height:48px}
  .float__icon{width:30px;height:30px}
  .footer__logo{width:min(100%,240px)}
  .error-page__logo{width:min(100%,310px)}
  .quiz{padding:28px 22px}
  .quiz__topline{align-items:flex-start;flex-direction:column;gap:7px}
  .quiz__opts button{grid-template-columns:32px 1fr;padding:14px 15px;gap:11px}
  .quiz__opts button::before{width:28px;height:28px}
  .about__seal{width:82px;height:82px}
  .grid--four{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none !important;transition:none !important}
  .hero__copy>*,.hero__media,.reveal{opacity:1;transform:none}
}

@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .hero__media:hover .hero__photo{transform:scale(1.028)}
}
