@import 'tokens/colors.css';
@import 'tokens/typography.css';
@import 'tokens/spacing.css';
@import 'tokens/effects.css';
@import 'tokens/base.css';

/* ---------- layout ---------- */
html{scroll-padding-top:110px;} /* smooth handled by Lenis; CSS smooth fights it -> jumps */
body{font-feature-settings:'kern' 1,'liga' 1;}
.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad);}
.section{padding:112px var(--container-pad);}
img,svg{max-width:100%;}
h2{font-size:var(--fs-h2);}
@media (min-width:1000px){:root{--fs-h2:2.5rem;}}

/* ---------- display type (editorial Fraunces; drop the template small-caps on real headings) ---------- */
h1,h2,h3,h4{font-variant-caps:normal;letter-spacing:-0.012em;line-height:1.08;
  font-variation-settings:'opsz' 72;}
.hero__content h1{letter-spacing:-0.03em;line-height:1.0;font-weight:600;font-variation-settings:'opsz' 144;}
.section-head h2,.cta-band__inner h2{letter-spacing:-0.024em;line-height:1.04;font-variation-settings:'opsz' 120;font-weight:var(--fw-bold);}
.sobre-title{font-size:clamp(2.5rem,4.6vw,4rem);line-height:1.06;max-width:18ch;font-weight:var(--fw-semibold);letter-spacing:-0.02em;}
.sobre-title em{font-style:italic;font-weight:var(--fw-medium);color:var(--brand-primary);font-variation-settings:'opsz' 144;}
.diff-row h3,.area h3{letter-spacing:-0.01em;font-variation-settings:'opsz' 40;}

/* ---------- nav (pill sticky) ---------- */
.nav-dock{position:sticky;top:20px;z-index:30;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad);}
.navbar{display:flex;align-items:center;gap:24px;
  background:rgba(15,15,20,0.95);backdrop-filter:saturate(1.2) blur(6px);
  border:1px solid rgba(255,255,255,0.08);border-radius:var(--radius-pill);box-shadow:var(--shadow-soft);
  padding:10px 12px 10px 26px;transition:padding var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard);}
.navbar.scrolled{padding:7px 12px 7px 22px;box-shadow:var(--shadow-lifted);}
.navbar__logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;}
.navbar__logo-img{height:50px;width:auto;object-fit:contain;mix-blend-mode:screen;filter:brightness(1.1);transition:height var(--duration-normal) var(--ease-standard);}
.navbar.scrolled .navbar__logo-img{height:42px;}
.navbar__links{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-left:auto;}
.navbar__links a{position:relative;font-family:var(--font-display);font-variant-caps:small-caps;
  letter-spacing:var(--ls-caps);font-weight:var(--fw-bold);font-size:var(--fs-body);color:rgba(255,255,255,0.85);}
.navbar__links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--brand-primary);
  transition:width var(--duration-normal) var(--ease-standard);}
.navbar__links a:hover,.navbar__links a.active{color:var(--brand-primary);}
.navbar__links a:hover{color:#fff;}
.navbar__links a.active::after{width:100%;}
.navbar__cta{padding:11px 22px;}
.navbar__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;border:none;background:none;padding:0;cursor:pointer;flex-shrink:0;}
.navbar__toggle span{display:block;width:100%;height:2px;background:rgba(255,255,255,0.85);transition:transform var(--duration-normal) var(--ease-standard),opacity var(--duration-normal) var(--ease-standard);}
.navbar__toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.navbar__toggle.open span:nth-child(2){opacity:0;}
.navbar__toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
@media (max-width:860px){
  .navbar__cta{display:none !important;}
  .navbar{position:relative;flex-wrap:wrap;padding:8px 14px 8px 16px;gap:12px;}
  .navbar.scrolled{padding:6px 12px 6px 14px;}
  .navbar__logo-img{height:40px;}
  .navbar.scrolled .navbar__logo-img{height:36px;}
  .navbar__toggle{display:flex;margin-left:auto;}
  .navbar__links{gap:16px;position:absolute;top:calc(100% + 10px);left:0;right:0;flex-direction:column;align-items:flex-start;background:rgba(15,15,20,0.97);border:1px solid rgba(255,255,255,0.08);border-radius:18px;box-shadow:var(--shadow-lifted);padding:18px 22px;display:none;}
  .navbar__links.open{display:flex;}
  .navbar__links a{width:100%;padding:6px 0;}
  .navbar__links-cta{display:block;margin-top:8px;padding:12px 20px;text-align:center;
    background:var(--brand-primary);color:var(--text-on-brand) !important;border-radius:var(--radius-pill);
    font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:0.02em;font-size:var(--fs-small);}
}
.navbar__links-cta{display:none;}

/* ---------- button ---------- */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-weight:var(--fw-bold);
  letter-spacing:0.02em;text-transform:uppercase;border-radius:var(--radius-pill);border:1px solid transparent;
  cursor:pointer;padding:14px 26px;font-size:var(--fs-small);white-space:nowrap;
  transition:background var(--duration-normal) var(--ease-standard),transform var(--duration-fast) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard),color var(--duration-normal) var(--ease-standard);}
.btn svg{transition:transform var(--duration-normal) var(--ease-standard);}
.btn:hover{transform:translateY(-2px);}
.btn:hover svg{transform:translateX(3px);}
.btn--lg{padding:17px 32px;font-size:var(--fs-body);}
.btn--primary{background:var(--brand-primary);color:var(--text-on-brand);box-shadow:var(--shadow-soft);}
.btn--primary:hover{background:var(--brand-primary-hover);color:var(--text-on-brand);box-shadow:var(--shadow-lifted);}
.btn--ghost{background:var(--surface-page);color:var(--text-primary);border:1px solid var(--border-strong);}
.btn--ghost:hover{border-color:var(--brand-primary);color:var(--brand-primary);}
.btn--outline-inverse{background:transparent;color:var(--text-on-brand);border:1px solid rgba(255,255,255,0.55);}
.btn--outline-inverse:hover{background:rgba(255,255,255,0.12);color:var(--text-on-brand);}

/* ---------- section label (eyebrow) ---------- */
.section-label{display:inline-flex;align-items:center;gap:10px;}
.section-label::before{content:"";width:3px;height:16px;border-radius:2px;background:var(--brand-accent);display:inline-block;}
.section-label span{font-family:var(--font-display);font-size:1.0625rem;letter-spacing:var(--ls-eyebrow);
  font-variant-caps:small-caps;font-weight:var(--fw-bold);color:var(--brand-primary);}
.section-label::before{width:4px;height:20px;}
.section-label--inverse span{color:var(--text-on-brand);}
.section-label--inverse::before{background:#fff;}
.section-label--block{display:inline-flex;margin-bottom:18px;}

/* ---------- chip ---------- */
.chip{display:inline-flex;align-items:center;padding:9px 16px;border-radius:var(--radius-pill);
  background:var(--surface-chip);border:1px solid var(--surface-chip-border);color:var(--text-primary);
  font-family:var(--font-body);font-size:var(--fs-small);font-weight:var(--fw-medium);white-space:nowrap;
  transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard);}
.chip:hover{background:var(--color-gray-200);border-color:var(--border-strong);}

/* ---------- hero ---------- */
.hero{padding:170px 32px 110px;position:relative;overflow:hidden;}
.hero__inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.1fr 0.9fr;gap:72px;align-items:center;}
.hero__content{display:flex;flex-direction:column;gap:26px;}
.hero__content h1{font-size:var(--fs-hero);max-width:14ch;}
.hero__lead{font-size:var(--fs-body-lg);color:var(--text-secondary);max-width:56ch;}
.hero__actions{display:flex;gap:16px;flex-wrap:wrap;}
.hero__trust{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;}
.hero__trust li{display:flex;align-items:center;gap:10px;font-size:var(--fs-body);color:var(--text-secondary);}
.hero__media{position:relative;justify-self:center;}
.hero__portrait{width:600px;max-width:100%;aspect-ratio:600/740;box-shadow:var(--shadow-lifted);object-fit:cover;border-radius:var(--radius-lg);}
.hero__badge{position:absolute;left:-28px;bottom:36px;background:var(--surface-page);border:1px solid var(--border-subtle);
  border-radius:var(--radius-md);box-shadow:var(--shadow-lifted);padding:16px 20px;display:flex;align-items:center;gap:12px;}
.hero__badge-num{font-family:var(--font-display);font-size:2.4rem;font-weight:var(--fw-bold);color:var(--brand-primary);line-height:1;}
.hero__badge-label{font-size:var(--fs-small);color:var(--text-secondary);line-height:1.25;font-weight:var(--fw-semibold);}

/* ---------- image placeholder ---------- */
.img-slot{background:var(--surface-chip);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);
  display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);
  font-family:var(--font-body);font-size:var(--fs-small);text-align:center;}

/* ---------- stats ---------- */
.stats{background:var(--surface-alt);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);}
.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding-top:56px;padding-bottom:56px;}
.stat{text-align:center;}
.stat__num{font-family:var(--font-display);font-size:3rem;font-weight:var(--fw-bold);color:var(--brand-primary);line-height:1;
  display:flex;align-items:baseline;justify-content:center;gap:2px;}
.stat__num em{font-style:normal;font-size:1.6rem;}
.stat__label{margin-top:10px;font-size:var(--fs-small);color:var(--text-secondary);}
@media (max-width:700px){.stats__grid{grid-template-columns:1fr 1fr;gap:36px;}}

/* ---------- generic section head ---------- */
.section-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px;margin-bottom:64px;}
.section-head h2{max-width:22ch;}
.section--inverse .section-head h2{color:#fff;}

/* ---------- about ---------- */
.about-grid{display:grid;grid-template-columns:400px 1fr;gap:72px;align-items:start;}
.about-media{position:sticky;top:120px;display:flex;flex-direction:column;gap:14px;}
.about-portrait{width:100%;height:780px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-card);}
.about-sig{font-family:var(--font-display);font-variant-caps:small-caps;letter-spacing:var(--ls-caps);
  font-weight:var(--fw-bold);color:var(--brand-primary);font-size:var(--fs-h4);}
.about-sig-role{font-size:var(--fs-small);color:var(--text-muted);}
.about-text{display:flex;flex-direction:column;gap:20px;}
.about-text p{color:var(--text-secondary);font-size:var(--fs-body-lg);}
.about-text strong{color:var(--text-primary);font-weight:var(--fw-bold);}
.creds{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-top:1px solid var(--border-subtle);}
.creds li{display:flex;flex-direction:column;gap:4px;padding:18px 0;border-bottom:1px solid var(--border-subtle);}
.creds li:nth-child(odd){padding-right:24px;border-right:1px solid var(--border-subtle);}
.creds li:nth-child(even){padding-left:24px;}
.creds__k{font-family:var(--font-display);font-variant-caps:small-caps;letter-spacing:var(--ls-caps);
  font-size:var(--fs-eyebrow);color:var(--brand-primary);font-weight:var(--fw-bold);}
.creds__v{font-size:var(--fs-body);color:var(--text-primary);}
@media (max-width:900px){.about-grid{grid-template-columns:1fr;gap:40px;}.about-media{position:static;}.about-portrait{height:520px;}.creds{grid-template-columns:1fr;}.creds li:nth-child(odd){border-right:none;padding-right:0;}.creds li:nth-child(even){padding-left:0;}}

/* ---------- diferenciais (numbered editorial rows) ---------- */
.diff-list{display:flex;flex-direction:column;border-top:1px solid var(--border-subtle);}
.diff-row{display:grid;grid-template-columns:150px 1fr 32px;align-items:start;column-gap:40px;
  padding:52px 8px;border-bottom:1px solid var(--border-subtle);
  transition:padding var(--duration-normal) var(--ease-standard),background var(--duration-normal) var(--ease-standard);}
.diff-row:hover{padding-left:20px;background:var(--surface-alt);}
.diff-row__num{font-family:var(--font-display);font-size:5.6rem;font-weight:var(--fw-bold);
  color:var(--color-gray-200);line-height:0.85;transition:color var(--duration-normal) var(--ease-standard);}
.diff-row:hover .diff-row__num{color:var(--brand-primary);}
.diff-row__body h3{font-size:var(--fs-h2);margin-bottom:12px;font-weight:var(--fw-semibold);}
.diff-row__body p{color:var(--text-secondary);font-size:var(--fs-body-lg);max-width:56ch;line-height:1.5;}
.diff-row__arrow{color:var(--text-muted);justify-self:end;margin-top:10px;
  transition:transform var(--duration-normal) var(--ease-standard),color var(--duration-normal) var(--ease-standard);}
.diff-row:hover .diff-row__arrow{transform:translateX(6px) translateY(-6px);color:var(--brand-primary);}
@media (max-width:700px){.diff-row{grid-template-columns:64px 1fr;row-gap:8px;padding:36px 8px;}.diff-row__num{font-size:3rem;}.diff-row__arrow{display:none;}}

/* ---------- practice areas (featured + secondary bento) ---------- */
.areas{background:var(--surface-alt);}
.areas__grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.area{position:relative;display:flex;flex-direction:column;gap:18px;background:var(--surface-chip);border:1px solid var(--surface-chip-border);
  border-radius:var(--radius-lg);padding:40px 32px;box-shadow:var(--shadow-card);overflow:hidden;
  transition:transform var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard),background var(--duration-normal) var(--ease-standard);}
.area:hover{transform:translateY(-8px);box-shadow:var(--shadow-lifted);background:var(--surface-page);}
.area--featured:hover{background:var(--color-ink-900);}
.area>*{position:relative;z-index:1;}
.area h3{font-size:var(--fs-h3);}
.area__desc{color:var(--text-secondary);font-size:var(--fs-body-lg);}
.area__tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:2px;}
.area>div:last-child{margin-top:auto;padding-top:6px;}
.area__num{position:absolute;z-index:0;top:20px;right:24px;font-family:var(--font-display);font-size:4.5rem;
  font-weight:var(--fw-bold);line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--brand-primary);opacity:0.4;
  transition:opacity var(--duration-normal) var(--ease-standard);}
.area:hover .area__num{opacity:0.7;}

/* featured area: dark, oversized ghost numeral, inverse chips */
.area--featured{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 0.9fr;gap:40px;padding:56px;align-items:center;
  background:var(--color-ink-900);border-top:none;}
.area--featured h3,.area--featured .area__desc{color:#fff;}
.area--featured .area__desc{color:rgba(255,255,255,0.72);}
.area--featured .area__num{position:absolute;top:40px;left:48px;width:auto;height:auto;border-radius:0;background:none;
  font-size:8rem;line-height:0.8;color:rgba(255,255,255,0.07);margin-bottom:0;}
.area--featured .area__main{display:flex;flex-direction:column;align-items:flex-start;gap:18px;position:relative;z-index:1;padding-top:36px;}
.area--featured .area__tags{align-content:flex-start;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);
  border-radius:var(--radius-md);padding:24px;position:relative;z-index:1;}
.area--featured .chip{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.2);color:#fff;}
.area--featured .chip:hover{background:rgba(255,255,255,0.16);border-color:rgba(255,255,255,0.35);}
@media (max-width:900px){.areas__grid{grid-template-columns:1fr;}.area--featured{grid-template-columns:1fr;padding:36px;}.area--featured .area__num{font-size:5.5rem;top:28px;left:28px;}}

/* ---------- process (gradient) ---------- */
.process{background:var(--gradient-brand);padding:112px 32px;position:relative;overflow:hidden;}
.process .container{display:flex;flex-direction:column;}
.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;}
.step-card{display:flex;flex-direction:column;gap:16px;color:var(--text-on-brand);
  border-top:2px solid rgba(255,255,255,0.35);padding-top:24px;}
.step-card__num{font-family:var(--font-display);font-size:52px;font-weight:var(--fw-bold);line-height:1;}
.step-card h4{font-size:var(--fs-h4);color:var(--text-on-brand);}
.step-card p{font-size:var(--fs-body);opacity:0.92;}
.step-card__meta{border-top:1px solid rgba(255,255,255,0.25);padding-top:14px;margin-top:6px;}
.step-card__meta-label{font-size:var(--fs-small);opacity:0.85;}
.step-card__meta-value{font-size:var(--fs-body-lg);font-weight:var(--fw-bold);}
@media (max-width:900px){.step-grid{grid-template-columns:1fr;gap:32px;}}

/* ---------- FAQ ---------- */
.faq{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--border-subtle);}
.faq__item{border-bottom:1px solid var(--border-subtle);}
.faq__item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;
  padding:26px 4px;font-family:var(--font-display);font-variant-caps:small-caps;letter-spacing:var(--ls-caps);
  font-weight:var(--fw-semibold);font-size:var(--fs-h4);color:var(--text-primary);
  transition:color var(--duration-fast) var(--ease-standard);}
.faq__item summary::-webkit-details-marker{display:none;}
.faq__item summary:hover{color:var(--brand-primary);}
.faq__ico{position:relative;width:18px;height:18px;flex-shrink:0;}
.faq__ico::before,.faq__ico::after{content:"";position:absolute;background:var(--brand-primary);
  transition:transform var(--duration-normal) var(--ease-standard);}
.faq__ico::before{top:8px;left:0;width:18px;height:2px;}
.faq__ico::after{top:0;left:8px;width:2px;height:18px;}
.faq__item[open] .faq__ico::after{transform:rotate(90deg);opacity:0;}
.faq__a{padding:0 4px 26px;color:var(--text-secondary);font-size:var(--fs-body-lg);max-width:70ch;
  overflow:hidden;height:0;transition:height var(--duration-normal) var(--ease-standard);}
.faq__ico::before,.faq__ico::after{transition:transform var(--duration-normal) var(--ease-standard),opacity var(--duration-normal) var(--ease-standard);}

/* ---------- CTA band ---------- */
.cta-band{background:var(--color-ink-900);color:var(--text-on-brand);padding:88px 32px;}
.cta-band__inner{display:flex;align-items:center;justify-content:space-between;gap:48px;flex-wrap:wrap;}
.cta-band__inner h2{color:#fff;max-width:20ch;margin:14px 0 12px;}
.cta-band__inner p{color:rgba(255,255,255,0.72);max-width:52ch;}

/* ---------- footer ---------- */
.footer{background:var(--surface-page);border-top:1px solid var(--border-subtle);padding:80px 32px 40px;display:flex;flex-direction:column;gap:56px;}
.footer__top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.4fr;gap:48px;}
.footer__brand{display:flex;flex-direction:column;gap:14px;}
.footer__logo{font-family:var(--font-display);font-variant-caps:small-caps;letter-spacing:var(--ls-caps);
  font-weight:var(--fw-bold);color:var(--brand-primary);font-size:var(--fs-h4);}
.footer__brand p{color:var(--text-secondary);font-size:var(--fs-body);max-width:34ch;}
.footer__col{display:flex;flex-direction:column;gap:12px;}
.footer__col h4{font-size:var(--fs-h4);margin-bottom:6px;}
.footer__col a{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:var(--fs-body);
  padding-bottom:10px;border-bottom:1px solid var(--border-subtle);}
.footer__col a:hover{color:var(--brand-primary);}
.footer__contact{display:flex;flex-direction:column;gap:10px;}
.footer__contact h4{font-size:var(--fs-h4);margin-bottom:6px;}
.footer__contact .name{font-weight:var(--fw-bold);}
.footer__contact .role{color:var(--text-muted);}
.footer__bottom{display:flex;justify-content:space-between;padding-top:24px;border-top:1px solid var(--border-subtle);
  color:var(--text-muted);font-size:var(--fs-small);flex-wrap:wrap;gap:12px;}
.footer__bottom .sig{font-family:var(--font-display);font-variant-caps:small-caps;color:var(--brand-primary);font-weight:var(--fw-bold);}
@media (max-width:900px){.footer__top{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.footer__top{grid-template-columns:1fr;}}

/* ---------- scroll progress bar ---------- */
#progress-bar{position:fixed;top:0;left:0;height:2px;width:0;z-index:60;
  background:var(--gradient-brand);box-shadow:0 0 8px rgba(171,138,46,0.55);will-change:width;}

/* ---------- line-mask heading reveal ---------- */
.reveal-word{display:inline-block;overflow:hidden;vertical-align:top;
  padding:0.16em 0.03em 0.06em;margin:-0.16em -0.03em -0.06em;}
.reveal-word>span{display:inline-block;will-change:transform;}

/* ---------- card spotlight (cursor-follow glow; keeps outer shadow) ---------- */
.spotlight{position:relative;isolation:isolate;}
.spotlight::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  border-radius:inherit;opacity:0;transition:opacity var(--duration-normal) var(--ease-standard);
  background:radial-gradient(560px circle at var(--mx,-999px) var(--my,-999px),rgba(171,138,46,0.12),transparent 42%);}
.spotlight:hover::before{opacity:1;}
.spotlight>*{position:relative;z-index:1;}

/* ---------- marquee strip ---------- */
.marquee{overflow:hidden;background:var(--surface-alt);
  border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);}
.marquee__track{display:flex;width:max-content;animation:marquee 42s linear infinite;}
.marquee:hover .marquee__track{animation-play-state:paused;}
.marquee__item{display:inline-flex;align-items:center;gap:14px;padding:15px 0;margin:0 26px;white-space:nowrap;
  font-family:var(--font-display);font-variant-caps:small-caps;letter-spacing:var(--ls-caps);
  font-weight:var(--fw-bold);font-size:var(--fs-body);color:var(--brand-primary);}
.marquee__item::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--brand-accent);opacity:0.65;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ---------- gsap reveal (hidden only when JS active) ---------- */
.js-anim [data-reveal],.js-anim [data-reveal-left],.js-anim [data-reveal-right],
.js-anim [data-stagger]>*{opacity:0;}

/* ---------- responsive ---------- */
@media (max-width:980px){
  .hero__inner{grid-template-columns:1fr;text-align:center;gap:48px;}
  .hero__content{align-items:center;}
  .hero__content h1{max-width:20ch;}
  .hero__trust{align-items:center;}
  .section-head{justify-content:center;text-align:center;}
  .section-head h2{max-width:100%;}
  .cta-band__inner{text-align:center;justify-content:center;}
}
@media (max-width:480px){
  .hero{padding:150px 20px 80px;}
  .section{padding:72px 20px;}
  .process,.cta-band,.footer{padding-left:20px;padding-right:20px;}
  .hero__badge{left:0;}
  .navbar__links{gap:12px;}
}

@media (prefers-reduced-motion:reduce){
  .js-anim [data-reveal],.js-anim [data-reveal-left],.js-anim [data-reveal-right],
  .js-anim [data-stagger]>*{opacity:1;}
  .marquee__track{animation:none;}
  *{scroll-behavior:auto !important;}
}

.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:55;width:56px;height:56px;
  border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 20px rgba(0,0,0,.25);transition:transform .2s ease,box-shadow .2s ease;}
.whatsapp-float:hover{transform:scale(1.08);box-shadow:0 8px 24px rgba(0,0,0,.32);}
@media (max-width:600px){.whatsapp-float{right:14px;bottom:14px;width:52px;height:52px;}}
