/* ============================================================
   LUXURY REDESIGN — Oficina Bolsa Lucrativa
   Palette inspired by the hero handbag: onyx black, ivory,
   champagne gold. Elegant serif headlines + refined sans body.
   Priority: mobile-first, converts hard, feels premium.
   ============================================================ */

:root{
  --lx-ink:#0e0e10;
  --lx-onyx:#151519;
  --lx-charcoal:#1c1c22;
  --lx-graphite:#2a2a30;
  --lx-ivory:#f6f1e6;
  --lx-cream:#ece4d1;
  --lx-sand:#d9cfba;
  --lx-taupe:#6b6157;
  --lx-body:#3b342c;
  --lx-gold:#d4af37;
  --lx-gold-lt:#f0d878;
  --lx-gold-dk:#8b6914;
  --lx-gold-grad:linear-gradient(135deg,#f6dc7c 0%,#e2ba4a 38%,#c9982a 68%,#a67418 100%);
  --lx-gold-grad-soft:linear-gradient(135deg,#f8e29a 0%,#e5c268 55%,#c99a2a 100%);
  --lx-border-gold:rgba(212,175,55,.35);
}

/* Global type baseline */
body, .elementor, .elementor-widget-container,
.elementor-widget-image-box .elementor-image-box-description,
.elementor-widget-text-editor,
.ws-pill, .ws-payments-price{
  font-family:"Inter","Helvetica Neue",Arial,sans-serif !important;
  -webkit-font-smoothing:antialiased;
  color:var(--lx-body);
}
h1,h2,h3,h4,h5,
.elementor-widget-image-box .elementor-image-box-title,
.elementor-heading-title{
  font-family:"Outfit","Cormorant Garamond",Georgia,serif !important;
  letter-spacing:-.01em;
}

/* ============ HERO (mobile-first, section 5c88c6b8) ============ */
@media (max-width:767px){
  .elementor-949 .elementor-element.elementor-element-5c88c6b8:not(.elementor-motion-effects-element-type-background),
  .elementor-949 .elementor-element.elementor-element-5c88c6b8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{
    background-image:
      radial-gradient(75% 45% at 50% 22%, rgba(212,175,55,.10), transparent 70%),
      linear-gradient(180deg,#050506 0%,#0b0b0e 40%,#111114 100%) !important;
    background-color:#050506 !important;
  }
  .elementor-949 .elementor-element.elementor-element-5c88c6b8{
    --padding-top:0px !important;
    --padding-bottom:36px !important;
    --padding-left:18px !important;
    --padding-right:18px !important;
    --min-height:0px !important;
    --justify-content:flex-start !important;
    position:relative;
    overflow:hidden;
  }

  /* Hide the standalone logo — logo lives on the bag composition */
  .ws-hero-logo{display:none !important;}

  /* Bag visual: full-bleed edge-to-edge */
  .ws-hero-visual{
    display:block !important;
    order:-2;
    position:relative;
    width:calc(100% + 36px) !important;
    max-width:none !important;
    margin:-20px -18px 8px -18px !important;
    padding:0 !important;
    pointer-events:none;
    aspect-ratio: 6 / 5;
    overflow:hidden;
    border-radius:0 !important;
    background:transparent !important;
  }
  .ws-hero-visual img{
    display:block;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    object-fit:cover;
    object-position:center 54%;
    margin:0 !important;
    border-radius:0 !important;
    filter:contrast(1.06) brightness(1.12) saturate(1.05);
    -webkit-mask-image: linear-gradient(180deg,
      #000 0%,
      #000 48%,
      rgba(0,0,0,.98) 58%,
      rgba(0,0,0,.9) 68%,
      rgba(0,0,0,.76) 78%,
      rgba(0,0,0,.56) 86%,
      rgba(0,0,0,.34) 93%,
      rgba(0,0,0,.14) 98%,
      transparent 100%);
    mask-image: linear-gradient(180deg,
      #000 0%,
      #000 48%,
      rgba(0,0,0,.98) 58%,
      rgba(0,0,0,.9) 68%,
      rgba(0,0,0,.76) 78%,
      rgba(0,0,0,.56) 86%,
      rgba(0,0,0,.34) 93%,
      rgba(0,0,0,.14) 98%,
      transparent 100%);
  }
  .ws-hero-visual::after{
    content:"";
    position:absolute;left:0;right:0;bottom:-1px;height:42%;
    background:linear-gradient(180deg,
      transparent 0%,
      rgba(11,11,14,.015) 34%,
      rgba(11,11,14,.035) 58%,
      rgba(11,11,14,.065) 78%,
      rgba(11,11,14,.1) 100%);
    pointer-events:none;
  }




}

@media (min-width:768px){
  .elementor-949 .elementor-element.elementor-element-5c88c6b8:not(.elementor-motion-effects-element-type-background),
  .elementor-949 .elementor-element.elementor-element-5c88c6b8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{
    background-color:#050506 !important;
    background-image:
      radial-gradient(70% 55% at 78% 40%, rgba(212,175,55,.14), transparent 60%),
      radial-gradient(120% 60% at 20% 100%, rgba(212,175,55,.08), transparent 60%),
      linear-gradient(180deg,#050506 0%,#0d0d10 50%,#141418 100%) !important;
  }
}

/* Hero headline — Outfit, bright, ultra-legible */
.elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-title{
  font-family:"Outfit",Helvetica,Arial,sans-serif !important;
  font-weight:800 !important;
  font-size:32px !important;
  line-height:1.18 !important;
  letter-spacing:0.01em !important;
  text-transform:none !important;
  color:#fbf7ec !important;
  text-shadow:0 2px 20px rgba(0,0,0,.45);
  padding:0 6px;
  margin-bottom:14px !important;
}
.elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-description{
  font-family:"Inter",sans-serif !important;
  font-size:15px !important;
  color:#d9d3c4 !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}
.elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-description b{
  color:var(--lx-gold-lt) !important;font-weight:700;
}

/* Hide the ugly secondary blue button — we already have the gold CTA */
.elementor-949 .elementor-element.elementor-element-80b63fe{display:none !important;}

/* ============ HERO EXTRAS (pills, CTA, price, progress) ============ */
.ws-hero-extras{gap:16px !important;padding:0 4px !important;margin-top:22px !important;}

/* Info pills — thin gold border on onyx glass */
.ws-info-pills{gap:9px !important;}
.ws-pill{
  background:linear-gradient(180deg, rgba(24,24,28,.85), rgba(14,14,16,.85)) !important;
  border:1px solid var(--lx-border-gold) !important;
  color:var(--lx-ivory) !important;
  font-family:"Inter",sans-serif !important;
  font-size:13px !important;font-weight:500 !important;
  padding:12px 16px !important;border-radius:999px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 4px 14px rgba(0,0,0,.35);
}
.ws-pill span:not(.ws-pill-ico){
  background:var(--lx-gold-grad-soft) !important;
  -webkit-background-clip:text !important;background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  font-weight:600 !important;letter-spacing:.02em;
}
.ws-pill-ico{filter:drop-shadow(0 0 6px rgba(212,175,55,.35));}

/* ============ GOLD CTA — big, shimmery, pulsing ============ */
.ws-gold-cta{
  position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;gap:12px;
  padding:22px 22px !important;
  border-radius:16px !important;
  background:var(--lx-gold-grad) !important;
  color:#1a1205 !important;
  font-family:"Inter",sans-serif !important;
  font-weight:800 !important;
  font-size:19px !important;
  letter-spacing:.02em !important;
  text-transform:uppercase;
  text-decoration:none !important;
  box-shadow:
    0 10px 28px rgba(201,152,42,.55),
    inset 0 -3px 0 rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.45);
  animation:lxPulse 2.4s ease-in-out infinite;
  transition:transform .18s ease, box-shadow .18s ease;
}
.ws-gold-cta::before{
  content:"";position:absolute;top:0;left:-60%;width:55%;height:100%;
  background:linear-gradient(120deg,
    transparent 0%,
    rgba(255,255,255,.18) 40%,
    rgba(255,255,255,.55) 50%,
    rgba(255,255,255,.18) 60%,
    transparent 100%);
  transform:skewX(-22deg);
  animation:lxShine 3.2s ease-in-out infinite;
  pointer-events:none;
}
.ws-gold-cta:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(201,152,42,.7),inset 0 -3px 0 rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.5);}
.ws-gold-cta:active{transform:translateY(0);}
.ws-gold-cta-arrow{font-size:22px;font-weight:900;transition:transform .25s ease;}
.ws-gold-cta:hover .ws-gold-cta-arrow{transform:translateX(4px);}
@keyframes lxPulse{
  0%,100%{box-shadow:0 10px 28px rgba(201,152,42,.55),inset 0 -3px 0 rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.45);}
  50%{box-shadow:0 14px 40px rgba(240,216,120,.75),inset 0 -3px 0 rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.55);}
}
@keyframes lxShine{
  0%{left:-60%;} 60%{left:120%;} 100%{left:120%;}
}

/* ============ PROGRESS BAR — cinematic gold ============ */
.ws-progress{
  background:linear-gradient(180deg, rgba(24,24,28,.9), rgba(12,12,14,.9)) !important;
  border:1px solid var(--lx-border-gold);
  color:var(--lx-ivory) !important;
  font-family:"Inter",sans-serif !important;
  font-size:12px !important;letter-spacing:.14em !important;text-transform:uppercase;
  border-radius:14px !important;
  padding:14px 16px 26px !important;
  box-shadow:0 8px 22px rgba(0,0,0,.4);
  overflow:hidden;position:relative;
}
.ws-progress-label{color:#d9d3c4 !important;font-weight:600 !important;}
.ws-progress-value{
  color:#f6dc7c !important;font-weight:800 !important;letter-spacing:.05em !important;
}
.ws-progress-bar{
  left:14px !important;right:14px !important;bottom:10px !important;height:9px !important;
  background:rgba(255,255,255,.08) !important;
  border-radius:999px !important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.5);
}
.ws-progress-fill{
  background:var(--lx-gold-grad) !important;
  position:relative;overflow:hidden;
  box-shadow:0 0 12px rgba(240,216,120,.55);
  animation:lxFillGrow 1.6s cubic-bezier(.2,.8,.2,1) both;
}
.ws-progress-fill::after{
  content:"";position:absolute;top:0;left:-50%;width:40%;height:100%;
  background:linear-gradient(90deg,transparent 0%, rgba(255,255,255,.65) 50%, transparent 100%);
  animation:lxBarShine 2.2s ease-in-out infinite;
}
@keyframes lxFillGrow{ from{width:0;} to{width:75%;} }
@keyframes lxBarShine{ 0%{left:-50%;} 60%{left:110%;} 100%{left:110%;} }

/* ============ SECTIONS — cream + gold accents ============ */
/* Main "O que você vai receber" section */
.elementor-949 .elementor-element.elementor-element-cd68e6a{
  background-color:var(--lx-ivory) !important;
  background-image:
    radial-gradient(60% 40% at 50% 0%, rgba(212,175,55,.08), transparent 70%) !important;
}
/* Section title */
.elementor-949 .elementor-element.elementor-element-73344b3 .elementor-image-box-title{
  font-family:"Outfit",Georgia,serif !important;
  font-weight:700 !important;
  color:var(--lx-ink) !important;
  font-size:32px !important;line-height:1.15 !important;
}
.elementor-949 .elementor-element.elementor-element-73344b3 .elementor-image-box-title::after{
  content:"";display:block;width:56px;height:2px;margin:16px auto 0;
  background:var(--lx-gold-grad);border-radius:2px;
}

/* Every card wrapper in the receive/schedule area — subtle gold border, deep shadow */
.elementor-949 .elementor-element.elementor-element-cd68e6a .elementor-element.e-con.e-child, .elementor-949 .elementor-element[class*="ac84740"] .elementor-element.e-con.e-child{
  border-color:var(--lx-border-gold) !important;
  background-color:#fffdf7 !important;
  box-shadow:0 12px 30px rgba(20,15,5,.06), 0 2px 6px rgba(20,15,5,.04);
  border-radius:14px !important;
}
.elementor-949 .elementor-element.elementor-element-cd68e6a .elementor-element.e-con.e-child .elementor-image-box-title{
  font-family:"Outfit",Georgia,serif !important;
  color:var(--lx-ink) !important;
  font-weight:700 !important;
  letter-spacing:-.01em !important;
}
.elementor-949 .elementor-element.elementor-element-cd68e6a .elementor-element.e-con.e-child .elementor-image-box-description{
  color:var(--lx-taupe) !important;
  font-family:"Inter",sans-serif !important;
  font-size:15px !important;
  line-height:1.6 !important;
}

/* Blue borders/backgrounds anywhere -> gold/cream */
.elementor-949 [style*="#2C3C57"],
.elementor-949 [style*="#40577A"]{ /* rare inline uses */
  border-color:var(--lx-gold) !important;
}

/* Section title colors (secondary titles) */
.elementor-widget-image-box .elementor-image-box-title[style*="color"],
.elementor-widget-image-box .elementor-image-box-title{
  /* let our per-section rules override */
}

/* MOLDE COMPLETO ribbon — restyle in gold */
.ws-ribbon, .molde-ribbon, [class*="molde"]{
  /* fallback if class differs — see post-949.css */
}

/* Schedule aula placeholders — luxe dark card */
.ws-aula-img-placeholder{
  background:linear-gradient(135deg, #1a1a1f 0%, #2a2a30 100%) !important;
  border:1px solid var(--lx-border-gold);
  color:var(--lx-gold-lt) !important;
  font-family:"Outfit",serif !important;
}

/* Price card (gold gradient) — keep, refine */
[class*="ws-price-card"], .ws-price-card{
  border:1px solid var(--lx-gold) !important;
  border-radius:18px !important;
  box-shadow:0 18px 40px rgba(139,105,20,.25);
}

/* FAQ */
.ws-faq-item{
  border:1px solid rgba(0,0,0,.06) !important;
  background:#fffdf7 !important;
  border-radius:12px !important;
  margin-bottom:10px !important;
  overflow:hidden;
}
.ws-faq-item[open], .ws-faq-item.is-open{
  border-color:var(--lx-border-gold) !important;
  box-shadow:0 6px 20px rgba(139,105,20,.08);
}
.ws-faq-question, .ws-faq-item summary{
  font-family:"Outfit",serif !important;
  color:var(--lx-ink) !important;font-weight:600 !important;
}

/* Testimonial names */
[class*="testimonial"] h3, [class*="depoiment"] h3{
  font-family:"Outfit",serif !important;
  color:var(--lx-ink) !important;
}

/* Footer */
.site-footer, footer{
  background:var(--lx-ink) !important;
  color:#a89f8f !important;
}
.site-footer a{color:var(--lx-gold-lt) !important;}

/* Body / page background */
body{background:var(--lx-ivory);}

/* ============ DESKTOP TUNING ============ */
@media (min-width:768px){
  .elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-title{
    font-size:48px !important;line-height:1.14 !important;letter-spacing:0.015em !important;
  }
  .elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-description{
    font-size:17px !important;
  }
  .ws-gold-cta{font-size:22px !important;padding:24px 28px !important;}
  .elementor-949 .elementor-element.elementor-element-73344b3 .elementor-image-box-title{
    font-size:44px !important;
  }
}

/* ============ MOBILE FINAL TUNING ============ */
@media (max-width:767px){
  /* keep original mobile paddings so background bag+logo art stays composed */
  .elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-title{
    font-size:24px !important;line-height:1.22 !important;padding:0 4px !important;letter-spacing:0.01em !important;
  }
  .ws-gold-cta{font-size:16px !important;padding:18px 16px !important;letter-spacing:.03em !important;}
  .ws-progress{font-size:11px !important;padding:12px 14px 24px !important;}
  .ws-progress-bar{height:8px !important;left:12px !important;right:12px !important;bottom:9px !important;}
  .ws-pill{font-size:12px !important;padding:11px 14px !important;}
}

/* Desktop hero — make inner container transparent, text light */
@media (min-width:768px){
  .elementor-949 .elementor-element.elementor-element-12d3b073{
    background:transparent !important;
    box-shadow:none !important;
    border:none !important;
  }
  .elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-title{
    color:#fbf7ec !important;text-align:left !important;
    text-shadow:0 2px 24px rgba(0,0,0,.55);
  }
  .elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-description{
    color:#d9d3c4 !important;text-align:left !important;
  }
  .elementor-949 .elementor-element.elementor-element-4c7d4c8 .elementor-image-box-wrapper{
    text-align:left !important;
  }
}

/* Hide the ws-hero-logo on mobile (background image already contains it) */
@media (max-width:767px){
  .ws-hero-logo{display:none !important;}
}

/* ============================================================
   V2 — GLOBAL LUXURY OVERHAUL (site-wide)
   Kills residual blue chrome, unifies palette, boosts type for 50+
   ============================================================ */

/* Body / page — kill pure black, use ivory */
body.elementor-page-949:not(.elementor-motion-effects-element-type-background),
body.elementor-page-949 > .elementor-motion-effects-container > .elementor-motion-effects-layer{
  background-color:var(--lx-ivory) !important;
  background-image:none !important;
}
html, body{ background:var(--lx-ivory) !important; }

/* Base type larger for 50+ audience */
.elementor-949, .elementor-949 p,
.elementor-949 .elementor-widget-text-editor,
.elementor-949 .elementor-widget-container{
  font-size:17px;
  line-height:1.65;
}
.elementor-949 .elementor-image-box-description,
.elementor-949 .elementor-image-box-description p,
.elementor-949 .elementor-image-box-description span{
  font-size:16px !important;
  line-height:1.65 !important;
  color:var(--lx-body) !important;
}
.elementor-949 .elementor-image-box-title{
  font-size:22px !important;
  line-height:1.25 !important;
  color:var(--lx-ink) !important;
}

/* All Elementor buttons → gold gradient */
.elementor-949 .elementor-button,
.elementor-949 .elementor-button-link,
.elementor-949 a.elementor-button{
  background:var(--lx-gold-grad) !important;
  background-image:var(--lx-gold-grad) !important;
  color:#1a1205 !important;
  border:none !important;
  border-radius:14px !important;
  font-family:"Inter",sans-serif !important;
  font-weight:800 !important;
  font-size:19px !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
  padding:20px 28px !important;
  box-shadow:0 10px 26px rgba(201,152,42,.45), inset 0 -3px 0 rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.4) !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}
.elementor-949 .elementor-button:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(201,152,42,.6) !important;
}

/* Kill remaining blue-toned section backgrounds — force cream */
.elementor-949 [style*="background-color:#2C3C57"],
.elementor-949 [style*="background-color:#40577A"],
.elementor-949 [style*="background:#2C3C57"],
.elementor-949 [style*="background:#40577A"]{
  background-color:var(--lx-ivory) !important;
  background-image:none !important;
}

/* Testimonial section wrapper (element 755459e) — soft ivory instead of gradient */
.elementor-949 .elementor-element.elementor-element-755459e{
  background:linear-gradient(180deg,#f8f4e9 0%, #ece4d1 100%) !important;
  background-image:linear-gradient(180deg,#f8f4e9 0%, #ece4d1 100%) !important;
}
.elementor-949 .elementor-element.elementor-element-3b66345 .elementor-image-box-title{
  color:var(--lx-ink) !important;
  font-family:"Outfit", serif !important;
  font-size:34px !important;
}

/* Testimonial cards & headers */
.elementor-949 .elementor-element-d9bde12,
.elementor-949 .elementor-element-70c9224,
.elementor-949 .elementor-element-9332f35{
  background:#fffdf7 !important;
  border:1px solid var(--lx-border-gold) !important;
  border-radius:16px !important;
  padding:18px !important;
  box-shadow:0 10px 26px rgba(20,15,5,.06) !important;
}

/* ============ FAQ — light with gold accents ============ */
.ws-faq, .ws-faq-list, [class*="faq"]{
  background:transparent !important;
}
details.ws-faq-item,
.ws-faq-item{
  background:#fffdf7 !important;
  border:1px solid rgba(212,175,55,.25) !important;
  border-radius:14px !important;
  margin-bottom:12px !important;
  overflow:hidden !important;
  box-shadow:0 4px 14px rgba(20,15,5,.04);
}
details.ws-faq-item[open],
.ws-faq-item.is-open{
  border-color:var(--lx-gold) !important;
  box-shadow:0 10px 26px rgba(139,105,20,.12) !important;
}
.ws-faq-item summary,
.ws-faq-question{
  font-family:"Outfit", Georgia, serif !important;
  color:var(--lx-ink) !important;
  font-weight:700 !important;
  font-size:19px !important;
  padding:20px 22px !important;
  cursor:pointer;
  list-style:none;
  background:transparent !important;
}
.ws-faq-item summary::-webkit-details-marker{display:none;}
.ws-faq-item summary::after{
  content:"+";
  float:right;
  color:var(--lx-gold);
  font-size:26px;
  font-weight:400;
  line-height:1;
  transition:transform .25s ease;
}
.ws-faq-item[open] summary::after,
.ws-faq-item.is-open summary::after{ content:"–"; }
.ws-faq-answer,
.ws-faq-item p,
.ws-faq-item .answer{
  color:var(--lx-body) !important;
  font-size:16px !important;
  line-height:1.65 !important;
  padding:0 22px 22px !important;
  background:transparent !important;
}

/* ============ TICKET CARD — onyx premium v3 ============ */
.ws-ticket-card-wrapper{
  background:radial-gradient(120% 80% at 50% 0%, #1a1a20 0%, #0b0b0f 70%) !important;
  padding:64px 16px !important;
  position:relative;
}
.ws-ticket-card-wrapper::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(40% 30% at 20% 10%, rgba(212,175,55,.10), transparent 60%),
    radial-gradient(40% 30% at 80% 90%, rgba(212,175,55,.08), transparent 60%);
}
.ws-ticket-card{
  position:relative;
  background:linear-gradient(180deg,#15151a 0%, #0f0f13 100%) !important;
  background-image:linear-gradient(180deg,#15151a 0%, #0f0f13 100%) !important;
  border:1px solid rgba(212,175,55,.35) !important;
  border-radius:22px !important;
  box-shadow:
    0 30px 80px rgba(0,0,0,.55),
    0 0 0 1px rgba(255,255,255,.03) inset,
    0 1px 0 rgba(255,255,255,.06) inset !important;
  max-width:560px !important;
  padding:44px 36px 36px !important;
  overflow:hidden;
}
.ws-ticket-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent, #d4af37 20%, #f6dc7c 50%, #d4af37 80%, transparent);
  opacity:.9;
}
.ws-ticket-card::after{
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:22px;
  background:radial-gradient(80% 50% at 50% 0%, rgba(212,175,55,.10), transparent 60%);
}
.ws-ticket-header{
  background:linear-gradient(180deg,#1a1a20 0%,#15151a 100%) !important;
  padding:0 0 24px !important;
  text-align:center;
  border-bottom:1px solid rgba(212,175,55,.18);
  margin-bottom:26px;
  position:relative;
}
.ws-ticket-header::before{display:none !important;}
.ws-ticket-label{
  display:inline-block !important;
  color:#d4af37 !important;
  font-family:"Outfit",sans-serif !important;
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:5px !important;
  text-transform:uppercase;
  padding:6px 14px;
  border:1px solid rgba(212,175,55,.4);
  border-radius:999px;
  margin-bottom:16px !important;
  background:rgba(212,175,55,.06);
}
body .elementor-949 .ws-ticket-title,
.ws-ticket-title{
  font-family:"Outfit",sans-serif !important;
  color:#fbf7ec !important;
  font-size:26px !important;
  font-weight:700 !important;
  letter-spacing:.005em;
  line-height:1.2 !important;
  margin:0 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.25);
}
.ws-ticket-body{
  padding:0 !important;
  background:transparent !important;
}
.ws-ticket-list{margin:0 0 30px !important;}
.ws-ticket-list li{
  font-family:"Outfit",sans-serif !important;
  font-size:16px !important;
  color:#e6dfd0 !important;
  padding:13px 0 !important;
  line-height:1.45 !important;
  border-bottom:1px solid rgba(255,255,255,.06) !important;
  gap:14px !important;
  align-items:center !important;
}
.ws-ticket-list li:last-child{border-bottom:none !important;}
.ws-ticket-list li::before{
  content:"✓" !important;
  color:#0b0b0f !important;
  background:linear-gradient(135deg,#f6dc7c 0%,#d4af37 100%) !important;
  width:22px;height:22px;min-width:22px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;
  font-size:12px !important;font-weight:900;
  box-shadow:0 2px 8px rgba(212,175,55,.35), inset 0 -1px 0 rgba(0,0,0,.2);
}
.ws-ticket-price-area{
  text-align:center;
  padding:26px 0 8px;
  margin:0 0 24px;
  border-top:1px dashed rgba(212,175,55,.25);
  border-bottom:1px dashed rgba(212,175,55,.25);
  position:relative;
}
.ws-ticket-price-label{
  display:block !important;
  font-family:"Outfit",sans-serif !important;
  color:#a89f8f !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:3px !important;
  text-transform:uppercase;
  margin-bottom:8px !important;
}
.ws-ticket-price{
  display:block !important;
  font-family:"Outfit",sans-serif !important;
  font-size:78px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:-.03em !important;
  background:linear-gradient(180deg,#fceaa4 0%,#e2ba4a 50%,#a67418 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
  text-shadow:none !important;
  margin:0 0 10px !important;
}
.ws-ticket-microcopy{
  font-family:"Outfit",sans-serif !important;
  font-size:13px !important;
  color:#8f8778 !important;
  margin-top:0 !important;
  display:block;
  letter-spacing:.02em;
}
.ws-ticket-cta{
  background:linear-gradient(180deg,#f6dc7c 0%,#d4af37 55%,#a67418 100%) !important;
  color:#161009 !important;
  font-family:"Outfit",sans-serif !important;
  font-size:17px !important;
  padding:20px 22px !important;
  border-radius:12px !important;
  font-weight:800 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  border:1px solid rgba(255,235,180,.4) !important;
  box-shadow:
    0 14px 34px rgba(212,175,55,.35),
    inset 0 -3px 0 rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.55) !important;
  position:relative;overflow:hidden;
  animation:lxPulse 2.4s ease-in-out infinite;
  margin-bottom:22px !important;
}
.ws-ticket-cta::before{
  content:"";position:absolute;top:0;left:-60%;width:55%;height:100%;
  background:linear-gradient(120deg,transparent 0%, rgba(255,255,255,.65) 50%, transparent 100%);
  transform:skewX(-22deg);
  animation:lxShine 3.2s ease-in-out infinite;
  pointer-events:none;
}
.ws-ticket-footer{
  display:flex !important;
  justify-content:center;
  gap:18px !important;
  flex-wrap:wrap;
  padding-top:6px;
}
.ws-ticket-footer span{
  font-family:"Outfit",sans-serif !important;
  font-size:12px !important;
  color:#8f8778 !important;
  letter-spacing:.03em;
}

@media (max-width:520px){
  .ws-ticket-card-wrapper{padding:44px 14px !important;}
  .ws-ticket-card{padding:34px 22px 28px !important;border-radius:18px !important;}
  .ws-ticket-title{font-size:22px !important;}
  .ws-ticket-list li{font-size:15px !important;padding:11px 0 !important;}
  .ws-ticket-price{font-size:64px !important;}
  .ws-ticket-cta{font-size:15px !important;padding:18px 18px !important;letter-spacing:.05em !important;}
  .ws-ticket-footer{gap:10px !important;}
  .ws-ticket-footer span{font-size:11px !important;}
}

/* ============ FOOTER — deep onyx ============ */
.elementor-949 [class*="footer"],
.elementor-949 .elementor-element:last-child{
  color:#a89f8f;
}
footer, .site-footer{
  background:#0e0e10 !important;
  color:#a89f8f !important;
  padding:32px 20px !important;
  text-align:center;
  font-size:14px;
}
footer a, .site-footer a{ color:var(--lx-gold-lt) !important; }

/* Section headings site-wide */
.elementor-949 h1, .elementor-949 h2, .elementor-949 h3,
.elementor-949 .elementor-heading-title{
  font-family:"Outfit", Georgia, serif !important;
  color:var(--lx-ink) !important;
  letter-spacing:-.015em !important;
}

/* Aula placeholder cards — dark luxe */
.ws-aula-img-placeholder{
  background:linear-gradient(135deg,#1a1a20,#2a2a30) !important;
  color:var(--lx-gold-lt) !important;
  border:1px solid var(--lx-border-gold) !important;
  border-radius:14px !important;
}

/* Any element still carrying the old blue text color */
.elementor-949 *[style*="#2C3C57"]{ color:var(--lx-ink) !important; }
.elementor-949 *[style*="#40577A"]{ color:var(--lx-taupe) !important; }
