.contact-hero{padding:158px 0 86px; color:var(--slate); background:var(--color-page); position:relative; overflow:hidden;}
.contact-hero::before{content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px); background-size:44px 44px; opacity:.44;}
.hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .95fr; gap:42px; align-items:center;}
.hero-copy h1{font-size:clamp(38px,5vw,62px); line-height:1.03; margin:16px 0; letter-spacing:-.02em; max-width:680px;}
.hero-copy p{font-size:16.5px; line-height:1.75; color:rgba(43,26,0,.74); max-width:610px;}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap; margin-top:28px;}
.contact-panel{border:1px solid rgba(212,5,17,.08); border-radius:24px; background:rgba(255,255,255,.34); padding:28px; box-shadow:inset 0 1px 0 rgba(255,255,255,.32), 0 24px 50px rgba(74,0,5,.12);}
.panel-head{display:flex; align-items:center; gap:10px; font-family:var(--mono); font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--teal-deep); margin-bottom:20px;}
.status-dot{width:9px; height:9px; border-radius:50%; background:var(--teal); box-shadow:0 0 0 5px rgba(212,5,17,.14);}
.contact-list{display:grid; gap:12px;}
.contact-list a,.contact-list div{display:flex; align-items:center; gap:14px; padding:16px; border:1px solid rgba(212,5,17,.14); border-radius:14px; background:rgba(255,255,255,.28);}
.contact-list a:hover{border-color:rgba(212,5,17,.45); background:rgba(212,5,17,.08);}
.icon{width:38px; height:38px; border-radius:10px; display:grid; place-items:center; background:var(--teal); color:var(--navy-deep); font-weight:800;}
.contact-list small{display:block; font-family:var(--mono); font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:rgba(43,26,0,.52); margin-bottom:4px;}
.contact-list strong{display:block; color:var(--slate); font-size:15px;}
section{padding:82px 0;}
.quick-contact{padding:34px 0; background:var(--navy-deep);}
.quick-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
.quick-card{display:block; border:1px solid var(--line-dark); border-radius:18px; padding:22px; background:rgba(255,255,255,.05); color:#fff; transition:transform .2s ease, border-color .2s ease, background .2s ease;}
.quick-card:hover{transform:translateY(-3px); border-color:rgba(212,5,17,.42); background:rgba(255,255,255,.08);}
.quick-card span{font-family:var(--mono); font-size:11px; color:var(--teal);}
.quick-card h2{font-size:20px; margin:10px 0 8px;}
.quick-card p{font-size:14px; line-height:1.6; color:rgba(255,255,255,.62);}
.quote-grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:32px; align-items:start;}
.quote-copy h2,.office-card h2{font-size:clamp(28px,3vw,38px); color:var(--navy); margin:14px 0 12px;}
.quote-copy p,.office-card p{font-size:15.5px; line-height:1.75; color:var(--slate-soft);}
.service-tags{display:flex; flex-wrap:wrap; gap:10px; margin-top:24px;}
.service-tags span{padding:9px 12px; border-radius:999px; border:1px solid var(--line); background:var(--color-soft); color:var(--teal-deep); font-family:var(--mono); font-size:11px; letter-spacing:.04em; text-transform:uppercase;}
.quote-form{background:#fff; border:1px solid var(--line); border-radius:22px; padding:28px; box-shadow:0 18px 42px rgba(16,16,16,.07); display:grid; gap:16px;}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
label{display:grid; gap:8px; color:var(--navy); font-weight:600; font-size:13.5px;}
input,select,textarea{width:100%; border:1px solid var(--line); border-radius:12px; background:#FAFCFF; padding:13px 14px; color:var(--slate); font:inherit; font-size:14px; transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;}
textarea{resize:vertical; min-height:140px;}
input:focus,select:focus,textarea:focus{outline:none; border-color:rgba(212,5,17,.58); box-shadow:0 0 0 4px rgba(212,5,17,.12); background:#fff;}
.quote-form .btn{justify-self:start; border:none;}
.office-section{background:var(--paper-dim);}
.office-grid{display:grid; grid-template-columns:.92fr 1.08fr; gap:28px; align-items:stretch;}
.office-stack{display:grid; gap:18px;}
.office-card{background:#fff; border:1px solid var(--line); border-radius:22px; padding:30px; box-shadow:0 16px 36px rgba(16,16,16,.05);}
.map-stack{display:grid; gap:18px;}
dl{display:grid; gap:14px; margin-top:24px;}
dl div{display:grid; grid-template-columns:110px 1fr; gap:14px; padding-top:14px; border-top:1px solid var(--line);}
dt{font-family:var(--mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--teal-dark);}
dd{color:var(--navy); font-weight:600;}
.map-card{min-height:360px; overflow:hidden; border-radius:24px; background:#fff; border:1px solid var(--line); box-shadow:0 20px 44px rgba(16,16,16,.12); position:relative;}
.map-card iframe{width:100%; height:100%; min-height:360px; display:block; border:0;}
.map-stack .map-card{min-height:260px;}
.map-stack .map-card iframe{min-height:260px;}
.map-search-link{position:absolute; right:18px; bottom:18px; display:inline-flex; align-items:center; justify-content:center; padding:11px 14px; border-radius:999px; background:var(--navy-deep); color:#fff; font-weight:700; font-size:13px; box-shadow:0 12px 26px rgba(0,0,0,.2);}
.map-search-link:hover{background:var(--teal); color:var(--navy-deep);}
@media (max-width:980px){
  .hero-grid,.quote-grid,.office-grid{grid-template-columns:1fr;}
  .quick-grid{grid-template-columns:1fr;}
  .contact-panel,.quote-copy,.office-card{max-width:680px;}
  .office-stack,.map-stack{display:contents;}
  .office-stack .office-card:nth-child(1){order:1;}
  .map-stack .map-card:nth-child(1){order:2;}
  .office-stack .office-card:nth-child(2){order:3;}
  .map-stack .map-card:nth-child(2){order:4;}
}
@media (max-width:680px){
  .contact-hero{padding:124px 0 62px;}
  .hero-copy h1{font-size:clamp(34px,12vw,44px); line-height:1.06;}
  .hero-copy p{font-size:15px; line-height:1.65;}
  section{padding:64px 0;}
  .hero-actions{width:100%;}
  .contact-panel,.quick-card,.quote-form,.office-card,.map-card{border-radius:16px;}
  .contact-panel,.quote-form,.office-card{padding:22px;}
  .contact-list a,.contact-list div{align-items:flex-start; padding:14px;}
  .form-row{grid-template-columns:1fr;}
  .quote-grid,.office-grid{gap:22px;}
  dl div{grid-template-columns:1fr;}
  .map-card,.map-card iframe{min-height:300px;}
  .map-stack .map-card,.map-stack .map-card iframe{min-height:260px;}
  .map-search-link{left:14px; right:14px; bottom:14px; border-radius:12px;}
}
@media (max-width:420px){
  .contact-list strong{font-size:14px; overflow-wrap:anywhere;}
  .service-tags span{font-size:10px;}
}

/* Current Qasim contact page theme. */
.contact-hero,
.office-section{
  background:#F6F7F9;
}

.quick-contact,
section{
  background:#fff;
}

.contact-panel,
.quick-card,
.quote-form,
.office-card,
.map-card,
.contact-list a,
.contact-list div{
  background:#fff;
  border-color:rgba(23,32,51,0.10);
  box-shadow:0 14px 34px rgba(23,32,51,0.06);
  color:var(--slate);
}

.quick-card span,
.panel-head,
dt,
.service-tags span{
  color:var(--teal);
}

.quick-card h2,
.quote-copy h2,
.office-card h2,
dd,
.contact-list strong{
  color:var(--slate);
}

.hero-copy p,
.quick-card p,
.quote-copy p,
.office-card p,
.contact-list small{
  color:var(--slate-soft);
}

.contact-list a:hover,
.quick-card:hover{
  background:#F8FAFC;
  border-color:rgba(184,0,18,.26);
}

.icon{
  background:var(--color-secondary);
  color:var(--navy);
}

.status-dot{
  background:var(--teal);
}

.service-tags span{
  background:#F8FAFC;
  border-color:rgba(23,32,51,0.10);
}

input,
select,
textarea{
  background:#fff;
  border-color:rgba(23,32,51,0.14);
}

.map-search-link{
  background:var(--teal);
  color:#fff;
}

/* Dark blended contact hero with readable glass content. */
.contact-page header.scrolled .nav-links a,
.contact-page header.scrolled .dropdown-toggle{
  color:rgba(255,255,255,.78);
}

.contact-page header.scrolled .nav-links a:hover,
.contact-page header.scrolled .nav-links a.active,
.contact-page header.scrolled .dropdown:hover .dropdown-toggle{
  color:#ffcc00;
}

.contact-page header.scrolled .nav-links a::after,
.contact-page header.scrolled .dropdown-toggle::after{
  background:#ffcc00;
}

.contact-hero{color:#fff; background:radial-gradient(circle at 12% 8%,rgba(184,0,18,.32),transparent 27%),radial-gradient(circle at 88% 0%,rgba(255,204,0,.14),transparent 28%),linear-gradient(128deg,var(--color-footer),var(--color-nav) 48%,#2B1A21 100%);}
.contact-hero::before{opacity:.55;}
.contact-hero h1{color:#fff;}
.contact-hero .hero-copy p{color:rgba(255,255,255,.74);}
.contact-hero .eyebrow{color:#ffcc00;}
.contact-hero .eyebrow::before{background:#ffcc00;}
.contact-hero .contact-panel{background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045)); border-color:rgba(255,255,255,.15); box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 50px rgba(0,0,0,.22); backdrop-filter:blur(12px); color:#fff;}
.contact-hero .panel-head{color:#ffcc00;}
.contact-hero .status-dot{background:var(--teal);}
.contact-hero .contact-list a,
.contact-hero .contact-list div{
  background:#fff;
  border-color:rgba(23,32,51,.10);
  box-shadow:0 14px 34px rgba(0,0,0,.12);
  color:var(--slate);
}
.contact-hero .contact-list a:hover{
  background:#F8FAFC;
  border-color:rgba(255,204,0,.72);
}
.contact-hero .icon{
  background:var(--navy);
  color:#ffcc00;
}
.contact-hero .contact-list small{
  color:var(--slate-soft);
}
.contact-hero .contact-list strong{
  color:var(--slate);
}
.contact-hero dt{color:rgba(255,255,255,.58);}
.contact-hero dd{color:#fff;}
.contact-hero .status-dot{box-shadow:0 0 0 4px rgba(184,0,18,.20);}
