/* Excelsior Group — Subscrições */
.scene--subs{height:auto;min-height:max(560px,70svh);background:var(--scene);display:flex;align-items:center}
.scene--subs .scene__glow{opacity:.9;background:radial-gradient(ellipse 60% 70% at 80% 30%,rgba(53,106,122,.45) 0,rgba(53,106,122,0) 60%),radial-gradient(ellipse 50% 60% at 15% 90%,rgba(227,57,46,.18) 0,rgba(227,57,46,0) 55%)}
.scene--subs .scene__inner{padding:160px var(--pad-x) 96px;width:100%}
.subs-hero__note{margin:28px 0 0;font-family:'Russo One',sans-serif;font-size:clamp(16px,1.6vw,22px);letter-spacing:.5px;color:var(--snow)}
.sec-kicker{font-weight:500;letter-spacing:1.2px;color:#3c6674}
.sec-kicker::before{content:"/";margin-right:12px;opacity:.5}

/* Escalões */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;align-items:stretch}
.tier{position:relative;display:flex;flex-direction:column;background:var(--snow);border:1px solid var(--rule);padding:36px 32px 32px}
.tier--featured{border-color:var(--navy);box-shadow:0 20px 60px rgba(0,33,51,.12)}
.tier__tag{position:absolute;top:-1px;right:24px;margin:0;padding:8px 12px;background:var(--navy);color:var(--snow);font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase}
.tier__mode{margin:0;font-size:10px;font-weight:700;letter-spacing:2.7px;text-transform:uppercase;color:var(--teal)}
.tier__name{margin:10px 0 0;font-family:'Jura',sans-serif;font-weight:500;font-size:22px;color:var(--navy)}
.tier__name b{font-family:'Russo One',sans-serif;font-weight:400}
.tier__price{display:flex;align-items:baseline;gap:8px;margin:22px 0 0;color:var(--navy)}
.tier__amount{font-family:'Russo One',sans-serif;font-size:clamp(34px,3vw,44px);line-height:1}
.tier__unit{font-size:14px;font-weight:600;color:var(--body)}
.tier__vat{margin:8px 0 0;font-size:12.5px;color:var(--body)}
.tier__summary{margin:22px 0 0;padding-top:22px;border-top:1px solid var(--rule);font-size:15px;line-height:1.6;color:var(--navy);font-weight:600}
.tier__list{margin:16px 0 0;padding:0;list-style:none;flex:1}
.tier__list li{position:relative;padding:7px 0 7px 22px;font-size:14.5px;line-height:1.5;color:var(--body)}
.tier__list li::before{content:"";position:absolute;left:0;top:14px;width:10px;height:1.5px;background:var(--needle)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 22px;font-size:11px;line-height:14px;font-weight:700;letter-spacing:1.87px;text-transform:uppercase;border:1px solid var(--navy);color:var(--navy);transition:background .25s,color .25s}
.btn:hover{background:var(--navy);color:var(--snow)}
.btn--primary{background:var(--navy);color:var(--snow)}
.btn--primary:hover{background:var(--needle);border-color:var(--needle)}
.btn--tier{margin-top:28px}
.tier--featured .btn--tier{background:var(--navy);color:var(--snow)}
.tier--featured .btn--tier:hover{background:var(--needle);border-color:var(--needle)}

/* Tabela comparativa */
.cmp-wrap{margin-top:40px;overflow-x:auto}
.cmp{width:100%;border-collapse:collapse;font-size:15px}
.cmp th,.cmp td{padding:16px 14px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:middle}
.cmp th{font-size:10px;font-weight:700;letter-spacing:2.2px;text-transform:uppercase;color:var(--teal)}
.cmp th:not(:first-child),.cmp td:not(:first-child){text-align:center;width:18%}
.cmp td:first-child{color:var(--navy);font-weight:600}
.cmp td{color:var(--body)}
.cmp td.is-yes{color:var(--navy);font-weight:700;font-size:18px}
.cmp td.is-no{color:var(--steel)}
.cmp tbody tr:nth-child(odd) td{background:rgba(238,241,243,.55)}

/* Ofertas */
.offers{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}
.offer{border:1px solid rgba(255,255,255,.18);padding:36px 32px}
.offer__logo{display:inline-block}
.offer__logo img{height:30px;width:auto}
.offer--chillauto .offer__logo img{height:38px}
.offer__title{margin:28px 0 0;font-family:'Russo One',sans-serif;font-weight:400;font-size:22px;color:var(--snow)}
.offer__text{margin:12px 0 0;font-size:17px;line-height:1.6;color:#dfe6ea}
.offer .text-link{margin-top:22px}

/* Benefícios em detalhe */
.benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 48px;margin-top:48px}
.benefit{border-top:1px solid var(--rule);padding-top:22px}
.benefit__tier{margin:0;font-size:10px;font-weight:700;letter-spacing:2.2px;text-transform:uppercase;color:var(--teal)}
.benefit h3{margin:8px 0 0;font-family:'Jura',sans-serif;font-weight:700;font-size:18px;color:var(--navy)}
.benefit p:last-child{margin:10px 0 0;font-size:15.5px;line-height:1.7;color:var(--body)}
.rules h3{font-size:17px}

/* Formulário */
.form-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start}
.form-alt{margin-top:20px}
.form-alt a{color:var(--navy);font-weight:700;border-bottom:1px solid currentColor}
.subs-form{display:grid;gap:18px}
.subs-form label{display:grid;gap:6px;font-size:12px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--teal)}
.subs-form input,.subs-form select,.subs-form textarea{width:100%;font:inherit;font-size:16px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--navy);background:var(--snow);border:1px solid var(--rule);padding:13px 14px;border-radius:0}
.subs-form input:focus,.subs-form select:focus,.subs-form textarea:focus{outline:2px solid var(--navy);outline-offset:0;border-color:var(--navy)}
.subs-form .f2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.subs-form .check{grid-template-columns:auto 1fr;align-items:start;gap:12px;font-weight:500;letter-spacing:0;text-transform:none;font-size:14.5px;line-height:1.5;color:var(--body)}
.subs-form .check input{width:18px;height:18px;margin-top:2px;accent-color:var(--navy)}
.subs-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.subs-form .btn{justify-self:start;margin-top:4px}
.form-msg{margin:0;font-size:15px;color:var(--navy);min-height:1em}
.form-msg.is-err{color:var(--needle)}
.subs-form.is-sending{opacity:.6;pointer-events:none}

@media (max-width:1100px){
  .tiers{gap:16px}
  .tier{padding:28px 22px 24px}
  .benefits{gap:24px 32px}
  .form-grid{gap:40px}
}
@media (max-width:860px){
  .tiers{grid-template-columns:1fr;max-width:520px}
  .offers{grid-template-columns:1fr}
  .benefits{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr;gap:32px}
}
@media (max-width:600px){
  .scene--subs .scene__inner{padding:120px var(--pad-x) 64px}
  .cmp{font-size:13.5px}
  .cmp th,.cmp td{padding:12px 8px}
  .cmp td:first-child{min-width:150px}
  .subs-form .f2{grid-template-columns:1fr}
  .subs-form .btn{width:100%}
}
@media (max-width:600px){
  .cmp{font-size:12.5px}
  .cmp th,.cmp td{padding:10px 6px}
  .cmp td:first-child{min-width:118px;font-size:12.5px}
  .cmp th:not(:first-child),.cmp td:not(:first-child){width:auto;min-width:64px}
  .cmp td.is-yes{font-size:15px}
}

.subs-hero__row{display:flex;align-items:center;gap:22px;margin-top:34px;flex-wrap:wrap}
.subs-hero__row .subs-hero__note{margin:0;font-family:'Jura',sans-serif;font-weight:600;font-size:14px;letter-spacing:.5px;color:#dfe6ea}
.btn--light{background:var(--snow);color:var(--navy);border-color:var(--snow)}
.btn--light:hover{background:var(--needle);border-color:var(--needle);color:var(--snow)}
.scene--account{min-height:max(480px,60svh)}

/* Login */
.auth{background:var(--scene);color:var(--snow);min-height:100svh;display:flex;align-items:center;padding:150px var(--pad-x) 80px;position:relative;isolation:isolate}
.auth::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 60% 70% at 80% 30%,rgba(53,106,122,.45) 0,rgba(53,106,122,0) 60%),radial-gradient(ellipse 50% 60% at 15% 90%,rgba(227,57,46,.18) 0,rgba(227,57,46,0) 55%)}
.auth__wrap{width:min(1100px,100%);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:64px;align-items:center}
.auth__side .lede{margin-top:22px}
.auth__side-title{margin:40px 0 10px;font-size:10px;font-weight:700;letter-spacing:2.7px;text-transform:uppercase;color:#9ab5bd}
.auth__list{margin:0;padding:0;list-style:none}
.auth__list li{position:relative;padding:8px 0 8px 22px;font-size:15.5px;color:#dfe6ea;border-top:1px solid rgba(255,255,255,.12)}
.auth__list li::before{content:"";position:absolute;left:0;top:17px;width:10px;height:1.5px;background:var(--needle)}
.auth__card{background:var(--snow);color:var(--navy);padding:36px 32px}
.auth__h2{margin:0 0 18px;font-family:'Russo One',sans-serif;font-weight:400;font-size:22px}
.auth__text{margin:0 0 18px;font-size:15px;line-height:1.6;color:var(--body)}
.btn--oauth{width:100%;gap:12px;background:var(--snow);color:var(--navy);border-color:var(--rule);text-transform:none;letter-spacing:0;font-size:14.5px;font-weight:600;padding:14px 18px;margin-bottom:10px}
.btn--oauth:hover{background:var(--mist);color:var(--navy);border-color:var(--navy)}
.btn--full{width:100%}
.auth__or{display:flex;align-items:center;gap:14px;margin:18px 0;font-size:12px;color:var(--body)}
.auth__or::before,.auth__or::after{content:"";flex:1;height:1px;background:var(--rule)}
.auth__form{display:grid;gap:14px}
.auth__form label{display:grid;gap:6px;font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--teal)}
.auth__form input{width:100%;font:inherit;font-size:16px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--navy);background:var(--snow);border:1px solid var(--rule);padding:13px 14px;border-radius:0}
.auth__form input:focus{outline:2px solid var(--navy);outline-offset:0;border-color:var(--navy)}
.auth__form input[aria-invalid="true"]{border-color:var(--needle)}
.auth__msg{margin:0;font-size:14px;color:var(--teal);min-height:1em}
.auth__msg.is-err{color:var(--needle)}
.auth__terms{margin:0;font-size:12.5px;line-height:1.5;color:var(--body)}
.auth__links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:20px 0 0;font-size:13.5px;color:var(--body)}
.auth__links a{color:var(--navy);font-weight:700;border-bottom:1px solid currentColor}
@media (max-width:900px){.auth{padding-top:120px}.auth__wrap{grid-template-columns:1fr;gap:36px}.auth__side-title,.auth__list{display:none}.auth__card{padding:28px 20px}}

/* Painel */
.panel-page .site-header{position:relative;background:var(--scene)}
.panel{background:var(--mist);padding:40px var(--pad-x) 80px;min-height:70svh}
.panel__wrap{width:min(1200px,100%);margin-inline:auto;display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start}
.panel__nav{position:sticky;top:24px;background:var(--snow);padding:24px 20px;border:1px solid var(--rule)}
.panel__hello{margin:0 0 16px;font-family:'Russo One',sans-serif;font-size:18px;color:var(--navy)}
.panel__nav nav{display:grid}
.panel__nav nav a{padding:10px 0;border-top:1px solid var(--rule);font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--body)}
.panel__nav nav a.is-active,.panel__nav nav a:hover{color:var(--navy)}
.panel__logout{display:inline-flex;align-items:center;gap:8px;margin-top:20px;font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--needle)}
.panel__main{display:grid;gap:20px}
.pcard{background:var(--snow);border:1px solid var(--rule);padding:28px 28px 26px}
.pcard--sub{border-color:var(--navy);box-shadow:0 16px 40px rgba(0,33,51,.08)}
.pcard__label{margin:0 0 12px;font-size:10px;font-weight:700;letter-spacing:2.7px;text-transform:uppercase;color:var(--teal)}
.pcard__row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.pcard__title{margin:0;font-family:'Russo One',sans-serif;font-weight:400;font-size:24px;color:var(--navy)}
.pcard__sub{margin:6px 0 0;font-size:14.5px;color:var(--body)}
.pcard__note{margin:8px 0 0;font-size:13.5px;color:var(--teal)}
.pcard__h3{margin:22px 0 6px;font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--body)}
.badge{display:inline-block;padding:7px 12px;font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;border:1px solid var(--rule);color:var(--body);white-space:nowrap}
.badge--ok{background:var(--navy);color:var(--snow);border-color:var(--navy)}
.badge--done{background:var(--mist);color:var(--teal)}
.kv{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 0;padding-top:18px;border-top:1px solid var(--rule)}
.kv dt{font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--teal)}
.kv dd{margin:6px 0 0;font-size:15px;color:var(--navy);font-weight:600}
.plist{margin:0;padding:0;list-style:none}
.plist li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--rule);font-size:14.5px;color:var(--body)}
.plist li:first-child{border-top:0}
.plist li b{color:var(--navy);font-weight:600;text-align:right}
.plist--docs li span,.plist--req li span:first-child{display:grid;gap:2px}
.plist--docs li small,.plist--req li small{font-size:12.5px;color:var(--body)}
.plist--docs li b,.plist--req li b{text-align:left}
.tag{font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;padding:7px 10px;border:1px solid var(--navy);color:var(--navy)}
.pcard__actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:22px}
.text-btn{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--navy);border-bottom:1px solid currentColor}
.text-btn--danger{color:var(--needle)}
.pform{margin-top:6px}
@media (max-width:900px){
  .panel{padding:24px var(--pad-x) 56px}
  .panel__wrap{grid-template-columns:1fr;gap:16px}
  .panel__nav{position:static;padding:16px}
  .panel__nav nav{display:flex;gap:4px 18px;flex-wrap:wrap}
  .panel__nav nav a{border-top:0;padding:6px 0}
  .pcard{padding:20px 18px}
  .kv{grid-template-columns:1fr;gap:12px}
  .plist li{align-items:flex-start;flex-direction:column;gap:2px}
  .plist li b{text-align:left}
  .plist--docs li,.plist--req li{flex-direction:row;align-items:center}
}

.auth__demo{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:10px 14px;border:1px dashed var(--teal);font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--teal)}
.auth__demo:hover{background:var(--mist)}

.ptab__title{margin:0 0 18px;font-family:'Russo One',sans-serif;font-weight:400;font-size:26px;color:var(--navy)}
.ptab{display:grid;gap:20px}
.ocards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ocard{display:block;background:var(--snow);border:1px solid var(--rule);padding:22px 22px 20px;transition:border-color .2s,box-shadow .2s}
.ocard:hover{border-color:var(--navy);box-shadow:0 12px 30px rgba(0,33,51,.08)}
.ocard__big{margin:4px 0 0;font-family:'Russo One',sans-serif;font-size:19px;line-height:1.2;color:var(--navy)}
.ocard__sub{margin:8px 0 0;font-size:13.5px;color:var(--body)}
.ocard__sub .ok{color:var(--teal);font-weight:700}
.qa{display:flex;flex-wrap:wrap;gap:10px}
.qa .btn{padding:12px 16px;font-size:10.5px}
@media (max-width:900px){.ocards{grid-template-columns:1fr}.ptab__title{font-size:22px}.panel__nav nav a.is-active{border-bottom:2px solid var(--navy)}}
.ptab[hidden]{display:none}

/* Avatar e resumo */
.avatar-box{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--navy);color:var(--snow);overflow:hidden;cursor:pointer;flex:none}
.avatar--lg{width:72px;height:72px;cursor:default}
.avatar__initials{font-family:'Russo One',sans-serif;font-size:16px;letter-spacing:.5px}
.avatar--lg .avatar__initials{font-size:24px}
.avatar__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.avatar__edit{position:absolute;right:0;bottom:0;width:18px;height:18px;border-radius:50%;background:var(--needle);color:var(--snow);font-size:13px;line-height:18px;text-align:center;font-weight:700}
.avatar--lg .avatar__edit{display:none}
.avatar-box .panel__hello{margin:0}
.ohead{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.ohead__id{display:flex;align-items:center;gap:16px}
.ohead .ptab__title{margin:0}
.ohead__sub{margin:6px 0 0;font-size:13.5px;color:var(--body);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ocards{grid-template-columns:1fr 1fr}
.ogrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.qa--col{display:grid;grid-template-columns:1fr;gap:8px}
.qa--col .btn{justify-content:space-between}
@media (max-width:900px){.ocards,.ogrid{grid-template-columns:1fr}.ohead__id{gap:12px}.avatar--lg{width:56px;height:56px}}
@media (max-width: 600px) {
  .scene--subs .scene__inner { min-height: 0; padding: 104px var(--pad-x) 44px; }
  .tiers { gap: 12px; margin-top: 22px; }
  .tier { padding: 22px 18px 20px; }
  .tier__list li { padding: 5px 0 5px 20px; font-size: 13.5px; }
  .tier__summary { margin-top: 14px; padding-top: 14px; font-size: 14px; }
  .btn--tier { margin-top: 16px; }
  .cmp-wrap { margin-top: 18px; }
  .offers { gap: 12px; margin-top: 22px; }
  .offer { padding: 22px 18px; }
  .offer__title { margin-top: 16px; font-size: 19px; }
  .offer__text { font-size: 15px; }
  .rules { margin-top: 16px; gap: 10px; }
  .rules > div { padding-top: 10px; }
  .rules h3 { font-size: 15px; }
  .rules p { font-size: 14px; }
  .subs-form { gap: 12px; }
  .form-grid { gap: 22px; }
}

@media (max-width:600px){ .cmp-wrap.mfold[hidden]{display:none} .sec .mfold__btn{display:block;width:100%;margin:18px 0 0;padding:12px;border:1px solid var(--navy);text-align:center} }
.sec--dark .sec-kicker{color:#8fb8c6}
