*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Our components space children with flex/grid gap, but WP core still adds
   its own margin-block-start to non-typography children (is-layout-flow > *)
   since only p/h1-h4 get zeroed above; scope the reset to our own classes so
   default block spacing elsewhere on the site (post content, etc.) is untouched. */
[class*="asc-"] > *{margin-block-start:0}
body{margin:0;font-family:var(--font-jp);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-body);letter-spacing:var(--ls-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;line-break:strict;overflow-wrap:normal;hyphens:none}
h1,h2,h3,h4{font-family:var(--font-jp);color:var(--text-heading);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);margin:0}
h1{font-size:var(--fs-h1);font-weight:var(--fw-bold)}
h2{font-size:var(--fs-h2);font-weight:var(--fw-bold)}
h3{font-size:var(--fs-h3);font-weight:var(--fw-semibold)}
p{margin:0}
a{color:var(--text-link);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color var(--duration-fast) var(--ease-standard)}
a:hover{color:var(--text-link-hover)}
a[href],button,[type="button"],[type="submit"],[role="button"],summary,label[for]{cursor:pointer}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}
.asc-container{width:100%;max-width:calc(var(--content-max) + var(--gutter-desktop) * 2);margin-inline:auto;padding-inline:var(--gutter-desktop)}
@media (max-width:1024px){.asc-container{padding-inline:var(--gutter-tablet)}}
@media (max-width:767px){.asc-container{padding-inline:var(--gutter-mobile)}}
.asc-section{padding-block:var(--section-y-desktop)}
@media (max-width:767px){.asc-section{padding-block:var(--section-y-mobile)}}
.asc-lead{font-size:var(--fs-lead);line-height:var(--lh-body);color:var(--text-body)}
.asc-caption{font-size:var(--fs-caption);color:var(--text-muted);line-height:var(--lh-body)}
.asc-small{font-size:var(--fs-small);color:var(--text-muted)}
.asc-eyebrow{font-size:var(--fs-eyebrow);font-weight:var(--fw-bold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--brand-primary)}
.asc-num{font-family:var(--font-latin);font-feature-settings:"tnum" 1}
.asc-nowrap{white-space:nowrap}
