/* Contact page: compact fields and a clear direct-call card. */
body .contact-layout.contact-layout-refresh { display:grid!important; grid-template-columns:minmax(0,1fr) 320px!important; gap:24px!important; align-items:start!important; }
body .contact-layout-refresh .budget-form,body .contact-layout-refresh .contact-card { padding:28px!important; border:1px solid #345063!important; border-radius:22px!important; background:linear-gradient(140deg,#0b1c2c,#142b3c)!important; box-shadow:0 14px 35px #07152516!important; }
body .contact-layout-refresh .budget-form { display:grid!important; gap:16px!important; }
body .contact-layout-refresh .budget-form::before,body .contact-layout-refresh .budget-form::after,body .contact-layout-refresh .contact-card::after { display:none!important; }
body .contact-layout-refresh .contact-form-head { margin:0 0 4px!important; padding:0 0 20px!important; gap:8px!important; }
body .contact-layout-refresh .contact-form-head > span { padding:0!important; border:0!important; background:none!important; color:#ffb347!important; font-size:10px!important; letter-spacing:.1em!important; }
body .contact-layout-refresh .contact-form-head strong { font-size:28px!important; line-height:1.15!important; }
body .contact-layout-refresh .contact-form-head small { font-size:13px!important; color:#b9c7d2!important; }
body .contact-layout-refresh .form-grid { display:grid!important; grid-template-columns:1fr 1fr!important; gap:16px!important; margin:0!important; }
body .contact-layout-refresh .budget-form label { display:grid!important; gap:7px!important; margin:0!important; color:#e4ecf2!important; font-size:13px!important; font-weight:650!important; }
body .contact-layout-refresh .budget-form input:not(.hp),body .contact-layout-refresh .budget-form textarea { width:100%!important; min-width:0; margin:0!important; padding:12px 14px!important; border:1px solid #425568!important; border-radius:11px!important; background:#ffffff08!important; color:#fff!important; box-shadow:none!important; font-size:14px!important; font-weight:400!important; }
body .contact-layout-refresh .budget-form input:not(.hp) { height:46px!important; min-height:46px!important; }
body .contact-layout-refresh .budget-form textarea { min-height:112px!important; height:112px; resize:vertical; }
body .contact-layout-refresh .budget-form input::placeholder,body .contact-layout-refresh .budget-form textarea::placeholder { color:#99adbd!important; opacity:1; font-weight:400!important; }
body .contact-layout-refresh .budget-form input:focus-visible,body .contact-layout-refresh .budget-form textarea:focus-visible { outline:2px solid #ffb347!important; outline-offset:2px; }
body .contact-layout-refresh .budget-form button { display:flex!important; justify-content:center; align-items:center; gap:12px; min-height:46px!important; margin:2px 0 0!important; padding:12px 20px!important; border-radius:11px!important; border:0!important; box-shadow:none!important; font-size:14px!important; }
body .contact-layout-refresh svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
body .contact-layout-refresh .contact-card { position:relative!important; top:auto!important; transform:none!important; margin:0!important; display:flex!important; flex-direction:column; align-items:flex-start; gap:16px!important; }
body .contact-layout-refresh .contact-card .eyebrow { padding:0!important; background:none!important; border:0!important; font-size:11px!important; color:#ffb347!important; }
body .contact-layout-refresh .contact-card .eyebrow::before { display:none!important; }
body .contact-layout-refresh .contact-card > a:not(.contact-call-action) { font-size:29px!important; line-height:1.15; margin:0!important; letter-spacing:-.03em; text-decoration:none!important; }
body .contact-layout-refresh .contact-card p { margin:0!important; font-size:14px!important; line-height:1.6; color:#bdcbd6!important; }
body .contact-layout-refresh .contact-card-note { margin:0!important; padding:6px 9px!important; font-size:11px!important; }
body .contact-layout-refresh .contact-card > .contact-call-action { display:flex!important; justify-content:center; align-items:center; gap:9px; width:100%!important; min-height:44px!important; padding:10px 15px!important; background:#ffb347!important; color:#071525!important; border-radius:11px!important; font-size:14px!important; font-weight:800; text-decoration:none!important; }
body .contact-layout-refresh .contact-steps { display:grid!important; width:100%; gap:14px!important; margin:4px 0 0!important; padding-top:20px!important; border-top:1px solid #ffffff16; }
body .contact-layout-refresh .contact-steps span { display:flex!important; align-items:center; min-height:28px!important; padding:0 0 0 39px!important; border:0!important; background:none!important; box-shadow:none!important; font-size:13px!important; color:#dbe6ed!important; }
body .contact-layout-refresh .contact-steps span::before { left:0!important; top:50%!important; transform:translateY(-50%)!important; width:27px!important; height:27px!important; border:1px solid #ffb34750!important; background:#ffb34710!important; color:#ffb347!important; box-shadow:none!important; font-size:11px!important; }
@media(max-width:900px) { body .contact-layout.contact-layout-refresh { grid-template-columns:minmax(0,1fr)!important; } }
@media(max-width:560px) { body .contact-layout-refresh .budget-form,body .contact-layout-refresh .contact-card { padding:20px!important; border-radius:18px!important; } body .contact-layout-refresh .form-grid { grid-template-columns:minmax(0,1fr)!important; gap:14px!important; } body .contact-layout-refresh .contact-form-head strong { font-size:24px!important; } body .contact-layout-refresh .budget-form input:not(.hp) { font-size:16px!important; } }
body .contact-layout-refresh .budget-form input,body .contact-layout-refresh .budget-form textarea { font-family:inherit!important; }
body .contact-layout-refresh .contact-card .eyebrow { box-shadow:none!important; }
body .contact-layout-refresh .contact-card .eyebrow::after { display:none!important; }
@media(max-width:560px) { body .contact-layout-refresh .budget-form textarea { font-size:16px!important; } }

/* Direct contact: clear hierarchy and a compact service timeline. */
body .contact-layout-refresh .contact-card.contact-direct { gap:18px!important;padding:26px!important;border-color:#ffffff18!important;background:radial-gradient(ellipse at top right,#25425755,transparent 65%),#0b2030!important;box-shadow:0 16px 36px #0715251c!important; }
.contact-direct-heading { display:flex;align-items:center;gap:12px;width:100%; }
.contact-direct-icon { display:grid;place-items:center;flex:0 0 40px;height:40px;border:1px solid #ff9a4338;border-radius:12px;background:#ff9a4310;color:#ffad65; }
body .contact-layout-refresh .contact-direct .eyebrow { display:block;margin:0 0 5px!important;font-size:9px!important;letter-spacing:.14em!important;color:#ffad65!important; }
body .contact-layout-refresh .contact-direct h2 { margin:0;color:#eef5fa;font:650 14px/1.4 system-ui;letter-spacing:-.01em; }
body .contact-layout-refresh .contact-card.contact-direct > a:not(.contact-call-action) { font-size:32px!important;font-weight:750;letter-spacing:-.035em;line-height:1.2;color:#fff!important;margin:4px 0 -10px!important;font-variant-numeric:tabular-nums; }
body .contact-layout-refresh .contact-direct p { font-size:13px!important;line-height:1.6; }
.contact-direct-location { display:flex;align-items:center;gap:7px;color:#a7bece;font:500 11px/1.5 system-ui; }
body .contact-layout-refresh .contact-direct-location svg { width:15px;height:15px;color:#ffad65; }
body .contact-layout-refresh .contact-card.contact-direct > .contact-call-action { min-height:48px!important;margin:2px 0 0!important;border:1px solid #ffb968!important;border-radius:12px!important;background:linear-gradient(110deg,#ffae48,#ff8a24)!important;font-weight:700;box-shadow:inset 0 1px #ffffff35,0 5px 16px #0002!important; }
body .contact-layout-refresh .contact-direct .contact-call-action:hover { filter:brightness(1.08); }
.contact-direct-process { width:100%;margin-top:2px;padding-top:20px;border-top:1px solid #ffffff12; }
body .contact-layout-refresh .contact-direct-process h3 { margin:0 0 17px;font:600 10px/1.4 system-ui;text-transform:uppercase;letter-spacing:.12em;color:#8faabc; }
.contact-direct-process ol { list-style:none;counter-reset:contact-step;margin:0;padding:0; }
.contact-direct-process li { position:relative;counter-increment:contact-step;padding:0 0 20px 39px; }
.contact-direct-process li:last-child { padding-bottom:0; }
.contact-direct-process li:not(:last-child)::after { content:'';position:absolute;left:13px;top:29px;bottom:3px;width:1px;background:#ffffff12; }
.contact-direct-process li::before { content:counter(contact-step,decimal-leading-zero);position:absolute;top:0;left:0;display:grid;place-items:center;width:27px;height:27px;border:1px solid #ffae4833;border-radius:9px;background:#ffae4808;color:#ffb673;font:600 10px/1 system-ui; }
.contact-direct-process strong { display:block;padding-top:1px;color:#e9f1f7;font:600 12px/1.5 system-ui; }
.contact-direct-process small { display:block;margin-top:3px;color:#9db4c5;font:400 11px/1.6 system-ui; }
body .contact-layout-refresh .contact-direct a:focus-visible { outline:2px solid #ffb673;outline-offset:4px; }
@media(max-width:360px) { body .contact-layout-refresh .contact-card.contact-direct { padding:20px!important; } body .contact-layout-refresh .contact-card.contact-direct > a:not(.contact-call-action) { font-size:29px!important; } }
