.page-disclaimer{
  --disc-gutter:clamp(18px,5vw,40px);
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font-body);
}
.page-disclaimer .wrap{
  position:relative;
  width:100%;
  max-width:1140px;
  margin:0 auto;
  padding:0 var(--disc-gutter);
}
.page-disclaimer a:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:3px;
  border-radius:4px;
}

/* hero */
.page-disclaimer .disc-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(18px,4vw,38px) 0 clamp(34px,6vw,64px);
}
.page-disclaimer .disc-hero::before{
  content:"";
  position:absolute;
  left:44%;
  right:-18%;
  top:46%;
  bottom:-34%;
  background:linear-gradient(180deg,var(--paper-deep),var(--sand));
  border-top:3px solid var(--gold);
  transform:rotate(-5deg);
  opacity:.9;
  z-index:0;
  pointer-events:none;
}
.page-disclaimer .disc-hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  gap:clamp(24px,4vw,44px);
}
.page-disclaimer .disc-eyebrow{
  display:flex;
  align-items:center;
  gap:10px;
  margin:clamp(16px,3vw,26px) 0 0;
  font-size:.75rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--teal);
}
.page-disclaimer .disc-eyebrow::before{
  content:"";
  display:block;
  width:36px;
  height:3px;
  background:var(--gold);
}
.page-disclaimer h1{
  margin:.26em 0 .36em;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(2.4rem,7.5vw,4rem);
  line-height:1.02;
  letter-spacing:-.03em;
  color:var(--ink);
}
.page-disclaimer h1::after{
  content:"";
  display:block;
  width:76px;
  height:7px;
  margin-top:.42em;
  background:var(--vermilion);
  border-radius:2px;
}
.page-disclaimer .disc-lede{
  margin:0;
  max-width:54ch;
  font-size:clamp(1rem,1.5vw,1.0625rem);
  line-height:1.85;
  color:var(--ink-soft);
}
.page-disclaimer .disc-hero-meta{
  list-style:none;
  margin:24px 0 0;
  padding:0;
  display:grid;
  gap:10px;
  font-size:.875rem;
  line-height:1.6;
  color:var(--ink-soft);
}
.page-disclaimer .disc-hero-meta li{
  display:flex;
  align-items:baseline;
  gap:10px;
}
.page-disclaimer .disc-hero-meta .mono{
  flex:0 0 auto;
  font-size:.75rem;
  letter-spacing:.12em;
  color:var(--jade);
  background:var(--jade-white);
  border:1px solid var(--line);
  border-radius:6px;
  padding:2px 8px;
}
.page-disclaimer .disc-hero-figure{
  position:relative;
  margin:0;
  padding:10px;
  background:var(--jade-white);
  border:1px solid var(--line);
  border-radius:var(--radius-tile);
  box-shadow:var(--shadow-card);
}
.page-disclaimer .disc-hero-figure img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  border-radius:calc(var(--radius-tile) - 6px);
}
.page-disclaimer .disc-hero-stamp{
  position:absolute;
  top:-12px;
  right:10px;
  display:grid;
  place-items:center;
  width:62px;
  height:62px;
  background:var(--vermilion);
  color:var(--jade-white);
  font-size:1.0625rem;
  font-weight:700;
  letter-spacing:.08em;
  border-radius:12px;
  transform:rotate(6deg);
  box-shadow:0 10px 22px -14px rgba(196,71,46,.95);
}
.page-disclaimer .disc-figure-cap{
  padding:10px 6px 4px;
  font-size:.8125rem;
  line-height:1.6;
  color:var(--gray-jade);
}

/* declaration band */
.page-disclaimer .disc-declaration{
  position:relative;
  overflow:hidden;
  padding:clamp(30px,5vw,56px) 0;
  background:var(--teal);
  color:var(--jade-white);
}
.page-disclaimer .disc-declaration::after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-90px;
  width:240px;
  height:240px;
  border:2px solid rgba(243,212,139,.32);
  border-radius:30px;
  transform:rotate(12deg);
  pointer-events:none;
}
.page-disclaimer .disc-declaration-inner{
  position:relative;
  z-index:1;
  display:grid;
  gap:clamp(22px,4vw,40px);
}
.page-disclaimer .disc-declaration-text{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(1.3rem,2.6vw,1.85rem);
  font-weight:800;
  line-height:1.5;
  letter-spacing:-.01em;
}
.page-disclaimer .disc-declaration-text em{
  display:inline;
  font-style:normal;
  color:var(--gold-soft);
}
.page-disclaimer .disc-keylist{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}
.page-disclaimer .disc-key{
  display:flex;
  align-items:baseline;
  gap:12px;
  padding-top:12px;
  border-top:1px solid rgba(255,253,247,.18);
  font-size:.9375rem;
  line-height:1.65;
  color:rgba(255,253,247,.86);
}
.page-disclaimer .disc-key b{
  flex:0 0 auto;
  font-family:var(--font-mono);
  font-size:.8125rem;
  font-weight:600;
  letter-spacing:.1em;
  color:var(--gold-soft);
}

/* .page-disclaimer: toc + clauses */
.page-disclaimer .disc-body{
  padding:clamp(32px,6vw,76px) 0 clamp(28px,5vw,56px);
  background:var(--paper);
}
.page-disclaimer .disc-body-inner{
  display:grid;
  gap:clamp(26px,4vw,40px);
}
.page-disclaimer .disc-toc{
  border-top:3px solid var(--vermilion);
  padding-top:16px;
}
.page-disclaimer .disc-toc-title{
  margin:0 0 12px;
  font-size:.75rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--teal);
}
.page-disclaimer .disc-toc-list{
  list-style:none;
  margin:0;
  padding:0;
  counter-reset:disc;
}
.page-disclaimer .disc-toc-list a{
  display:flex;
  align-items:baseline;
  gap:10px;
  padding:10px 2px;
  border-bottom:1px dashed var(--line-soft);
  color:var(--ink);
  text-decoration:none;
  font-size:.9375rem;
  line-height:1.5;
  transition:color .18s var(--ease),transform .18s var(--ease);
}
.page-disclaimer .disc-toc-list a .mono{
  flex:0 0 auto;
  font-size:.75rem;
  letter-spacing:.08em;
  color:var(--vermilion);
}
.page-disclaimer .disc-toc-list a:hover{
  color:var(--jade);
  transform:translateX(3px);
}
.page-disclaimer .disc-toc-foot{
  margin:18px 0 0;
  font-size:.8125rem;
  line-height:1.7;
  color:var(--gray-jade);
}
.page-disclaimer .disc-toc-foot a{
  color:var(--jade);
  text-underline-offset:3px;
}

.page-disclaimer .disc-clause{
  scroll-margin-top:96px;
  padding-bottom:clamp(24px,3vw,34px);
  margin-bottom:clamp(24px,3vw,34px);
  border-bottom:1px solid var(--line);
}
.page-disclaimer .disc-clause:last-child{
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:0;
}
.page-disclaimer .disc-clause-head{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:14px;
}
.page-disclaimer .disc-seal{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:10px;
  background:var(--vermilion);
  color:var(--jade-white);
  font-size:1rem;
  font-weight:600;
  letter-spacing:.02em;
  transform:rotate(-3deg);
  box-shadow:0 8px 18px -12px rgba(196,71,46,.9);
}
.page-disclaimer .disc-clause-title{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(1.2rem,2.4vw,1.55rem);
  font-weight:900;
  line-height:1.35;
  letter-spacing:-.01em;
  color:var(--ink);
}
.page-disclaimer .disc-clause p{
  margin:0 0 14px;
  font-size:.9688rem;
  line-height:1.85;
  color:var(--ink-soft);
}
.page-disclaimer .disc-clause p:last-child{
  margin-bottom:0;
}
.page-disclaimer .disc-note{
  margin:18px 0 0;
  padding:15px 18px;
  background:linear-gradient(180deg,rgba(243,212,139,.46),rgba(243,212,139,.24));
  border-left:4px solid var(--gold);
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  font-size:.9375rem;
  line-height:1.75;
  color:var(--ink);
}

/* contact block */
.page-disclaimer .disc-contact{
  display:grid;
  gap:14px;
  margin-top:20px;
}
.page-disclaimer .disc-contact-item{
  padding:14px 16px;
  background:var(--jade-white);
  border:1px solid var(--line);
  border-radius:var(--radius-sm);
}
.page-disclaimer .disc-contact-label{
  display:block;
  margin-bottom:6px;
  font-size:.75rem;
  letter-spacing:.14em;
  color:var(--jade);
}
.page-disclaimer .disc-contact-value{
  display:block;
  font-size:.9375rem;
  line-height:1.65;
  color:var(--ink);
  word-break:break-word;
}
.page-disclaimer .disc-contact-more{
  margin:22px 0 0;
}

/* closing */
.page-disclaimer .disc-closing{
  padding:clamp(28px,5vw,54px) 0;
  background:var(--paper-deep);
  border-top:1px solid var(--line);
}
.page-disclaimer .disc-closing-inner{
  display:grid;
  gap:18px;
  align-items:center;
}
.page-disclaimer .disc-closing-text{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(1.05rem,2vw,1.3rem);
  font-weight:800;
  line-height:1.5;
  letter-spacing:-.01em;
}
.page-disclaimer .disc-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.page-disclaimer .disc-actions .btn{
  text-decoration:none;
}

@media (min-width:620px){
  .page-disclaimer .disc-contact{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (min-width:860px){
  .page-disclaimer .disc-hero::before{
    left:52%;
    top:50%;
  }
  .page-disclaimer .disc-hero-inner{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    align-items:center;
  }
  .page-disclaimer .disc-hero-stamp{
    top:-16px;
    right:-8px;
  }
  .page-disclaimer .disc-declaration-inner{
    grid-template-columns:minmax(0,7fr) minmax(0,5fr);
    align-items:start;
  }
  .page-disclaimer .disc-closing-inner{
    grid-template-columns:minmax(0,1fr) auto;
  }
}
@media (min-width:900px){
  .page-disclaimer .disc-body-inner{
    grid-template-columns:minmax(0,224px) minmax(0,1fr);
    gap:clamp(36px,5vw,64px);
    align-items:start;
  }
  .page-disclaimer .disc-toc{
    position:sticky;
    top:96px;
  }
  .page-disclaimer .disc-clause p{
    font-size:1rem;
  }
}
@media (prefers-reduced-motion:reduce){
  .page-disclaimer .disc-toc-list a{
    transition:none;
  }
  .page-disclaimer .disc-toc-list a:hover{
    transform:none;
  }
}
<<<END>>>
