/* Austin Key Pro: shared presentation and accessibility refinements. */
:root{--brand:#0369a1;--ink:#102039;--muted:#51627a;--line:#dce4ee;--paper:#f6f8fb}
main .grid>*,main a[href^="mailto:"]{min-width:0;overflow-wrap:anywhere}
html{scroll-behavior:smooth;scroll-padding-top:132px}body{color:var(--ink);background:var(--paper)}
[hidden]{display:none!important}a,button,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #0284c7!important;outline-offset:4px!important}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:10001;background:white;color:var(--ink);padding:12px 18px;border-radius:8px}.skip-link:focus{left:12px}
.site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line)}
.header-inner{max-width:1184px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 16px}
.site-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.site-brand img{width:39px;height:42px;object-fit:contain}.site-brand strong{font-size:18px;letter-spacing:-.35px;display:block}.site-brand small{font-size:11px;color:var(--muted);display:block}
.desktop-nav{display:flex;gap:2px}.desktop-nav a{padding:11px 9px;font-size:13px;font-weight:600;border-radius:8px;white-space:nowrap}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--brand);background:#edf7fc}
.header-actions{display:flex;align-items:center;gap:12px}.language-toggle{display:flex;border:1px solid var(--line);border-radius:7px;overflow:hidden}.language-toggle button{padding:8px 9px!important;font-size:12px;min-height:38px}.language-toggle .lang-active{background:var(--brand)!important;color:white!important}
.header-call{background:var(--brand);color:white;padding:11px 14px;border-radius:8px;font-size:13px;font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;gap:7px}.header-call:hover{background:#075985}.header-call:before{content:"";width:14px;height:14px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M6.62 10.79a15.1 15.1 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.02-.24c1.12.37 2.33.57 3.57.57a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.24.2 2.45.57 3.57a1 1 0 0 1-.25 1.02l-2.2 2.2z'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M6.62 10.79a15.1 15.1 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.02-.24c1.12.37 2.33.57 3.57.57a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.24.2 2.45.57 3.57a1 1 0 0 1-.25 1.02l-2.2 2.2z'/></svg>") center/contain no-repeat}.call-short{display:none}.mobile-nav{display:none}
.home-hero{background:radial-gradient(ellipse at 80% 20%,#153b53 0,transparent 65%),#081729!important}
.home-hero-grid{display:grid;grid-template-columns:1.3fr .78fr;gap:68px;align-items:center;padding-top:60px;padding-bottom:60px}
.home-hero h1{font-size:clamp(36px,4vw,54px);line-height:1.07;letter-spacing:-1.8px;max-width:650px;margin-bottom:22px}
.home-hero [data-i18n=hero_subtitle]{font-size:19px;line-height:1.45;font-weight:600;margin-bottom:20px;color:#91d5f4}
.home-hero [data-i18n=hero_sub]{font-size:17px;line-height:1.75;color:#cfdae7;max-width:610px}
.hero-photo{position:relative;margin:0;border-radius:20px;overflow:hidden;border:1px solid #ffffff24;box-shadow:0 20px 50px #0003;height:395px}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 57%}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:40px 22px 20px;background:linear-gradient(transparent,#071728e8);color:white;font-size:15px;font-weight:600}
.services-section{padding:55px 0 62px;background:white;border-bottom:1px solid var(--line)}.services-section h2{text-align:left!important;font-size:28px;margin-bottom:28px;letter-spacing:-.7px}
.service-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-card{display:flex;flex-direction:column;border:1px solid var(--line);padding:24px;border-radius:14px;background:white;transition:transform .15s,border-color .15s}.service-card:hover{transform:translateY(-3px);border-color:#72b7d8;box-shadow:0 8px 25px #1230440a}
.service-card-number{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:27px}.service-card h3{font-size:19px;line-height:1.35;letter-spacing:-.3px;margin-bottom:12px}.service-card p{font-size:14px;line-height:1.75;color:var(--muted);margin-bottom:22px}.service-card>span:last-child{margin-top:auto;color:var(--brand);font-weight:700;font-size:13px}
.home-page h2,.service-page h2{letter-spacing:-.55px}.home-page #our-work{background:#eef3f7}.feedback-section{padding:48px 0;background:#eef3f7;border-top:1px solid var(--line)}.feedback-section h2{font-size:24px;font-weight:700;margin-bottom:10px}.feedback-section p{color:var(--muted);margin-bottom:16px}.feedback-section a{font-weight:700;color:var(--brand)}
.service-hero h1{letter-spacing:-1.3px;line-height:1.1}.service-hero [data-i18n=lede]{font-size:17px;line-height:1.75;max-width:680px}.service-hero .hero-art{border-radius:18px}.hero-art svg{max-height:375px}.service-jump{background:white;border-bottom:1px solid var(--line)}.service-jump>div{display:flex;gap:28px;overflow-x:auto;scrollbar-width:thin}.service-jump a{padding:17px 0;white-space:nowrap;font-size:13px;font-weight:600;color:var(--muted)}.service-jump a:hover{color:var(--brand)}
.service-detail{scroll-margin-top:135px}.service-detail h2{font-size:25px}.service-detail p{line-height:1.8}.service-detail+.service-detail{padding-top:12px}.service-page #quote>div{border-top:4px solid #0284c7;box-shadow:0 12px 40px #162a450a}.service-page #quote.is-sticky{top:92px}.service-page #quote h2{font-size:23px;line-height:1.25}.service-page input,.service-page textarea{min-height:46px}.service-page textarea{min-height:112px}.form-note{font-size:12px;line-height:1.6;color:var(--muted)}.text-photo-link{display:inline-block;color:var(--brand);font-weight:600;margin-top:12px;font-size:14px}.faq summary{min-height:64px}.faq summary:after{flex-shrink:0}.faq p{line-height:1.8}
.site-footer{background:#081729;color:#b9c9da;padding:55px 16px 100px;font-size:13px;line-height:1.75}.footer-grid{max-width:1152px;margin:auto;display:grid;grid-template-columns:1.35fr 1fr .8fr 1.25fr;gap:38px}.footer-grid h2{font-size:12px;color:#eef6ff;text-transform:uppercase;letter-spacing:1px;font-weight:700;margin-bottom:18px}.footer-grid p{margin:12px 0}.footer-grid a{display:block;overflow-wrap:anywhere;margin:7px 0}.footer-grid a:hover{color:white;text-decoration:underline}.footer-brand{font-size:22px;font-weight:700;color:white;letter-spacing:-.5px}.footer-bottom{border-top:1px solid #ffffff18;max-width:1152px;margin:34px auto 0;padding-top:22px;font-size:12px}
.sticky-call{background:var(--brand)!important;bottom:18px!important;right:18px!important;max-width:calc(100vw - 36px)}
.call-icon{display:inline-block;vertical-align:-3px;flex:none}
#work-viewer{position:fixed;inset:0;z-index:10000;background:#07131fd9;display:flex;align-items:center;justify-content:center;padding:48px 56px}
#work-viewer[hidden]{display:none}
#work-viewer img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;background:#000}
#work-viewer button{position:absolute;border:0;background:#ffffff22;color:#fff;width:44px;height:44px;border-radius:999px;font-size:28px;line-height:1;cursor:pointer}
#work-viewer .wv-close{top:12px;right:12px}
#work-viewer .wv-prev{left:10px;top:50%}
#work-viewer .wv-next{right:10px;top:50%}
#work-viewer .wv-count{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:#fff;font-size:13px;margin:0}
@media(max-width:640px){#work-viewer{padding:56px 8px 40px}#work-viewer .wv-prev{left:6px}#work-viewer .wv-next{right:6px}}
.contact-choices{display:flex;gap:8px}
.contact-choices label{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:8px 6px;font-size:13px;font-weight:600;background:#fff;cursor:pointer}
.contact-choices input{accent-color:#0369a1}
#sent-modal{position:fixed;inset:0;z-index:2147483647;background:rgba(15,23,42,.55);align-items:center;justify-content:center;padding:20px}
#sent-modal[data-open="0"]{display:none!important}
#sent-modal[data-open="1"]{display:flex!important}
#sent-modal .card{background:#fff;border-radius:16px;max-width:360px;width:100%;padding:22px 20px;box-shadow:0 20px 50px rgba(0,0,0,.25);text-align:center}
@media(max-width:640px){.sticky-call .sm\:hidden,.sticky-call span[data-i18n=call_now]{display:none!important}.sticky-call{width:48px;height:48px;padding:0!important;justify-content:center;border-radius:999px}}
.bg-sky-500.text-white,.bg-sky-600.text-white{background-color:var(--brand)}.text-sky-600{color:var(--brand)}
.fas,.fa-solid{display:inline-block;font-style:normal;font-family:system-ui,sans-serif}.fa-phone-alt{width:1em;height:1em;vertical-align:-.15em}.fa-phone-alt:before{content:"";display:block;width:1em;height:1em;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M6.62 10.79a15.1 15.1 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.02-.24c1.12.37 2.33.57 3.57.57a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.24.2 2.45.57 3.57a1 1 0 0 1-.25 1.02l-2.2 2.2z'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M6.62 10.79a15.1 15.1 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.02-.24c1.12.37 2.33.57 3.57.57a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.24.2 2.45.57 3.57a1 1 0 0 1-.25 1.02l-2.2 2.2z'/></svg>") center/contain no-repeat}.fa-check:before,.fa-check-circle:before{content:'✓'}.fa-key:before{content:'⚿'}.fa-microchip:before{content:'▦'}.fa-shield-halved:before{content:'◇'}.fa-gauge-high:before{content:'◴'}.fa-chevron-down:before{content:'⌄'}.fa-chevron-up:before{content:'⌃'}.fa-arrow-right:before{content:'→'}.fa-clock:before{content:'◷'}.fa-map-marker-alt:before{content:'⌖'}.fa-star:before{content:'★'}.fa-car:before{content:'◆'}.fa-circle-info:before,.fa-info-circle:before{content:'ⓘ'}
.prose{line-height:1.8}.prose>div{max-width:1152px;margin:auto}main{min-width:0}.privacy-copy h2{font-size:22px;font-weight:700;margin:28px 0 12px}.privacy-copy p{margin:12px 0;line-height:1.8}.privacy-copy ul{list-style:disc;padding-left:24px;line-height:1.8}.contact-options{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.contact-options a{padding:11px 18px;border:1px solid var(--line);border-radius:8px;font-weight:600;color:var(--brand)}
@media(max-width:1170px){.desktop-nav a{padding:10px 7px;font-size:12px}.header-inner{gap:10px}.header-actions{gap:7px}.header-call .call-long{display:none}.header-call .call-short{display:inline}}
@media(max-width:1023px){.desktop-nav{display:none}.mobile-nav{display:flex;gap:4px;overflow-x:auto;padding:7px 14px;border-top:1px solid #edf1f5;scrollbar-width:thin}.mobile-nav a{padding:8px 12px;white-space:nowrap;font-size:12px;border-radius:6px;flex-shrink:0}.mobile-nav a[aria-current]{background:#e8f4fa;color:var(--brand);font-weight:700}.home-hero-grid{gap:36px;grid-template-columns:1.2fr .8fr;padding-top:44px;padding-bottom:44px}.home-hero h1{font-size:42px}.hero-photo{height:360px}.service-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-page #quote{scroll-margin-top:145px}.service-jump>div{gap:23px}}
@media(max-width:640px){.header-inner{padding:11px 14px;gap:8px}.site-brand{gap:7px}.site-brand img{width:31px;height:34px}.site-brand strong{font-size:16px}.site-brand small{font-size:9px}.language-toggle button{padding:7px!important;min-height:36px}.header-actions{gap:7px}.header-call{padding:9px 11px;font-size:12px}.home-hero-grid{grid-template-columns:1fr;gap:30px;padding-top:36px;padding-bottom:35px}.home-hero h1{font-size:38px;letter-spacing:-1.1px}.home-hero [data-i18n=hero_subtitle]{font-size:17px}.home-hero [data-i18n=hero_sub]{font-size:16px;margin-bottom:25px}.hero-photo{height:260px;max-width:100%}.hero-photo img{object-position:50% 59%}.services-section{padding:36px 0}.services-section h2{font-size:25px;margin-bottom:22px}.service-card-grid{gap:12px}.service-card{padding:18px 15px}.service-card h3{font-size:17px}.service-card p{font-size:13px;line-height:1.65}.service-card-number{margin-bottom:17px}.service-card>span:last-child{font-size:12px}.service-hero h1{font-size:34px;letter-spacing:-.8px}.service-hero [data-i18n=lede]{font-size:16px;line-height:1.7}.service-jump a{padding:14px 0}.service-page main{row-gap:38px;padding-top:35px;padding-bottom:40px}.service-detail h2{font-size:24px}.footer-grid{gap:28px 22px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.site-footer{padding-top:38px}.sticky-call{font-size:13px;padding:12px 16px!important}}
@media(max-width:360px){.site-brand small{display:none}.site-brand strong{font-size:14px}.header-inner{padding-left:10px;padding-right:10px}.service-card-grid{grid-template-columns:1fr}.home-hero h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Requested homepage layout and local service icons. */
.home-page .home-hero-grid{display:block}
.home-page .home-hero-grid>.max-w-3xl{max-width:880px}
.home-page .home-hero h1{max-width:880px;text-wrap:balance}
.home-page .home-hero [data-i18n=hero_sub]{max-width:760px}
.service-card-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#e0f2fe;color:#0284c7;margin-bottom:24px;flex-shrink:0}
.service-card-icon svg{width:26px;height:26px;fill:currentColor}
@media(max-width:640px){.service-card-icon{width:48px;height:48px;margin-bottom:18px}.service-card-icon svg{width:23px;height:23px}}
/* Animate the existing illustrations; keep the static state for reduced motion. */
@media(prefers-reduced-motion:no-preference){
  .hero-art .art-cell{animation:calibration-wave 4.8s ease-in-out infinite;opacity:1}
  .hero-art .art-bar{transform-box:fill-box;transform-origin:left center;animation:srs-progress 4.8s ease-in-out infinite}
  @keyframes calibration-wave{0%,15%,100%{opacity:1}45%,60%{opacity:.4}}
  @keyframes srs-progress{0%,8%{transform:scaleX(.03)}60%,88%{transform:scaleX(1)}100%{transform:scaleX(.03)}}
}

.social-row{display:flex;align-items:center;gap:10px;margin-top:10px}.social-row span{font-size:13px;font-weight:700;letter-spacing:.02em}.social-row a{display:inline-flex!important;align-items:center;justify-content:center;width:34px;height:34px;margin:0!important;border-radius:999px;background:rgba(255,255,255,.12)}.social-row a:hover{background:#0369a1}.social-row svg{width:18px;height:18px;display:block}

/* 2026 visual polish */
:root{--brand:#087ba5;--ink:#10263b;--paper:#f4f7fa}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6}
main h1,main h2,main h3{color:inherit;text-wrap:balance}
main h2{line-height:1.22}
.site-header{box-shadow:0 5px 22px rgba(13,38,60,.06)}
.site-brand img{width:42px;height:42px;border-radius:11px}
.site-brand strong{letter-spacing:-.04em}
.header-call,.quote-actions a:first-child{background:#087ba5}
.header-call:hover,.quote-actions a:first-child:hover{background:#086688}
.home-page main>section:first-child{background:radial-gradient(circle at 84% 12%,rgba(23,143,179,.30),transparent 34%),linear-gradient(130deg,#071725 0%,#102d42 65%,#10445c 100%);position:relative;overflow:hidden}
.home-page main>section:first-child:after{content:"";position:absolute;width:420px;height:420px;right:-200px;bottom:-270px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 68px rgba(255,255,255,.025),0 0 0 136px rgba(255,255,255,.018);pointer-events:none}
.home-page main>section:first-child .max-w-6xl{padding-top:76px;padding-bottom:84px;position:relative;z-index:1}
.home-page main>section:first-child h1{letter-spacing:-.045em;line-height:1.07;max-width:820px;font-size:clamp(2.6rem,5.2vw,4.8rem)}
.home-page main>section:first-child .grid>div{background:rgba(255,255,255,.055);backdrop-filter:blur(5px);border-color:rgba(255,255,255,.16);transition:transform .2s,background .2s}
.home-page main>section:first-child .grid>div:hover{transform:translateY(-3px);background:rgba(255,255,255,.09)}
.home-page main>section:not(:first-child){position:relative}
.home-page main>section .grid>a,.home-page main>section .grid>div.bg-white,main .bg-white.border.rounded-2xl{box-shadow:0 9px 30px rgba(16,42,62,.045);transition:box-shadow .2s,transform .2s,border-color .2s}
.home-page main>section .grid>a:hover{box-shadow:0 18px 40px rgba(16,42,62,.12);transform:translateY(-3px)}
.service-symbol{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#e8f6fa;color:#086d94;font-size:26px;font-weight:500;line-height:1}
.home-page main>section .grid>a h3{margin-top:18px}
.home-page main>section .grid>a{color:var(--ink)}
.home-page main>section .grid>a>span:last-child{color:#08749d}
.home-page main>section details{transition:border-color .2s,box-shadow .2s}
.home-page main>section details[open]{border-color:#82cce0;box-shadow:0 10px 24px rgba(16,42,62,.05)}
.quote-contact{padding:8px 0 4px;color:#475569;line-height:1.7}
.quote-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.quote-actions a{display:inline-block;padding:12px 16px;border-radius:9px;font-weight:700;text-decoration:none;background:#087ba5;color:#fff}
.quote-actions a:last-child{color:#075985;background:#e8f6fa}
.quote-actions a:hover{filter:brightness(.94)}
@media(max-width:640px){.home-page main>section:first-child .max-w-6xl{padding-top:54px;padding-bottom:64px}.home-page main>section:first-child h1{font-size:clamp(2.5rem,10vw,3.3rem)}.home-page main>section:first-child .grid>div{padding:15px}.site-brand img{width:35px;height:35px}}

/* Restore the site's original visual identity and service imagery. */
.home-page .service-icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;background:#e6f5fb;color:#087ba5;border-radius:14px}
.home-page .service-icon svg{width:34px;height:34px;display:block}
.home-page .expect-section>.max-w-6xl{gap:52px;align-items:stretch}
.home-page .expect-section .why-panel{padding:36px 38px;background:linear-gradient(150deg,#0a2033,#102e45);border:1px solid #26465b;border-radius:20px;box-shadow:0 18px 45px rgba(9,33,53,.17);min-width:0}
.home-page .expect-section .why-panel h2{margin:0 0 20px;color:#fff;font-size:clamp(1.5rem,2.3vw,2rem)}
.home-page .expect-section .why-panel ul{margin:0;padding:0;list-style:none}
.home-page .expect-section .why-panel li{position:relative;padding-left:25px;margin:0 0 15px;color:#d5e5ef;line-height:1.65}
.home-page .expect-section .why-panel li:before{content:'✓';position:absolute;left:0;top:0;color:#70d7f3;font-weight:800}
.home-page .expect-section .why-panel a{margin-top:16px;display:inline-block;padding:12px 19px}
.home-page .expect-section ol li{margin-bottom:17px}
@media(max-width:1023px){.home-page .expect-section>.max-w-6xl{gap:28px}}
@media(max-width:640px){.home-page .expect-section .why-panel{padding:26px 22px}.home-page .service-icon{width:52px;height:52px}.home-page .service-icon svg{width:30px;height:30px}}

.home-page .service-icon{width:44px!important;height:44px!important;max-width:44px;overflow:hidden}
.home-page .service-icon svg{width:22px!important;height:22px!important;max-width:22px!important}
.contact-choices{display:flex;gap:8px;flex-wrap:wrap}
.contact-choices label{display:flex;align-items:center;gap:6px;border:1px solid #dce4ee;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600;background:#fff}
