@import url("/fonts/line-seed-jp/font.css");
/* Shared visual language for the viewer, content pages and administration. */
:root{--site-font:"LINE Seed JP",-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--site-ink:#17283b;--site-navy:#10243b;--site-red:#b92f38;--site-muted:#526175;--site-paper:#f6f5f1;--site-border:#dbe0e4;--navy:var(--site-navy);--ink:var(--site-ink);--red:var(--site-red);--muted:var(--site-muted)}
html{color-scheme:light}html body{font-family:var(--site-font);color:var(--site-ink);-webkit-text-size-adjust:100%;text-size-adjust:100%}button,input,select,textarea{font-family:inherit}
body .nav .brand,body .site-header .site-brand{font-family:var(--site-font);font-size:28px;font-weight:800;line-height:1.4;letter-spacing:.02em}
body .site-header{max-width:none;padding:18px max(28px,calc((100% - 1240px)/2 + 28px));border-color:var(--site-border)}body .site-header nav{margin-left:auto;justify-content:flex-end}body .site-header .site-youtube{color:var(--site-red);font-size:26px}body .site-header .site-brand span{color:var(--site-red)}
#site-content main{font-family:var(--site-font);line-height:1.9}#site-content main>h1{font-size:clamp(28px,3.4vw,38px);line-height:1.45;letter-spacing:.02em;margin:24px 0 18px;font-weight:800;text-wrap:pretty}#site-content h2{font-size:clamp(22px,2.5vw,27px);line-height:1.55;margin:32px 0 16px;letter-spacing:.01em}#site-content h3{font-size:18px;line-height:1.6}#site-content main a{color:var(--site-red);text-underline-offset:4px}#site-content main>nav{font-size:13px;color:var(--site-muted);line-height:1.8}#site-content main>p{color:var(--site-muted)}
#site-content .content-body,#site-content .guide-box,#site-content .guide-card,#site-content .map-box,#site-content .seo-card,#site-content .compare-card{border-color:var(--site-border);border-radius:8px;background:#fff}#site-content .content-body{padding:clamp(18px,3vw,32px)}#site-content .content-body>p{max-width:70ch;margin:0 0 22px}#site-content .content-body>h2{border-left:3px solid var(--site-red);padding-left:12px;margin-top:34px}#site-content .content-body>h2:first-child{margin-top:0}#site-content .guide-card,#site-content .map-box,#site-content .compare-card{padding:22px}#site-content .guide-card h3,#site-content .map-box h3,#site-content .compare-card h3{margin:0 0 12px}#site-content .guide-card p{font-size:15px;color:var(--site-muted);line-height:1.8}
body .guide-page-links a,body .item,body .detail,body .supporting-search{border-radius:8px}body .item strong{font-size:16px;line-height:1.65}body .item small{color:var(--site-muted);font-size:13px}body .site-footer,body>footer{background:var(--site-navy);color:#d4dfe7;font-family:var(--site-font);font-size:13px;line-height:1.9}body>footer a{display:inline-flex;align-items:center;min-height:44px}body .video-dialog{font-family:var(--site-font)}
@media(max-width:700px){body .nav .brand,body .site-header .site-brand{font-size:clamp(17px,5vw,23px)}body .site-header{padding:14px 18px;gap:8px 16px}body .site-header .site-youtube{font-size:clamp(17px,5vw,22px)}#site-content main>h1{font-size:28px}#site-content .guide-card,#site-content .map-box{padding:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body .vehicle .num{color:var(--site-muted)}
/* Natural Japanese line wrapping and usable narrow-screen controls. */
html body{line-break:strict;word-break:normal;overflow-wrap:break-word}
body .nav .brand,body .site-header .site-brand{white-space:nowrap}
body .hero-phrase{display:inline-block;max-width:100%}
body .hero h1{text-wrap:balance}
#site-content main>h1,#site-content h2,#site-content h3,body .section-top h2,body .detail h3{text-wrap:balance;word-break:normal;line-break:strict;overflow-wrap:break-word}
body .vehicle strong,body .guide-page-links a,body .item strong,#site-content .seo-card strong{word-break:normal;word-break:auto-phrase;line-break:strict;overflow-wrap:break-word;text-wrap:pretty}
body .vehicle-copy,body .item>div,body .guide-page-links a,#site-content .guide-grid>*{min-width:0}
body .video-dialog header{position:sticky;top:0;z-index:1;background:#fff}body .video-dialog h2{min-width:0;word-break:normal;line-break:strict;overflow-wrap:break-word}body .video-dialog button{white-space:nowrap}
@media(max-width:700px){
 body .hero-phrase{display:inline;white-space:normal;overflow-wrap:normal;text-wrap:pretty}
 body .hero h1{font-size:clamp(24px,6.2vw,40px);line-height:1.5;letter-spacing:0;text-wrap:balance;word-break:normal;line-break:strict}
 body .hero-inner{padding-top:42px;padding-bottom:42px}
 body .detail{padding:16px}body .item{padding:12px}
 #site-content main>h1{font-size:clamp(24px,6.4vw,28px);line-height:1.55}
 #site-content .content-body{padding:16px}#site-content .content-body>p{line-height:1.95}
 body .tab{max-width:100%;text-align:left;line-height:1.65}
 #site-content main>nav{overflow-wrap:anywhere}
 body .section-top{align-items:flex-start;flex-direction:column;gap:8px}
 body .section-top p{max-width:38em;line-height:1.75}
 body .cta{max-width:100%;justify-content:space-between;gap:16px;line-height:1.5;text-align:left}
 body .vehicle small,body .detail-head p,body .note{line-height:1.75;overflow-wrap:break-word;word-break:normal;line-break:strict}
 body .tabs{gap:8px}
 body .tab{white-space:normal;overflow-wrap:break-word}
}
@media(max-width:360px){body .detail{padding:12px}body .item{padding:10px}.video-dialog header{gap:10px}}

/* Existing pass mark follows the site name at the same visual height. */
body .nav .brand,body .site-header .site-brand{display:inline-flex;align-items:center;gap:.35em}body .site-header .site-brand .brand-label{color:var(--site-ink)}body .site-header .site-brand .brand-label b{color:var(--site-red)}body .brand-pass{display:block;width:1.4em;height:1.4em;flex:none}body .brand-pass img{display:block;width:100%;height:100%;object-fit:contain}

.update-entry{display:grid;grid-template-columns:110px minmax(0,1fr);gap:6px 24px;padding:20px 0;border-top:1px solid var(--site-border)}.update-entry time{font-size:14px;color:var(--site-muted);padding-top:4px}.update-entry h3{font-size:17px;margin:0;line-height:1.7}.update-entry a{color:var(--site-red);display:inline-block;min-height:44px;overflow-wrap:break-word}.update-entry p{grid-column:2;margin:0;white-space:pre-wrap;overflow-wrap:break-word;color:var(--site-muted);font-size:14px}.update-admin-row{display:block;width:100%;text-align:left;margin:8px 0;overflow-wrap:anywhere}.update-admin-row small{display:block;font-weight:400}@media(max-width:600px){.update-entry{grid-template-columns:1fr;gap:8px}.update-entry p{grid-column:1}}

body .nav .brand,body .site-header .site-brand{gap:.4em;align-items:center}body .brand-label{display:block;line-height:1.4}

/* Keep shared headers and native controls on the site typeface. */
body .site-header,body button,body input,body select,body textarea{font-family:var(--site-font)}
/* Balanced navigation: site map, language, YouTube share one control row. */
body .nav,body .site-header{gap:20px;align-items:center}
body .navlinks,body .site-header nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:10px;margin-left:auto;min-width:0;font-size:15px;line-height:1.3;font-weight:700}
body .navlinks>a,body .site-header nav>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid var(--site-border);border-radius:8px;background:#f5f7f9;color:var(--site-ink);font-size:14px;line-height:1.3;font-weight:700;text-align:center;text-decoration:none;white-space:nowrap}
body .navlinks>a:last-child,body .site-header nav>.site-youtube{background:#fff;color:var(--site-red);border-color:#e5c4c7;font-size:18px;padding-inline:16px}
body .navlinks>a:hover,body .site-header nav>a:hover{background:#edf1f5}
body .navlinks>a:last-child:hover,body .site-header nav>.site-youtube:hover{background:#fff1f2;color:#9f242d}
body .site-language{position:relative;display:block;flex:none;width:132px;min-width:0;height:44px;color:var(--site-ink);font-size:14px;font-weight:600;letter-spacing:0;line-height:1.3}
body .site-language select{display:block;width:100%;max-width:none;height:44px;min-height:44px;margin:0;padding:8px 24px 8px 10px;border:1px solid var(--site-border);border-radius:8px;background:#fff;color:var(--site-ink);font:inherit;line-height:1.3;cursor:pointer}
body .language-caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
body .navlinks>a:focus-visible,body .site-header nav>a:focus-visible,body .site-language select:focus-visible{outline:3px solid #2457a7;outline-offset:3px}
@media(max-width:1000px){body .nav,body .site-header{flex-wrap:wrap;gap:12px}body .navlinks,body .site-header nav{flex-basis:100%}}
@media(max-width:700px){
 body .nav,body .site-header{padding:14px 16px;gap:12px}
 body .navlinks,body .site-header nav{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) auto;flex-basis:100%;width:100%;max-width:none;margin-inline:0;gap:6px;justify-content:stretch;align-items:stretch}
 body .navlinks>a,body .site-header nav>a{min-width:0;min-height:44px;padding:8px;font-size:13px;white-space:normal;overflow-wrap:normal;word-break:normal;line-height:1.35}
 body .navlinks>a:last-child,body .site-header nav>.site-youtube{font-size:17px;padding-inline:10px;white-space:nowrap}
 body .site-language{width:100%;height:100%;min-width:0;font-size:13px}
 body .site-language select{height:100%;min-height:44px;padding:8px 20px 8px 8px;font-size:13px}
}
body .language-notice{max-width:1184px;margin:16px auto;padding:12px 18px;border-left:3px solid var(--site-red);background:#fff8e7;color:var(--site-ink);font-size:14px;line-height:1.7;overflow-wrap:break-word}
body .language-notice[hidden]{display:none}
@media(max-width:700px){body .language-notice{margin:12px 16px}html:has(#site-language option[value="en"]:checked) .hero-phrase,html:has(#site-language option[value="vi"]:checked) .hero-phrase{white-space:normal;overflow-wrap:normal}}

@media(max-width:700px){html:has(#site-language option[value="hi"]:checked) .hero-phrase,html:has(#site-language option[value="ko"]:checked) .hero-phrase{white-space:normal;overflow-wrap:normal}}

/* Licence information uses stacked text criteria on narrow screens. */
body .license-info{margin-top:24px;max-width:900px;line-height:1.85;overflow-wrap:break-word}
body .license-info h4{font-size:22px;line-height:1.5;margin:0 0 12px;color:var(--site-ink)}
body .license-info h5{font-size:17px;line-height:1.6;margin:28px 0 12px;border-left:3px solid var(--site-red);padding-left:10px}
body .license-info p,body .license-info li{font-size:15px;line-height:1.9;color:var(--site-ink)}
body .license-info p{margin:12px 0}body .license-info ul{padding-left:1.5em;margin:12px 0}body .license-info li+li{margin-top:8px}
body .license-info dl{margin:16px 0;border:1px solid var(--site-border);border-radius:8px;overflow:hidden}
body .license-info dl>div{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px;padding:14px 16px;background:#f8fafb}body .license-info dl>div+div{border-top:1px solid var(--site-border)}
body .license-info dt{font-weight:700}body .license-info dd{margin:0;min-width:0}
body .license-info a{color:var(--site-red);text-decoration:underline;text-underline-offset:3px;display:inline-block;min-height:44px;padding-block:7px}
body .license-info .license-checked{font-size:13px;color:var(--site-muted)}
@media(max-width:600px){body .license-info h4{font-size:20px}body .license-info dl>div{grid-template-columns:1fr;gap:4px;padding:12px}body .license-info p,body .license-info li{font-size:15px}}

body .license-primary-sources{margin:20px 0;padding:16px;background:#f1f5f8;border:1px solid var(--site-border);border-radius:8px}body .license-primary-sources h5{margin:0 0 8px}body .license-info li small{display:block;color:var(--site-muted);font-size:13px;line-height:1.7}

/* Official, unmodified YouTube images retain their built-in clear space. */
body .navlinks>.site-youtube,body .site-header nav>.site-youtube{gap:4px;padding:0 10px;min-height:44px}
body .youtube-brand{display:block;flex:none;width:119px;height:40px}body .youtube-brand img{display:block;width:100%;height:100%;object-fit:contain}
body .youtube-arrow{flex:none;font-size:18px;line-height:1;color:var(--site-red)}
@media(max-width:700px){body .youtube-brand{width:52px;height:40px}body .navlinks>.site-youtube,body .site-header nav>.site-youtube{padding-inline:6px;gap:2px}body .youtube-arrow{font-size:17px}}

.video-thumb{position:relative;min-width:0}.video-thumb img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}body .item .video-duration{position:absolute;right:6px;bottom:6px;padding:2px 6px;border-radius:4px;background:rgba(0,0,0,.85);color:#fff;font-size:12px;font-weight:700;line-height:1.4}

/* The Japanese headings and vehicle imagery lead the viewer experience. */
body #top .hero .eyebrow,body #top .kicker,body #top .vehicle .num{display:none}
body #top .hero:after{content:none}
body #top .vehicle{border-radius:12px;box-shadow:0 2px 10px rgba(16,36,59,.05)}
body #top .vehicle:hover,body #top .vehicle.active{border-color:var(--site-red);box-shadow:0 5px 18px rgba(16,36,59,.10)}
body #top .item,body #top .guide-page-links a,body #top .supporting-search{border-radius:12px}
body #top .item{background:#fff;box-shadow:0 2px 10px rgba(16,36,59,.04)}
body #top .video-thumb img{border-radius:6px}
@media(max-width:700px){body #top .vehicle-copy{padding:16px 18px}body #top .vehicle strong{line-height:1.5}}
@media(max-width:480px){body #top .vehicle-copy{padding:18px 20px}}

/* Give the closing encouragement a deliberate, readable rhythm on phones. */
body .bottom{padding:clamp(36px,7vw,72px) 24px;text-align:center}
body .bottom h2{max-width:18em;margin:10px auto 16px;font-size:clamp(26px,3.2vw,38px);line-height:1.45;letter-spacing:0;text-wrap:balance;word-break:normal;line-break:strict;overflow-wrap:break-word}
body .bottom p{max-width:42em;margin:0 auto;line-height:1.8;text-wrap:pretty}
body .bottom>a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:20px;padding:12px 20px;line-height:1.5;text-align:center}
@media(max-width:700px){
 body .bottom{padding:40px 20px}
 body .bottom h2{max-width:13em;font-size:clamp(24px,7vw,31px);line-height:1.5;margin:10px auto 14px}
 html:has(#site-language option[value="ja"]:checked) body .bottom h2{max-width:none;white-space:nowrap;font-size:clamp(14px,4.65vw,26px);letter-spacing:0}
 body .bottom p{max-width:34em;font-size:14px;line-height:1.85}
 body .bottom>a{max-width:100%;margin-top:18px;padding:12px 16px}
}
