/*
  Etapa 10 — DESIGN.md Meta-inspired aplicado ao SaaS
  Inspirado em padrões públicos do getdesign.md/meta/design-md, adaptado para whitelabel de saúde.
  Não usa marcas/ativos Meta. As cores finais continuam respeitando as configurações da whitelabel.
*/
:root{
  --ds-primary:var(--blue, var(--admin-primary, #0064e0));
  --ds-primary-deep:var(--navy, #0457cb);
  --ds-primary-soft:color-mix(in srgb, var(--ds-primary) 12%, #ffffff);
  --ds-canvas:#ffffff;
  --ds-surface:#f1f4f7;
  --ds-ink:#0a1317;
  --ds-charcoal:#1c1e21;
  --ds-slate:#5d6c7b;
  --ds-steel:#8595a4;
  --ds-line:#dee3e9;
  --ds-line-strong:#ced0d4;
  --ds-success:#31a24c;
  --ds-warning:#f2a918;
  --ds-critical:#e41e3f;
  --ds-radius-sm:8px;
  --ds-radius-md:16px;
  --ds-radius-lg:24px;
  --ds-radius-xl:32px;
  --ds-radius-pill:9999px;
  --ds-shadow-soft:0 18px 60px rgba(10,19,23,.08);
  --ds-shadow-card:0 1px 4px rgba(20,22,26,.10),0 18px 45px rgba(10,19,23,.06);
  --ds-font:'Manrope','Inter','Montserrat','Helvetica Neue',Arial,sans-serif;
}

body,
button,
input,
select,
textarea{font-family:var(--ds-font)!important}
body{background:var(--ds-canvas);color:var(--ds-ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
a{transition:color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease}

/* Tipografia premium */
.section-title,
.hero h1,
.consultant-hero h1,
.checkout-hero h1,
.page-hero h1,
.login-copy h1,
.panel-title h1,
.panel-title h2,
.metric-card strong,
.plan-card h3{letter-spacing:-.045em;color:var(--ds-ink);font-weight:800;text-wrap:balance}
.section-text,
.hero p,
.consultant-hero p,
.consultant-section>p,
.page-hero p,
.panel-title p{color:var(--ds-slate);line-height:1.55}

/* Botões pill no padrão Design.md */
.btn,
.admin-btn,
.btn-admin,
.checkout-submit,
.consultant-form button,
.consultant-cta,
.preview-link,
.mini-link,
.reality-cta,
.step-card a,
.plan-card .btn,
.checkout-form summary,
.logout-form button{border-radius:var(--ds-radius-pill)!important;font-weight:800;letter-spacing:-.01em;text-transform:none!important}
.btn,
.admin-btn,
.btn-admin,
.checkout-submit,
.consultant-form button,
.consultant-cta{background:var(--ds-primary)!important;color:#fff!important;border:1px solid color-mix(in srgb,var(--ds-primary) 80%,#000)!important;box-shadow:0 14px 32px color-mix(in srgb,var(--ds-primary) 22%,transparent)!important}
.btn:hover,
.admin-btn:hover,
.btn-admin:hover,
.checkout-submit:hover,
.consultant-form button:hover,
.consultant-cta:hover{transform:translateY(-2px);background:var(--ds-primary-deep)!important;filter:none!important}
.btn.white,
.btn.outline,
.btn-admin.ghost,
.admin-btn.ghost,
.preview-link,
.mini-link{background:var(--ds-canvas)!important;color:var(--ds-ink)!important;border:1px solid color-mix(in srgb,var(--ds-ink) 14%,transparent)!important;box-shadow:none!important}
.btn.white:hover,
.btn.outline:hover,
.btn-admin.ghost:hover,
.admin-btn.ghost:hover,
.preview-link:hover,
.mini-link:hover{border-color:var(--ds-primary)!important;color:var(--ds-primary)!important;transform:translateY(-1px)}

/* Landing pública: superfícies brancas, cards full-bleed e cantos amplos */
.site-header{top:18px}.nav-pill{border-radius:var(--ds-radius-xl)!important;box-shadow:var(--ds-shadow-card);border:1px solid rgba(10,19,23,.06);background:rgba(255,255,255,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.main-nav{font-size:14px;font-weight:800;text-transform:none;gap:24px}.main-nav a{color:var(--ds-charcoal)}.main-nav a.active,.main-nav a:hover{text-decoration:none;color:var(--ds-primary)}
.agenda{border-radius:var(--ds-radius-pill)!important;background:#fff;border:1px solid var(--ds-line);box-shadow:var(--ds-shadow-card);text-transform:none;color:var(--ds-ink)}
.kicker,.consultant-badge,.white-label{border-radius:var(--ds-radius-pill)!important;background:var(--ds-primary-soft)!important;color:var(--ds-primary)!important;border:1px solid color-mix(in srgb,var(--ds-primary) 16%,transparent);font-weight:800;text-transform:none;letter-spacing:.01em}
.hero{background:linear-gradient(90deg,rgba(10,19,23,.92),rgba(10,19,23,.68)),var(--section-bg-image,linear-gradient(135deg,#0a1317,#0457cb))!important;border-bottom-left-radius:var(--ds-radius-xl);border-bottom-right-radius:var(--ds-radius-xl)}
.hero:before{background:linear-gradient(90deg,rgba(10,19,23,.86),rgba(10,19,23,.42),rgba(10,19,23,.24))}.hero h1{color:#fff!important}.hero p{color:rgba(255,255,255,.90)!important}.hero-line{background:rgba(255,255,255,.22)}
.reality,.telehealth,.specialties,.testimonials,.faq,.plans-intro{background:var(--ds-surface)!important}.plans-intro,.specialties,.testimonials,.faq{padding-top:80px;padding-bottom:80px}
.reality-card,.info-card,.plan-card,.step-card,.testimonial-card,.faq-card,.blog-card,.doctor-art,.video-card,.section-photo,.promo-popup-preview-card,.checkout-card,.consultant-card,.consultant-form-card,.consultant-kpi,.panel,.metric-card,.table-wrap{border-radius:var(--ds-radius-xl)!important;border:1px solid var(--ds-line)!important;box-shadow:var(--ds-shadow-card)!important;background:var(--ds-canvas)!important}
.info-card,.consultant-card,.metric-card,.panel,.checkout-card{padding:32px!important}.plan-card{border-top:0!important;padding:36px 34px 86px!important}.plan-card:before{content:"";position:absolute;left:34px;right:34px;top:0;height:4px;border-radius:999px;background:var(--ds-primary)}.plan-icon,.step,.consultant-card i{border-radius:50%!important;background:var(--ds-primary-soft)!important;color:var(--ds-primary)!important;border:1px solid color-mix(in srgb,var(--ds-primary) 16%,transparent)!important}
.prices strong,.percent span,.plan-card h3{color:var(--ds-ink)!important}.step{color:var(--ds-primary)!important}.plans-row:after{border-bottom-color:var(--ds-line-strong)}
.section-photo,.hero-custom-img,.doctor-art img{border-radius:var(--ds-radius-xl)!important}.browser{border-radius:var(--ds-radius-lg) var(--ds-radius-lg) 0 0;background:var(--ds-ink)}

/* Formulários no padrão input 44px+, borda hairline e foco azul */
input,
select,
textarea,
.checkout-grid input,
.checkout-grid select,
.checkout-grid textarea,
.consultant-form input,
.consultant-form textarea,
.settings-form input,
.settings-form select,
.settings-form textarea,
.filters-form input,
.filters-form select,
.filters-form textarea{border-radius:var(--ds-radius-md)!important;border:1px solid var(--ds-line-strong)!important;background:#fff!important;color:var(--ds-ink)!important;min-height:44px;box-shadow:none!important;outline:none!important}
input:focus,
select:focus,
textarea:focus,
.checkout-grid input:focus,
.checkout-grid select:focus,
.checkout-grid textarea:focus,
.consultant-form input:focus,
.consultant-form textarea:focus,
.settings-form input:focus,
.settings-form select:focus,
.settings-form textarea:focus{border-color:var(--ds-primary)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--ds-primary) 14%,transparent)!important}
label{color:var(--ds-charcoal)}

/* Página de consultores */
body.consultant-page{background:radial-gradient(circle at 8% 0,color-mix(in srgb,var(--ds-primary) 14%,transparent),transparent 34%),linear-gradient(180deg,#fff 0,var(--ds-surface) 60%,#fff 100%)!important}.consultant-header{background:rgba(255,255,255,.86)!important;backdrop-filter:blur(18px);border-bottom:1px solid var(--ds-line)}.consultant-nav{min-height:84px}.consultant-hero{gap:48px}.consultant-hero h1{color:var(--ds-ink)!important}.consultant-grid{gap:20px}.consultant-section{padding:72px 0}.consultant-section h2{color:var(--ds-ink)!important}.consultant-plan{border-radius:var(--ds-radius-xl)!important}.consultant-final{border-radius:var(--ds-radius-xl)!important;background:linear-gradient(135deg,var(--ds-ink),var(--ds-primary-deep))!important}.consultant-footer{background:var(--ds-ink)!important;color:#fff!important}

/* Checkout */
.checkout-page{background:var(--ds-surface)!important}.checkout-page .nav-pill{border-radius:var(--ds-radius-xl)!important}.checkout-hero{border-radius:var(--ds-radius-xl)!important;background:linear-gradient(135deg,var(--ds-ink),var(--ds-primary-deep))!important;box-shadow:var(--ds-shadow-soft)}.checkout-hero h1{color:#fff!important}.checkout-layout{gap:24px}.checkout-payment-option,.checkout-variant-option,.checkout-plan-methods,.checkout-affiliate,.checkout-alert{border-radius:var(--ds-radius-lg)!important}.checkout-payment-option.active,.checkout-variant-option.active{border-color:var(--ds-primary)!important;box-shadow:0 10px 25px color-mix(in srgb,var(--ds-primary) 14%,transparent)!important}.checkout-variant-option em,.checkout-summary-row strong,.checkout-card h2,.checkout-card h3{color:var(--ds-ink)!important}.checkout-summary-row.total{color:var(--ds-ink)!important}.checkout-alert{background:#fff8e7!important;color:#7b5000!important;border-color:#f2cf88!important}

/* Admin e portal afiliado: superfícies binárias, sidebar escura e cartões limpos */
body.admin-shell{background:var(--ds-surface)!important;color:var(--ds-ink)!important}.sidebar{background:var(--ds-ink)!important;color:#fff!important;border-right:0!important;box-shadow:none!important}.admin-brand{background:transparent!important;border-bottom:1px solid rgba(255,255,255,.10)!important}.admin-nav a{border-radius:var(--ds-radius-pill)!important;color:rgba(255,255,255,.72)!important;font-weight:800}.admin-nav a span{color:inherit}.admin-nav a:hover,.admin-nav a.active{background:#fff!important;color:var(--ds-ink)!important;box-shadow:none!important}.logout-form button{background:rgba(255,255,255,.08)!important;color:#fff!important;border:1px solid rgba(255,255,255,.14)!important}.logout-form button:hover{background:#fff!important;color:var(--ds-ink)!important}.admin-main{background:var(--ds-surface)!important}.admin-topbar{border-radius:var(--ds-radius-xl)!important;background:rgba(255,255,255,.88)!important;backdrop-filter:blur(16px);border:1px solid var(--ds-line)!important;box-shadow:var(--ds-shadow-card)!important}.admin-topbar small{color:var(--ds-steel)!important}.admin-topbar strong{color:var(--ds-ink)!important}
.page-hero,.quality-hero,.page-hero.affiliate-hero{border-radius:var(--ds-radius-xl)!important;background:linear-gradient(135deg,var(--ds-ink),var(--ds-primary-deep))!important;color:#fff!important;box-shadow:var(--ds-shadow-soft)!important;border:1px solid rgba(255,255,255,.12)!important}.page-hero h1,.page-hero p,.page-hero span,.quality-hero h1,.quality-hero p,.quality-hero span{color:#fff!important}.cards-grid,.metric-grid,.quality-metrics{gap:20px}.metric-card{border-top:0!important}.metric-card span{color:var(--ds-slate)!important;font-weight:800}.metric-card strong{color:var(--ds-ink)!important}.panel{border-radius:var(--ds-radius-xl)!important}.panel-title{border-bottom:1px solid var(--ds-line)!important}.admin-table th{background:var(--ds-surface)!important;color:var(--ds-slate)!important}.admin-table td{border-color:var(--ds-line)!important}.pill,.status-requested,.status-reviewing,.status-approved,.status-applied,.status-rejected,.status-canceled,.affiliate-status{border-radius:var(--ds-radius-pill)!important;font-weight:800}.alert{border-radius:var(--ds-radius-lg)!important;border:1px solid transparent!important}.alert.success{background:#eaf8ef!important;color:#0f7b43!important;border-color:#bfe8cf!important}.alert.error{background:#fff0f0!important;color:#a22121!important;border-color:#f0b9b9!important}

/* Login */
.login-page{background:var(--ds-canvas)!important}.login-visual{background:linear-gradient(135deg,var(--ds-ink),var(--ds-primary-deep))!important}.login-card{border-radius:var(--ds-radius-xl)!important;background:#fff!important;border:1px solid var(--ds-line)!important;box-shadow:var(--ds-shadow-soft)!important}.login-kicker{border-radius:var(--ds-radius-pill)!important;background:var(--ds-primary-soft)!important;color:var(--ds-primary)!important}.login-card h2{color:var(--ds-ink)!important}.login-copy h1,.login-copy p,.login-copy span{color:#fff!important}.orb{filter:blur(4px);opacity:.46!important}

/* Acessibilidade e mobile */
:focus-visible{outline:3px solid color-mix(in srgb,var(--ds-primary) 42%,transparent);outline-offset:3px;border-radius:8px}
@media(max-width:960px){.container{width:min(100% - 28px,var(--max))}.nav-pill{width:calc(100% - 28px)!important;border-radius:var(--ds-radius-lg)!important}.hero{min-height:auto;padding-top:126px}.hero-copy{margin-top:40px}.consultant-hero{grid-template-columns:1fr}.consultant-kpis,.consultant-grid,.plans-row{grid-template-columns:1fr}.plans-row:after{display:none}.sidebar{border-radius:0!important}.admin-topbar{border-radius:var(--ds-radius-lg)!important}.info-card,.consultant-card,.metric-card,.panel,.checkout-card{padding:24px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Etapa 11 - ajustes landing/admin solicitados em 06/07
   Seção Saúde: imagem inteira, alinhada ao rodapé do card, sem corte superior. */
.reality.dynamic-section{
  padding-top:20px!important;
  background:#dfe8f4!important;
}
.reality.dynamic-section .container.reality-card{
  align-items:stretch!important;
  overflow:hidden!important;
}
.reality.dynamic-section .doctor-art{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
  min-height:734px!important;
  height:734px!important;
  padding:0!important;
  overflow:hidden!important;
  background:#edf4fc!important;
  border-radius:0 0 var(--ds-radius-xl) 0!important;
}
.reality.dynamic-section .doctor-art img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  margin:auto 0 0 auto!important;
  border-radius:0!important;
}
@media(max-width:1240px){
  .reality.dynamic-section .doctor-art{min-height:640px!important;height:640px!important;}
  .reality.dynamic-section .doctor-art img{width:100%!important;height:100%!important;object-position:right bottom!important;}
}
@media(max-width:980px){
  .reality.dynamic-section .doctor-art{height:auto!important;min-height:360px!important;align-items:flex-end!important;justify-content:center!important;}
  .reality.dynamic-section .doctor-art img{width:min(420px,100%)!important;height:auto!important;max-height:none!important;object-position:center bottom!important;margin:0 auto!important;}
}

/* CTA do bloco distribuidor/trabalhe conosco: fundo branco e texto no azul escuro do bloco. */
.distributor-section .btn.white.distributor-cta,
.distributor-section .btn.white.distributor-cta:visited{
  background:#fff!important;
  color:#20215e!important;
  border:1px solid rgba(255,255,255,.96)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.18)!important;
}
.distributor-section .btn.white.distributor-cta:hover{
  background:#f6f8ff!important;
  color:#20215e!important;
  border-color:#fff!important;
  transform:translateY(-2px)!important;
}

/* Admin: ativar/inativar seções com ação explícita. */
.section-status-toolbar{
  margin:0 0 22px!important;
  padding:16px 18px!important;
  border:1px solid var(--ds-line)!important;
  border-radius:var(--ds-radius-lg)!important;
  background:var(--ds-surface)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.section-status-toolbar strong{display:block!important;color:var(--ds-ink)!important;font-size:15px!important;}
.section-status-toolbar span{display:block!important;color:var(--ds-steel)!important;font-size:13px!important;margin-top:3px!important;}
.section-status-toolbar.is-inactive{background:#fff8e8!important;border-color:#f1d39a!important;}
.btn-admin.danger{background:#fff0f0!important;color:#a22121!important;border-color:#efb7b7!important;box-shadow:none!important;}
.btn-admin.success{background:#eaf8ef!important;color:#0f7b43!important;border-color:#bfe8cf!important;box-shadow:none!important;}

/* Admin de planos: criação, edição e exclusão segura. */
.plans-admin-grid{align-items:start!important;}
.plan-admin-card{display:flex!important;flex-direction:column!important;gap:14px!important;}
.plan-admin-form{display:grid!important;gap:16px!important;}
.compact-title{margin-bottom:8px!important;padding-bottom:16px!important;}
.compact-title h2{margin:10px 0 4px!important;color:var(--ds-ink)!important;font-size:20px!important;letter-spacing:-.02em!important;}
.split-actions{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important;margin-top:4px!important;}
.plan-delete-form{border-top:1px solid var(--ds-line)!important;padding-top:14px!important;margin-top:4px!important;}
.delete-button{width:100%!important;border:1px solid #efb7b7!important;background:#fff0f0!important;color:#a22121!important;border-radius:var(--ds-radius-pill)!important;font-weight:900!important;min-height:44px!important;cursor:pointer!important;}
.delete-button:hover{background:#ffe4e4!important;transform:translateY(-1px)!important;}


/* Patch 036 - Hero premium limpo: remove layers duplicadas e recortes visuais
   O hero agora usa a imagem cadastrada apenas como uma camada única de fundo,
   com overlay contínuo. O background-image dinâmico da seção deixa de ser
   renderizado atrás da mesma imagem, eliminando o efeito de painéis/layers cortando. */
.hero.dynamic-section,
.hero{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  min-height:clamp(620px, 74vh, 760px)!important;
  padding-top:158px!important;
  padding-bottom:0!important;
  background:
    radial-gradient(circle at 18% 24%, rgba(94,109,255,.30) 0%, rgba(94,109,255,.10) 28%, rgba(94,109,255,0) 52%),
    linear-gradient(135deg,#11154c 0%,#222572 48%,#121640 100%)!important;
  background-image:
    radial-gradient(circle at 18% 24%, rgba(94,109,255,.30) 0%, rgba(94,109,255,.10) 28%, rgba(94,109,255,0) 52%),
    linear-gradient(135deg,#11154c 0%,#222572 48%,#121640 100%)!important;
  background-size:cover!important;
  background-position:center!important;
  border-bottom-left-radius:32px!important;
  border-bottom-right-radius:32px!important;
}
.hero.dynamic-section::before,
.hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:
    linear-gradient(90deg, rgba(13,16,56,.97) 0%, rgba(22,25,82,.94) 34%, rgba(28,31,96,.72) 54%, rgba(16,19,58,.32) 76%, rgba(10,12,35,.58) 100%),
    linear-gradient(180deg, rgba(8,10,31,.10) 0%, rgba(8,10,31,.22) 50%, rgba(8,10,31,.46) 100%)!important;
  pointer-events:none!important;
}
.hero.dynamic-section::after,
.hero::after{
  content:""!important;
  position:absolute!important;
  inset:auto 0 0 0!important;
  height:34%!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    radial-gradient(70% 120% at 84% 100%, rgba(255,255,255,.18) 0%, rgba(255,255,255,.08) 34%, rgba(255,255,255,0) 66%),
    linear-gradient(180deg, rgba(18,22,68,0) 0%, rgba(18,22,68,.22) 100%)!important;
  filter:none!important;
  border-radius:0!important;
}
.hero .hero-custom-img,
.hero-custom-img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center right!important;
  opacity:.86!important;
  z-index:0!important;
  border-radius:0!important;
  transform:none!important;
  filter:saturate(1.04) contrast(1.03)!important;
  pointer-events:none!important;
}
.hero .container{
  position:relative!important;
  z-index:3!important;
}
.hero-copy{
  max-width:650px!important;
  margin-top:88px!important;
  padding-bottom:82px!important;
}
.hero h1{
  max-width:660px!important;
  text-shadow:0 12px 34px rgba(3,6,28,.24)!important;
}
.hero p{
  max-width:560px!important;
  text-shadow:0 8px 24px rgba(3,6,28,.18)!important;
}
.hero-line{
  width:min(610px,100%)!important;
  background:linear-gradient(90deg, rgba(255,255,255,.45) 0%, rgba(255,255,255,.16) 72%, rgba(255,255,255,0) 100%)!important;
}
.hero .btn.white{
  background:#fff!important;
  color:#101449!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 18px 42px rgba(4,7,30,.26)!important;
}
.hero .btn.white:hover{
  color:#101449!important;
  transform:translateY(-2px)!important;
  box-shadow:0 22px 54px rgba(4,7,30,.34)!important;
}
@media(min-width:1500px){
  .hero.dynamic-section,.hero{min-height:clamp(660px, 76vh, 820px)!important;}
  .hero-copy{margin-top:108px!important;}
}
@media(max-width:1180px){
  .hero.dynamic-section,.hero{
    min-height:620px!important;
    padding-top:126px!important;
    background:
      radial-gradient(circle at 20% 20%, rgba(94,109,255,.24) 0%, rgba(94,109,255,0) 48%),
      linear-gradient(135deg,#11154c 0%,#222572 52%,#121640 100%)!important;
  }
  .hero.dynamic-section::before,.hero::before{
    background:
      linear-gradient(90deg, rgba(13,16,56,.97) 0%, rgba(22,25,82,.90) 46%, rgba(16,19,58,.50) 100%),
      linear-gradient(180deg, rgba(8,10,31,.12) 0%, rgba(8,10,31,.40) 100%)!important;
  }
  .hero .hero-custom-img,.hero-custom-img{
    object-position:center right!important;
    opacity:.72!important;
  }
  .hero-copy{
    margin-top:96px!important;
    max-width:570px!important;
  }
}
@media(max-width:860px){
  .hero.dynamic-section,.hero{
    min-height:660px!important;
    padding-top:108px!important;
    border-bottom-left-radius:24px!important;
    border-bottom-right-radius:24px!important;
  }
  .hero.dynamic-section::before,.hero::before{
    background:
      linear-gradient(180deg, rgba(13,16,56,.94) 0%, rgba(22,25,82,.86) 48%, rgba(13,16,56,.72) 100%),
      linear-gradient(90deg, rgba(13,16,56,.74) 0%, rgba(13,16,56,.42) 100%)!important;
  }
  .hero .hero-custom-img,.hero-custom-img{
    object-position:72% bottom!important;
    opacity:.38!important;
  }
  .hero-copy{
    margin-top:78px!important;
    max-width:100%!important;
    padding-bottom:58px!important;
  }
}
@media(max-width:560px){
  .hero.dynamic-section,.hero{
    min-height:640px!important;
    padding-top:96px!important;
  }
  .hero h1{font-size:clamp(36px, 11vw, 46px)!important;}
  .hero p{font-size:18px!important;}
  .hero .hero-custom-img,.hero-custom-img{
    object-position:76% bottom!important;
    opacity:.30!important;
  }
}


/* Patch 037 guard - mantém a imagem do hero sem corte após o design system */
.hero .hero-custom-img,
.hero-custom-img{
  inset:auto clamp(18px, 5vw, 118px) 0 auto!important;
  width:min(48vw, 700px)!important;
  height:auto!important;
  max-width:min(48vw, 700px)!important;
  max-height:calc(100% - 164px)!important;
  object-fit:contain!important;
  object-position:right bottom!important;
  opacity:.98!important;
  border-radius:0!important;
}
.hero.dynamic-section,
.hero{
  background:
    radial-gradient(circle at 18% 26%, rgba(94,109,255,.28) 0%, rgba(94,109,255,.08) 30%, rgba(94,109,255,0) 54%),
    linear-gradient(135deg,#11154c 0%,#222572 48%,#121640 100%)!important;
}
@media(max-width:1180px){
  .hero .hero-custom-img,
  .hero-custom-img{
    right:18px!important;
    width:min(50vw, 560px)!important;
    max-width:min(50vw, 560px)!important;
    max-height:calc(100% - 134px)!important;
    opacity:.84!important;
  }
}
@media(max-width:860px){
  .hero .hero-custom-img,
  .hero-custom-img{
    right:50%!important;
    bottom:0!important;
    width:min(92vw, 560px)!important;
    max-width:min(92vw, 560px)!important;
    max-height:40%!important;
    height:auto!important;
    transform:translateX(50%)!important;
    object-position:center bottom!important;
    opacity:.30!important;
    filter:none!important;
  }
  .hero-copy{
    padding-bottom:230px!important;
  }
}
@media(max-width:560px){
  .hero .hero-custom-img,
  .hero-custom-img{
    width:min(96vw, 440px)!important;
    max-width:min(96vw, 440px)!important;
    max-height:36%!important;
    opacity:.26!important;
  }
  .hero-copy{
    padding-bottom:208px!important;
  }
}

/* Patch 038 - Hero com imagem de fundo dinâmica do admin
   Mantém prioridade após o Design System, garantindo que bg_image_path apareça. */
.hero.dynamic-section,
.hero{
  background-color:#11154c!important;
  background-image:
    radial-gradient(circle at 18% 26%, rgba(94,109,255,.28) 0%, rgba(94,109,255,.08) 30%, rgba(94,109,255,0) 54%),
    linear-gradient(90deg, rgba(11,15,58,.96) 0%, rgba(22,26,92,.88) 38%, rgba(18,22,70,.52) 66%, rgba(9,12,38,.72) 100%),
    var(--section-bg-image, linear-gradient(135deg,#11154c 0%,#222572 48%,#121640 100%))!important;
  background-size:900px 620px,100% 100%,cover!important;
  background-position:left center,center center,center center!important;
  background-repeat:no-repeat,no-repeat,no-repeat!important;
}
.hero.dynamic-section::before,
.hero::before{
  background:
    linear-gradient(90deg, rgba(13,16,56,.90) 0%, rgba(22,25,82,.76) 42%, rgba(16,19,58,.34) 70%, rgba(10,12,35,.54) 100%),
    linear-gradient(180deg, rgba(8,10,31,.04) 0%, rgba(8,10,31,.26) 100%)!important;
}
.hero .hero-custom-img,
.hero-custom-img{
  z-index:2!important;
}
.hero .container,
.hero .hero-copy{
  z-index:4!important;
}
@media(max-width:1180px){
  .hero.dynamic-section,
  .hero{
    background-image:
      radial-gradient(circle at 20% 22%, rgba(94,109,255,.22) 0%, rgba(94,109,255,0) 48%),
      linear-gradient(90deg, rgba(11,15,58,.96) 0%, rgba(22,26,92,.84) 50%, rgba(9,12,38,.68) 100%),
      var(--section-bg-image, linear-gradient(135deg,#11154c 0%,#222572 52%,#121640 100%))!important;
    background-size:720px 520px,100% 100%,cover!important;
    background-position:left center,center center,center center!important;
  }
}
@media(max-width:860px){
  .hero.dynamic-section,
  .hero{
    background-image:
      radial-gradient(circle at 50% 18%, rgba(94,109,255,.20) 0%, rgba(94,109,255,0) 44%),
      linear-gradient(180deg, rgba(11,15,58,.94) 0%, rgba(22,26,92,.84) 54%, rgba(9,12,38,.78) 100%),
      var(--section-bg-image, linear-gradient(135deg,#11154c 0%,#222572 52%,#121640 100%))!important;
    background-size:620px 420px,100% 100%,cover!important;
    background-position:center top,center center,center center!important;
  }
  .hero.dynamic-section::before,
  .hero::before{
    background:
      linear-gradient(180deg, rgba(13,16,56,.88) 0%, rgba(22,25,82,.72) 48%, rgba(13,16,56,.68) 100%),
      linear-gradient(90deg, rgba(13,16,56,.70) 0%, rgba(13,16,56,.36) 100%)!important;
  }
}

/* HOTFIX 059 — a grade de planos respeita a largura útil do admin. */
.plans-admin-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,680px),1fr))!important;gap:24px!important;min-width:0!important;width:100%!important}
.plan-admin-card{min-width:0!important;width:100%!important;max-width:100%!important}
@media(min-width:1760px){.plans-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:980px){.plans-admin-grid{grid-template-columns:1fr!important}}
