/* Shared visual system for focused service and industry destinations. */
html[data-destination] { scroll-padding-top:0; }
.service-detail-page { --sd-blue:#0753a2; --sd-ink:#0b2d43; --sd-muted:#637e90; --sd-pale:#eff7fc; background:#fff; }
.service-detail-page #main { overflow:clip; }
.sd-wrap { width:88%; max-width:1360px; margin-inline:auto; }
.sd-hero { position:relative; isolation:isolate; min-height:660px; display:flex; align-items:center; padding:150px 0 110px; color:#fff; background:#0b2d43; }
.sd-hero>img { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:var(--sd-focal,center); }
.sd-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,#06273b70,transparent 180px),linear-gradient(90deg,#06273bed 0%,#06273bc2 36%,#06273b30 75%); }
.sd-eyebrow { margin:0 0 24px; font-size:16px; font-weight:500; color:#d2e5f2; }
.sd-hero h1 { margin:0; font-size:clamp(44px,4.6vw,72px); font-weight:650; line-height:1.25; letter-spacing:-.045em; }
.sd-hero h1>span { display:block; }
.sd-hero h1>span+span { color:#98ccff; }
.sd-hero-summary { max-width:560px; margin:26px 0 30px; font-size:17px; line-height:1.85; color:#d8e8f1; text-wrap:pretty; }
.sd-curve { position:absolute; inset:auto 0 -1px; height:calc(26px + 18px * var(--sd-edge,1)); background:#fff; pointer-events:none; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 50' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0H190C224 0 236 25 272 25H1168C1204 25 1216 0 1250 0H1440V50H0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
.sd-section-nav { position:sticky; top:80px; z-index:8; background:#fffffff5; border-bottom:1px solid #e0eaf1; backdrop-filter:blur(12px); }
.sd-section-nav>.sd-wrap { display:flex; align-items:center; justify-content:space-between; gap:30px; min-height:76px; }
.sd-back { display:inline-flex; align-items:center; gap:12px; font-size:14px; color:var(--sd-muted); white-space:nowrap; }
.sd-section-links { display:flex; align-self:stretch; gap:clamp(24px,4vw,62px); overflow-x:auto; }
.sd-section-links a { position:relative; display:flex; align-items:center; font-size:15px; white-space:nowrap; color:var(--sd-muted); padding:22px 0; }
.sd-section-links a::after { content:""; position:absolute; inset:auto 0 0; height:2px; background:var(--sd-blue); transform:scaleX(0); transform-origin:left; transition:transform .25s; }
.sd-section-links a:is([aria-current],:hover) { color:var(--sd-blue); }
.sd-section-links a[aria-current]::after { transform:scaleX(1); }
.sd-section { padding-block:88px; }
.sd-section,.sd-process,.sd-questions { scroll-margin-top:184px; }
.sd-label { color:var(--sd-blue); font-size:13px; letter-spacing:.06em; line-height:1.6; margin:0 0 16px; font-weight:550; }
.service-detail-page h2 { font-size:clamp(28px,2.7vw,42px); line-height:1.4; letter-spacing:-.035em; font-weight:600; color:var(--sd-ink); margin:0; }
.service-detail-page h3 { font-size:22px; line-height:1.5; font-weight:600; letter-spacing:-.02em; color:var(--sd-ink); margin:0; }
.sd-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:42px; }
.sd-text-link { display:inline-flex; align-items:center; gap:20px; font-size:14px; line-height:1.7; white-space:nowrap; color:var(--sd-blue); }
.sd-text-link svg { width:23px; height:23px; flex:none; transition:transform .3s; }
.sd-text-link:is(:hover,:focus-visible) svg { transform:rotate(45deg); }
.sd-text-link:is(:hover,:focus-visible) { text-decoration:underline; text-underline-offset:6px; }
.sd-scope-layout { display:grid; grid-template-columns:1fr 1fr; gap:clamp(36px,5vw,80px); align-items:center; }
.sd-scope-list article { display:flex; gap:25px; padding:26px 0; border-top:1px solid #dce8ef; }
.sd-scope-list article:first-child { padding-top:0; border:0; }
.sd-number { color:var(--sd-blue); font-size:16px; line-height:33px; flex:none; }
.sd-scope-list p,.sd-process li p,.sd-prepare p,.sd-other-cargo p { color:var(--sd-muted); font-size:15px; line-height:1.9; margin:12px 0 0; text-wrap:pretty; }
.sd-scope-photo { position:relative; overflow:hidden; border-radius:24px; margin:0; min-width:0; }
.sd-scope-photo img { display:block; width:100%; height:440px; object-fit:cover; }
.sd-scope-photo figcaption { position:absolute; inset:auto 0 0; padding:42px 26px 24px; color:#fff; font-size:14px; background:linear-gradient(transparent,#082b43b3); }
.sd-process { padding:70px 0; background:var(--sd-pale); border-radius:34px; }
.sd-process ol { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.sd-process li { padding:0 34px; border-left:1px solid #cbdde9; }
.sd-process li:first-child { border:0; padding-left:0; }
.sd-step-number { display:block; color:#1b79c5; font-size:36px; font-weight:400; line-height:1.3; margin-bottom:24px; }
.sd-prepare { display:grid; grid-template-columns:1fr 1fr; gap:clamp(36px,6vw,90px); align-items:center; }
.sd-prepare h2 { white-space:pre-line; }
.sd-prepare p { max-width:440px; }
.sd-prepare .sd-text-link { margin-top:28px; }
.sd-checklist { list-style:none; margin:0; padding:22px 30px; border-radius:22px; background:var(--sd-pale); }
.sd-checklist li { display:flex; gap:16px; align-items:center; padding:19px 0; font-size:15px; line-height:1.8; color:#294e66; }
.sd-checklist li+li { border-top:1px solid #dce8ef; }
.sd-check { display:grid; place-items:center; flex:none; width:22px; height:22px; color:white; background:var(--sd-blue); border-radius:50%; font-size:12px; }
.sd-questions { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; padding-bottom:90px; }
.sd-faq details { border-top:1px solid #dce8ef; }
.sd-faq details:last-child { border-bottom:1px solid #dce8ef; }
.sd-faq summary { list-style:none; display:flex; justify-content:space-between; gap:24px; align-items:center; padding:24px 0; color:var(--sd-ink); font-size:18px; line-height:1.6; cursor:pointer; }
.sd-faq summary::-webkit-details-marker { display:none; }
.sd-faq-toggle { position:relative; flex:none; width:18px; height:18px; color:var(--sd-blue); }
.sd-faq-toggle::before,.sd-faq-toggle::after { content:""; position:absolute; width:14px; height:1.5px; left:2px; top:8px; background:currentColor; }
.sd-faq-toggle::after { transform:rotate(90deg); transition:transform .25s; }
.sd-faq details[open] .sd-faq-toggle::after { transform:rotate(0); }
.sd-faq details p { font-size:15px; line-height:1.9; color:var(--sd-muted); margin:0 34px 26px 0; }
.sd-related { background:#f6f9fc; padding:70px 0 90px; }
.sd-related-grid,.sd-industry-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.sd-related-card { display:block; min-width:0; padding:0 0 24px; border-bottom:1px solid #ccdee9; text-decoration:none; }
.sd-related-card figure { margin:0 0 22px; border-radius:20px; overflow:hidden; aspect-ratio:2.4; }
.sd-related-card img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s; }
.sd-related-card>div { display:flex; gap:25px; align-items:center; justify-content:space-between; }
.sd-related-card p { font-size:14px; line-height:1.8; color:var(--sd-muted); margin:12px 0 0; max-width:95%; }
.sd-arrow { display:grid; place-items:center; flex:none; width:40px; height:40px; background:#e6f0f8; color:var(--sd-blue); border-radius:50%; transition:background .3s,color .3s; }
.sd-arrow svg { width:23px; height:23px; transition:transform .3s; }
.sd-related-card:is(:hover,:focus-visible) img { transform:scale(1.035); }
.sd-related-card:is(:hover,:focus-visible) .sd-arrow,.sd-other-cargo a:is(:hover,:focus-visible) .sd-arrow { color:#fff; background:var(--sd-blue); }
.sd-related-card:is(:hover,:focus-visible) .sd-arrow svg,.sd-other-cargo a:is(:hover,:focus-visible) .sd-arrow svg { transform:rotate(45deg); }
.sd-industry-grid { row-gap:48px; }
.sd-industry-grid figure { aspect-ratio:1.95; }
.sd-other-cargo { display:grid; gap:0; }
.sd-other-cargo>a { display:flex; justify-content:space-between; gap:25px; align-items:center; padding:26px 0; border-top:1px solid #cbdde9; }
.sd-closing { position:relative; margin-top:24px; padding:65px 0 75px; color:#fff; background:var(--sd-blue); text-align:center; }
.sd-closing::before { content:""; position:absolute; inset:auto 0 calc(100% - 1px); height:44px; background:var(--sd-blue); mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 50' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 25H190C224 25 236 0 272 0H1168C1204 0 1216 25 1250 25H1440V50H0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
.sd-closing h2 { color:#fff; }
.sd-closing p { color:#d0e6fa; font-size:16px; line-height:1.8; margin:18px 0 30px; }
.service-detail-page a:focus-visible,.sd-faq summary:focus-visible { outline:2px solid #1289d5; outline-offset:5px; border-radius:6px; }
.service-detail-page .dms-contact-button::before { transform:translateX(-101%); }
.service-detail-page .dms-contact-button:is(:hover,:focus-visible)::before { transform:translateX(0); }
html[lang="en"] .sd-hero h1 { font-size:clamp(38px,4.4vw,68px); max-width:900px; }
@media(max-width:1000px) { .sd-hero { min-height:620px; } .sd-hero-summary { max-width:500px; } .sd-scope-layout { gap:32px; } .sd-scope-photo img { height:410px; } .sd-questions { grid-template-columns:1fr 1.2fr; gap:36px; } .sd-process li { padding:0 24px; } }
@media(max-width:809px) {
 .sd-wrap { width:88%; } .sd-hero { min-height:560px; padding:140px 0 90px; } .sd-hero h1 { font-size:clamp(35px,6.8vw,54px); } .sd-hero-summary { max-width:510px; font-size:16px; } .sd-eyebrow { margin-bottom:18px; }
 .sd-hero::before { background:linear-gradient(90deg,#06273bed,#06273b75); } .sd-section-nav { top:76px; } .sd-section-nav>.sd-wrap { display:block; min-height:0; } .sd-back { display:none; } .sd-section-links { justify-content:space-between; gap:24px; } .sd-section-links a { padding:18px 0; font-size:14px; }
 .sd-section { padding-block:58px; } .sd-section,.sd-process,.sd-questions { scroll-margin-top:154px; } .sd-heading { align-items:flex-start; flex-direction:column; gap:20px; margin-bottom:30px; } .sd-scope-layout,.sd-prepare,.sd-questions { grid-template-columns:1fr; gap:30px; } .sd-scope-photo img { height:auto; aspect-ratio:1.5; } .sd-scope-list article { padding:22px 0; } .sd-process { padding:54px 0; border-radius:24px; } .sd-process ol { grid-template-columns:1fr; gap:24px; } .sd-process li,.sd-process li:first-child { border:0; padding:0 0 24px; border-bottom:1px solid #cbdde9; } .sd-process li:last-child { border:0; padding-bottom:0; } .sd-step-number { font-size:25px; margin-bottom:10px; } .sd-checklist { padding:14px 23px; } .sd-questions { padding-bottom:58px; } .sd-related { padding:55px 0 70px; } .sd-related-grid,.sd-industry-grid { gap:28px; } .sd-related-card h3 { font-size:20px; } .sd-related-card figure { aspect-ratio:1.7; } .sd-closing { padding:45px 0 55px; } .sd-closing p { font-size:15px; } .sd-curve { height:28px; }
}
@media(max-width:540px) { .sd-related-grid,.sd-industry-grid { grid-template-columns:1fr; } .sd-hero-summary { font-size:15px; line-height:1.85; } .sd-hero h1 { letter-spacing:-.04em; } .sd-hero .dms-contact-button { font-size:14px; gap:20px; padding-left:22px; } .sd-eyebrow { font-size:14px; } .sd-number { font-size:14px; } .sd-scope-list article { gap:15px; } .service-detail-page h3 { font-size:20px; } .sd-section-links { gap:20px; } .sd-section-links a { font-size:13px; } .sd-closing h2 { font-size:28px; } }
@media(prefers-reduced-motion:reduce) { .service-detail-page *, .service-detail-page *::before,.service-detail-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
