/* Urgent repair desk: option selected by the user on 29 October 2026.
   Page-only composition; the existing three entrances retain their styling. */
.urgent-entry { display:flex; align-items:center; justify-content:space-between; gap:20px 32px; padding:20px 0; border-block:1px solid var(--line); border-left:3px solid var(--crown-gold); padding-left:20px; }
.urgent-entry h3 { font:400 24px/1.25 var(--display); margin:0 0 6px; }
.urgent-entry p { margin:0; max-width:65ch; color:var(--muted); }
.urgent-entry .text-link { flex-shrink:0; margin:0; }
.service-shortcuts .urgent-entry { margin-top:20px; }
.service-shortcuts .urgent-entry .text-link { min-height:48px; }
.urgent-directory-entry { margin-top:16px; }
.urgent-contact-entry .text-link { --action-ink:var(--limestone); --action-corner:var(--crown-gold); }

.urgent-page h2 { font-size:clamp(28px,3vw,40px); line-height:1.2; }
.urgent-page .urgent-icon { display:block; flex-shrink:0; width:32px; height:32px; }
.urgent-page :is(.urgent-services,.urgent-records,.urgent-contact) { padding-block:34px; border-top:2px solid var(--workbench-black); }
.urgent-page .section-heading { gap:32px; margin-bottom:22px; align-items:center; }
.urgent-page .section-heading h2 { margin:0; padding-left:18px; border-left:2px solid var(--crown-gold); }
.urgent-page .section-heading > p { max-width:41ch; font-size:14px; line-height:1.6; padding-left:20px; border-left:1px solid var(--crown-gold); }

body:has(.urgent-page) .breadcrumbs { padding-block:8px; }
.urgent-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,420px); align-items:start; gap:32px 48px; padding-block:26px 28px; }
.urgent-hero .eyebrow { margin-bottom:16px; }
.urgent-page .urgent-hero h1 { font-size:clamp(40px,5.6vw,80px); font-weight:600; line-height:1.18; max-width:19ch; margin:0 0 20px; text-wrap:balance; }
.urgent-hero .urgent-subtitle { font:650 24px/1.45 var(--body); max-width:48ch; margin:0 0 18px; }
.urgent-hero .lede { font-size:18px; line-height:1.7; max-width:65ch; margin:0; }
.urgent-hero-actions { display:flex; flex-wrap:wrap; align-items:flex-end; gap:20px 24px; margin-top:26px; }
.urgent-call { display:flex; flex-direction:column; width:fit-content; min-height:48px; padding:12px 18px 8px; border-left:2px solid var(--crown-gold); border-top:1px solid var(--line); text-decoration:none; transition:color .18s,background-color .18s; }
.urgent-call-label { display:flex; align-items:center; gap:12px; font-size:16px; line-height:1.4; font-weight:650; }
.urgent-call-label .urgent-icon { width:24px; height:24px; }
.urgent-call-number { font:750 clamp(34px,4.8vw,68px)/1.12 var(--body); letter-spacing:-.04em; white-space:nowrap; margin-top:7px; }
.urgent-call:hover { color:var(--focus); background:var(--atelier-paper); }
.urgent-call:active { transform:translateY(1px); }
.urgent-hero-actions > .button { margin:0; min-height:48px; }
.urgent-hero-photo { margin:0; padding:0; justify-self:end; width:100%; max-width:420px; }
.urgent-hero-photo > a { display:block; }
.urgent-hero-photo picture { display:block; }
.urgent-hero-photo img { display:block; width:100%; height:auto; max-height:480px; object-fit:contain; }
.urgent-hero-photo figcaption { margin-top:10px; font-size:13px; line-height:1.5; }
.urgent-hero-photo figcaption a { display:inline-flex; align-items:center; min-height:44px; }

.urgent-arrangements { padding-block:12px 24px; }
.urgent-arrangements dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0; }
.urgent-arrangements dl > div { display:flex; align-items:flex-start; gap:16px; padding:0 24px; min-width:0; border-left:1px solid var(--line); }
.urgent-arrangements dl > div:first-child { padding-left:0; border-left:0; }
.urgent-arrangements dl > div:last-child { padding-right:0; }
.urgent-arrangements dt { font-size:16px; font-weight:700; margin-bottom:6px; }
.urgent-arrangements dd { margin:0; font-size:14px; color:var(--muted); line-height:1.65; }
.urgent-conditions { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:28px; margin-top:20px; padding-top:16px; border-top:1px solid var(--line); }
.urgent-conditions > p { margin:0; font-size:13px; line-height:1.65; color:var(--muted); }
.urgent-fee-note strong { color:var(--ink); }

.urgent-service-grid { border-top:1px solid var(--line); }
.urgent-service-card { min-width:0; border-bottom:1px solid var(--line); }
.urgent-service-link { display:grid; grid-template-columns:44px minmax(170px,.8fr) minmax(0,1.8fr) 28px; align-items:center; gap:24px; padding:21px 14px; min-height:88px; text-decoration:none; color:var(--ink); transition:background-color .18s; }
.urgent-service-link h3 { font:650 23px/1.3 var(--body); margin:0; }
.urgent-service-link p { margin:0; color:var(--muted); font-size:15px; line-height:1.65; max-width:65ch; }
.urgent-service-link .urgent-icon { width:40px; height:40px; }
.urgent-service-link .urgent-row-arrow { width:24px; height:24px; }
.urgent-service-link:hover { background:var(--atelier-paper); color:var(--ink); }
.urgent-service-link:hover h3 { text-decoration:underline; text-underline-offset:5px; }
.urgent-service-link:active { background:var(--stone); }
.urgent-service-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px 32px; margin-top:20px; scroll-margin-top:24px; }
.urgent-safety-note { font-size:13px; line-height:1.65; max-width:66ch; margin:0; color:var(--muted); }
.urgent-support-links { display:flex; flex-wrap:wrap; gap:12px 16px; }
.urgent-support-links .text-link { margin:0; }

.urgent-records .card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.urgent-records .work-card { display:grid; grid-template-columns:minmax(120px,.8fr) minmax(0,1fr); gap:20px; padding:18px; border:0; background:var(--atelier-paper); align-items:center; }
.urgent-records .work-image-link { display:block; min-width:0; }
.urgent-records .intake-visual { display:flex; align-items:center; justify-content:center; background:transparent; margin:0; width:100%; height:210px; max-width:none; }
.urgent-records .intake-visual picture { display:flex; justify-content:center; height:100%; width:100%; }
.urgent-records .intake-visual img { width:100%; height:100%; max-height:210px; object-fit:contain; }
.urgent-record-copy { min-width:0; }
.urgent-record-copy .eyebrow { font-size:10px; margin:0 0 10px; }
.urgent-records .work-card h3 { font:400 26px/1.25 var(--display); margin:0 0 16px; }
.urgent-records .work-facts { margin:0; padding-block:12px; border-block:1px solid var(--line); }
.urgent-records .work-facts div { display:grid; grid-template-columns:50px minmax(0,1fr); gap:10px; margin:0; }
.urgent-records .work-facts dt { font-size:12px; }
.urgent-records .work-facts dd { font-size:13px; margin:0; line-height:1.65; }
.urgent-record-copy > .text-link { margin-top:12px; }

.urgent-contact-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); align-items:start; gap:40px; }
.urgent-contact-copy { padding:12px 0 0; }
.urgent-contact-copy h2 { margin:0 0 18px; padding-left:18px; border-left:2px solid var(--crown-gold); }
.urgent-contact-copy > p { max-width:60ch; font-size:15px; line-height:1.7; }
.urgent-email { display:flex; align-items:center; gap:12px; margin-block:18px 22px; }
.urgent-email .urgent-icon { width:24px; height:24px; }
.urgent-email a { min-width:0; overflow-wrap:anywhere; }
.urgent-preparation { margin:0; padding-left:20px; }
.urgent-preparation li { padding-left:6px; margin-top:18px; }
.urgent-preparation li::marker { color:var(--muted); font:700 13px var(--utility); }
.urgent-preparation h3 { font:650 16px/1.4 var(--body); margin:0 0 6px; letter-spacing:0; }
.urgent-preparation p { font-size:14px; color:var(--muted); line-height:1.65; margin:0; }
.urgent-contact-copy > .small { margin-block:20px 14px!important; }
.urgent-contact .contact-aside { max-width:none; width:100%; margin:0; padding:0; position:static; max-height:none; overflow:visible; border-top:0; background:transparent; }
.urgent-contact .compact-enquiry { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; padding:24px; border-top:2px solid var(--workbench-black); background:var(--atelier-paper); }
.urgent-contact .compact-enquiry { scroll-margin-top:24px; }
.urgent-contact .compact-enquiry > * { grid-column:1/-1; min-width:0; }
.urgent-contact .compact-enquiry > .urgent-form-field { grid-column:auto; }
.urgent-contact .compact-enquiry > :is(.urgent-repair-picker,label[for="timing"]) { grid-column:auto; }
.urgent-contact .compact-enquiry .honeypot { position:absolute; }
.urgent-contact .compact-enquiry > .eyebrow { display:none; }
.urgent-contact .enquiry-form h2 { font:400 30px/1.2 var(--display); margin-bottom:12px; }
.urgent-contact .enquiry-form > p { font-size:13px; line-height:1.6; }
.urgent-contact .enquiry-form label { font-size:13px; margin-top:16px; }
.urgent-contact .enquiry-form input:not([type="hidden"]),.urgent-contact select { min-height:48px; border-radius:0; }
.urgent-contact select { display:block; width:100%; padding:12px; margin-top:8px; border:1px solid var(--line); background:var(--atelier-paper); color:var(--ink); font:inherit; }
.urgent-contact .enquiry-form textarea { resize:vertical; min-height:108px; height:108px; border-radius:0; }
.urgent-contact .enquiry-form .button { margin-top:20px; }
.urgent-contact .form-status:empty { display:none; }
.urgent-contact :is(input,select,textarea):focus-visible { outline:3px solid var(--crown-gold); outline-offset:2px; }
.urgent-repair-picker .small { margin:8px 0 0; font-weight:400; }
.urgent-prefix-warning { border-left:2px solid var(--crown-gold); padding-left:10px; font-weight:650; }
.urgent-repair-picker[hidden] { display:none; }

@media (max-width:1100px) {
  .urgent-hero { gap:32px; grid-template-columns:minmax(0,1.7fr) minmax(220px,.8fr); }
  .urgent-hero-photo img { max-height:390px; }
  .urgent-page .urgent-hero h1 { font-size:46px; }
  .urgent-call-number { font-size:46px; }
  .urgent-service-link { grid-template-columns:40px minmax(150px,.8fr) minmax(0,1.8fr) 24px; gap:18px; }
  .urgent-records .work-card { gap:16px; padding:16px; grid-template-columns:minmax(100px,.7fr) minmax(0,1fr); }
  .urgent-records .work-card h3 { font-size:23px; }
  .urgent-contact-layout { gap:28px; }
}
@media (max-width:850px) {
  .urgent-entry { flex-wrap:wrap; }
  .urgent-hero { grid-template-columns:minmax(0,1fr); padding-top:24px; gap:26px; }
  .urgent-page .urgent-hero h1 { max-width:24ch; }
  .urgent-hero-photo { display:grid; grid-template-columns:100px minmax(0,1fr); gap:18px; align-items:center; max-width:none; justify-self:stretch; }
  .urgent-hero-photo img { max-height:134px; }
  .urgent-hero-photo figcaption { margin:0; }
  .urgent-arrangements dl { grid-template-columns:minmax(0,1fr); gap:18px; }
  .urgent-arrangements dl > div { padding:0; border:0; gap:16px; }
  .urgent-arrangements dl > div .urgent-icon { width:26px; height:26px; }
  .urgent-conditions { grid-template-columns:minmax(0,1fr); gap:12px; }
  .urgent-page .section-heading { flex-direction:column; align-items:flex-start; gap:14px; }
  .urgent-page .section-heading > p { max-width:65ch; border:0; padding-left:20px; }
  .urgent-service-link { grid-template-columns:36px minmax(0,1fr) 24px; gap:10px 18px; padding:20px 8px; }
  .urgent-service-link h3 { font-size:22px; }
  .urgent-service-link p { grid-column:2; }
  .urgent-service-link .urgent-icon { width:32px; height:32px; }
  .urgent-row-arrow { grid-column:3; grid-row:1/3; }
  .urgent-service-link > .urgent-icon { grid-row:1/3; align-self:start; }
  .urgent-records .card-grid,.urgent-contact-layout { grid-template-columns:minmax(0,1fr); }
  .urgent-records .work-card { grid-template-columns:minmax(100px,.6fr) minmax(0,1fr); }
  .urgent-records .intake-visual,.urgent-records .intake-visual img { height:180px; max-height:180px; }
  .urgent-contact-layout { gap:26px; }
  .urgent-contact-copy { padding:0; }
}
@media (max-width:520px) {
  .urgent-entry { padding:16px 0 16px 16px; gap:16px; }
  .urgent-entry h3 { font-size:22px; }
  .urgent-entry .text-link { flex-shrink:1; }
  .urgent-page :is(.urgent-services,.urgent-records,.urgent-contact) { padding-block:28px; }
  .urgent-page .urgent-hero h1 { font-size:36px; margin-bottom:18px; }
  .urgent-hero .urgent-subtitle { font-size:18px; }
  .urgent-hero .lede { font-size:16px; }
  .urgent-hero-actions { flex-direction:column; align-items:stretch; gap:16px; margin-top:22px; }
  .urgent-call { width:100%; padding:12px 12px 10px; }
  .urgent-call-number { font-size:clamp(34px,9.5vw,46px); }
  .urgent-call-label { font-size:15px; }
  .urgent-hero-actions > .button { align-self:flex-start; }
  .urgent-hero-photo { grid-template-columns:84px minmax(0,1fr); gap:16px; }
  .urgent-hero-photo img { max-height:112px; }
  .urgent-page .section-heading h2,.urgent-contact-copy h2 { padding-left:14px; font-size:28px; }
  .urgent-page .section-heading > p { padding-left:16px; }
  .urgent-service-link { grid-template-columns:30px minmax(0,1fr) 20px; gap:10px 12px; padding-inline:2px; }
  .urgent-service-link h3 { font-size:20px; }
  .urgent-service-link p { font-size:14px; }
  .urgent-service-link .urgent-icon { width:28px; height:28px; }
  .urgent-records .work-card { grid-template-columns:minmax(72px,.65fr) minmax(0,1fr); gap:14px; padding:14px; }
  .urgent-records .work-card h3 { font-size:22px; margin-bottom:12px; }
  .urgent-records .intake-visual,.urgent-records .intake-visual img { height:166px; max-height:166px; }
  .urgent-records .work-facts div { grid-template-columns:36px minmax(0,1fr); gap:6px; }
  .urgent-record-copy > .text-link { font-size:12px; padding-inline:10px; min-width:0; }
  .urgent-email { gap:8px; font-size:14px!important; }
  .urgent-contact .compact-enquiry { padding:20px 16px; grid-template-columns:minmax(0,1fr); }
  .urgent-contact .enquiry-form h2 { font-size:27px; }
}
/* Keep the call visible on short laptop screens without changing reading order. */
@media (min-width:851px) and (max-height:800px) {
  .urgent-hero { padding-top:16px; }
  .urgent-hero .eyebrow { margin-bottom:12px; }
  .urgent-page .urgent-hero h1 { font-size:56px; line-height:1.12; margin-bottom:16px; }
  .urgent-hero .urgent-subtitle { font-size:20px; margin-bottom:14px; }
  .urgent-hero .lede { font-size:16px; line-height:1.65; max-width:68ch; }
  .urgent-hero-actions { margin-top:20px; }
  .urgent-call-number { font-size:56px; }
  .urgent-hero-photo img { max-height:380px; }
}
@media (prefers-reduced-motion:reduce) {
  .urgent-call,.urgent-service-link { transition:none; }
}

