.repair-page{--repair-ink:#24192d;--repair-muted:#625571;--repair-accent:#663ca1;--repair-line:#e5ddec;--repair-ease:cubic-bezier(.16,1,.3,1);color:var(--repair-ink);padding-bottom:72px}
.repair-page h1,.repair-page h2,.repair-page p,.repair-page figure{margin:0}
.repair-page h2{font-size:clamp(1.65rem,3vw,2.5rem);letter-spacing:-.035em;line-height:1.12}
.repair-page p{line-height:1.6;color:var(--repair-muted)}
.repair-page :is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--repair-accent);outline-offset:3px}
.repair-page :is(section,textarea){scroll-margin-top:28px}
.repair-crumb{display:flex;gap:10px;margin:24px 0;color:var(--repair-muted);font-size:.85rem}
.repair-hero{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,4vw,64px);align-items:center;padding:clamp(20px,4vw,56px);border-radius:28px;background:linear-gradient(115deg,#f3eafb,#faf1e9)}
.repair-intro h1{font-size:clamp(2.3rem,5.6vw,5.2rem);letter-spacing:-.04em;line-height:1.02}
.repair-intro h1 em{color:var(--repair-accent);font-style:normal}
.repair-intro > p{max-width:40ch;margin-top:18px;font-size:1.06rem}
.repair-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:25px}
.repair-page .repair-cta{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:48px;padding:10px 18px;border:1px solid transparent;border-radius:13px;background:var(--repair-accent);color:#fff;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;transition:transform 180ms var(--repair-ease),background-color 180ms ease}
.repair-page .repair-cta:active{transform:translateY(1px)}
.repair-actions a:not(.repair-cta),.repair-request a{color:var(--repair-accent);text-decoration:underline;text-underline-offset:4px}
.repair-intro .repair-location{font-size:.84rem;margin-top:20px}
.repair-photo{position:relative;overflow:hidden;isolation:isolate;aspect-ratio:31/22;border-radius:22px;background:#513477;animation:repair-art-in 500ms var(--repair-ease) both}
.repair-photo img{display:block;width:100%;height:100%;object-fit:cover}
.repair-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#48227275,#794ca83d);pointer-events:none}
.repair-art figcaption{margin-top:8px;color:var(--repair-muted);font-size:.75rem;line-height:1.5}
.repair-art figcaption a{text-decoration:underline;text-underline-offset:2px}
@keyframes repair-art-in{from{transform:translateY(8px);opacity:.72}to{transform:none;opacity:1}}
.repair-services,.repair-process,.repair-request,.repair-faq{margin-top:clamp(44px,7vw,92px)}
.repair-services > p{margin:10px 0 22px}
.repair-services ul,.repair-process ol{padding:0;margin:0;list-style:none}
.repair-services li{border-top:1px solid var(--repair-line)}
.repair-services li:last-child{border-bottom:1px solid var(--repair-line)}
.repair-services a{display:grid;grid-template-columns:42px minmax(180px,.8fr) minmax(0,1fr) 20px;gap:16px;align-items:center;padding:16px 12px;border-radius:12px;color:inherit;text-decoration:none;transition:background-color 180ms ease}
.repair-services svg{width:36px;height:36px;padding:7px;border-radius:9px;background:#f0e7fa;fill:none;stroke:var(--repair-accent);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.repair-services a span{color:var(--repair-muted);font-size:.95rem}
.repair-services a b{color:var(--repair-accent);transition:transform 180ms var(--repair-ease)}
.repair-process ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:22px;counter-reset:repair-step}
.repair-process li{counter-increment:repair-step;padding-top:16px;border-top:1px solid var(--repair-line)}
.repair-process li::before{content:counter(repair-step,decimal-leading-zero);display:block;margin-bottom:12px;color:var(--repair-accent);font-size:.85rem;font-weight:700}
.repair-process li p{margin-top:5px}
.repair-request{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(22px,5vw,72px);padding:clamp(20px,4vw,56px);border-radius:25px;background:#f4eff9}
.repair-request > div p{margin:12px 0 18px}
.repair-request form{display:grid;gap:15px;justify-items:start;min-width:0}
.repair-request label{display:grid;gap:6px;width:100%;font-weight:650}
.repair-request label small{display:contents;font-weight:400;color:var(--repair-muted)}
.repair-request :is(input,select,textarea){box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid #b6a6c5;border-radius:10px;background:#fff;color:var(--repair-ink);font:inherit;font-size:1rem;font-weight:400}
.repair-request textarea{resize:vertical}
.repair-form-note,#repair-status{font-size:.88rem}
#repair-result{width:100%}
.repair-copy{margin-top:10px;padding:9px 13px;border:1px solid #b6a6c5;border-radius:9px;background:white;color:var(--repair-accent);cursor:pointer;font:inherit}
.repair-faq details{border-bottom:1px solid var(--repair-line);padding:16px 0}
.repair-faq summary{font-weight:700;cursor:pointer}
.repair-faq details p{margin-top:10px;max-width:68ch}
@media(hover:hover){.repair-page .repair-cta:hover{background:#513080;transform:translateY(-2px)}.repair-services a:hover{background:#f5eefb}.repair-services a:hover b{transform:translate(2px,-2px)}.repair-copy:hover{background:#eee3f9}}
@media(max-width:760px){.repair-hero,.repair-request{grid-template-columns:1fr}.repair-services a{grid-template-columns:36px minmax(0,1fr) 18px;gap:5px 12px}.repair-services svg,.repair-services b{grid-row:1 / span 2}.repair-services b{grid-column:3}.repair-services a span{grid-column:2}.repair-process ol{grid-template-columns:1fr;gap:15px}}
@media(prefers-reduced-motion:reduce){.repair-page *{transition:none!important;animation:none!important}.repair-page .repair-cta:hover,.repair-services a:hover b{transform:none}}


.repair-prices {
  margin-top: clamp(44px, 7vw, 92px);
  padding: clamp(16px, 4vw, 40px);
  border: 1px solid var(--repair-line);
  border-radius: 25px;
  background: #faf7fd;
}
.repair-prices > p { max-width: 72ch; margin: 10px 0 20px; }
.repair-prices table { width: 100%; border-collapse: collapse; }
.repair-prices th, .repair-prices td {
  padding: 12px 0;
  text-align: left;
  border-bottom: 1px solid var(--repair-line);
}
.repair-prices tbody th { font-weight: 500; }
.repair-prices tr > :last-child {
  padding-left: 12px;
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.repair-prices td { color: var(--repair-accent); font-weight: 700; }
.repair-prices details { margin-top: 18px; }
.repair-prices summary { cursor: pointer; color: var(--repair-accent); }
.repair-prices details ul { padding-left: 20px; margin: 10px 0 0; }
.repair-prices details a { text-decoration: underline; text-underline-offset: 3px; }

body:has(.repair-crumb) .breadcrumb{display:none}

.service-feedback input[type="hidden"]{display:none}
.service-feedback .service-form-errors,.service-form-success{
  width:100%;padding:12px 14px;border:1px solid #dacfe7;border-radius:10px;background:#fff;
  font-size:.9rem;line-height:1.5;color:#4a345d;overflow-wrap:anywhere
}
.service-feedback .service-form-errors{border-color:#e4b5bf;color:#8b283f}
.service-feedback .service-form-captcha{min-width:0;max-width:100%}
.service-feedback .service-form-captcha img{max-width:100%;height:auto}

