@charset "UTF-8";
:root {
  --red:#e5252a;
  --deep-red:#b81320;
  --ink:#20201e;
  --paper:#f6f5f1;
  --muted:#696962;
  --line:#dcdcd5;
  --gutter:clamp(22px,5vw,88px);
  --travel:0px
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:100px
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Arial,"Microsoft YaHei","PingFang SC",sans-serif;
  -webkit-font-smoothing:antialiased
}
::selection {
  background:var(--red);
  color:white
}
a {
  color:inherit;
  text-decoration:none
}
button {
  font:inherit;
  cursor:pointer
}
img {
  display:block;
  max-width:100%
}
button,a {
  -webkit-tap-highlight-color:transparent
}
a:focus-visible,button:focus-visible {
  outline:3px solid var(--red);
  outline-offset:6px
}
h1,h2,h3,p,figure {
  margin:0
}
p {
  line-height:1.9
}
svg {
  display:block
}
main {
  overflow:clip
}
.skip-link {
  position:fixed;
  left:20px;
  top:-80px;
  background:white;
  padding:15px;
  z-index:100
}
.skip-link:focus {
  top:12px
}
.eyebrow {
  font-size:11px;
  letter-spacing:.16em;
  font-weight:700;
  display:flex;
  gap:12px;
  align-items:center
}
.eyebrow:before {
  content:"";
  width:7px;
  height:7px;
  background:var(--red)
}
.section-label {
  font-size:11px;
  font-weight:bold;
  letter-spacing:.13em;
  color:var(--muted)
}
.section-label span {
  color:var(--red);
  margin-right:20px
}
.site-header {
  height:88px;
  padding:0 var(--gutter);
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--line);
  position:sticky;
  top:0;
  z-index:30;
  background:rgba(246,245,241,.96);
  backdrop-filter:blur(16px)
}
.brand {
  display:flex;
  gap:12px;
  align-items:center
}
.brand img {
  width:38px;
  height:56px;
  object-fit:contain
}
.brand strong {
  font-size:19px;
  letter-spacing:-.6px
}
.brand small {
  display:block;
  font-size:9px;
  letter-spacing:.19em;
  margin-top:5px
}
.site-nav {
  display:flex;
  gap:32px;
  align-items:center
}
.site-nav a {
  font-size:12px;
  position:relative;
  padding:33px 0
}
.site-nav a:after {
  content:"";
  height:3px;
  position:absolute;
  bottom:22px;
  left:0;
  right:0;
  background:var(--red);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .25s
}
.site-nav a:hover:after,.site-nav a[aria-current]:after {
  transform:scaleX(1)
}
.header-location {
  font-size:10px;
  letter-spacing:.1em;
  color:var(--muted)
}
.header-location:before {
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--red);
  margin-right:8px
}
.menu-toggle {
  display:none
}
.scroll-progress {
  position:absolute;
  bottom:-1px;
  left:0;
  height:2px;
  width:100%;
  background:var(--red);
  transform:scaleX(0);
  transform-origin:left
}
.hero {
  position:relative;
  min-height:min(780px,calc(100svh - 88px));
  display:grid;
  grid-template-columns:1fr 1fr;
  padding:58px var(--gutter) 84px;
  isolation:isolate
}
.hero-copy {
  position:relative;
  z-index:3;
  align-self:center
}
.hero h1 {
  font-size:clamp(65px,7.7vw,118px);
  line-height:1.13;
  letter-spacing:-.065em;
  font-weight:900;
  margin:30px 0 22px
}
.hero h1 em {
  font-style:normal;
  color:var(--red)
}
.club-name {
  font-size:clamp(17px,1.8vw,24px);
  font-weight:700;
  letter-spacing:.04em;
  animation:name-in .65s 1.15s both
}
.hero-description {
  font-size:13px;
  color:var(--muted);
  margin-top:12px;
  max-width:350px
}
.actions {
  display:flex;
  align-items:center;
  gap:25px;
  flex-wrap:wrap;
  margin-top:30px
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding:18px 25px;
  background:var(--red);
  color:white;
  font-size:12px;
  font-weight:bold;
  border:1px solid var(--red);
  transition:background .2s,transform .2s
}
.button:hover {
  background:var(--deep-red);
  transform:translateY(-3px)
}
.arrow {
  font-size:20px;
  line-height:1
}
.text-link {
  font-size:12px;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  gap:26px;
  border-bottom:1px solid currentColor;
  padding:12px 0
}
.text-link:hover {
  color:var(--red)
}
.hero-art {
  position:absolute;
  right:0;
  top:0;
  width:50%;
  height:100%;
  overflow:hidden;
  z-index:-1;
  background:var(--red);
  clip-path:polygon(23% 0,100% 0,100% 100%,0 100%)
}
.hero-art:before {
  content:"";
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(118deg,transparent 0 90px,#ffffff09 90px 91px),radial-gradient(ellipse at 75% 70%,#ff573e,transparent 65%)
}
.hero-art:after {
  content:"";
  position:absolute;
  left:30%;
  top:-30%;
  width:35%;
  height:160%;
  background:#ff7a581c;
  transform:rotate(28deg);
  animation:flame-drift 7s ease-in-out infinite alternate
}
.hero-crest {
  position:absolute;
  z-index:2;
  left:31%;
  top:13%;
  width:clamp(230px,25vw,380px);
  height:70%;
  object-fit:contain;
  transform:translateY(var(--travel)) rotate(-8deg);
  filter:drop-shadow(16px 25px 0 #77091233);
  animation:crest-in 1.2s ease-out both
}
.pitch-art {
  position:absolute;
  width:90%;
  height:90%;
  left:15%;
  top:4%;
  opacity:.26;
  transform:rotate(-18deg);
  color:white
}
.art-code {
  position:absolute;
  right:32px;
  bottom:35px;
  color:white;
  font-size:10px;
  letter-spacing:.19em;
  writing-mode:vertical-rl
}
.hero-bottom {
  position:absolute;
  bottom:28px;
  left:var(--gutter);
  right:var(--gutter);
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:10px;
  letter-spacing:.12em
}
.hero-bottom a {
  display:flex;
  gap:14px;
  align-items:center
}
.hero-bottom a span {
  font-size:20px;
  animation:nudge 2s infinite
}
.hero-bottom .edition {
  color:white
}
.hero-watermark {
  position:absolute;
  bottom:62px;
  right:12px;
  color:#fff1;
  font-size:clamp(80px,12vw,180px);
  font-weight:900;
  letter-spacing:-.08em;
  z-index:1
}
.intro {
  position:fixed;
  inset:0;
  z-index:80;
  background:var(--red);
  display:grid;
  place-content:center;
  justify-items:center;
  pointer-events:none;
  animation:intro-out .55s 1s forwards;
  overflow:hidden
}
.intro:before,.intro:after {
  content:"";
  position:absolute;
  width:65vw;
  height:160vh;
  left:5%;
  top:-25%;
  background:#ff784b55;
  border-radius:50% 0;
  transform:rotate(30deg);
  animation:ignite 1.5s both
}
.intro:after {
  left:60%;
  background:#ad132b;
  animation-delay:.1s
}
.intro img {
  width:150px;
  z-index:1;
  animation:ignite-logo 1s both;
  filter:drop-shadow(0 15px 30px #6c000055)
}
.intro span {
  font-size:11px;
  color:white;
  z-index:1;
  letter-spacing:.35em;
  margin-top:25px
}
.ticker {
  overflow:hidden;
  background:var(--ink);
  color:white;
  padding:20px 0
}
.ticker-track {
  display:flex;
  width:max-content;
  gap:40px;
  animation:marquee 32s linear infinite;
  font-size:13px;
  font-weight:bold;
  letter-spacing:.19em
}
.ticker-track span {
  display:flex;
  gap:40px;
  align-items:center
}
.ticker-track i {
  font-style:normal;
  color:var(--red);
  font-size:22px
}
.section {
  padding:100px var(--gutter)
}
.section-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:44px
}
.section-head>span {
  font-size:10px;
  color:var(--muted);
  letter-spacing:.14em
}
.story-grid {
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:7vw;
  align-items:center
}
.photo-frame {
  position:relative
}
.photo-frame:before {
  content:"";
  position:absolute;
  inset:15px -15px -15px 15px;
  border:1px solid var(--red);
  z-index:-1
}
.photo-frame img {
  width:100%;
  aspect-ratio:1.2;
  object-fit:cover
}
.photo-frame figcaption {
  position:absolute;
  bottom:0;
  left:0;
  padding:15px 22px;
  background:var(--red);
  color:white;
  font-size:10px;
  letter-spacing:.12em
}
.story-copy h2 {
  font-size:clamp(32px,3.3vw,52px);
  line-height:1.35;
  letter-spacing:-.04em;
  margin-bottom:25px
}
.story-copy h2 em {
  font-style:normal;
  color:var(--red)
}
.story-copy p {
  font-size:14px;
  color:var(--muted);
  margin-bottom:20px
}
.story-copy .text-link {
  margin-top:10px
}
.location-strip {
  display:flex;
  gap:20px;
  margin-top:32px;
  padding-top:22px;
  border-top:1px solid var(--line);
  font-size:11px
}
.location-strip b {
  color:var(--red)
}
.manifesto-band {
  background:var(--red);
  color:white;
  padding:80px var(--gutter);
  position:relative;
  isolation:isolate;
  overflow:hidden
}
.manifesto-band .section-label {
  color:white
}
.manifesto-band .section-label span {
  color:white
}
.manifesto-band h2 {
  font-size:clamp(40px,6.3vw,96px);
  letter-spacing:-.055em;
  line-height:1.3;
  margin:42px 0 30px
}
.manifesto-band h2 span {
  color:transparent;
  -webkit-text-stroke:1px white
}
.manifesto-band p {
  font-size:14px;
  max-width:540px;
  color:white
}
.manifesto-band .pitch-art {
  z-index:-1;
  left:52%;
  top:-30%;
  width:60%;
  height:150%;
  opacity:.18
}
.manifesto-band .text-link:hover {
  color:white
}
.band-bottom {
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:flex-end
}
.values-preview {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:36px;
  margin-top:54px
}
.value-preview {
  border-top:1px solid var(--line);
  padding:26px 0
}
.value-preview>span {
  font-size:11px;
  color:var(--red)
}
.value-preview h3 {
  font-size:22px;
  margin:22px 0 12px
}
.value-preview p {
  font-size:13px;
  color:var(--muted)
}
.section-title {
  font-size:clamp(30px,3.5vw,52px);
  line-height:1.4;
  letter-spacing:-.035em
}
.join-banner {
  padding:65px var(--gutter);
  border-top:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  background:#eeede7
}
.join-banner h2 {
  font-size:clamp(28px,3.3vw,48px);
  margin-top:18px;
  letter-spacing:-.04em
}
.join-banner .button {
  flex-shrink:0
}
.site-footer {
  padding:48px var(--gutter) 25px;
  background:var(--paper)
}
.footer-top {
  display:flex;
  justify-content:space-between;
  gap:30px;
  padding-bottom:40px;
  align-items:center
}
.footer-wordmark {
  font-size:clamp(35px,5.8vw,80px);
  font-weight:900;
  letter-spacing:-.065em
}
.footer-wordmark span {
  color:var(--red)
}
.footer-contact {
  font-size:12px;
  line-height:2;
  text-align:right
}
.footer-contact span {
  font-size:10px;
  color:var(--muted);
  letter-spacing:.12em
}
.footer-bottom {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:15px;
  border-top:1px solid var(--line);
  padding-top:22px;
  font-size:10px;
  color:var(--muted)
}
.footer-bottom a:hover,.footer-contact a:hover {
  color:var(--red)
}
.page-hero {
  padding:65px var(--gutter) 60px;
  border-bottom:1px solid var(--line);
  position:relative;
  isolation:isolate;
  overflow:hidden
}
.page-hero h1 {
  font-size:clamp(48px,6.6vw,94px);
  letter-spacing:-.055em;
  line-height:1.2;
  margin:35px 0 25px
}
.page-hero h1 em {
  font-style:normal;
  color:var(--red)
}
.page-hero p {
  font-size:14px;
  color:var(--muted);
  max-width:590px
}
.hero-number {
  position:absolute;
  right:var(--gutter);
  top:35px;
  font-size:clamp(150px,20vw,300px);
  line-height:1;
  color:transparent;
  -webkit-text-stroke:1px #d8d7cf;
  z-index:-1;
  font-weight:900;
  font-style:italic
}
.page-hero .eyebrow {
  color:var(--muted)
}
.about-story .photo-frame img {
  aspect-ratio:1.25
}
.history-line {
  display:grid;
  grid-template-columns:.5fr 1fr 1fr;
  gap:60px;
  padding-top:60px;
  margin-top:70px;
  border-top:1px solid var(--line)
}
.history-line h2 {
  font-size:24px
}
.history-line h3 {
  font-size:18px;
  margin:15px 0
}
.history-line span {
  font-size:12px;
  color:var(--red);
  font-weight:bold;
  letter-spacing:.1em
}
.history-line p {
  font-size:13px;
  color:var(--muted)
}
.team-layout {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:8vw
}
.team-note p {
  font-size:14px;
  color:var(--muted);
  margin-top:22px;
  max-width:320px
}
.team-note img {
  width:100px;
  margin-top:35px
}
.team-row {
  padding:27px 0;
  border-top:1px solid var(--line);
  display:grid;
  grid-template-columns:50px 1fr;
  gap:12px
}
.team-row:last-child {
  border-bottom:1px solid var(--line)
}
.team-row .number {
  font-size:12px;
  color:var(--red);
  padding-top:6px
}
.team-row h3 {
  font-size:22px;
  font-weight:600
}
.team-row p {
  font-size:12px;
  color:var(--muted);
  margin-top:9px
}
.join-section {
  background:var(--red);
  color:white;
  padding:85px var(--gutter);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8vw;
  scroll-margin-top:85px
}
.join-section .eyebrow:before {
  background:white
}
.join-section h2 {
  font-size:clamp(40px,5.3vw,76px);
  line-height:1.3;
  margin:25px 0
}
.join-section p {
  font-size:14px;
  color:white;
  max-width:440px
}
.join-details {
  align-self:center
}
.join-steps {
  list-style:none;
  margin:0 0 35px;
  padding:0
}
.join-steps li {
  padding:18px 0;
  border-bottom:1px solid #ffffff40;
  font-size:14px;
  display:flex;
  gap:24px
}
.join-steps span {
  font-size:11px;
  opacity:.6
}
.join-email {
  font-size:clamp(17px,2vw,28px);
  border-bottom:1px solid #fff9;
  padding-bottom:6px;
  display:inline-block
}
.join-section .button {
  background:white;
  color:var(--red);
  border-color:white
}
.copy-button {
  background:transparent;
  color:white;
  border:0;
  border-bottom:1px solid #ffffff80;
  padding:10px 0;
  font-size:12px
}
.copy-status {
  min-height:28px;
  margin-top:15px;
  font-size:12px!important
}
.principles {
  padding-top:30px
}
.principle {
  display:grid;
  grid-template-columns:90px 1fr 1fr;
  gap:45px;
  border-bottom:1px solid var(--line);
  padding:55px 0;
  align-items:start
}
.principle>span {
  font-size:40px;
  font-weight:bold;
  color:var(--red);
  font-style:italic
}
.principle h2 {
  font-size:32px;
  letter-spacing:-.04em;
  margin-top:2px
}
.principle h2 small {
  display:block;
  font-size:10px;
  color:var(--muted);
  letter-spacing:.16em;
  margin-top:12px;
  font-weight:400
}
.principle p {
  font-size:14px;
  color:var(--muted)
}
.quote-band {
  text-align:center;
  padding:80px var(--gutter);
  background:var(--ink);
  color:white
}
.quote-band img {
  height:110px;
  margin:0 auto 30px
}
.quote-band h2 {
  font-size:clamp(28px,4vw,56px);
  letter-spacing:-.04em
}
.quote-band p {
  font-size:11px;
  letter-spacing:.17em;
  color:#b5b5b0;
  margin-top:25px
}
.will-reveal {
  opacity:0;
  transform:translateY(35px);
  transition:opacity .8s,transform .8s
}
.will-reveal.is-visible {
  opacity:1;
  transform:translateY(0)
}
@keyframes intro-out {
  to {
    transform:translateY(-105%);
    visibility:hidden
  }
}
@keyframes ignite {
  from {
    transform:translateY(45%) rotate(30deg)
  }
  to {
    transform:translateY(-35%) rotate(10deg)
  }
}
@keyframes ignite-logo {
  from {
    opacity:0;
    transform:translateY(30px) scale(.85)
  }
  to {
    opacity:1;
    transform:translateY(0) scale(1)
  }
}
@keyframes name-in {
  from {
    opacity:0;
    transform:translateY(14px)
  }
  to {
    opacity:1;
    transform:translateY(0)
  }
}
@keyframes crest-in {
  from {
    opacity:0;
    scale:.85;
    rotate:8deg
  }
  to {
    opacity:1;
    scale:1;
    rotate:0deg
  }
}
@keyframes flame-drift {
  to {
    translate:45px -40px;
    scale:1.15
  }
}
@keyframes marquee {
  to {
    transform:translateX(-50%)
  }
}
@keyframes nudge {
  50% {
    transform:translateY(5px)
  }
}
@media(min-width:1600px) {
  .hero {
    min-height:800px
  }
  .hero-crest {
    left:35%
  }
  .section,.manifesto-band,.join-section {
    padding-left:max(var(--gutter),calc((100vw - 1440px)/2));
    padding-right:max(var(--gutter),calc((100vw - 1440px)/2))
  }
}
@media(max-width:1050px) {
  .header-location {
    display:none
  }
  .site-nav {
    gap:24px
  }
  .hero {
    min-height:670px
  }
  .hero-art {
    width:48%
  }
  .hero-crest {
    left:23%;
    width:75%
  }
  .hero h1 {
    font-size:80px
  }
  .story-grid {
    gap:45px
  }
  .story-copy h2 {
    font-size:34px
  }
  .history-line {
    gap:30px
  }
  .principle {
    grid-template-columns:55px 1fr 1fr;
    gap:25px
  }
}
@media(max-width:760px) {
  .site-header {
    height:73px
  }
  .brand strong {
    font-size:16px
  }
  .brand img {
    width:31px;
    height:45px
  }
  .brand small {
    font-size:8px
  }
  .menu-toggle {
    display:flex;
    align-items:center;
    gap:12px;
    border:1px solid var(--line);
    padding:10px 12px;
    background:none;
    font-size:11px
  }
  .menu-toggle:after {
    content:"☰";
    font-size:16px
  }
  .menu-toggle[aria-expanded=true]:after {
    content:"×"
  }
  .site-nav {
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:72px;
    background:var(--paper);
    padding:15px var(--gutter) 25px;
    border-bottom:1px solid var(--line);
    box-shadow:0 20px 30px #0000000a
  }
  .site-nav.is-open {
    display:grid;
    gap:0
  }
  .site-nav a {
    padding:18px 0;
    font-size:14px
  }
  .site-nav a:after {
    bottom:8px;
    right:auto;
    width:25px
  }
  .hero {
    min-height:830px;
    display:block;
    padding-top:40px;
    padding-bottom:300px
  }
  .hero h1 {
    font-size:clamp(66px,12.5vw,95px);
    margin-top:25px;
    margin-bottom:20px
  }
  .hero-copy {
    max-width:100%
  }
  .club-name {
    font-size:18px
  }
  .hero-description {
    font-size:12px;
    max-width:290px
  }
  .hero .actions {
    margin-top:23px;
    gap:20px
  }
  .button {
    padding:16px 21px;
    gap:30px
  }
  .hero-art {
    top:auto;
    bottom:0;
    height:290px;
    width:100%;
    clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)
  }
  .hero-crest {
    height:260px;
    width:195px;
    top:4px;
    left:calc(50% - 78px)
  }
  .hero-art .pitch-art {
    width:80%;
    height:170%;
    top:-35%;
    left:15%
  }
  .hero-watermark {
    font-size:85px;
    bottom:0;
    right:0
  }
  .hero-bottom {
    bottom:21px;
    color:white
  }
  .hero-bottom .edition {
    font-size:8px
  }
  .art-code {
    right:15px;
    bottom:65px;
    font-size:8px
  }
  .ticker {
    padding:15px 0
  }
  .ticker-track {
    font-size:10px;
    gap:25px
  }
  .ticker-track span {
    gap:25px
  }
  .section {
    padding:65px var(--gutter)
  }
  .section-head {
    margin-bottom:30px
  }
  .section-head>span {
    display:none
  }
  .story-grid,.team-layout,.join-section {
    grid-template-columns:1fr;
    gap:45px
  }
  .photo-frame:before {
    inset:10px -10px -10px 10px
  }
  .photo-frame img {
    aspect-ratio:1.15
  }
  .story-copy h2 {
    font-size:34px
  }
  .story-copy p {
    font-size:13px
  }
  .manifesto-band {
    padding:60px var(--gutter)
  }
  .manifesto-band h2 {
    font-size:clamp(35px,8.5vw,60px);
    margin-top:30px
  }
  .manifesto-band .pitch-art {
    left:35%;
    width:100%
  }
  .band-bottom {
    display:block
  }
  .band-bottom .text-link {
    margin-top:20px
  }
  .values-preview {
    grid-template-columns:1fr;
    gap:4px;
    margin-top:30px
  }
  .value-preview {
    display:grid;
    grid-template-columns:30px 1fr;
    gap:10px;
    padding:25px 0
  }
  .value-preview>span {
    grid-row:span 2;
    margin-top:6px
  }
  .value-preview h3 {
    font-size:20px;
    margin:0
  }
  .value-preview p {
    grid-column:2
  }
  .join-banner {
    padding:40px var(--gutter);
    display:block
  }
  .join-banner .button {
    margin-top:28px
  }
  .site-footer {
    padding-top:35px
  }
  .footer-top {
    align-items:flex-start;
    flex-direction:column;
    gap:20px;
    padding-bottom:28px
  }
  .footer-contact {
    text-align:left
  }
  .footer-wordmark {
    font-size:52px
  }
  .footer-bottom {
    flex-direction:column;
    font-size:10px;
    gap:12px
  }
  .page-hero {
    padding:45px var(--gutter)
  }
  .page-hero h1 {
    font-size:50px;
    margin:30px 0 20px
  }
  .page-hero p {
    font-size:13px
  }
  .hero-number {
    top:20px;
    right:12px;
    opacity:.55
  }
  .history-line {
    grid-template-columns:1fr;
    gap:30px;
    margin-top:45px;
    padding-top:35px
  }
  .history-line h2 {
    font-size:22px
  }
  .history-line h3 {
    margin:10px 0
  }
  .team-note img {
    display:none
  }
  .team-note p {
    max-width:100%
  }
  .team-row h3 {
    font-size:20px
  }
  .join-section {
    padding:60px var(--gutter);
    gap:25px
  }
  .join-section h2 {
    font-size:46px
  }
  .join-email {
    font-size:20px
  }
  .join-steps li {
    font-size:13px
  }
  .principles {
    padding-top:10px
  }
  .principle {
    grid-template-columns:45px 1fr;
    gap:15px;
    padding:35px 0
  }
  .principle>span {
    font-size:30px
  }
  .principle h2 {
    font-size:27px
  }
  .principle p {
    grid-column:2;
    font-size:13px
  }
  .quote-band {
    padding:60px var(--gutter)
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }
  .intro {
    display:none
  }
  .will-reveal {
    opacity:1;
    transform:none
  }
  .hero-crest {
    transform:rotate(-8deg)
  }
}
@media print {
  .intro,.site-header,.ticker,.hero-art,.hero-bottom,.scroll-progress,.copy-button {
    display:none
  }
  .will-reveal {
    opacity:1;
    transform:none
  }
  body {
    background:white
  }
  .hero {
    min-height:0;
    display:block;
    padding:30px
  }
  .section,.page-hero {
    padding:30px
  }
  .hero h1 {
    font-size:48px
  }
  .site-footer {
    padding:30px
  }
}
