:root { --fx-accent:var(--awd-color-accent); --fx-accent-hover:var(--awd-color-accent-hover); --fx-accent-ink:var(--awd-color-accent-ink); --fx-dark:var(--awd-color-bg-dark); --fx-dark-2:var(--awd-color-dark-2); --fx-rail:var(--awd-color-rail); --fx-cream:var(--awd-color-bg); --fx-warm:var(--awd-color-bg-alt); --fx-edge:var(--awd-color-border); --fx-ink:var(--awd-color-text); --fx-body:var(--awd-color-body); --fx-muted:var(--awd-color-text-muted); --fx-dim:var(--awd-color-dim); --fx-hair:var(--awd-color-hairline-dark); --fx-inv:var(--awd-color-text-inverse); --fx-card:var(--awd-color-card); --fx-pill:var(--awd-color-pill); --fx-warm-2:var(--awd-color-warm-2); --fx-clay:var(--awd-color-clay); --fx-clay-ink:var(--awd-color-clay-ink); --fx-clay-body:var(--awd-color-clay-body); --fx-clay-kicker:var(--awd-color-clay-kicker); --awd-header-h:76px; }
.page-fix { font-size:17px; line-height:1.65; }
.page-fix *, .page-fix *::before, .page-fix *::after { box-sizing:border-box; }
.page-fix h1 { max-width:13ch; margin:0 0 22px; font-size:clamp(35px,4.3vw,59px); font-weight:300; letter-spacing:-.035em; line-height:1.06; }
.page-fix h2 { margin:0 0 18px; font-size:clamp(29px,3.55vw,44px); font-weight:300; letter-spacing:-.025em; line-height:1.14; }
.page-fix h3 { margin:0 0 10px; font-size:20px; font-weight:500; letter-spacing:-.01em; line-height:1.3; }
.page-fix .f-title-accent { color:var(--fx-accent); font-style:normal; }
.page-fix .kicker { margin:0 0 14px; color:var(--fx-accent); font-size:11.5px; font-weight:600; letter-spacing:.24em; text-transform:uppercase; }
.page-fix .lede { max-width:59ch; margin:0; font-size:17.5px; line-height:1.6; }
.page-fix .btn { min-height:48px; display:inline-flex; align-items:center; justify-content:center; padding:15px 30px; border:0; border-radius:8px; background:var(--fx-accent); color:var(--fx-dark-2); font:600 15px/1.4 var(--awd-font-body); text-align:center; text-decoration:none; cursor:pointer; transition:background .22s,transform .22s; }
.page-fix .btn:hover { background:var(--fx-accent-hover); transform:translateY(-2px); }
.page-fix .btn-ghost { border:1px solid color-mix(in srgb,var(--fx-accent) 50%,transparent); background:transparent; color:var(--fx-accent); }
.page-fix .btn-ghost:hover { background:color-mix(in srgb,var(--fx-accent) 12%,transparent); transform:none; }
.page-fix section[class*="ground-"] { position:relative; overflow:hidden; padding:96px 0; }
.page-fix .ground-hero { background:var(--awd-gradient-hero); color:var(--fx-inv); }
.page-fix section[class*="ground-"].ground-hero { padding-top:calc(var(--awd-header-h) + var(--wp-admin--admin-bar--height,0px) + 62px); padding-bottom:86px; }
.page-fix .ground-dark { background:var(--fx-dark); color:var(--fx-inv); }
.page-fix .ground-dark2 { background:var(--fx-dark-2); color:var(--fx-dim); }
.page-fix .ground-cream { background:var(--fx-cream); color:var(--fx-ink); }
.page-fix .ground-warm { background:var(--fx-warm); color:var(--fx-ink); }
.page-fix .ground-clay { background:var(--fx-clay); color:var(--fx-clay-body); }
.page-fix .ground-hero .lede, .page-fix .ground-dark .lede, .page-fix .ground-dark2 .lede { color:var(--fx-dim); }
.page-fix .ground-cream .lede, .page-fix .ground-warm .lede { color:var(--fx-body); }
.page-fix .ground-dark h2, .page-fix .ground-dark h3, .page-fix .ground-hero h2, .page-fix .ground-hero h3 { color:var(--fx-inv); }
.page-fix .ground-clay h2 { color:var(--fx-clay-ink); }
.page-fix .ground-clay .kicker { color:var(--fx-clay-kicker); }
.page-fix .ground-clay .f-title-accent { color:var(--fx-clay-ink); }
.page-fix .ground-cream::before, .page-fix .ground-warm::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(80% 60% at 85% -10%,color-mix(in srgb,var(--fx-accent) 13%,transparent),transparent 60%); }
.page-fix .ground-warm::before { background:radial-gradient(70% 60% at 10% 0%,color-mix(in srgb,var(--fx-accent) 16%,transparent),transparent 62%); }
.page-fix .wrap { max-width:1120px; position:relative; z-index:2; padding-right:24px; padding-left:24px; }
.page-fix [hidden] { display:none !important; }
.f-section-head { max-width:800px; }
.f-section-head .lede { margin-top:16px; }
.f-narrow { max-width:850px !important; }
.f-hero { display:grid; grid-template-columns:14px minmax(0,1fr); gap:36px; align-items:stretch; }
.f-rail { min-height:300px; position:relative; overflow:hidden; border-radius:2px; background:var(--fx-rail); }
.f-rail::after { content:""; position:absolute; right:0; left:0; height:42%; background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--fx-accent) 62%,transparent),transparent); animation:f-rail-travel 8s cubic-bezier(.45,0,.55,1) infinite; }
@keyframes f-rail-travel { 0% { top:-42%; } 100% { top:100%; } }
.f-hero-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:58px; align-items:center; }
.f-hero-grid > * { min-width:0; }
.f-cta-row { display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.f-intake { position:relative; overflow:hidden; padding:25px; border:1px solid color-mix(in srgb,var(--fx-accent) 25%,transparent); border-radius:16px; background:color-mix(in srgb,var(--fx-inv) 5%,transparent); box-shadow:0 28px 70px color-mix(in srgb,var(--fx-dark) 65%,transparent); }
.f-intake-head { display:grid; grid-template-columns:11px 1fr auto; gap:10px; align-items:center; padding-bottom:17px; border-bottom:1px solid var(--fx-rail); }
.f-intake-head > span { width:9px; height:9px; border-radius:50%; background:var(--fx-accent); box-shadow:0 0 0 5px color-mix(in srgb,var(--fx-accent) 12%,transparent); }
.f-intake-head b { color:var(--fx-inv); font-size:12px; letter-spacing:.13em; text-transform:uppercase; }
.f-intake-head small { color:var(--fx-muted); font-size:10px; }
.f-scan { position:absolute; top:58px; right:0; left:0; height:1px; background:linear-gradient(90deg,transparent,var(--fx-accent),transparent); opacity:.7; animation:f-scan-down 5s ease-in-out infinite; }
@keyframes f-scan-down { 0%,12% { transform:translateY(0); opacity:0; } 25% { opacity:.75; } 75% { opacity:.75; } 88%,100% { transform:translateY(204px); opacity:0; } }
.f-intake-row { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0; border-bottom:1px solid var(--fx-rail); }
.f-intake-row span { color:var(--fx-dim); font-size:12.5px; }
.f-intake-row b { color:var(--fx-accent); font-size:11px; font-weight:600; }
.f-intake-result { display:grid; grid-template-columns:1fr auto; gap:2px 15px; align-items:end; padding-top:19px; }
.f-intake-result small { color:var(--fx-muted); font-size:10.5px; text-transform:uppercase; letter-spacing:.12em; }
.f-intake-result strong { grid-row:1/3; grid-column:2; color:var(--fx-accent); font-family:var(--awd-font-display); font-size:31px; font-weight:500; line-height:1; }
.f-intake-result span { color:var(--fx-dim); font-size:11px; }
.page-fix section.f-proof-strip { padding:0; }
.f-stats { display:grid; grid-template-columns:repeat(4,1fr); padding-top:30px !important; padding-bottom:30px !important; }
.f-stats > div { padding:4px 25px; border-left:1px solid var(--fx-hair); }
.f-stats > div:first-child { padding-left:0; border-left:0; }
.f-stats b { display:block; color:var(--fx-accent); font-family:var(--awd-font-display); font-size:28px; font-weight:500; line-height:1.05; }
.f-stats b span { color:inherit; }
.f-stats small { display:block; margin-top:7px; color:var(--fx-dim); font-size:12px; line-height:1.35; }
.f-fault-layout { display:grid; grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr); gap:26px; align-items:start; margin-top:38px; }
.f-fault-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.f-fault-card { min-height:82px; display:grid; grid-template-columns:40px minmax(0,1fr) 20px; gap:12px; align-items:center; width:100%; padding:14px; border:1px solid var(--fx-edge); border-radius:12px; background:var(--fx-card); color:var(--fx-ink); font:500 13px/1.4 var(--awd-font-body); text-align:left; cursor:pointer; transition:border-color .2s,background .2s,transform .2s,box-shadow .2s; }
.f-fault-card:hover { border-color:color-mix(in srgb,var(--fx-accent) 65%,var(--fx-edge)); transform:translateY(-2px); box-shadow:0 12px 26px color-mix(in srgb,var(--fx-ink) 8%,transparent); }
.f-fault-card.is-selected { border-color:var(--fx-accent); background:color-mix(in srgb,var(--fx-pill) 68%,var(--fx-card)); box-shadow:inset 0 0 0 1px var(--fx-accent); }
.f-fault-icon { width:40px; height:40px; display:flex; align-items:center; justify-content:center; border-radius:10px; background:var(--fx-warm-2); color:var(--fx-accent-ink); }
.f-fault-card i { color:var(--fx-accent-ink); font-size:18px; font-style:normal; transition:transform .2s; }
.f-fault-card:hover i, .f-fault-card.is-selected i { transform:translateX(3px); }
.f-fault-preview { position:sticky; top:calc(var(--awd-header-h) + 22px); padding:27px; border-radius:15px; background:var(--fx-dark); color:var(--fx-inv); box-shadow:0 24px 54px color-mix(in srgb,var(--fx-ink) 17%,transparent); }
.f-preview-kicker { margin:0 0 7px; color:var(--fx-accent); font-size:10.5px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.f-fault-preview h3 { margin-bottom:14px; color:var(--fx-inv); font-size:22px; }
.f-fault-preview > p:not(.f-preview-kicker) { margin:0; color:var(--fx-dim); font-size:13.5px; }
.f-preview-checks { margin:18px 0; padding:15px 0; border-top:1px solid var(--fx-rail); border-bottom:1px solid var(--fx-rail); }
.f-preview-checks small, .f-preview-price small { display:block; color:var(--fx-muted); font-size:10.5px; text-transform:uppercase; letter-spacing:.11em; }
.f-preview-checks ul { display:grid; gap:6px; margin:9px 0 0; padding:0; list-style:none; }
.f-preview-checks li { position:relative; padding-left:18px; color:var(--fx-dim); font-size:12.5px; }
.f-preview-checks li::before { content:""; width:6px; height:6px; position:absolute; top:.62em; left:0; border-radius:50%; background:var(--fx-accent); }
.f-preview-price { display:grid; grid-template-columns:1fr auto; gap:2px 12px; align-items:end; margin-bottom:18px; }
.f-preview-price b { grid-row:1/3; grid-column:2; color:var(--fx-inv); font-family:var(--awd-font-display); font-size:19px; font-weight:500; }
.f-preview-price span { color:var(--fx-muted); font-size:10.5px; }
.f-fault-preview .btn { width:100%; }
.f-keep-grid { display:grid; grid-template-columns:1fr 1fr; gap:66px; align-items:center; }
.f-layer-card { display:grid; gap:9px; padding:22px; border:1px solid var(--fx-edge); border-radius:15px; background:var(--fx-card); box-shadow:0 18px 45px color-mix(in srgb,var(--fx-ink) 9%,transparent); }
.f-layer-card article { display:grid; grid-template-columns:68px 1fr; gap:16px; align-items:center; padding:15px; border-radius:10px; background:var(--fx-warm-2); }
.f-layer-card article > span { color:var(--fx-accent-ink); font-family:var(--awd-font-display); font-size:15px; }
.f-layer-card b { display:block; color:var(--fx-ink); font-size:13.5px; }
.f-layer-card small { display:block; margin-top:2px; color:var(--fx-body); font-size:11.5px; }
.f-cap-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; margin-top:40px; }
.f-cap-grid article { padding:25px; border:1px solid var(--fx-hair); border-radius:14px; background:var(--fx-dark-2); }
.f-cap-grid article > span { width:48px; height:48px; display:flex; align-items:center; justify-content:center; margin-bottom:24px; border-radius:11px; background:color-mix(in srgb,var(--fx-accent) 12%,transparent); color:var(--fx-accent); }
.f-cap-grid h3 { color:var(--fx-inv); font-size:16px; }
.f-cap-grid p { margin:0; color:var(--fx-dim); font-size:13px; }
.f-limit { max-width:78ch; margin:25px 0 0; padding:15px 18px; border-left:2px solid var(--fx-accent); background:color-mix(in srgb,var(--fx-inv) 4%,transparent); color:var(--fx-dim); font-size:13px; }
.f-process { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; position:relative; margin-top:44px; }
.f-process-line { position:absolute; top:23px; right:12%; left:12%; height:2px; overflow:hidden; background:var(--fx-edge); }
.f-process-line i { width:25%; height:100%; display:block; background:linear-gradient(90deg,transparent,var(--fx-accent),transparent); animation:f-process-run 6s ease-in-out infinite; }
@keyframes f-process-run { 0%,10% { transform:translateX(-100%); } 22%,32% { transform:translateX(100%); } 44%,54% { transform:translateX(300%); } 66%,76% { transform:translateX(500%); } 88%,100% { transform:translateX(700%); } }
.f-process article { position:relative; z-index:2; padding-right:14px; }
.f-process article > span { width:46px; height:46px; display:flex; align-items:center; justify-content:center; margin-bottom:24px; border:1px solid var(--fx-edge); border-radius:50%; background:var(--fx-cream); color:var(--fx-accent-ink); font-family:var(--awd-font-display); }
.f-process h3 { font-size:16px; }
.f-process p { margin:0; color:var(--fx-body); font-size:13px; }
.f-price-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:40px; }
.f-price-grid article { display:flex; flex-direction:column; min-height:380px; padding:25px; border:1px solid var(--fx-edge); border-radius:14px; background:var(--fx-card); }
.f-price-grid article.is-entry { border-color:var(--fx-accent); background:color-mix(in srgb,var(--fx-pill) 65%,var(--fx-card)); }
.f-price-grid article > p { margin:0 0 12px; color:var(--fx-accent-ink); font-size:10.5px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.f-price-grid strong { display:block; margin-bottom:18px; color:var(--fx-ink); font-family:var(--awd-font-display); font-size:28px; font-weight:500; line-height:1.1; }
.f-price-grid h3 { min-height:52px; font-size:17px; }
.f-price-grid ul { display:grid; gap:8px; margin:12px 0 24px; padding:17px 0 0; border-top:1px solid var(--fx-edge); list-style:none; }
.f-price-grid li { position:relative; padding-left:16px; color:var(--fx-body); font-size:12.5px; }
.f-price-grid li::before { content:""; width:5px; height:5px; position:absolute; top:.62em; left:0; border-radius:50%; background:var(--fx-accent); }
.f-price-grid small { margin-top:auto; color:var(--fx-muted); font-size:10.5px; }
.f-experience-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:68px; align-items:center; }
.f-experience-grid > div > p:not(.kicker) { margin:0; color:var(--fx-clay-body); }
.f-repair-list { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0; padding:0; list-style:none; }
.f-repair-list li { min-height:92px; display:flex; align-items:center; padding:16px 17px 16px 45px; position:relative; border:1px solid color-mix(in srgb,var(--fx-clay-ink) 18%,transparent); border-radius:11px; background:color-mix(in srgb,var(--fx-cream) 15%,transparent); color:var(--fx-clay-ink); font-size:12.5px; font-weight:600; line-height:1.45; }
.f-repair-list li::before { content:"✓"; position:absolute; left:17px; color:var(--fx-clay-ink); font-size:16px; }
.f-route-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:38px; }
.f-route-grid article { padding:24px; border:1px solid var(--fx-edge); border-radius:13px; background:var(--fx-card); }
.f-route-grid h3 { min-height:52px; font-size:16px; }
.f-route-grid p { min-height:90px; margin:0 0 18px; color:var(--fx-body); font-size:12.5px; }
.f-route-grid a { color:var(--fx-accent-ink); font-size:12.5px; font-weight:600; }
.f-route-grid a span { display:inline-block; margin-left:4px; transition:transform .2s; }
.f-route-grid a:hover span { transform:translateX(3px); }
.f-handover { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; margin-top:50px; padding:32px; border-radius:15px; background:var(--fx-dark); color:var(--fx-inv); }
.f-handover h2 { margin:0; color:var(--fx-inv); font-size:31px; }
.f-handover ul { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0; padding:0; list-style:none; }
.f-handover li { position:relative; padding-left:18px; color:var(--fx-dim); font-size:12.5px; }
.f-handover li::before { content:""; width:6px; height:6px; position:absolute; top:.65em; left:0; border-radius:50%; background:var(--fx-accent); }
.f-faqs { margin-top:34px; border-top:1px solid var(--fx-edge); }
.f-faqs details { border-bottom:1px solid var(--fx-edge); }
.f-faqs summary { position:relative; padding:20px 48px 20px 0; color:var(--fx-ink); font-size:16px; font-weight:600; list-style:none; cursor:pointer; }
.f-faqs summary::-webkit-details-marker { display:none; }
.f-faqs summary::after { content:"+"; position:absolute; top:17px; right:10px; color:var(--fx-accent-ink); font-size:24px; font-weight:300; }
.f-faqs details[open] summary::after { content:"−"; }
.f-faqs details > div { max-width:68ch; padding:0 50px 20px 0; color:var(--fx-body); font-size:15px; }
.f-faqs details > div p { margin:0; }
.f-request-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:68px; align-items:start; }
.f-request-points { display:grid; gap:10px; margin:28px 0 0; padding:0; list-style:none; }
.f-request-points li { position:relative; padding-left:20px; color:var(--fx-dim); font-size:13px; }
.f-request-points li::before { content:""; width:7px; height:7px; position:absolute; top:.65em; left:0; border-radius:50%; background:var(--fx-accent); }
.f-form, .f-form-ok { display:grid; gap:17px; padding:28px; border:1px solid var(--fx-hair); border-radius:15px; background:var(--fx-dark-2); }
.f-form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.f-form label { display:grid; gap:6px; color:var(--fx-dim); font-size:11px; font-weight:600; letter-spacing:.04em; }
.f-form input, .f-form textarea { width:100%; border:1px solid var(--fx-hair); border-radius:8px; background:color-mix(in srgb,var(--fx-inv) 5%,transparent); color:var(--fx-inv); font:400 15px/1.5 var(--awd-font-body); outline:0; transition:border-color .2s,background .2s; }
.f-form input { min-height:48px; padding:11px 13px; }
.f-form textarea { min-height:132px; padding:12px 13px; resize:vertical; }
.f-form input:focus, .f-form textarea:focus { border-color:var(--fx-accent); background:color-mix(in srgb,var(--fx-inv) 8%,transparent); }
.f-form [aria-invalid="true"] { border-color:var(--fx-accent); }
.f-form-safe, .f-form-note { margin:0; color:var(--fx-muted); font-size:11px; }
.f-form-note { padding:10px 12px; border-left:2px solid var(--fx-accent); background:color-mix(in srgb,var(--fx-accent) 9%,transparent); color:var(--fx-dim); }
.f-form .btn { justify-self:start; }
.f-form-ok h3 { color:var(--fx-accent); }
.f-form-ok p { margin:0; color:var(--fx-dim); }
.f-trap { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }

.page-fix button:focus-visible, .page-fix a:focus-visible, .page-fix summary:focus-visible, .page-fix input:focus-visible, .page-fix textarea:focus-visible { outline:2px solid var(--fx-accent); outline-offset:3px; }
@media(max-width:980px) {
.page-fix section[class*="ground-"] { padding:72px 0; }
.page-fix section[class*="ground-"].ground-hero { padding-top:calc(var(--awd-header-h) + var(--wp-admin--admin-bar--height,0px) + 46px); }
.f-hero-grid { grid-template-columns:1fr; gap:42px; }
.f-intake { max-width:640px; }
.f-fault-layout { grid-template-columns:1fr; }
.f-fault-preview { position:relative; top:auto; }
.f-cap-grid, .f-price-grid, .f-route-grid { grid-template-columns:repeat(2,1fr); }
.f-process { grid-template-columns:repeat(2,1fr); gap:34px 18px; }
.f-process-line { display:none; }
.f-price-grid article { min-height:350px; }
.f-experience-grid { grid-template-columns:1fr; gap:35px; }
.f-request-grid { grid-template-columns:1fr; }
}
@media(max-width:700px) {
.page-fix .wrap { padding-right:20px; padding-left:20px; }
.f-hero { grid-template-columns:8px minmax(0,1fr); gap:20px; }
.f-rail { min-height:260px; }
.f-stats { grid-template-columns:repeat(2,1fr); }
.f-stats > div { padding:8px 12px 18px 0; border-left:0; }
.f-fault-grid { grid-template-columns:1fr; }
.f-keep-grid { grid-template-columns:1fr; gap:34px; }
.f-cap-grid, .f-price-grid, .f-route-grid { grid-template-columns:1fr; }
.f-process { grid-template-columns:1fr; }
.f-process article { display:grid; grid-template-columns:46px 1fr; gap:0 16px; }
.f-process article > span { grid-row:1/3; margin:0; }
.f-process article p { grid-column:2; }
.f-price-grid article { min-height:0; }
.f-repair-list { grid-template-columns:1fr; }
.f-route-grid h3, .f-route-grid p { min-height:0; }
.f-handover { grid-template-columns:1fr; gap:25px; }
.f-request-grid { gap:38px; }
}
@media(max-width:520px) {
.page-fix h1 { font-size:38px; }
.f-cta-row .btn { width:100%; }
.f-intake, .f-fault-preview, .f-form { padding:21px; }
.f-intake-head { grid-template-columns:11px 1fr; }
.f-intake-head small { display:none; }
.f-intake-result { grid-template-columns:1fr; }
.f-intake-result strong { grid-row:auto; grid-column:auto; margin:5px 0; }
.f-preview-price { grid-template-columns:1fr; }
.f-preview-price b { grid-row:auto; grid-column:auto; margin:5px 0; }
.f-layer-card article { grid-template-columns:54px 1fr; }
.f-handover ul, .f-form-row { grid-template-columns:1fr; }
.f-form .btn { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
.f-rail::after, .f-scan, .f-process-line i { animation:none; }
.f-rail::after { top:18%; }
.f-scan { display:none; }
.f-fault-card, .f-route-grid a span { transition:none; }
.f-fault-card:hover { transform:none; }
}
