/* Supplied Latin Web fonts: real static weights, with no synthesized weights.
   Japanese uses supplied Tazugane Gothic StdN, at real static weights.
   Event title and DOJO artwork are design proposals, not approved logotypes. */
body{font-weight:400;font-synthesis:none;font-kerning:normal}
.hero-description{font-weight:300}
.hero-title,.button,.section-intro h2,.section-heading h3{font-weight:700}
.brand{padding:8px}
.brand-logo{height:auto;object-fit:contain;transform:none;filter:none;box-shadow:none}
/* Keep the supplied transparent margins intact. They are part of the asset. */
:is(.theme-a,.theme-b) .eyebrow,
:is(.theme-a,.theme-b) .header-label{font-weight:300;letter-spacing:0}
:is(.theme-a,.theme-b) .art-word{font-weight:700;letter-spacing:0}
:is(.theme-a,.theme-b) .hero-title{font-feature-settings:normal}
/* Follow the past ENTRY.EMAIL flow: overview, then a single form column. */
:is(.theme-a,.theme-b) .page-layout{
  display:block;width:100%;max-width:1120px;padding:44px 40px 88px;margin:0 auto;
}
:is(.theme-a,.theme-b) .event-rail{
  position:static;display:flex;flex-wrap:wrap;gap:24px 36px;
  width:100%;margin:0 0 38px;padding:0;
}
:is(.theme-a,.theme-b) .rail-block{flex:1 1 calc((100% - 36px)/2);min-width:0;margin:0;padding-top:18px;padding-bottom:18px}
:is(.theme-a,.theme-b) .rail-block dl{
  display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px 15px;
}
:is(.theme-a,.theme-b) .rail-block dt,
:is(.theme-a,.theme-b) .rail-block dd{margin:0}
:is(.theme-a,.theme-b) .rail-note{flex:1 1 100%;margin:0}
:is(.theme-a,.theme-b) .application{width:100%}
.application-notices{font-size:13px;line-height:1.95;color:var(--ink)}
.application-notices ul{margin:0;padding-left:1.5em}
.application-notices li+li{margin-top:10px}
.application-notices p{margin-top:16px}
.policy-scroll-hint{font-size:12px;color:var(--muted);margin-bottom:12px}
.policy-box{max-height:260px;overflow:auto;scrollbar-width:auto;scrollbar-color:#777 transparent}
.policy-box::-webkit-scrollbar{width:10px}
.policy-box::-webkit-scrollbar-thumb{background:#777;border:2px solid var(--surface);border-radius:6px}
.policy-contact,.policy-confirm-note{font-size:13px;line-height:1.9;margin-top:22px;overflow-wrap:anywhere}
.policy-confirm-note{padding:16px 18px;border-left:3px solid #e50914;background:var(--surface)}
.eligibility-checks{padding-top:18px;margin-top:24px;border-top:1px solid var(--line)}
:is(.theme-a,.theme-b) .button-primary:hover{background:#e50914;border-color:#e50914;box-shadow:inset 0 0 0 2px #fff}
:is(.theme-a,.theme-b) :is(button,a,input,select,textarea):focus-visible{outline:2px solid currentColor;outline-offset:4px}
.theme-a .required{color:#fff;background:#242424;border-color:#e50914}
.theme-a .field-error{color:#fff;border-left:2px solid #e50914;padding-left:9px}
.theme-a .error-summary{color:#fff;background:#242424;border-color:#e50914}
.theme-a .field input:focus,.theme-a .field select:focus,.theme-a .field textarea:focus{outline-color:#fff}
@media(max-width:760px){
  :is(.theme-a,.theme-b) .page-layout{padding:30px 20px 58px}
  :is(.theme-a,.theme-b) .event-rail{display:block;gap:18px;margin-bottom:32px}
  :is(.theme-a,.theme-b) .rail-block{padding-top:12px;padding-bottom:12px}
}

/* Explicit placement also keeps non-browser review renderers aligned. */
:is(.theme-a,.theme-b) .section-number{grid-column:1;grid-row:1/3}
:is(.theme-a,.theme-b) .section-heading h3,:is(.theme-a,.theme-b) .section-heading p{grid-column:2}

/* Reviewer-only draft color. Confirmed information keeps its original color. */
body{--draft-color:#805300}
body.theme-a,.theme-b .event-strip{--draft-color:#ffe16b}
.draft-text,.draft-content,.draft-content :is(h4,p,li){color:var(--draft-color)!important}
.draft-content .mock-disclaimer{color:var(--muted)!important}
.review-legend{display:inline-block;margin-left:12px;font-weight:400}
@media(max-width:760px){.review-legend{display:block;margin-left:0;margin-top:4px}}
