
/* JIT brand pass — old-template page on the shared sculpt shell (build_old.py). 2026-09-03 */
:root{--espresso:#341517;--black:#181818;--paper:#FDFCF8;--greige:#CFCABF;--butter:#FFDD87;--magenta:#FD7BE2;--sky:#B1E0FF;--peri:#C2D4FF;--lav:#AA91E3;--spark:#F03617;--olive:#7F7324;--royal:#285697;--mustard:#886014;
  --paper-soft:rgba(253,252,248,.8);--paper-hair:rgba(253,252,248,.25);--ink-soft:rgba(52,21,23,.72);--ink-hair:rgba(52,21,23,.22)}

:root{--theme-lavender-bg:var(--greige);--theme-lavender-bg-darker:var(--greige);--theme-lavender-bg-very-light:var(--paper);--theme-purple-text:var(--espresso);--theme-dark-purple:var(--espresso);
  --theme-text-dark:var(--espresso);--theme-text-light:var(--paper);--theme-hero-start:var(--olive);--theme-hero-end:var(--olive);--theme-accent-blue:var(--sky);--theme-accent-orange:var(--spark);
  --theme-accent-pink:var(--spark);--theme-accent-pink-darker:var(--spark);--theme-button-text:var(--paper);--theme-logo-text-color:var(--paper)}
*,*::before,*::after{border-radius:0!important;box-shadow:none!important}
:root,html,body,#page-container,main{background:var(--paper)!important;background-image:none!important;color:var(--espresso)!important;font-family:"Hanken Grotesk","General Sans",system-ui,sans-serif!important}
main h1,main h2,main h3,main h4{font-family:"Instrument Serif",Georgia,serif!important;font-weight:400!important;letter-spacing:-.02em;color:inherit}
main h2{font-size:clamp(1.9rem,3.6vw,2.8rem)!important}main h3{font-size:1.45rem!important}
main p,main li{font-weight:400!important;line-height:1.65}
main a:not([class*="btn"]):not([class*="button"]){color:inherit;text-decoration:underline;text-decoration-color:var(--spark);text-underline-offset:.15em}
.page-hero-section,.safety-hero{background:var(--olive)!important;background-image:none!important;color:var(--paper)!important;padding:clamp(4rem,8vw,7rem) 1.5rem!important;margin-bottom:0!important}
.page-hero-section *,.safety-hero *{color:var(--paper)!important}
.page-hero-section h1,.safety-hero h1{font-size:clamp(3rem,7vw,5.2rem)!important;line-height:.95!important;font-weight:400!important}
.page-hero-section h1::after,.safety-hero h1::after{content:"";display:block;width:4.5rem;height:.4rem;background:var(--spark);margin-top:1.2rem}
.page-hero-section p,.safety-hero p{max-width:48ch;font-size:1.1rem!important;opacity:.88}
main > section{padding:clamp(3.5rem,6vw,5.5rem) 1.5rem!important}
main .bg-white,main [class*='bg-white']{background:var(--paper)!important}
.jit-illo{display:block;width:5.5rem;height:5.5rem;object-fit:contain;margin:.4rem 0 1rem}
a.btn,a[class*="btn"],button,input[type="submit"]{background:var(--espresso)!important;color:var(--paper)!important;border:0!important;font-family:"IBM Plex Mono",monospace!important;font-size:.74rem!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-weight:600!important;padding:.9rem 1.4rem!important;text-decoration:none!important}
a.btn *,a[class*="btn"] *{color:var(--paper)!important}
header.sculpt-site-header,header.sculpt-site-header > div{background:var(--espresso)!important}
header.sculpt-site-header a{color:var(--paper)!important}
header.sculpt-site-header a.sculpt-header-cta,header.sculpt-site-header a.sculpt-header-cta *{color:var(--espresso)!important}
header.sculpt-site-header img{filter:invert(1) brightness(1.15)!important;height:3rem!important;width:auto!important}
header.sculpt-site-header *,.sculpt-mobile-menu *{border-radius:revert!important}
#mobile-menu,.sculpt-mobile-menu{background:var(--espresso)!important;color:var(--paper)!important}
.sculpt-site-footer::before,.sculpt-site-footer::after,.sculpt-footer__cta::before,.sculpt-footer__cta::after{display:none!important}

footer.site-footer.sculpt-site-footer{background:var(--olive)!important;color:var(--paper)!important;border-top:0!important;border-radius:0!important}
footer.sculpt-site-footer *{border-color:rgba(253,252,248,.28)!important;background-image:none!important}
.sculpt-footer__lead,.sculpt-footer__lead *,.sculpt-footer__nav a,.sculpt-footer__nav p,.sculpt-footer__bottom,.sculpt-footer__bottom *{color:var(--paper)!important}
.sculpt-footer__nav > div > *:first-child,.sculpt-footer__nav h4,.sculpt-footer__nav strong,.sculpt-footer__nav p:first-child{color:var(--paper)!important;opacity:.75}
.sculpt-footer__cta{background:var(--sky)!important;color:var(--espresso)!important;transform:none!important;border-radius:0!important}
.sculpt-footer__cta *{color:var(--espresso)!important;border-radius:0!important}
.sculpt-footer__cta-arrow{background:var(--espresso)!important;color:var(--paper)!important}.sculpt-footer__cta-arrow *{color:var(--paper)!important}
.sculpt-footer__brand img{filter:invert(1) brightness(1.15)!important;height:auto;max-height:5rem}

.safety-hero h1{color:var(--sky)!important}.safety-hero h1::after{background:var(--sky)}
.safety-intro,.safety-big-numbers{background:var(--paper)!important}
.safety-content-section--lavender{background:var(--greige)!important}.safety-content-section--white{background:var(--paper)!important}
.safety-content-section{padding:clamp(3rem,6vw,5rem) 1.5rem!important}
.safety-stat-item{background:var(--sky)!important;color:var(--espresso)!important;padding:1.4rem!important;border:0!important}
.safety-stat-number{font-family:"Instrument Serif",serif!important;font-size:2.6rem!important;color:var(--espresso)!important}
.safety-stat-label,.safety-stat-comparison{color:var(--ink-soft)!important}
.safety-chart-wrap,.safety-chart-container{position:relative;min-height:9rem;background:var(--greige)!important;border:0!important}
.safety-section-title,.safety-encounter-box-title,.safety-key-takeaways-title,.safety-tips-grid-title{font-family:"Instrument Serif",Georgia,serif!important;font-weight:400!important;font-size:1.6rem!important;line-height:1.15;margin:1.6rem 0 .6rem;background:transparent!important;border:0!important;padding:0!important}
.safety-section-number{font-family:"IBM Plex Mono",monospace!important;font-size:.68rem!important;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)!important}
.safety-content-section ul,.safety-content-section ol{padding-left:1.2rem;margin:.6rem 0 1rem}.safety-content-section li{margin:.3rem 0;background:transparent!important}
/* boxed groups: one background per box, never per line */
.safety-encounter-box,.safety-key-takeaways,.safety-tips-grid,.safety-pull-quote{background:var(--paper)!important;padding:1.4rem!important;border:0!important;margin:1.2rem 0}
.safety-content-section--white .safety-encounter-box,.safety-content-section--white .safety-key-takeaways,.safety-content-section--white .safety-tips-grid,.safety-content-section--white .safety-pull-quote{background:var(--greige)!important}
.safety-tip-card{background:transparent!important;padding:.6rem 0!important;border:0!important;border-top:1px solid var(--ink-hair)!important}
.safety-tip-card-icon{display:none!important}
.safety-encounter-box > *,.safety-key-takeaways > *,.safety-tips-grid > *{background:transparent!important}
.safety-body-text a,.safety-content-section a{color:var(--espresso)!important;text-decoration:underline!important;text-decoration-color:var(--spark)!important;font-weight:500}
main [style*="background"]{background:transparent!important}main [style*="color"]{color:inherit!important}main img{max-width:100%;height:auto}
/* page-specific bridge for cold visitors */
.jit-next{background:var(--sky);padding:clamp(3rem,6vw,5rem) 1.5rem}
.jit-next__in{max-width:72rem;margin:0 auto}
.jit-next h2{font:400 clamp(1.9rem,3.6vw,2.8rem)/1.05 "Instrument Serif",Georgia,serif;margin:0 0 .5rem;color:var(--espresso)}
.jit-next p{color:var(--ink-soft);max-width:60ch;margin:0 0 1.6rem}
.jit-next__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
@media(max-width:900px){.jit-next__grid{grid-template-columns:1fr 1fr}}
.jit-next__grid a{display:block;background:var(--paper);color:var(--espresso);padding:1.2rem;text-decoration:none!important;border-top:3px solid var(--spark)}
.jit-next__grid small{display:block;font:600 .62rem/1.4 "IBM Plex Mono",monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.5rem}
.jit-next__grid strong{display:block;font:400 1.25rem/1.15 "Instrument Serif",Georgia,serif;margin-bottom:.4rem}
.jit-next__grid span{font-size:.9rem;color:var(--ink-soft)}
.sculpt-footer__cta{display:none!important}

/* logo: the PNG is logo-black; invert on dark grounds, keep black on light grounds */
header.sculpt-site-header img,.sculpt-site-header__logo img{filter:invert(1) brightness(1.15)!important}
.sculpt-footer__brand img{filter:invert(1) brightness(1.15)!important;max-height:5rem;width:auto}
.sculpt-mobile-menu img,#mobile-menu img{filter:invert(1) brightness(1.15)!important}


/* simplified grounds (2026-09-03): sections alternate paper / greige; chart sections stay paper */
.safety-hero{background:var(--greige)!important;color:var(--espresso)!important}
.safety-hero *{color:var(--espresso)!important}
.safety-hero h1{color:var(--espresso)!important}.safety-hero h1::after{background:var(--spark)!important}
.safety-intro,.safety-big-numbers{background:var(--paper)!important}
.safety-chart-wrap,.safety-chart-container{background:var(--paper)!important;border:1px solid var(--ink-hair)!important}
.safety-stat-item{background:var(--paper)!important;border:1px solid var(--ink-hair)!important}
.safety-encounter-box,.safety-key-takeaways,.safety-tips-grid,.safety-pull-quote{background:transparent!important;border-left:3px solid var(--spark)!important;padding:.2rem 0 .2rem 1.2rem!important}
.safety-content-section--white .safety-encounter-box,.safety-content-section--white .safety-key-takeaways,.safety-content-section--white .safety-tips-grid,.safety-content-section--white .safety-pull-quote{background:transparent!important}
.jit-next{background:var(--greige)!important}
footer.site-footer.sculpt-site-footer{background:var(--greige)!important;color:var(--espresso)!important}
footer.sculpt-site-footer *{color:var(--espresso)!important;border-color:rgba(52,21,23,.25)!important}
.sculpt-footer__nav > div > *:first-child,.sculpt-footer__nav p:first-child{color:var(--espresso)!important;opacity:.75}
.sculpt-footer__brand img{filter:none!important}

.safety-hero{position:relative}
.safety-hero img,.safety-intro img,main > section:first-of-type img{display:block;width:100%;height:auto;margin:0 0 1.5rem}
.safety-hero [class*="overlay"],.safety-intro [class*="overlay"]{position:static!important;background:transparent!important;padding:0!important}
.safety-hero [class*="overlay"] *,.safety-intro [class*="overlay"] *{color:var(--espresso)!important;text-shadow:none!important}
.safety-chart-container > h3,.safety-chart-wrap > h3,.safety-content-section h3{background:transparent!important;padding:0!important;margin:1.4rem 0 .6rem!important}

/* grounds, in page order: hero greige → everything paper except the alternating content bands (Yuriko 2026-09-03) */
main > section{background:var(--paper)!important}
.safety-hero{background:var(--greige)!important}
.safety-content-section--lavender{background:var(--greige)!important}
.safety-content-section--white{background:var(--paper)!important}
.safety-content-section:has(canvas){background:var(--paper)!important}
.safety-cta-section{background:var(--paper)!important}
.jit-next{background:var(--greige)!important}
.safety-content-section--lavender .safety-chart-wrap,.safety-content-section--lavender .safety-stat-item{background:var(--paper)!important}
.safety-content-section--white .safety-chart-wrap,.safety-content-section--white .safety-stat-item{background:var(--greige)!important}

/* the intro banner used an inline dark gradient with the title on top — put the title under the photo */
.safety-intro img[alt="Is Japan safe to visit?"]{margin-bottom:1.2rem}
.safety-intro div[style*="position: relative"]{border-radius:0!important;overflow:visible!important;margin-bottom:2rem!important}
.safety-intro div[style*="position: absolute"]{position:static!important;background:none!important;display:block!important;text-align:left!important;padding:0!important}
.safety-intro div[style*="position: absolute"] *{color:var(--espresso)!important;text-shadow:none!important}
.safety-intro div[style*="position: absolute"] h2,.safety-intro div[style*="position: absolute"] h1{font-family:"Instrument Serif",Georgia,serif!important;font-weight:400!important;margin:0 0 .4rem!important}
/* charts: a plain block, no boxed bar around the caption */
.safety-chart-container{background:transparent!important;border:0!important;margin:2rem 0}
.safety-chart-container h3{background:transparent!important;border:0!important;padding:0!important;margin:0 0 .7rem!important}
.safety-chart-wrap{border:1px solid var(--ink-hair)!important;min-height:11rem}
.safety-content-section--lavender .safety-chart-wrap{background:var(--paper)!important}
.safety-content-section--white .safety-chart-wrap,.safety-intro .safety-chart-wrap{background:var(--greige)!important}


/* the booking date is the one thing to catch; the mark's red is only 3.0:1 on
   butter, so the date takes the deepest shade of it that clears 4.5 (5.0:1) */
.sculpt-announcement .announce_when{font-style:normal;color:#B4220D}

/* Charts sit on plain paper so the greige comparison bars stay visible. */
.safety-chart-wrap{width:100%}
.safety-chart-wrap--bar{height:350px;max-height:350px}
@media (max-width:768px){.safety-chart-wrap--bar{height:280px;max-height:280px}}
.safety-content-section .safety-chart-wrap,.safety-intro .safety-chart-wrap{background:var(--paper)!important}
.gpi-rank-box{background:var(--paper)!important;padding:1.4rem 1.5rem!important}
.gpi-note{font-size:.9rem!important;color:var(--ink-soft)!important;margin:0 0 1rem!important}
.gpi-list{list-style:none;margin:0;padding:0;columns:2;column-gap:3rem}
.gpi-list li{display:grid;grid-template-columns:2.6rem 1fr auto;align-items:baseline;gap:.5rem;padding:.55rem .6rem;border-bottom:1px solid var(--ink-hair);break-inside:avoid;font-size:1rem;color:var(--espresso)}
.gpi-rank{font:600 .78rem/1 "IBM Plex Mono",ui-monospace,monospace;color:var(--ink-soft)}
.gpi-score{font-variant-numeric:tabular-nums;color:var(--ink-soft)}
.gpi-list li.is-japan{background:var(--sky);font-weight:600}
.gpi-list li.is-japan .gpi-rank,.gpi-list li.is-japan .gpi-score{color:var(--espresso)}
@media (max-width:640px){.gpi-list{columns:1}}
/* Same 72rem column as the other pages (the legacy container width never made it into the rebrand). */
.safety-container,.safety-container--narrow,.safety-hero > div{width:100%;max-width:72rem!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important}
.safety-container--narrow > p,.safety-container p{max-width:48rem}
