  :root{--ft-blue-dark:#0d2a5c;--ft-blue:#193c76;--ft-blue-mid:#1e4a8f;--ft-blue-light:#2a5fac;--ft-blue-lightest:#3f79cf;--ft-yellow:#edd25f;--ft-yellow-dark:#d4b84a;--ft-white:#ffffff;--ft-white-dim:rgba(255, 255, 255, 0.70);--ft-white-faint:rgba(255, 255, 255, 0.10);--ft-radius:14px;--ft-radius-sm:8px;--ft-transition:0.25s ease;}  .site-footer{background-color:var(--ft-blue);color:var(--ft-white);position:relative;overflow:hidden;font-family:'Segoe UI', system-ui, -apple-system, sans-serif;}  .footer-top-accent{height:4px;background:linear-gradient(90deg, var(--ft-blue-light) 0%, var(--ft-yellow) 40%, var(--ft-yellow-dark) 60%, var(--ft-blue-light) 100%);}  .footer-blob{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0;} .footer-blob--1{width:420px;height:420px;background:radial-gradient(circle, rgba(29,74,143,0.55) 0%, transparent 70%);top:-120px;right:-80px;} .footer-blob--2{width:300px;height:300px;background:radial-gradient(circle, rgba(237,210,95,0.10) 0%, transparent 70%);bottom:-60px;left:-40px;}  .footer-inner{position:relative;z-index:1;padding-top:3rem;padding-bottom:2rem;}  .footer-grid{display:grid;grid-template-columns:1.1fr 1.1fr 1.35fr;gap:2.5rem 2rem;align-items:start;}  .footer-col{}  .footer-logo-wrap{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem;} .footer-logo-img{background-color:white;width:48px;height:48px;object-fit:contain;border-radius:10px;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(0,0,0,0.25));} .footer-logo-text{display:block;font-size:1.35rem;font-weight:800;letter-spacing:-0.3px;color:var(--ft-white);line-height:1.1;} .footer-logo-accent{color:var(--ft-yellow);} .footer-logo-tagline{display:block;font-size:0.72rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--ft-white-dim);} .footer-brand-desc{text-align:justify;font-size:0.875rem;color:var(--ft-white-dim);line-height:1.65;margin-bottom:1.5rem;}  .footer-social-wrap{display:flex;flex-direction:column;gap:0.55rem;} .footer-social-label{font-size:0.72rem;text-transform:uppercase;letter-spacing:0.1em;color:var(--ft-yellow);font-weight:700;} .footer-social-icons{display:flex;gap:0.5rem;flex-wrap:wrap;} .footer-social-btn{width:38px;height:38px;border-radius:var(--ft-radius-sm);display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:0.95rem;transition:transform var(--ft-transition), background var(--ft-transition), box-shadow var(--ft-transition);background:var(--ft-white-faint);color:var(--ft-white);border:1px solid rgba(255,255,255,0.12);} .footer-social-btn:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(0,0,0,0.25);color:var(--ft-white);} .footer-social-btn--tt:hover{background:#010101;border-color:#010101;} .footer-social-btn--ig:hover{background:linear-gradient(135deg,#f58529,#dd2a7b,#8134af);border-color:transparent;} .footer-social-btn--yt:hover{background:#ff0000;border-color:#ff0000;} .footer-social-btn--li:hover{background:#0a66c2;border-color:#0a66c2;}  .footer-col-title{display:flex;align-items:center;gap:0.55rem;font-size:0.95rem;font-weight:700;color:var(--ft-yellow);text-transform:uppercase;letter-spacing:0.07em;margin-bottom:1.1rem;} .footer-col-title-icon{width:30px;height:30px;border-radius:6px;background:rgba(237,210,95,0.15);display:flex;align-items:center;justify-content:center;flex-shrink:0;} .footer-col-title-icon .fas, .footer-col-title-icon .fab{color:var(--ft-yellow);font-size:0.85rem;}  .footer-info-card{background:var(--ft-white-faint);border:1px solid rgba(255,255,255,0.10);border-radius:var(--ft-radius);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:0.9rem;} .footer-info-row{display:flex;gap:0.75rem;align-items:flex-start;font-size:0.855rem;line-height:1.55;color:var(--ft-white-dim);} .footer-info-icon{width:28px;height:28px;border-radius:6px;background:rgba(237,210,95,0.13);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;} .footer-info-icon .fas, .footer-info-icon .fab{color:var(--ft-yellow);font-size:0.75rem;} .footer-info-row strong{color:var(--ft-white);font-size:0.875rem;} .footer-info-sub{color:var(--ft-white-dim);} .footer-hours-list{display:flex;flex-direction:column;gap:0.25rem;} .footer-hours-line{display:flex;align-items:center;gap:0.4rem;} .footer-hours-line::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--ft-yellow);flex-shrink:0;opacity:0.75;} .footer-info-link{color:var(--ft-yellow);text-decoration:none;font-weight:600;transition:color var(--ft-transition);} .footer-info-link:hover{color:#fff;text-decoration:underline;}  .footer-form-card{padding:1.1rem 1.2rem 1.25rem;} .footer-form-card .footer-form-desc{margin-bottom:0.9rem;}  .footer-form-desc{font-size:0.855rem;color:var(--ft-white-dim);margin-bottom:1rem;line-height:1.5;} .footer-form-group{margin-bottom:0.85rem;} .footer-form-label{display:block;font-size:0.78rem;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--ft-white-dim);margin-bottom:0.35rem;} .footer-input-wrap{position:relative;} .footer-input-icon{position:absolute;left:0.8rem;top:50%;transform:translateY(-50%);color:rgba(237,210,95,0.7);font-size:0.8rem;pointer-events:none;} .footer-input-icon--textarea{top:0.75rem;transform:none;} .footer-form-control{width:100%;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.15);border-radius:var(--ft-radius-sm);color:var(--ft-white);font-size:0.875rem;padding:0.6rem 0.85rem 0.6rem 2.2rem;transition:border-color var(--ft-transition), background var(--ft-transition), box-shadow var(--ft-transition);outline:none;resize:none;font-family:inherit;} .footer-form-control::placeholder{color:rgba(255,255,255,0.35);} .footer-form-control:focus{border-color:var(--ft-yellow);background:rgba(255,255,255,0.11);box-shadow:0 0 0 3px rgba(237,210,95,0.15);} .footer-form-textarea{min-height:80px;line-height:1.5;}  .footer-btn-wa{display:flex;align-items:center;justify-content:center;gap:0.55rem;width:100%;padding:0.72rem 1.25rem;background:linear-gradient(135deg, #25d366 0%, #1ebe5e 100%);color:#fff;font-size:0.9rem;font-weight:700;border:none;border-radius:var(--ft-radius-sm);cursor:pointer;transition:transform var(--ft-transition), box-shadow var(--ft-transition), filter var(--ft-transition);box-shadow:0 4px 16px rgba(37,211,102,0.3);position:relative;overflow:hidden;} .footer-btn-wa::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg, rgba(255,255,255,0.15), transparent);opacity:0;transition:opacity var(--ft-transition);} .footer-btn-wa:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(37,211,102,0.4);filter:brightness(1.05);} .footer-btn-wa:hover::before{opacity:1;} .footer-btn-wa:active{transform:translateY(0);} .footer-btn-wa-icon{font-size:1.1rem;} .footer-btn-wa-arrow{margin-left:auto;font-size:0.75rem;opacity:0.8;transition:transform var(--ft-transition);} .footer-btn-wa:hover .footer-btn-wa-arrow{transform:translateX(3px);}  .footer-form-control.is-invalid{border-color:#ff6b6b;box-shadow:0 0 0 3px rgba(255,107,107,0.15);} .footer-field-error{font-size:0.75rem;color:#ff8e8e;margin-top:0.3rem;display:block;}  .footer-divider{height:1px;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);margin:2rem 0 1.25rem;}  .footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;} .footer-copy{font-size:1rem;color:var(--ft-white-dim);margin:0;} .footer-copy strong{color:var(--ft-white);} .footer-copy--right{text-align:right;} .footer-heart{color:var(--ft-yellow);margin-left:0.25rem;} .footer-heart .fas{font-size:0.75rem;animation:heartbeat 1.6s ease-in-out infinite;} @keyframes heartbeat{0%, 100%{transform:scale(1);} 14%{transform:scale(1.25);} 28%{transform:scale(1);} 42%{transform:scale(1.2);} 70%{transform:scale(1);}}   @media (max-width:991px){.footer-grid{grid-template-columns:1fr 1fr;gap:2rem 1.75rem;} .footer-col--form{grid-column:1 / -1;}}  @media (max-width:575px){.footer-grid{grid-template-columns:1fr;gap:1.75rem;} .footer-col--form{grid-column:auto;} .footer-bottom{flex-direction:column;align-items:flex-start;gap:0.25rem;} .footer-copy--right{text-align:left;} .footer-blob--1{width:220px;height:220px;top:-60px;right:-40px;} .footer-blob--2{width:180px;height:180px;}}