@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/manrope-latin-variable.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/InstrumentSerif-Regular.ttf) format('truetype')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/InstrumentSerif-Italic.ttf) format('truetype')}
:root{--paper:#fafaf8;--bg:#151717;--ink:#202524;--text:#fafaf8;--muted:#b7bdbb;--gold:#dabb7e;--gold-light:#f1d8a7;--gold-dark:#735923;--ease:cubic-bezier(.22,1,.36,1);--max:1320px}
body{font-family:Manrope,'Avenir Next',Arial,sans-serif}
.wrap>*{min-width:0}h1,h2,h3{font-family:inherit;text-wrap:balance}h2{font-size:clamp(2.25rem,4vw,3.5rem);font-weight:400;letter-spacing:-.045em;line-height:1.12}
h1 em,h2 em{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.015em;color:var(--gold)}.light h2 em{color:var(--ink)}
.eyebrow{font-size:.75rem;letter-spacing:.12em;font-weight:600}.utility{display:none}.quote-short{display:none}
/* Navigation stays compact, with full-size touch targets. */
header{background:#151717f5;color:var(--text);border-bottom:1px solid #ffffff18;transition:transform .3s var(--ease);backdrop-filter:blur(14px)}
.navigation{height:84px;gap:28px}.brand img{width:204px;filter:invert(1) hue-rotate(180deg) brightness(1.4) saturate(.65)}
.navigation nav{gap:23px;font-size:.875rem}.navigation nav a{border:0;padding:12px 0;position:relative}.navigation nav a::after{content:'';position:absolute;left:0;right:0;bottom:6px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.navigation nav a:hover,.navigation nav a[aria-current]{color:var(--gold)}.navigation nav a:hover::after,.navigation nav a[aria-current]::after{transform:scaleX(1)}
.menu-button{min-width:44px;min-height:44px}.menu-button span{background:var(--text);transition:transform .25s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
#mobile-menu a{border-color:#ffffff20}.navigation a:focus-visible,.menu-button:focus-visible{outline-color:var(--gold)}
/* Gold actions have a clear press state and a tactile sweep. */
.button{position:relative;isolation:isolate;overflow:hidden;min-height:56px;padding:12px 18px 12px 24px;border-radius:999px;gap:30px;font-size:.875rem;font-weight:650;transition:transform .25s var(--ease),background .25s,box-shadow .25s}
.button::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#fff6 50%,transparent 75%);transform:translateX(-110%);transition:transform .6s var(--ease);pointer-events:none}
.button>span[aria-hidden]{display:grid;place-items:center;width:30px;height:30px;border:1px solid #17201b40;border-radius:50%;font-size:19px;font-weight:400;transition:transform .3s,background .3s}
.button.gold{background:var(--gold);color:var(--ink)}.button.gold:hover{background:var(--gold-light)}.button:active{transform:scale(.975)}
.text-link{gap:25px;min-height:48px;font-size:.875rem;transition:gap .25s}.text-link:hover{gap:34px}
.quote-button{touch-action:pan-y pinch-zoom}.quote-button.touch-near{background:var(--gold-light);color:var(--ink);transform:scale(1.035);box-shadow:0 0 0 4px #dabb7e40,0 10px 28px #0003}.quote-button.touch-near::after{transform:translateX(110%)}.quote-button.touch-near>span[aria-hidden]{transform:rotate(45deg);background:#fff5}
@media(hover:hover){.button:hover{transform:translateY(-3px);box-shadow:0 10px 26px #0002}.button:hover::after{transform:translateX(110%)}.button:hover>span[aria-hidden]{transform:rotate(45deg);background:#fff4}}
/* The headline has its own space; the image keeps the people visible. */
.story-hero{position:relative;isolation:isolate;height:clamp(540px,72svh,840px);display:flex;align-items:flex-end;overflow:hidden;background:var(--bg)}
.story-film{position:absolute;inset:0;z-index:-1}.story-film video{width:100%;height:100%;object-fit:cover;object-position:70% 43%}
.film-shade{position:absolute;inset:0;background:linear-gradient(0deg,#151717dc,transparent 78%),linear-gradient(90deg,#15171775,transparent 70%)}
.story-title{margin:0 auto;padding-bottom:58px}.story-title .eyebrow{color:var(--text);margin-bottom:24px}.story-title h1{font-size:clamp(4rem,6.3vw,6rem);font-weight:400;line-height:1.07;letter-spacing:-.055em;margin:0 0 24px}.story-title h1 span,.story-title h1 em{display:block}.story-title h1 em{font-size:1.2em;line-height:1.03}.story-title p{font-size:1rem;color:#e8eae5;margin:0}
.film-control{position:absolute;right:40px;bottom:42px;width:46px;height:46px;display:grid;place-items:center;padding:0;border:1px solid #ffffff80;border-radius:50%;background:#15171755;color:#fff;backdrop-filter:blur(6px)}.film-control svg{width:18px;height:18px;fill:currentColor}.film-control .pause-symbol{display:none;stroke:currentColor;stroke-width:2;fill:none}.film-control.is-playing .play-symbol{display:none}.film-control.is-playing .pause-symbol{display:block}.film-control:hover{background:#151717cc}
/* The offer is an easy-to-read continuation of the opening. */
.home-offer{background:var(--paper);color:var(--ink)}.offer-layout{display:grid;grid-template-columns:1.1fr 1fr .9fr;gap:48px;align-items:center;padding:42px 0;border-bottom:1px solid #20252430}
.offer-heading .eyebrow{color:var(--gold-dark);font-size:.75rem;letter-spacing:.035em;margin-bottom:17px}.offer-value{display:flex;align-items:center;justify-content:space-between;gap:18px}.offer-heading h2{font-size:1.3rem;letter-spacing:-.02em;margin:0;font-weight:500;line-height:1.4;text-wrap:initial}
.offer-price{display:grid;grid-template-columns:auto auto;gap:0 8px;align-items:baseline;line-height:1;margin:0;white-space:nowrap}.offer-price strong{font-size:3.4rem;font-weight:400;letter-spacing:-.06em;grid-row:1;grid-column:2}.offer-price span{font-size:.75rem}.offer-price span:first-child{align-self:center;grid-column:1;grid-row:1}.offer-price span:last-child{grid-column:2;grid-row:2;text-align:right;align-self:start;margin-top:6px}
.offer-details{font-size:.875rem}.offer-details p{margin:0 0 5px;line-height:1.7}.offer-details>a{font-size:.875rem;color:var(--gold-dark);text-decoration:underline;text-underline-offset:5px;display:inline-flex;align-items:center;gap:13px;min-height:44px}
.offer-actions .button{width:100%;justify-content:space-between}.offer-actions p{font-size:.75rem;text-align:center;margin:12px 0 0;color:#626964;font-weight:400}.offer-actions p strong{font-weight:600}
/* Large photographs establish a rhythm rather than a row of cards. */
.home-services{padding:106px 0 112px}.services-intro{display:grid;grid-template-columns:1.4fr .6fr;gap:22px 64px;align-items:end;margin-bottom:55px}.services-intro>.eyebrow{grid-column:1/-1;margin:0;color:var(--gold-dark)}.services-intro h2{margin:0;font-size:clamp(2.5rem,4.4vw,4rem);line-height:1.1}.services-intro h2 em{font-size:1.16em}.services-intro>p{font-size:1rem;line-height:1.8;max-width:30ch;margin:0 0 4px;color:#606862}
.service-stories{display:grid;grid-template-columns:1.05fr .9fr;gap:64px 8%}.service-story{display:block;min-width:0}.story-photo{width:100%;min-width:0;overflow:hidden;aspect-ratio:1.25;background:#dadbd5}.story-photo img{width:100%;height:100%;object-fit:cover;transition:transform .85s var(--ease)}
.story-starlink{grid-column:1/-1;position:relative;isolation:isolate}.story-starlink .story-photo{aspect-ratio:2.4;min-height:400px}.story-starlink .story-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#111b1ddd,transparent 60%);pointer-events:none}.story-starlink img{object-position:55% 48%}.story-starlink .story-caption{position:absolute;left:40px;right:40px;bottom:30px;color:#fff;padding:0}.story-starlink .story-caption p{color:#e1e6e3}.story-starlink .story-number{color:#e6c88e}.story-starlink h3{font-size:clamp(2rem,3.1vw,3rem);font-weight:400}.story-starlink .round-arrow{border-color:#ffffffa0;background:#ffffff08;color:#fff;width:58px;height:58px}
.story-tv .story-photo{aspect-ratio:1.13}.story-appliance{padding-top:108px}.story-appliance .story-photo{aspect-ratio:1.17}.story-caption{display:grid;grid-template-columns:32px minmax(0,1fr) 48px;gap:15px;align-items:start;padding-top:24px}.story-number{font-size:.75rem;color:#85703e;padding-top:5px}.story-caption h3{font-size:1.7rem;font-weight:450;margin:0 0 7px;line-height:1.3;letter-spacing:-.035em;text-wrap:initial}.story-caption p{font-size:.875rem;line-height:1.6;margin:0;color:#646b67}.round-arrow{display:grid;place-items:center;width:48px;height:48px;border:1px solid #20252450;border-radius:50%;font-size:24px;transition:background .3s,color .3s,transform .3s}
@media(hover:hover){.service-story:hover img{transform:scale(1.045)}.service-story:hover .round-arrow{background:var(--gold);border-color:var(--gold);color:var(--ink);transform:rotate(45deg)}}
/* A portrait and a direct introduction replace another boxed section. */
.gary-story{background:var(--bg);color:var(--text);padding:108px 0 100px}.gary-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:11%;align-items:center}.gary-layout figure{margin:0;max-width:470px;position:relative}.gary-layout figure img{width:100%;height:auto;aspect-ratio:.86;object-fit:cover;object-position:50% 50%}.gary-layout figcaption{display:flex;justify-content:space-between;gap:12px;font-size:.875rem;margin-top:18px;color:#ecece5}.gary-layout figcaption span{font-size:.75rem;color:var(--muted)}
.gary-copy .eyebrow{color:var(--gold)}.gary-copy h2{font-size:clamp(2.5rem,4vw,3.7rem);line-height:1.12;margin-bottom:32px}.gary-copy h2 em{font-size:1.5em;line-height:1.1}.gary-copy>p{font-size:1rem;line-height:1.85;color:#b9c0bb;max-width:43ch}.gary-copy .gary-lead{font-size:1.25rem;line-height:1.7;color:var(--text)}.gary-copy .text-link{color:var(--gold);margin-top:8px;border-bottom:1px solid #dabb7e60}
.home-process{padding:0 0 100px}.home-process>.wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;border-top:1px solid #ffffff28;padding-top:75px}.process-heading .eyebrow{font-size:.75rem}.process-heading h2{font-size:clamp(2.5rem,4vw,3.6rem);line-height:1.12}.process-heading h2 em{font-size:1.2em}.process-list article{display:grid;grid-template-columns:35px minmax(0,1fr);gap:20px;padding:25px 0;border-top:1px solid #ffffff25}.process-list article:first-child{padding-top:0;border-top:0}.process-list article:last-child{padding-bottom:0}.process-list article>span{font-size:.75rem;color:var(--gold);padding-top:5px}.process-list h3{font-size:1.25rem;font-weight:500;margin-bottom:10px}.process-list p{font-size:1rem;color:#b9c0bb;line-height:1.75;margin:0}
.home-close{padding:76px 0 84px;background:var(--paper);color:var(--ink)}.home-close>.wrap{display:flex;align-items:center;justify-content:space-between;gap:50px}.home-close .eyebrow{color:var(--gold-dark)}.home-close h2{font-size:clamp(3rem,5.5vw,5rem);font-weight:400;line-height:1.08;margin:0}.home-close h2 em{color:var(--ink);font-size:1.15em}.close-actions{display:flex;flex-direction:column;gap:16px;align-items:center;min-width:290px}.close-actions .button{width:100%;justify-content:space-between}.close-actions .text-link{color:#536058;font-weight:500;font-size:.875rem}
/* Useful information, with a small wordmark and generous tap spacing. */
.site-footer{padding:0 0 28px;border:0}.footer-top{display:flex;align-items:center;justify-content:space-between;padding:36px 0 28px;border-bottom:1px solid #ffffff20}.footer-wordmark{display:block;width:165px;flex-shrink:0}.footer-wordmark img{width:100%;height:auto;filter:invert(1) hue-rotate(180deg) brightness(1.4) saturate(.65)}.footer-top>p{font-size:.875rem;color:var(--muted);margin:0}.footer-columns{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px;padding:32px 0}.footer-columns h2{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-weight:600;margin:0 0 12px}.footer-columns a{display:block;font-size:.875rem;line-height:1.6;min-height:40px;padding:7px 0;overflow-wrap:anywhere}.footer-columns a:hover{text-decoration:underline;text-underline-offset:5px}.footer-columns .footer-phone{font-size:1.75rem;letter-spacing:-.04em;padding-top:0}.footer-contact p{font-size:.75rem;line-height:1.8;margin:12px 0 0;color:var(--muted)}.footer-base{display:flex;align-items:center;gap:22px;flex-wrap:wrap;border-top:1px solid #ffffff20;padding-top:22px;font-size:.75rem;color:#a5aea9}.footer-base p{width:100%;max-width:760px;margin:0;font-size:.75rem;line-height:1.7}.footer-base .plain-button{font-size:.75rem}.mobile-actions{display:none}
/* Supporting pages keep the same clarity and generous typography. */
.page-hero{padding:36px 0 64px}.page-hero h1{font-weight:400;max-width:1050px;font-size:clamp(3rem,5.3vw,5rem)}.page-hero p{line-height:1.8;font-size:1.05rem}.services-grid{gap:32px;border:0}.service-card,.service-card:first-child,.service-card:last-child{padding:0 0 20px;border:0;background:transparent}.service-card:hover{background:transparent}.service-cover{position:relative;aspect-ratio:1.15;overflow:hidden;margin-bottom:24px}.service-cover img{height:100%;width:100%;object-fit:cover;transition:transform .7s var(--ease)}.service-cover .number{position:absolute;left:14px;top:14px;right:auto;width:34px;height:34px;display:grid;place-items:center;background:#15171790;border:1px solid #fff6;border-radius:50%;color:white;font-size:.75rem}.service-card h3{font-size:1.6rem;margin-bottom:12px;font-weight:500}.service-card p{font-size:1rem;line-height:1.8}.service-card .text-link{font-size:.875rem}.faq summary{padding-right:40px;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';position:absolute;right:6px;top:16px;font-size:25px;color:var(--gold)}.faq details[open] summary::after{content:'−'}.section-heading>*{min-width:0}.cta{background:var(--bg)}.cta h2{font-size:clamp(2.5rem,4vw,3.5rem);font-weight:400}.cta .button{flex-shrink:0}.pricing-layout p,.pricing-detail li,.editorial p{font-size:1rem;line-height:1.8}.contact-layout{align-items:start}.contact-info h2{font-weight:400}.form-heading h2{font-size:2rem}.form-heading p,.form-grid label{font-size:.875rem}.form-note,.photo-field p,.photo-field ul{font-size:.875rem}form{background:#fff;border:1px solid #20252420;border-radius:0;box-shadow:none}input,select,textarea{border-radius:5px;border-color:#a1aaa5;font-size:1rem}input[type=file]{border-style:solid;border-radius:5px}.check input{border-radius:3px}.contact-hours p{font-size:.875rem}
@media(hover:hover){.service-card:hover .service-cover img{transform:scale(1.04)}}
@media(max-width:1180px){.navigation{gap:20px}.brand img{width:180px}.navigation nav{gap:16px;font-size:.8125rem}.offer-layout{gap:26px}.offer-price strong{font-size:3rem}.offer-heading .eyebrow{font-size:.6875rem}.offer-heading h2{font-size:1.125rem}.gary-layout{gap:7%}.home-process>.wrap{gap:70px}}
@media(max-width:1020px){.navigation{height:74px}.navigation nav{display:none}.navigation .desktop-quote{display:inline-flex;margin-left:auto}.offer-layout{grid-template-columns:1fr 1fr;gap:28px 50px}.offer-actions{grid-column:1/-1;display:flex;align-items:center;gap:26px}.offer-actions .button{width:280px}.offer-actions p{margin:0}.services-intro{grid-template-columns:1.3fr .7fr;gap:18px 32px}.story-caption{grid-template-columns:minmax(0,1fr) 48px}.story-number{display:none}.story-caption h3{font-size:1.4rem}.story-appliance{padding-top:78px}.gary-copy .gary-lead{font-size:1.125rem}.footer-columns{gap:30px}.story-title h1{font-size:4.2rem}.story-starlink .story-photo{min-height:360px}}
@media(max-width:760px){
 html{scroll-padding-top:84px;-webkit-text-size-adjust:100%}body{font-size:1rem;line-height:1.7}.wrap{width:calc(100% - 40px)}header.header-away{transform:translateY(-100%)}header:focus-within{transform:none}
 .navigation{height:70px;gap:9px}.brand img{width:clamp(126px,39vw,168px)}.navigation .desktop-quote{padding:8px 14px;min-height:44px;gap:10px;font-size:.875rem;background:transparent;border:1px solid #dabb7ea0;color:var(--gold)}.navigation .desktop-quote>span[aria-hidden]{border:0;width:18px;height:20px;font-size:20px}.quote-short{display:inline}.quote-long{display:none}.menu-button{display:block;padding:9px;margin:0;min-width:44px;min-height:44px}.menu-button span{width:24px}.navigation nav{display:none}#mobile-menu{padding:0 20px 20px;max-height:calc(100dvh - 100px);overflow:auto}#mobile-menu a{padding:15px 0;font-size:1.125rem}#mobile-menu a:last-child{font-size:.875rem;padding-top:20px}
 .button{font-size:.9375rem;min-height:56px;padding:11px 16px 11px 23px;gap:22px}.text-link{font-size:.875rem}.eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:18px}
 .story-hero{height:clamp(380px,53svh,495px)}.story-title{padding-bottom:30px}.story-title .eyebrow{font-size:.75rem;letter-spacing:.065em;margin-bottom:15px}.story-title h1{font-size:clamp(2.5rem,11.2vw,3.25rem);line-height:1.06;letter-spacing:-.05em;margin-bottom:17px}.story-title h1 em{font-size:1.22em;line-height:1.08;letter-spacing:-.025em}.story-title p{font-size:.875rem;max-width:240px}.story-film video{object-position:76% 37%}.film-shade{background:linear-gradient(0deg,#151717f5 0%,#1517177a 34%,#15171700 76%)}.film-control{right:16px;bottom:19px;width:44px;height:44px}.film-control svg{width:16px;height:16px}
 .offer-layout{grid-template-columns:minmax(0,1fr);gap:14px;padding:26px 0 32px}.offer-heading .eyebrow{font-size:.75rem;letter-spacing:.015em;margin-bottom:16px}.offer-value{justify-content:space-between;gap:18px}.offer-heading h2{font-size:1.2rem;line-height:1.35}.offer-price strong{font-size:3.6rem}.offer-price span{font-size:.75rem}.offer-details{font-size:.875rem}.offer-details p{line-height:1.65;margin-bottom:0}.offer-details>a{font-size:.875rem;min-height:38px}.offer-actions{grid-column:auto;display:block}.offer-actions .button{width:100%}.offer-actions p{margin:12px 0 0;font-size:.75rem;text-align:center}
 .home-services{padding:66px 0 70px}.services-intro{grid-template-columns:minmax(0,1fr);gap:21px;margin-bottom:34px}.services-intro h2{font-size:clamp(1.9rem,8.5vw,2.5rem);line-height:1.16;letter-spacing:-.045em}.services-intro h2 em{font-size:1.17em}.services-intro>.eyebrow{font-size:.75rem;letter-spacing:.06em}.services-intro>p{font-size:1rem;line-height:1.75;max-width:31ch}.service-stories{grid-template-columns:minmax(0,1fr);gap:40px}.story-starlink{grid-column:auto;margin:0 -20px}.story-starlink .story-photo{min-height:0;aspect-ratio:1.05}.story-starlink img{object-position:60% 50%}.story-starlink .story-caption{left:20px;right:20px;bottom:25px;grid-template-columns:minmax(0,1fr) 44px;align-items:center}.story-starlink h3{font-size:1.55rem;line-height:1.2;max-width:13ch}.story-starlink .story-caption p{max-width:23ch;line-height:1.6;font-size:.875rem}.story-starlink .round-arrow{width:44px;height:44px}.story-tv .story-photo{aspect-ratio:1.17}.story-appliance{padding-top:0}.story-appliance .story-photo{aspect-ratio:1.3}.story-caption{grid-template-columns:minmax(0,1fr) 44px;gap:12px;padding-top:20px}.story-caption h3{font-size:1.5rem;line-height:1.3;margin-bottom:6px}.story-caption p{font-size:.875rem;line-height:1.7}.round-arrow{width:44px;height:44px}.story-number{display:none}
 .gary-story{padding:64px 0 60px}.gary-layout{grid-template-columns:minmax(0,1fr);gap:40px}.gary-layout figure{width:calc(100% - 24px);max-width:420px;margin-left:auto}.gary-layout figure img{aspect-ratio:.95}.gary-layout figcaption{font-size:.875rem;line-height:1.5;margin-top:14px;align-items:baseline;flex-wrap:wrap;gap:3px 10px}.gary-layout figcaption span{font-size:.75rem}.gary-copy .eyebrow{font-size:.75rem;letter-spacing:.06em;margin-bottom:19px}.gary-copy h2{font-size:clamp(2.05rem,9vw,2.7rem);line-height:1.15;margin-bottom:28px}.gary-copy h2 em{font-size:1.5em}.gary-copy .gary-lead{font-size:1.2rem;line-height:1.7}.gary-copy>p{font-size:1rem;line-height:1.85}.gary-copy .text-link{font-size:.875rem;margin-top:0}
 .home-process{padding:0 0 64px}.home-process>.wrap{grid-template-columns:minmax(0,1fr);gap:34px;padding-top:50px}.process-heading .eyebrow{font-size:.75rem}.process-heading h2{font-size:2.25rem;line-height:1.15;margin:0}.process-list article{grid-template-columns:24px minmax(0,1fr);gap:14px;padding:24px 0}.process-list article>span{font-size:.75rem}.process-list h3{font-size:1.1875rem;line-height:1.4;margin-bottom:8px}.process-list p{font-size:1rem;line-height:1.75}
 .home-close{padding:54px 0}.home-close>.wrap{flex-direction:column;align-items:stretch;gap:30px}.home-close .eyebrow{font-size:.75rem}.home-close h2{font-size:clamp(2.65rem,11.5vw,3.4rem);line-height:1.1}.close-actions{align-items:stretch;gap:12px;min-width:0}.close-actions .button{width:100%}.close-actions .text-link{font-size:.875rem;justify-content:center}
 .site-footer{padding:0 0 calc(28px + env(safe-area-inset-bottom))}.footer-top{align-items:flex-start;flex-direction:column;gap:17px;padding:28px 0}.footer-wordmark{width:152px}.footer-top>p{font-size:.8125rem}.footer-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px 22px;padding:28px 0}.footer-contact{grid-column:1/-1}.footer-columns h2{font-size:.75rem;letter-spacing:.07em;margin-bottom:10px}.footer-columns a{font-size:.875rem;min-height:44px;padding:8px 0;line-height:1.6}.footer-columns .footer-phone{font-size:1.8rem}.footer-contact>a:not(.footer-phone){font-size:.9375rem}.footer-contact p{font-size:.75rem;margin-top:8px}.footer-base{gap:14px 18px;font-size:.75rem;padding-top:20px}.footer-base p{font-size:.75rem;line-height:1.7}.footer-base .plain-button{font-size:.75rem}
 .mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.35fr;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#151717f5;backdrop-filter:blur(14px);border-top:1px solid #ffffff25;z-index:40;transform:translateY(110%);visibility:hidden;transition:transform .3s var(--ease),visibility .3s}.mobile-actions.is-shown{transform:translateY(0);visibility:visible}.mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px;font-size:.875rem;line-height:1.4;border-radius:999px;transition:transform .2s,background .2s,box-shadow .2s}.mobile-actions a:first-child{border:1px solid #ffffff65}.mobile-actions a:last-child{background:var(--gold);color:var(--ink)}.mobile-actions a.touch-near{transform:scale(1.025);background:var(--gold-light)}
 .section:not(.home-services):not(.home-process){padding:58px 0}h2,.feature-copy h2,.area-layout h2{font-size:clamp(2rem,8.6vw,2.5rem);line-height:1.18}.section-heading,.feature,.area-layout,.faq-layout,.contact-layout,.about-layout,.pricing-layout{grid-template-columns:minmax(0,1fr);gap:30px}.section-heading{margin-bottom:32px}.section-heading>p{font-size:1rem;line-height:1.8}.services-grid{grid-template-columns:minmax(0,1fr);gap:38px}.service-cover{aspect-ratio:1.2;margin-bottom:22px}.service-card,.service-card:first-child,.service-card:last-child{padding:0;border:0}.service-card h3{font-size:1.55rem}.service-card p{font-size:1rem;line-height:1.8}.feature-image{height:380px}.steps{grid-template-columns:minmax(0,1fr);gap:0}.steps article{padding:25px 0}.steps h3{font-size:1.4rem}.steps article>span{margin-bottom:14px}.page-hero{padding:26px 0 44px}.page-hero h1{font-size:clamp(2.1rem,9vw,2.75rem);line-height:1.17;letter-spacing:-.045em;margin-bottom:22px}.page-hero p{font-size:1rem;line-height:1.8}.breadcrumb{margin-bottom:27px}.faq summary{font-size:1rem;line-height:1.6;padding-top:21px;padding-bottom:21px}.faq details p{font-size:1rem;line-height:1.8;padding-right:0}.pricing-detail{padding:28px 0 0;border-left:0;border-top:1px solid var(--line)}.pricing-summary .button{width:100%}.package-price{font-size:1.2rem}.package-price strong{font-size:3.5rem}.package-price span{font-size:.875rem}.editorial .lead{font-size:1.2rem}.editorial p{font-size:1rem;line-height:1.85}.contact-info{position:static}.contact-value.email{font-size:clamp(1rem,4.3vw,1.25rem)}form{padding:26px 18px;width:100%;scroll-margin-top:20px}.form-heading h2{font-size:1.7rem}.form-grid{grid-template-columns:minmax(0,1fr);gap:22px}form .button{width:100%;justify-content:space-between}input,select,textarea{min-width:0;max-width:100%;font-size:16px}.gallery-grid{grid-template-columns:minmax(0,1fr);gap:28px}.gallery-grid img{aspect-ratio:1.25}.cta{padding:52px 0}.cta .wrap{flex-direction:column;align-items:stretch;gap:28px}.cta h2{font-size:2.3rem;line-height:1.2}.cookie-banner{bottom:calc(83px + env(safe-area-inset-bottom));max-height:calc(100dvh - 175px - env(safe-area-inset-bottom));overflow:auto;padding:20px;font-size:.875rem}.cookie-banner>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cookie-banner .button{font-size:.8125rem;padding:10px;min-height:46px}
}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.navigation{gap:5px}.navigation .desktop-quote{font-size:.8125rem;padding:8px 11px;gap:6px}.brand img{width:126px}.menu-button{padding:8px}.story-title h1{font-size:2.2rem}.story-title h1 em{font-size:1.25em}.story-title .eyebrow{font-size:.6875rem}.story-title p{font-size:.8125rem}.offer-heading .eyebrow{font-size:.6875rem}.offer-heading h2{font-size:1.05rem}.offer-price strong{font-size:3.15rem}.offer-price{gap:0 6px}.offer-details{font-size:.8125rem}.story-starlink{margin:0 -16px}.story-starlink .story-caption{left:16px;right:16px}.story-caption h3{font-size:1.35rem}.story-starlink h3{font-size:1.5rem}.services-intro h2{font-size:1.8rem}.gary-copy .eyebrow{font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.quote-button.touch-near{transform:none;box-shadow:inset 0 0 0 2px #fff6}.quote-button.touch-near>span[aria-hidden]{transform:none}}
.motion-paused .quote-button.touch-near{transform:none;box-shadow:inset 0 0 0 2px #fff6}
/* Reflow when visitors enlarge text, without clipping the opening or price. */
h1,h2,h3{overflow-wrap:anywhere}
.offer-value{flex-wrap:wrap}.offer-price{flex-shrink:0}
.navigation .brand{flex:0 1 auto;min-width:0}.navigation .desktop-quote,.navigation .menu-button{flex-shrink:0}
@media(max-width:760px){
 .story-hero{height:auto;min-height:clamp(380px,53svh,495px)}.story-title{padding-top:160px}
 .navigation{height:auto;min-height:70px;padding-top:6px;padding-bottom:6px}
 .story-starlink{display:grid;background:#151717}.story-starlink .story-photo{grid-area:1/1;min-height:calc(100vw / 1.05);height:100%;aspect-ratio:auto;position:relative}.story-starlink .story-photo img{position:absolute;inset:0}.story-starlink .story-caption{position:relative;grid-area:1/1;align-self:end;inset:auto;margin:25px 20px}.story-starlink .story-photo::after{inset:0}
}
@media(max-width:360px){.story-starlink .story-caption{margin:25px 16px}}
/* Keep the service caption legible over every crop and image-loading state. */
.story-starlink .story-caption{left:0;right:0;bottom:0;padding:24px 40px;background:#151717}
.story-starlink .story-caption::before{content:'';position:absolute;left:0;right:0;bottom:100%;height:64px;background:linear-gradient(0deg,#151717,transparent);pointer-events:none}
@media(max-width:760px){.story-starlink .story-caption{margin:0;padding:25px 20px}}
@media(max-width:360px){.story-starlink .story-caption{padding-inline:16px}}
