:root{--ink:#171d26;--blue:#2569d2;--accent:#83b7ff;--light:#f2f5f9;--muted:#596578;--line:#d9e1eb;--body:'DM Sans',Arial,sans-serif;--radius:26px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ink);color:#f9fbff;font:400 1rem/1.7 var(--body)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.12;letter-spacing:-.045em}a:focus-visible,button:focus-visible{outline:3px solid #438cff;outline-offset:5px}.skip-link{position:fixed;top:-100px;left:20px;padding:12px;background:white;color:var(--ink);z-index:50}.skip-link:focus{top:12px}.header{max-width:1480px;margin:auto;padding:26px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:grid;grid-template-columns:52px auto;column-gap:12px;align-items:center;line-height:1}.brand-mark{width:52px;height:52px;grid-row:1/3}.brand-name{font-size:1.65rem;font-weight:700;letter-spacing:-.055em}.brand-subtitle{font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;margin-top:6px}.header nav{display:flex;align-items:center;gap:32px;font-size:.875rem}.header nav>a{padding:10px 0}.header nav>a:hover,.header nav>[aria-current=page]{color:var(--accent)}.header nav>.nav-cta{padding:12px 22px;border:1px solid #52647e;border-radius:100px;color:white}.nav-cta:hover{background:#29394f}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border:1px solid transparent;border-radius:100px;font-size:.875rem;font-weight:600;min-height:50px;cursor:pointer;line-height:1.5;transition:background .22s,box-shadow .22s,transform .22s}.primary,.dark{background:var(--blue);color:white}.primary:hover,.dark:hover{background:#1c57b2;box-shadow:0 8px 24px #1756ba26;transform:translateY(-2px)}.secondary{border-color:#8192aa77;background:transparent;color:inherit}.secondary:hover{background:#ffffff12}.text-link{display:inline-block;font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:7px;padding-block:9px}.text-link:hover{color:var(--blue)}.eyebrow{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;line-height:1.6}.hero{max-width:1440px;margin:10px auto 50px;padding:0 3%;display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:3%;position:relative}.hero-copy{padding:40px 0 40px 4%}.hero .eyebrow{color:#a6bad5;font-size:.7rem}.hero h1{font-size:clamp(3.5rem,5.8vw,5.8rem);line-height:1.03;margin:25px 0 28px;letter-spacing:-.065em}.hero h1 em{font-style:normal;color:var(--accent)}.hero-description{color:#bdc9da;max-width:435px;font-size:1.0625rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-note{display:flex;gap:22px;color:#a8b8ce;font-size:.625rem;letter-spacing:.12em;margin-top:55px}.hero-image{position:relative;overflow:hidden;border-radius:32px;aspect-ratio:1/1.14;background:#303e50}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:50% 62%}.hero-image:after{content:'';position:absolute;inset:68% 0 0;background:linear-gradient(transparent,#111a27e8);pointer-events:none}.image-label{position:absolute;bottom:28px;left:32px;right:24px;z-index:1}.image-label>span{font-weight:600;font-size:1rem}.image-label p{font-size:.75rem;color:#d0dae8;margin-top:3px}.section-pad{padding:90px max(6%,calc((100vw - 1260px)/2))}.services{background:var(--light);color:var(--ink);border-radius:40px 40px 0 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}.section-heading .eyebrow{color:#4f6688;margin-bottom:18px}h2{font-size:clamp(2.5rem,3.8vw,3.8rem)}.section-heading>p{max-width:370px;font-size:.9375rem;color:var(--muted)}.featured-service{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-height:410px}.feature-photo{min-height:410px;position:relative}.feature-photo img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 57%}.feature-copy{padding:45px 9%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.feature-copy .eyebrow,.service-copy .eyebrow{color:#577192}.feature-copy h3,.service-copy h3,.supplies-service h3{font-size:clamp(1.85rem,2.5vw,2.6rem);margin:18px 0}.feature-copy>p:not(.eyebrow),.service-copy>p:not(.eyebrow){color:var(--muted);font-size:.9375rem}.feature-copy .button{margin-top:25px}.service-phone{font-size:.75rem;color:var(--muted);margin-top:12px}.service-pair{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;margin-top:24px}.repair-service{display:grid;grid-template-columns:.72fr 1fr;background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.repair-photo{min-height:390px;position:relative}.repair-photo img{position:absolute;width:100%;height:100%;object-fit:cover}.service-copy{padding:32px 26px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.service-copy h3{font-size:1.8rem}.service-copy .text-link{margin-top:20px}.supplies-service{padding:38px;background:#233d60;color:#fff;border-radius:var(--radius);display:flex;flex-direction:column;justify-content:center}.supplies-service .eyebrow{color:#a8caf8}.supplies-service>p:not(.eyebrow){color:#c4d4e9;font-size:.9375rem}.supplies-contact{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:24px}.supplies-contact .text-link:hover{color:var(--accent)}.about{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;background:#fff;color:var(--ink);border-top:1px solid var(--line)}.about .eyebrow{color:#4f6688;margin-bottom:22px}.about h2{font-size:clamp(2.3rem,3.3vw,3.4rem)}.about h2 span{color:#6083b5}.about-copy p{color:var(--muted);margin-bottom:20px}.about-copy .text-link{color:var(--blue)}.contact{background:#e7edf5;color:var(--ink)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card{background:#fff;border:1px solid #d2ddea;border-radius:var(--radius);padding:32px}.contact-card .eyebrow{color:#4f6688}.contact-card h3{font-size:1.75rem;margin-top:20px}.phone{display:block;font-size:clamp(1.7rem,2.5vw,2.5rem);letter-spacing:-.05em;margin:24px 0}.contact-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.inquiry-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 30px;background:#d7e3f3;border-radius:20px;margin-top:24px}.email-link{display:block;overflow-wrap:anywhere;font-size:.9375rem;margin-top:5px}.email-link:hover{text-decoration:underline}.location{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:36px}.location .eyebrow{margin-bottom:8px}address{font-style:normal}.location>p{font-size:.875rem;color:var(--muted)}.footer{padding:48px 6% 24px;max-width:1440px;margin:auto}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:36px}.footer-top>p{color:#b9c6d8;font-size:.875rem}.back-top{font-size:.875rem}.footer-bottom{border-top:1px solid #364253;padding-top:24px;display:flex;justify-content:space-between;gap:16px;font-size:.75rem;color:#b9c6d8}.footer-bottom strong{color:#fff;font-weight:500}
.contact-intro{max-width:1440px;margin:auto;padding-top:55px;padding-bottom:65px}.contact-intro .eyebrow{color:var(--accent)}.contact-intro h1{font-size:clamp(2.8rem,5vw,4.8rem);margin:20px 0}.contact-intro em{font-style:normal;color:var(--accent)}.contact-intro>p:last-child{max-width:580px;color:#bdc9da}.contact-workspace{background:var(--light);color:var(--ink);border-radius:40px 40px 0 0;display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start;padding-top:55px;padding-bottom:65px}.form-panel{background:#fff;padding:38px;border-radius:var(--radius);border:1px solid var(--line)}.form-panel>.eyebrow{color:#4f6688}.form-panel h2{font-size:2.25rem;margin:16px 0}.form-intro{font-size:.875rem;color:var(--muted);margin-bottom:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:22px;min-width:0}.field label{font-size:.875rem;font-weight:600}.field label span{font-weight:400;color:var(--muted)}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid #cbd6e4;background:#f9fbfd;border-radius:12px;padding:13px 15px;font-size:1rem;color:var(--ink);min-height:50px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:2px;background:#fff}.field textarea{resize:vertical;min-height:150px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-privacy{font-size:.8125rem;color:var(--muted);margin-bottom:22px}.form-privacy a{text-decoration:underline}.form-status{font-size:.875rem;margin-top:15px}.form-status:empty{display:none}.submit-button:disabled{opacity:.6;cursor:wait}.sales-note{background:#e7f0ff;padding:16px;border-radius:12px;font-size:.875rem;margin-bottom:22px}.sales-note a{text-decoration:underline}.contact-sidebar{display:grid;gap:18px}.details-card{padding:28px;border-radius:var(--radius);border:1px solid var(--line);background:#fff}.details-card .eyebrow{color:#4f6688}.details-card h3{font-size:1.65rem;margin:15px 0}.sidebar-phone{display:block;font-size:1.65rem;letter-spacing:-.045em;margin:10px 0}.details-card>p:not(.eyebrow){color:var(--muted);font-size:.9375rem}.details-card .text-link{margin-top:10px}.location-card{background:#233d60;color:#fff}.location-card .eyebrow{color:var(--accent)}.location-card>p:not(.eyebrow){color:#bdcde3;margin-top:15px}.location-card .text-link:hover{color:white}.motion .reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.motion .reveal.visible{opacity:1;transform:none}
@keyframes enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){.hero-copy{animation:enter .7s both}.hero-image{animation:enter .8s .1s both}.featured-service,.repair-service,.supplies-service{transition:box-shadow .3s,transform .3s}.featured-service:hover,.repair-service:hover,.supplies-service:hover{box-shadow:0 15px 40px #22375214}}
@media(max-width:1050px){.header nav{gap:20px}.hero h1{font-size:4rem}.hero-note{gap:14px;margin-top:30px}.hero-image{aspect-ratio:1/1.35}.service-pair{grid-template-columns:1fr 1fr}.repair-service{grid-template-columns:1fr}.repair-photo{min-height:190px;max-height:190px}.service-copy{padding:28px}.supplies-service{padding:30px}.contact-workspace{grid-template-columns:1.3fr 1fr;gap:22px}.form-row{grid-template-columns:1fr;gap:0}.form-panel{padding:28px}.contact-intro h1{font-size:3.5rem}}
@media(max-width:760px){.header{padding:20px 6%;position:relative;z-index:10}.brand-mark{width:44px;height:44px}.wordmark{grid-template-columns:44px auto;gap:0 8px}.brand-name{font-size:1.5rem}.brand-subtitle{font-size:.6rem}.menu-toggle{display:block;background:transparent;border:1px solid #596d87;border-radius:100px;color:white;padding:9px 18px;min-height:44px;font-size:.875rem}.header nav{display:none;position:absolute;left:4%;right:4%;top:100%;padding:20px;background:#202d40;border:1px solid #425775;border-radius:22px;box-shadow:0 16px 35px #0004;flex-direction:column;align-items:stretch;gap:5px}.header nav.open{display:flex}.header nav>a{padding:12px}.header nav>.nav-cta{margin-top:6px;text-align:center}.hero{display:flex;flex-direction:column;padding:0 5%;gap:30px;margin:0 auto 35px;align-items:stretch}.hero-copy{padding:28px 2% 0}.hero .eyebrow{font-size:.65rem}.hero h1{font-size:clamp(3rem,10.5vw,4.8rem);margin:20px 0 24px}.hero-description{font-size:1rem;max-width:460px}.hero-actions{gap:10px;margin-top:25px}.hero-actions .button{padding:13px 18px;font-size:.8125rem}.hero-note{margin-top:27px;font-size:.6rem;flex-wrap:wrap}.hero-image{aspect-ratio:1/.98;border-radius:24px}.hero-image img{object-position:50% 66%}.image-label{left:22px;bottom:20px}.image-label p{font-size:.7rem}.section-pad{padding:58px 6%}.services,.contact-workspace{border-radius:28px 28px 0 0}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:22px;max-width:100%}h2{font-size:2.6rem}.featured-service{grid-template-columns:1fr}.feature-photo{min-height:290px}.feature-copy{padding:30px}.feature-copy h3{font-size:2rem}.service-pair{grid-template-columns:1fr;gap:20px;margin-top:20px}.repair-service{grid-template-columns:.75fr 1fr}.repair-photo{min-height:330px;max-height:none}.service-copy{padding:25px 22px}.service-copy h3{font-size:1.6rem}.service-copy>p:not(.eyebrow){font-size:.875rem}.supplies-service{padding:32px}.supplies-service h3{font-size:2rem}.supplies-contact{flex-direction:row;flex-wrap:wrap;align-items:center;gap:18px}.about{grid-template-columns:1fr;gap:28px}.about h2{font-size:2.5rem}.contact-grid{grid-template-columns:1fr;gap:20px}.contact-card{padding:28px}.contact-card h3{font-size:1.7rem}.phone{font-size:2rem;margin-block:20px}.inquiry-banner{align-items:flex-start;flex-direction:column;padding:24px}.location{align-items:flex-start;flex-direction:column;gap:18px}.footer{padding:35px 6% 24px}.footer-top{flex-wrap:wrap;align-items:flex-start}.footer-top>p{order:3;width:100%}.footer-bottom{flex-direction:column}.contact-intro{padding-top:30px;padding-bottom:45px}.contact-intro h1{font-size:clamp(2.6rem,8.5vw,4rem)}.contact-workspace{grid-template-columns:1fr;gap:22px;padding-top:28px}.form-panel{padding:25px}.form-panel h2{font-size:2rem}.submit-button{width:100%}.contact-sidebar{gap:18px}}
@media(max-width:380px){.hero-actions{align-items:stretch;flex-direction:column}.hero h1{font-size:3rem}.hero-image{aspect-ratio:1/1.2}.repair-service{grid-template-columns:1fr}.repair-photo{min-height:200px;max-height:200px}.service-copy{padding:28px}.wordmark{grid-template-columns:38px auto}.brand-mark{width:38px;height:38px}.brand-name{font-size:1.3rem}.menu-toggle{padding-inline:15px}.feature-copy{padding:25px}.contact-actions{gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}.button:hover{transform:none}}

/* Consistent charcoal surfaces and restrained blue highlights. */
:root{color-scheme:dark;--ink:#11161e;--light:#151c27;--muted:#aebacc;--line:#303b4d;--accent:#91bdff}
body{background:radial-gradient(ellipse 75% 650px at 75% 0,#1c2b43 0,transparent 75%),var(--ink);color:#f0f4fa}
.header{border-bottom:1px solid #a0b7d30d}
.services,.contact-workspace{background:linear-gradient(145deg,#18212e,#121923);color:#f0f4fa;border-top:1px solid #344259}
.featured-service,.repair-service,.form-panel,.details-card,.contact-card{background:linear-gradient(140deg,#202a38,#19212d);color:#f0f4fa;border-color:#344155;box-shadow:0 15px 35px #00000016,inset 0 1px 0 #ffffff03}
.featured-service:hover,.repair-service:hover,.supplies-service:hover{box-shadow:0 20px 42px #00000030}
.section-heading .eyebrow,.feature-copy .eyebrow,.service-copy .eyebrow,.about .eyebrow,.contact-card .eyebrow,.form-panel>.eyebrow,.details-card .eyebrow{color:#98b9e5}
.supplies-service,.location-card{background:linear-gradient(135deg,#223b5d,#17263c);border:1px solid #385474}
.about{background:#111923;color:#f0f4fa;border-color:#2c3849}
.about h2 span{color:#8ba9d1}.about-copy .text-link,.text-link:hover{color:#a6caff}
.contact{background:linear-gradient(150deg,#192435,#131c29);color:#f0f4fa;border-top:1px solid #2d3e55}
.inquiry-banner{background:linear-gradient(110deg,#233955,#1b2d45);border:1px solid #3c5575}
.inquiry-banner .eyebrow,.location .eyebrow{color:#98b9e5}
.hero-image{border:1px solid #3b4a60;box-shadow:0 24px 60px #00000025}
.primary,.dark{background:linear-gradient(135deg,#2b73df,#225cb8);border-color:#5a96f044;box-shadow:inset 0 1px 0 #ffffff15}
.primary:hover,.dark:hover{background:#3279e3;box-shadow:0 8px 24px #0c193650}
.secondary{border-color:#667b9866;background:#ffffff03}.secondary:hover{background:#ffffff08;border-color:#839bc1}
.field input,.field select,.field textarea{background:#101925;color:#f0f4fa;border-color:#41516a}
.field input::placeholder,.field textarea::placeholder{color:#a2b0c5;opacity:1}
.field input:focus,.field select:focus,.field textarea:focus{background:#142033;outline-color:#78adff;box-shadow:0 0 0 5px #438cff12}
.field select option{background:#142033;color:#f0f4fa}
.sales-note{background:#203853;color:#d6e6fc;border:1px solid #3f6089}.sales-note a{color:#b6d4ff}
.form-status{color:#c1d7f5}.footer-bottom{border-color:#2c384a}
.footer{background:transparent}.footer-top>p,.footer-bottom{color:#aab8cc}
.hero-note{font-size:.75rem}.hero .eyebrow{font-size:.75rem}
