*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
:root { --navy:#080f1c; --navy2:#0d1829; --navy3:#112038; --accent:#2970e8; --accent-l:#5b93f0; --white:#ffffff; --off:#f0f4f9; --text:#3d5068; --muted:#6b7f96; --border:#dde4ef; --border-d:rgba(255,255,255,0.07); }
body { font-family:'Manrope',sans-serif; background:var(--white); color:var(--navy); -webkit-font-smoothing:antialiased; overflow-x:hidden; }

nav { position:fixed; top:0; left:0; right:0; z-index:300; height:70px; display:flex; align-items:center; padding:0 48px; background:var(--navy); justify-content:space-between; border-bottom:1px solid var(--border-d); }
.nav-logo { display:flex; align-items:center; gap:12px; text-decoration:none; }
.nav-logo img { height:36px; }
.nav-logo-text { font-size:0.88rem; font-weight:800; color:var(--white); }
.nav-links { display:flex; gap:36px; list-style:none; align-items:center; }
.nav-links a { font-size:0.8rem; font-weight:500; color:rgba(255,255,255,0.5); text-decoration:none; transition:color 0.15s; }
.nav-links a:hover, .nav-links a.active { color:rgba(255,255,255,0.95); }
.nav-right { display:flex; align-items:center; gap:24px; }
.nav-phone { font-size:0.85rem; font-weight:700; color:var(--white); text-decoration:none; display:flex; align-items:center; gap:7px; }
.nav-phone::before { content:''; width:7px; height:7px; border-radius:50%; background:#22c55e; display:inline-block; animation:livePulse 2s infinite; box-shadow:0 0 0 2px rgba(34,197,94,0.25); }
@keyframes livePulse { 0%,100%{box-shadow:0 0 0 2px rgba(34,197,94,0.25);} 50%{box-shadow:0 0 0 5px rgba(34,197,94,0.1);} }
.nav-cta { background:var(--accent); color:var(--white); font-size:0.8rem; font-weight:700; padding:9px 22px; border-radius:3px; text-decoration:none; transition:background 0.15s; }
.nav-cta:hover { background:#1a5cd4; }

.page-header { padding-top:70px; background:var(--navy); }
.page-header-inner { padding:64px 80px 56px; display:flex; align-items:flex-end; justify-content:space-between; gap:3rem; flex-wrap:wrap; }
.page-header-tag { font-size:0.7rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--accent-l); margin-bottom:14px; display:flex; align-items:center; gap:10px; }
.page-header-tag::before { content:''; width:28px; height:1px; background:var(--accent); }
.page-header h1 { font-family:'Bebas Neue',sans-serif; font-size:clamp(3rem,6vw,5.5rem); color:var(--white); letter-spacing:0.02em; line-height:0.95; }
.page-header p { font-size:1rem; color:rgba(255,255,255,0.5); font-weight:400; line-height:1.75; max-width:500px; margin-top:16px; }
.page-header-right { flex-shrink:0; display:flex; flex-direction:column; gap:10px; align-items:flex-end; }
.header-contact-pill { display:flex; align-items:center; gap:10px; background:rgba(255,255,255,0.06); border:1px solid var(--border-d); border-radius:4px; padding:10px 18px; }
.header-contact-pill span { font-size:0.82rem; color:rgba(255,255,255,0.6); font-weight:400; }
.header-contact-pill strong { font-size:0.9rem; color:var(--white); }

.contact-grid { display:grid; grid-template-columns:1fr 1fr; min-height:calc(100vh - 70px - 180px); }

.contact-form-col { padding:64px 72px; border-right:1px solid var(--border); }
.contact-form-col h2 { font-size:1.5rem; font-weight:800; margin-bottom:8px; letter-spacing:-0.02em; }
.contact-form-col > p { font-size:0.9rem; color:var(--muted); margin-bottom:36px; line-height:1.7; }

.section-tag { font-size:0.7rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--accent); margin-bottom:12px; display:block; }

.form-group { margin-bottom:20px; }
.form-label { display:block; font-size:0.82rem; font-weight:600; color:var(--navy); margin-bottom:7px; }
.form-label span { color:var(--accent); }
.form-input, .form-select, .form-textarea { width:100%; padding:12px 16px; border:1px solid var(--border); border-radius:3px; font-family:'Manrope',sans-serif; font-size:0.9rem; color:var(--navy); background:var(--white); outline:none; transition:border-color 0.2s, box-shadow 0.2s; appearance:none; }
.form-input:focus, .form-select:focus, .form-textarea:focus { border-color:var(--accent); box-shadow:0 0 0 3px rgba(41,112,232,0.1); }
.form-input::placeholder, .form-textarea::placeholder { color:var(--muted); }
.form-textarea { resize:vertical; min-height:140px; line-height:1.6; }
.form-select { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%236b7f96' d='M1 1l5 5 5-5' stroke='%236b7f96' stroke-width='1.5' fill='none'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; padding-right:36px; cursor:pointer; }
.form-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.btn-blue { display:inline-block; background:var(--accent); color:var(--white); font-size:0.85rem; font-weight:700; letter-spacing:0.03em; padding:13px 32px; border-radius:3px; text-decoration:none; transition:background 0.15s; border:none; cursor:pointer; font-family:'Manrope',sans-serif; width:100%; text-align:center; }
.btn-blue:hover { background:#1a5cd4; }
.form-note { font-size:0.78rem; color:var(--muted); text-align:center; margin-top:14px; line-height:1.5; }

.contact-info-col { padding:64px 64px; background:var(--off); }
.contact-info-col h2 { font-size:1.5rem; font-weight:800; margin-bottom:28px; letter-spacing:-0.02em; }

.info-card { background:var(--white); border:1px solid var(--border); border-radius:6px; padding:28px 28px; margin-bottom:16px; display:flex; gap:18px; align-items:flex-start; transition:border-color 0.2s, box-shadow 0.2s; }
.info-card:hover { border-color:#bfd2f0; box-shadow:0 4px 16px rgba(8,15,28,0.06); }
.info-icon { width:44px; height:44px; background:#eff6ff; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:1.2rem; flex-shrink:0; }
.info-label { font-size:0.68rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted); margin-bottom:4px; }
.info-val { font-size:1rem; font-weight:700; color:var(--navy); text-decoration:none; transition:color 0.15s; display:block; }
.info-val:hover { color:var(--accent); }
.info-sub { font-size:0.82rem; color:var(--muted); margin-top:3px; }

.hours-block { background:var(--navy); border-radius:6px; padding:28px; margin-top:8px; }
.hours-block h3 { font-size:0.88rem; font-weight:700; color:var(--white); margin-bottom:16px; }
.hours-row { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid var(--border-d); }
.hours-row:last-child { border-bottom:none; }
.hours-row span:first-child { font-size:0.82rem; color:rgba(255,255,255,0.45); }
.hours-row strong { font-size:0.82rem; color:var(--white); font-weight:600; }
.hours-badge { display:inline-flex; align-items:center; gap:6px; background:rgba(34,197,94,0.15); border:1px solid rgba(34,197,94,0.3); border-radius:20px; padding:5px 12px; margin-top:14px; }
.hours-badge span { font-size:0.72rem; font-weight:700; color:#22c55e; }
.hours-badge::before { content:''; width:6px; height:6px; border-radius:50%; background:#22c55e; animation:livePulse 2s infinite; }

.success-msg { display:none; background:#f0fdf4; border:1px solid #bbf7d0; border-radius:6px; padding:20px 24px; text-align:center; margin-top:16px; }
.success-msg p { font-size:0.9rem; color:#166534; font-weight:500; }

footer { background:var(--navy); padding:64px 80px 36px; border-top:1px solid var(--border-d); }
.footer-top { display:grid; grid-template-columns:2.2fr 1fr 1fr 1fr; gap:3rem; padding-bottom:48px; border-bottom:1px solid var(--border-d); margin-bottom:28px; }
.footer-brand img { height:36px; margin-bottom:16px; opacity:0.6; }
.footer-brand p { font-size:0.84rem; font-weight:400; line-height:1.8; color:rgba(255,255,255,0.24); max-width:300px; }
.footer-partners { display:flex; gap:16px; align-items:center; margin-top:22px; }
.fp-img { height:28px; object-fit:contain; filter:grayscale(100%) brightness(0.35); transition:filter 0.3s; }
.fp-img:hover { filter:grayscale(0%) brightness(0.85); }
.f-col h4 { font-size:0.68rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:rgba(255,255,255,0.2); margin-bottom:18px; }
.f-col ul { list-style:none; }
.f-col ul li { margin-bottom:10px; }
.f-col ul li a { font-size:0.85rem; font-weight:400; color:rgba(255,255,255,0.32); text-decoration:none; transition:color 0.15s; }
.f-col ul li a:hover { color:rgba(255,255,255,0.78); }
.footer-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem; }
.footer-bottom p { font-size:0.75rem; color:rgba(255,255,255,0.16); }
.footer-bottom a { color:rgba(255,255,255,0.28); text-decoration:none; }
.footer-bottom a:hover { color:rgba(255,255,255,0.65); }

.reveal { opacity:0; transform:translateY(20px); transition:opacity 0.6s ease,transform 0.6s ease; }
.reveal.in { opacity:1; transform:none; }

@media(max-width:1024px) { nav{padding:0 28px;} .nav-links{display:none;} .page-header-inner{padding:52px 32px 44px; flex-direction:column;} .page-header-right{align-items:flex-start;} .contact-grid{grid-template-columns:1fr;} .contact-form-col,.contact-info-col{padding:52px 32px;} footer{padding:52px 32px 32px;} .footer-top{grid-template-columns:1fr 1fr; gap:2rem;} }
@media(max-width:640px) { .form-grid-2{grid-template-columns:1fr;} .footer-top{grid-template-columns:1fr;} }