.business-section {padding:72px 0;background:#101a24;scroll-margin-top:90px;}
.business-inner {width:min(1200px,88%);margin:auto;}
.business-section h2 {font-family:var(--font-primary-bold);font-size:clamp(30px,3vw,42px);line-height:1.2;margin:0 0 22px;letter-spacing:-.025em;}
.business-lead {max-width:65ch;color:#bdcbd6;line-height:1.8;margin-bottom:34px;}
.business-services {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;}
.business-services article {padding-top:22px;border-top:1px solid #365165;}
.business-services h3,.process-list h3 {font-size:20px;line-height:1.4;margin-bottom:12px;}
.business-services p,.process-list p {font-size:15px;line-height:1.8;color:#bdcbd6;margin-bottom:18px;}
.business-services a,.business-faq a {color:#8dcef7;text-underline-offset:4px;}
.business-process {background:#0c1219;}
.process-list {padding-left:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;}
.process-list li {padding-left:8px;}
.process-list li::marker {color:#8dcef7;font-weight:700;}
.business-faq {max-width:900px;}
.business-faq details {border-bottom:1px solid #365165;padding:20px 0;}
.business-faq summary {cursor:pointer;font-size:17px;font-weight:700;line-height:1.6;}
.business-faq details p {color:#bdcbd6;line-height:1.8;margin:18px 0 0;max-width:70ch;}
.contact-help {font-size:13px;color:#bccbd7;line-height:1.7;margin:20px 0;}
.contact-prepared {margin-top:20px;}
.contact-consent {display:flex;align-items:flex-start;gap:12px;margin:20px 0;color:#c4d4e0;font-size:13px;line-height:1.7;}
.contact-consent input {width:18px;height:18px;margin-top:3px;flex-shrink:0;accent-color:#449ad5;}
.contact-consent a,.contact-help a {color:#8dcef7;text-decoration:underline;}
.contact-section [hidden] {display:none!important;}
.logo-mark.brand-on-light,.quote-header a:first-child,.footer-logo {background:#f7f9fb;padding:6px 10px;border-radius:6px;}
#headerLogo .logo-mark.brand-on-light {max-height:64px;}
#headerLogo .custom-logo-file {max-height:50px;}
#logoFallback {color:#0c1219;font-weight:700;}
.footer-logo {display:inline-block;width:fit-content;}
.footer-logo img {display:block;width:220px;max-width:100%;height:auto;}
.mobile-drawer:not(.open) {visibility:hidden;}
.mobile-drawer.open {visibility:visible;}
.mobile-drawer {height:100dvh;bottom:auto;padding-bottom:calc(24px + var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom));}
.main-header a:focus-visible,.business-section :focus-visible,.contact-section :focus-visible {outline:2px solid #8dcef7;outline-offset:4px;}
.work-full-link {display:inline-block;color:#175779;margin-top:12px;text-decoration:underline;text-underline-offset:4px;font-size:13px;}
.legal-main {width:min(860px,88%);margin:60px auto;color:#c5d4df;}
.legal-main h1 {font-size:38px;line-height:1.2;margin:24px 0;}
.legal-main h2 {font-size:22px;margin:32px 0 16px;}
.legal-main p,.legal-main li {line-height:1.8;margin-bottom:14px;}
.legal-main a {color:#8dcef7;text-decoration:underline;}
.case-main {width:min(1100px,88%);margin:48px auto;}
.case-main h1 {font-size:clamp(30px,4vw,52px);line-height:1.2;margin:28px 0;}
.case-main p {color:#bdcbd6;line-height:1.8;margin-bottom:22px;max-width:70ch;}
.case-main img {width:100%;height:auto;display:block;border-radius:8px;margin:24px 0;}
.case-gallery {display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;}
.case-gallery img {margin:0;}
@media(max-width:900px) {.business-services,.process-list {grid-template-columns:1fr;gap:24px;} .business-section {padding:52px 0;} .case-gallery {grid-template-columns:1fr;} }
@media(min-width:769px) and (max-width:1100px) {.header-cta-group .btn-secondary {display:none;} .nav-container {gap:16px;} .desktop-nav .nav-list {gap:16px;} }
@media(max-width:768px) {#headerLogo .logo-mark.brand-on-light {max-height:52px;} #headerLogo .custom-logo-file {max-height:40px;} .quote-header a:first-child {padding:5px 7px;} }
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto!important;}}

.philosophy-caption {margin-top:20px;color:#c4d3de;line-height:1.6;}
.philosophy-caption strong {display:block;font-family:var(--font-primary-bold);font-size:18px;color:#f4f7fa;}
.philosophy-caption span {display:block;margin-top:5px;font-size:14px;}
.company-address {font-style:normal;margin:0;}
.contact-info-panel > .method-item {margin:22px 0;}
.contact-info-panel a.method-detail {text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;}
