@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(manrope-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(manrope.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#0a2034;--muted:#526575;--teal:#006e69;--teal-dark:#005a56;--mint:#e7f4f0;--pale:#f4f8f8;--line:#dce6e6;--navy:#0a2034;--max:1280px;--ease:cubic-bezier(.2,.65,.3,1);--header-height:90px;--callbar-height:6rem}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 20px);scroll-padding-bottom:24px}
body{margin:0;font:400 1rem/1.8 Manrope,Arial,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
img{display:block;max-width:100%}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{color:var(--ink);overflow-wrap:break-word}
h1,h2{font-weight:700;letter-spacing:-.04em;text-wrap:balance}
h1{font-size:clamp(2.75rem,4.65vw,4.25rem);line-height:1.14}
h2{font-size:clamp(2rem,3.3vw,2.85rem);line-height:1.28}
h3{font-size:1.2rem;line-height:1.45;letter-spacing:-.025em;font-weight:750}
p{color:var(--muted);overflow-wrap:break-word}
a,button,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d68c16;outline-offset:5px;border-radius:6px}
.container{width:min(calc(100% - 80px),var(--max));margin-inline:auto}
.icon{width:24px;height:24px;flex:none}
.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:56px;max-width:100%;padding:15px 22px;border:1px solid transparent;border-radius:10px;font-size:.9375rem;line-height:1.5;font-weight:750;transition:background .25s,border-color .25s,box-shadow .25s,transform .25s}
.button>span{min-width:0;overflow-wrap:break-word}
.button .icon{width:21px;height:21px}
.primary,.mobile-call{background:var(--teal);color:#fff;box-shadow:0 7px 18px #006e6915}
.primary:hover,.mobile-call:hover{background:var(--teal-dark)}
.outline{background:#fff;border-color:#bad5d0;color:var(--teal)}
.outline:hover{background:#edf6f3;border-color:#90bab2}
.white{background:#fff;color:var(--navy);box-shadow:0 8px 20px #00000012}
.white:hover{background:#e5f3ef}
.button:active{transform:translateY(1px)}
.eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:.875rem;line-height:1.7;font-weight:800;letter-spacing:.075em;color:var(--teal);margin-bottom:19px}
.eyebrow-line{width:24px;height:2px;background:var(--teal);flex:none}
.text-link{position:relative;display:inline-flex;align-items:center;min-height:44px;padding-block:8px;color:var(--ink);font-size:.9375rem;font-weight:750;line-height:1.5}
.text-link:after{content:'';position:absolute;left:0;bottom:4px;width:100%;height:1px;background:currentColor;transform:scaleX(.45);transform-origin:left;transition:transform .3s}
.text-link:hover:after{transform:scaleX(1)}
.skip-link{position:fixed;z-index:200;top:10px;left:10px;background:var(--ink);color:#fff;padding:12px 18px;transform:translateY(-160%)}
.skip-link:focus{transform:none}

/* Clear, legible service-center identity. */
.header{position:sticky;top:0;z-index:60;background:#fffffff5;border-bottom:1px solid #e3ebeb;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:box-shadow .3s}
.header.scrolled{box-shadow:0 8px 25px #09283a0a}
.header-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;min-height:94px;padding-block:16px}
.brand{display:inline-flex;align-items:center;gap:11px;min-width:0;flex:0 1 auto;line-height:1.2}
.brand-mark{width:53px;height:53px;color:var(--teal);flex:none;transition:transform .3s var(--ease)}
.wordmark{display:flex;flex-direction:column;gap:6px;min-width:0}
.wordmark>strong{font-size:1.25rem;letter-spacing:.055em;font-weight:800;color:var(--ink);overflow-wrap:anywhere}
.wordmark>span{font-size:.8125rem;letter-spacing:.16em;font-weight:750;color:var(--teal);overflow-wrap:anywhere}
.navigation{display:flex;align-items:center;flex-wrap:wrap;gap:27px;min-width:0;max-width:100%}
.navigation>a{position:relative;display:flex;align-items:center;min-height:44px;padding:10px 0;font-size:.875rem;font-weight:750;line-height:1.5;color:#43596b}
.navigation>a:after{content:'';position:absolute;bottom:4px;left:0;right:0;height:2px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.navigation>a:hover,.navigation>a[aria-current]{color:var(--teal)}
.navigation>a:hover:after,.navigation>a[aria-current]:after{transform:scaleX(1)}
.header-phone{display:flex;align-items:center;gap:12px;border-left:1px solid var(--line);padding:3px 0 3px 25px;line-height:1.4;flex:none}
.header-phone>.icon{width:27px;height:27px;color:var(--teal)}
.header-phone>span{font-size:.8125rem;color:var(--muted)}
.header-phone strong{display:block;color:var(--ink);font-size:1.125rem;letter-spacing:-.01em;font-weight:800;margin-top:3px}
.mobile-phone,.menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex:none;border-radius:10px;border:1px solid var(--line);cursor:pointer}
.mobile-phone{background:var(--teal);color:#fff;border-color:var(--teal)}
.menu-toggle{background:#f1f6f5;color:var(--ink)}
.close-icon{display:none}
.menu-toggle[aria-expanded=true]>.icon:first-child{display:none}
.menu-toggle[aria-expanded=true]>.close-icon{display:block}
.reading-progress{position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--teal);transform:scaleX(0);transform-origin:left;pointer-events:none}

/* One service menu for pointer, keyboard and touch navigation. */
.services-trigger{display:flex;align-items:center;gap:2px}
.services-link{display:flex;align-items:center;min-height:44px;font-size:.875rem;line-height:1.5;font-weight:750;color:#43596b}
.services-link:hover,.services-link[aria-current],.submenu-open .services-link{color:var(--teal)}
.services-toggle{display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;padding:0;border:0;border-radius:9px;background:transparent;color:#43596b;transition:background .25s,color .25s}
.services-toggle:hover,.services-toggle[aria-expanded=true]{background:#e7f4f0;color:var(--teal)}
.services-toggle .icon{width:17px;height:17px;transition:transform .25s var(--ease)}
.services-toggle[aria-expanded=true] .icon{transform:rotate(180deg)}
.services-panel{position:absolute;top:calc(100% + 10px);left:0;right:0;width:min(calc(100% - 80px),1100px);margin-inline:auto;padding:27px;display:grid;grid-template-columns:245px minmax(0,1fr);gap:29px;border:1px solid #d4e4df;border-radius:18px;background:#fff;box-shadow:0 24px 64px #0a20341a;animation:menu-enter .22s var(--ease) both}
.services-panel:before{content:'';position:absolute;left:0;right:0;top:-12px;height:12px}
.services-panel-intro{padding:9px 26px 9px 5px;border-right:1px solid var(--line)}
.services-panel-intro .eyebrow{font-size:.75rem;margin-bottom:13px}
.services-panel-intro strong{display:block;font-size:1.35rem;font-weight:750;line-height:1.45;letter-spacing:-.025em}
.services-panel-intro p{font-size:.875rem;line-height:1.8;margin-top:13px}
.services-panel-intro>a{display:inline-flex;align-items:center;min-height:44px;font-size:.8125rem;line-height:1.6;color:var(--teal);font-weight:800;margin-top:13px;text-decoration:underline;text-underline-offset:4px}
.services-submenu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:center;min-width:0}
.services-submenu-grid>a{display:flex;align-items:center;gap:13px;min-width:0;min-height:85px;padding:13px;border:1px solid transparent;border-radius:12px;line-height:1.55;font-size:.875rem;font-weight:800;transition:background .25s,border-color .25s}
.services-submenu-grid>a>span:last-child{min-width:0;overflow-wrap:anywhere}
.services-submenu-grid small{display:block;font-size:.75rem;line-height:1.7;font-weight:500;color:var(--muted);margin-top:3px}
.submenu-icon{display:flex;align-items:center;justify-content:center;width:43px;height:43px;flex:none;border-radius:11px;background:#edf6f3;color:var(--teal);transition:background .25s,transform .25s}
.submenu-icon>.icon{width:25px;height:25px}
.services-submenu-grid>a:hover,.services-submenu-grid>a:focus-visible{background:#f4f9f7;border-color:#d8e9e1}
.services-submenu-grid>a:hover .submenu-icon{background:#dcefe7;transform:translateY(-2px)}
@keyframes menu-enter{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}

/* Hero makes customer contact the first action. */
.hero{position:relative;isolation:isolate;padding:62px 0 68px;background:linear-gradient(110deg,#f4f9f7,#f9fbfa 55%,#edf5f2);overflow:hidden}
.hero:after{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:calc(50% + 28px);width:1px;background:#d4e4df70;pointer-events:none}
.hero:before{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 5% 10%,#bfe2d638,transparent 55%),radial-gradient(ellipse at 95% 90%,#b6d6cc2b,transparent 52%)}
.hero-grid{display:grid;grid-template-columns:1fr 1.02fr;gap:62px;align-items:center}
.hero-grid>*{min-width:0}
.hero h1{font-size:clamp(3rem,4.55vw,4.2rem);letter-spacing:-.045em;font-weight:700}
.hero h1>span{color:var(--teal)}
.hero-copy>p{max-width:530px;font-size:1.025rem;line-height:1.9;margin-top:25px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px 24px;margin-top:29px}
.hero-call{display:inline-flex;align-items:center;gap:18px;padding:16px 24px;border:1px solid var(--teal);border-radius:12px;background:var(--teal);color:#fff;box-shadow:0 10px 24px #006e691c;transition:background .25s,box-shadow .25s,transform .25s;max-width:100%}
.hero-call>.icon{width:32px;height:32px}
.hero-call>span{min-width:0;line-height:1.5;font-size:.875rem}
.hero-call strong{display:block;font-size:1.55rem;line-height:1.4;letter-spacing:-.015em;font-weight:800;overflow-wrap:anywhere;margin-top:2px}
.hero-call:hover{background:var(--teal-dark);box-shadow:0 14px 30px #006e6924}
.hero-notes{display:flex;flex-wrap:wrap;gap:9px 20px;margin-top:23px;color:#496557;font-size:.875rem;font-weight:650}
.hero-notes>span{display:flex;align-items:center;gap:7px}
.hero-notes .icon{width:17px;height:17px;color:var(--teal)}
.hero-visual{position:relative}
.photo-frame{position:relative;overflow:hidden;border:1px solid #dbe7e2;border-radius:22px;background:#d9e8e4;height:475px;box-shadow:0 20px 40px #143c3210}
.photo-frame>img{width:100%;height:100%;object-fit:cover;object-position:55% 48%;animation:photo-enter 1.2s var(--ease) both}
.hero-copy>.eyebrow,.hero h1,.hero-copy>p,.hero-actions,.hero-notes{animation:content-enter .8s var(--ease) both}
.hero h1{animation-delay:.06s}.hero-copy>p{animation-delay:.12s}.hero-actions{animation-delay:.18s}.hero-notes{animation-delay:.24s}
.hero-visual{animation:content-enter .9s var(--ease) .12s both}
.intro-rail{background:#fff;border-bottom:1px solid var(--line)}
.intro-rail>.container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:28px}
.intro-rail>.container>div{display:flex;align-items:center;gap:18px;padding:0 28px;border-right:1px solid var(--line)}
.intro-rail>.container>div:first-child{padding-left:0}
.intro-rail>.container>div:last-child{border-right:0;padding-right:0}
.intro-rail div>span{font-size:.875rem;line-height:1;font-weight:750;color:var(--teal);border:1px solid #cde0d9;border-radius:50%;width:37px;height:37px;display:flex;align-items:center;justify-content:center;flex:none}
.intro-rail p{font-size:.875rem;line-height:1.7}
.intro-rail strong{display:block;color:var(--ink);font-size:1rem;font-weight:750;line-height:1.6;margin-bottom:3px}

/* Device choices and supporting content. */
.section{padding:94px 0}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:55px;margin-bottom:39px}
.section-heading>div{min-width:0}
.section-heading .eyebrow{margin-bottom:15px}
.section-heading>p{font-size:1rem;line-height:1.85;max-width:365px;margin-bottom:3px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.service-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;margin-bottom:49px}
.service-intro>*{min-width:0}
.service-intro-copy h2{font-size:clamp(2rem,3.35vw,2.85rem);line-height:1.3}
.service-intro-copy>p{font-size:1rem;line-height:1.9;margin-top:23px;max-width:510px}
.service-intro-copy>.text-link{margin-top:20px}
.editorial-photo{min-width:0}
.editorial-frame{position:relative;overflow:hidden;aspect-ratio:3/2;border:1px solid #dce7e2;border-radius:21px;background:#edf3ef}
.editorial-frame img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.article-copy .article-photo{margin-bottom:35px}
.article-copy .article-photo+h2{margin-top:0}
.service-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:29px 28px;border:1px solid var(--line);border-radius:17px;background:#fff;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s,border-color .35s}
.service-card:before{content:'';position:absolute;left:28px;right:28px;top:0;height:2px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px}
.device-icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:14px;color:var(--teal);background:#edf6f3;flex:none;transition:background .3s,color .3s,transform .3s}
.device-icon>.icon{width:31px;height:31px}
.card-category{font-size:.75rem;line-height:1.5;text-align:right;letter-spacing:.04em;font-weight:750;color:#526d68}
.service-card h3{font-size:1.2rem;line-height:1.45;margin-bottom:12px}
.service-card>p{font-size:1rem;line-height:1.85;flex-grow:1}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:23px}
.tags>span{font-size:.8125rem;line-height:1.65;color:#4a645e;background:#f0f6f3;border-radius:5px;padding:5px 9px}
.card-link{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #e5edeb;padding-top:20px;margin-top:23px;font-size:.875rem;line-height:1.5;font-weight:800;color:var(--teal)}
.link-rule{width:26px;height:1px;background:var(--teal);flex:none;transition:width .3s}
.service-card>*{position:relative;z-index:1}
.approach-section{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:91px 0}
.approach-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:110px;align-items:center}
.approach-grid>*{min-width:0}
.approach-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:end;margin-bottom:48px}
.approach-heading>*{min-width:0}
.approach-heading .eyebrow{color:#9bdfcb}
.approach-heading h2{color:#fff;font-size:clamp(2rem,3.1vw,2.65rem);line-height:1.35;font-weight:650}
.approach-heading p{color:#c0d0dc;font-size:1rem;line-height:1.9;max-width:510px}
.approach-heading .text-link{color:#e2f7ef;margin-top:17px}
.approach-section .editorial-frame{border-color:#ffffff26}
.approach-intro .eyebrow{color:#80d3be}
.approach-intro h2{color:#fff;font-weight:650;font-size:clamp(2.2rem,3.7vw,3.2rem)}
.approach-intro>p{font-size:1rem;line-height:1.9;color:#c0d0dc;margin-top:26px;max-width:440px}
.approach-intro .text-link{color:#e2f7ef;margin-top:23px}
.approach-list article{display:flex;align-items:flex-start;gap:23px;padding:30px 0;border-bottom:1px solid #ffffff26}
.approach-list article:first-child{padding-top:0}
.approach-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #8fe4ce38;border-radius:12px;background:#1c5f5524;color:#95dfcb;flex:none}
.approach-icon .icon{width:24px;height:24px}
.approach-list h3{color:#f2f7fc;font-size:1.25rem;line-height:1.5;font-weight:700}
.approach-list p{color:#bacbd9;font-size:1rem;line-height:1.85;margin-top:11px}
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:29px}
.process-step{min-width:0;border-top:1px solid #b6cdc6;padding-top:24px;position:relative}
.process-step:before{content:'';position:absolute;left:0;top:-1px;width:42px;height:2px;background:var(--teal);transition:width .6s var(--ease)}
.step-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}
.step-top>span{font-size:2.65rem;font-weight:600;line-height:1;letter-spacing:-.04em;color:var(--teal)}
.step-top>.icon{color:#57796f;width:27px;height:27px}
.process-step h3{font-size:1.08rem;margin-bottom:13px;line-height:1.5}
.process-step p{font-size:1rem;line-height:1.85}
.faq-section{background:var(--pale);border-block:1px solid #e4ece9}
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px}
.faq-grid>*{min-width:0}
.faq-intro>p{max-width:340px;margin:22px 0;font-size:1rem;line-height:1.85}
.faq-list details{border-bottom:1px solid #d5e3df}
.faq-list details:first-child{border-top:1px solid #d5e3df}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:22px;list-style:none;cursor:pointer;padding:24px 0;min-height:64px;font-size:1rem;line-height:1.6;font-weight:750;color:var(--ink)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-symbol{position:relative;width:24px;height:24px;flex:none;background:#e4efea;border-radius:7px;transition:background .25s}
.faq-symbol:before,.faq-symbol:after{content:'';position:absolute;left:7px;top:11px;width:10px;height:2px;background:var(--teal);transition:transform .25s}
.faq-symbol:after{transform:rotate(90deg)}
.faq-list details[open] summary{color:var(--teal)}
.faq-list details[open] .faq-symbol{background:var(--teal)}
.faq-list details[open] .faq-symbol:after{transform:rotate(0)}
.faq-list details[open] .faq-symbol:before,.faq-list details[open] .faq-symbol:after{background:#fff}
.faq-list details>p{font-size:1rem;line-height:1.9;padding:0 22px 26px 0}
.faq-list details[open]>p{animation:answer-enter .3s var(--ease) both}
.contact-cta{position:relative;display:flex;align-items:center;justify-content:space-between;gap:50px;padding:54px 59px;border:1px solid #cfe1d8;border-radius:22px;background:linear-gradient(110deg,#edf6f1,#f6faf7);overflow:hidden}
.cta-copy{position:relative;z-index:1;min-width:0}
.cta-copy .eyebrow{font-size:.8125rem;margin-bottom:18px}
.cta-copy h2{font-size:2.7rem;font-weight:650}
.cta-copy p{font-size:1rem;line-height:1.85;margin-top:22px}
.cta-contact{display:flex;flex-direction:column;align-items:center;gap:16px;position:relative;z-index:1;min-width:0}
.cta-headset{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#dfefe5;color:var(--teal)}
.cta-headset>.icon{width:27px;height:27px}
.cta-number{font-size:2.05rem;line-height:1.4;font-weight:800;letter-spacing:-.025em;color:var(--ink);overflow-wrap:anywhere}
.cta-contact .white{background:var(--teal);color:#fff;min-height:56px}
.cta-contact .white:hover{background:var(--teal-dark)}
.cta-contact>small{color:#456755;font-size:.875rem}

/* All secondary pages share the contact-led visual language. */
.page-intro{padding:29px 0 59px;background:linear-gradient(110deg,#edf5f0,#f8fbf9);border-bottom:1px solid var(--line)}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:.875rem;line-height:1.6;color:var(--muted);margin-bottom:31px}
.breadcrumbs a{min-height:32px;display:inline-flex;align-items:center}
.breadcrumbs a:hover{color:var(--teal)}
.breadcrumbs>span:first-of-type{color:#6e8580}
.page-intro .eyebrow{margin-bottom:17px;letter-spacing:.05em}
.page-intro h1{max-width:970px;font-size:clamp(2.6rem,4.4vw,3.8rem);font-weight:650;line-height:1.2}
.page-intro>.container>p{font-size:1.05rem;line-height:1.9;max-width:780px;margin-top:23px}
.detail-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:85px;align-items:start}
.detail-grid>*{min-width:0}
.article-copy h2{font-size:1.8rem;font-weight:700;letter-spacing:-.03em;line-height:1.4;margin-bottom:20px}
.article-copy p{font-size:1rem;line-height:1.95;margin-bottom:22px}
.article-copy>h2:not(:first-child){margin-top:34px}
.article-copy .large{margin-bottom:27px}
.article-copy>section{margin-top:33px}
.article-copy>section h2{font-size:1.25rem;line-height:1.45;letter-spacing:-.02em;margin-bottom:13px}
.detail-tags{margin:24px 0 34px}
.detail-tags>span{font-size:.875rem;padding:7px 11px}
.prepare-note{padding:25px 26px;border-left:3px solid var(--teal);border-radius:0 12px 12px 0;background:#eff7f3}
.prepare-note p{margin-bottom:0}
.info-card{position:sticky;top:calc(var(--header-height) + 26px);border:1px solid var(--line);border-radius:17px;padding:32px;background:var(--pale)}
.info-card h2{font-size:1.7rem;line-height:1.35;margin:22px 0}
.info-card>.eyebrow{margin-bottom:0}
.info-card p{font-size:1rem;line-height:1.85;margin-bottom:23px}
.info-card .button{width:100%;padding-inline:15px}
.info-number{display:block;font-size:1.7rem;font-weight:800;line-height:1.4;color:var(--teal);margin-bottom:20px;overflow-wrap:anywhere;letter-spacing:-.02em}
.info-note{border-top:1px solid #cedfd8;margin-top:28px;padding-top:24px}
.info-note h3{font-size:1.05rem;margin-bottom:11px}
.info-note p{margin-bottom:0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}
.contact-grid>*{min-width:0}
.contact-panel{padding:42px 38px;background:var(--navy);border-radius:21px;color:#fff}
.contact-symbol{display:flex;align-items:center;justify-content:center;width:61px;height:61px;border:1px solid #a4e8d23b;border-radius:15px;background:#93d7c513;color:#a0e2cf;margin-bottom:30px}
.contact-symbol>.icon{width:32px;height:32px}
.contact-panel .eyebrow{color:#a1dbc8;font-size:.8125rem;margin-bottom:15px}
.contact-number{display:block;color:#fff;font-size:clamp(2rem,3.5vw,2.65rem);font-weight:800;line-height:1.4;letter-spacing:-.03em;overflow-wrap:anywhere}
.contact-panel p{color:#c4d3de;font-size:1rem;line-height:1.9;margin:24px 0 29px}
.contact-checklist h2{font-size:2.25rem}
.contact-checklist ol{list-style:none;padding:0;margin:23px 0 0}
.contact-checklist li{display:flex;align-items:flex-start;gap:22px;padding:23px 0;border-bottom:1px solid var(--line)}
.contact-checklist li>span{font-weight:800;color:var(--teal);font-size:.875rem;margin-top:4px}
.contact-checklist h3{font-size:1.1rem;margin-bottom:9px}
.contact-checklist li p{font-size:1rem;line-height:1.85}
.section-soft{background:var(--pale)}
.legal-copy{max-width:850px}
.legal-copy h2{font-size:1.5rem;font-weight:750;line-height:1.4;margin:36px 0 17px;letter-spacing:-.025em}
.legal-copy h2:first-child{margin-top:0}
.legal-copy p{font-size:1rem;line-height:1.95;overflow-wrap:anywhere}
.legal-copy a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.legal-copy .updated{font-size:.875rem;margin-bottom:29px}
.legal-list{padding-left:22px;margin:20px 0;color:var(--muted);font-size:1rem;line-height:1.95}
.legal-list li{padding-left:5px;margin-bottom:16px;overflow-wrap:anywhere}
.legal-list strong,.legal-copy p>strong{color:var(--ink)}
.legal-copy .legal-source{font-size:.875rem;padding-top:24px;border-top:1px solid var(--line);margin-top:32px}
.contact-panel .contact-privacy{font-size:.875rem;line-height:1.8;margin:20px 0 0}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px}

/* Clear service identity, once near the bottom of each page. */
.disclosure{padding:30px 0;background:#f3f7f5;border-block:1px solid #e0e9e4}
.disclosure>.container{display:flex;align-items:flex-start;gap:17px}
.disclosure .icon{width:22px;height:22px;color:#4f6f62;margin-top:3px}
.disclosure>.container>div{min-width:0}
.disclosure h2{font-size:.9375rem;line-height:1.6;letter-spacing:0;font-weight:800;margin-bottom:8px}
.disclosure p{font-size:.875rem;line-height:1.9;color:#4d635a;max-width:1160px}
.footer{padding:58px 0 0;background:#fff}
.footer-grid{display:grid;grid-template-columns:1.2fr .75fr 1fr 1.15fr;gap:42px;padding-bottom:43px}
.footer-grid>*{min-width:0}
.footer-brand .brand-mark{width:51px;height:51px}
.footer-brand .wordmark>strong{font-size:1.15rem}
.footer-brand .wordmark>span{font-size:.75rem;letter-spacing:.13em}
.footer-brand>p{font-size:.9375rem;line-height:1.85;margin-top:23px;max-width:280px}
.footer-domain{display:block;font-size:.8125rem;color:var(--muted);margin-top:14px;overflow-wrap:anywhere}
.footer-grid h2{font-size:.9375rem;line-height:1.6;font-weight:800;letter-spacing:0;margin:3px 0 14px}
.footer-grid>div>a:not(.brand):not(.button):not(.footer-number){display:flex;align-items:center;min-height:38px;font-size:.875rem;line-height:1.65;color:var(--muted);padding:6px 0}
.footer-grid>div>a:hover{color:var(--teal)}
.footer-number{display:block;font-size:1.45rem;font-weight:800;line-height:1.5;margin:13px 0 14px;letter-spacing:-.02em;color:var(--teal);overflow-wrap:anywhere}
.footer-contact p{font-size:.875rem;line-height:1.85;margin-bottom:18px}
.footer-contact .button{font-size:.875rem;padding:12px 15px;min-height:48px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 30px;padding:20px 0;border-top:1px solid var(--line);font-size:.8125rem;line-height:1.6;color:var(--muted)}
.footer-bottom>div{display:flex;gap:22px;flex-wrap:wrap}
.footer-bottom a{display:inline-flex;align-items:center;min-height:40px}
.business-details{font-size:.875rem;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}
.business-label{display:block;font-size:.75rem;line-height:1.6;font-weight:750;letter-spacing:.03em;margin-bottom:5px}
.business-name{display:block}
.business-details address{font:inherit;margin:12px 0 0}
.footer-business{padding:20px 0;border-top:1px solid var(--line)}
.footer-business .business-details{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:22px 60px;max-width:1000px}
.footer-business address{margin:0}
.contact-panel .business-details{margin-top:29px;padding-top:22px;border-top:1px solid #ffffff26;color:#bdcdd9}
.contact-panel .business-label{color:#c9d8e2}
.footer-bottom a:hover{color:var(--teal);text-decoration:underline;text-underline-offset:4px}
.mobile-callbar{display:none}

/* Motion respects system preferences; all content works without JavaScript. */
.reveal{opacity:1}
.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s var(--ease),transform .65s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .reveal.visible{opacity:1;transform:none}
.motion-ready .process-step.visible:before{width:100%}
@keyframes content-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@keyframes photo-enter{from{transform:scale(1.04)}to{transform:scale(1)}}
@keyframes answer-enter{from{opacity:.4;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(hover:hover) and (pointer:fine){
  .brand:hover .brand-mark{transform:translateY(-2px)}
  .service-card:hover,.motion-ready .service-card.visible:hover{transform:translateY(-6px);border-color:#a8c8bd;box-shadow:0 20px 35px #123f2b0d}
  .service-card:hover:before{transform:scaleX(1)}
  .service-card:hover .device-icon{background:#dff0e7;transform:translateY(-2px)}
  .service-card:hover .link-rule{width:42px}
  .service-card:after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(320px circle at var(--glow-x,50%) var(--glow-y,20%),#3db38b10,transparent 65%);transition:opacity .3s}
  .service-card:hover:after{opacity:1}
  .hero-call,.primary{overflow:hidden;isolation:isolate}
  .hero-call:after,.primary:after{content:'';position:absolute;z-index:-1;inset:-80% -50%;pointer-events:none;background:linear-gradient(105deg,transparent 35%,#ffffff20 50%,transparent 65%);transform:translateX(-70%);transition:transform .65s var(--ease)}
  .hero-call:hover:after,.hero-call:focus-visible:after,.primary:hover:after,.primary:focus-visible:after{transform:translateX(70%)}
  .hero-call{position:relative}
  .editorial-photo:hover img{transform:scale(1.025)}
}
@media(max-width:1180px){
  .container{width:calc(100% - 64px)}
  .header-inner{gap:17px}
  .navigation{gap:20px}
  .brand-mark{width:48px;height:48px}
  .wordmark>strong{font-size:1.1rem}
  .wordmark>span{font-size:.75rem;letter-spacing:.12em}
  .header-phone{padding-left:17px;gap:10px}
  .header-phone strong{font-size:1rem}
  .header-phone>span{font-size:.75rem}
  .hero-grid{gap:42px}
  .service-intro{gap:42px}
  .approach-heading{gap:65px}
  .hero h1{font-size:3.5rem}
  .photo-frame{height:470px}
  .hero-call{padding:15px 21px;gap:15px}
  .hero-call strong{font-size:1.4rem}
  .hero-actions{gap:12px 20px}
  .intro-rail>.container>div{padding-inline:22px;gap:14px}
  .section{padding:83px 0}
  .service-card{padding:27px 24px}
  .service-card h3{font-size:1.12rem}
  .approach-grid{gap:65px}
  .approach-list article{gap:19px}
  .faq-grid{gap:60px}
  .contact-cta{padding:45px;gap:35px}
  .cta-copy h2{font-size:2.35rem}
  .cta-number{font-size:1.85rem}
  .footer-grid{gap:27px}
  .detail-grid,.contact-grid{gap:50px}
}
@media(max-width:1023px){
  .header-inner{min-height:84px}
  .header-phone{margin-left:auto}
  .navigation{position:absolute;left:0;right:0;top:100%;display:none;padding:15px 32px 22px;border-bottom:1px solid var(--line);background:#fff;box-shadow:0 18px 25px #0a203414;border-radius:0 0 16px 16px;max-height:calc(100dvh - var(--header-height) - 24px);overflow:auto;overscroll-behavior:contain}
  .navigation.open{display:flex;flex-direction:column;align-items:stretch;gap:2px;animation:answer-enter .2s ease}
  .navigation>a{min-height:50px;font-size:1rem;padding:13px 16px;border-radius:8px}
  .navigation>a:after{display:none}
  .navigation>a[aria-current]{background:var(--mint)}
  .nav-services{width:100%}
  .services-trigger{gap:0;justify-content:space-between}
  .services-link{min-height:50px;padding:13px 16px;font-size:1rem;flex:1;border-radius:8px}
  .services-link[aria-current]{background:var(--mint)}
  .services-toggle{margin-left:6px;background:#f1f6f4}
  .services-panel{position:static;display:block;width:100%;padding:8px;margin:4px 0 10px;border-radius:12px;border:0;box-shadow:none;background:#f4f8f6;animation:answer-enter .2s ease}
  .services-panel:before,.services-panel-intro{display:none}
  .services-submenu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
  .services-submenu-grid>a{min-height:74px;padding:10px;gap:11px;font-size:.875rem}
  .submenu-icon{width:38px;height:38px;border-radius:9px;background:#e2efe9}
  .menu-toggle{display:flex}
  .hero{padding:47px 0 53px}
  .hero-grid{gap:32px}
  .service-intro{gap:35px}
  .approach-heading{gap:45px}
  .hero h1{font-size:3.1rem}
  .hero-copy .eyebrow{font-size:.8125rem;letter-spacing:.03em}
  .hero-copy>p{font-size:1rem;line-height:1.85}
  .photo-frame{height:450px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-card{padding:29px}
  .service-card h3{font-size:1.2rem}
  .intro-rail>.container>div{padding-inline:16px;gap:12px;align-items:flex-start}
  .intro-rail strong{font-size:.9375rem}
  .intro-rail p{font-size:.875rem}
  .approach-grid{gap:45px}
  .approach-intro h2{font-size:2.6rem}
  .approach-list h3{font-size:1.15rem}
  .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 30px}
  .faq-grid{gap:42px}
  .contact-cta{padding:39px;gap:30px}
  .cta-copy h2{font-size:2.1rem}
  .cta-number{font-size:1.7rem}
  .cta-contact .button{font-size:.875rem;padding-inline:17px}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 40px}
  .footer-brand>p{max-width:350px}
  .detail-grid{grid-template-columns:1.25fr 1fr;gap:32px}
  .info-card{padding:27px}
  .info-card h2{font-size:1.5rem}
  .contact-grid{gap:35px}
  .contact-panel{padding:34px 29px}
  .contact-number{font-size:2rem}
  .contact-checklist h2{font-size:2rem}
}
@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:32px}
  .hero:after{display:none}
  .hero h1{max-width:740px;font-size:clamp(2.7rem,6.7vw,4rem)}
  .hero h1 br{display:none}
  .hero-copy>p{max-width:660px}
  .hero-visual{max-width:760px;width:100%;margin-inline:auto}
  .photo-frame{height:440px;object-position:center}
  .approach-grid{grid-template-columns:1fr;gap:38px}
  .approach-intro h2{max-width:650px}
  .approach-intro h2 br{display:none}
  .approach-intro>p{max-width:660px}
  .approach-list article{gap:23px}
  .approach-list p{max-width:650px}
  .approach-list h3{font-size:1.25rem}
  .detail-grid,.contact-grid{grid-template-columns:1fr;gap:36px}
  .info-card{position:static;max-width:700px;width:100%}
  .info-card .button{max-width:430px}
  .contact-panel{max-width:700px;width:100%;padding:38px}
  .contact-number{font-size:2.6rem}
}
@media(max-width:760px){
  html{scroll-padding-bottom:calc(var(--callbar-height) + 16px)}
  body{padding-bottom:var(--callbar-height)}
  .container{width:calc(100% - 40px)}
  .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto auto;min-height:78px;padding:11px 0;gap:8px}
  .brand{gap:10px}
  .brand-mark{width:45px;height:45px}
  .wordmark{gap:5px}
  .wordmark>strong{font-size:1.0625rem;letter-spacing:.04em}
  .wordmark>span{font-size:.75rem;letter-spacing:.09em}
  .header-phone{display:none}
  .mobile-phone{display:flex}
  .navigation{padding:12px 20px 18px;max-height:calc(100dvh - var(--header-height) - var(--callbar-height) - 16px)}
  .services-submenu-grid{grid-template-columns:1fr}
  .services-submenu-grid>a{min-height:68px}
  .footer-business{padding-block:21px}
  .footer-business .business-details{grid-template-columns:1fr;gap:12px;font-size:.875rem}
  .hero{padding:38px 0 43px}
  .hero-grid{gap:29px}
  .service-intro{grid-template-columns:1fr;gap:28px;margin-bottom:31px}
  .service-intro-copy h2{font-size:2rem;line-height:1.32}
  .service-intro-copy>p{margin-top:20px;max-width:none}
  .service-intro-copy>.text-link{margin-top:14px}
  .editorial-frame{border-radius:16px}
  .approach-heading{grid-template-columns:1fr;gap:23px;margin-bottom:29px}
  .approach-heading h2{font-size:2.1rem;line-height:1.35}
  .approach-heading p{max-width:none}
  .approach-grid{gap:28px}
  .article-copy .article-photo{margin-bottom:27px}
  .hero h1{font-size:clamp(2.4rem,9vw,3.65rem);line-height:1.19;letter-spacing:-.04em}
  .hero-copy .eyebrow{font-size:.8125rem;letter-spacing:.03em;margin-bottom:18px}
  .hero-copy>p{font-size:1rem;line-height:1.85;margin-top:21px}
  .hero-actions{margin-top:25px;gap:13px 20px}
  .hero-call{min-height:78px;padding:15px 21px;gap:16px}
  .hero-call>span{font-size:.875rem}
  .hero-call strong{font-size:1.45rem}
  .hero-actions .text-link{font-size:.9375rem}
  .hero-notes{margin-top:20px;gap:8px 15px;font-size:.875rem}
  .photo-frame{height:clamp(20.5rem,78vw,27rem);border-radius:17px}
  .photo-frame>img{object-position:54% 45%}
  .intro-rail>.container{grid-template-columns:1fr;padding-block:8px}
  .intro-rail>.container>div,.intro-rail>.container>div:first-child,.intro-rail>.container>div:last-child{align-items:center;padding:16px 0;border-right:0;border-bottom:1px solid #e4ece8;gap:17px}
  .intro-rail>.container>div:last-child{border-bottom:0}
  .intro-rail strong{font-size:.9375rem;margin-bottom:1px}
  .intro-rail p{font-size:.875rem}
  .intro-rail div>span{width:35px;height:35px;font-size:.8125rem}
  .section{padding:64px 0}
  .section-heading{display:block;margin-bottom:30px}
  .section-heading h2{font-size:2rem;line-height:1.3}
  .section-heading>p{font-size:1rem;margin-top:19px;max-width:600px}
  .eyebrow{font-size:.875rem;letter-spacing:.045em;margin-bottom:17px}
  .service-grid{gap:18px}
  .service-card{padding:26px 23px;border-radius:15px}
  .service-card h3{font-size:1.1rem}
  .device-icon{width:53px;height:53px;border-radius:12px}
  .device-icon>.icon{width:29px;height:29px}
  .card-category{font-size:.75rem}
  .card-top{gap:12px;margin-bottom:22px}
  .service-card>p{font-size:1rem;line-height:1.85}
  .tags>span{font-size:.875rem;padding:4px 8px}
  .card-link{font-size:.875rem}
  .approach-section{padding:65px 0}
  .approach-intro h2{font-size:2.35rem;line-height:1.3}
  .approach-intro>p{margin-top:22px}
  .approach-intro .text-link{margin-top:19px}
  .approach-list article{gap:17px;padding:27px 0}
  .approach-list h3{font-size:1.15rem}
  .approach-list p{font-size:1rem;line-height:1.85}
  .approach-icon{width:41px;height:41px;border-radius:10px}
  .approach-icon>.icon{width:22px;height:22px}
  .process-grid{gap:33px 24px}
  .step-top{margin-bottom:20px}
  .step-top>span{font-size:2.35rem}
  .process-step h3{font-size:1.05rem}
  .process-step p{font-size:1rem;line-height:1.8}
  .faq-grid{grid-template-columns:1fr;gap:28px}
  .faq-intro h2{font-size:2rem;line-height:1.3}
  .faq-intro>p{max-width:600px;margin:20px 0}
  .faq-list summary{padding:23px 0;gap:16px;font-size:1rem}
  .faq-list details>p{padding-right:0;font-size:1rem;line-height:1.85}
  .contact-cta{display:block;padding:35px 30px;border-radius:17px}
  .cta-copy h2{font-size:2rem;line-height:1.3}
  .cta-copy .eyebrow{font-size:.875rem}
  .cta-copy p{margin-top:20px;font-size:1rem}
  .cta-copy p br{display:none}
  .cta-contact{align-items:flex-start;margin-top:28px;gap:15px}
  .cta-number{font-size:2rem;letter-spacing:-.015em}
  .cta-headset{width:45px;height:45px}
  .cta-headset>.icon{width:25px;height:25px}
  .cta-contact .button{min-height:55px;font-size:.9375rem}
  .page-intro{padding:22px 0 43px}
  .breadcrumbs{margin-bottom:24px;font-size:.875rem;gap:9px}
  .page-intro .eyebrow{font-size:.875rem;letter-spacing:.025em}
  .page-intro h1{font-size:clamp(2.2rem,8.3vw,3rem);line-height:1.25;letter-spacing:-.035em}
  .page-intro h1 br{display:none}
  .page-intro>.container>p{font-size:1rem;line-height:1.85;margin-top:21px}
  .article-copy h2{font-size:1.65rem}
  .article-copy p{font-size:1rem;line-height:1.9}
  .article-copy>section h2{font-size:1.25rem}
  .info-card{padding:27px}
  .info-card h2{font-size:1.65rem}
  .info-card .button{font-size:1rem}
  .info-number{font-size:1.7rem}
  .contact-panel{padding:33px 28px;border-radius:17px}
  .contact-number{font-size:clamp(1.8rem,7.3vw,2.5rem)}
  .contact-panel .eyebrow{font-size:.875rem;letter-spacing:.025em}
  .contact-panel .button{font-size:.9375rem}
  .contact-checklist h2{font-size:2rem}
  .contact-checklist li{gap:18px;padding:22px 0}
  .legal-copy h2{font-size:1.4rem}
  .legal-copy p{font-size:1rem;line-height:1.9}
  .disclosure{padding:27px 0}
  .disclosure>.container{gap:12px}
  .disclosure>.container>.icon{width:20px;height:20px}
  .disclosure p{font-size:.875rem;line-height:1.85}
  .footer{padding-top:42px}
  .footer-grid{gap:29px 24px;padding-bottom:31px}
  .footer-brand,.footer-contact{grid-column:1/-1}
  .footer-brand>p{max-width:550px;font-size:1rem;margin-top:20px}
  .footer-domain{font-size:.875rem}
  .footer-grid h2{font-size:1rem;margin-bottom:12px}
  .footer-grid>div>a:not(.brand):not(.button):not(.footer-number){min-height:44px;padding:7px 0;font-size:.875rem;line-height:1.65}
  .footer-contact p{font-size:1rem;max-width:550px}
  .footer-number{font-size:1.6rem}
  .footer-contact .button{font-size:.9375rem;min-height:52px}
  .footer-bottom{font-size:.875rem;padding:20px 0;gap:12px}
  .footer-bottom>div{gap:18px}
  .footer-bottom a{min-height:44px}
  .mobile-callbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #ccdfd5;box-shadow:0 -8px 23px #092b200a}
  .mobile-callbar>span{font-size:.8125rem;line-height:1.5;color:var(--muted);min-width:0}
  .mobile-callbar strong{display:block;font-size:1.0625rem;line-height:1.5;color:var(--ink);letter-spacing:-.015em;font-weight:800;overflow-wrap:anywhere;margin-top:2px}
  .mobile-call{min-height:50px;padding:12px 19px;font-size:.9375rem;gap:9px}
}
@media(max-width:560px){
  .service-grid{grid-template-columns:1fr}
  .service-card{padding:28px}
  .service-card h3{font-size:1.25rem}
  .hero-call{width:100%;justify-content:center;padding-inline:18px;gap:16px}
  .hero-call>span{font-size:.875rem}
  .hero-call strong{font-size:1.5rem}
  .hero-actions{align-items:stretch;gap:13px}
  .hero-actions .text-link{min-height:44px}
  .photo-frame{height:clamp(20rem,86vw,25rem)}
  .process-grid{grid-template-columns:1fr;gap:29px}
  .process-step{padding-top:21px}
  .step-top{margin-bottom:18px}
  .process-step h3{font-size:1.2rem}
  .contact-cta{padding:32px 25px}
  .cta-number{font-size:1.875rem}
  .cta-contact .button{width:100%;padding-inline:15px}
  .contact-panel{padding:30px 24px}
  .contact-number{font-size:1.9rem}
  .contact-panel .button{padding-inline:16px;gap:9px}
  .info-card{padding:25px}
  .prepare-note{padding:22px}
}
@media(max-width:360px){
  .container{width:calc(100% - 32px)}
  .header-inner{gap:7px}
  .header .brand{gap:7px}
  .header .brand-mark{width:35px;height:35px}
  .header .wordmark>strong{font-size:.9375rem;letter-spacing:.02em}
  .header .wordmark>span{font-size:.75rem;letter-spacing:.015em}
  .hero{padding-top:33px}
  .hero h1{font-size:2.4rem}
  .hero-copy .eyebrow{font-size:.75rem;letter-spacing:.015em;gap:8px}
  .eyebrow-line{width:16px}
  .hero-call{padding:15px 14px;gap:12px}
  .hero-call>.icon{width:28px;height:28px}
  .hero-call>span{font-size:.8125rem}
  .hero-call strong{font-size:1.4rem}
  .service-card{padding:25px}
  .mobile-callbar{padding-inline:16px;gap:10px}
  .mobile-callbar strong{font-size:1rem}
  .mobile-call{padding-inline:14px;font-size:.875rem}
  .contact-number{font-size:1.7rem}
  .cta-number{font-size:1.75rem}
}
@media(max-width:760px) and (max-height:480px){
  body{padding-bottom:0}
  html{scroll-padding-bottom:16px}
  .mobile-callbar{display:none}
  .navigation{max-height:calc(100dvh - var(--header-height) - 16px)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important}
  .motion-ready .reveal{opacity:1;transform:none}
  .reading-progress{display:none}
  .service-card:hover,.motion-ready .service-card.visible:hover,.brand:hover .brand-mark,.service-card:hover .device-icon,.button:active{transform:none}
  .service-card:after{display:none}
  .services-submenu-grid>a:hover .submenu-icon{transform:none}
  .hero-call:after,.primary:after{display:none}
  .editorial-photo:hover img{transform:none}
}
@media print{
  .header,.mobile-callbar,.hero-visual,.button,.hero-call,.reading-progress{display:none}
  body{font-size:12pt;padding:0}
  .container{width:100%}
  .section,.approach-section{padding:25px 0}
  .motion-ready .reveal{opacity:1;transform:none}
  .approach-section,.contact-panel{background:#fff;color:#000}
  .approach-intro h2,.approach-intro p,.approach-list h3,.approach-list p,.contact-panel p,.contact-number{color:#000}
  .footer-grid{display:block}
}
