/* ============================================================
   Estilos específicos desta página
   ============================================================ */

.nav-links a{color:var(--muted-1);text-decoration:none;font-size:0.875rem;font-weight:400;transition:color 0.2s;}

.page-header{padding:8rem 2.5rem 3rem;max-width:1200px;margin:0 auto;}

.page-header p{color:var(--muted-1);font-size:0.95rem;font-weight:300;max-width:560px;line-height:1.7;}

.calc-wrapper{max-width:800px;margin:0 auto;padding:0 2.5rem 6rem;}

.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}

.form-group input,.form-group select{background:var(--bg-2);border:1px solid var(--muted-3);border-radius:8px;padding:0.85rem 1rem;color:var(--white);font-family:"Outfit",sans-serif;font-size:0.95rem;transition:border-color 0.2s,box-shadow 0.2s;outline:none;width:100%;}

.btn-calc{width:100%;background:var(--green);color:var(--bg);border:none;padding:1rem 2rem;border-radius:8px;font-family:"Outfit",sans-serif;font-weight:700;font-size:1rem;cursor:pointer;transition:transform 0.2s,box-shadow 0.2s;margin-top:0.5rem;letter-spacing:0.3px;}

.btn-calc:active{transform:translateY(0);}

.results-card{display:none;background:var(--bg-card);border:1px solid var(--muted-3);border-radius:16px;overflow:hidden;animation:fadeUp 0.5s ease both;}

.results-card-header{padding:1.5rem 2rem;border-bottom:1px solid var(--muted-3);}

.results-card-title{font-size:0.7rem;letter-spacing:2px;text-transform:uppercase;color:var(--muted-2);font-weight:500;}

.results-card-sub{font-size:0.8rem;color:var(--muted-2);margin-top:0.3rem;}

.table-scroll{overflow-x:auto;}

.taxa-table{width:100%;border-collapse:collapse;}

.taxa-table thead tr{background:var(--bg-2);}

.taxa-table th{padding:1rem 1.5rem;text-align:left;font-size:0.7rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted-2);font-weight:500;border-bottom:1px solid var(--muted-3);white-space:nowrap;}

.taxa-table th:not(:first-child){text-align:center;}

.taxa-table td{padding:1.1rem 1.5rem;font-size:0.9rem;color:var(--muted-1);border-bottom:1px solid var(--muted-3);white-space:nowrap;}

.taxa-table td:not(:first-child){text-align:center;}

.taxa-table tbody tr:last-child td{border-bottom:none;}

.taxa-table tbody tr:hover{background:var(--bg-hover);}

.taxa-table .tipo{font-weight:500;color:var(--white);font-size:0.85rem;}

.taxa-table .highlight{color:var(--green);font-weight:600;font-family:"Playfair Display",serif;font-size:1rem;}

.seo-content{max-width:1000px;margin:0 auto;padding:0 2.5rem 2.5rem;}

.seo-panel{background:rgba(17,24,21,0.96);border:1px solid var(--muted-3);border-radius:16px;padding:2rem;margin-bottom:1.5rem;}

.seo-panel h2{font-family:"Playfair Display",serif;font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.2;margin-bottom:1rem;color:var(--white);}

.seo-panel h3{font-size:1rem;margin:1.25rem 0 0.6rem;color:var(--white);}

.seo-panel p,.seo-panel li{color:var(--muted-1);font-size:0.95rem;line-height:1.75;font-weight:300;}

.seo-panel ul{padding-left:1.2rem;margin:0.75rem 0 0;}

.formula-box{background:var(--bg-2);border:1px solid var(--muted-3);border-radius:12px;padding:1rem 1.2rem;margin:1rem 0;color:var(--muted-1);font-size:0.95rem;line-height:1.7;}

.formula-box strong{color:var(--green);font-weight:700;}

.cta-inline{display:inline-flex;align-items:center;gap:0.4rem;margin-top:1rem;color:var(--green);text-decoration:none;font-weight:600;font-size:0.9rem;}

.faq-section{max-width:1000px;margin:0 auto;padding:0 2.5rem 5rem;}

.faq-section h2{font-family:"Playfair Display",serif;font-size:clamp(1.5rem,2.5vw,2.1rem);margin-bottom:1.25rem;}

.faq-item h3{font-size:1rem;margin-bottom:0.5rem;color:var(--white);}

.faq-item p{color:var(--muted-1);font-size:0.92rem;line-height:1.7;font-weight:300;}

@media(max-width:768px){
  nav{padding:1rem 1.25rem;}.nav-links{display:none;}.nav-hamburger{display:flex;}
  .page-header{padding:6rem 1.25rem 2rem;}.calc-wrapper{padding:0 1.25rem 4rem;}
  .form-card{padding:1.5rem;}.form-grid{grid-template-columns:1fr;}
  footer{flex-direction:column;align-items:flex-start;padding:2rem 1.25rem;}.footer-links{flex-wrap:wrap;gap:1rem;}.seo-content,.faq-section{padding-left:1.25rem;padding-right:1.25rem}.seo-panel{padding:1.5rem}
}


.form-error-message{display:none;margin:1rem 0 0;padding:.85rem 1rem;border-radius:10px;border:1px solid rgba(255,107,107,.35);background:rgba(255,107,107,.11);color:#ff9a9a;font-size:.88rem;line-height:1.5;font-weight:500;}
.form-error-message.show{display:block;}
.field-invalid{border-color:rgba(255,107,107,.75)!important;box-shadow:0 0 0 3px rgba(255,107,107,.14)!important;}
html.light-mode .form-error-message,html[data-theme="light"] .form-error-message{background:rgba(190,32,32,.08);border-color:rgba(190,32,32,.28);color:#9f1d1d;}
