/* Native cross-document fades preserve ordinary links, back/forward and scroll restoration. */
@media(prefers-reduced-motion:no-preference){
 @view-transition{navigation:auto}
 ::view-transition-old(root){animation:lw-page-out 160ms ease-out both;mix-blend-mode:normal}
 ::view-transition-new(root){animation:lw-page-in 260ms ease-out both;mix-blend-mode:normal}
}
@keyframes lw-page-out{to{opacity:0}}
@keyframes lw-page-in{from{opacity:0}to{opacity:1}}
html.lw-motion-off::view-transition-old(root),html.lw-motion-off::view-transition-new(root){animation:none}

.lw-service-banner .lw-motion-toggle,.portal .lw-motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:5px 9px;border:1px solid #617984;border-radius:0;background:#172f3b;color:#d8e4e5;font:500 10px/1.5 Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif;letter-spacing:0;cursor:pointer;box-shadow:none;white-space:nowrap}
.lw-motion-toggle::before{content:"Ⅱ";font:700 10px/1 Arial,sans-serif}
.lw-motion-toggle[aria-pressed=false]::before{content:"▷"}
.lw-service-banner>.lw-motion-toggle{position:absolute;top:9px;right:10px;z-index:2}
.portal .footer-in>.lw-motion-toggle{justify-self:start;background:transparent;color:#626964;border-color:#d8dbd4;grid-column:1/-1;min-height:36px}
.lw-motion-toggle:disabled{cursor:default;opacity:.85}
.lw-service-banner .lw-motion-toggle:focus-visible,.portal .lw-motion-toggle:focus-visible{outline:2px solid #d59670;outline-offset:3px}

@media(prefers-reduced-motion:no-preference){
 .lw-motion-on .portal .main-nav a{position:relative;text-decoration:none}
 .lw-motion-on .portal .main-nav a::after{content:"";position:absolute;left:15%;right:15%;bottom:7px;height:2px;background:#c63e20;transform:scaleX(0);transform-origin:left;transition:transform .24s ease}
 .lw-motion-on .portal .main-nav a:hover::after,.lw-motion-on .portal .main-nav a:focus-visible::after{transform:scaleX(1)}
 .lw-motion-on .portal .card-image img{transition:transform .5s cubic-bezier(.2,.65,.3,1)}
 .lw-motion-on .portal .read-link,.lw-motion-on .portal .more{transition:color .2s ease}
 .lw-motion-on .portal .read-link:hover,.lw-motion-on .portal .more:hover{color:#c63e20}
 .lw-motion-on .lw-service-primary,.lw-motion-on .lw-service-nav{transition:background-color .2s ease,transform .2s ease}
 .lw-motion-on .lw-service-primary span,.lw-motion-on .lw-service-nav span,.lw-motion-on .lw-service-sample span{display:inline-block;transition:transform .25s cubic-bezier(.2,.65,.3,1)}
 .lw-motion-on .lw-service-primary:hover span,.lw-motion-on .lw-service-nav:hover span{transform:translate(3px,-3px)}
 .lw-motion-on .lw-service-sample:hover span{transform:translateX(4px)}
 .lw-motion-on .lw-service-primary:active,.lw-motion-on .lw-service-nav:active{transform:scale(.98)}
 .lw-motion-on .featured-photo img{animation:lw-photo-drift 18s ease-in-out infinite alternate;animation-play-state:paused}
 .lw-motion-on .featured-photo.lw-motion-inview img{animation-play-state:running}
 .lw-motion-on .lw-service-art .lw-map-ring{transform-box:fill-box;transform-origin:center;animation:lw-map-pulse 4.8s ease-out infinite}
 .lw-motion-on .lw-service-art .lw-map-ring--inner{animation-delay:1.2s}
 .lw-motion-on .lw-service-art .lw-map-pin{animation:lw-map-pin 3.8s ease-in-out infinite}
 .lw-motion-on .lw-service-art .lw-map-shadow{transform-box:fill-box;transform-origin:center;animation:lw-map-shadow 3.8s ease-in-out infinite}
 .lw-motion-on .lw-service-art .lw-map-route{animation:lw-map-route 12s linear infinite}
 .lw-motion-on .lw-service-art .lw-map-signal{animation:lw-map-signal 6s linear infinite}
 .lw-motion-on .lw-service-art .lw-service-map-label{animation:lw-map-label 5s ease-in-out infinite}
 .lw-motion-on .lw-service-art .lw-service-map-label--b{animation-delay:-1.6s}
 .lw-motion-on .lw-service-art .lw-service-map-label--c{animation-delay:-3.2s}
 .lw-motion-on .lw-service-art :is(.lw-map-ring,.lw-map-pin,.lw-map-shadow,.lw-map-route,.lw-map-signal,.lw-service-map-label){animation-play-state:paused}
 .lw-motion-on .lw-service-art.lw-motion-inview :is(.lw-map-ring,.lw-map-pin,.lw-map-shadow,.lw-map-route,.lw-map-signal,.lw-service-map-label){animation-play-state:running}
 .lw-motion-paused .featured-photo img,.lw-motion-paused .lw-service-art *{animation-play-state:paused!important}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .lw-motion-on .portal .report-card:hover .card-image img{transform:scale(1.065)}
 .lw-motion-on .portal .topic-brief h2 span{display:inline-block;transition:transform .2s ease}
 .lw-motion-on .portal .topic-brief:hover h2 span{transform:translate(2px,-2px)}
}
@keyframes lw-photo-drift{from{transform:scale(1)}to{transform:scale(1.055)}}
@keyframes lw-map-pulse{0%{transform:scale(.72);opacity:.25}35%{opacity:.85}100%{transform:scale(1.25);opacity:0}}
@keyframes lw-map-pin{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes lw-map-shadow{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.78);opacity:.5}}
@keyframes lw-map-route{to{stroke-dashoffset:-72}}
@keyframes lw-map-signal{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes lw-map-label{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media(max-width:600px){
 .lw-service-banner>.lw-motion-toggle{top:auto;bottom:9px;right:10px;min-height:36px}
 .lw-service-banner .lw-service-map-caption{display:none}
}
@media(prefers-reduced-motion:reduce){
 @view-transition{navigation:none}
 ::view-transition-old(root),::view-transition-new(root){animation:none}
}
/* The explicit pause also disables pre-existing portal hover transitions. */
html.lw-motion-off .portal *,html.lw-motion-off .lw-service-banner *{animation:none!important;transition:none!important}
