/* ============================================================================
   Academia INpacto — CSS não-crítico (carregamento assíncrono)
   Contém: animações, secções (equipa, serviços, formulário, footer),
   cookie banner, media queries não-críticas
   ============================================================================ */
@keyframes pulseHeart{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-60px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(60px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes bounceIn{0%{transform:scale(0);opacity:0}60%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}.section:nth-child(even){background:var(--clr-section-alt)}.section:not(.hero):not(#contacto){content-visibility:auto;contain-intrinsic-size:600px}.sobre{background:var(--clr-section-alt)}.equipa-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:stretch;min-width:0}.equipa-card{display:grid;grid-template-rows:auto 1fr;background:var(--clr-card-bg);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--clr-card-border);transition:transform var(--transition-base),box-shadow var(--transition-base)}.equipa-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.equipa-image{position:relative;width:100%;aspect-ratio:2/3;overflow:hidden;display:flex;background:var(--clr-section-alt);min-width:0;flex-shrink:1}.equipa-image picture{width:100%;display:block}.equipa-image img{width:100%;height:100%;object-fit:cover;display:block}.equipa-badge{position:absolute;bottom:1rem;left:1rem;right:1rem;background:rgba(201,168,76,.95);padding:.6rem .8rem;border-radius:var(--radius-sm);text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.badge-text{font-size:.7rem;color:var(--clr-primary);font-weight:700;text-transform:uppercase;letter-spacing:.5px;line-height:1.3}.equipa-texto{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;height:100%;min-width:0}.equipa-nome{font-size:1.3rem;font-weight:800;color:var(--clr-text);font-family:var(--ff-heading)}.equipa-cargo{font-size:var(--fs-xs);color:var(--clr-gold);font-weight:600;text-transform:uppercase;letter-spacing:1px}.diferencial-card p,.equipa-descricao,.mvv-card p{color:var(--clr-text-secondary);font-size:var(--fs-sm);line-height:1.7}.equipa-descricao strong{color:var(--clr-gold)}.diferenciais{display:flex;flex-direction:column;gap:.75rem;margin-top:auto}.diferencial-card{padding:1.5rem;border-radius:var(--radius-sm);border-left:4px solid var(--clr-gold);transition:transform var(--transition-base),box-shadow var(--transition-base);flex:1}.diferencial-card:hover{transform:translateX(5px);box-shadow:var(--shadow-gold)}.diferencial-card i{font-size:1.5rem;color:var(--clr-gold);margin-bottom:.75rem;display:block}.diferencial-card h3{font-size:1.1rem;margin-bottom:.5rem;color:var(--clr-text)}.diferencial-card p,.mvv-card p{line-height:1.5}.diferencial-card,.missao-valores{background:var(--clr-primary)}.mvv-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem;align-items:stretch}.mvv-card{background:var(--clr-card-bg);padding:2rem 1.5rem;border-radius:var(--radius-lg);border:1px solid var(--clr-card-border);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.mvv-card:hover,.servico-card--expandido:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:var(--clr-gold)}.mvv-card h3,.mvv-icon{text-align:center;margin-bottom:1rem}.mvv-icon i{font-size:2.5rem;color:var(--clr-gold)}.mvv-card h3{font-family:var(--ff-heading);font-size:1.3rem;font-weight:700;color:var(--clr-text)}.mvv-card p{line-height:1.7;text-align:justify}.mvv-card--valores p{text-align:left}.mvv-valores-lista{display:flex;flex-direction:column;gap:.4rem}.mvv-valores-lista li{display:flex;align-items:center;gap:.6rem;color:var(--clr-text-secondary);font-size:var(--fs-xs);padding:.3rem 0;border-bottom:1px solid var(--clr-divider)}.mvv-valores-lista li:last-child{border-bottom:none}.mvv-numero{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;background:var(--clr-gold);color:#fff;border-radius:50%;font-size:.7rem;font-weight:800}.servicos{background:var(--clr-section-alt)}.servicos-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.servico-card--expandido{background:var(--clr-card-bg);border-radius:var(--radius-lg);border:1px solid var(--clr-card-border);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.servico-card-header{position:relative;height:150px;overflow:hidden}.servico-card-header-img{width:100%;height:100%;background-image:var(--bg-image);background-size:cover;background-position:center;transition:transform var(--transition-slow);contain:paint}.servico-card--expandido:hover .servico-card-header-img{transform:scale(1.1)}.servico-card-header-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(30,41,59,.82)0,rgba(37,99,235,.55) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1rem;text-align:center}.servico-card-header-overlay i{font-size:2.2rem;color:var(--clr-gold)}.servico-card-header-overlay h3{font-family:var(--ff-heading);font-size:1.2rem;font-weight:700;color:#fff;margin:0}.servico-card-body{padding:1rem 1.25rem}.servico-lista{display:grid;grid-template-columns:1fr 1fr;gap:.3rem 1rem}.servico-lista li{display:flex;align-items:center;gap:.5rem;color:var(--clr-text-secondary);font-size:.8rem;line-height:1.3;padding:.2rem 0}.servico-lista li i{font-size:.75rem;color:var(--clr-success);flex-shrink:0}.servico-lista--brevemente i{color:var(--clr-gold)!important}.badge-breve{display:inline-block;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--clr-gold);border:1px solid var(--clr-gold);border-radius:4px;padding:.1rem .4rem;margin-left:.25rem}.contacto{background:var(--clr-primary)}.form-wrapper{max-width:700px;margin:0 auto;background:var(--clr-card-bg);padding:var(--space-2xl);border-radius:var(--radius-lg);border:1px solid var(--clr-card-border);box-shadow:var(--shadow-md)}.form-group{margin-bottom:1.5rem;position:relative}.form-group label{display:block;font-weight:600;margin-bottom:.5rem;font-size:var(--fs-sm);color:var(--clr-text)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:1rem 1.2rem;background:var(--clr-primary);border:1px solid var(--clr-divider);border-radius:var(--radius-sm);color:var(--clr-text);font-family:var(--ff-primary);font-size:var(--fs-base);transition:box-shadow var(--transition-base),border-color var(--transition-base);outline:0}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--clr-text-secondary);opacity:.6}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--clr-gold);box-shadow:0 0 0 3px var(--clr-gold-dim)}.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23475569' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;cursor:pointer}.form-group textarea{resize:vertical;min-height:120px}.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:var(--clr-error);box-shadow:0 0 0 3px rgba(239,68,68,.15)}.form-group.success input,.form-group.success select,.form-group.success textarea{border-color:var(--clr-success);box-shadow:0 0 0 3px rgba(34,197,94,.15)}.field-error{display:none;color:var(--clr-error);font-size:var(--fs-xs);margin-top:.4rem;font-weight:500}.form-group.error .field-error,.form-group.error .field-icon,.form-group.success .field-icon{display:block}.field-icon{position:absolute;right:1rem;top:3rem;font-size:1.1rem;display:none}.form-group.error .field-icon::before,.form-group.success .field-icon::before{content:"";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--clr-success);display:block}.form-group.error .field-icon::before{content:"";color:var(--clr-error)}.btn-submit{width:100%;padding:1.2rem;font-size:1.1rem;margin-top:.5rem}.btn-submit:disabled{opacity:.7;cursor:not-allowed;transform:none!important}.form-feedback{display:none;margin-top:1.5rem;padding:1.2rem;border-radius:var(--radius-sm);font-weight:500;text-align:center;font-size:var(--fs-base)}.form-feedback.success{display:block;background:rgba(34,197,94,.08);border:1px solid var(--clr-success);color:var(--clr-success)}.form-feedback.error{display:block;background:rgba(239,68,68,.08);border:1px solid var(--clr-error);color:var(--clr-error)}.form-feedback i{margin-right:.5rem}.redes{text-align:center;background:var(--clr-section-alt)}.social-links{display:flex;justify-content:center;gap:1.5rem;margin-top:1rem;min-height:70px}.footer,.social-links a{background:var(--clr-card-bg)}.social-links a{display:flex;align-items:center;justify-content:center;width:60px;height:60px;font-size:1.8rem;color:var(--clr-text-secondary);border-radius:50%;border:2px solid var(--clr-card-border);transition:transform var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.social-links a:hover{color:var(--clr-gold);transform:translateY(-4px) scale(1.12);background:var(--clr-primary);box-shadow:0 0 25px var(--clr-gold-glow);border-color:var(--clr-gold)}.social-links a:active{transform:translateY(0) scale(.95)}.footer{padding:var(--space-2xl)0;text-align:center;border-top:1px solid var(--clr-divider)}.footer-logo-link{display:inline-flex;margin:0 auto 1rem}.footer-logo-link .logo-text strong{font-weight:900;color:var(--clr-gold);font-size:1.5rem}.footer p{color:var(--clr-text);font-size:var(--fs-sm)}.footer-dev{margin-top:.25rem;font-size:.8rem}.footer-dev a{color:var(--clr-gold);text-decoration:underline;text-underline-offset:2px}.footer-dev a:hover{color:var(--clr-gold-hover)}.footer-heart{color:#ef4444;display:inline-block;animation:pulseHeart 1.5s ease-in-out infinite}.footer-links{display:flex;justify-content:center;gap:1.5rem;margin-top:1rem;flex-wrap:wrap}.footer-links a{color:var(--clr-text);font-size:var(--fs-xs)}.footer-links a:hover{color:var(--clr-gold)}#cookie-banner,#cookie-banner p{font-size:var(--fs-sm);line-height:1.5}#cookie-banner{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%);width:min(92%,650px);z-index:var(--z-cookie-banner);background:var(--clr-text);color:#fff;padding:0;border-radius:var(--radius-md);box-shadow:0 12px 48px rgba(0,0,0,.25),0 4px 16px rgba(168,136,48,.15);display:none;border:1px solid rgba(168,136,48,.2)}#cookie-banner.cookie-visible{display:block;animation:cookieSlideUp .4s ease}#cookie-banner .cookie-container{padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem}#cookie-banner .cookie-text{flex:1}#cookie-banner p{margin:0;color:rgba(255,255,255,.85)}#cookie-banner .cookie-highlight{color:#E0C060;font-weight:700}#cookie-banner a{color:#E0C060;text-decoration:underline;text-underline-offset:2px}#cookie-banner a:hover{color:var(--clr-gold-hover)}#cookie-banner .cookie-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}#cookie-banner .btn-cookie{background:#5C4210;color:#FFFFFF;border:0;padding:.55rem 1.4rem;border-radius:var(--radius-sm);font-weight:700;cursor:pointer;font-size:var(--fs-sm);white-space:nowrap;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 2px 8px rgba(201,168,76,.25)}#cookie-banner .btn-cookie:hover{background:#3D2B0E;transform:translateY(-1px);box-shadow:0 4px 16px rgba(201,168,76,.4)}@media(max-width:480px){#cookie-banner{bottom:1rem;width:calc(100% - 1.5rem)}#cookie-banner .cookie-container{flex-direction:column;padding:1rem 1.25rem;gap:.75rem}#cookie-banner p{font-size:var(--fs-xs)}#cookie-banner .cookie-actions{width:100%;justify-content:flex-end}}.fade-up{opacity:0;transform:translateY(40px);animation:fadeUp .8s ease forwards;animation-play-state:paused}.fade-in.visible,.fade-up.visible,.slide-in-left.visible,.slide-in-right.visible{animation-play-state:running}.slide-in-left{transform:translateX(-60px);animation:slideInLeft .8s ease forwards}.fade-in,.slide-in-left,.slide-in-right{opacity:0;animation-play-state:paused}.slide-in-right{transform:translateX(60px);animation:slideInRight .8s ease forwards}.fade-in{animation:fadeIn .8s ease forwards}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.delay-700{animation-delay:.7s}.delay-800{animation-delay:.8s}.delay-900{animation-delay:.9s}.delay-1000{animation-delay:1s}.form-feedback.success i{animation:bounceIn .5s ease forwards}.form-feedback.success{animation:fadeUp .4s ease forwards}.grecaptcha-badge{display:none!important}@media (max-width:768px){.hero{padding:7rem 1.5rem 3rem}.hero-title{font-size:var(--fs-4xl)}.hero-subtitle{font-size:var(--fs-lg)}.hero-stats{flex-direction:column;gap:1.5rem;margin-top:var(--space-2xl)}.hero-stat .counter,.hero-stat .suffix{font-size:1.8rem}.wave-divider{height:50px}.section{padding:var(--space-3xl)0}.section-title{font-size:var(--fs-3xl)}.section-description{font-size:var(--fs-base);margin-bottom:var(--space-xl)}.equipa-grid,.mvv-grid{grid-template-columns:1fr}.equipa-grid{gap:1.5rem}.equipa-image{aspect-ratio:auto;min-height:280px}.servicos-grid{grid-template-columns:1fr;gap:1rem}.servico-card-header{height:130px}.form-wrapper{padding:var(--space-xl) 1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.9rem 1rem}.footer-links,.social-links{gap:1rem}.social-links a{width:50px;height:50px;font-size:1.5rem}}@media (max-width:480px){body{width:100%;max-width:100%}.container{padding:0 1rem}.hero-title{font-size:var(--fs-3xl)}.hero-subtitle{font-size:var(--fs-sm)}.hero-stats{margin-top:var(--space-xl)}.wave-divider{height:35px}.section{padding:var(--space-2xl)0}.section-title{font-size:var(--fs-2xl)}.section-description{font-size:var(--fs-sm);margin-bottom:var(--space-lg)}.mvv-grid{grid-template-columns:1fr}.logo-text{font-size:1rem}.logo-text strong{font-size:1.15rem}.logo-icon{font-size:1.2rem}.nav-menu a{font-size:1rem;padding:.85rem .5rem}.nav-menu{width:85%;max-width:none}.servico-card-header{height:140px}.servico-lista{grid-template-columns:1fr;gap:.2rem}.servico-lista li{font-size:.8rem;gap:.5rem}.diferencial-card{padding:1.2rem}.form-wrapper{padding:var(--space-lg) 1rem}.form-group{margin-bottom:1.2rem}.form-group input,.form-group select,.form-group textarea{padding:.8rem;font-size:var(--fs-sm)}.btn-submit{padding:1rem;font-size:var(--fs-base)}#whatsapp-float{width:50px;height:50px;font-size:1.5rem;right:1rem;bottom:1rem}.footer{padding:var(--space-xl)0}.footer-links{flex-direction:column;gap:.5rem}.footer-links a{font-size:.8rem}.btn{padding:.8rem 1.5rem;font-size:var(--fs-sm)}}@media (max-width:360px){.hero-title{font-size:var(--fs-2xl)}.section-title{font-size:var(--fs-xl)}.container{padding:0 1rem}}@media (min-width:1400px){.container{max-width:1320px}.hero-title{font-size:4rem}.hero-subtitle{font-size:1.35rem}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}