:root { --contact-yellow: #f4b400; --contact-dark: #0e0e0e; --contact-muted: #b8b8b8; --contact-line: rgba(255,255,255,.08); }
.page-contact { background: var(--contact-dark); color: #fff; }
.page-contact .site-header { position: fixed; background: rgba(14,14,14,.93); border-color: var(--contact-line); }
.contact-hero { min-height: 590px; padding: 150px 0 85px; background: radial-gradient(circle at 8% 30%, rgba(244,180,0,.12), transparent 31%), #111; display: flex; align-items: center; overflow: hidden; }
.contact-hero .breadcrumb { margin: 0 0 25px; font-size: 13px; }.contact-hero .breadcrumb a { color: #fff; }.contact-hero .breadcrumb-item.active,.contact-hero h1 span { color: var(--contact-yellow); }.contact-hero .breadcrumb-item + .breadcrumb-item::before { color: var(--contact-muted); }
.contact-hero h1 { max-width: 620px; margin: 0 0 18px; font-size: clamp(40px,4.7vw,64px); font-weight: 800; line-height: 1.1; text-transform: uppercase; }.contact-hero p:not(.eyebrow) { max-width: 560px; color: var(--contact-muted); line-height: 1.8; margin-bottom: 28px; }
.contact-hero-image { height: 385px; border-radius: 22px; overflow: hidden; border: 1px solid var(--contact-line); box-shadow: 0 22px 50px rgba(0,0,0,.28); position: relative; }.contact-hero-image::after { content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(14,14,14,.45),transparent); }.contact-hero-image img { width:100%; height:100%; object-fit:cover; }
.contact-info-section { background:#fff; padding: 80px 0; color:#111; }.contact-info-card { min-height:210px; padding:28px; border:1px solid #ececec; border-radius:18px; box-shadow:0 12px 30px rgba(0,0,0,.06); transition:transform .35s ease,box-shadow .35s ease; }.contact-info-card:hover,.quick-services a:hover,.why-contact-grid article:hover { transform:translateY(-10px); box-shadow:0 25px 42px rgba(0,0,0,.13); }.contact-info-card>span { width:54px;height:54px;border-radius:50%;background:var(--contact-yellow);display:grid;place-items:center;font-size:25px;margin-bottom:20px; }.contact-info-card h2 { font-size:18px;font-weight:700;margin:0 0 8px; }.contact-info-card p,.contact-info-card a { color:#5b5b5b;font-size:13px;line-height:1.7;margin:0; }.contact-info-card a { font-weight:600;color:#111;display:block;overflow-wrap:anywhere; }
.contact-main { padding:90px 0; background:#111; }.contact-form-card,.office-card { border:1px solid var(--contact-line); border-radius:18px; padding:38px; background:rgba(255,255,255,.035); box-shadow:0 18px 40px rgba(0,0,0,.16); }.contact-form-card h2,.office-card h2 { font-size:30px;font-weight:700;margin:0 0 8px; }.intro { color:var(--contact-muted);font-size:14px;margin:0 0 27px; }.contact-form-card label { display:block;font-size:13px;font-weight:600;margin-bottom:8px; }.contact-form-card .form-control,.contact-form-card .form-select { min-height:52px;border:1px solid var(--contact-line);border-radius:8px;background:rgba(255,255,255,.06);color:#fff;padding:12px 14px;box-shadow:none; }.contact-form-card textarea.form-control { min-height:130px;resize:vertical; }.contact-form-card .form-select option { color:#111; }.contact-form-card .form-control::placeholder { color:#8c8c8c; }.contact-form-card .form-control:focus,.contact-form-card .form-select:focus { border-color:var(--contact-yellow); }.contact-form-card .form-check-label { color:var(--contact-muted);font-weight:400; }.contact-form-card .form-check-input:checked { background-color:var(--contact-yellow);border-color:var(--contact-yellow); }.contact-form-card a { color:var(--contact-yellow); }
.map-card { height:270px;border:1px solid var(--contact-line);border-radius:18px;overflow:hidden;margin-bottom:24px; }.map-card iframe { width:100%;height:100%;border:0;filter:grayscale(1) invert(.9) contrast(.85); }.office-card p:not(.eyebrow) { color:var(--contact-muted);font-size:13px;line-height:1.7;margin:0 0 12px; }.office-card p i { color:var(--contact-yellow);font-size:18px;margin-right:8px;vertical-align:middle; }.office-card p a { color:var(--contact-muted); }.office-card .socials { margin-top:24px; }.office-card .socials a { background:var(--contact-yellow);color:#111; }
.page-contact .section-heading h2 { color:#fff; }.page-contact .section-heading p:last-child { color:var(--contact-muted); }.service-select { padding:90px 0;background:#0e0e0e; }.quick-services { display:grid;grid-template-columns:repeat(4,1fr);gap:18px; }.quick-services a { min-height:130px;border:1px solid var(--contact-line);border-radius:18px;background:rgba(255,255,255,.035);padding:23px;display:flex;flex-direction:column;justify-content:center;gap:13px;font-size:15px;font-weight:700;transition:transform .35s ease,box-shadow .35s ease; }.quick-services i { width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--contact-yellow);color:#111;font-size:21px; }
.contact-why { padding:90px 0;background:linear-gradient(135deg,#0e0e0e,#151515); }.why-contact-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px; }.why-contact-grid article { border:1px solid var(--contact-line);border-radius:18px;padding:27px;background:rgba(255,255,255,.035);transition:transform .35s ease,box-shadow .35s ease; }.why-contact-grid article>i { color:var(--contact-yellow);font-size:31px; }.why-contact-grid h3 { font-size:18px;font-weight:700;margin:15px 0 8px; }.why-contact-grid p { margin:0;color:var(--contact-muted);font-size:13px;line-height:1.7; }
.faq-section { padding:90px 0;background:#fff;color:#111; }.faq-section .section-heading h2 { color:#111; }.faq-section .section-heading p:last-child { color:#666; }.faq-section .accordion { max-width:900px;margin:auto; }.faq-section .accordion-item { border:1px solid #e8e8e8;border-radius:12px!important;overflow:hidden;margin-bottom:14px; }.faq-section .accordion-button { font-weight:600;box-shadow:none;padding:20px 24px; }.faq-section .accordion-button:not(.collapsed) { color:#111;background:#fff8e4; }.faq-section .accordion-button:not(.collapsed)::after { filter:none; }.faq-section .accordion-body { color:#666;line-height:1.75;font-size:14px;padding:0 24px 22px; }
.page-contact .cta-band { padding:48px 0; }.page-contact .cta-band h2 { max-width:600px;font-size:clamp(29px,3vw,42px); }.page-contact .btn:hover { transform:translateY(-3px) scale(1.05); }
@media(max-width:991px){.contact-hero{padding-top:125px}.quick-services{grid-template-columns:repeat(2,1fr)}.why-contact-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.contact-hero{min-height:auto;padding:120px 0 65px}.contact-hero-image{height:270px}.contact-info-section,.contact-main,.service-select,.contact-why,.faq-section{padding:60px 0}.contact-form-card,.office-card{padding:25px 20px}.quick-services,.why-contact-grid{grid-template-columns:1fr}.quick-services a{min-height:105px}.map-card{height:240px}.page-contact .cta-actions .btn{width:100%}}
