/* GlassRepair: a visible repair, with depth and deliberate motion. */
.official-logo{width:215px;height:auto;aspect-ratio:5/1;object-fit:contain;display:block}
.footer-main .official-logo{width:235px}.menu-dialog-head .official-logo{width:210px}
.hero.hero-v2{grid-template-columns:1fr 1.04fr;grid-template-rows:auto auto;gap:0 42px;min-height:760px;padding-top:42px;padding-bottom:48px}
.hero-v2 .hero-copy{grid-column:1;grid-row:1;align-self:end;padding:12px 0 0}
.hero-v2 .hero-conversion{grid-column:1;grid-row:2;align-self:start;margin-top:29px;min-width:0}
.hero-v2 h1{font-size:clamp(3.3rem,5.2vw,4.8rem);line-height:1.15;letter-spacing:-.035em;font-weight:700;color:var(--ink)}
.slogan-line{display:block}
.slogan-line:first-child{font-size:.84em;font-weight:400;letter-spacing:-.035em}
.slogan-accent{margin-top:-.2em;color:var(--blue)}
.hero-v2 .hero-description{max-width:460px;line-height:1.85;margin:28px 0 0;font-size:1.05rem}
.hero-v2 .hero-actions{gap:14px 22px}.hero-v2 .hero-reviews{margin-top:26px}
.hero-v2 .eyebrow{font-size:.75rem;letter-spacing:.09em;margin-bottom:30px}
.hero-v2 .hero-reassurance{font-size:.75rem}
.repair-showcase{grid-column:2;grid-row:1/3;position:relative;align-self:center;min-width:0;width:100%;background:#081224;border:1px solid #142844;border-radius:26px;padding:21px 20px 19px;color:white;box-shadow:0 28px 55px -36px #0a245f80;isolation:isolate}
.showcase-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 3px 12px;position:relative;z-index:2;min-height:38px}
.showcase-heading>span:first-child{font-size:.75rem;letter-spacing:.14em;color:#a2b3ce}
.scene-state{font-size:.75rem;line-height:1.6;padding:5px 10px;border:1px solid #44516a;border-radius:30px;white-space:nowrap;color:#dce5f5;transition:color .35s,border-color .35s,background .35s}
[data-state="after"] .scene-state{color:#bcd0ff;background:#1b50ed25;border-color:#4a6eb7}
.repair-stage{position:relative;isolation:isolate;aspect-ratio:1;width:100%;perspective:1000px;touch-action:pan-y}
.repair-scene{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s cubic-bezier(.2,.7,.2,1);border-radius:15px;will-change:transform}
.repair-scene img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;pointer-events:none;border-radius:15px}
.repair-after{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--repair)) 0 0);border-radius:15px}
.repair-divider{position:absolute;top:7%;bottom:6%;left:var(--repair);width:2px;transform:translateX(-1px) translateZ(2px);background:linear-gradient(transparent,#b9deff 25%,#fff 50%,#6aa7ff 80%,transparent);box-shadow:0 0 18px 3px #579eff50;pointer-events:none;opacity:1;transition:opacity .2s}
.compare-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;display:flex;align-items:center;justify-content:center;gap:1px;border:1px solid #bdd5ff;background:#eaf3fff2;color:#184abd;border-radius:50%;box-shadow:0 5px 20px #030b2060}
.compare-handle .icon{height:15px;width:15px;stroke-width:2}.compare-handle .icon:first-child{transform:rotate(180deg)}
[data-state="before"] .repair-divider,[data-state="after"] .repair-divider{opacity:0}
.scene-reflection{position:absolute;inset:0;pointer-events:none;border-radius:15px;background:linear-gradient(112deg,transparent 25%,#d3e8ff0a 49%,transparent 65%);transform:translateZ(4px);opacity:0;transition:opacity .4s}
@media(hover:hover) and (pointer:fine){.repair-stage:hover .scene-reflection{opacity:1}}
.repair-scrubber{position:absolute;z-index:5;inset:0;margin:0;width:100%;height:100%;opacity:0;cursor:ew-resize;touch-action:pan-y;-webkit-appearance:none;appearance:none}
.repair-scrubber::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:44px;height:44px;background:transparent;border:0}
.repair-scrubber::-moz-range-thumb{width:44px;height:44px;background:transparent;border:0}
.repair-stage:focus-within{outline:2px solid #9dbfff;outline-offset:4px;border-radius:15px}
.showcase-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:14px;position:relative;z-index:2}
.replay-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 0;color:#d5e2fa;font-size:.875rem;text-align:left;line-height:1.5}
.replay-button .icon{width:17px;height:17px;transition:transform .4s}.replay-button:hover{color:white}.replay-button:hover .icon{transform:rotate(-40deg)}
.repair-showcase figcaption{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;line-height:1.8;color:#a3b3cb;font-size:.75rem;margin:15px 0 0;text-align:center}
.repair-showcase figcaption .icon{width:18px;height:18px}
.repair-showcase button:focus-visible{outline-color:#b8d1ff}
.repair-showcase[data-asset-error="true"] .repair-scrubber{display:none}
.service-card,.store-card{position:relative}.service-card{transform-style:preserve-3d}
@media(hover:hover) and (pointer:fine){
  .service-card:hover{transform:perspective(950px) translateY(-7px) rotateX(2deg)}
  .service-card:hover .service-icon{transform:translateY(-5px) rotate(-5deg);box-shadow:0 10px 18px #29467b16}
  .service-icon{transition:transform .35s,box-shadow .35s}
  .store-card{transition:transform .35s,box-shadow .35s}.store-card:hover{transform:translateY(-5px);box-shadow:0 18px 30px #183b6510}
}
.button{position:relative;overflow:hidden}.button:after{content:"";position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 35%,#ffffff25 48%,transparent 61%);transform:translateX(-80%);pointer-events:none}
@media(hover:hover){.button:hover:after{transform:translateX(80%);transition:transform .65s ease}}
.site-header{transition:box-shadow .3s,border-color .3s}.site-header.is-scrolled{box-shadow:0 5px 25px #0d26400a;border-bottom-color:#dce3ed}
.hero-v2.is-entering .slogan-line{animation:slogan-arrive .8s cubic-bezier(.18,.7,.24,1) both}.hero-v2.is-entering .slogan-line:nth-child(2){animation-delay:.12s}
@keyframes slogan-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1450px){.hero.hero-v2{min-height:810px}.hero-v2 h1{font-size:4.8rem}}
@media(max-width:1150px){.hero.hero-v2{gap:0 30px;min-height:705px}.hero-v2 h1{font-size:clamp(2.8rem,5.2vw,4rem)}.hero-v2 .hero-actions{gap:6px;align-items:flex-start;flex-direction:column}.hero-v2 .hero-description{font-size:1rem}.repair-showcase{padding:19px 17px 17px}.showcase-heading>span:first-child{letter-spacing:.07em}.replay-button{gap:6px}.showcase-controls{gap:10px}}
@media(max-width:980px) and (min-width:701px){.hero.hero-v2{gap:0 26px;min-height:675px}.hero-v2 h1{font-size:clamp(2.4rem,5.1vw,3.2rem)}.hero-v2 .eyebrow{letter-spacing:.04em;font-size:.75rem;line-height:1.8;margin-bottom:26px}.hero-v2 .hero-description{margin-top:25px}.hero-v2 .hero-conversion{margin-top:24px}.repair-showcase{padding:17px 14px;border-radius:21px}.showcase-heading{flex-wrap:wrap;justify-content:center;gap:8px;padding-bottom:12px}.showcase-heading>span:first-child{width:100%;text-align:center}.showcase-controls{flex-wrap:wrap;justify-content:center;gap:6px}.replay-button{min-width:100%;justify-content:center}.repair-showcase figcaption{margin-top:9px;align-items:flex-start}.hero-v2 .hero-reviews small{max-width:220px}}
@media(max-width:700px){
  .official-logo{width:clamp(150px,48vw,205px)}.footer-main .official-logo{width:235px}.menu-dialog-head .official-logo{width:min(210px,60vw)}
  .hero.hero-v2{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:25px;min-height:0;padding-top:29px;padding-bottom:34px}
  .hero-v2 .hero-copy{grid-column:1;grid-row:1;padding:0;align-self:auto}.hero-v2 .hero-conversion{grid-column:1;grid-row:3;margin:0;align-self:auto}
  .hero-v2 h1{font-size:clamp(2.4rem,11.2vw,4.25rem);line-height:1.16;letter-spacing:-.035em}
  .hero-v2 .eyebrow{font-size:.75rem;letter-spacing:.03em;margin-bottom:24px;line-height:1.8;gap:8px}.hero-v2 .eyebrow-line{width:15px}
  .hero-v2 .hero-description{font-size:1rem;line-height:1.85;margin:23px 0 0;max-width:460px}
  .repair-showcase{grid-column:1;grid-row:2;width:100%;padding:17px 14px 16px;border-radius:21px;box-shadow:0 22px 32px -25px #14357a60}
  .showcase-heading{padding:0 3px 11px;gap:8px;min-height:35px}.showcase-heading>span:first-child{font-size:.75rem;letter-spacing:.04em}.scene-state{font-size:.75rem;padding:4px 8px}
  .repair-stage{aspect-ratio:.97}.repair-scene img{object-fit:contain}.compare-handle{width:38px;height:38px}
  .showcase-controls{gap:10px;margin-top:12px;flex-wrap:wrap}  .replay-button{font-size:.875rem;gap:6px;padding:9px 0}.replay-button .icon{width:16px;height:16px}
  .repair-showcase figcaption{font-size:.75rem;line-height:1.85;margin-top:13px;gap:6px}
  .hero-v2 .hero-actions{align-items:stretch;gap:6px}.hero-v2 .hero-actions .button{width:100%}.hero-v2 .hero-reassurance{margin-top:10px}.hero-v2 .hero-reviews{margin-top:19px}
}
@media(max-width:370px){.hero-v2 h1{font-size:clamp(2.05rem,11.2vw,2.6rem)}.hero-v2 .eyebrow{flex-wrap:wrap;gap:6px;font-size:.75rem}.showcase-heading{justify-content:center;flex-wrap:wrap}.showcase-heading>span:first-child{width:100%;text-align:center}.showcase-controls{justify-content:center}.replay-button{justify-content:center;min-width:100%}.repair-showcase figcaption{align-items:flex-start;text-align:center}}
@media(prefers-reduced-motion:reduce){.repair-scene{transform:none!important;will-change:auto}.service-card:hover,.store-card:hover,.button:hover{transform:none}.scene-reflection{display:none}}
