:root {
  --black:#09090d;
  --black-soft:#101015;
  --panel:#16151c;
  --gold:#ffca08;
  --gold-bright:#ffdf46;
  --violet:#8f44dc;
  --ink:#16141c;
  --muted:#625f69;
  --paper:#f4f3f0;
  --line:#dedbd4;
  --width:1300px;
  scroll-behavior:smooth;
}
* { box-sizing:border-box; }
html { scroll-padding-top:90px; }
body { margin:0; color:var(--ink); background:var(--paper); font:400 15px/1.65 "DM Sans",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
a,button { -webkit-tap-highlight-color:transparent; }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
svg { display:block; }
img { display:block; max-width:100%; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-family:"Barlow Condensed",Impact,"Arial Narrow",sans-serif; line-height:.96; letter-spacing:.012em; }
.shell { width:min(calc(100% - 100px),var(--width)); margin:0 auto; }
.skip-link { position:fixed; z-index:100; top:-100px; left:10px; padding:12px 20px; background:#fff; color:#000; }
.skip-link:focus { top:10px; }
::selection { color:#08080c; background:var(--gold); }
:focus-visible { outline:3px solid #a66eff; outline-offset:4px; }

/* Utility, masthead */
.emergency-strip { color:#0b090d; background:var(--gold); font-size:11px; font-weight:700; letter-spacing:.09em; position:relative; z-index:25; }
.strip-inner { height:37px; display:flex; align-items:center; gap:12px; }
.strip-pulse { width:7px; height:7px; border-radius:50%; flex:none; background:#191119; box-shadow:0 0 0 4px #1c111c12; }
.strip-note { font-weight:600; letter-spacing:0; text-transform:none; opacity:.75; }
.strip-inner a { margin-left:auto; font-weight:800; white-space:nowrap; }
.strip-inner a span { padding-left:8px; }
.site-header { position:relative; z-index:24; height:93px; background:#09090d; border-bottom:1px solid #ffffff1d; color:#fff; }
.header-inner { display:flex; align-items:center; height:100%; gap:30px; }
.brand { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.brand-bolt { display:grid; place-items:center; width:45px; height:50px; color:var(--gold); filter:drop-shadow(0 2px 7px #fcca082e); }
.brand-bolt svg { width:39px; height:45px; }
.brand-stack { display:flex; flex-direction:column; line-height:1; }
.brand-name { font:italic 900 37px/.87 "Barlow Condensed",Impact,sans-serif; letter-spacing:-.025em; }
.brand-name small { font-size:16px; color:var(--gold); font-style:normal; vertical-align:baseline; }
.brand-caption { font:800 9px/1 "DM Sans",sans-serif; letter-spacing:.22em; color:var(--gold); margin-top:8px; }
.desktop-nav { display:flex; align-items:center; gap:32px; margin-left:auto; font-size:12px; font-weight:800; color:#c4bfca; }
.desktop-nav a { transition:color .2s; }
.desktop-nav a:hover { color:var(--gold); }
.header-contact { margin-left:16px; display:flex; align-items:center; gap:18px; padding:11px 14px 11px 20px; border:1px solid #5d5162; border-radius:2px; transition:border-color .2s; }
.header-contact:hover { border-color:var(--gold); }
.header-phone-label { font-size:9px; letter-spacing:.14em; font-weight:800; color:#9e95a6; }
.header-contact strong { font-size:14px; letter-spacing:-.02em; white-space:nowrap; }
.header-arrow { display:grid; place-items:center; width:28px; height:28px; background:var(--gold); color:#0a090d; font-size:18px; }
.menu-button { display:none; padding:8px; background:transparent; border:0; margin-left:auto; }
.menu-button span { width:24px; height:2px; background:var(--gold); display:block; margin:5px; }
.mobile-nav { display:none; }

/* Hero - an interpretation of the supplied business card */
.hero { color:#fff; background:var(--black); position:relative; overflow:hidden; isolation:isolate; }
.hero:before { content:""; position:absolute; inset:0; z-index:-2; pointer-events:none; background:
  radial-gradient(ellipse 51% 75% at 82% 47%,#4e157b7d 0%,#23143e5b 46%,transparent 83%),
  radial-gradient(ellipse 34% 50% at 55% 92%,#451a6166 0%,transparent 75%),
  repeating-linear-gradient(90deg,#ffffff08 0px,#ffffff08 1px,transparent 1px,transparent 92px),
  linear-gradient(117deg,#09090d 23%,#11101b 57%,#0c0715 100%);
}
.hero:after { content:""; position:absolute; top:0; right:0; width:58%; height:100%; z-index:-1; opacity:.29; background:repeating-linear-gradient(150deg,transparent 0 20px,#a45fef19 21px,transparent 22px 45px); mask-image:linear-gradient(to left,#000,transparent); }
.hero-storm { position:absolute; width:800px; height:650px; right:-60px; top:0; pointer-events:none; opacity:.8; background:radial-gradient(ellipse at center,#7944bf29,transparent 63%); filter:blur(12px); }
.storm-bolt { position:absolute; z-index:0; stroke:#bb78f0; stroke-width:2; fill:none; filter:drop-shadow(0 0 6px #ae4fff) drop-shadow(0 0 21px #8032c8); opacity:.56; pointer-events:none; }
.storm-bolt.bolt-one { width:250px; height:600px; top:-155px; right:1%; transform:rotate(13deg); }
.storm-bolt.bolt-two { width:250px; height:600px; bottom:-245px; left:43%; stroke-width:1; opacity:.35; transform:rotate(-29deg); }
.hero-content { min-height:680px; display:grid; grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr); gap:52px; align-items:center; position:relative; z-index:1; }
.hero-copy { padding:79px 0 79px; position:relative; z-index:2; }
.eyebrow { display:flex; gap:13px; align-items:center; color:#48444d; font-size:11px; font-weight:800; letter-spacing:.2em; margin:0 0 25px; }
.eyebrow-gold { color:var(--gold); }
.eyebrow-bolt { font-size:23px; line-height:.6; font-family:Georgia,serif; }
.eyebrow-rule { display:inline-block; flex:0 0 22px; height:1px; background:#97782a; }
.hero h1 { font-size:clamp(67px,7.9vw,119px); font-weight:900; font-style:italic; letter-spacing:-.008em; line-height:.81; margin:0 0 24px; position:relative; white-space:nowrap; text-shadow:0 5px 0 #0005; }
.hero h1 span { color:var(--gold); text-shadow:0 0 24px #ffc60023; }
.hero-subtitle { font:800 18px/1.3 "Barlow Condensed",sans-serif; letter-spacing:.095em; margin:0 0 21px; color:#f8f5ff; }
.hero-subtitle i { color:var(--gold); font-style:normal; padding:0 9px; }
.hero-lede { max-width:520px; color:#c5c0cc; font-size:15px; line-height:1.85; margin-bottom:32px; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.button { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; border:1px solid transparent; padding:16px 21px; min-height:54px; font-size:12px; font-weight:800; letter-spacing:.055em; text-transform:uppercase; transition:transform .2s,background .2s,border-color .2s; }
.button:hover { transform:translateY(-2px); }
.button span { font-size:20px; line-height:0; }
.button-gold { color:#0d0b10; background:var(--gold); border-color:var(--gold); box-shadow:inset 0 -3px 0 #cc920e; }
.button-gold:hover { background:var(--gold-bright); border-color:var(--gold-bright); }
.button-outline { color:#fff; border-color:#77717f; background:#0b0911aa; }
.button-outline:hover { border-color:var(--gold); background:#201a29; }
.hero-credentials { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:45px; color:#ccc5d1; font-size:10px; font-weight:800; letter-spacing:.19em; }
.credential-rule { width:29px; height:2px; background:var(--gold); margin-right:6px; }
.credential-dot { height:4px; width:4px; border-radius:50%; background:var(--gold); }
.hero-showcase { position:relative; min-height:510px; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.showcase-halo { position:absolute; width:92%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,#8f43d85e 0%,#58238842 31%,transparent 68%); filter:blur(8px); }
.showcase-halo:after { content:""; position:absolute; inset:7%; border:1px dashed #d391ff45; border-radius:50%; }
.showcase-card { position:relative; width:100%; max-width:620px; border:1px solid #d7a525bb; padding:8px; background:#120d1d; box-shadow:0 32px 90px #000b,0 0 75px #a044e13e; transform:perspective(1300px) rotateY(-7deg) rotateZ(2deg); transition:transform .35s; }
.showcase-card:hover { transform:perspective(1300px) rotateY(-1deg) rotateZ(0); }
.showcase-card img { width:100%; aspect-ratio:7/4; object-fit:cover; }
.showcase-index { position:absolute; left:6%; bottom:40px; color:#d5cbdc; font-size:9px; font-weight:800; letter-spacing:.25em; }
.showcase-cross { position:absolute; color:var(--gold); font:400 24px/1 monospace; }
.showcase-cross.one { top:20px; left:0; }
.showcase-cross.two { bottom:65px; right:0; }
.hero-bottom { position:relative; z-index:1; border-top:1px solid #493357; background:#0b0911bb; }
.bottom-inner { display:flex; align-items:center; gap:28px; min-height:54px; color:#a69cad; font-size:10px; letter-spacing:.19em; font-weight:800; }
.bottom-line { flex:1; height:1px; background:#543565; }
.bottom-inner span:last-child span { color:var(--gold); margin-left:8px; }
.marquee-band { background:var(--gold); overflow:hidden; }
.marquee-inner { display:flex; justify-content:space-between; gap:20px; min-height:54px; align-items:center; font:900 21px/1 "Barlow Condensed",sans-serif; letter-spacing:.095em; white-space:nowrap; }
.marquee-inner b { font:900 23px/1 Georgia,serif; margin-right:11px; }

/* Work categories */
.section { padding:117px 0; }
.services-section { background:#f5f4f1; }
.section-head { display:flex; align-items:end; justify-content:space-between; gap:60px; margin-bottom:48px; }
.small-line { display:inline-block; width:25px; height:2px; background:var(--gold); }
.section-head h2,.about-copy h2,.contact-info h2 { font-size:clamp(67px,6.3vw,100px); font-weight:900; font-style:italic; margin:0; }
.section-head h2 span,.about-copy h2 span,.contact-info h2 span { color:#b68d00; }
.section-head>p { max-width:390px; font-size:14px; line-height:1.85; margin:0 0 7px; color:#625f67; }
.services-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.service-card { background:#fff; padding:32px; border:1px solid #dedbd5; border-top:4px solid var(--gold); position:relative; transition:transform .25s,box-shadow .25s; display:flex; flex-direction:column; min-height:520px; overflow:hidden; }
.service-card:after { content:""; position:absolute; top:0; right:0; border-top:40px solid #ffca0817; border-left:40px solid transparent; }
.service-card:hover { transform:translateY(-6px); box-shadow:0 22px 45px #211c2a18; }
.service-card-top { display:flex; justify-content:space-between; align-items:center; gap:14px; }
.service-number { font-size:11px; font-weight:800; letter-spacing:.17em; color:#69636f; }
.service-arrow { font-size:24px; color:#a58000; line-height:1; }
.service-symbol { width:80px; height:80px; display:grid; place-items:center; margin:35px 0 13px; background:#f8f2d5; color:#231824; clip-path:polygon(0 0,100% 0,100% 75%,75% 100%,0 100%); }
.service-symbol svg { width:55px; height:55px; stroke:#3c333d; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.service-symbol svg path:last-child { stroke:#9d7600; }
.service-card h3 { font-size:42px; font-weight:900; font-style:italic; letter-spacing:0; margin:4px 0 12px; }
.service-card>p { font-size:13px; color:#625f68; line-height:1.8; margin:0 0 23px; max-width:330px; }
.service-card ul { margin:auto 0 0; padding:22px 0 0; list-style:none; border-top:1px solid #e3e0da; }
.service-card li { color:#39343d; font-size:12px; font-weight:700; padding:6px 0 6px 20px; position:relative; }
.service-card li:before { content:"ϟ"; position:absolute; left:0; color:#bc9000; font-family:Georgia,serif; font-size:16px; top:3px; }
.services-bottom { margin-top:28px; display:flex; justify-content:space-between; align-items:center; border-top:1px solid #d6d2ca; padding:26px 0 0; font-size:12px; font-weight:800; letter-spacing:.11em; }
.services-bottom>a { color:#8a6900; }
.services-bottom>a span { font-size:17px; margin-left:12px; }

/* Emergency */
.emergency-section { overflow:hidden; background:radial-gradient(ellipse at 35% 50%,#3b1956 0%,#19101f 43%,#0b090f 92%); color:#fff; border-top:3px solid var(--gold); border-bottom:3px solid var(--gold); position:relative; }
.emergency-section:after { content:""; position:absolute; inset:0; pointer-events:none; background:repeating-linear-gradient(-45deg,transparent 0 34px,#ffffff05 35px,#ffffff05 36px); opacity:.5; }
.emergency-layout { position:relative; z-index:1; display:grid; grid-template-columns:100px 1fr auto; align-items:center; gap:45px; min-height:280px; padding:40px 0; }
.emergency-lightning { font:900 175px/.7 Georgia,serif; color:var(--gold); text-shadow:0 0 30px #ffc40091,0 0 95px #7d32ce7a; transform:rotate(-9deg); }
.emergency-content .eyebrow { margin-bottom:18px; }
.emergency-content h2 { font-size:clamp(48px,4.6vw,69px); font-style:italic; font-weight:900; margin:0 0 12px; }
.emergency-content h2 span { color:var(--gold); }
.emergency-content p:not(.eyebrow) { margin:0 0 7px; max-width:550px; color:#d9cfe0; font-size:13px; }
.emergency-content small { color:#ceb5db; font-size:11px; }
.emergency-button { white-space:nowrap; align-self:center; }

/* Company story */
.about-section { background:#101014; color:#fff; position:relative; overflow:hidden; }
.about-section:before { content:""; position:absolute; width:600px; height:500px; right:-150px; bottom:-180px; background:radial-gradient(ellipse,#53237f58,transparent 70%); pointer-events:none; }
.about-layout { display:grid; grid-template-columns:1fr 47%; gap:8%; align-items:center; position:relative; }
.about-copy .eyebrow { color:var(--gold); }
.about-copy h2 { font-size:clamp(69px,6.1vw,98px); margin-bottom:28px; }
.about-copy h2 span { color:var(--gold); }
.about-copy>p:not(.eyebrow) { color:#b7afbd; font-size:14px; line-height:1.9; max-width:510px; }
.about-copy .about-lead { font-size:16px!important; color:#f5eef8!important; }
.about-copy .about-lead strong { color:var(--gold); }
.about-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; margin-top:43px; padding-top:25px; border-top:1px solid #493d50; }
.about-facts div { display:grid; align-content:start; gap:7px; }
.about-facts div>span { color:var(--gold); font:800 14px/1 "Barlow Condensed",sans-serif; }
.about-facts strong { font-size:10px; line-height:1.3; letter-spacing:.11em; }
.about-facts small { font-size:10px; line-height:1.5; color:#aaa0b0; }
.about-card-wrap { position:relative; background:#1c1426; padding:15px; border:1px solid #79548d; box-shadow:18px 18px 0 #ffca081c,0 25px 75px #0006; }
.about-card-wrap img { width:100%; }
.about-card-label { display:flex; justify-content:space-between; align-items:center; color:var(--gold); font-size:10px; font-weight:800; letter-spacing:.17em; padding:0 2px 14px; }
.about-card-label span { font-size:19px; }
.about-image-foot { display:flex; justify-content:space-between; gap:15px; font-size:9px; letter-spacing:.16em; font-weight:800; color:#b5a4c0; padding:15px 2px 0; }

/* Contact */
.contact-section { background:#f2f0ea; }
.contact-layout { display:grid; grid-template-columns:42% 1fr; gap:9%; }
.contact-info .eyebrow { color:#786001; }
.contact-info h2 { font-size:clamp(74px,6.5vw,102px); }
.contact-info h2 span { color:#b18a00; }
.contact-info>p:not(.eyebrow) { font-size:14px; line-height:1.85; color:#645d69; margin:24px 0 31px; max-width:410px; }
.contact-details { max-width:460px; }
.contact-details>div { display:grid; gap:8px; padding:20px 0; border-top:1px solid #d7d3ce; }
.contact-details>div:last-child { border-bottom:1px solid #d7d3ce; }
.contact-details>div>span { color:#736c76; font-size:10px; font-weight:800; letter-spacing:.17em; }
.contact-details a,.contact-details strong { font:800 21px/1.2 "Barlow Condensed",sans-serif; color:#18141d; letter-spacing:.035em; overflow-wrap:anywhere; }
.contact-details a { display:flex; justify-content:space-between; gap:10px; }
.contact-details a:hover { color:#8f6700; }
.contact-details a span { color:#aa8000; }
.contact-form-card { background:#fff; border:1px solid #e0dbd2; border-top:5px solid var(--gold); box-shadow:0 20px 70px #1b0d2920; padding:39px 42px; }
.form-head { border-bottom:1px solid #e7e1d9; padding-bottom:23px; margin-bottom:28px; display:flex; justify-content:space-between; align-items:center; }
.form-head div>span { color:#9e7900; letter-spacing:.2em; font-size:10px; font-weight:800; }
.form-head h3 { font-size:37px; font-weight:900; font-style:italic; margin:5px 0 0; }
.form-head>span { color:var(--gold); font:900 44px/1 Georgia,serif; }
.contact-form-card form { display:grid; gap:22px; }
.form-pair { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.contact-form-card label { display:grid; gap:9px; color:#302b32; font-size:12px; font-weight:800; }
.contact-form-card input,.contact-form-card select,.contact-form-card textarea { border:1px solid #d8d4d0; background:#faf9f6; border-radius:0; color:#222; outline:0; font:400 13px/1.5 "DM Sans",sans-serif; padding:15px 14px; min-width:0; width:100%; }
.contact-form-card input:focus,.contact-form-card select:focus,.contact-form-card textarea:focus { border-color:#be8d00; box-shadow:0 0 0 3px #f8d94e4d; }
.contact-form-card textarea { resize:vertical; min-height:118px; }
.submit-button { width:100%; justify-content:space-between; margin-top:2px; }
.form-status { color:#817a80; line-height:1.7; margin:-7px 0 0; font-size:11px; }
.form-status.success { color:#306235; }
.form-status.error { color:#9e3434; }
.inquiry-preview { white-space:pre-wrap; overflow-wrap:anywhere; margin:0; background:#f4f1de; padding:15px; border:1px solid #dcca9c; font:12px/1.7 monospace; }
.inquiry-preview[hidden] { display:none; }

/* Footer */
.site-footer { background:#09090d; color:#fff; border-top:5px solid var(--gold); }
.footer-upper { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:55px 0; }
.footer-wordmark { display:flex; flex-direction:column; font:italic 900 53px/.9 "Barlow Condensed",sans-serif; letter-spacing:-.025em; }
.footer-wordmark small { display:inline; font-size:24px; color:var(--gold); }
.footer-wordmark>span { color:var(--gold); font:800 10px/1 "DM Sans",sans-serif; letter-spacing:.2em; margin-top:11px; }
.footer-upper>p { font-size:13px; color:#aaa3b1; line-height:1.85; margin:0; }
.footer-call { font:800 30px/1 "Barlow Condensed",sans-serif; white-space:nowrap; }
.footer-call span { color:var(--gold); margin-left:14px; }
.footer-call:hover { color:var(--gold); }
.footer-lower { border-top:1px solid #3c303f; padding:22px 0; display:flex; justify-content:space-between; gap:20px; color:#8f8795; font-size:10px; letter-spacing:.06em; font-weight:700; }
.footer-lower a:hover { color:var(--gold); }

@media(max-width:1220px) {
  .shell { width:min(calc(100% - 70px),var(--width)); }
  .desktop-nav { gap:20px; }
  .header-phone-label { display:none; }
  .header-contact { margin-left:0; }
  .hero-content { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:23px; }
  .hero h1 { font-size:clamp(65px,8vw,103px); }
  .hero-showcase { min-height:480px; }
  .service-card { padding:26px; }
  .emergency-layout { gap:25px; }
}
@media(max-width:950px) {
  .site-header { height:78px; }
  .desktop-nav,.header-contact { display:none; }
  .menu-button { display:block; }
  .mobile-nav { display:grid; position:absolute; left:0; right:0; top:78px; padding:12px 35px 21px; background:#100e16; border-bottom:2px solid var(--gold); box-shadow:0 20px 40px #0009; }
  .mobile-nav[hidden] { display:none; }
  .mobile-nav a { padding:14px 5px; border-bottom:1px solid #ffffff1c; font-size:13px; font-weight:800; }
  .hero-content { grid-template-columns:1fr; min-height:0; gap:0; }
  .hero-copy { padding:72px 0 20px; }
  .hero h1 { font-size:clamp(74px,12vw,118px); }
  .hero-showcase { min-height:340px; padding:0 15% 55px; }
  .showcase-halo { width:70%; }
  .showcase-index { bottom:20px; left:17%; }
  .storm-bolt.bolt-one { right:-10%; top:120px; }
  .marquee-inner { font-size:18px; }
  .services-grid { gap:12px; }
  .service-card { padding:21px; min-height:560px; }
  .service-card h3 { font-size:35px; }
  .service-symbol { margin-top:24px; }
  .emergency-layout { grid-template-columns:74px 1fr; gap:25px; padding:43px 0; }
  .emergency-lightning { font-size:130px; }
  .emergency-button { grid-column:2; justify-self:start; }
  .about-layout { grid-template-columns:1fr; gap:49px; }
  .about-card-wrap { max-width:680px; }
  .contact-layout { grid-template-columns:1fr; gap:50px; }
  .contact-details { max-width:100%; }
}
@media(max-width:640px) {
  .shell { width:min(calc(100% - 36px),var(--width)); }
  .emergency-strip { font-size:9px; letter-spacing:.04em; }
  .strip-inner { min-height:38px; height:auto; }
  .strip-note { display:none; }
  .brand-bolt { width:34px; height:40px; }
  .brand-bolt svg { width:33px; height:40px; }
  .brand { gap:7px; }
  .brand-name { font-size:32px; }
  .brand-name small { font-size:12px; }
  .brand-caption { font-size:7px; letter-spacing:.18em; margin-top:6px; }
  .hero-copy { padding:58px 0 20px; }
  .hero .eyebrow { font-size:9px; gap:8px; letter-spacing:.085em; flex-wrap:wrap; margin-bottom:23px; }
  .hero h1 { font-size:clamp(51px,13.1vw,79px); line-height:.87; }
  .hero-subtitle { font-size:15px; letter-spacing:.04em; }
  .hero-subtitle i { padding:0 4px; }
  .hero-lede { font-size:13px; line-height:1.8; }
  .hero-actions { gap:9px; }
  .hero-actions .button { padding:14px 13px; font-size:10px; min-height:48px; gap:11px; }
  .hero-credentials { margin-top:32px; font-size:9px; }
  .hero-showcase { padding:3px 2% 35px; min-height:270px; }
  .showcase-card { padding:4px; transform:rotate(2deg); }
  .showcase-index,.showcase-cross { display:none; }
  .bottom-inner { font-size:9px; gap:13px; letter-spacing:.05em; }
  .marquee-inner { gap:20px; min-height:48px; font-size:15px; }
  .marquee-inner span:last-child { display:none; }
  .marquee-inner b { margin-right:4px; font-size:15px; }
  .section { padding:74px 0; }
  .section-head { display:block; margin-bottom:30px; }
  .section-head h2,.about-copy h2,.contact-info h2 { font-size:clamp(57px,13.4vw,85px); }
  .section-head>p { margin:19px 0 0; }
  .services-grid { grid-template-columns:1fr; gap:15px; }
  .service-card { min-height:0; padding:25px; }
  .service-symbol { margin:24px 0 10px; }
  .service-card h3 { font-size:43px; }
  .service-card ul { margin-top:18px; }
  .services-bottom { display:grid; gap:8px; font-size:10px; }
  .emergency-layout { grid-template-columns:1fr; gap:7px; padding:51px 0; }
  .emergency-lightning { position:absolute; z-index:-1; right:5%; top:25%; font-size:185px; opacity:.18; }
  .emergency-content h2 { font-size:clamp(46px,11.5vw,67px); }
  .emergency-button { grid-column:1; margin-top:23px; }
  .about-copy h2 { margin-bottom:23px; }
  .about-facts { gap:7px; margin-top:31px; }
  .about-facts strong { font-size:9px; letter-spacing:.05em; }
  .about-facts small { font-size:9px; }
  .about-card-wrap { padding:8px; box-shadow:8px 8px 0 #ffca081c; }
  .about-card-label,.about-image-foot { font-size:8px; }
  .contact-layout { gap:33px; }
  .contact-form-card { padding:26px 19px; }
  .form-head h3 { font-size:32px; }
  .form-pair { grid-template-columns:1fr; }
  .footer-upper { display:grid; gap:22px; padding:45px 0; }
  .footer-upper>p { font-size:12px; }
  .footer-lower { display:grid; gap:12px; font-size:9px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .button,.showcase-card,.service-card,.desktop-nav a { transition:none; }
}
