
/* HERO */
.hero{padding:100px 5% 80px;background:linear-gradient(135deg,#0B1F4B 0%,#1A3A7A 55%,#0E3460 100%);position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;top:-80px;right:-60px;width:600px;height:600px;background:radial-gradient(circle,rgba(6,182,212,.14) 0%,transparent 70%);border-radius:50%;}
.hero-inner{max-width:1200px;margin:0 auto;position:relative;z-index:2;text-align:center;}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(6,182,212,.15);border:1px solid rgba(6,182,212,.3);padding:6px 16px;border-radius:50px;margin-bottom:22px;}
.hero-badge span{font-size:13px;color:var(--teal);font-weight:600;}
.hero h1{font-size:52px;font-weight:800;line-height:1.12;color:white;margin-bottom:18px;}
.hero h1 .accent{color:var(--teal);}
.hero-sub{font-size:18px;color:rgba(255,255,255,.75);line-height:1.8;max-width:620px;margin:0 auto 48px;}
.quick-contact{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;}
.qc-item{display:flex;align-items:center;gap:12px;background: rgba(6, 182, 212, .15);;border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:14px 24px;}
.qc-icon{font-size:22px;}
.qc-label{font-size:11px;color:rgba(255,255,255,.5);font-weight:600;text-transform:uppercase;letter-spacing:.5px;}
.qc-val{font-size:15px;color:white;font-weight:700;}
.qc-val a{color:white;text-decoration:none;}

/* CONTACT SECTION */
.contact-main{padding:80px 5%;background:var(--light);}
.contact-main .max-w{max-width:1200px;margin:0 auto;}
.contact-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:48px;align-items:start;}

/* INFO PANEL */
.info-panel{background:linear-gradient(145deg,var(--navy),#1A3060);border-radius:24px;padding:40px;color:white;position:sticky;top:88px;}
.info-panel h3{font-size:24px;font-weight:800;margin-bottom:8px;}
.info-panel>p{font-size:15px;color:rgba(255,255,255,.65);line-height:1.7;margin-bottom:32px;}
.cd-list{display:flex;flex-direction:column;gap:16px;margin-bottom:32px;}
.cd-item{display:flex;align-items:center;gap:14px;}
.cd-icon{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
.cd-label{font-size:11px;color:rgba(255,255,255,.45);margin-bottom:2px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;}
.cd-val{font-size:14px;color:white;font-weight:600;}
.cd-val a{color:var(--teal);text-decoration:none;}
.hours-box{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:20px;margin-bottom:24px;}
.hours-box h4{font-size:14px;font-weight:700;color:white;margin-bottom:12px;}
.hours-row{display:flex;justify-content:space-between;font-size:13px;color:rgba(255,255,255,.6);margin-bottom:6px;}
.hours-row span:last-child{color:var(--green);font-weight:600;}
.social-links{display:flex;gap:10px;}
.soc-btn{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:16px;text-decoration:none;transition:all .2s;}
.soc-btn:hover{background:var(--teal);}

/* FORM PANEL */
.form-panel{background:white;border-radius:24px;padding:40px;border:1px solid var(--border);box-shadow:0 4px 24px rgba(26,86,219,.06);}
.form-panel h3{font-size:24px;font-weight:800;color:var(--navy);margin-bottom:6px;}
.form-panel>p{font-size:15px;color:var(--gray);margin-bottom:28px;}
.form-tabs{display:flex;gap:8px;margin-bottom:28px;background:var(--light);border-radius:12px;padding:6px;}
.ftab{flex:1;padding:10px;text-align:center;border-radius:8px;font-size:14px;font-weight:600;color:var(--gray);cursor:pointer;transition:all .2s;border:none;background:transparent;}
.ftab.active{background:white;color:var(--blue);box-shadow:0 2px 8px rgba(26,86,219,.1);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-group{margin-bottom:16px;}
.form-group label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:6px;}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--dark);background:var(--light);transition:border-color .2s;outline:none;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue);background:white;}
.form-group textarea{resize:vertical;min-height:110px;}
.btn-submit{width:100%;padding:15px;background:linear-gradient(135deg,var(--blue),var(--teal));color:white;border:none;border-radius:10px;font-family:'Sora',sans-serif;font-weight:700;font-size:16px;cursor:pointer;transition:all .2s;box-shadow:0 4px 16px rgba(26,86,219,.3);}
.btn-submit:hover{opacity:.92;transform:translateY(-1px);}

/* OFFICE MAP */
.map-section{padding:80px 5%;background:white;}
.map-section .max-w{max-width:1200px;margin:0 auto;}
.map-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:48px;}
.office-card{background:var(--light);border-radius:20px;overflow:hidden;border:1px solid var(--border);}
.office-map{height:220px;background:linear-gradient(135deg,var(--navy),#1A3A7A);display:flex;align-items:center;justify-content:center;font-size:40px;}
.office-info{padding:24px;}
.office-info h3{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:8px;}
.office-info p{font-size:14px;color:var(--gray);line-height:1.7;margin-bottom:12px;}
.office-tag{display:inline-block;background:var(--light);color:var(--blue);padding:4px 12px;border-radius:50px;font-size:12px;font-weight:600;border:1px solid var(--border);}

/* FAQ */
.faq-section{padding:80px 5%;background:var(--light);}
.faq-section .max-w{max-width:900px;margin:0 auto;}
.faq-list{display:flex;flex-direction:column;gap:12px;margin-top:48px;}
.faq-item{background:white;border-radius:16px;border:1px solid var(--border);overflow:hidden;}
.faq-q{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:16px;font-weight:600;color:var(--navy);}
.faq-q:hover{color:var(--blue);}
.faq-icon{font-size:20px;color:var(--blue);transition:transform .3s;flex-shrink:0;}
.faq-a{padding:0 24px 20px;font-size:15px;color:var(--gray);line-height:1.75;display:none;}
.faq-item.open .faq-a{display:block;}
.faq-item.open .faq-icon{transform:rotate(45deg);}

/* CTA STRIP */
.cta-strip{background:linear-gradient(135deg,var(--blue),var(--navy));padding:60px 5%;text-align:center;position:relative;overflow:hidden;}
.cta-strip::before{content:'';position:absolute;top:-50%;left:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(6,182,212,.2),transparent 70%);border-radius:50%;}
.cta-strip h2{font-size:38px;font-weight:800;color:white;margin-bottom:12px;position:relative;}
.cta-strip p{font-size:17px;color:rgba(255,255,255,.8);margin-bottom:28px;position:relative;}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative;}
.btn-cta-w{padding:14px 32px;background:white;color:var(--blue);border:none;border-radius:10px;font-weight:700;font-size:15px;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;}
.btn-cta-w:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.2);}
.btn-cta-o{padding:14px 32px;border:2px solid rgba(255,255,255,.4);color:white;border-radius:10px;font-weight:600;font-size:15px;background:transparent;transition:all .2s;text-decoration:none;display:inline-block;}
.btn-cta-o:hover{border-color:white;background:rgba(255,255,255,.1);}
@keyframes wap{0%,100%{box-shadow:0 4px 20px rgba(37,211,102,.4)}50%{box-shadow:0 4px 32px rgba(37,211,102,.7)}}
.wa-btn:hover{transform:scale(1.1);}.wa-btn svg{width:28px;height:28px;fill:white;}
.section-tag{display:inline-block;background:var(--light);color:var(--blue);padding:6px 16px;border-radius:50px;font-size:13px;font-weight:600;margin-bottom:16px;}
.section-title{font-size:38px;font-weight:800;color:var(--navy);line-height:1.2;margin-bottom:14px;}
.section-sub{font-size:17px;color:var(--gray);max-width:560px;line-height:1.7;}
.text-center{text-align:center;}.text-center .section-sub{margin:0 auto;}
.fade-up{opacity:0;transform:translateY(28px);transition:all .65s ease;}
.fade-up.visible{opacity:1;transform:translateY(0);}
@media(max-width:768px){
  .contact-grid,.map-grid,.footer-grid{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
  .hero h1{font-size:32px;}nav .nav-links{display:none;}
  .quick-contact{flex-direction:column;align-items:center;}
}