:root{
  --bg:#1a1c2e;
  --fg:#fafaf7;
  --card:#252840;
  --card-2:#2d3050;
  --border:#3a3d5c;
  --muted:#a8aac4;
  --orange:#f08a3e;
  --orange-strong:#e5732a;
  --light-bg:#ffffff;
  --light-fg:#171717;
  --light-muted:#525252;
  --light-border:#e5e5e5;
  --soft-bg:#1f2236;
  --radius:16px;
}
*{box-sizing:border-box;margin:0;padding:0;border-color:var(--border)}
html,body{font-family:'Montserrat',system-ui,sans-serif;background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;line-height:1.5}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-weight:800;letter-spacing:-.01em;line-height:1.15}

/* layout */
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.container.narrow{max-width:760px}
.container.wide{max-width:1200px}
.section{padding:32px 0}
@media(min-width:768px){.section{padding:48px 0}}
.section-light{background:var(--light-bg);color:var(--light-fg)}
.section-light .muted{color:var(--light-muted)}
.section-light h1,.section-light h2,.section-light h3{color:var(--light-fg)}
.section-light.bordered{border-top:1px solid var(--light-border);border-bottom:1px solid var(--light-border)}
.section-soft{background:rgba(37,40,64,.4);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.section-card{background:var(--card)}
.section-card.bordered{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}

.center{text-align:center}
.mt{margin-top:20px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}
.mt5{margin-top:20px}.mt6{margin-top:24px}
.small{font-size:14px}.small-md{font-size:15px}.xsmall{font-size:12px}
.bold{font-weight:800}
.muted{color:var(--muted)}
.text-orange{color:var(--orange)}
.strike{text-decoration:line-through}
.narrow-p{max-width:640px;margin-left:auto;margin-right:auto}

/* topbar */
.topbar{background:var(--orange);color:#fff;text-align:center;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.06em;padding:10px 16px}

/* HERO */
.hero{padding-top:24px;padding-bottom:32px}
.h1{font-size:clamp(21.6px,4.05vw,43.2px);padding-top:5px}
.h2{font-size:clamp(17.6px,2.72vw,28.8px)}
.lead{margin-top:20px;font-size:17px}
.underline-orange{text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:4px;text-underline-offset:6px}
.hero-img-wrap{position:relative;margin-top:40px}
.hero-glow{position:absolute;inset:0;background:rgba(240,138,62,.1);filter:blur(60px);border-radius:9999px}
.hero-img{position:relative;margin:0 auto;max-width:640px;width:100%}
.cta-wrap{margin-top:40px;text-align:center}

/* checklist */
.checklist{list-style:none;max-width:560px;margin:40px auto 0;text-align:left;display:flex;flex-direction:column;gap:10px;font-size:15px}
.checklist.tight{margin-top:40px}
.checklist li{display:flex;gap:12px;align-items:flex-start}
.check{flex:0 0 auto;width:18px;height:18px;margin-top:3px;border-radius:4px;background:transparent;position:relative}
.check::before{content:"";position:absolute;left:1px;top:3px;width:14px;height:8px;border-left:3px solid var(--orange);border-bottom:3px solid var(--orange);transform:rotate(-45deg)}

/* CTA */
.cta{display:inline-flex;align-items:center;justify-content:center;background:var(--orange);color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border-radius:14px;padding:16px 26px;box-shadow:0 14px 30px -10px rgba(240,138,62,.6);transition:transform .15s}
.cta:hover{transform:scale(1.02)}
.cta-lg{padding:20px 32px;font-size:16px}
.cta.full{display:flex;width:100%}

/* video */
.video-wrap{margin:32px auto 0;max-width:340px;width:100%}

/* grid */
.grid{display:grid;gap:20px}
.g-3{grid-template-columns:1fr}
@media(min-width:640px){.g-3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.g-3{grid-template-columns:repeat(3,1fr)}}

/* cards */
.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:24px;height:100%}
.card h3{font-size:18px;margin-bottom:10px}
.card.light{background:#fff;border-color:var(--light-border)}
.card.light p{color:var(--light-muted)}

/* eyebrow */
.eyebrow{color:var(--orange);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}

/* bonus */
.bonus{background:var(--card);border:1px solid var(--border);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;height:100%}
.bonus-img{background:rgba(240,138,62,.15);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;padding:16px}
.bonus-img img{max-height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 14px 24px rgba(0,0,0,.4))}
.bonus-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.bonus-body h3{font-size:18px;line-height:1.3}
.bonus-body p{font-size:14px;color:var(--muted);flex:1}

/* plans */
.plans{display:grid;gap:32px;margin-top:28px;align-items:start}
@media(min-width:768px){.plans{grid-template-columns:1fr 1fr;gap:40px}}
.plan{background:var(--card);border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:0 20px 40px -20px rgba(0,0,0,.5)}
.plan-featured{border:2px solid var(--orange);position:relative}
.plan-badge{position:absolute;top:-16px;left:50%;transform:translateX(-50%);background:var(--orange);color:#fff;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:8px 16px;border-radius:9999px;white-space:nowrap}
.plan-img{margin:20px auto 0;max-height:220px;object-fit:contain}
.save-box{margin-top:24px;background:rgba(240,138,62,.15);border:1px solid var(--orange);border-radius:12px;padding:12px;text-align:center;font-weight:700;font-size:14px}
.price-value{font-size:44px;font-weight:800;color:var(--orange);margin-top:4px}

/* seal */
.seal{display:inline-flex;align-items:center;justify-content:center;width:96px;height:96px;border-radius:9999px;background:var(--orange);color:#fff;font-weight:800;font-size:24px}
.seal span{font-size:14px;margin-left:4px;font-weight:600}

/* steps */
.step-num{margin:0 auto;width:56px;height:56px;border-radius:9999px;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px}
.step h3{margin-top:18px;font-size:17px;text-transform:uppercase}
.step p{margin-top:8px;font-size:14px}

/* faq */
.faq{margin-top:40px}
.faq details{border-bottom:1px solid var(--border);padding:0}
.faq summary{cursor:pointer;list-style:none;padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;font-weight:700}
.faq summary::-webkit-details-marker{display:none}
.faq .plus{color:var(--orange);font-size:24px;font-weight:300;transition:transform .2s}
.faq details[open] .plus{transform:rotate(45deg)}
.faq details p{padding:0 0 20px;color:var(--muted);font-size:14px;line-height:1.7}

/* footer */
.footer{background:var(--card);border-top:1px solid var(--border);padding:20px}
.footer p{margin-top:14px}
.footer-links a{margin:0 8px}
.footer-links a:hover{color:var(--orange)}

/* grid modifications */
.g-4{display:grid;gap:20px;grid-template-columns:1fr}
.g-2{display:grid;gap:20px;grid-template-columns:1fr}
@media(min-width:640px){
  .g-4{grid-template-columns:repeat(2,1fr)}
  .g-2{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:1024px){
  .g-4{grid-template-columns:repeat(4,1fr)}
}

/* features */
.feature-item{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;transition:transform .2s,border-color .2s}
.feature-item:hover{transform:translateY(-2px);border-color:var(--orange)}
.feature-icon{font-size:32px}
.feature-item h3{font-size:16px;font-weight:700;line-height:1.3;color:var(--fg)}
.section-light .feature-item{background:#fff;border-color:var(--light-border)}
.section-light .feature-item h3{color:var(--light-fg)}

/* carousel */
.carousel-container{position:relative;max-width:480px;margin:24px auto 0;display:flex;align-items:center}
.carousel-wrapper{overflow:hidden;width:100%;border-radius:18px;box-shadow:0 10px 25px rgba(0,0,0,0.3);border:1px solid var(--border)}
.carousel-track{display:flex;transition:transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);width:100%}
.carousel-slide{flex:0 0 100%;width:100%;display:flex;justify-content:center;align-items:center;background:#000}
.carousel-slide img{width:100%;height:auto;display:block;object-fit:contain}
.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(240,138,62,0.85);color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s,transform 0.1s,opacity 0.2s;z-index:10;box-shadow:0 4px 10px rgba(0,0,0,0.2)}
.carousel-btn:hover{background:var(--orange-strong);transform:translateY(-50%) scale(1.05)}
.carousel-btn:active{transform:translateY(-50%) scale(0.95)}
.prev-btn{left:-20px}
.next-btn{right:-20px}
.carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:16px}
.carousel-dots .dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,0.25);cursor:pointer;transition:background 0.2s,transform 0.2s}
.carousel-dots .dot.active{background:var(--orange);transform:scale(1.2)}
@media(max-width:540px){
  .carousel-btn{width:36px;height:36px;font-size:20px}
  .prev-btn{left:-10px}
  .next-btn{right:-10px}
}

/* discount modal (popup) */
.modal-overlay{position:fixed;inset:0;background:rgba(10,11,18,0.85);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;z-index:9999;transition:opacity 0.3s ease,visibility 0.3s ease;padding:20px}
.modal-overlay.active{opacity:1;visibility:visible}
.modal-content{background:var(--card);border:2px solid var(--orange);border-radius:24px;max-width:520px;width:100%;padding:32px;position:relative;box-shadow:0 25px 50px -12px rgba(0,0,0,0.8);transform:scale(0.9);transition:transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);max-height:90vh;overflow-y:auto}
.modal-overlay.active .modal-content{transform:scale(1)}
.modal-close{position:absolute;top:16px;right:20px;background:none;border:none;color:var(--muted);font-size:32px;line-height:1;cursor:pointer;transition:color 0.2s}
.modal-close:hover{color:#fff}
.modal-header{text-align:center;margin-bottom:20px}
.modal-header h2{font-size:28px;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}
.modal-headline{font-size:18px;line-height:1.4}
.modal-body{text-align:center}
.modal-offer{font-size:16px;line-height:1.5;margin-bottom:20px;background:rgba(255,255,255,0.05);padding:14px;border-radius:12px;border-left:4px solid var(--orange)}
.modal-img-wrap{margin:20px auto;max-height:180px;display:flex;justify-content:center}
.modal-img{max-height:180px;object-fit:contain}
.modal-vagas{font-size:15px;color:#fff;margin-top:16px}
.modal-subtext{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.4}
.modal-footer{margin-top:28px;display:flex;flex-direction:column;gap:16px;align-items:center}
.modal-basic-link{font-size:14px;color:var(--muted);text-decoration:underline;cursor:pointer;transition:color 0.2s;font-weight:600}
.modal-basic-link:hover{color:#fff}

/* utility classes styling */
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.text-center{text-align:center}
.text-lg{font-size:18px}
.text-sm{font-size:14px}
.mb-4{margin-bottom:16px}
.mt4{margin-top:16px}

/* custom pricing colors */
.text-red{color:#ef233c !important}
.text-green{color:#10b981 !important}

/* plan button and title sizing */
.plan .cta{font-size:14px;padding:14px 22px}
.plan-title-lg{font-size:24px;font-weight:900;text-transform:uppercase;letter-spacing:0.05em;color:var(--orange);margin-bottom:12px;text-align:center}

/* red background highlight block */
.section-red{background:linear-gradient(135deg,#d90429 0%,#ef233c 100%);color:#fff;border-top:1px solid rgba(255,255,255,0.15);border-bottom:1px solid rgba(255,255,255,0.15);padding:20px 0}
.section-red .text-white{color:#fff !important}
.section-red .lead{font-size:15px;line-height:1.5;max-width:800px;margin:0 auto}

/* premium dark blue section */
.section-blue-premium{background:linear-gradient(180deg,#1b1d30 0%,#161826 100%);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}

