:root{
  --c-red:#E63946;
  --c-blue:#3A86FF;
  --c-yellow:#FFD60A;
  --c-black:#0A0A0A;
  --c-white:#FFFFFF;
  --c-dark-gray:#333533;
  --c-mid-gray:#6C757D;
  --c-light-gray:#F8F9FA;
  --font-body:'Inter','Noto Sans SC','Source Han Sans SC','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;
  --font-heading:'Inter','Noto Sans SC','Source Han Sans SC','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;
  --font-mono:'Roboto Mono','SFMono-Regular','Consolas','Liberation Mono',monospace;
  --text-heading:clamp(2rem,5vw,4rem);
  --text-subheading:clamp(1.25rem,2.5vw,1.75rem);
  --text-body:1rem;
  --space-1:0.25rem;
  --space-2:0.5rem;
  --space-3:1rem;
  --space-4:1.5rem;
  --space-5:2rem;
  --space-6:3rem;
  --space-7:4rem;
  --space-8:6rem;
  --container-max:1280px;
  --header-h:80px;
  --ease-out:cubic-bezier(.4,0,.2,1);
  --speed:300ms
}
@media (max-width:768px){
  :root{
    --header-h:64px
  }
}
*,*::before,*::after{
  box-sizing:border-box;
  margin:0;
  padding:0
}
html{
  font-size:16px;
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth
}
body{
  font-family:var(--font-body);
  font-size:var(--text-body);
  line-height:1.7;
  letter-spacing:0.02em;
  color:var(--c-white);
  background:var(--c-black);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden
}
h1,h2,h3,h4{
  font-family:var(--font-heading);
  font-weight:800;
  line-height:1.2;
  margin:0
}
p{
  margin:0 0 1rem
}
a{
  color:var(--c-blue);
  text-decoration:none;
  transition:color 200ms var(--ease-out)
}
a:hover{
  color:var(--c-red)
}
ul,ol{
  list-style:none
}
img{
  max-width:100%;
  display:block
}
:focus-visible{
  outline:3px solid var(--c-yellow);
  outline-offset:2px;
  border-radius:2px
}
#main-content{
  display:block;
  min-height:60vh;
  padding-top:var(--header-h)
}
.skip-link{
  position:absolute;
  top:-48px;
  left:1rem;
  z-index:400;
  background:var(--c-white);
  color:var(--c-black);
  padding:0.5rem 1rem;
  font-weight:700;
  border-radius:0 0 4px 4px;
  transition:top 200ms var(--ease-out)
}
.skip-link:focus{
  top:0
}
.site-container{
  max-width:var(--container-max);
  margin:0 auto;
  padding-left:var(--space-5);
  padding-right:var(--space-5)
}
.section-pad{
  padding:var(--space-7) 0
}
.hero-split{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);
  gap:var(--space-6);
  align-items:center;
  padding:var(--space-7) 0
}
@media (max-width:768px){
  .hero-split{
    grid-template-columns:1fr;
    gap:var(--space-5);
    padding:var(--space-5) 0
  }
}
.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:250;
  background:var(--c-black);
  border-bottom:1px solid rgba(255,255,255,0.08)
}
.site-header::before{
  content:'';
  position:absolute;
  left:0;
  top:0;
  width:4px;
  height:100%;
  background:var(--c-red);
  pointer-events:none
}
.header-progress{
  position:absolute;
  top:0;
  left:0;
  height:3px;
  width:0%;
  background:linear-gradient(90deg,var(--c-red) 0%,var(--c-yellow) 60%,var(--c-blue) 100%);
  z-index:20;
  pointer-events:none;
  transition:width 100ms linear
}
.header-frame{
  display:flex;
  align-items:center;
  justify-content:space-between;
  max-width:var(--container-max);
  height:var(--header-h);
  margin:0 auto;
  padding:0 var(--space-5)
}
.header-brand{
  display:inline-flex;
  align-items:center;
  gap:0.75rem;
  text-decoration:none;
  color:var(--c-white);
  min-width:0
}
.brand-mark{
  display:inline-flex;
  flex-direction:column;
  gap:4px;
  width:31px;
  flex-shrink:0
}
.brand-mark-bar{
  display:block;
  height:3px;
  background:var(--c-red);
  border-radius:1px;
  transform:skewX(-24deg);
  transform-origin:left center
}
.brand-mark-bar:nth-child(1){
  width:100%
}
.brand-mark-bar:nth-child(2){
  width:72%
}
.brand-mark-bar:nth-child(3){
  width:44%
}
.brand-name{
  font-family:var(--font-heading);
  font-size:1.125rem;
  font-weight:800;
  letter-spacing:0.02em;
  transform:skewX(-2deg);
  white-space:nowrap;
  line-height:1.2;
  color:var(--c-white)
}
.brand-tagline{
  font-size:0.75rem;
  font-weight:400;
  color:var(--c-mid-gray);
  letter-spacing:0.06em;
  margin-left:0.25rem;
  padding-left:0.75rem;
  border-left:1px solid rgba(255,255,255,0.15);
  white-space:nowrap
}
.nav-toggle{
  display:inline-flex;
  align-items:center;
  gap:0.625rem;
  background:none;
  border:none;
  cursor:pointer;
  color:var(--c-white);
  font-family:var(--font-body);
  font-size:0.875rem;
  font-weight:600;
  padding:0.25rem
}
.nav-toggle-icon{
  position:relative;
  width:46px;
  height:46px;
  border-radius:50%;
  background:var(--c-red);
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  box-shadow:0 0 0 4px rgba(230,57,70,0.18);
  transition:transform 300ms var(--ease-out),box-shadow 300ms var(--ease-out),background-color 300ms var(--ease-out)
}
.nav-toggle:hover .nav-toggle-icon{
  transform:rotate(8deg) scale(1.05);
  box-shadow:0 0 0 6px rgba(230,57,70,0.3)
}
.nav-burger-line{
  display:block;
  width:18px;
  height:2px;
  background:var(--c-white);
  border-radius:1px;
  transition:width 200ms var(--ease-out),opacity 200ms,transform 200ms var(--ease-out),background-color 200ms
}
.nav-toggle:hover .nav-burger-line:nth-child(2){
  width:12px
}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon{
  background:var(--c-blue);
  box-shadow:0 0 0 6px rgba(58,134,255,0.25)
}
.nav-toggle[aria-expanded="true"] .nav-burger-line:nth-child(1){
  transform:translateY(7px) rotate(45deg);
  background:var(--c-white)
}
.nav-toggle[aria-expanded="true"] .nav-burger-line:nth-child(2){
  opacity:0;
  width:0
}
.nav-toggle[aria-expanded="true"] .nav-burger-line:nth-child(3){
  transform:translateY(-7px) rotate(-45deg);
  background:var(--c-white)
}
.nav-toggle-text{
  transition:color 200ms
}
.nav-toggle:hover .nav-toggle-text{
  color:var(--c-red)
}
.nav-layer{
  position:fixed;
  inset:0;
  z-index:290;
  background:rgba(10,10,10,0.7);
  backdrop-filter:blur(3px);
  opacity:0;
  visibility:hidden;
  transition:opacity 300ms var(--ease-out),visibility 0s 300ms;
  cursor:pointer
}
.nav-layer[data-open]{
  opacity:1;
  visibility:visible;
  transition:opacity 300ms var(--ease-out),visibility 0s
}
.site-nav{
  position:fixed;
  top:0;
  right:0;
  z-index:300;
  width:min(420px,100vw);
  height:100dvh;
  background:var(--c-black);
  border-left:2px solid var(--c-red);
  transform:translateX(100%);
  visibility:hidden;
  overflow-y:auto;
  transition:transform 400ms var(--ease-out),visibility 0s 400ms
}
.site-nav[data-open]{
  transform:translateX(0);
  visibility:visible;
  transition:transform 400ms var(--ease-out),visibility 0s
}
.nav-panel{
  display:flex;
  flex-direction:column;
  min-height:100dvh;
  padding:var(--space-5);
  position:relative
}
.nav-panel::after{
  content:'HT';
  position:absolute;
  right:-0.5rem;
  bottom:5rem;
  font-family:var(--font-heading);
  font-weight:800;
  font-size:7rem;
  letter-spacing:-0.04em;
  color:rgba(255,255,255,0.025);
  transform:rotate(-90deg);
  pointer-events:none;
  line-height:1
}
.nav-panel-top{
  display:flex;
  align-items:center;
  gap:0.875rem;
  margin-bottom:var(--space-6);
  padding-bottom:var(--space-3);
  border-bottom:1px solid rgba(255,255,255,0.08)
}
.nav-panel-kicker{
  font-family:var(--font-mono);
  font-size:0.6875rem;
  letter-spacing:0.25em;
  text-transform:uppercase;
  color:var(--c-red);
  font-weight:700
}
.nav-panel-title{
  font-size:1.125rem;
  font-weight:800;
  color:var(--c-white)
}
.nav-close{
  margin-left:auto;
  width:36px;
  height:36px;
  background:var(--c-dark-gray);
  border:none;
  border-radius:50%;
  color:var(--c-white);
  font-size:1.25rem;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background-color 200ms,transform 200ms var(--ease-out)
}
.nav-close:hover{
  background:var(--c-red);
  transform:rotate(90deg)
}
.nav-list{
  display:flex;
  flex-direction:column;
  gap:0.375rem
}
.nav-link{
  display:flex;
  align-items:center;
  gap:1rem;
  padding:0.875rem 0;
  text-decoration:none;
  color:var(--c-white);
  border-bottom:1px solid rgba(255,255,255,0.07);
  position:relative;
  overflow:hidden;
  transition:color 200ms
}
.nav-link::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-1px;
  width:100%;
  height:2px;
  background:var(--c-red);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform 300ms var(--ease-out)
}
.nav-link:hover::after,
.nav-link[aria-current="page"]::after{
  transform:scaleX(1)
}
.nav-link-index{
  font-family:var(--font-mono);
  font-size:0.75rem;
  color:var(--c-mid-gray);
  min-width:1.75rem;
  transform:skewX(-6deg)
}
.nav-link-label{
  font-size:1.125rem;
  font-weight:700;
  transform:skewX(-2deg);
  transition:color 200ms
}
.nav-link:hover .nav-link-label,
.nav-link[aria-current="page"] .nav-link-label{
  color:var(--c-red)
}
.nav-link-line{
  margin-left:auto;
  width:0;
  height:2px;
  background:var(--c-red);
  transition:width 300ms var(--ease-out);
  flex-shrink:0
}
.nav-link:hover .nav-link-line,
.nav-link[aria-current="page"] .nav-link-line{
  width:2rem
}
.nav-panel-bottom{
  margin-top:auto;
  padding-top:var(--space-5);
  position:relative;
  z-index:1
}
.nav-panel-bottom::before{
  content:'';
  display:block;
  height:2px;
  width:100%;
  background:linear-gradient(90deg,var(--c-red),transparent);
  transform:skewX(-20deg);
  margin-bottom:0.75rem
}
.nav-panel-note{
  font-family:var(--font-mono);
  font-size:0.75rem;
  color:var(--c-mid-gray);
  letter-spacing:0.04em
}
body.nav-lock{
  overflow:hidden
}
.site-footer{
  background:var(--c-black);
  color:var(--c-white);
  position:relative;
  border-top:1px solid rgba(255,255,255,0.08)
}
.site-footer::before{
  content:'';
  position:absolute;
  top:-2px;
  left:0;
  width:100%;
  height:2px;
  background:linear-gradient(90deg,var(--c-red),var(--c-blue),transparent);
  opacity:0.85;
  pointer-events:none
}
.footer-frame{
  max-width:var(--container-max);
  margin:0 auto;
  padding:var(--space-6) var(--space-5) var(--space-4)
}
.footer-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1.5fr;
  gap:var(--space-6)
}
.footer-logo{
  display:inline-flex;
  align-items:center;
  gap:0.75rem;
  text-decoration:none;
  color:var(--c-white);
  margin-bottom:var(--space-4)
}
.footer-logo .brand-name{
  font-size:1.375rem
}
.footer-about{
  font-size:0.9375rem;
  color:var(--c-white);
  max-width:42ch;
  margin-bottom:var(--space-3)
}
.footer-trust{
  font-size:0.8125rem;
  color:var(--c-mid-gray);
  border-left:2px solid var(--c-yellow);
  padding-left:0.875rem;
  margin-top:0.875rem;
  max-width:56ch
}
.footer-col{
  min-width:0
}
.footer-heading{
  font-family:var(--font-mono);
  font-size:0.75rem;
  font-weight:700;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--c-mid-gray);
  margin-bottom:var(--space-4);
  display:flex;
  align-items:center;
  gap:0.5rem
}
.footer-heading::before{
  content:'';
  width:1.5rem;
  height:2px;
  background:var(--c-red);
  flex-shrink:0
}
.footer-links{
  display:flex;
  flex-direction:column;
  gap:0.625rem
}
.footer-links a{
  color:var(--c-white);
  font-size:0.9375rem;
  text-decoration:none;
  display:inline-block;
  transition:color 200ms,padding-left 200ms var(--ease-out),transform 200ms var(--ease-out)
}
.footer-links a:hover{
  color:var(--c-red);
  padding-left:0.25rem;
  transform:skewX(-2deg)
}
.footer-contact{
  display:flex;
  flex-direction:column;
  gap:0.875rem
}
.footer-contact-item{
  display:grid;
  grid-template-columns:2.5rem 1fr;
  gap:0.75rem;
  font-size:0.9375rem
}
.footer-contact-label{
  font-family:var(--font-mono);
  font-size:0.6875rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--c-mid-gray);
  padding-top:0.25rem
}
.footer-contact-value{
  color:var(--c-white);
  word-break:break-all
}
.footer-bottom{
  margin-top:var(--space-6);
  padding-top:var(--space-4);
  border-top:1px solid rgba(255,255,255,0.08);
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:0.75rem 1.5rem;
  font-size:0.8125rem;
  color:var(--c-mid-gray)
}
.footer-copy{
  margin:0
}
.footer-icp{
  margin:0;
  font-family:var(--font-mono);
  letter-spacing:0.04em
}
.btn{
  display:inline-block;
  padding:0.75rem 1.5rem;
  font-family:var(--font-body);
  font-size:0.9375rem;
  font-weight:700;
  line-height:1.2;
  text-decoration:none;
  border:2px solid transparent;
  cursor:pointer;
  transform:skewX(-3deg);
  transition:transform 250ms var(--ease-out),box-shadow 250ms var(--ease-out),background-color 250ms,color 250ms,border-color 250ms
}
.btn:hover{
  transform:skewX(-3deg) translateY(-2px)
}
.btn:active{
  transform:skewX(-3deg) translateY(0) scale(0.98)
}
.btn-primary{
  background:var(--c-red);
  color:var(--c-white);
  box-shadow:4px 4px 0 rgba(230,57,70,0.25)
}
.btn-primary:hover{
  background:#d92635;
  color:var(--c-white);
  box-shadow:6px 6px 0 rgba(230,57,70,0.35)
}
.btn-secondary{
  background:transparent;
  border-color:var(--c-blue);
  color:var(--c-blue)
}
.btn-secondary:hover{
  background:var(--c-blue);
  color:var(--c-white)
}
.btn-ghost{
  background:transparent;
  border-color:rgba(255,255,255,0.3);
  color:var(--c-white)
}
.btn-ghost:hover{
  border-color:var(--c-white);
  color:var(--c-white);
  box-shadow:4px 4px 0 rgba(255,255,255,0.12)
}
.section-head{
  display:flex;
  flex-direction:column;
  gap:0.625rem;
  margin-bottom:var(--space-5)
}
.section-kicker{
  font-family:var(--font-mono);
  font-size:0.75rem;
  letter-spacing:0.2em;
  text-transform:uppercase;
  color:var(--c-red);
  display:inline-flex;
  align-items:center;
  gap:0.5rem;
  font-weight:700
}
.section-kicker::before{
  content:'';
  width:2rem;
  height:2px;
  background:var(--c-red);
  display:block
}
.section-title{
  font-size:var(--text-subheading);
  font-weight:800;
  line-height:1.15;
  transform:skewX(-2deg)
}
.exhibit-label{
  display:inline-flex;
  align-items:center;
  gap:0.625rem;
  font-family:var(--font-mono);
  font-size:0.75rem;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--c-red);
  font-weight:700
}
.exhibit-label::before{
  content:'';
  width:2.5rem;
  height:1px;
  background:currentColor
}
.exhibit-label::after{
  content:'';
  width:0.375rem;
  height:0.375rem;
  transform:rotate(45deg);
  background:currentColor;
  border-radius:1px
}
.card{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-left:3px solid var(--c-red);
  padding:var(--space-5);
  position:relative;
  transition:transform 300ms var(--ease-out),border-color 300ms,box-shadow 300ms,background-color 300ms
}
.card:hover{
  transform:translateY(-4px) skewX(-1deg);
  border-color:rgba(255,255,255,0.14);
  box-shadow:8px 8px 0 rgba(230,57,70,0.1);
  background:rgba(255,255,255,0.05)
}
.card-blue{
  border-left-color:var(--c-blue)
}
.card-blue:hover{
  box-shadow:8px 8px 0 rgba(58,134,255,0.12)
}
.card-title{
  font-size:1.125rem;
  font-weight:800;
  transform:skewX(-2deg);
  margin-bottom:0.625rem
}
.card-text{
  font-size:0.9375rem;
  line-height:1.65;
  color:rgba(255,255,255,0.75);
  margin-bottom:0
}
.card-meta{
  font-family:var(--font-mono);
  font-size:0.75rem;
  color:var(--c-mid-gray);
  margin-top:var(--space-3)
}
.filter-bar{
  display:flex;
  flex-wrap:wrap;
  gap:0.75rem;
  margin-bottom:var(--space-5)
}
.filter-btn{
  padding:0.5rem 1.125rem;
  font-family:var(--font-body);
  font-size:0.875rem;
  font-weight:600;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.12);
  color:var(--c-mid-gray);
  cursor:pointer;
  transition:all 250ms var(--ease-out);
  transform:skewX(-3deg);
  line-height:1.2
}
.filter-btn:hover{
  color:var(--c-white);
  border-color:var(--c-mid-gray);
  transform:skewX(-3deg) translateY(-1px)
}
.filter-btn[data-active]{
  background:var(--c-red);
  border-color:var(--c-red);
  color:var(--c-white);
  box-shadow:3px 3px 0 rgba(230,57,70,0.25)
}
.filter-btn[data-active]::before{
  content:'\25B8 ';
  font-family:var(--font-mono)
}
[data-filter-item].is-hidden{
  display:none
}
.score-badge{
  font-family:var(--font-mono);
  font-size:1.125rem;
  font-weight:700;
  color:var(--c-white);
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  padding:0.25rem 0.75rem;
  border-radius:2px;
  display:inline-block;
  line-height:1.4
}
.timeline{
  position:relative;
  list-style:none
}
.timeline::before{
  content:'';
  position:absolute;
  left:0.25rem;
  top:0.5rem;
  bottom:0;
  width:2px;
  background:linear-gradient(180deg,var(--c-red),var(--c-blue),transparent)
}
.timeline-item{
  position:relative;
  padding-left:2rem;
  padding-bottom:var(--space-5)
}
.timeline-item:last-child{
  padding-bottom:0
}
.timeline-item::before{
  content:'';
  position:absolute;
  left:0.0625rem;
  top:0.4375rem;
  width:0.5rem;
  height:0.5rem;
  background:var(--c-red);
  transform:rotate(45deg);
  border-radius:1px;
  box-shadow:0 0 0 3px rgba(230,57,70,0.2)
}
.timeline-item-title{
  font-size:1.125rem;
  font-weight:800;
  margin-bottom:0.375rem;
  transform:skewX(-2deg)
}
.timeline-item-text{
  color:rgba(255,255,255,0.7);
  font-size:0.9375rem;
  line-height:1.65
}
.timeline-item-time{
  font-family:var(--font-mono);
  font-size:0.75rem;
  color:var(--c-yellow);
  letter-spacing:0.08em;
  display:block;
  margin-bottom:0.375rem
}
.schedule-table-wrapper{
  overflow-x:auto;
  border:1px solid rgba(255,255,255,0.08)
}
.schedule-table{
  width:100%;
  border-collapse:collapse;
  font-size:0.9375rem;
  color:var(--c-white);
  background:rgba(255,255,255,0.02)
}
.schedule-table caption{
  text-align:left;
  padding:0.875rem 1rem;
  font-weight:800;
  transform:skewX(-2deg);
  border-bottom:1px solid rgba(255,255,255,0.08)
}
.schedule-table th{
  font-family:var(--font-mono);
  font-size:0.75rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--c-mid-gray);
  text-align:left;
  padding:0.75rem 1rem;
  border-bottom:2px solid rgba(255,255,255,0.15);
  white-space:nowrap
}
.schedule-table td{
  padding:0.875rem 1rem;
  border-bottom:1px solid rgba(255,255,255,0.06);
  white-space:nowrap;
  vertical-align:middle
}
.schedule-table tbody tr{
  transition:background-color 200ms
}
.schedule-table tbody tr:hover{
  background:rgba(58,134,255,0.08)
}
.image-frame{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(255,255,255,0.08),rgba(255,255,255,0.02));
  aspect-ratio:4/3;
  border:1px solid rgba(255,255,255,0.1)
}
.image-frame::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(230,57,70,0.15),transparent 60%);
  pointer-events:none;
  z-index:1
}
.image-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:contrast(1.05)
}
.breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0.5rem;
  list-style:none;
  margin:0 0 var(--space-5);
  padding:0;
  font-size:0.8125rem
}
.breadcrumb li{
  display:flex;
  align-items:center;
  gap:0.5rem
}
.breadcrumb li+li::before{
  content:'\25B8';
  color:var(--c-mid-gray);
  font-size:0.75rem
}
.breadcrumb a{
  color:var(--c-mid-gray);
  text-decoration:none;
  transition:color 200ms
}
.breadcrumb a:hover{
  color:var(--c-blue)
}
.breadcrumb [aria-current="page"]{
  color:var(--c-white);
  font-weight:600
}
.tag{
  display:inline-block;
  padding:0.25rem 0.625rem;
  font-family:var(--font-mono);
  font-size:0.75rem;
  letter-spacing:0.05em;
  background:rgba(255,255,255,0.08);
  color:var(--c-white);
  border-radius:2px;
  line-height:1.3
}
.tag-red{
  background:rgba(230,57,70,0.15);
  color:#ff6b75;
  border:1px solid rgba(230,57,70,0.3)
}
.tag-blue{
  background:rgba(58,134,255,0.15);
  color:#79aaff;
  border:1px solid rgba(58,134,255,0.3)
}
.speed-lines{
  display:flex;
  gap:4px;
  overflow:hidden;
  pointer-events:none
}
.speed-lines span{
  display:block;
  height:2px;
  background:linear-gradient(90deg,var(--c-red),transparent);
  transform:skewX(-30deg)
}
.speed-lines span:nth-child(1){
  width:60px
}
.speed-lines span:nth-child(2){
  width:40px;
  opacity:0.7
}
.speed-lines span:nth-child(3){
  width:24px;
  opacity:0.4
}
@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important;
    scroll-behavior:auto !important
  }
  .header-progress{
    transition:none
  }
  .site-nav,
  .nav-layer{
    transition:none
  }
}
@media (max-width:1024px){
  .footer-grid{
    grid-template-columns:1fr 1fr
  }
  .footer-brand{
    grid-column:1/-1
  }
}
@media (max-width:768px){
  .brand-tagline{
    display:none
  }
  .nav-toggle-text{
    display:none
  }
  .header-frame{
    padding:0 var(--space-3)
  }
  .site-header::before{
    width:3px
  }
  .nav-panel{
    padding:var(--space-4)
  }
  .footer-grid{
    grid-template-columns:1fr;
    gap:var(--space-5)
  }
  .footer-brand{
    grid-column:auto
  }
  .section-pad{
    padding:var(--space-6) 0
  }
}
@media (max-width:480px){
  .footer-bottom{
    flex-direction:column;
    align-items:flex-start
  }
}
