/* Shared visual standards for the public site. Load after page styles. */
:root{--site-ink:#193247;--site-muted:#596b7b;--site-line:#dce2e7;--site-paper:#f6f7f8}
body{font-family:Arial,Helvetica,sans-serif;color:var(--site-ink);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-family:inherit}
.site-header{height:84px;border-bottom:1px solid var(--site-line);box-shadow:none;background:#fff}
.site-header nav{font-size:14px;font-weight:500}
.utility{background:#152d42;padding:7px 0;font-size:11px}
.site-header .orange{min-height:40px;padding:10px 18px}
#app .homepage,#app .page-shell,#app .track-overview,#app .quote-overview{background:#fff}
#app :is(.page-shell,.homepage) :is(h1,h2,h3){font-family:Arial,Helvetica,sans-serif;letter-spacing:-.5px}
#app :is(.page-shell,.homepage) h2{font-size:clamp(24px,2.7vw,32px);line-height:1.25;font-weight:600}
#app :is(.page-shell,.homepage) h3{font-weight:600}
#app :is(.page-shell,.homepage) p{line-height:1.7}
#app .kicker{font-size:11px;letter-spacing:1.4px;font-weight:600}
#app .site-hero{min-height:390px;padding:48px 0}
#app .site-hero h1{font-size:clamp(34px,4vw,48px);font-weight:600;line-height:1.15;letter-spacing:-1px;max-width:740px}
#app .site-hero-intro{font-size:16px;line-height:1.7;max-width:570px}
#app .site-hero-actions a{border-radius:3px;box-shadow:none;font-size:14px;min-height:44px;padding:12px 20px}
#app .site-hero-benefits{font-size:12px;gap:20px}
#app .orange,.site-header .orange{background:#e96319;background-image:none;border-radius:3px;box-shadow:none;text-shadow:none;font-weight:600}
#app :is(.ghost,.outline,.blue-link){border-radius:3px;box-shadow:none}
#app :is(.page-card,.service-card,.delivery-card,.page-aside,.page-form,.tk-panel,.qt-form,.qt-summary,.qt-service-choice){border-color:var(--site-line);border-radius:4px;box-shadow:none}
#app :is(.page-callout,.ready-banner,.tk-help,.tk-updates){background:#173a56;background-image:none;border-radius:3px;box-shadow:none}
#app :is(.page-section.tinted,.tinted,.visibility){background:#f6f8fa}
#app :is(.round-icon,.tk-status-icon){box-shadow:none}
#app :is(.field-grid,.qt-form) :is(input,select,textarea){border-radius:3px;border-color:#c8d1da;color:#243d51;box-shadow:none;min-height:46px}
#app :is(input,select,textarea):focus-visible{outline:2px solid #276798;outline-offset:2px}
#app :is(.faq-list,.tk-faq-grid) details{border-radius:3px;border-color:var(--site-line);box-shadow:none}
#app .tk-main{padding-top:30px}
#app .tk-summary{padding:28px;gap:24px}
#app .tk-summary h2{font-size:24px;font-weight:600;letter-spacing:.1px}
#app .tk-type{font-size:13px}
#app .tk-type>.site-icon{width:18px;height:18px;background:none;padding:0}
#app .tk-current{align-items:flex-start;gap:0;border-left:3px solid #397599;padding:3px 0 3px 17px}
#app .tk-current .tk-status-icon{display:none}
#app .tk-current h3{font-size:22px;line-height:1.3;font-weight:600;color:#253c4c;margin:0 0 7px;letter-spacing:-.2px}
#app .tk-current p{font-size:14px;color:#536674;line-height:1.6;margin:0;max-width:390px}
#app .tk-current.on-hold{border-left-color:#a7741c}
#app .tk-current.on-hold h3{color:#6c501f}
#app .tk-estimate{background:#f2f6f8;border-left:3px solid #397599;padding:22px 24px}
#app .tk-delivery-weekday{font-size:17px;font-weight:600;letter-spacing:.7px}
#app .tk-delivery-day{font-size:54px;font-weight:600}
#app .tk-delivery-month{font-size:17px;font-weight:400}
#app .tk-estimate .tk-label{color:#4b6171;font-weight:600}
#app .tk-estimate small{color:#5b6b79;font-size:12px}
#app .tk-delivery-update{font-size:14px;border-color:#d4dfe5}
#app .tk-milestones{border-color:var(--site-line)}
#app .tk-milestones li>span{box-shadow:none;width:32px;height:32px}
#app .tk-milestones li.is-current>span{background:#245f88;box-shadow:none}
#app .tk-milestones li.is-current strong{color:#245f88}
#app .tk-milestones li.is-complete>span{background:#23764e;color:#fff}
#app .tk-milestones li.is-complete strong{color:#1e6945}
#app .tk-milestones li.is-complete:before{border-top-color:#69a487}
#app .tk-milestones li.is-current:last-child>span{background:#23764e;color:#fff}
#app .tk-milestones li.is-current:last-child strong{color:#1e6945}
#app .tk-milestones li.is-hold>span{background:#9a6b20}
#app .tk-event-list li.latest strong{font-size:16px;font-weight:600;color:#245f88}
#app .tk-event-list li strong{font-size:14px;font-weight:600}
#app .tk-event-list li{padding-bottom:25px;border-left-color:#d1dce4}
#app .tk-event-list li:before{width:10px;height:10px;left:-6px;border-width:2px;border-color:#567a96}
#app .tk-event-list li.latest:before{width:12px;height:12px;left:-7px;background:#245f88;box-shadow:none;border-color:#245f88}
#app .tk-event-list li.hold:before{background:#9a6b20;border-color:#9a6b20}
#app .tk-event-list time{font-size:12px;color:#617180}
#app .tk-map-toolbar button{border-radius:3px;box-shadow:0 1px 3px #132b4214;font-weight:400}
#app .tk-map-caption{color:#334e62;border:1px solid #d5dfe6;border-radius:2px}
#footer.swift-footer{background:#142c40;background-image:none;border-top:0}
#footer .footer-grid h4{font-size:13px;font-weight:600;letter-spacing:.2px}
#footer .footer-grid a:not(.swift-logo){font-size:13px}
#footer p{font-size:13px;line-height:1.8}
@media(max-width:800px){.site-header{height:76px}.site-header nav{top:76px}#app .site-hero{min-height:350px}}
@media(max-width:600px){#app .site-hero{padding:0;min-height:0}#app .site-hero h1{font-size:34px}#app .site-hero-layout{padding-top:26px;padding-bottom:28px}#app .tk-summary{padding:21px;gap:22px}#app .tk-current{border-top:0;padding:3px 0 3px 14px}#app .tk-current h3{font-size:21px}#app .tk-estimate{padding:20px}#app .tk-delivery-day{font-size:48px}#app .tk-route-timeline{padding:16px}#app .tk-timeline h3{font-size:20px}#app .site-hero-actions a{font-size:14px}}
@media print{#app .tk-current,#app .tk-estimate{color:#000;background:#fff;border-color:#444}}

/* Service, company, help and account pages use the same surface treatment. */
#app :is(.ab-service-card,.ab-value-cards article,.sp-topic,.sp-ticket-card,.sp-contact-options article,.sv-card,.sv-container-option,.sv-benefit,.cp-card,.cp-metric,.cp-sidebar,.cp-access-notice){border-radius:4px;box-shadow:none;border-color:#dce2e7}
#app :is(.ab-faq-grid,.sp-faq-grid) details{border-radius:3px;box-shadow:none;border-color:#dce2e7}
#app :is(.sp-topic,.sv-service-icon,.ab-service-card) .site-icon{width:24px;height:24px;box-shadow:none}
#app :is(.ab-heading-row,.sv-heading,.sp-section-heading) h2{font-size:clamp(24px,2.7vw,32px);font-weight:600;letter-spacing:-.5px}
#app :is(.ab-text-link,.sv-text-link,.sp-text-link,.cp-text-link){font-size:14px;font-weight:500}
#app :is(.sp-field-grid input,.sp-field-grid select,.sp-field-grid textarea){border-radius:3px;border-color:#c8d1da;box-shadow:none;font-size:16px}
#app .cp-metric{background:#fff;background-image:none}
#app .cp-metric .site-icon{width:22px;height:22px}
#app .cp-card h2{font-size:21px;font-weight:600}

/* Predictable focus, readable tables and quiet interaction across all pages. */
#app a:focus-visible,#app button:focus-visible,.site-header a:focus-visible,#footer a:focus-visible{outline:2px solid #2873a5;outline-offset:4px}
#app :is(.tk-label,.field-grid label,.sp-field-grid label){color:#435c70}
#app :is(.cp-table-wrap,.table-wrap){overflow-x:auto;overscroll-behavior-x:contain}
#app :is(.cp-table-wrap,.table-wrap) th{background:#f4f6f8;font-size:12px;font-weight:600;text-align:left}
#app :is(.cp-table-wrap,.table-wrap) td{font-size:13px;border-color:#e3e8ec}
#app :is(.cp-empty,.page-empty,.tk-timeline-empty){background:#fafbfc;border:1px solid #dce2e7;border-radius:3px;box-shadow:none}
#app :is(.cp-empty,.page-empty) h2{font-size:23px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.tk-history-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.8fr);gap:38px;padding:28px;border-top:1px solid #dce2e7}.tk-location-summary{align-self:start;background:#f7f9fa;border:1px solid #e0e6eb;padding:22px;border-radius:3px}.tk-location-summary dl{margin:0}.tk-location-summary dl>div{padding:14px 0;border-bottom:1px solid #e0e6eb}.tk-location-summary dt{font-size:12px;color:#596b7b;margin-bottom:6px}.tk-location-summary dd{margin:0;font-size:15px;overflow-wrap:anywhere}.tk-location-summary button{margin-top:20px;min-height:42px;padding:10px 14px;border:1px solid #bacbd7;background:#fff;color:#245574;border-radius:3px;cursor:pointer}.tk-location-summary button:disabled{opacity:.6;cursor:default}.tk-location-summary button .site-icon{width:16px;height:16px}.cp-history-panel{padding:24px;border-top:1px solid #dce2e7}.cp-history-panel .cp-real-timeline{max-width:100%;padding:0}.ab-network .ab-network-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:center}.journey-summary{padding:24px;border-top:1px solid #dce2e7;background:#f7f9fa}.journey-summary strong{font-size:16px}.journey-summary p{font-size:14px;margin:9px 0}.journey-summary>span{font-size:13px;color:#245f88}@media(max-width:700px){.tk-history-layout{grid-template-columns:minmax(0,1fr);gap:26px;padding:20px}.tk-location-summary{padding:18px}.ab-network .ab-network-layout{grid-template-columns:minmax(0,1fr);gap:26px}.cp-history-panel{padding:18px}}

#footer .footer-brand .footer-email{display:block;color:#d7e6f2;font-size:13px;overflow-wrap:anywhere;margin:5px 0 0}.company-email-contact{border-bottom:1px solid #dce3e8;padding-bottom:20px;margin-bottom:23px}.company-email-contact a,.company-support-email{display:inline-block;font-size:15px;color:#245f88;overflow-wrap:anywhere;line-height:1.7}.company-email-contact p{font-size:13px;margin:12px 0 0}.company-support-email{display:block;margin:0 0 18px}.company-email-contact a:focus-visible,.company-support-email:focus-visible{outline:2px solid #2873a5;outline-offset:3px}
