/* Yamaguchi New Look — design system (navy / red / white). Loaded only when the new look is on. */
body.ymnl{
  --nl-ink:#0D1522; --nl-ink2:#18243A; --nl-red:#C8102E; --nl-red-d:#A00C24;
  --nl-paper:#F4F5F7; --nl-card:#FFFFFF; --nl-line:#E1E4EA; --nl-muted:#5B6574; --nl-soft:#EEF0F4; --nl-ok:#1F7A4D;
  --nl-display:"Archivo","Arial Narrow",Arial,sans-serif;
  --nl-body:"IBM Plex Sans","Noto Sans JP",system-ui,-apple-system,"Segoe UI",sans-serif;
  --nl-mono:"IBM Plex Mono",ui-monospace,Consolas,monospace;
  /* theme tokens re-pointed so older blocks follow the same palette and type */
  --red:#C8102E; --red-deep:#A00C24; --black:#0D1522; --black-soft:#18243A;
  --font-display:var(--nl-display); --font-body:var(--nl-body); --font-mono:var(--nl-mono); --font-jp:"Noto Sans JP",var(--nl-body);
  font-family:var(--nl-body);color:var(--nl-ink);background:var(--nl-paper);
  padding-top:0!important;
}
body.ymnl h1,body.ymnl h2,body.ymnl h3,body.ymnl .display-m,body.ymnl .display-l{font-family:var(--nl-display);font-stretch:86%;letter-spacing:-.01em;text-wrap:balance}

/* hide the old chrome */
body.ymnl .utility-bar,body.ymnl #siteHeader,body.ymnl .site-footer,body.ymnl #ymo-home-band{display:none!important}
body.ymnl .nl-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.nl-w{max-width:1200px;margin-inline:auto;padding-inline:24px;box-sizing:border-box}
.nl-skip{position:absolute;left:-999px;top:0;z-index:100000;background:#fff;padding:10px 14px}
.nl-skip:focus{left:12px;top:12px}
.nl-ic{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}

/* buttons */
.nl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 14.5px/1 var(--nl-body);padding:13px 18px;border-radius:8px;text-decoration:none!important;border:1px solid transparent;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.nl-btn-lg{padding:16px 22px;font-size:15.5px}
.nl-btn-red{background:var(--nl-red);color:#fff!important}.nl-btn-red:hover{background:var(--nl-red-d)}
.nl-btn-ink{background:var(--nl-ink);color:#fff!important}.nl-btn-ink:hover{background:#000}
.nl-btn-ghost{border-color:rgba(255,255,255,.45);color:#fff!important;background:transparent}.nl-btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.nl-btn-wa{background:#1F7A4D;color:#fff!important}.nl-btn-wa:hover{background:#17603c}
body.ymnl a:focus-visible,body.ymnl button:focus-visible,body.ymnl summary:focus-visible,body.ymnl select:focus-visible{outline:3px solid #F2B8C2;outline-offset:2px}
.nl-link{font-weight:600;text-decoration:none!important;color:var(--nl-ink)!important;border-bottom:2px solid var(--nl-red);padding-bottom:2px;white-space:nowrap}
.nl-link:hover{color:var(--nl-red)!important}
.nl-k{font:500 11.5px/1.2 var(--nl-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--nl-red);margin:0}
.nl-k-lt{color:#FF8FA1}

/* ---------- header ---------- */
/* The theme puts overflow-x:hidden on body, which turns body into a scroll box and stops the header from sticking. clip keeps the same look without that side effect. */
body.ymnl{overflow-x:clip!important;overflow-y:visible!important}
html:has(body.ymnl){overflow-x:clip!important}
body.admin-bar .nl-hdr{top:32px}
@media (max-width:782px){body.admin-bar .nl-hdr{top:0}}
.nl-hdr{position:sticky;top:0;z-index:9990;background:#fff;border-bottom:1px solid var(--nl-line)}
.nl-hdr-in{display:flex;align-items:center;gap:24px;min-height:74px}
.nl-logo{display:flex;align-items:center;gap:10px;text-decoration:none!important;color:var(--nl-ink)!important;flex-shrink:0}
.nl-logo img{width:44px;height:auto;display:block}
.nl-logo b{display:block;font:800 18px/1 var(--nl-display);font-stretch:86%;letter-spacing:.02em}
.nl-logo small{display:block;font:500 10px/1.4 var(--nl-body);color:var(--nl-muted);letter-spacing:.08em;margin-top:3px}
.nl-nav{margin-left:auto}
.nl-nav>ul{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.nl-nav>ul>li{position:relative}
.nl-nav>ul>li>a{display:flex;align-items:center;gap:4px;padding:10px 11px;font:500 14.5px/1 var(--nl-body);color:var(--nl-ink)!important;text-decoration:none!important;border-radius:6px}
.nl-nav>ul>li>a .nl-ic{width:14px;height:14px;opacity:.6;transition:transform .15s}
.nl-nav>ul>li>a:hover,.nl-nav>ul>li:focus-within>a{background:var(--nl-soft)}
.nl-nav>ul>li>a[aria-current]{box-shadow:inset 0 -2px 0 var(--nl-red);border-radius:0}
.nl-dd{position:absolute;left:0;top:100%;min-width:250px;background:#fff;border:1px solid var(--nl-line);border-radius:10px;box-shadow:0 18px 40px -18px rgba(13,21,34,.35);padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility 0s .15s}
.nl-nav li.has-dd:hover .nl-dd,.nl-nav li.has-dd:focus-within .nl-dd,.nl-nav li.has-dd.open .nl-dd{opacity:1;visibility:visible;transform:none;transition:opacity .15s,transform .15s}
.nl-nav li.has-dd:hover>a .nl-ic{transform:rotate(180deg)}
.nl-dd ul{list-style:none;margin:0;padding:0}
.nl-dd-wide,.nl-nav li.dd-wide .nl-dd{min-width:480px}
.nl-nav li.dd-wide .nl-dd ul{display:grid;grid-template-columns:1fr 1fr;column-gap:4px}
.nl-nav li:nth-last-child(-n+2) .nl-dd{left:auto;right:0}
.nl-dd a{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:6px;font:500 14px/1.3 var(--nl-body);color:var(--nl-ink)!important;text-decoration:none!important}
.nl-dd a:hover{background:var(--nl-soft);color:var(--nl-red)!important}
.nl-dd a em{font:500 11.5px/1.3 var(--nl-mono);font-style:normal;color:var(--nl-muted)}
.nl-dd-all{display:block!important;margin-top:6px;border-top:1px solid var(--nl-line);border-radius:0 0 6px 6px!important;padding-top:11px!important;font-weight:600!important;color:var(--nl-red)!important}
.nl-hdr-cta{flex-shrink:0}
.nl-lang{font:600 13px/1 var(--nl-body);color:var(--nl-ink)!important;text-decoration:none!important;padding:9px 10px;border:1px solid var(--nl-line);border-radius:6px;flex-shrink:0}
.nl-lang:hover{border-color:var(--nl-ink)}
.nl-burger,.nl-close{display:none;width:44px;height:44px;border:1px solid var(--nl-line);border-radius:8px;background:#fff;color:var(--nl-ink);align-items:center;justify-content:center;cursor:pointer;padding:0}
.nl-nav>ul>li>a{white-space:nowrap}
@media (max-width:1260px){.nl-hdr-in{gap:16px}.nl-nav>ul>li>a{padding:10px 7px;font-size:14px}.nl-logo small{display:none}.nl-logo b{font-size:17px}}
@media (max-width:1100px){
  .nl-nav,.nl-hdr-cta,.nl-hdr .nl-lang{display:none}
  .nl-burger{display:inline-flex;margin-left:auto}
  .nl-hdr-in{min-height:64px}
}
.nl-drawer{position:fixed;inset:0;z-index:99995;background:#fff;overflow-y:auto;padding:0 20px 28px;display:flex;flex-direction:column}
.nl-drawer[hidden]{display:none!important}
.nl-drawer-top{display:flex;align-items:center;justify-content:space-between;min-height:64px;border-bottom:1px solid var(--nl-line);margin-bottom:8px}
.nl-drawer .nl-close{display:inline-flex}
.nl-drawer details{border-bottom:1px solid var(--nl-line)}
.nl-drawer summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:16px 2px;font:600 17px/1 var(--nl-body);cursor:pointer}
.nl-drawer summary::-webkit-details-marker{display:none}
.nl-drawer details[open] summary .nl-ic{transform:rotate(180deg)}
.nl-drawer ul{list-style:none;margin:0 0 12px;padding:0}
.nl-drawer ul a{display:block;padding:10px 12px;font-size:15px;color:var(--nl-ink)!important;text-decoration:none!important;border-radius:6px}
.nl-drawer ul a:hover{background:var(--nl-soft)}
.nl-drawer-link{display:block;padding:16px 2px;font:600 17px/1 var(--nl-body);border-bottom:1px solid var(--nl-line);color:var(--nl-ink)!important;text-decoration:none!important}
.nl-drawer-cta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
html.nl-lock,html.nl-lock body{overflow:hidden}

/* ---------- homepage ---------- */
.nl-main{display:block}
.nl-home h2,.nl-home h3{color:inherit;margin:0}
.nl-hero{position:relative;background:var(--nl-ink);color:#fff;overflow:hidden;isolation:isolate}
.nl-hero-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;opacity:.6;z-index:-2;max-width:none}
.nl-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,21,34,.97) 0%,rgba(13,21,34,.84) 46%,rgba(13,21,34,.3) 100%)}
.nl-hero-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:end;padding-block:72px 64px}
.nl-eyebrow{display:flex;align-items:center;gap:10px;margin:0;font:500 12px/1.4 var(--nl-mono);letter-spacing:.12em;text-transform:uppercase;color:#F4B3BF}
.nl-eyebrow:before{content:"";width:24px;height:2px;background:var(--nl-red);flex-shrink:0}
body.ymnl .nl-hero h1{font:800 clamp(38px,5.6vw,66px)/.98 var(--nl-display)!important;font-stretch:80%;margin:18px 0 20px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important;letter-spacing:-.015em;max-width:15ch}
body.ymnl .nl-hero h1 em{font-style:normal;color:#FF5A73!important;-webkit-text-fill-color:#FF5A73!important}
body.ymnl .nl-home h2,body.ymnl .nl-home h3{-webkit-text-fill-color:currentColor;background:none}
body.ymnl .nl-dark h3,body.ymnl .nl-ftr-cta h2{color:#fff!important}
body.ymnl .nl-light h3,body.ymnl .nl-sh h2,body.ymnl .nl-why h2{color:var(--nl-ink)!important}
.nl-lede{font-size:18px;line-height:1.6;color:#D6DCE6;max-width:52ch;margin:0 0 28px}
.nl-cta{display:flex;gap:10px;flex-wrap:wrap}
.nl-facts{display:flex;flex-wrap:wrap;gap:18px 32px;margin:34px 0 0}
.nl-facts div{border-left:2px solid var(--nl-red);padding-left:12px}
.nl-facts dt{font:800 30px/1 var(--nl-display);font-stretch:84%;font-variant-numeric:tabular-nums}
.nl-facts dd{margin:4px 0 0;font-size:13px;color:#B8C1CF}
.nl-finder{background:#fff;color:var(--nl-ink);border-radius:14px;padding:24px;display:grid;gap:12px;box-shadow:0 24px 50px -24px rgba(0,0,0,.7)}
.nl-finder h2{font:700 22px/1.1 var(--nl-display)!important;font-stretch:90%}
.nl-finder p{margin:-6px 0 4px;color:var(--nl-muted);font-size:13.5px}
.nl-finder label{display:grid;gap:6px;font:600 12px/1 var(--nl-body);letter-spacing:.04em;color:var(--nl-muted)}
.nl-finder select{font:500 15px var(--nl-body);padding:11px 10px;border:1px solid #CBD1DB;border-radius:8px;background:#fff;color:var(--nl-ink);width:100%}
.nl-finder .nl-btn{margin-top:4px;width:100%;padding-block:15px}

.nl-svc{background:#fff;border-bottom:1px solid var(--nl-line)}
.nl-svc ul{list-style:none;margin-block:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr))}
.nl-svc li a{display:flex;flex-direction:column;gap:6px;height:100%;padding:20px 14px;border-right:1px solid var(--nl-line);text-decoration:none!important;color:var(--nl-ink)!important;transition:background .15s}
.nl-svc li:first-child a{border-left:1px solid var(--nl-line)}
.nl-svc li a:hover{background:var(--nl-soft)}
.nl-svc .nl-ic{color:var(--nl-red);width:26px;height:26px;margin-bottom:4px}
.nl-svc b{font-size:14.5px}.nl-svc span{font-size:12.5px;color:var(--nl-muted)}

.nl-offers{background:var(--nl-ink2);color:#fff}
.nl-offers ul{list-style:none;margin-block:0;padding-block:13px;display:flex;flex-wrap:wrap;gap:8px 30px;font-size:14px}
.nl-offers li:before{content:"";display:inline-block;width:7px;height:7px;background:var(--nl-red);transform:rotate(45deg);margin-right:10px;vertical-align:1px}
.nl-offers span{color:#AEB8C8;margin-left:4px}
.nl-offers a{color:#fff!important;text-decoration:underline;text-underline-offset:3px}

.nl-sec{padding-block:76px}
.nl-alt{background:#fff;border-block:1px solid var(--nl-line)}
.nl-sh{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 28px;flex-wrap:wrap;margin-bottom:28px}
.nl-sh h2{font:800 clamp(28px,3.6vw,42px)/1.04 var(--nl-display)!important;font-stretch:84%;margin-top:10px!important}
.nl-sh p:not(.nl-k){margin:8px 0 0;color:var(--nl-muted);max-width:60ch}

.nl-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.nl-chips a{font:500 13.5px/1 var(--nl-body);padding:10px 14px;border-radius:999px;border:1px solid #CBD1DB;background:#fff;color:var(--nl-ink)!important;text-decoration:none!important}
.nl-chips a:hover{border-color:var(--nl-ink)}
.nl-chips a.on{background:var(--nl-ink);border-color:var(--nl-ink);color:#fff!important}

.nl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nl-car{background:var(--nl-card);border:1px solid var(--nl-line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,border-color .2s}
.nl-car:hover{border-color:#C9CFD9;box-shadow:0 16px 34px -22px rgba(13,21,34,.45)}
.nl-car-im{position:relative;display:block;aspect-ratio:4/3;background:#DDE1E8;overflow:hidden}
.nl-car-im img{width:100%;height:100%;object-fit:cover;display:block;max-width:100%;transition:transform .35s}
.nl-car:hover .nl-car-im img{transform:scale(1.03)}
.nl-tag,.nl-state,.nl-cnt{position:absolute;font:500 11px/1 var(--nl-mono);padding:6px 8px;border-radius:5px;letter-spacing:.05em}
.nl-tag{left:12px;top:12px;background:rgba(13,21,34,.86);color:#fff}
.nl-state{right:12px;top:12px;background:#B7791F;color:#fff}
.nl-cnt{right:12px;bottom:12px;background:rgba(255,255,255,.93);color:var(--nl-ink);font-family:var(--nl-body);font-weight:600}
.nl-car-bd{padding:16px 16px 18px;display:flex;flex-direction:column;gap:12px;flex:1}
.nl-car h3{font:600 17px/1.3 var(--nl-body)!important;letter-spacing:0;margin:0}
.nl-car h3 a{color:var(--nl-ink)!important;text-decoration:none!important}
.nl-car h3 a:hover{color:var(--nl-red)!important}
.nl-specs{display:flex;flex-wrap:wrap;gap:6px}
.nl-specs span{font:500 12.5px/1 var(--nl-body);background:var(--nl-soft);padding:6px 8px;border-radius:5px;color:#303A4B;font-variant-numeric:tabular-nums}
.nl-pr{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;gap:10px;border-top:1px solid var(--nl-line);padding-top:12px}
.nl-pr b{display:block;font:800 27px/1 var(--nl-display);font-stretch:86%;font-variant-numeric:tabular-nums}
.nl-pr b.nl-ask{font-size:19px}
.nl-pr small{display:block;font-size:11.5px;color:var(--nl-muted);margin-top:4px}
.nl-go{font:600 13.5px/1 var(--nl-body);color:var(--nl-red)!important;text-decoration:none!important;white-space:nowrap}

.nl-why{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.nl-why-ph img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:14px;display:block;max-width:100%}
.nl-why h2{font:800 clamp(28px,3.6vw,42px)/1.04 var(--nl-display)!important;font-stretch:84%;margin:10px 0 14px!important}
.nl-why p{color:var(--nl-muted);max-width:52ch}
.nl-ticks{list-style:none;margin:22px 0 26px;padding:0;display:grid;gap:12px}
.nl-ticks li{position:relative;padding-left:32px;font-size:15.5px;line-height:1.5}
.nl-ticks li:before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:var(--nl-ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.2l2.6 2.6L12 5.4' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E") center/14px no-repeat}

.nl-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.nl-types a{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--nl-line);border-radius:10px;padding:18px;text-decoration:none!important;color:var(--nl-ink)!important;transition:border-color .15s}
.nl-types a:hover{border-color:var(--nl-ink)}
.nl-types b{font:700 17px/1.2 var(--nl-display);font-stretch:92%}
.nl-types span{font-size:13px;color:var(--nl-muted);line-height:1.45}
.nl-types em{margin-top:auto;padding-top:8px;font:500 12px var(--nl-mono);font-style:normal;color:var(--nl-red)}

.nl-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--nl-line);border-radius:12px;overflow:hidden;counter-reset:nls;background:var(--nl-paper)}
.nl-steps li{padding:26px 22px;border-right:1px solid var(--nl-line);counter-increment:nls}
.nl-steps li:last-child{border-right:0}
.nl-steps li:before{content:"0" counter(nls);display:block;font:500 12.5px var(--nl-mono);color:var(--nl-red);margin-bottom:14px}
.nl-steps b{display:block;font-size:17px;margin-bottom:6px}
.nl-steps span{font-size:14px;color:var(--nl-muted);line-height:1.55}

.nl-feature{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.nl-fcard{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--nl-line);border-radius:12px;padding:24px;text-decoration:none!important;color:var(--nl-ink)!important;transition:border-color .15s,box-shadow .2s}
.nl-fcard:hover{border-color:#C9CFD9;box-shadow:0 16px 34px -24px rgba(13,21,34,.5)}
.nl-fcard .nl-ic{color:var(--nl-red);width:28px;height:28px}
.nl-fcard h3{font:700 20px/1.15 var(--nl-display)!important;font-stretch:90%}
.nl-fcard p{margin:0;font-size:14px;color:var(--nl-muted);line-height:1.55}
.nl-fcard span{margin-top:auto;padding-top:6px;font-weight:600;font-size:14px;color:var(--nl-red)}

.nl-split{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.nl-panel{border-radius:16px;padding:34px;display:flex;flex-direction:column;gap:12px;min-height:300px}
.nl-panel h3{font:800 30px/1.04 var(--nl-display)!important;font-stretch:84%}
.nl-panel p:not(.nl-k){margin:0;max-width:46ch;line-height:1.6}
.nl-panel ul{list-style:none;margin:4px 0 8px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.nl-panel li{font-size:12.5px;padding:6px 10px;border-radius:5px}
.nl-panel .nl-btn{align-self:flex-start;margin-top:auto}
.nl-dark{background:var(--nl-ink);color:#fff}
.nl-dark p:not(.nl-k){color:#C5CCD8}
.nl-dark li{background:rgba(255,255,255,.08)}
.nl-light{background:var(--nl-paper);border:1px solid var(--nl-line)}
.nl-light p:not(.nl-k){color:var(--nl-muted)}
.nl-light li{background:#fff;border:1px solid var(--nl-line)}

.nl-work{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.nl-work figure{margin:0}
.nl-work img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;display:block;max-width:100%;height:auto}
.nl-work figcaption{font-size:13px;color:var(--nl-muted);margin-top:8px}

.nl-trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.nl-trust div{border-top:2px solid var(--nl-ink);padding-top:16px;display:flex;flex-direction:column;gap:6px}
.nl-trust .nl-ic{color:var(--nl-red);margin-bottom:4px}
.nl-trust b{font-size:16px}
.nl-trust span{font-size:14px;color:var(--nl-muted);line-height:1.5}
.nl-trust code{font:500 13px var(--nl-mono);color:var(--nl-ink);background:none;padding:0}

.nl-faq-wrap{max-width:900px}
.nl-faq details{border-bottom:1px solid var(--nl-line)}
.nl-faq details:first-child{border-top:1px solid var(--nl-line)}
.nl-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:20px 2px;font:600 17px/1.35 var(--nl-body)}
.nl-faq summary::-webkit-details-marker{display:none}
.nl-faq summary:after{content:"+";font:400 26px/1 var(--nl-body);color:var(--nl-red);transition:transform .2s}
.nl-faq details[open] summary:after{transform:rotate(45deg)}
.nl-faq p{margin:0 0 20px;color:var(--nl-muted);max-width:70ch;line-height:1.65}
.nl-faq a{color:var(--nl-red)!important}

/* ---------- footer ---------- */
.nl-ftr{background:var(--nl-ink);color:#AEB8C8;font-size:14px;line-height:1.6}
.nl-ftr a{color:#D6DCE6!important;text-decoration:none!important}
.nl-ftr a:hover{color:#fff!important;text-decoration:underline!important;text-underline-offset:3px}
.nl-ftr-cta{background:var(--nl-red);color:#fff}
.nl-ftr-cta .nl-w{display:flex;align-items:center;justify-content:space-between;gap:20px 40px;flex-wrap:wrap;padding-block:36px}
.nl-ftr-cta h2{font:800 clamp(24px,3vw,34px)/1.08 var(--nl-display)!important;font-stretch:84%;color:#fff;margin:8px 0 0;max-width:24ch}
.nl-ftr-cta .nl-k-lt{color:#FFD5DC}
.nl-ftr-cta-b{display:flex;gap:10px;flex-wrap:wrap}
.nl-ftr-cta .nl-btn-red{background:#fff;color:var(--nl-ink)!important}
.nl-ftr-cta .nl-btn-red:hover{background:#F4F5F7;text-decoration:none!important}
.nl-ftr-cta .nl-btn:hover{text-decoration:none!important}
.nl-ftr-grid{display:grid;grid-template-columns:1.5fr repeat(4,minmax(0,1fr));gap:36px;padding-block:56px 40px}
.nl-ftr h3{font:600 13px/1 var(--nl-body)!important;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin:4px 0 18px}
.nl-ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.nl-ftr .nl-logo{color:#fff!important}
.nl-ftr .nl-logo:hover{text-decoration:none!important}
.nl-ftr .nl-logo small{color:#8C97A8}
.nl-ftr-brand p{margin:16px 0 0;max-width:40ch}
@media (max-width:1260px) and (min-width:641px){.nl-ftr-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nl-ftr-brand{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:40px;align-items:start}.nl-ftr-brand>.nl-logo,.nl-ftr-brand>p:first-of-type{grid-column:1}.nl-ftr-brand>address,.nl-ftr-brand>.nl-hours,.nl-ftr-brand>.nl-social{grid-column:2}.nl-ftr-brand>address{grid-row:1/span 2;margin-top:0}}
.nl-ftr address{font-style:normal;margin-top:16px;display:grid;gap:8px}
.nl-ftr address br{display:none}
.nl-ftr address .nl-ic{width:16px;height:16px;color:#FF8FA1;vertical-align:-3px;margin-right:6px}
.nl-hours{font-size:13px}
.nl-hours b{color:#fff}
.nl-social{display:flex!important;flex-wrap:wrap;gap:8px!important;margin-top:20px!important}
.nl-social a{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;transition:background .15s}
.nl-social a:hover{text-decoration:none!important}
.nl-social svg{width:19px;height:19px;fill:#fff}
.nl-linkbtn{background:none;border:0;padding:0;font:inherit;color:#D6DCE6;cursor:pointer;text-align:left}
.nl-linkbtn:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.nl-ftr-pay{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;padding-block:18px;border-top:1px solid #243149;font-size:13px}
.nl-ftr-pay ul{display:flex!important;flex-wrap:wrap;gap:6px!important}
.nl-ftr-pay li{border:1px solid #33415C;border-radius:5px;padding:4px 9px;color:#fff;font:600 12px/1.2 var(--nl-body)}
.nl-ftr-pay-note{margin-left:auto}
.nl-ftr-legal{background:#080E18;font-size:12.5px;color:#8C97A8}
.nl-ftr-legal .nl-w{padding-block:18px;display:flex;justify-content:space-between;gap:8px 24px;flex-wrap:wrap}
.nl-ftr-legal p{margin:0}
.nl-ftr-legal b{color:#D6DCE6;font-weight:600}

/* mobile contact bar from the theme, restyled */
body.ymnl .ym-mobile-bar{background:var(--nl-ink)!important;border-top:1px solid #243149!important;font-family:var(--nl-body)!important}

/* ---------- older inner-page blocks: bring them onto the same system ---------- */
body.ymnl .btn-primary,body.ymnl .yj-btn-gold,body.ymnl .button.alt,body.ymnl .woocommerce a.button.alt,body.ymnl .woocommerce button.button.alt{background:var(--nl-red)!important;border-color:var(--nl-red)!important;color:#fff!important;border-radius:8px!important}
body.ymnl .woocommerce a.button,body.ymnl .woocommerce button.button{border-radius:8px}
body.ymnl .yj-k,body.ymnl .eyebrow{font-family:var(--nl-mono)!important;letter-spacing:.12em}
body.ymnl .yj-foil,body.ymnl .yj-hero h1 i{color:#FF5A73!important;-webkit-text-fill-color:currentColor!important;background:none!important}

/* ---------- responsive ---------- */
@media (max-width:1060px){
  .nl-hero-in{grid-template-columns:1fr;gap:34px;padding-block:52px 44px}
  .nl-svc ul{grid-template-columns:repeat(4,minmax(0,1fr))}
  .nl-svc li:nth-child(-n+4) a{border-bottom:1px solid var(--nl-line)}
  .nl-svc li:nth-child(5) a{border-left:1px solid var(--nl-line)}
  .nl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nl-types,.nl-feature,.nl-work{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nl-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nl-steps li{border-bottom:1px solid var(--nl-line)}
  .nl-why{grid-template-columns:1fr;gap:32px}
  .nl-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .nl-w{padding-inline:16px}
  .nl-sec{padding-block:52px}
  .nl-hero h1{font-size:40px}
  .nl-lede{font-size:16.5px}
  .nl-cta .nl-btn{flex:1 1 100%}
  .nl-svc ul{grid-template-columns:repeat(2,minmax(0,1fr));padding-inline:0}
  .nl-svc li a{border-left:0!important;border-bottom:1px solid var(--nl-line)}
  .nl-svc li:nth-child(even) a{border-right:0}
  .nl-grid,.nl-split,.nl-steps{grid-template-columns:1fr}
  .nl-steps li{border-right:0}
  .nl-types,.nl-feature{grid-template-columns:1fr}
  .nl-panel{padding:26px}
  .nl-trust{grid-template-columns:1fr}
  .nl-ftr-grid{gap:28px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .nl-ftr-brand{grid-column:1/-1}
  .nl-ftr-pay-note{margin-left:0}
  .nl-drawer-cta{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){body.ymnl *{transition:none!important;scroll-behavior:auto!important}}

/* =====================================================================
   0.3.0 — ONE SYSTEM FOR EVERY PAGE
   The site's older layers (theme, JMA, yj- journey, tours ymt-, rental ymr-, buying ymb-) all read
   shared CSS variables. Re-pointing those variables moves every page onto the new palette, type
   and corner radius without touching a single template.
   ===================================================================== */
body.jma.ymnl{
  --ym-red-700:#A00C24; --ym-red-600:#C8102E; --ym-red-500:#D9364F;
  --ym-ink-950:#0D1522; --ym-charcoal-900:#18243A;
  --ym-gray-200:#E1E4EA; --ym-gray-300:#CBD1DB; --ym-gray-600:#5B6574; --ym-gray-700:#5B6574;
  --ym-warm-50:#F4F5F7; --ym-white:#FFFFFF; --ym-success:#1F7A4D; --ym-error:#A00C24;
  --ym-font:"IBM Plex Sans","Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  --ym-radius:8px; --radius-sm:6px; --radius-md:8px; --radius-lg:12px; --radius-pill:999px;
  --shadow-md:0 1px 2px rgba(13,21,34,.06); --shadow-lg:0 16px 34px -22px rgba(13,21,34,.45);
  background:var(--nl-paper);
}
body.ymnl .yj{
  --yj-ink:#0D1522; --yj-ink-2:#18243A; --yj-ink-3:#243149;
  --yj-paper:#FFFFFF; --yj-paper-2:#F4F5F7; --yj-card:#FFFFFF;
  --yj-text:#0D1522; --yj-muted:#5B6574; --yj-line:#E1E4EA; --yj-gold-line:#E1E4EA;
  --yj-gold:#C8102E; --yj-gold-2:#D9364F; --yj-red:#C8102E; --yj-red-2:#A00C24;
  --yj-disp:"Archivo","Noto Sans JP",Arial,sans-serif;
  --yj-sans:"IBM Plex Sans","Noto Sans JP",sans-serif; --yj-jp:"Noto Sans JP",sans-serif; --yj-mono:"IBM Plex Mono",monospace;
  --yj-shadow:0 16px 34px -22px rgba(13,21,34,.45);
}
body.ymnl .ymr-page{--ink:#0D1522;--char:#18243A;--r:#C8102E;--rh:#A00C24;--bd:#E1E4EA;--warm:#F4F5F7;--g6:#5B6574;--g7:#5B6574;--ok:#1F7A4D}
body.jma.ymnl,body.jma.ymnl .ymt-main,body.jma.ymnl [class*="ymt-"]{
  --ymt-forest:#0D1522; --ymt-forest-2:#18243A; --ymt-forest-3:#243149;
  --ymt-gold:#C8102E; --ymt-gold-dark:#A00C24; --ymt-ink:#0D1522; --ymt-muted:#5B6574; --ymt-line:#E1E4EA;
  --ymt-cream:#F4F5F7; --ymt-sand:#EEF0F4; --ymt-radius:12px;
  --ymt-font:"IBM Plex Sans","Noto Sans JP",sans-serif; --ymt-display:"Archivo","Noto Sans JP",sans-serif;
}

/* Type: one reading face, one heading face, everywhere. */
body.ymnl,body.ymnl p,body.ymnl li,body.ymnl td,body.ymnl th,body.ymnl input,body.ymnl select,body.ymnl textarea,body.ymnl button{font-family:var(--nl-body)}
body.ymnl main h1,body.ymnl main h2,body.ymnl .page-head h1,body.ymnl .display-l,body.ymnl .display-m,body.ymnl .ym-stock-title,body.ymnl .yj h1,body.ymnl .yj h2,body.ymnl .ymt-main h1,body.ymnl .ymt-main h2,body.ymnl .ymr-page h1,body.ymnl .ymr-page h2,body.ymnl .product_title{font-family:"Archivo","Noto Sans JP",Arial,sans-serif!important;font-stretch:86%;font-weight:800!important;letter-spacing:-.012em}
body.ymnl main h3,body.ymnl .yj h3,body.ymnl .ymt-main h3,body.ymnl .ymr-page h3{font-family:var(--nl-body)!important;font-weight:600;letter-spacing:0}
body.ymnl .yj i,body.ymnl .yj em{font-family:inherit!important;font-style:normal;color:var(--nl-red)}
body.ymnl main p,body.ymnl main li{line-height:1.65}
body.ymnl code,body.ymnl .mono,body.ymnl .stock-id,body.ymnl .ym-stock-id{font-family:var(--nl-mono)!important}
body.ymnl .yj-k,body.ymnl .eyebrow,body.ymnl .ymt-kicker,body.ymnl .ymt-eyebrow,body.ymnl .section-kicker{font-family:var(--nl-mono)!important;font-size:11.5px!important;letter-spacing:.14em!important;text-transform:uppercase;color:var(--nl-red)!important}
body.ymnl h1:lang(ja),body.ymnl h2:lang(ja){font-family:"Noto Sans JP",sans-serif!important;font-stretch:100%;font-weight:700!important}

/* Buttons: four variants — red (act), navy (browse), outline (secondary), green (message). */
body.ymnl :is(.btn,.yj-btn,.ymt-btn,.ymr-btn,.ymb-cta,.view-btn,.cq-btn,.qs-btn,.link-btn,.wp-block-button__link),body.ymnl.woocommerce :is(a.button,button.button){border-radius:8px!important;font-family:var(--nl-body)!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;transition:background .15s,border-color .15s,color .15s}
body.ymnl :is(.btn-primary,.btn-red,.yj-btn-gold,.ymt-btn-gold,.ymt-book-btn,.ymr-btn-primary,.ymb-cta,.button.alt,.single_add_to_cart_button,.wp-block-button__link),body.ymnl .header-cta .btn{background:var(--nl-red)!important;border-color:var(--nl-red)!important;color:#fff!important}
body.ymnl :is(.btn-primary,.btn-red,.yj-btn-gold,.ymt-btn-gold,.ymt-book-btn,.ymr-btn-primary,.ymb-cta,.button.alt,.single_add_to_cart_button):hover{background:var(--nl-red-d)!important;border-color:var(--nl-red-d)!important}
body.ymnl :is(.btn-dark,.yj-btn-dark,.ymr-btn-dark){background:var(--nl-ink)!important;border-color:var(--nl-ink)!important;color:#fff!important}
body.ymnl :is(.btn-outline,.btn-ghost,.yj-btn-line,.ymt-btn-ghost,.ymr-btn-outline){background:#fff!important;border:1px solid #CBD1DB!important;color:var(--nl-ink)!important}
body.ymnl :is(.btn-outline,.btn-ghost,.yj-btn-line,.ymt-btn-ghost,.ymr-btn-outline):hover{border-color:var(--nl-ink)!important}
body.ymnl .btn-whatsapp{background:#1F7A4D!important;border-color:#1F7A4D!important;color:#fff!important}
body.ymnl .btn-line{background:#06C755!important;border-color:#06C755!important;color:#fff!important}
body.ymnl .btn-messenger{background:#0A7CFF!important;border-color:#0A7CFF!important;color:#fff!important}
body.ymnl :is(.yj-textlink,.link-btn-red){color:var(--nl-ink)!important;border-bottom:2px solid var(--nl-red);text-decoration:none!important}

/* Cards: one surface — white, hairline border, 12px corners, shadow only on hover. */
body.ymnl :is(.car-card,.service-card,.review-card,.contact-card,.delivered-card,.market-card,.offering-card,.realbiz-card,.trust-why-card,.stat-card,.sell-option-card,.ym-sell-info-card,.ym-sell-next-card,.ym-svc-link-card,.ym-svc-note-card,.rule-card,.testimonial-card,.ymw-card,.yj-card,.yj-carcard,.yj-placecard,.yj-tile,.yj-trust-card,.ymt-card,.ymt-request-card,.ymt-anywhere-card,.ymr-card,.ymr-stock-card,.ymb-card,.process-step){background:#fff;border:1px solid var(--nl-line)!important;border-radius:12px!important;box-shadow:none!important}
body.ymnl :is(.car-card,.yj-carcard,.yj-tile,.yj-placecard,.ymt-card,.ymr-stock-card,.service-card):hover{border-color:#C9CFD9!important;box-shadow:0 16px 34px -24px rgba(13,21,34,.5)!important}
body.ymnl :is(.service-card,.process-step)::before{background:var(--nl-red)!important}
body.ymnl .ymt-book-card{border-radius:14px!important;border:1px solid var(--nl-line)!important;box-shadow:0 20px 44px -28px rgba(13,21,34,.5)!important}
body.ymnl :is(.badge-red,.ym-badge-red){background:var(--nl-red)!important;border-radius:5px!important}

/* Page headers: every inner page gets the same navy band as the homepage (the old headers were all dark with white text). */
body.ymnl .page-head :is(.crumbs,.crumbs a,.crumbs span){color:#AEB8C8!important}
body.ymnl :is(.page-head,.ym-stock-hero,.ym-sell-page-hero,.ym-purpose-hero){background:var(--nl-ink)!important;background-image:none!important;border-bottom:3px solid var(--nl-red)!important;color:#fff!important}
body.ymnl :is(.page-head,.ym-stock-hero,.ym-sell-page-hero,.ym-purpose-hero) :is(h1,h2){color:#fff!important;-webkit-text-fill-color:#fff!important}
body.ymnl :is(.page-head,.ym-stock-hero,.ym-sell-page-hero,.ym-purpose-hero) p{color:#C5CCD8!important}
body.ymnl :is(.page-head,.ym-stock-hero,.ym-sell-page-hero,.ym-purpose-hero) .eyebrow{color:#FF8FA1!important}
body.ymnl :is(.page-head,.ym-stock-hero,.ym-sell-page-hero,.ym-purpose-hero) :is(.btn-outline,.btn-ghost){background:transparent!important;border-color:rgba(255,255,255,.45)!important;color:#fff!important}
body.ymnl :is(.ym-stock-title,.page-head .display-l)::after{background:var(--nl-red)!important;height:3px!important}
body.ymnl .page-head .display-l{color:#fff!important}
body.ymnl :is(.page-head .display-l,.ym-stock-title){font-size:clamp(32px,4.6vw,52px)!important;line-height:1.04!important}
body.ymnl .yj-hero:not(.nl-hero){background:var(--nl-ink)!important}
body.ymnl .yj-hero:not(.nl-hero) :is(h1,h2){color:#fff!important;-webkit-text-fill-color:#fff!important}

/* Sections & rhythm */
body.ymnl :is(.section.alt,.section-alt,.ym-svc-alt){background:#fff}
body.ymnl :is(.breadcrumb,.ym-breadcrumb,.woocommerce-breadcrumb){font-size:13px;color:var(--nl-muted)}
body.ymnl :is(.breadcrumb,.ym-breadcrumb,.woocommerce-breadcrumb) a{color:var(--nl-muted)!important}

/* Forms */
body.ymnl main :is(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=search],select,textarea){border:1px solid #CBD1DB!important;border-radius:8px!important;font-size:15px;background-color:#fff;color:var(--nl-ink)}
body.ymnl main :is(input,select,textarea):focus{border-color:var(--nl-ink)!important;outline:3px solid #F2B8C2;outline-offset:0}

/* Tables */
body.ymnl main table{border-collapse:collapse;font-variant-numeric:tabular-nums}
body.ymnl main :is(th,td){border-color:var(--nl-line)}
body.ymnl main th{color:var(--nl-ink)}

/* Legal / text pages: one calm reading layout. */
body.ymnl :is(.ym-policy-page,.ymr-policy,.ymt-document-page){max-width:780px;margin-inline:auto;font-family:var(--nl-body)!important;color:#243149;font-size:16px;line-height:1.75}
body.ymnl :is(.ym-policy-page,.ymr-policy,.ymt-document-page) *{font-family:inherit!important}
body.ymnl :is(.ym-policy-page,.ymr-policy,.ymt-document-page) :is(h2,h3){font-family:"Archivo","Noto Sans JP",sans-serif!important;color:var(--nl-ink)!important;border:0!important;margin-top:2em}
body.ymnl .ym-policy-page [style*="CC0000"],body.ymnl .ym-policy-page [style*="cc0000"]{color:var(--nl-red)!important;border-color:var(--nl-red)!important}
body.ymnl :is(.entry-content,.ym-policy-page,.yj-prose) a:not([class]){color:var(--nl-red)!important;text-underline-offset:3px}

/* Stock listing & car pages (theme + WooCommerce) */
body.ymnl :is(.car-card .price,.car-price,.ym-price){font-family:"Archivo",Arial,sans-serif;font-stretch:88%;font-weight:800;color:var(--nl-ink);font-variant-numeric:tabular-nums}
body.ymnl .car-card h3,body.ymnl .car-card h3 a{font-family:var(--nl-body)!important;font-weight:600!important;color:var(--nl-ink)!important}
body.ymnl :is(.ym-sold-ribbon,.sold-ribbon){background:var(--nl-ink)!important}
body.ymnl .detail-block{background:#fff;border:1px solid var(--nl-line);border-radius:12px;padding:22px 24px;margin-bottom:16px}
body.ymnl .detail-block h2{font-size:22px!important;margin-top:0}
body.ymnl .woocommerce-pagination .page-numbers.current{background:var(--nl-ink)!important;color:#fff!important}

/* Leftover cookie bar from an earlier plugin never shows. */
body.ymnl #gdpr-cookie-consent-bar{display:none!important}

/* 0.3.2 — page-type fixes found in preview */
/* Plain pages: the title band sits inside the content column, so give it room and rounded corners. */
body.ymnl article > .page-head{padding:44px 40px!important;margin-top:18px;border-radius:14px}
body.ymnl article > .page-head .display-l{margin:0!important}
/* Car pages: the band only carries the breadcrumb — keep it slim. */
body.ymnl.single-product .page-head{padding-block:18px!important;min-height:0!important;border-bottom-width:2px!important}
body.ymnl.single-product .page-head *{margin-block:0!important}
/* Secondary buttons on dark bands must stay readable. */
body.ymnl :is(.yj-hero,.page-head,.ym-stock-hero,.ymr-hero,.nl-dark,[class*="ymt-"][class*="hero"]) :is(.yj-btn-line,.btn-outline,.btn-ghost,.ymt-btn-ghost,.ymr-btn-outline){background:transparent!important;border:1px solid rgba(255,255,255,.5)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
body.ymnl :is(.yj-hero,.page-head,.ym-stock-hero,.ymr-hero,.nl-dark) :is(.yj-btn-line,.btn-outline,.btn-ghost):hover{border-color:#fff!important;background:rgba(255,255,255,.08)!important}
/* Legal pages: the old "policy modal" becomes plain reading text — no box, no inner scrollbar. */
body.ymnl .ym-policy-page .policy-modal-content{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;max-width:none!important;margin:0!important}
body.ymnl .ym-policy-page .policy-modal-body{max-height:none!important;height:auto!important;overflow:visible!important;padding:0!important}
body.ymnl .ym-policy-page .nl-dup{display:none!important}
body.ymnl .page-content.entry-content{max-width:860px;margin-inline:auto}

/* 0.3.3 — legal pages were cut off on phones: the old policy box has a fixed 720px height with overflow hidden. */
body.ymnl :is(.ym-policy-page,.ymr-policy,.ymt-document-page)  [class*="policy-modal"]{height:auto!important;max-height:none!important;overflow:visible!important}
/* Phone contact bar: white labels, brand-coloured icons (was red on navy). */
body.ymnl .ym-mobile-bar a,body.ymnl .ym-mobile-bar a span{color:#fff!important}
body.ymnl .ym-mobile-bar a svg{fill:currentColor}
body.ymnl .ym-mobile-bar a:nth-child(1) :is(svg,i,.icon){color:#25D366!important;fill:#25D366!important}
body.ymnl .ym-mobile-bar a:nth-child(2) :is(svg,i,.icon){color:#06C755!important;fill:#06C755!important}
body.ymnl .ym-mobile-bar a:nth-child(3) :is(svg,i,.icon){color:#fff!important;fill:#fff!important}
body.ymnl .ym-mobile-bar a:nth-child(4) :is(svg,i,.icon){color:#4DA3FF!important;fill:#4DA3FF!important}

/* 0.3.4 — dark tour bands keep white text; the old theme mobile menu never shows (the new drawer replaces it). */
body.ymnl :is(.ymt-anywhere-band,.ymt-cta-band,.ymt-dark-band,.ymt-band-dark,.ymt-landing-hero,.ymt-request-hero) :is(h1,h2,h3,h4,strong,li,label):not([class*="card"] *):not(form *){color:#fff!important;-webkit-text-fill-color:#fff!important}
body.ymnl :is(.ymt-anywhere-band,.ymt-cta-band,.ymt-dark-band,.ymt-band-dark,.ymt-landing-hero,.ymt-request-hero) p:not([class*="card"] *):not(form *){color:#C5CCD8!important}
body.ymnl .mobile-menu,body.ymnl .mobile-menu-overlay{display:none!important}

/* 0.4.0 — bigger car finder, custom-tour button */
.nl-finder-g{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.nl-finder-g .nl-span2{grid-column:1/-1}
.nl-finder input{font:500 15px var(--nl-body);padding:11px 10px;border:1px solid #CBD1DB;border-radius:8px;background:#fff;color:var(--nl-ink);width:100%;box-sizing:border-box}
.nl-finder-note{margin:2px 0 0!important;font-size:13px;color:var(--nl-muted)}
.nl-finder-note a{color:var(--nl-red)!important;font-weight:600;text-decoration:none}
.nl-btn-outline{background:#fff;border-color:#CBD1DB;color:var(--nl-ink)!important}.nl-btn-outline:hover{border-color:var(--nl-ink)}
.nl-panel .nl-cta{margin-top:auto}
.nl-panel .nl-cta .nl-btn{margin-top:0}
@media (max-width:420px){.nl-finder-g{grid-template-columns:1fr}}

/* 0.4.1 — GetYourGuide badge */
.nl-gyg{display:inline-block;line-height:0}
.nl-gyg img{width:160px;height:auto;border:1px solid #c6c8d0;border-radius:6px;background:#fff}
.nl-gyg-ftr{margin-top:18px}
.nl-gyg-box{margin-top:16px;padding-top:14px;border-top:1px solid var(--nl-line);text-align:center}
.yj-hero .nl-gyg-box{border-top:0;text-align:left}
.nl-gyg-note{margin:6px 0 0;font-size:12px;color:var(--nl-muted)}
.yj-hero .nl-gyg-note{color:#C5CCD8}

/* 0.4.2 official GetYourGuide icon */
.nl-social a:has(.nl-soc-img){overflow:hidden;background:#fff}
.nl-soc-img{width:40px;height:40px;display:block;object-fit:cover}

/* 0.4.3 two GYG badges side by side */
.nl-gyg-row{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:18px}
.nl-gyg-row .nl-gyg-sq{order:-1}
.nl-gyg-row .nl-gyg-ftr{margin-top:0}
.nl-gyg-row .nl-gyg img{width:160px;height:auto;border:1px solid #c6c8d0;border-radius:0;background:#fff}

/* 0.4.5 social icons in brand colours */
.nl-social a[aria-label="Facebook"]{background:#1877F2}
.nl-social a[aria-label="Instagram"]{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%)}
.nl-social a[aria-label="TikTok"]{background:#000;box-shadow:inset 0 0 0 1px #333}
.nl-social a[aria-label="TikTok"] svg{filter:drop-shadow(-1.5px -1px 0 #25F4EE) drop-shadow(1.5px 1px 0 #FE2C55)}
.nl-social a[aria-label="YouTube"]{background:#FF0000}
.nl-social a[aria-label="WhatsApp"]{background:#25D366}
.nl-social a[aria-label="LINE"]{background:#06C755}
.nl-social a[aria-label="Messenger"]{background:linear-gradient(45deg,#0099FF 0%,#A033FF 60%,#FF5280 90%,#FF7061 100%)}
.nl-social a:hover{filter:brightness(1.1)}
.nl-social a[aria-label]:hover{outline:2px solid #fff;outline-offset:2px}

/* 0.5.0 buying flow — one clear action per page on phones */
@media (max-width:767px){
  body.ymnl:has(.ymt-mobile-book) .ym-mobile-bar,
  body.ymnl:has(.ymr-sticky-cta) .ym-mobile-bar{display:none!important}
  body.ymnl .ymt-mobile-book{bottom:0!important}
  body.ymnl:has(.ymt-mobile-book) .ymo-dock{bottom:90px!important}
  body.ymnl:has(.ym-car-sticky) .ymo-dock{bottom:106px!important}
  body.ymnl:has(.ymr-sticky-cta) .ymo-dock{bottom:90px!important}
}
.nl-buy-assure{list-style:none;margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--nl-line);display:grid;gap:7px;font-size:13.5px;color:var(--nl-ink)}
.nl-buy-assure li{position:relative;padding-left:24px;line-height:1.4}
.nl-buy-assure li:before{content:"";position:absolute;left:0;top:1px;width:16px;height:16px;border-radius:50%;background:var(--nl-ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.2l2.6 2.6L12 5.4' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E") center/12px no-repeat}
.nl-buy-scarce{margin:10px 0 0;font-size:12.5px;color:#8a5a00;background:#FFF6E0;border-radius:6px;padding:8px 10px}
.nl-buy-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:14px 0 0;padding:0;list-style:none;counter-reset:nbs}
.nl-buy-steps li{counter-increment:nbs;font-size:11.5px;line-height:1.3;color:var(--nl-muted);text-align:center}
.nl-buy-steps li:before{content:counter(nbs);display:block;margin:0 auto 4px;width:22px;height:22px;border-radius:50%;background:var(--nl-ink);color:#fff;font:600 12px/22px var(--nl-body)}

/* 0.5.1 car pages = buying only (owner 17 Sept 2026); renting lives in the Rental section */
body.ymnl.single-product #ymc-rental{display:none!important}

/* 0.5.2 /tours/ Signature list stacks on phones (was a squeezed 3-column grid) */
@media (max-width:760px){
  body.ymnl .yj-siglist article{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;padding-block:22px!important}
  body.ymnl .yj-siglist article > *{grid-column:1 / -1!important;grid-row:auto!important;width:auto!important;max-width:100%!important;min-width:0!important}
  body.ymnl .yj-siglist article img{width:100%!important;height:auto!important}
  body.ymnl .yj-siglist article h3{font-size:24px!important;line-height:1.15!important;word-break:normal!important;overflow-wrap:normal!important}
}
