:root{--mist:#e2f7f0;--ice:#f4fbf8;--wash:#ccece3;--deep:#173f4f;--petrol:#285c68;--sea:#0e7c72;--violet:#7451c8;--lime:#b8e432;--line:#8cbdb6;--soft:#5f7f82;--max:1180px;--gutter:52px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--mist);color:var(--deep);font-family:Arial,"Segoe UI",sans-serif;line-height:1.62}
a{color:inherit}
.wrap{width:min(calc(100% - var(--gutter)),var(--max));margin-inline:auto}
p{margin:0 0 18px;font-size:16px}
.topbar{background:var(--deep);color:var(--ice);border-bottom:6px solid var(--lime)}
.topbar-inner{display:grid;grid-template-columns:280px 1fr auto;align-items:center;min-height:94px}
.brand{display:grid;grid-template-columns:36px 1fr;gap:13px;align-items:center;text-decoration:none}
.brand-mark{width:36px;height:36px;border:2px solid var(--lime);position:relative}
.brand-mark:before,.brand-mark:after{content:"";position:absolute;background:var(--lime)}
.brand-mark:before{width:18px;height:2px;left:7px;top:10px;box-shadow:0 8px 0 var(--lime),0 16px 0 var(--lime)}
.brand-mark:after{width:2px;height:24px;left:16px;top:4px}
.brand strong{font-size:17px;line-height:1}
.brand span{display:block;margin-top:5px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#b7d9d6}
.service-note{padding:0 28px;border-left:1px solid #46707a;font-size:13px;color:#c8e0de}
.top-actions{display:flex;gap:8px}
.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 17px;border:2px solid transparent;text-decoration:none;font-weight:800;font-size:14px;transition:transform .14s ease,background .14s ease,color .14s ease}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
.btn-phone{background:var(--lime);color:var(--deep);border-color:var(--lime)}
.btn-report{border-color:#7ea2aa;color:var(--ice)}
.btn-report:hover{background:var(--ice);color:var(--deep)}
.intro-stage{background:var(--ice);border-bottom:1px solid var(--line)}
.intro-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:0;min-height:520px}
.intro-main{padding:82px 72px 70px 0;position:relative}
.intro-main:after{content:"";position:absolute;right:0;top:0;width:1px;height:100%;background:var(--line)}
.micro{display:flex;align-items:center;gap:12px;margin-bottom:22px;font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:var(--sea)}
.micro:before{content:"";width:42px;height:3px;background:var(--violet)}
h1{font-size:40px;line-height:1.08;letter-spacing:-.035em;margin:0 0 27px;max-width:690px}
h2{font-size:28px;line-height:1.16;letter-spacing:-.025em;margin:0}
h3{font-size:18px;line-height:1.3;margin:0}
.intro-lead{max-width:690px;font-size:16px;color:#3f626b}
.intro-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.intro-buttons .btn-report{border-color:var(--deep);color:var(--deep)}
.intro-buttons .btn-report:hover{background:var(--deep);color:var(--ice)}
.intro-meter{align-self:stretch;background:var(--wash);display:grid;grid-template-rows:auto 1fr}
.meter-head{padding:27px 28px 22px;border-bottom:1px solid var(--line);font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:var(--petrol)}
.meter-list{margin:0;padding:0;list-style:none;display:grid;align-content:start}
.meter-list li{display:grid;grid-template-columns:28px 1fr;gap:13px;padding:22px 28px;border-bottom:1px solid var(--line)}
.meter-list li:before{content:"";width:12px;height:12px;margin-top:5px;border:3px solid var(--sea)}
.meter-list li:nth-child(2):before{border-color:var(--violet)}
.meter-list li:nth-child(3):before{background:var(--lime);border-color:var(--lime)}
.meter-list li:nth-child(4):before{border-color:var(--deep)}
.meter-list span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--soft);font-weight:700}
.meter-list strong{display:block;margin-top:3px;font-size:17px}
.device-register{padding:80px 0 86px}
.register-head{display:grid;grid-template-columns:310px 1fr;gap:70px;align-items:end;padding-bottom:31px;border-bottom:4px solid var(--deep)}
.register-head p{max-width:640px;margin:0;color:var(--soft)}
.device-ledger{margin:0;padding:0;list-style:none}
.device-row{display:grid;grid-template-columns:88px 230px minmax(0,1fr);gap:24px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line)}
.device-code{font-size:12px;letter-spacing:.1em;font-weight:900;color:var(--violet);padding-top:4px}
.device-row:nth-child(4n+2) .device-code{color:var(--sea)}
.device-row:nth-child(4n+3) .device-code{color:#547c08}
.device-row:nth-child(4n) .device-code{color:var(--petrol)}
.device-row p{margin:0;color:#45686f}
.visit-map{background:var(--deep);color:var(--ice);padding:76px 0}
.visit-grid{display:grid;grid-template-columns:350px minmax(0,1fr);gap:68px}
.visit-copy h2{color:var(--ice)}
.visit-copy p{margin-top:22px;color:#c6dfdc}
.service-path{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #517681;border-left:1px solid #517681}
.path-step{position:relative;padding:27px 30px 30px;border-right:1px solid #517681;border-bottom:1px solid #517681;min-height:190px}
.path-step:before{content:attr(data-step);display:block;font-size:12px;letter-spacing:.12em;color:var(--lime);font-weight:900;margin-bottom:34px}
.path-step h3{color:var(--ice);margin-bottom:10px}
.path-step p{font-size:14px;color:#b7d2d0;margin:0}
.terms-zone{background:var(--ice);padding:82px 0}
.terms-layout{display:grid;grid-template-columns:minmax(0,1.2fr) 360px;gap:54px;align-items:start}
.price-panel{border-top:6px solid var(--violet);padding-top:28px}
.price-figure{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:end;padding:31px 0;border-bottom:1px solid var(--line)}
.price-figure strong{font-size:42px;line-height:1;color:var(--violet);letter-spacing:-.03em}
.price-figure span{font-size:13px;text-transform:uppercase;letter-spacing:.09em;color:var(--soft);padding-bottom:4px}
.price-panel p{max-width:760px;margin-top:22px}
.rules-board{background:var(--wash);border-left:6px solid var(--lime)}
.rule{padding:24px 26px;border-bottom:1px solid var(--line)}
.rule:last-child{border-bottom:0}
.rule strong{display:block;font-size:15px;margin-bottom:5px}
.rule span{display:block;font-size:14px;color:#45686f;line-height:1.5}
.availability{padding:0 0 80px;background:var(--ice)}
.availability-layout{display:grid;grid-template-columns:280px 1fr;border-top:4px solid var(--sea)}
.availability-title{padding:28px 32px 0 0;border-right:1px solid var(--line)}
.hours-table{margin:0;display:grid}
.hours-row{display:grid;grid-template-columns:1fr auto;gap:24px;padding:22px 0 22px 35px;border-bottom:1px solid var(--line)}
.hours-row dt{font-size:14px;color:var(--soft)}
.hours-row dd{margin:0;font-size:20px;font-weight:900}
.hours-row.closed dd{color:var(--violet)}
.hours-note{grid-column:2;margin:20px 0 0 35px;color:var(--soft)}
.local-extra{padding:23px 0;background:var(--mist);border-top:1px solid var(--line)}
.local-extra p{margin:0;color:#6a8988;font-size:14px}
.site-footer{background:var(--petrol);color:var(--ice);border-top:6px solid var(--violet)}
.footer-inner{min-height:126px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.footer-title strong{display:block;font-size:17px}
.footer-title span{display:block;font-size:13px;color:#c4dedd;margin-top:5px}
.footer-links{display:flex;gap:20px;align-items:center}
.footer-links a{font-size:13px;text-decoration:none;border-bottom:1px solid transparent}
.footer-links a:hover{border-color:var(--ice)}
.footer-links .quiet{color:#afcecc}
@media(max-width:980px){:root{--gutter:38px}
.topbar-inner{grid-template-columns:240px 1fr}
.service-note{display:none}
.top-actions{justify-self:end}
.intro-layout{grid-template-columns:minmax(0,1fr) 300px}
.intro-main{padding-right:45px}
.register-head{grid-template-columns:1fr;gap:18px}
.visit-grid{grid-template-columns:1fr;gap:42px}
.visit-copy{max-width:720px}
.terms-layout{grid-template-columns:1fr}
.rules-board{display:grid;grid-template-columns:repeat(3,1fr);border-left:0;border-top:6px solid var(--lime)}
.rule{border-right:1px solid var(--line);border-bottom:0}
.rule:last-child{border-right:0}
}
@media(max-width:700px){:root{--gutter:28px}
.topbar-inner{grid-template-columns:1fr;padding:16px 0}
.top-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;padding-top:14px}
.intro-layout{display:block;min-height:0}
.intro-main{padding:54px 0 48px}
.intro-main:after{display:none}
.intro-meter{border-top:1px solid var(--line)}
h1{font-size:40px}
.intro-lead{font-size:16px}
.intro-buttons{display:grid;grid-template-columns:1fr}
.register-head{padding-bottom:22px}
.device-register{padding:58px 0}
.device-row{grid-template-columns:52px 1fr;gap:8px 14px}
.device-row h3{grid-column:2}
.device-row p{grid-column:2}
.visit-map{padding:58px 0}
.service-path{grid-template-columns:1fr}
.path-step{min-height:0}
.terms-zone{padding:58px 0}
.price-figure{grid-template-columns:1fr;gap:10px}
.rules-board{display:block}
.rule{border-right:0;border-bottom:1px solid var(--line)}
.availability{padding-bottom:58px}
.availability-layout{display:block}
.availability-title{border-right:0;padding:0 0 22px}
.hours-row{padding-left:0}
.hours-note{grid-column:auto;margin-left:0}
.footer-inner{grid-template-columns:1fr;padding:28px 0;gap:18px}
.footer-links{flex-wrap:wrap}
}
@media(max-width:440px){.top-actions{grid-template-columns:1fr}
.device-row{grid-template-columns:1fr}
.device-code,.device-row h3,.device-row p{grid-column:1}
.device-code{padding-top:0}
.hours-row{grid-template-columns:1fr;gap:5px}
.hours-row dd{font-size:18px}
}

.path-step p,.local-extra p{font-size:16px}
.brand:focus-visible,.footer-links a:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
.brand:hover{color:var(--lime)}
.brand:active{color:#b7d9d6}
.footer-links a:active{color:var(--lime)}
.repair-meter .meter-list li:nth-child(4):before{background:var(--violet);border-color:var(--violet)}
.fault-console{padding:80px 0;background:var(--mist)}
.fault-console-grid,.offer-services-grid{display:grid;grid-template-columns:350px minmax(0,1fr);gap:68px;align-items:start}
.fault-label{display:block;margin-bottom:18px;color:var(--violet);font-size:12px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.fault-console-copy p,.offer-service-copy p,.offer-devices p,.offer-rules-copy p{color:var(--soft)}
.fault-console-copy h2,.offer-service-copy h2{margin-bottom:22px}
.fault-readings,.service-readings{border-top:4px solid var(--deep)}
.fault-readings article,.service-readings article{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:21px 0;border-bottom:1px solid var(--line)}
.fault-readings article>b,.service-readings article>b{color:var(--violet);font-size:12px;letter-spacing:.1em}
.fault-readings article:nth-child(2)>b,.service-readings article:nth-child(2)>b{color:var(--sea)}
.fault-readings article:nth-child(3)>b,.service-readings article:nth-child(3)>b{color:#547c08}
.fault-readings article:nth-child(4)>b,.service-readings article:nth-child(4)>b{color:var(--petrol)}
.fault-readings h3,.service-readings h3{margin-bottom:6px}
.fault-readings p,.service-readings p{margin:0;color:#45686f}
.diagnostic-visit{padding:76px 0;background:var(--deep);color:var(--ice)}
.diagnostic-visit-grid{display:grid;grid-template-columns:350px minmax(0,1fr);gap:68px}
.diagnostic-visit-grid>div>p{margin-top:22px;color:#c6dfdc}
.diagnostic-sequence{margin:0;padding:0;border-top:1px solid #517681;list-style:none}
.diagnostic-sequence li{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:19px 0;border-bottom:1px solid #517681}
.diagnostic-sequence li>b{color:var(--lime);font-size:12px;letter-spacing:.12em}
.diagnostic-sequence h3{margin-bottom:5px;color:var(--ice)}
.diagnostic-sequence p{margin:0;color:#b7d2d0}
.repair-terms{padding:82px 0;background:var(--ice)}
.repair-terms-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:54px;align-items:start}
.repair-price{padding-top:28px;border-top:6px solid var(--violet)}
.repair-price h2,.repair-availability h2{margin-bottom:22px}
.repair-price p{color:#45686f}
.repair-availability{padding:28px;background:var(--wash);border-left:6px solid var(--lime)}
.repair-availability p{color:#45686f}
.repair-availability .hours-table{border-top:1px solid var(--line)}
.repair-availability .hours-row{padding-left:0}
.offer-stage{background:var(--ice);border-bottom:1px solid var(--line)}
.offer-stage-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;min-height:500px}
.offer-stage-copy{display:flex;flex-direction:column;justify-content:center;padding:72px 72px 64px 0;border-right:1px solid var(--line)}
.offer-stage-copy h1{margin-bottom:27px}
.offer-stage-copy p{max-width:700px;color:#3f626b}
.offer-meter{background:var(--wash)}
.offer-meter-title{display:block;padding:24px 28px;border-bottom:1px solid var(--line);font-size:19px}
.offer-meter dl{margin:0}
.offer-meter dl div{display:grid;grid-template-columns:90px 1fr;gap:16px;padding:18px 28px;border-bottom:1px solid var(--line)}
.offer-meter dt{color:var(--soft);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.offer-meter dd{margin:0;font-weight:800}
.offer-services{padding:80px 0;background:var(--mist)}
.offer-devices{padding:74px 0;background:var(--ice);border-block:1px solid var(--line)}
.offer-devices-grid{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);gap:68px}
.offer-devices-grid h2{margin-bottom:20px}
.offer-device-list{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0;border-top:4px solid var(--deep);list-style:none}
.offer-device-list li{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:16px 8px 16px 0;border-bottom:1px solid var(--line)}
.offer-device-list li:nth-child(odd){border-right:1px solid var(--line)}
.offer-device-list li:nth-child(even){padding-left:20px}
.offer-device-list b{color:var(--violet);font-size:12px}
.offer-device-list span{font-weight:800}
.offer-rules{padding:80px 0;background:var(--ice)}
.offer-rules-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;border:1px solid var(--line)}
.offer-rules-copy{padding:42px 48px}
.offer-rules-copy h2,.offer-flow h2{margin-bottom:22px}
.offer-flow{padding:30px;background:var(--deep);color:var(--ice)}
.offer-flow ol{margin:0;padding:0;border-top:1px solid #517681;list-style:none}
.offer-flow li{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:15px 0;border-bottom:1px solid #517681}
.offer-flow li>b{color:var(--lime);font-size:12px}
.offer-flow li>span{color:#c6dfdc}
.offer-hours{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:24px;color:#b7d2d0;font-size:13px}
.offer-hours b{color:var(--lime)}

@media(max-width:980px){
    .fault-console-grid,.diagnostic-visit-grid,.repair-terms-grid,.offer-services-grid,.offer-devices-grid,.offer-rules-grid{grid-template-columns:1fr;gap:42px}
    .fault-console-copy,.offer-service-copy{max-width:760px}
    .repair-availability{border-left:0;border-top:6px solid var(--lime)}
    .offer-rules-grid{gap:0}
}

@media(max-width:700px){
    .fault-console,.diagnostic-visit,.repair-terms,.offer-services,.offer-devices,.offer-rules{padding:58px 0}
    .offer-stage-grid{display:block;min-height:0}
    .offer-stage-copy{padding:54px 0 48px;border-right:0}
    .offer-meter{border-top:1px solid var(--line)}
    .fault-readings article,.service-readings article{grid-template-columns:44px 1fr}
    .repair-availability,.offer-flow{padding:24px 22px}
    .offer-rules-copy{padding:30px 22px}
    .offer-device-list{grid-template-columns:1fr}
    .offer-device-list li,.offer-device-list li:nth-child(odd),.offer-device-list li:nth-child(even){padding:15px 0;border-right:0}
}

@media(max-width:440px){
    .fault-readings article,.service-readings article,.diagnostic-sequence li{grid-template-columns:1fr}
    .offer-meter dl div{grid-template-columns:1fr;gap:4px}
}
