/* =============================================
   JORDANA — Make-up & Estética Avançada
   /assets/css/style.css  v2.0
   Mobile-first · Premium · Autoral
   ============================================= */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Jost:wght@300;400;500;600&family=Great+Vibes&display=swap');
@import 'custom.css';

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:var(--text-base);color:var(--clr-text);background-color:var(--clr-bg);line-height:1.7;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{cursor:pointer;border:none;background:none;font-family:inherit}
ul{list-style:none}
:focus-visible{outline:2px solid var(--clr-accent);outline-offset:3px}

/* ── Utility ── */
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--space-6)}
.container--sm{max-width:var(--container-sm)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.section-pad{padding-block:var(--space-20)}
@media(min-width:768px){.section-pad{padding-block:var(--space-32)}}

/* ── Typography ── */
.eyebrow{font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--clr-accent);display:block;margin-bottom:var(--space-3)}
.display-title{font-family:var(--font-display);font-weight:300;line-height:1.05;letter-spacing:-.01em}
.divider-ornament{display:flex;align-items:center;gap:var(--space-4);margin-block:var(--space-6)}
.divider-ornament::before,.divider-ornament::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--clr-accent-lt),transparent)}
.divider-ornament span{color:var(--clr-accent);font-size:var(--text-lg);line-height:1}
.ornament{position:absolute;pointer-events:none;opacity:.4}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) var(--space-10);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:all var(--duration) var(--ease);text-align:center;white-space:nowrap;min-height:48px;box-sizing:border-box}
.btn--primary{background:var(--clr-primary);color:var(--clr-white);box-shadow:0 4px 20px rgba(107,26,46,.35)}
.btn--primary:hover{background:var(--clr-primary-lt);box-shadow:0 8px 32px rgba(107,26,46,.45);transform:translateY(-2px)}
.btn--ghost{background:transparent;color:var(--clr-primary);border:1.5px solid var(--clr-accent)}
.btn--ghost:hover{background:var(--clr-surface-2);border-color:var(--clr-primary);transform:translateY(-2px)}
.btn--light{background:rgba(255,255,255,.15);color:var(--clr-white);border:1.5px solid rgba(255,255,255,.4);backdrop-filter:blur(8px)}
.btn--light:hover{background:rgba(255,255,255,.25);transform:translateY(-2px)}
.btn--large{padding:var(--space-6) var(--space-12);white-space:normal;line-height:1.3;max-width:100%}

/* ══════════════════════════════════
   NAV
══════════════════════════════════ */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:var(--space-4) 0;transition:background var(--duration) var(--ease),box-shadow var(--duration) var(--ease)}
.nav.scrolled{background:rgba(250,244,240,.96);backdrop-filter:blur(12px);box-shadow:var(--shadow-sm)}
.nav__inner{display:flex;align-items:center;justify-content:space-between}
.nav__logo{display:flex;align-items:center;transition:opacity var(--duration) var(--ease)}
.nav__logo:hover{opacity:.9}
.nav__logo img{display:block;height:64px;width:auto;object-fit:contain;border-radius:var(--radius);overflow:hidden}
.nav__logo-img{transition:opacity 180ms ease}
.nav__links{display:none;gap:var(--space-8);align-items:center}
.nav__link{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:rgba(255,255,255,.85);transition:color var(--duration) var(--ease)}
.nav.scrolled .nav__link{color:var(--clr-text-muted)}
.nav__link:hover,.nav.scrolled .nav__link:hover{color:var(--clr-accent)}
.nav__cta{display:none}
.nav__burger{display:flex;flex-direction:column;gap:5px;padding:var(--space-2)}
.nav__burger span{display:block;width:24px;height:2px;background:var(--clr-white);border-radius:2px;transition:all var(--duration) var(--ease)}
.nav.scrolled .nav__burger span{background:var(--clr-primary)}
.nav__burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav__burger.open span:nth-child(2){opacity:0}
.nav__burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav__mobile{position:fixed;inset:0;background:var(--clr-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-8);z-index:99;opacity:0;pointer-events:none;transition:opacity var(--duration) var(--ease)}
.nav__mobile.open{opacity:1;pointer-events:all}
.nav__mobile .nav__link{font-size:var(--text-xl);color:rgba(255,255,255,.8);letter-spacing:.02em}
.nav__mobile .nav__link:hover{color:var(--clr-white)}
@media(min-width:900px){.nav__links{display:flex}.nav__cta{display:inline-flex}.nav__burger{display:none}}

/* ══════════════════════════════════
   HERO
══════════════════════════════════ */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}
.hero__bg{position:absolute;inset:0;background:var(--clr-primary)}
.hero__bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% top}
.hero__bg::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(32,10,18,.98) 0%,rgba(50,14,28,.92) 25%,rgba(80,20,35,.75) 50%,rgba(107,26,46,.4) 75%,rgba(107,26,46,.12) 90%,transparent 100%)}
.hero__ornament-tl{top:4%;left:-1%;width:110px}
.hero__content{position:relative;z-index:2;padding:calc(var(--space-24) + 60px) 0 var(--space-16);text-align:center}
.hero__eyebrow{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.3em;text-transform:uppercase;color:var(--clr-accent-lt);display:block;margin-bottom:var(--space-2)}
.hero__title{font-family:var(--font-display);font-size:clamp(3.5rem,13vw,7.5rem);font-weight:300;color:var(--clr-white);line-height:1;letter-spacing:-.02em;margin-bottom:var(--space-4)}
.hero__subtitle{font-family:var(--font-display);font-size:clamp(1.1rem,3.8vw,1.9rem);font-weight:500;color:var(--clr-white);margin-bottom:var(--space-5);line-height:1.25}
.hero__desc{font-size:var(--text-sm);color:rgba(255,255,255,.75);max-width:520px;margin-inline:auto;margin-bottom:var(--space-10);line-height:1.85}
.hero__ctas{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-4);max-width:100%}
.hero__ctas .btn{width:100%;min-width:0}
@media(min-width:480px){.hero__ctas{flex-direction:row;justify-content:center;align-items:center;flex-wrap:wrap}.hero__ctas .btn{width:auto}}
.hero__scroll{position:absolute;bottom:var(--space-6);left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center}
.hero__scroll-line{width:1px;height:48px;background:linear-gradient(to bottom,rgba(255,255,255,.6),transparent);animation:scrollPulse 2s ease-in-out infinite}
@keyframes scrollPulse{0%,100%{opacity:.4;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.15)}}

/* ══════════════════════════════════
   PHOTO STRIP
══════════════════════════════════ */
.photo-strip{overflow:hidden;background:var(--clr-primary)}
.photo-strip__track{display:flex;gap:3px}
.photo-strip__item{flex:0 0 calc(50vw - 2px);height:200px;overflow:hidden}
@media(min-width:600px){.photo-strip__item{flex:0 0 25%;height:260px}}
@media(min-width:1024px){.photo-strip__item{flex:0 0 20%;height:300px}}
.photo-strip__item img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .6s var(--ease),filter .4s;filter:brightness(.82) saturate(.9)}
.photo-strip__item:hover img{transform:scale(1.06);filter:brightness(.95) saturate(1.05)}

/* ══════════════════════════════════
   UTIL — Hover Zoom (reutilizável)
══════════════════════════════════ */
.hover-zoom{overflow:hidden}
.hover-zoom img{transition:transform .6s var(--ease), filter .4s;transform:scale(1);filter:brightness(.92) saturate(.95)}
.hover-zoom:hover img,
.hover-zoom:focus-within img,
.hover-zoom:focus-visible img{transform:scale(1.06);filter:brightness(1) saturate(1.03)}

.card-zoom{transition:transform .35s var(--ease), box-shadow .35s var(--ease)}
.card-zoom:hover,
.card-zoom:focus-within,
.card-zoom:focus-visible{transform:translateY(-2px) scale(1.01);box-shadow:0 16px 40px rgba(0,0,0,.18)}

@media (prefers-reduced-motion: reduce){
  .hover-zoom img,
  .card-zoom{transition:none !important;transform:none !important}
}

/* ══════════════════════════════════
   MANIFESTO
══════════════════════════════════ */
.manifesto{background:var(--clr-bg);position:relative;overflow:hidden}
.manifesto__bg{position:absolute;inset:0;pointer-events:none}
.manifesto__bg img{width:100%;height:100%;object-fit:cover;object-position:center top;opacity:.06;filter:grayscale(1)}
.manifesto__header{text-align:center;margin-bottom:var(--space-16);position:relative}
.manifesto__title{font-size:clamp(var(--text-2xl),6vw,var(--text-4xl));color:var(--clr-primary)}
.manifesto__grid{display:grid;gap:var(--space-6);position:relative}
.manifesto__item{background:var(--clr-surface);border-radius:var(--radius);padding:var(--space-8);border-left:3px solid var(--clr-accent);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}
.manifesto__item::before{content:'✦';position:absolute;top:var(--space-6);right:var(--space-6);color:var(--clr-accent-lt);font-size:.9rem}
.manifesto__item-title{font-size:var(--text-sm);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--clr-primary);margin-bottom:var(--space-3)}
.manifesto__item-text{color:var(--clr-text-muted);font-size:var(--text-sm);line-height:1.85}
@media(min-width:768px){.manifesto__grid{grid-template-columns:repeat(3,1fr)}}

/* ══════════════════════════════════
   CAMINHO
══════════════════════════════════ */
.caminho{background:var(--clr-surface-2);position:relative;overflow:hidden}
.caminho__inner{display:grid;gap:var(--space-12);align-items:center}
.caminho__img-wrap{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/5;box-shadow:var(--shadow-lg)}
.caminho__img-wrap img{width:100%;height:100%;object-fit:cover;object-position:center top}
.caminho__img-badge{position:absolute;bottom:var(--space-6);left:var(--space-6);background:rgba(107,26,46,.85);backdrop-filter:blur(12px);border-radius:var(--radius);padding:var(--space-4) var(--space-6);color:var(--clr-white)}
.caminho__img-badge-label{font-size:var(--text-xs);letter-spacing:.15em;text-transform:uppercase;color:var(--clr-accent-lt);display:block;margin-bottom:var(--space-1)}
.caminho__img-badge-value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500}
.caminho__title{font-size:clamp(var(--text-2xl),6vw,var(--text-4xl));color:var(--clr-primary);margin-bottom:var(--space-2)}
.caminho__subtitle{font-family:var(--font-display);font-size:clamp(var(--text-lg),3vw,var(--text-xl));color:var(--clr-text-muted);font-style:italic;margin-bottom:var(--space-6)}
.caminho__p{color:var(--clr-text-muted);line-height:1.9;margin-bottom:var(--space-4)}
.caminho__aperfeicoamento{margin-top:var(--space-12);background:var(--clr-primary);border-radius:var(--radius-lg);padding:var(--space-10) var(--space-8);text-align:center;position:relative;overflow:hidden}
.caminho__aperfeicoamento::before{content:'';position:absolute;top:-60%;left:-20%;width:200%;height:200%;background:radial-gradient(ellipse at center,rgba(196,132,138,.2) 0%,transparent 60%);pointer-events:none}
.caminho__aperfeicoamento .eyebrow{color:var(--clr-accent-lt)}
.caminho__aperfeicoamento-title{font-family:var(--font-display);font-size:clamp(var(--text-xl),8vw,var(--text-4xl));color:var(--clr-white);font-weight:300;margin-bottom:var(--space-4);line-height:1.05;max-width:100%;overflow-wrap:anywhere;word-break:break-word;hyphens:auto}
.caminho__aperfeicoamento-text{color:rgba(255,255,255,.75);max-width:540px;margin-inline:auto}
@media(min-width:900px){.caminho__inner{grid-template-columns:1fr 1fr}}
@media(max-width:420px){
  .caminho__aperfeicoamento{padding-inline:var(--space-6)}
  .caminho__aperfeicoamento-title{font-size:clamp(1.9rem,10.5vw,3rem)}
}

/* ══════════════════════════════════
   DIFERENCIAIS
══════════════════════════════════ */
.diferenciais{background:var(--clr-primary);position:relative;overflow:hidden}
.diferenciais::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 80% 20%,rgba(196,132,138,.18) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 10% 80%,rgba(200,168,130,.12) 0%,transparent 50%);pointer-events:none}
.diferenciais__header{text-align:center;margin-bottom:var(--space-16);position:relative}
.diferenciais__eyebrow{color:var(--clr-accent-lt)}
.diferenciais__title{font-size:clamp(var(--text-3xl),8vw,var(--text-5xl));color:var(--clr-white);font-weight:300}
.diferenciais__grid{display:grid;gap:var(--space-6);position:relative}
.diferencial-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:var(--space-8);backdrop-filter:blur(8px);transition:background var(--duration) var(--ease),transform var(--duration) var(--ease),box-shadow var(--duration) var(--ease)}
.diferencial-card:hover{background:rgba(255,255,255,.11);transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.25)}
.diferencial-card__icon{width:52px;height:52px;background:linear-gradient(135deg,var(--clr-accent),var(--clr-gold));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:var(--space-6)}
.diferencial-card__title{font-size:var(--text-sm);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--clr-accent-lt);margin-bottom:var(--space-3)}
.diferencial-card__text{color:rgba(255,255,255,.7);font-size:var(--text-sm);line-height:1.85}
@media(min-width:600px){.diferenciais__grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.diferenciais__grid{grid-template-columns:repeat(4,1fr)}}

/* ══════════════════════════════════
   PROCESSO
══════════════════════════════════ */
.processo{background:var(--clr-bg)}
.processo__header{text-align:center;margin-bottom:var(--space-16)}
.processo__title{font-size:clamp(var(--text-2xl),6vw,var(--text-4xl));color:var(--clr-primary)}
.processo__subtitle{font-family:var(--font-display);font-style:italic;color:var(--clr-text-muted)}
.processo__steps{display:grid;gap:var(--space-6)}
.step-card{display:grid;grid-template-columns:auto 1fr;gap:var(--space-6);align-items:start;background:var(--clr-surface);border-radius:var(--radius);padding:var(--space-8);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease)}
.step-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.step-card__number{font-family:var(--font-display);font-size:clamp(3.5rem,8vw,5rem);font-weight:300;color:var(--clr-accent-lt);line-height:1;min-width:60px;text-align:center}
.step-card__title{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--clr-primary);margin-bottom:var(--space-2)}
.step-card__text{color:var(--clr-text-muted);font-size:var(--text-sm);line-height:1.85}
@media(min-width:768px){.processo__steps{grid-template-columns:1fr 1fr}}

/* ══════════════════════════════════
   SOLUÇÕES
══════════════════════════════════ */
.solucoes{background:var(--clr-surface-2)}
.solucoes__header{text-align:center;margin-bottom:var(--space-16)}
.solucoes__title{font-size:clamp(var(--text-xl),5vw,var(--text-3xl));color:var(--clr-primary)}
.solucoes__list{display:grid;gap:3px}
.solucao-item{display:grid;background:var(--clr-surface);overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration) var(--ease)}
.solucao-item:hover{box-shadow:var(--shadow)}
.solucao-item__img{aspect-ratio:4/3;overflow:hidden}
.solucao-item__img img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .6s var(--ease)}
.solucao-item:hover .solucao-item__img img{transform:scale(1.04)}
.solucao-item__body{padding:var(--space-6) var(--space-8);display:flex;flex-direction:column;gap:var(--space-3);justify-content:center}
.solucao-item__title{font-family:var(--font-display);font-size:clamp(var(--text-lg),3vw,var(--text-xl));color:var(--clr-primary);font-weight:400}
.solucao-item__problem{font-size:var(--text-sm);color:var(--clr-text-muted)}
.solucao-item__benefit{font-size:var(--text-sm);font-weight:500;color:var(--clr-primary-lt);padding-left:var(--space-4);border-left:2px solid var(--clr-accent);line-height:1.6}
@media(min-width:600px){.solucao-item{grid-template-columns:240px 1fr}.solucao-item__img{aspect-ratio:auto}}
@media(min-width:900px){.solucao-item{grid-template-columns:320px 1fr}}

/* ══════════════════════════════════
   GALERIA
══════════════════════════════════ */
.galeria{background:var(--clr-primary);position:relative;overflow:hidden}
.galeria::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 50% 0%,rgba(196,132,138,.2) 0%,transparent 60%);pointer-events:none}
.galeria__header{text-align:center;margin-bottom:var(--space-16);position:relative}
.galeria__header .eyebrow{color:var(--clr-accent-lt)}
.galeria__title{font-size:clamp(var(--text-3xl),8vw,var(--text-5xl));color:var(--clr-white);font-weight:300}
.galeria__subtitle{font-size:var(--text-sm);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--clr-accent-lt);margin-bottom:var(--space-4)}
.galeria__desc{color:rgba(255,255,255,.7);max-width:540px;margin-inline:auto;font-size:var(--text-sm)}
.galeria__grid{display:grid;gap:var(--space-6);position:relative}
.antes-depois{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xl)}
.antes-depois__imgs{display:grid;grid-template-columns:1fr 1fr}
.antes-depois__img{position:relative;aspect-ratio:3/4;overflow:hidden;cursor:pointer;transition:transform var(--duration) var(--ease)}
.antes-depois__img:hover{transform:scale(1.02)}
.antes-depois__img:focus-visible{outline:2px solid var(--clr-accent-lt);outline-offset:3px}
.antes-depois__img img{width:100%;height:100%;object-fit:cover;object-position:center top;pointer-events:none}
.antes-depois__label{position:absolute;bottom:var(--space-3);left:50%;transform:translateX(-50%);font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.25em;text-transform:uppercase;color:var(--clr-white);text-shadow:0 2px 8px rgba(0,0,0,.6);background:rgba(0,0,0,.35);padding:2px 12px;border-radius:20px;white-space:nowrap}
.antes-depois__caption{background:rgba(255,255,255,.07);backdrop-filter:blur(8px);padding:var(--space-5);color:rgba(255,255,255,.75);font-size:var(--text-sm);text-align:center;font-style:italic}
.galeria__aviso{margin-top:var(--space-10);text-align:center;font-size:var(--text-xs);color:rgba(255,255,255,.4);padding:var(--space-4);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);max-width:640px;margin-inline:auto}

/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--space-6);opacity:0;visibility:hidden;transition:opacity .3s var(--ease),visibility .3s var(--ease)}
.lightbox.is-open{opacity:1;visibility:visible}
.lightbox.is-open .lightbox__content{transform:scale(1)}
.lightbox__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(8px);cursor:pointer}
.lightbox__content{position:relative;z-index:2;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;transform:scale(0.95);transition:transform .25s var(--ease)}
.lightbox__img{max-width:100%;max-height:85vh;width:auto;height:auto;object-fit:contain;border-radius:var(--radius);box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lightbox__label{margin-top:var(--space-4);font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.2em;text-transform:uppercase;color:var(--clr-white)}
.lightbox__close{position:absolute;top:-44px;right:0;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.15);color:var(--clr-white);font-size:1.75rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--duration) var(--ease),color var(--duration) var(--ease);border:1px solid rgba(255,255,255,.3)}
.lightbox__close:hover{background:var(--clr-white);color:var(--clr-primary)}
.lightbox__nav{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.15);color:var(--clr-white);font-size:2rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--duration) var(--ease),color var(--duration) var(--ease);border:1px solid rgba(255,255,255,.3)}
.lightbox__nav:hover{background:var(--clr-white);color:var(--clr-primary)}
.lightbox__nav--prev{left:var(--space-4)}
.lightbox__nav--next{right:var(--space-4)}
@media(min-width:768px){.lightbox__nav{width:56px;height:56px;font-size:2.25rem}.lightbox__nav--prev{left:var(--space-8)}.lightbox__nav--next{right:var(--space-8)}}

@media(min-width:700px){.galeria__grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.galeria__grid{grid-template-columns:repeat(3,1fr)}}

/* ══════════════════════════════════
   FAQ
══════════════════════════════════ */
.faq{background:var(--clr-bg)}
.faq__header{text-align:center;margin-bottom:var(--space-16)}
.faq__title{font-size:clamp(var(--text-2xl),5vw,var(--text-4xl));color:var(--clr-primary)}
.faq__subtitle{font-family:var(--font-display);font-style:italic;color:var(--clr-text-muted);margin-top:var(--space-2)}
.faq__list{display:grid;gap:var(--space-3);max-width:820px;margin-inline:auto}
.faq__item{background:var(--clr-surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid transparent;transition:border-color var(--duration) var(--ease),box-shadow var(--duration) var(--ease)}
.faq__item.open{border-color:var(--clr-accent-lt);box-shadow:var(--shadow)}
.faq__question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-6) var(--space-8);text-align:left;cursor:pointer}
.faq__question-text{font-size:var(--text-sm);font-weight:600;color:var(--clr-primary);line-height:1.4}
.faq__icon{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--clr-surface-2);border:1.5px solid var(--clr-accent-lt);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);color:var(--clr-accent);transition:transform var(--duration) var(--ease),background var(--duration) var(--ease)}
.faq__item.open .faq__icon{transform:rotate(45deg);background:var(--clr-primary);color:var(--clr-white);border-color:var(--clr-primary)}
.faq__answer{max-height:0;overflow:hidden;transition:max-height .45s var(--ease)}
.faq__answer-inner{padding:var(--space-4) var(--space-8) var(--space-8);color:var(--clr-text-muted);font-size:var(--text-sm);line-height:1.85;border-top:1px solid var(--clr-surface-2)}
.faq__item.open .faq__answer{max-height:500px}

/* ══════════════════════════════════
   CURSOS
══════════════════════════════════ */
.cursos{background:var(--clr-surface-2);position:relative;overflow:hidden}
.cursos__bg{position:absolute;inset:0;pointer-events:none}
.cursos__bg img{width:100%;height:100%;object-fit:cover;opacity:.07;filter:grayscale(1)}
.cursos__header{text-align:center;margin-bottom:var(--space-16);position:relative}
.cursos__title{font-size:clamp(var(--text-2xl),6vw,var(--text-4xl));color:var(--clr-primary)}
.cursos__subtitle{font-family:var(--font-display);font-style:italic;color:var(--clr-text-muted);font-size:clamp(var(--text-base),2.5vw,var(--text-lg))}
.cursos__grid{display:grid;gap:var(--space-8);position:relative}
.curso-card{background:var(--clr-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);transition:box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease)}
.curso-card__header{background:linear-gradient(135deg,var(--clr-primary),var(--clr-primary-lt));padding:var(--space-8);position:relative;overflow:hidden}
.curso-card__header::before{content:'';position:absolute;top:-30%;right:-10%;width:200px;height:200px;background:radial-gradient(circle,rgba(196,132,138,.25) 0%,transparent 70%);border-radius:50%}
.curso-card__tag{display:inline-block;background:rgba(255,255,255,.15);color:var(--clr-accent-lt);font-size:var(--text-xs);letter-spacing:.15em;text-transform:uppercase;font-weight:600;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);margin-bottom:var(--space-4)}
.curso-card__title{font-family:var(--font-display);font-size:clamp(var(--text-xl),4vw,var(--text-2xl));color:var(--clr-white);font-weight:300;margin-bottom:var(--space-2)}
.curso-card__subtitle{font-size:var(--text-xs);color:rgba(255,255,255,.65);letter-spacing:.06em}
.curso-card__body{padding:var(--space-8)}
.curso-card__carga{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--clr-primary);margin-bottom:var(--space-6)}
.curso-card__carga::before{content:'⏱'}
.curso-card__desc{color:var(--clr-text-muted);font-size:var(--text-sm);line-height:1.85;margin-bottom:var(--space-6)}
.curso-card__bloco{margin-bottom:var(--space-6)}
.curso-card__bloco-title{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--clr-primary);margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2)}
.curso-card__bloco-title::before{content:'✔';color:var(--clr-accent)}
.curso-card__bloco ul{padding-left:var(--space-4);display:grid;gap:var(--space-2)}
.curso-card__bloco li{font-size:var(--text-sm);color:var(--clr-text-muted);padding-left:var(--space-4);position:relative}
.curso-card__bloco li::before{content:'·';position:absolute;left:0;color:var(--clr-accent);font-size:1.2rem;line-height:1;top:.1em}
.curso-card__objetivo{background:var(--clr-surface-2);border-radius:var(--radius);padding:var(--space-6);border-left:3px solid var(--clr-accent)}
.curso-card__objetivo-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--clr-accent);margin-bottom:var(--space-2)}
.curso-card__objetivo-text{font-size:var(--text-sm);color:var(--clr-text-muted);line-height:1.8}
@media(min-width:900px){.cursos__grid{grid-template-columns:1fr 1fr}}

/* ══════════════════════════════════
   CTA FINAL
══════════════════════════════════ */
.cta-final{position:relative;min-height:560px;display:flex;align-items:center;overflow:hidden;text-align:center}
.cta-final__bg{position:absolute;inset:0;background:linear-gradient(160deg,var(--clr-primary) 0%,#3D0C18 100%)}
.cta-final__bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22;mix-blend-mode:luminosity}
.cta-final__bg::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 40%,rgba(196,132,138,.18) 0%,transparent 70%)}
.cta-final__content{position:relative;z-index:2;width:100%}
.cta-final__logo-img{display:block;margin-inline:auto;max-height:clamp(5.5rem,22vw,9.5rem);width:auto;object-fit:contain;margin-bottom:var(--space-2);border-radius:var(--radius);overflow:hidden}
.cta-final__logo-sub{font-size:var(--text-xs);letter-spacing:.3em;text-transform:uppercase;color:var(--clr-accent-lt);margin-bottom:var(--space-10);display:block}
.cta-final__title{font-family:var(--font-display);font-size:clamp(var(--text-2xl),6vw,var(--text-4xl));color:var(--clr-white);font-weight:300;line-height:1.2;margin-bottom:var(--space-2)}
.cta-final__subtitle{font-size:clamp(var(--text-base),3vw,var(--text-xl));font-weight:600;color:var(--clr-white);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-6)}
.cta-final__subtitle strong{color:var(--clr-accent-lt)}
.cta-final__divider{width:80px;height:1px;background:rgba(255,255,255,.3);margin-inline:auto;margin-bottom:var(--space-6)}
.cta-final__desc{color:rgba(255,255,255,.7);font-size:var(--text-sm);margin-bottom:var(--space-10)}
.cta-final__actions{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);margin-bottom:var(--space-10)}
.cta-final__contacts{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);font-size:var(--text-sm);color:rgba(255,255,255,.7)}
.cta-final__contact{display:flex;align-items:center;gap:var(--space-2);transition:color var(--duration) var(--ease)}
.cta-final__contact:hover{color:var(--clr-white)}
@media(min-width:480px){.cta-final__contacts{flex-direction:row;justify-content:center;gap:var(--space-8)}}

/* ══════════════════════════════════
   FOOTER
══════════════════════════════════ */
.footer{background:var(--clr-footer);padding:var(--space-8) 0;text-align:center}
.footer__text{font-size:var(--text-xs);color:rgba(255,255,255,.3);letter-spacing:.06em}

/* ══════════════════════════════════
   ANIMATIONS
══════════════════════════════════ */
.fade-up{opacity:0;transform:translateY(32px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.fade-up.visible{opacity:1;transform:translateY(0)}
.fade-up:nth-child(2){transition-delay:.1s}
.fade-up:nth-child(3){transition-delay:.2s}
.fade-up:nth-child(4){transition-delay:.3s}
.fade-up:nth-child(5){transition-delay:.4s}

/* ══════════════════════════════════
   WHATSAPP FAB
══════════════════════════════════ */
.whatsapp-fab{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:90;width:56px;height:56px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,.4);transition:transform var(--duration) var(--ease),box-shadow var(--duration) var(--ease)}
.whatsapp-fab:hover{transform:scale(1.1);box-shadow:0 8px 32px rgba(37,211,102,.5)}
.whatsapp-fab svg{width:28px;height:28px;fill:white}
