:root{--navy-900:#0a1628;--navy-800:#111d32;--slate-500:#475569;--slate-400:#475569;--slate-300:#cbd5e1;--slate-200:#e2e8f0;--slate-100:#f1f5f9;--white:#fff;--teal-500:#087f73;--teal-400:#2dd4bf;--teal-600:#0a7c74;--teal-glow:rgba(20,184,166,.15);--green-500:#15803d;--font-display:'Outfit',sans-serif;--font-body:'DM Sans',sans-serif;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--shadow-lg:0 12px 32px rgba(10,22,40,.12);--transition-base:250ms ease}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--navy-800);background:var(--white)}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.2;color:var(--navy-900)}
h1{font-size:clamp(2rem,4vw,3rem)}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:clamp(1.125rem,2.5vw,1.35rem)}
p{color:#475569}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}
.section{padding:var(--space-4xl) 0}.section--light{background:var(--slate-100)}
.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;font-size:1rem;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base);text-decoration:none}
.btn--primary{background:#087f73;color:var(--white);box-shadow:0 4px 14px rgba(20,184,166,.35)}
.btn--primary:hover{background:#0a7c74;transform:translateY(-2px)}
.btn--large{padding:var(--space-lg) var(--space-2xl);font-size:1.1rem}
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--slate-200)}
.nav__inner{display:flex;align-items:center;justify-content:space-between;height:72px}
.nav__logo-image{height:50px;width:auto}
.nav__logo{font-family:var(--font-display);font-weight:800;font-size:1.5rem;color:var(--navy-900);display:flex;align-items:center;gap:var(--space-xs)}
.nav__logo-icon{width:36px;height:36px;background:linear-gradient(135deg,var(--teal-500),#0a7c74);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}
.nav__logo-icon svg{width:22px;height:22px;color:white}
.nav__links{display:none;list-style:none;gap:var(--space-xl)}
.nav__link{font-family:var(--font-display);font-weight:500;font-size:.95rem;color:#475569;transition:color 150ms ease}
.nav__link:hover{color:var(--navy-900)}
.nav__link--stacked{display:flex;flex-direction:column;align-items:center;line-height:1.2;text-align:center}
.nav__link--stacked span{font-size:0.75rem;font-weight:400;opacity:0.7}
.nav__cta{display:none}
.nav__mobile-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:var(--space-xs)}
.nav__mobile-toggle span{width:24px;height:2px;background:var(--navy-800);border-radius:2px;transition:all var(--transition-base)}
.nav__mobile-toggle.active span:nth-child(1){transform:rotate(45deg) translateY(7px)}
.nav__mobile-toggle.active span:nth-child(2){opacity:0}
.nav__mobile-toggle.active span:nth-child(3){transform:rotate(-45deg) translateY(-7px)}
.nav__links--active{display:flex !important;flex-direction:column;position:absolute;top:72px;left:0;right:0;background:white;padding:var(--space-lg);box-shadow:var(--shadow-lg)}
@media(min-width:768px){.nav__links{display:flex}.nav__cta{display:inline-flex}.nav__mobile-toggle{display:none}}
.page-header{padding-top:calc(72px + var(--space-4xl));padding-bottom:var(--space-3xl);background:linear-gradient(135deg,var(--navy-900),var(--navy-800));text-align:center}
.page-header h1{color:var(--white);margin-bottom:var(--space-md)}
.page-header p{color:var(--slate-300);font-size:1.15rem;max-width:600px;margin:0 auto}
.contact__grid{display:grid;gap:var(--space-3xl)}
@media(min-width:768px){.contact__grid{grid-template-columns:1fr 1fr}}
.contact-form{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--slate-200)}
.contact-form h2{margin-bottom:var(--space-xs)}
.contact-form__subtitle{color:#475569;margin-bottom:var(--space-xl)}
.form-group{margin-bottom:var(--space-lg)}
.form-group label{display:block;font-family:var(--font-display);font-weight:600;font-size:.9rem;color:var(--navy-900);margin-bottom:var(--space-xs)}
.form-group label span{color:#0a7c74}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:var(--space-md);font-family:var(--font-body);font-size:1rem;color:var(--navy-800);background:var(--slate-100);border:2px solid var(--slate-200);border-radius:var(--radius-md);transition:all var(--transition-base)}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#0a7c74;background:var(--white)}
.form-group textarea{min-height:120px;resize:vertical}
.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-md) center;background-size:20px}
.form-row{display:grid;gap:var(--space-lg)}
@media(min-width:480px){.form-row{grid-template-columns:1fr 1fr}}
.contact-form .btn{width:100%;justify-content:center}
.form-status{margin-bottom:var(--space-lg);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);font-size:.9rem}
.form-status--success{background:#ecfdf3;color:#166534;border:1px solid #bbf7d0}
.form-status--error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}
.form-status ul{margin-top:var(--space-xs);padding-left:1.25rem;list-style:disc}
.form-note{margin-top:var(--space-md);font-size:.85rem;color:#475569;text-align:center}
.contact-info h2{margin-bottom:var(--space-lg)}
.contact-info__text{color:#475569;line-height:1.8;margin-bottom:var(--space-xl)}
.contact-info__items{display:flex;flex-direction:column;gap:var(--space-lg);margin-bottom:var(--space-2xl)}
.contact-info__item{display:flex;align-items:flex-start;gap:var(--space-md)}
.contact-info__icon{width:48px;height:48px;background:linear-gradient(135deg,var(--teal-glow),transparent);border:1px solid rgba(20,184,166,.2);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-info__icon svg{width:24px;height:24px;color:#0a7c74}
.contact-info__content h3{font-size:1rem;margin-bottom:var(--space-xs)}
.contact-info__content p{color:#475569;font-size:.95rem}
.contact-info__content a{color:#0a7c74;font-weight:500}
.contact-info__content a:hover{text-decoration:underline}
.what-to-expect{background:var(--slate-100);border-radius:var(--radius-lg);padding:var(--space-xl)}
.what-to-expect h3{margin-bottom:var(--space-md)}
.what-to-expect ul{list-style:none}
.what-to-expect li{display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) 0;color:#475569}
.what-to-expect svg{width:20px;height:20px;color:#15803d;flex-shrink:0;margin-top:2px}
.service-area{background:var(--slate-100);margin-top:var(--space-4xl)}
.service-area__inner{text-align:center;max-width:700px;margin:0 auto}
.service-area h2{margin-bottom:var(--space-md)}
.service-area p{margin-bottom:var(--space-xl)}
.service-area__locations{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-md)}
.service-area__location{display:inline-flex;align-items:center;gap:var(--space-xs);background:var(--white);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-xl);font-family:var(--font-display);font-weight:500;font-size:.9rem;color:var(--navy-800);border:1px solid var(--slate-200)}
.service-area__location svg{width:16px;height:16px;color:#0a7c74}
.footer{background:var(--navy-900);padding:var(--space-2xl) 0}
.footer__inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-md)}
.footer__logo-image{height:40px;width:auto;margin:0 auto var(--space-md)}
.footer__logo{font-family:var(--font-display);font-weight:800;font-size:1.25rem;color:var(--white);display:flex;align-items:center;gap:var(--space-xs)}
.footer__logo-icon{width:32px;height:32px;background:linear-gradient(135deg,var(--teal-500),#0a7c74);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}
.footer__logo-icon svg{width:18px;height:18px;color:white}
.footer__links{display:flex;gap:var(--space-xl);list-style:none}
.footer__links a{color:#cbd5e1;font-size:.9rem;transition:color 150ms ease}
.footer__links a:hover{color:var(--white)}
.footer__copyright{color:#cbd5e1;font-size:.85rem;width:100%;text-align:center;margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid rgba(255,255,255,.1)}
  
.nav__social{display:none;align-items:center;gap:12px;margin-left:var(--space-lg)}
.nav__social a{width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#475569;transition:all var(--transition-base);border:1px solid rgba(203,213,225,.8);background:rgba(255,255,255,.7)}
.nav__social a:hover{color:var(--navy-900);transform:translateY(-1px);box-shadow:0 8px 18px rgba(10,22,40,.12)}
@media(min-width:768px){.nav__social{display:flex}}


/* Social icons in top nav */
.nav__social{display:none;align-items:center;gap:10px;margin-left:var(--space-lg)}
.nav__social-link{width:36px;height:36px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#475569;transition:all var(--transition-base);border:1px solid rgba(203,213,225,.9);background:rgba(255,255,255,.85)}
.nav__social-link:hover{color:var(--navy-900);transform:translateY(-1px);box-shadow:0 10px 22px rgba(10,22,40,.12)}
@media(min-width:768px){.nav__social{display:flex}}

.skip-link:focus { left: 1rem; top: 1rem; }


/* ========================================
   FOOTER STYLES - UNIFIED
   ======================================== */
.footer { background: var(--navy-900); padding: var(--space-4xl) 0 var(--space-xl); }
.footer .container { max-width: 1200px; margin: 0 auto; padding: 0 var(--space-lg); }
.footer__grid { display: grid; grid-template-columns: 1fr; gap: var(--space-2xl); margin-bottom: var(--space-2xl); }
.footer__brand { max-width: 320px; }
.footer__logo { display: block; margin-bottom: var(--space-md); }
.footer__logo-image { height: 50px; width: auto; display: block; }
.footer__tagline { color: #cbd5e1; font-size: 0.95rem; line-height: 1.6; margin-bottom: var(--space-md); }
.footer__social { display: flex; gap: var(--space-sm); }
.footer__social-link { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; color: #cbd5e1; background: rgba(255, 255, 255, 0.05); border-radius: 6px; transition: all 0.25s ease; }
.footer__social-link:hover { color: #0ff4c6; background: rgba(20, 184, 166, 0.15); }
.footer__nav { }
.footer__nav h4 { font-family: var(--font-display), sans-serif; font-weight: 600; font-size: 0.9rem; color: #94a3b8; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: var(--space-md); }
.footer__links { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0; }
.footer__link { padding: 0.35rem 0; margin: 0; }
.footer__link a { color: #e2e8f0; font-size: 0.95rem; transition: color 0.15s ease; text-decoration: none; }
.footer__link a:hover { color: #5eead4; }
.footer__contact-item { display: flex; align-items: center; gap: var(--space-sm); padding: 0.35rem 0; color: #e2e8f0; font-size: 0.95rem; }
.footer__contact-item svg { width: 18px; height: 18px; color: #5eead4; flex-shrink: 0; }
.footer__contact-item a { color: #e2e8f0; transition: color 0.15s ease; text-decoration: none; }
.footer__contact-item a:hover { color: #5eead4; }
.footer__map { margin-top: var(--space-md); }
.footer__map iframe { display: block; width: 100%; max-width: 200px; height: 120px; border-radius: 8px; border: 0; }
.footer__bottom { padding-top: var(--space-xl); margin-top: var(--space-xl); border-top: 1px solid rgba(255, 255, 255, 0.1); text-align: center; }
.footer__copyright { color: #cbd5e1; font-size: 0.85rem; margin: 0; }
.footer__copyright a { color: #5eead4; text-decoration: none; }
.footer__copyright a:hover { text-decoration: underline; }
@media (min-width: 768px) {
  .footer__grid { grid-template-columns: 1.5fr 1fr 1fr 1fr; }
}
/* End Footer Styles */


/* Nav Social Icons */
.nav__social { display: none; align-items: center; gap: var(--space-md); margin-right: var(--space-md); }
.nav__social-link { width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; color: #475569; transition: all 0.2s ease; border-radius: 6px; border: 1px solid rgba(203,213,225,0.5); background: rgba(255,255,255,0.5); }
.nav__social-link:hover { color: #087f73; background: rgba(8,127,115,0.1); border-color: rgba(8,127,115,0.3); }
@media (min-width: 768px) { .nav__social { display: flex; } }

/* Mobile Menu Fixes */
.nav__links--active .nav__link--stacked { align-items: flex-start; text-align: left; }

