
/* =========================================================
   NEUROVITTA PRIME V25 — IDENTIDADE ACOLHEDORA E RESPONSIVA
   ========================================================= */
:root{
  --nv25-navy:#143b24;
  --nv25-navy-2:#225839;
  --nv25-ink:#173423;
  --nv25-text:#37654a;
  --nv25-muted:#498763;
  --nv25-ivory:#f7f2e9;
  --nv25-cream:#fffdf9;
  --nv25-sand:#eadfce;
  --nv25-gold:#aa8650;
  --nv25-gold-dark:#80643d;
  --nv25-white:#ffffff;
  --nv25-line:#d9d2c7;
  --nv25-success:#376d5a;
  --nv25-shadow:0 18px 52px rgba(20, 59, 36, .11);
  --nv25-radius:18px;
}
html{scroll-behavior:smooth;overflow-x:hidden}
body,button,input,textarea,select{
  font-family:"Aptos","Segoe UI Variable","Segoe UI",Arial,sans-serif!important;
  color:var(--nv25-ink)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body{margin:0;background:var(--nv25-cream)!important;overflow-x:hidden}
body *{box-sizing:border-box}
img,svg,video{max-width:100%;height:auto}
p,li,address,small,.page-intro,.lead,.lead-small-v11,.section-head>p,.footer-copy,.contact-panel p,.contact-form p{
  color:var(--nv25-text)!important;
  opacity:1!important;
}
a{color:inherit}
.container{width:min(calc(100% - 48px),1180px)!important;margin-inline:auto}
.site-header{
  position:sticky!important;top:0!important;z-index:1000!important;
  background:rgba(255,253,249,.97)!important;
  border-bottom:1px solid var(--nv25-line)!important;
  box-shadow:0 8px 28px rgba(20, 59, 36, .055)!important;
  backdrop-filter:blur(12px);
}
.header-inner{min-height:82px!important;gap:24px!important}
.brand-logo{width:52px!important;height:52px!important;object-fit:contain}
.brand-name{font-size:1rem!important;letter-spacing:.055em!important;color:var(--nv25-navy)!important;font-weight:800!important}
.brand-kicker{color:var(--nv25-gold-dark)!important;font-weight:800!important;letter-spacing:.2em!important}
.brand-doctor{color:#5a6570!important;opacity:1!important;font-size:.52rem!important}
.main-nav{gap:4px!important}
.main-nav a{
  color:#315c43!important;font-weight:650!important;font-size:.78rem!important;
  border-radius:9px!important;padding:10px 12px!important;
}
.main-nav a:hover,.main-nav a.active{background:var(--nv25-ivory)!important;color:var(--nv25-navy)!important}
.main-nav a.active::after{background:var(--nv25-gold)!important}
.menu-button{color:var(--nv25-navy)!important;border:1px solid var(--nv25-line)!important;background:#fff!important}
.hero,.page-hero{background:var(--nv25-ivory)!important;color:var(--nv25-ink)!important}
.neural-bg,.hero-orbit,.hero-symbol-shell,.hero-badge,.page-mark{display:none!important}
.eyebrow{
  color:var(--nv25-gold-dark)!important;opacity:1!important;
  font-weight:800!important;letter-spacing:.14em!important;font-size:.68rem!important;
}
.display-title,.page-title,.section-title,.cta-band h2,.contact-panel h2,.contact-form h2,.clinic-copy h2,.profile-copy h2,.legal-card h1,.legal-card h2{
  font-family:"Aptos Display","Segoe UI Variable Display","Segoe UI",Arial,sans-serif!important;
  color:var(--nv25-navy)!important;font-weight:750!important;letter-spacing:-.035em!important;
}
.display-title{font-size:clamp(2.8rem,5.7vw,5.3rem)!important;line-height:.98!important}
.page-title{font-size:clamp(2.55rem,5vw,4.75rem)!important;line-height:1.02!important}
.section-title{font-size:clamp(2.15rem,4vw,3.65rem)!important;line-height:1.05!important}
.lead,.page-intro{font-size:clamp(1rem,1.5vw,1.16rem)!important;line-height:1.7!important}
.button{
  min-height:50px!important;border-radius:11px!important;font-weight:750!important;
  letter-spacing:0!important;box-shadow:none!important;padding:0 22px!important;
}
.button-primary{background:var(--nv25-navy)!important;color:#fff!important;border:1px solid var(--nv25-navy)!important}
.button-primary:hover{background:var(--nv25-navy-2)!important}
.button-secondary{background:#fff!important;color:var(--nv25-navy)!important;border:1px solid #aeb7c0!important}
.button-gold{background:var(--nv25-gold)!important;color:#fff!important;border-color:var(--nv25-gold)!important}
.section{padding:92px 0!important}.section.white{background:var(--nv25-cream)!important}.section.soft{background:var(--nv25-ivory)!important}
.section-head{gap:34px!important}.section-head>p{line-height:1.7!important}
.symptom-card,.service-card,.team-preview-card-v13,.telemedicine-feature,.contact-panel,.contact-form,.legal-card,.profile-card,.welcome-card-v11{
  background:#fff!important;border:1px solid var(--nv25-line)!important;border-radius:var(--nv25-radius)!important;
  box-shadow:0 10px 34px rgba(20, 59, 36, .055)!important;
}
.symptom-card:before{background:var(--nv25-gold)!important}
.symptom-card h3,.service-card h3,.team-preview-card-v13 h3,.telemedicine-feature h3{
  font-family:"Aptos Display","Segoe UI Variable Display","Segoe UI",Arial,sans-serif!important;
  color:var(--nv25-navy)!important;font-weight:750!important;
}
.cta-band{
  background:var(--nv25-navy)!important;border:0!important;border-radius:22px!important;
  box-shadow:var(--nv25-shadow)!important;
}
.cta-band h2,.cta-band p,.cta-band .eyebrow{color:#fff!important;opacity:1!important}
.site-footer{background:#10301d!important;color:#fff!important}
.site-footer p,.site-footer small,.site-footer span,.site-footer address{color:#cbe3d5!important;opacity:1!important}
.footer-col a{color:#e1efe7!important;opacity:1!important}
.footer-col h4,.footer-brand h3{color:#fff!important}
.footer-bottom{color:#b2d6c1!important}
.footer-route-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.footer-route-links a,.route-button{
  display:inline-flex!important;align-items:center;justify-content:center;gap:7px;
  min-height:40px;padding:0 13px;border-radius:9px;text-decoration:none!important;
  font-size:.76rem!important;font-weight:750!important;
}
.footer-route-links a{border:1px solid #46835f!important;color:#fff!important;background:#1b462d!important}
.route-button.maps{background:var(--nv25-navy)!important;color:#fff!important;border:1px solid var(--nv25-navy)!important}
.route-button.waze{background:#fff!important;color:var(--nv25-navy)!important;border:1px solid #aeb7c0!important}
.route-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.contact-detail address{font-style:normal;color:var(--nv25-text)!important;line-height:1.6}
.field input,.field textarea,.field select{
  color:var(--nv25-ink)!important;background:#fff!important;border:1px solid #bbc3ca!important;
  border-radius:10px!important;opacity:1!important;
}
.field input::placeholder,.field textarea::placeholder{color:#6f7b87!important;opacity:1!important}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--nv25-navy-2)!important;box-shadow:0 0 0 3px #dbece2!important}

/* Homepage V25 */
.v25-home-hero{position:relative;overflow:hidden;padding:96px 0 88px;background:linear-gradient(115deg,#fffdf9 0%,#f7f2e9 64%,#efe3d3 100%)!important}
.v25-home-hero::after{content:"";position:absolute;inset:auto -120px -210px auto;width:520px;height:520px;border-radius:50%;background:#e8dac7;z-index:0}
.v25-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.75fr);gap:70px;align-items:center}
.v25-hero-copy{min-width:0}.v25-hero-copy h1{margin:16px 0 22px;max-width:760px}
.v25-hero-copy .lead{max-width:690px}.v25-hero-copy .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.v25-trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.v25-trust-row span{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #d7cdbf;border-radius:999px;background:#fff;color:#2f563f!important;font-size:.75rem;font-weight:700}
.v25-trust-row span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--nv25-gold)}
.v25-hero-panel{position:relative;background:#fff;border:1px solid #d7cdbf;border-radius:26px;padding:30px;box-shadow:var(--nv25-shadow);overflow:hidden}
.v25-hero-panel::before{content:"";display:block;position:absolute;inset:0 0 auto 0;height:7px;background:linear-gradient(90deg,var(--nv25-navy),var(--nv25-gold))}
.v25-panel-brand{display:flex;align-items:center;gap:14px;padding-bottom:22px;border-bottom:1px solid var(--nv25-line)}
.v25-panel-brand img{width:60px;height:60px;object-fit:contain}.v25-panel-brand small{display:block;color:var(--nv25-gold-dark)!important;font-weight:800;letter-spacing:.12em}.v25-panel-brand strong{display:block;color:var(--nv25-navy)!important;font-size:1.1rem;margin-top:4px}
.v25-panel-title{font-size:1.65rem;line-height:1.15;color:var(--nv25-navy)!important;font-weight:750;margin:24px 0 18px}
.v25-panel-list{display:grid;gap:10px}.v25-panel-list div{padding:13px 14px;background:var(--nv25-ivory);border:1px solid #e5dbcd;border-radius:12px}.v25-panel-list strong{display:block;color:var(--nv25-navy)!important}.v25-panel-list small{display:block;margin-top:3px;color:var(--nv25-muted)!important}
.v25-intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;align-items:start}
.v25-intro-note{position:sticky;top:118px}.v25-intro-note p{font-size:1.04rem;line-height:1.75}
.v25-care-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.v25-care-card{background:#fff;border:1px solid var(--nv25-line);border-radius:18px;padding:26px;min-height:190px}
.v25-care-card span{display:block;color:var(--nv25-gold-dark)!important;font-weight:800;font-size:.66rem;letter-spacing:.11em}.v25-care-card h3{color:var(--nv25-navy)!important;font-size:1.25rem;margin:18px 0 9px}.v25-care-card p{margin:0;line-height:1.65;font-size:.9rem}
.v25-clinic-section{background:var(--nv25-navy)!important;color:#fff!important}
.v25-clinic-section .eyebrow,.v25-clinic-section h2,.v25-clinic-section p{color:#fff!important}
.v25-clinic-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center}
.v25-clinic-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}
.v25-clinic-features article{background:#1d4c31;border:1px solid #3c7052;border-radius:15px;padding:18px}
.v25-clinic-features strong{display:block;color:#fff!important}.v25-clinic-features span{display:block;margin-top:5px;color:#cfe5d8!important;font-size:.82rem;line-height:1.5}
.v25-playroom-card{background:var(--nv25-ivory);color:var(--nv25-ink);border-radius:24px;padding:32px;border:1px solid #e3d7c8}
.v25-playroom-card .eyebrow,.v25-playroom-card h3,.v25-playroom-card p{color:var(--nv25-ink)!important}
.v25-playroom-card h3{font-size:2rem;margin:12px 0}.v25-playroom-card ul{padding-left:20px;margin:18px 0 0}.v25-playroom-card li{margin:9px 0;color:var(--nv25-text)!important}
.v25-location-grid{display:grid;grid-template-columns:1fr .9fr;gap:34px;align-items:stretch}
.v25-location-card{background:#fff;border:1px solid var(--nv25-line);border-radius:22px;padding:34px;box-shadow:0 12px 40px rgba(20, 59, 36, .06)}
.v25-location-card address{font-style:normal;color:var(--nv25-navy)!important;font-size:1.12rem;font-weight:700;line-height:1.55;margin-top:18px}
.v25-location-visual{border-radius:22px;background:linear-gradient(135deg,#e9dfd0,#f7f2e9);border:1px solid #d7cdbf;padding:34px;display:grid;align-content:center}
.v25-location-visual strong{color:var(--nv25-navy)!important;font-size:1.45rem}.v25-location-visual p{line-height:1.65}

/* Clinic page V25 */
.v25-clinic-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.v25-clinic-page-card{padding:28px;background:#fff;border:1px solid var(--nv25-line);border-radius:18px}.v25-clinic-page-card h3{color:var(--nv25-navy)!important;font-size:1.3rem;margin:10px 0}.v25-clinic-page-card p{line-height:1.65;margin:0}.v25-clinic-page-card.featured{background:var(--nv25-navy);grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center}.v25-clinic-page-card.featured h3,.v25-clinic-page-card.featured p,.v25-clinic-page-card.featured li,.v25-clinic-page-card.featured .eyebrow{color:#fff!important}

@media(max-width:980px){
  .v25-hero-grid,.v25-intro-grid,.v25-clinic-grid,.v25-location-grid{grid-template-columns:1fr}
  .v25-intro-note{position:static}.v25-hero-panel{max-width:680px}.v25-home-hero::after{display:none}
  .footer-main{grid-template-columns:1fr 1fr!important}.footer-brand-block{grid-column:1/-1}
}
@media(max-width:850px){
  .header-inner{min-height:72px!important}.brand-logo{width:46px!important;height:46px!important}
  .main-nav{top:70px!important;left:12px!important;right:12px!important;background:#fff!important;border:1px solid var(--nv25-line)!important;border-radius:14px!important;box-shadow:var(--nv25-shadow)!important;padding:10px!important}
  .main-nav a{min-height:44px;display:flex;align-items:center}
  .v25-home-hero{padding:68px 0 72px}.section{padding:72px 0!important}
}
@media(max-width:650px){
  .container{width:min(calc(100% - 28px),1180px)!important}
  .brand-copy{display:block!important}.brand-doctor{display:none!important}.brand-name{font-size:.83rem!important}.brand-kicker{font-size:.48rem!important}
  .v25-home-hero{padding:52px 0 60px}.display-title{font-size:clamp(2.45rem,12vw,3.35rem)!important}.page-title{font-size:2.5rem!important}.section-title{font-size:2.25rem!important}
  .v25-hero-grid{gap:32px}.v25-hero-panel{padding:24px;border-radius:20px}.v25-panel-title{font-size:1.4rem}
  .v25-care-grid,.v25-clinic-features,.v25-clinic-page-grid{grid-template-columns:1fr}.v25-clinic-page-card.featured{grid-template-columns:1fr;grid-column:auto}
  .v25-hero-copy .actions,.route-actions,.cta-actions{display:grid!important;grid-template-columns:1fr;width:100%}
  .button,.route-button{width:100%!important}
  .v25-trust-row{display:grid}.v25-trust-row span{border-radius:11px}
  .section{padding:62px 0!important}.cta-band{padding:30px 22px!important}
  .footer-main{grid-template-columns:1fr!important}.footer-brand-block{grid-column:auto}.footer-bottom{flex-direction:column!important}
  .contact-grid{grid-template-columns:1fr!important}.contact-panel,.contact-form{padding:24px!important}
  .form-grid{grid-template-columns:1fr!important}.field.full{grid-column:auto!important}
}
@media(max-width:390px){.brand-copy{display:none!important}.container{width:min(calc(100% - 22px),1180px)!important}.display-title{font-size:2.35rem!important}.v25-hero-panel{padding:20px}.v25-panel-brand img{width:50px;height:50px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}
