.repairer-profile{background:#071e34;color:#ebf3ff}.repairer-profile .site-shell{max-width:1440px}
.repairer-member-badge{display:flex;align-items:center;gap:12px;color:#82c5ff}
.repairer-member-badge--select{color:#ffc451}
.repairer-member-shield{display:grid;place-items:center;width:48px;height:52px;flex:0 0 48px;border:1px solid currentColor;border-radius:8px;background:#173b56}
.repairer-member-shield svg{width:30px;height:36px}
.repairer-member-title{display:inline-block;font-size:15px;font-weight:750;color:inherit;text-decoration:none;line-height:1.4}
.repairer-member-title:hover{text-decoration:underline;text-underline-offset:3px}
.repairer-member-assessment{margin:6px 0 0;color:#b9d0e7;font-size:11px;line-height:1.4}
.repairer-member-assessment a{color:#b9d0e7;text-decoration:underline;text-underline-offset:3px}
.repairer-layout-preview{margin:0 0 20px;padding:10px 14px;border:1px solid #8c713b;border-radius:8px;background:#483c2080;font-size:12px;color:#ffdfa0;line-height:1.5}
.repairer-layout-preview a{color:#ffdfa0;text-decoration:underline;margin-left:8px}
.repairer-example-memberships{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid #29455c}
.repairer-example-memberships small{font-size:10px;color:#b9d0e7;margin-right:4px}
.repairer-example-memberships>span{font-size:11px;color:#d7e9fb;background:#183b55;border:1px solid #365d7f;border-radius:5px;padding:6px 10px}
@media(max-width:700px){.repairer-member-shield{width:52px;height:58px;flex-basis:52px}.repairer-member-title{font-size:14px}.repairer-example-memberships{grid-column:1/-1;width:100%}.repairer-member-assessment{font-size:10px}}
.workshop-gallery-dialog{position:fixed;inset:0;width:min(1120px,calc(100vw - 40px));max-width:none;max-height:92dvh;margin:auto;padding:18px;box-sizing:border-box;border:1px solid #497699;border-radius:16px;background:#091c30;color:#edf5ff;box-shadow:0 24px 90px #0009;overflow:auto}
.workshop-gallery-dialog::backdrop{background:#020a14db;backdrop-filter:blur(5px)}
.workshop-gallery-dialog[open]{display:grid;gap:12px}
.workshop-gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.repairer-profile .workshop-gallery-heading h2{margin:0;font-size:16px;line-height:1.4}
.workshop-gallery-dialog button{cursor:pointer;color:#edf5ff;background:#163a58;border:1px solid #527c9e;border-radius:9px}
.workshop-gallery-dialog button:focus-visible{outline:3px solid #79cfff;outline-offset:3px}
.workshop-gallery-close{width:44px;height:44px;flex:0 0 44px;font-size:30px;line-height:1}
.workshop-gallery-stage{position:relative;display:grid;place-items:center;height:min(60dvh,640px);min-height:180px;background:#030c16;border-radius:10px;overflow:hidden;touch-action:pan-y}
.workshop-gallery-stage>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
.workshop-gallery-stage :is(.workshop-gallery-prev,.workshop-gallery-next){position:absolute;top:50%;transform:translateY(-50%);width:46px;height:58px;font-size:40px;line-height:1;background:#102e49e8}
.workshop-gallery-prev{left:12px}.workshop-gallery-next{right:12px}
.repairer-panel .workshop-gallery-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0;color:#d8e8f7;font-size:13px;line-height:1.4}
.workshop-gallery-caption strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.workshop-gallery-thumbs{display:flex;justify-content:center;gap:8px;overflow-x:auto;padding:4px;flex-shrink:0}
.workshop-gallery-thumbs button{flex:0 0 76px;width:76px;height:54px;padding:2px;opacity:.6}
.workshop-gallery-thumbs button[aria-pressed=true]{opacity:1;border:2px solid #79cfff}
.workshop-gallery-thumbs img{display:block;width:100%;height:100%;object-fit:cover;border-radius:5px}
@media(max-width:600px){.workshop-gallery-dialog{width:calc(100vw - 20px);padding:12px;gap:10px;max-height:94dvh}.repairer-profile .workshop-gallery-heading h2{font-size:13px}.workshop-gallery-stage{height:52dvh;min-height:140px}.workshop-gallery-stage :is(.workshop-gallery-prev,.workshop-gallery-next){width:40px;height:48px}.workshop-gallery-prev{left:6px}.workshop-gallery-next{right:6px}.workshop-gallery-thumbs{justify-content:flex-start}.workshop-gallery-thumbs button{flex-basis:60px;width:60px;height:44px}}
.repairer-hero{position:relative;isolation:isolate;overflow:hidden;background:#081d33;border-bottom:1px solid #29465e}
.repairer-hero-photo{position:absolute;right:0;top:0;width:65%;height:100%;object-fit:cover;object-position:center;opacity:1;z-index:-2;mask-image:linear-gradient(90deg,transparent,#000 20%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 20%)}
.repairer-hero.has-photo:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071c30 0%,#071c30 35%,#071c3066 62%,#071c301a 100%)}
.repairer-heading,.repairer-designation{text-shadow:0 2px 8px #000a}
.repairer-hero-content{padding-top:28px;padding-bottom:30px}.repairer-profile .breadcrumb{display:inline-block;font-size:12px;color:#a3d5ff;margin-bottom:24px}
.repairer-identity{display:grid;grid-template-columns:220px minmax(0,1fr) 180px;gap:10px 24px;align-items:start;position:relative}
.repairer-logo-frame{grid-column:1;grid-row:1/3;width:220px;height:140px;max-width:100%;box-sizing:border-box;display:grid;place-items:center;border:1px solid #b9d8f02b;background:linear-gradient(135deg,#ffffff08,#0b22351f);border-radius:12px;box-shadow:inset 0 1px 0 #ffffff0d}
.repairer-logo-frame img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;padding:8px;box-sizing:border-box}
.repairer-heading{grid-column:2;grid-row:1;min-width:0}.repairer-profile .eyebrow{font-size:9px;color:#91adc5;letter-spacing:.08em;margin:0 0 10px}
.repairer-sponsored{letter-spacing:0;text-transform:none;font-weight:400}
.repairer-profile h1{font-size:clamp(28px,3vw,40px);line-height:1.12;margin:0 0 10px;letter-spacing:-.025em;overflow-wrap:anywhere}
.repairer-town{font-size:14px;margin:0 0 6px;color:#e5effe;line-height:1.5}
.repairer-specialties{font-size:12px;margin:0;color:#a9bfd4;line-height:1.5}
.repairer-designation{grid-column:2;grid-row:2;display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:6px}
.repairer-member-badge{max-width:100%;min-width:0}.repairer-member-badge>div{min-width:0;overflow-wrap:anywhere}
.repairer-profile .membership-listed{display:inline-flex;background:#075347a8;color:#9ef5d2;border:1px solid #288e7a;border-radius:30px;padding:7px 14px;font-size:12px;font-weight:700}
.repairer-profile .membership-badge{padding:7px 12px;border-radius:9px;background:#0c2941e8;border:1px solid #467b9d;font-size:14px;gap:8px}
.repairer-profile .membership-badge img{width:30px;height:30px}.repairer-profile .membership-badge--select{border-color:#a38345;color:#ffc451}
.repairer-category{font-size:12px;font-weight:650;color:#d4e9ff;border:1px solid #1f689c;background:#0c4773a3;padding:7px 14px;border-radius:30px}
.repairer-assessment{font-size:12px;color:#b1c8df;margin:10px 0 0}.repairer-assessment a{color:#bbd9f6}
.repairer-intro{font-size:14px;line-height:1.6;margin:16px 0 0;max-width:640px;color:#edf5ff}
.business-history-badge{grid-column:3;grid-row:1/3;display:flex;align-items:center;gap:10px;padding:12px 16px;max-width:100%;box-sizing:border-box;color:#ecf4ff;align-self:center;justify-self:end;background:linear-gradient(135deg,#ffffff14,#0b22351f);border:1px solid #def0ff66;border-radius:12px;backdrop-filter:blur(3px) saturate(110%);-webkit-backdrop-filter:blur(3px) saturate(110%);box-shadow:0 8px 24px #0002,inset 0 1px 0 #ffffff26;text-shadow:0 1px 4px #000b}
.business-history-badge>div{min-width:0}
.business-history-badge svg{flex-shrink:0}
.business-history-badge svg{width:38px;height:44px;color:#c4d8eb}.business-history-badge span{font-size:11px;display:block;color:#c5d8ed}
.business-history-badge strong{font-size:28px;display:block;line-height:1.2}.business-history-badge small{font-size:10px;display:block;color:#c5d8ed;margin-top:4px}
.repairer-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;padding-left:244px}.repairer-actions .btn{padding:12px 20px;min-height:48px;font-size:14px;border:1px solid #378bc8;background:#0c2840e0;border-radius:9px;box-sizing:border-box}
.repairer-actions .btn-primary{background:linear-gradient(160deg,#148bec,#0863c2);border-color:#6cb4ef}
.repairer-body{padding:20px 0 40px;background:radial-gradient(ellipse at 75% 0,#0d2b49,transparent 75%)}
.repairer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.repairer-column{display:flex;flex-direction:column;gap:16px;min-width:0}
.repairer-panel{min-width:0;padding:20px;border:1px solid #284761;background:linear-gradient(145deg,#112e4a,#091f34);border-radius:12px;box-shadow:0 8px 25px #0001}
.repairer-profile h2{font-size:19px;line-height:1.3;letter-spacing:-.02em;display:flex;align-items:center;gap:12px;margin:0 0 16px;color:#ecf3ff}
.repairer-panel-icon{display:inline-grid;place-items:center;color:#7ed5ff;background:#0e3f69;border:1px solid #1b5880;border-radius:9px;flex:0 0 34px;height:34px;font-size:24px}
.repairer-panel p{font-size:14px;color:#bdd1e6;line-height:1.7;margin:0}.repairer-description{white-space:pre-line}
.repairer-contact{display:flex;gap:18px;padding:0;overflow:hidden}
.repairer-contact-details{padding:20px;flex:1;min-width:0}.repairer-contact-lines{display:grid;gap:10px;overflow-wrap:anywhere;font-size:14px;color:#e0edfb}
.repairer-contact-lines a{color:#aad9ff;text-decoration:none}.repairer-contact-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.repairer-contact-actions a{border:1px solid #2875a9;border-radius:8px;font-size:11px;font-weight:650;padding:10px;color:#8ad7ff;text-decoration:none;background:#092a47}
.repairer-subsection{margin-top:18px;padding-top:16px;border-top:1px solid #29455c}
.repairer-subsection h3{font-size:14px;margin:0 0 12px;color:#e4f0ff}
.repairer-service-list{list-style:none;padding:0;margin:0;display:grid;gap:11px;font-size:13px}.repairer-service-list li{display:flex;gap:10px;align-items:flex-start;color:#e8f1fb}
.repairer-service-list li>span{display:grid;place-items:center;width:20px;height:20px;background:#2187e2;border-radius:50%;font-size:12px;flex:0 0 20px}
.repairer-panel .repairer-note{font-size:11px;color:#9db9d2;margin-top:16px}.repairer-tags{display:flex;gap:8px;flex-wrap:wrap}
.repairer-tags>span{font-size:12px;padding:9px 12px;background:#1a3c5a;border:1px solid #365d7f;border-radius:6px;color:#e6f2ff}
.repairer-network-tags>span{font-weight:700;padding:12px}.repairer-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.repairer-photo{display:block;min-width:0;padding:0;border:0;background:transparent;cursor:zoom-in}.repairer-photo:focus-visible{outline:3px solid #79cfff;outline-offset:3px;border-radius:7px}.repairer-photos>.repairer-photo:first-child{grid-column:1/-1}.repairer-photos img{display:block;width:100%;height:88px;object-fit:cover;border-radius:7px;border:1px solid #54718a;box-sizing:border-box}
.repairer-photos>.repairer-photo:first-child img{height:180px}.repairer-footer-actions{grid-column:1/-1;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:12px;padding:10px 2px}
.repairer-footer-actions a{color:#a6cef0}.workshop-map{position:relative;isolation:isolate;flex:0 0 44%;min-height:250px;overflow:hidden;background:#102b42}
.repairer-record{font-size:11px;color:#a9bfd4;line-height:1.5}
.repairer-footer-links{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 24px}
.workshop-map-tiles{position:absolute;left:50%;top:50%;width:768px;height:512px;z-index:-1}.workshop-map-tiles img{position:absolute;width:256px;height:256px;max-width:none;border:0;filter:brightness(.72) saturate(.65)}
.workshop-map-marker{position:absolute;top:50%;left:50%;transform:translate(-12px,-32px);display:flex;align-items:flex-start;gap:8px;color:white;text-decoration:none;max-width:85%}
.workshop-map-marker svg{width:24px;height:32px;fill:#ff6a54;stroke:#d84632;flex:0 0 24px;filter:drop-shadow(0 2px 2px #0005)}.workshop-map-marker circle{fill:#a8372b;stroke:none}
.workshop-map-marker span{font-size:11px;font-weight:750;background:#082039eb;border:1px solid #6a94b5;padding:8px;border-radius:7px;min-width:95px;max-width:140px}
.workshop-map-attribution{position:absolute;right:0;bottom:0;background:#ffffffe6;color:#244663!important;font-size:9px;line-height:1.3;padding:3px 5px;text-decoration:none}
.workshop-map-fallback{height:100%;min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;text-align:center;padding:20px}
.workshop-map-fallback span{font-size:10px;color:#bcd0e3}.workshop-map-fallback a{font-size:12px;color:#8bd2ff}
@media(min-width:901px){.repairer-gallery .repairer-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.repairer-gallery .repairer-photos>.repairer-photo:first-child{grid-column:auto}.repairer-gallery .repairer-photos img{height:200px}}
@media(max-width:1100px){
  .repairer-identity{grid-template-columns:180px minmax(0,1fr) 148px;column-gap:20px}
  .repairer-logo-frame{width:180px;height:132px}
  .repairer-actions{padding-left:200px}
  .repairer-contact{flex-direction:column;gap:0}
  .workshop-map{flex:auto;min-height:220px}
}
@media(max-width:900px){
  .repairer-profile .site-shell{width:calc(100% - 32px)}
  .repairer-hero-content{padding-top:20px;padding-bottom:24px}
  .repairer-profile .breadcrumb{margin-bottom:20px}
  .repairer-hero-photo{width:100%;opacity:1;mask-image:none;-webkit-mask-image:none}
  .repairer-hero.has-photo:before{background:linear-gradient(90deg,#071c30b8,#071c3073)}
  .repairer-identity{grid-template-columns:minmax(0,1fr);gap:16px}
  .repairer-logo-frame{grid-column:1;grid-row:1;width:220px;height:140px}
  .repairer-logo-frame img{padding:8px}
  .repairer-heading{grid-column:1;grid-row:2;display:block}
  .repairer-profile .eyebrow{font-size:8px;letter-spacing:.04em;margin-bottom:8px;line-height:1.6}
  .repairer-sponsored{display:block}
  .repairer-profile h1{font-size:clamp(24px,4vw,32px);line-height:1.15;margin-bottom:8px}
  .repairer-town{font-size:13px;margin-bottom:4px}
  .repairer-specialties{font-size:12px}
  .repairer-designation{grid-column:1;grid-row:3;display:flex;margin:0}
  .repairer-member-shield{width:44px;height:48px;flex-basis:44px}
  .repairer-member-title{font-size:15px}
  .repairer-member-assessment{font-size:11px;line-height:1.5}
  .business-history-badge{grid-column:1;grid-row:4;justify-self:start;align-self:start;gap:8px;margin:0;padding:10px 12px}
  .business-history-badge svg{width:24px;height:28px}
  .business-history-badge>div{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
  .business-history-badge span{font-size:11px}
  .business-history-badge strong{font-size:20px}
  .business-history-badge small{font-size:11px;margin:0}
  .repairer-identity:not(:has(.repairer-logo-frame)){grid-template-columns:minmax(0,1fr)}
  .repairer-identity:not(:has(.repairer-logo-frame)) .repairer-heading{grid-column:1;grid-row:1}
  .repairer-identity:not(:has(.repairer-logo-frame)) .repairer-designation{grid-row:2}
  .repairer-identity:not(:has(.repairer-logo-frame)) .business-history-badge{grid-row:3}
  .repairer-actions{display:flex;padding:0;margin-top:22px;gap:10px}
  .repairer-actions .btn{flex:1;min-width:0;min-height:48px;white-space:normal;text-align:center;padding:12px;font-size:13px;line-height:1.4}
  .repairer-grid{display:flex;flex-direction:column;gap:16px}
  .repairer-column{display:contents}
  .repairer-about{order:1}.repairer-contact{order:2}.repairer-services{order:3}.repairer-accreditations{order:4}.repairer-gallery{order:5}.repairer-footer-actions{order:6}
  .repairer-panel{width:100%;box-sizing:border-box;padding:20px}
  .repairer-contact{padding:0}
  .repairer-contact-details{padding:20px}
  .workshop-map{min-height:230px}
  .workshop-gallery-stage :is(.workshop-gallery-prev,.workshop-gallery-next){min-width:44px}
}
@media(max-width:480px){
  .repairer-profile h1{font-size:24px}
  .repairer-actions{display:grid;grid-template-columns:minmax(0,1fr)}
  .repairer-profile h2{font-size:18px}
  .repairer-footer-actions{gap:18px}
}

