*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--coal);color-scheme:dark;scroll-behavior:smooth;text-size-adjust:100%}
body{margin:0;background:var(--coal);color:var(--ivory);font-family:var(--font-sans);font-size:1rem;line-height:1.5;overflow-x:hidden}
body.menu-open{overflow:hidden}
#full-menu,#menu,#rice-plates,#story,#faq,#visit{scroll-margin-top:7rem}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{color:inherit}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:600;letter-spacing:-0.055em;line-height:.9;text-wrap:balance}
h1 em,h2 em,h3 em{color:var(--ember);font-family:var(--font-serif);font-weight:500}
p{max-width:65ch;text-wrap:pretty}
::selection{background:var(--ember);color:var(--coal)}
:focus-visible{outline:2px solid var(--ember);outline-offset:5px}
.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}
.skip-link{background:var(--ivory);color:var(--coal);left:1rem;padding:.8rem 1rem;position:fixed;top:1rem;transform:translateY(-180%);transition:transform .4s var(--ease-heavy);z-index:100}
.skip-link:focus{transform:translateY(0)}
.grain{position:fixed;inset:0;pointer-events:none;z-index:35;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.kicker{color:var(--sand);font-size:.76rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.button{align-items:center;display:inline-flex;font-size:1rem;font-weight:600;gap:1.5rem;justify-content:space-between;min-height:3.75rem;padding:.55rem .6rem .55rem 1.35rem;transition:background-color .65s var(--ease-heavy),color .65s var(--ease-heavy),transform .65s var(--ease-heavy)}
.button:hover{transform:translateY(-2px)}
.button:active{transform:scale(.985)}
.button-primary{background:var(--ember);color:var(--coal)}
.button-primary:hover{background:#ff6625}
.button-ghost{box-shadow:inset 0 0 0 1px rgba(244,238,233,.5)}
.button-ghost:hover{background:var(--ivory);color:var(--coal)}
.button-arrow{align-items:center;border-radius:50%;display:inline-flex;height:2.55rem;justify-content:center;transition:transform .65s var(--ease-heavy);width:2.55rem}
.button-primary .button-arrow{background:rgba(5,4,3,.11)}
.button-ghost .button-arrow,.action-row .button-arrow{background:rgba(244,238,233,.08)}
.button:hover .button-arrow,.action-row:hover .button-arrow{transform:translate(.16rem,-.1rem) scale(1.06)}
