/* Shared visual vocabulary, preserving the existing internal-page structure. */
@font-face{font-family:Golos;src:url(media/GolosText.woff2?v=complete) format('woff2');font-weight:100 900;font-display:swap}
:root{--blue:#175b9d;--ink:#10222d;--muted:#596773;--pale:#f0f3f5;--line:#e1e5e8}body{font-family:Golos,Manrope,sans-serif;background:#fbfbfa}.page h1,.page h2,.page h3{font-family:Golos,Manrope,sans-serif;letter-spacing:-.035em}.site-header{background:#fff;border-bottom:1px solid #e6e8eb}.button{border-radius:22px;background:linear-gradient(110deg,#185d99,#082332)}.button-outline{background:transparent}.service-card,.work-card,.article-card,.plain-card{border-radius:14px}.hero-visual,.hero{border-radius:17px}.request-section{border-radius:17px}.request-form{border-radius:13px}.main-nav a:focus-visible,.main-nav button:focus-visible{outline:3px solid #2676bf;outline-offset:4px}.mobile-actions a{border-radius:18px}.article-body{line-height:1.75}@media(max-width:600px){input:not([type=checkbox]):not([type=radio]),textarea,select{font-size:16px}.mobile-actions{background:#fffffff5}}

.reference-wordmark{display:flex!important;align-items:center;gap:10px;line-height:1.03;font-size:19px;font-weight:600;letter-spacing:-.03em}.reference-wordmark>svg{width:36px;height:40px;flex-shrink:0}.reference-wordmark>span{color:var(--ink)}@media(max-width:600px){.reference-wordmark{font-size:17px}.reference-wordmark>svg{width:31px;height:35px}}
.kd-direction-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:35px 0 60px}.kd-direction-list>a{display:grid;grid-template-columns:1fr auto;gap:10px 18px;align-items:center;border:1px solid #dce2e6;background:#fff;padding:24px;border-radius:14px}.kd-direction-list strong{font-size:20px;font-weight:500;letter-spacing:-.025em;line-height:1.2}.kd-direction-list span{font-size:12px;color:#596773;grid-column:1}.kd-direction-list svg{grid-row:1/3;grid-column:2;width:22px;height:22px}.kd-direction-list a:hover{border-color:#8fa9b8;background:#f8fafb}.kd-service-type{font-size:11px;color:#59717e;margin-bottom:25px}.kd-service-grid .service-card{background:#fff;min-height:240px}.kd-service-grid .service-card h3{font-size:23px;font-weight:500}.kd-service-grid .service-card p{font-size:14px}.breadcrumbs{line-height:1.6}.breadcrumbs>span[aria-current=page]{overflow-wrap:anywhere}.review figcaption{display:grid;gap:5px;margin-top:22px;font-size:13px}.review figcaption span{color:#596773;font-size:12px}.review blockquote{font-size:16px;line-height:1.7}.contact-card{background:#fff}.hero-copy>p{line-height:1.7}.section .split-copy p{max-width:70ch}.section>.section-heading>p{font-size:16px}.case-gallery button:focus-visible{outline-offset:5px}.policy a,.prose a:not(.button){text-underline-offset:3px}.page>.section{margin:75px 0}.page>.section .eyebrow{margin-bottom:12px}
@media(max-width:1000px){.kd-direction-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.kd-direction-list{grid-template-columns:1fr;gap:10px;margin:28px 0 40px}.kd-direction-list>a{padding:20px}.kd-direction-list strong{font-size:20px}.kd-direction-list span{font-size:12px}.kd-service-grid .service-card{min-height:0;padding:24px}.kd-service-type{margin-bottom:18px}.page>.section{margin:52px 0}.section .split-copy p{font-size:16px}.review blockquote{font-size:15px}.page .page-intro>p{font-size:16px}.breadcrumbs{font-size:11px}.hero-copy>p{font-size:16px}.contact-direct a{font-variant-numeric:tabular-nums}}

.kd-tariff-note{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:26px 0;border-bottom:1px solid #dce2e6;margin-top:20px}.kd-tariff-note p{margin:0}.kd-tariff-note strong{display:block;color:#102b3a;font-size:24px;font-weight:500;letter-spacing:-.02em}.kd-tariff-note p>span{display:block;font-size:13px;margin-top:6px;max-width:580px}.kd-tariff-note .text-link{flex-shrink:0;color:#175b9d}@media(max-width:760px){.kd-tariff-note{display:block}.kd-tariff-note strong{font-size:22px}.kd-tariff-note .text-link{margin-top:18px;min-height:44px}}

/* Internal pages share the homepage's outer frame without clipping menus or sticky content. */
body.kd-site--inner{background:#e9e7e3}
.kd-page-shell{--kd-shell-inset:min(3.6vw,53.28px);display:flow-root;width:100%;max-width:1480px;margin:16px auto;border-radius:18px;background:#fbfbfa}
.kd-page-shell>.site-header.kd-header{width:100%;max-width:none;margin:0}
.kd-page-shell>.page,.kd-page-shell>.site-footer{width:100%;max-width:none;margin-left:0;margin-right:0;padding-left:var(--kd-shell-inset);padding-right:var(--kd-shell-inset)}
@media(min-width:761px) and (max-width:1200px){.kd-page-shell{width:calc(100% - 24px);margin:12px auto}}
@media(max-width:760px){.kd-page-shell{--kd-shell-inset:16px;margin:0;border-radius:0}}
@media print{body.kd-site--inner{background:#fff}.kd-page-shell{width:auto;max-width:none;margin:0;border-radius:0;background:#fff}.kd-page-shell>.page{padding-left:0;padding-right:0}}
