/* Visual service sections; only the six opted-in pages load this file. */
.subservice{--ss-line:#dbe4eb;--ss-muted:#526574}.subservice .section--tight{padding-block:3.2rem}
.ss-section-head{max-width:800px;margin-bottom:1.6rem}.ss-section-head h2{font-size:clamp(1.5rem,2.4vw,2.25rem);line-height:1.2;margin:0}.ss-section-head .eyebrow{font-size:.73rem;margin-bottom:.75rem}
.ss-layout .prose{max-width:none;font-size:1rem;line-height:1.65}.ss-layout .prose p{margin:0 0 .7rem}.ss-layout .prose p:last-child{margin-bottom:0}.ss-layout h3{font-size:1.15rem;line-height:1.35;margin:0 0 .65rem}
.ss-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.ss-grid--spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ss-tile{padding:1.5rem;background:#fff;border:1px solid var(--ss-line);border-radius:7px;min-width:0}
.ss-item-head{display:flex;align-items:baseline;gap:.8rem}.ss-item-head>span{font-size:.75rem;line-height:1.5;border-bottom:3px solid #ffd500;min-width:20px;color:var(--ss-muted)}
.ss-grid--checks .ss-tile{border-top:4px solid #ffd500}.ss-grid--contrast .ss-tile{background:#123047;border-color:#395265;color:#fff}.ss-grid--contrast h3,.ss-grid--contrast .prose,.ss-grid--contrast p,.ss-grid--contrast a,.ss-grid--contrast .ss-item-head>span{color:#fff}
.ss-layout--contrast .ss-section-head h2,.ss-layout--cta .ss-section-head h2{color:#fff}.ss-layout--contrast .eyebrow,.ss-layout--cta .eyebrow{color:#ffd500}
.ss-overview{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:2.5rem;align-items:start}.ss-overview-copy>p{font-size:1.1rem;line-height:1.7;max-width:65ch}.ss-overview-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.6rem}.ss-note{min-width:0;border-left:3px solid #ffd500;padding-left:1.1rem}.ss-note .ss-item-head>span{display:none}
.ss-service-map{background:#061a29;color:#fff;padding:2rem;border-radius:8px;position:relative;overflow:hidden;border-bottom:7px solid #ffd500}.ss-service-map h3{color:#fff;font-size:1.6rem}.ss-service-map>p{line-height:1.65;color:#dbe5ec}.ss-service-map .eyebrow{color:#ffd500;font-size:.72rem}.ss-service-map ol{list-style:none;margin:1.5rem 0 0;padding:0}.ss-service-map li{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-top:1px solid #395265;font-weight:600}.ss-service-map li span{display:grid;place-items:center;width:35px;height:35px;border:1px solid #526574;color:#ffd500;border-radius:50%;font-size:.78rem;flex-shrink:0}
.ss-overview.ss-reverse{grid-template-columns:minmax(0,1fr) minmax(0,1.65fr)}.ss-overview.ss-reverse .ss-service-map{grid-column:1;grid-row:1}.ss-overview.ss-reverse .ss-overview-copy{grid-column:2}
.ss-symptoms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.ss-symptom.sub-card{display:block;position:relative;padding:1.6rem;background:#fff;border:1px solid var(--ss-line);border-radius:7px;border-top:4px solid #ffd500}.ss-symptom-mark{display:inline-grid;place-items:center;width:38px;height:38px;background:#061a29;color:#ffd500;border-radius:6px;margin-bottom:1.2rem;font-size:.8rem}.ss-symptoms--rows{grid-template-columns:1fr}.ss-symptoms--rows .ss-symptom.sub-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:1.1rem;border-top:1px solid var(--ss-line);border-left:5px solid #ffd500}.ss-symptoms--rows .ss-symptom>div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.7fr);gap:1.5rem}.ss-symptoms--rows .ss-symptom-mark{margin:0}
.ss-hardware-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.3fr);gap:2rem;align-items:start}.ss-hardware{margin:0;position:sticky;top:125px;background:#edf2f5;border-radius:8px;overflow:hidden;border-bottom:5px solid #ffd500}.ss-hardware img{width:100%;max-height:390px;object-fit:contain;display:block}.ss-hardware figcaption{padding:.85rem 1.3rem 1.2rem;font-size:.94rem;line-height:1.6;color:#123048}.ss-hardware-notes{display:grid;gap:1.4rem}.ss-hardware-grid.ss-reverse .ss-hardware{grid-column:2;grid-row:1}.ss-hardware-grid.ss-reverse .ss-hardware-notes{grid-column:1}
.ss-comparison{border:1px solid var(--ss-line);border-radius:8px;overflow:hidden}.ss-comparison-row{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:1.5rem;padding:1.4rem 1.6rem;border-bottom:1px solid var(--ss-line)}.ss-comparison-row:last-child{border:0}.ss-comparison-row:nth-child(odd){background:#f2f6f8}.ss-comparison-row h3{border-left:4px solid #ffd500;padding-left:1rem}
.ss-timeline{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem}.ss-timeline li{display:grid;grid-template-columns:45px minmax(0,1fr);gap:1rem;padding:1.5rem;background:#f2f6f8;border-radius:7px;border-top:1px solid var(--ss-line)}.ss-step{display:grid;place-items:center;width:42px;height:42px;background:#ffd500;color:#061a29;font-weight:700;border-radius:50%}
.ss-prep{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.7rem}.ss-prep>.ss-checklist{grid-column:2;grid-row:1/4}.ss-checklist{list-style:none;padding:1.4rem;margin:0;background:#fff;border:1px solid var(--ss-line);border-radius:7px;align-self:start}.ss-checklist li{display:flex;align-items:flex-start;gap:.8rem;padding:.8rem 0;border-bottom:1px solid var(--ss-line);font-size:1rem;line-height:1.55}.ss-checklist li:last-child{border:0}.ss-checklist li span{color:#061a29;background:#ffd500;min-width:24px;height:24px;text-align:center;border-radius:4px}.ss-closing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:2.5rem}.ss-closing-copy>p{color:#fff;line-height:1.7;margin-bottom:1rem}.ss-closing a:not(.btn){color:#fff}
.subservice--mortise-lock-repair .sub-hero__figure,.subservice--padlock-removal .sub-hero__figure{grid-column:1;grid-row:1}.subservice--mortise-lock-repair .sub-hero__grid>div:first-child,.subservice--padlock-removal .sub-hero__grid>div:first-child{grid-column:2}.subservice--digital-lock-servicing .sub-hero__figure{transform:rotate(-1deg)}.subservice--car-key-programming .sub-hero__image{border-left:6px solid #ffd500;border-bottom:0}.subservice--trunk-unlocking .sub-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1050px){.ss-grid,.ss-symptoms{grid-template-columns:repeat(2,minmax(0,1fr))}.ss-symptoms--rows{grid-template-columns:1fr}.ss-symptoms--rows .ss-symptom>div{display:block}.ss-overview,.ss-overview.ss-reverse{gap:1.4rem;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.ss-overview-notes{grid-template-columns:1fr}.ss-hardware-grid{gap:1.4rem}}
@media(max-width:850px){.ss-overview,.ss-overview.ss-reverse,.ss-hardware-grid,.ss-closing{grid-template-columns:1fr}.ss-overview.ss-reverse .ss-overview-copy,.ss-overview.ss-reverse .ss-service-map,.ss-hardware-grid.ss-reverse .ss-hardware,.ss-hardware-grid.ss-reverse .ss-hardware-notes{grid-column:auto;grid-row:auto}.ss-hardware{position:static;max-width:600px;width:100%;margin-inline:auto}.ss-hardware img{max-height:300px}.ss-overview-notes{grid-template-columns:repeat(2,minmax(0,1fr))}.ss-service-map{padding:1.4rem}.ss-service-map ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.ss-service-map li{display:block;font-size:.95rem}.ss-service-map li span{margin-bottom:.6rem}.subservice--mortise-lock-repair .sub-hero__figure,.subservice--padlock-removal .sub-hero__figure,.subservice--mortise-lock-repair .sub-hero__grid>div:first-child,.subservice--padlock-removal .sub-hero__grid>div:first-child{grid-column:auto;grid-row:auto}}
@media(max-width:600px){.subservice .section--tight{padding-block:2rem}.ss-grid,.ss-symptoms,.ss-grid--spec-grid,.ss-timeline,.ss-overview-notes,.ss-prep{grid-template-columns:1fr}.ss-section-head{margin-bottom:1.25rem}.ss-tile,.ss-symptom.sub-card{padding:1.15rem}.ss-symptoms--rows .ss-symptom.sub-card{grid-template-columns:30px minmax(0,1fr);gap:.7rem;padding:1rem}.ss-symptoms--rows .ss-symptom-mark{width:30px;height:30px}.ss-comparison-row{grid-template-columns:1fr;gap:.4rem;padding:1.1rem}.ss-timeline li{padding:1.1rem;grid-template-columns:35px minmax(0,1fr);gap:.7rem}.ss-step{width:32px;height:32px;font-size:.8rem}.ss-prep>.ss-checklist{grid-column:auto;grid-row:auto}.ss-service-map ol{grid-template-columns:1fr;gap:0}.ss-service-map li{display:flex}.ss-service-map li span{margin:0}.ss-closing{gap:0}.subservice--trunk-unlocking .sub-nav{grid-template-columns:1fr}.subservice .sub-nav{padding-block:1rem}.subservice .sub-nav a{min-height:48px}.ss-layout .prose{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.subservice--digital-lock-servicing .sub-hero__figure{transform:none}}
