.page-disclaimer{
  --d-warn-bg:#FBF0DC;
  --d-warn-text:#5A4A30;
  width:100%;
  overflow-x:hidden;
  padding-bottom:5rem;
}

.page-disclaimer .wrap{
  max-width:var(--content-max);
  margin:0 auto;
  padding:0 1.25rem;
}

.page-disclaimer .breadcrumbs{
  margin:1.25rem 0 2.5rem;
}

.page-disclaimer .disclaimer-banner{
  border-radius:8px;
  overflow:hidden;
  border:1px solid var(--paper-line);
  margin-bottom:3rem;
  background:var(--cream);
}

.page-disclaimer .disclaimer-banner img{
  display:block;
  width:100%;
  max-width:100%;
  height:100px;
  object-fit:cover;
}

.page-disclaimer .disclaimer-intro{
  margin-bottom:2.75rem;
}

.page-disclaimer .disclaimer-intro__side{
  border-left:2px solid var(--accent-gold);
  padding:.35rem 0 1.25rem 1rem;
  margin-bottom:1.5rem;
}

.page-disclaimer .disclaimer-intro__note{
  display:block;
  margin-top:.6rem;
  font-family:var(--font-mono);
  font-size:.8125rem;
  line-height:1.6;
  color:var(--stone);
  max-width:16rem;
}

.page-disclaimer .disclaimer-intro__main h1{
  margin:0 0 1rem;
  font-family:var(--font-heading);
  font-size:clamp(1.75rem, 5vw, 2.75rem);
  line-height:1.3;
  font-weight:700;
  letter-spacing:.02em;
  color:var(--ink);
  max-width:38rem;
}

.page-disclaimer .disclaimer-intro__main .lead{
  margin:0;
  font-size:1rem;
  line-height:1.9;
  color:#3d3d38;
  max-width:42rem;
}

.page-disclaimer .disclaimer-warning{
  display:flex;
  gap:1.25rem;
  align-items:flex-start;
  background:var(--d-warn-bg);
  border:1px solid #E7CE9B;
  border-left:4px solid var(--accent-gold);
  padding:1.5rem 1.375rem;
  border-radius:0 8px 8px 0;
  margin-bottom:2.5rem;
}

.page-disclaimer .disclaimer-warning svg{
  flex:0 0 auto;
  color:var(--accent-gold);
  margin-top:.15rem;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.06));
}

.page-disclaimer .disclaimer-warning__text{
  flex:1 1 auto;
}

.page-disclaimer .disclaimer-warning h2{
  margin:0 0 .5rem;
  font-size:1.0625rem;
  font-weight:700;
  color:var(--ink);
}

.page-disclaimer .disclaimer-warning p{
  margin:0;
  font-size:.9375rem;
  line-height:1.85;
  color:var(--d-warn-text);
}

.page-disclaimer .disclaimer-index{
  margin-bottom:2rem;
  padding:1.25rem 1.25rem 1.125rem;
  background:var(--snow);
  border:1px solid var(--paper-line);
  border-radius:8px;
}

.page-disclaimer .disclaimer-index .kicker{
  display:block;
  margin-bottom:.75rem;
}

.page-disclaimer .disclaimer-index ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 0;
}

.page-disclaimer .disclaimer-index li{
  position:relative;
  padding-right:1.25rem;
}

.page-disclaimer .disclaimer-index li + li{
  margin-left:1.25rem;
}

.page-disclaimer .disclaimer-index li + li::before{
  content:"/";
  position:absolute;
  left:-1.5rem;
  color:var(--stone);
  font-family:var(--font-mono);
  font-size:.75rem;
}

.page-disclaimer .disclaimer-index a{
  display:inline-flex;
  align-items:baseline;
  gap:.4rem;
  color:var(--ink);
  text-decoration:none;
  font-size:.875rem;
  border-bottom:1px solid transparent;
  transition:border-color .2s, color .2s;
}

.page-disclaimer .disclaimer-index a:hover,
.page-disclaimer .disclaimer-index a:focus-visible{
  color:var(--accent-red);
  border-color:var(--accent-red);
}

.page-disclaimer .disclaimer-index__num{
  font-family:var(--font-mono);
  font-size:.6875rem;
  color:var(--stone);
}

.page-disclaimer .disclaimer-mountain-wrap{
  margin:2.5rem 0 0;
  color:var(--accent-gold);
}

.page-disclaimer .disclaimer-mountain-svg{
  display:block;
  width:100%;
  height:auto;
  max-height:54px;
}

.page-disclaimer .clause-list{
  border-top:1px solid var(--paper-line);
}

.page-disclaimer .clause{
  padding:2.5rem 0;
  border-bottom:1px solid var(--paper-line);
}

.page-disclaimer .clause:last-child{
  border-bottom:none;
}

.page-disclaimer .clause__side{
  display:flex;
  align-items:baseline;
  gap:.75rem;
  margin-bottom:1.25rem;
}

.page-disclaimer .clause__num{
  font-family:var(--font-mono);
  font-size:2.25rem;
  line-height:1;
  font-weight:700;
  color:var(--accent-red);
  letter-spacing:-.04em;
}

.page-disclaimer .clause__tag{
  font-family:var(--font-mono);
  font-size:.8125rem;
  color:var(--stone);
  letter-spacing:.08em;
}

.page-disclaimer .clause__body h2{
  margin:0 0 1rem;
  font-size:1.375rem;
  font-weight:700;
  color:var(--ink);
}

.page-disclaimer .clause__body p{
  margin:0 0 .875rem;
  font-size:.9375rem;
  line-height:1.85;
  color:#3d3d38;
  max-width:46rem;
}

.page-disclaimer .clause__body p:last-of-type{
  margin-bottom:0;
}

.page-disclaimer .clause-detail{
  margin-top:1.25rem;
  border-left:2px solid var(--accent-gold);
  padding-left:1.125rem;
}

.page-disclaimer .clause-detail summary{
  cursor:pointer;
  font-family:var(--font-mono);
  font-size:.8125rem;
  color:var(--accent-red);
  list-style:none;
  padding:.25rem 0;
  transition:color .2s;
}

.page-disclaimer .clause-detail summary::-webkit-details-marker{
  display:none;
}

.page-disclaimer .clause-detail summary::before{
  content:"＋ ";
}

.page-disclaimer .clause-detail[open] summary::before{
  content:"－ ";
}

.page-disclaimer .clause-detail summary:hover{
  color:var(--accent-gold);
}

.page-disclaimer .clause-detail p{
  margin:.625rem 0 0;
  font-size:.875rem;
  line-height:1.8;
  color:var(--stone);
}

.page-disclaimer .clause-links{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
  margin-top:1.5rem;
}

.page-disclaimer .disclaimer-links-row{
  margin-top:3.5rem;
  border-top:1px solid var(--paper-line);
  border-bottom:1px solid var(--paper-line);
  padding:1.5rem .25rem;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:1rem 1.5rem;
}

.page-disclaimer .disclaimer-links-row__head{
  font-family:var(--font-mono);
  font-size:.8125rem;
  color:var(--stone);
  letter-spacing:.1em;
}

.page-disclaimer .disclaimer-links-row__items{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.625rem 1rem;
}

.page-disclaimer .disclaimer-links-row__items a{
  color:var(--ink);
  text-decoration:none;
  font-size:.875rem;
  border-bottom:1px solid transparent;
  transition:color .2s, border-color .2s;
}

.page-disclaimer .disclaimer-links-row__items a:hover,
.page-disclaimer .disclaimer-links-row__items a:focus-visible{
  color:var(--accent-red);
  border-color:var(--accent-red);
}

.page-disclaimer .disclaimer-links-row__sep{
  color:var(--stone);
  font-family:var(--font-mono);
  font-size:.75rem;
  opacity:.6;
}

@media (min-width: 52rem){
  .page-disclaimer{
    padding-bottom:6.5rem;
  }

  .page-disclaimer .disclaimer-banner{
    margin-bottom:4rem;
    border-radius:10px;
  }

  .page-disclaimer .disclaimer-banner img{
    height:100px;
  }

  .page-disclaimer .disclaimer-intro{
    margin-bottom:3.5rem;
  }

  .page-disclaimer .disclaimer-intro .grid-split{
    grid-template-columns:minmax(14rem, 20rem) minmax(0, 1fr);
    gap:3rem;
  }

  .page-disclaimer .disclaimer-intro__side{
    border-left-width:3px;
    padding-top:.45rem;
    padding-bottom:0;
    margin-bottom:0;
  }

  .page-disclaimer .disclaimer-intro__main h1{
    max-width:40rem;
  }

  .page-disclaimer .disclaimer-warning{
    padding:2rem 2.25rem;
    margin-bottom:3rem;
  }

  .page-disclaimer .disclaimer-warning p{
    max-width:46rem;
  }

  .page-disclaimer .disclaimer-index{
    padding:1.5rem 1.75rem;
  }

  .page-disclaimer .clause{
    display:grid;
    grid-template-columns:minmax(10rem, 13rem) minmax(0, 46rem);
    gap:3rem;
    padding:3.25rem 0;
  }

  .page-disclaimer .clause__side{
    flex-direction:column;
    align-items:flex-start;
    gap:.5rem;
    margin-bottom:0;
    padding-top:.35rem;
  }

  .page-disclaimer .clause__num{
    font-size:3rem;
  }

  .page-disclaimer .clause__tag{
    font-size:.875rem;
  }

  .page-disclaimer .clause__body h2{
    font-size:1.5rem;
  }

  .page-disclaimer .clause__body p{
    font-size:1rem;
  }

  .page-disclaimer .clause-links{
    margin-top:1.75rem;
  }

  .page-disclaimer .disclaimer-links-row{
    margin-top:4rem;
    padding:1.75rem 0;
  }
}
