/* DRIVE PARTNERS motion: one photographic transition; quiet interactions elsewhere. */
.dp-site{--dp-motion-ease:cubic-bezier(.2,.65,.25,1);--dp-motion-fast:220ms}
.dp-site .dp-button{position:relative;isolation:isolate;overflow:hidden;transition:color var(--dp-motion-fast),border-color var(--dp-motion-fast),background var(--dp-motion-fast)}
.dp-site .dp-button:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--dp-ink);transform:scaleX(0);transform-origin:left;transition:transform 320ms var(--dp-motion-ease)}
.dp-site .dp-button:after{transition:transform var(--dp-motion-fast) var(--dp-motion-ease)}
.dp-site .dp-button:is(:hover,:focus-visible){color:#fff!important;border-color:var(--dp-ink)}
.dp-site .dp-button:is(:hover,:focus-visible):before{transform:scaleX(1)}
.dp-site .dp-button:is(:hover,:focus-visible):after{transform:translate(2px,-2px)}
.dp-site .dp-button:active{transform:translateY(1px)}
.dp-site .dp-text-link:after{display:inline-block;transition:transform var(--dp-motion-fast) var(--dp-motion-ease)}
.dp-site .dp-text-link:is(:hover,:focus-visible):after{transform:translate(3px,-2px)}
.dp-site .dp-nav a:not([aria-current]):not(.dp-nav-contact):before{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:var(--dp-gold);transform:scaleX(0);transform-origin:left;transition:transform 260ms var(--dp-motion-ease)}
.dp-site .dp-nav a:is(:hover,:focus-visible):before{transform:scaleX(1)}
.dp-site .dp-footer-links a{transition:color var(--dp-motion-fast)}
.dp-site .dp-footer-links a:is(:hover,:focus-visible){color:#89651f;text-decoration:underline;text-underline-offset:6px}
.dp-site .dp-news-list a{transition:background var(--dp-motion-fast)}
.dp-site .dp-news-list a:is(:hover,:focus-visible){background:var(--dp-paper)}
.dp-site .dp-news-arrow{display:inline-block;transition:transform var(--dp-motion-fast)}
.dp-site .dp-news-list a:is(:hover,:focus-visible) .dp-news-arrow{transform:translate(3px,-2px)}
.dp-site #snow-monkey-form-404 :is(input,textarea,select):focus-visible{outline:2px solid var(--dp-gold);outline-offset:3px;box-shadow:none}
.dp-site #snow-monkey-form-404 button{transition:background var(--dp-motion-fast),color var(--dp-motion-fast)}
.dp-site #snow-monkey-form-404 button:focus-visible{outline:2px solid var(--dp-gold);outline-offset:4px}
.dp-site .page_top_btn{transition:background var(--dp-motion-fast),color var(--dp-motion-fast)}
/* Two focal moments only; all content is static unless JS starts an animation. */
.dp-site .dp-cinema-rule{position:absolute;bottom:28px;left:max(6vw,calc((100vw - var(--dp-container))/2));width:150px;height:2px;background:var(--dp-gold);z-index:3;pointer-events:none;transform-origin:left}
.dp-site .dp-service-overview-photo{overflow:hidden}
@media(max-width:700px){.dp-site .dp-cinema-rule{left:24px;bottom:22px;width:96px}}
@media print{.dp-site .dp-cinema-rule{display:none}}
@media(prefers-reduced-motion:reduce){
 .dp-site .dp-cinema-rule{display:none!important}
 .dp-site .dp-button:before,.dp-site .dp-button:after,.dp-site .dp-text-link:after,.dp-site .dp-news-arrow,.dp-site .dp-nav a:before{transition:none!important;transform:none!important}
 .dp-site .dp-button:before{display:none}
}
/* Immersive Logistics Story: scoped to the progressive top-page enhancement. */
.dp-site .dp-logistics-story{--story-bar:0px;--story-vh:calc(100vh - var(--story-bar));position:relative;height:calc(var(--story-vh)*3.6);margin-inline:calc(-1*var(--story-gutter,0px));width:calc(100% + 2*var(--story-gutter,0px));isolation:isolate;margin-bottom:64px;background:#fff}
@supports(height:100svh){.dp-site .dp-logistics-story{--story-vh:calc(100svh - var(--story-bar))}}
.dp-site.admin-bar .dp-logistics-story{--story-bar:32px}
.dp-site .dp-story-pin{position:sticky;top:var(--story-bar);height:var(--story-vh);overflow:hidden;background:#fff;color:var(--story-ink,#142238)}
.dp-site .dp-story-backdrop{position:absolute;inset:0;background:#142238;opacity:var(--story-dark,0)}
.dp-site .dp-story-frame{position:absolute;inset:0;clip-path:inset(var(--story-top,16%) var(--story-right,6%) var(--story-bottom,16%) var(--story-left,46%));overflow:hidden}
.dp-site .dp-story-frame .dp-story-image[width][height]{position:absolute;inset:0;width:100%;height:100%!important;max-width:none;object-fit:cover;transform:scale(var(--story-scale,1.06));object-position:center}
.dp-site .dp-story-frame .dp-story-carry[width][height]{clip-path:inset(0 0 0 var(--story-carry,100%));transform:translateX(var(--story-pan,2%)) scale(1.1)!important;object-position:64% center}
.dp-site .dp-story-frame .dp-story-deliver{transform:translateX(var(--story-deliverypan,0%)) scale(var(--story-scale,1.06))!important;clip-path:inset(0 0 0 var(--story-deliver,100%));object-position:center}
.dp-site .dp-story-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,27,47,.9),rgba(13,27,47,.7) 48%,rgba(13,27,47,.25));opacity:calc(var(--story-dark,0)*.8)}
.dp-site .dp-story-copy{position:absolute;left:var(--story-x,8%);top:var(--story-y,26%);z-index:2;pointer-events:none;opacity:var(--story-copyopacity,1);max-width:84%}
.dp-site .dp-story-copy h3{font-size:clamp(32px,3.8vw,56px);line-height:1.5;letter-spacing:.035em;margin:0;font-weight:700;color:inherit;white-space:nowrap}
.dp-site .dp-story-steps{position:absolute;bottom:6%;left:8%;right:8%;display:flex;gap:24px;list-style:none;margin:0;padding:18px 0 0;z-index:3;font:600 13px/1.5 Arial,sans-serif;letter-spacing:.12em;color:inherit}
.dp-site .dp-story-steps:before,.dp-site .dp-story-steps:after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:currentColor;opacity:.25}
.dp-site .dp-story-steps:after{height:2px;background:var(--dp-gold);opacity:1;transform:scaleX(var(--story-progress,0));transform-origin:left}
.dp-site .dp-story-skip{position:absolute;top:24px;right:6%;z-index:4;padding:10px 16px;min-height:44px;border:1px solid #e5e4de;background:#fff;color:#142238;font-size:12px;line-height:24px;display:flex;gap:20px;align-items:center}
.dp-site .dp-story-skip:hover{border-color:var(--dp-gold)}
.dp-site #dp-services-detail{scroll-margin-top:48px}
@media(max-width:782px){.dp-site.admin-bar .dp-logistics-story{--story-bar:46px}}
@media(max-width:700px){
 .dp-site .dp-logistics-story{height:calc(var(--story-vh)*3.3);margin-bottom:40px}
 .dp-site .dp-story-copy h3{font-size:clamp(24px,6.7vw,28px)}
 .dp-site .dp-story-frame .dp-story-carry[width][height]{object-fit:contain;transform:none!important;background:#142238;object-position:center 38%}
 .dp-site .dp-story-steps{left:7%;right:7%;bottom:24px;gap:24px;font-size:12px;padding-top:14px}
 .dp-site .dp-story-skip{top:18px;right:7%;font-size:11px;padding:7px 12px;gap:16px}
}
@media(max-width:600px){.dp-site.admin-bar .dp-logistics-story{--story-bar:0px}}
@media(prefers-reduced-motion:reduce){.dp-site .dp-logistics-story{display:none}}
@media print{.dp-site .dp-logistics-story{display:none}}

/* Keep native saved scroll coordinates stable while the optional story is inserted. */
.dp-site:has(.dp-hero-editorial){overflow-anchor:none}


/* Lightning applies overflow-x:hidden to body; that creates a non-scrolling sticky ancestor. */
html:has(.dp-logistics-story),body.dp-site:has(.dp-logistics-story){overflow-x:clip;overflow-y:visible}


/* Raise the handover in the closing phone frame: left inset settles at 7%, giving a 12% lift. */
@media(max-width:700px){.dp-site .dp-story-frame .dp-story-deliver[width][height]{transform:translateY(calc(-1.7 * var(--story-left,0%))) scale(var(--story-scale,1))!important}}


/* The story now expresses the company purpose, with deliberate Japanese phrase breaks. */
.dp-site .dp-story-copy h3>span{display:block;text-wrap:balance}
.dp-site .dp-story-copy .dp-story-phrase{display:inline-block;white-space:nowrap}
/* Static WP copy remains readable without JavaScript or motion; enhancement retains it for AT. */
.dp-site .dp-approach-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;margin-block:0 64px}
.dp-site .dp-approach-card{border-top:1px solid var(--dp-gold);padding-top:24px}
.dp-site .dp-approach-card h3{font-size:26px;line-height:1.6;margin-bottom:20px}
.dp-site .dp-approach-card p{font-size:15px;line-height:2;margin-bottom:0;color:#465264}
.dp-site .dp-approach-content.dp-approach-enhanced{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.dp-site .dp-logistics-story[data-phase="3"] .dp-story-copy{visibility:hidden}
/* No permanent button over photographs; keyboard users can reveal the direct service link. */
.dp-site .dp-story-skip:not(:focus-visible){width:1px;height:1px;min-height:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:700px){
 .dp-site .dp-approach-content{grid-template-columns:1fr;gap:32px;margin-bottom:48px}
 .dp-site .dp-approach-card h3{font-size:24px}
}
@media(max-width:700px) and (max-height:740px){
 .dp-site .dp-story-copy h3{font-size:24px;line-height:1.45}
}


/* The final handover is the service lead image, rather than a repeated photograph. */
.dp-site .dp-company-story-enhanced{padding-top:0}
.dp-site main>.dp-section.dp-company-story-enhanced:not(:has(.dp-region-editorial)){padding-top:0}
.dp-site .dp-company-story-enhanced .dp-logistics-story{margin-top:0}
.dp-site .dp-logistics-story[data-phase="2"] .dp-story-label{display:none}
.dp-site .dp-company-story-enhanced>.dp-section-intro:first-child{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%)}
.dp-site .dp-company-story-enhanced .dp-service-overview-photo{display:none}
.dp-site .dp-company-story-enhanced .dp-service-overview{grid-template-columns:1fr;max-width:860px;margin-inline:auto}
.dp-site .dp-company-story-enhanced .dp-service-detail-intro{max-width:860px;margin-inline:auto;margin-bottom:20px}
.dp-site .dp-company-story-enhanced .dp-logistics-story{margin-bottom:32px}
.dp-site .dp-story-label{font-size:14px;line-height:1.6;letter-spacing:.08em;margin:0 0 20px;color:inherit}
.dp-site .dp-story-copy{max-width:80%;transform:translateY(var(--story-rise,0px));will-change:opacity,transform}
.dp-site .dp-story-copy h3{font-size:clamp(21px,2.1vw,31px);line-height:1.75;letter-spacing:.01em;white-space:normal;overflow-wrap:anywhere}
.dp-site .dp-logistics-story[data-phase="2"] .dp-story-copy{max-width:80%}
.dp-site .dp-logistics-story[data-phase="2"] .dp-story-copy h3{font-size:clamp(25px,2.8vw,42px);line-height:1.75}
@media(max-width:700px){
 .dp-site .dp-story-copy,.dp-site .dp-logistics-story[data-phase="2"] .dp-story-copy{max-width:88%}
 .dp-site .dp-story-copy h3,.dp-site .dp-logistics-story[data-phase="2"] .dp-story-copy h3{font-size:21px;line-height:1.85}
 .dp-site .dp-story-label{font-size:12px;margin-bottom:14px}
 .dp-site .dp-story-frame .dp-story-carry[width][height]{object-fit:cover;object-position:72% center}
 .dp-site .dp-company-story-enhanced .dp-logistics-story{margin-bottom:24px}
}
@media(max-width:700px) and (max-height:740px){
 .dp-site .dp-story-copy h3,.dp-site .dp-logistics-story[data-phase="2"] .dp-story-copy h3{font-size:21px;line-height:1.55}
 .dp-site .dp-story-label{margin-bottom:10px}
}
/* Editorial hierarchy: original wording, with one focal phrase per composition. */
.dp-site .dp-story-copy h3>.dp-story-lead{font-size:clamp(16px,1.35vw,20px);font-weight:500;line-height:1.9;max-width:32em;text-wrap:balance}
.dp-site .dp-story-copy h3>.dp-story-focus{font-size:clamp(30px,3.1vw,46px);font-weight:700;line-height:1.5;letter-spacing:.025em;margin-block:20px 12px;text-wrap:balance}
.dp-site .dp-story-focus>span{display:inline-block;white-space:nowrap}
.dp-site .dp-story-accent{color:var(--story-accent,#89651f)}
.dp-site .dp-story-lead-phrase{display:inline-block}
.dp-site .dp-sales-feature .dp-sales-pending{opacity:0;transform:translateY(30px)}
.dp-site .dp-sales-feature .dp-sales-photo.dp-sales-pending{transform:translateY(40px)}
@media(prefers-reduced-motion:reduce){.dp-site .dp-sales-feature .dp-sales-pending{opacity:1!important;transform:none!important}}
@media print{.dp-site .dp-sales-feature .dp-sales-pending{opacity:1!important;transform:none!important}}
.dp-site .dp-story-copy h3>.dp-story-close{font-size:clamp(18px,1.65vw,24px);font-weight:500;line-height:1.8;max-width:34em;text-wrap:pretty}
.dp-site .dp-logistics-story[data-phase="2"] .dp-story-focus{font-size:clamp(34px,4vw,58px);margin-block:22px 18px}
@media(max-width:700px){
 .dp-site .dp-story-copy h3>.dp-story-lead{font-size:15px;line-height:1.8;max-width:21em}
 .dp-site .dp-story-copy h3>.dp-story-focus,.dp-site .dp-logistics-story[data-phase="2"] .dp-story-focus{font-size:29px;line-height:1.4;margin-block:16px 10px}
 .dp-site .dp-story-copy h3>.dp-story-close{font-size:17px;line-height:1.8;max-width:20em}
}
@media(max-width:700px) and (max-height:740px){
 .dp-site .dp-story-copy h3>.dp-story-focus,.dp-site .dp-logistics-story[data-phase="2"] .dp-story-focus{font-size:26px;margin-block:10px 8px}
 .dp-site .dp-story-copy h3>.dp-story-lead{font-size:14px}
 .dp-site .dp-story-copy h3>.dp-story-close{font-size:16px}
}
