.page-disclaimer{
  --doc-wide:760px;
  --side-wide:252px;
  --line-wash:rgba(91,143,199,.16);
  position:relative;
  width:100%;
  max-width:1360px;
  margin:0 auto;
  padding:clamp(24px,5vw,48px) clamp(18px,4vw,56px) 88px;
  font-family:var(--font-body);
  color:var(--night);
  line-height:1.75;
  scroll-behavior:smooth;
  box-sizing:border-box;
}
.page-disclaimer *,
.page-disclaimer *::before,
.page-disclaimer *::after{
  box-sizing:inherit;
}

.page-disclaimer .breadcrumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:clamp(22px,4vw,40px);
  font-size:.82rem;
  letter-spacing:.04em;
}
.page-disclaimer .breadcrumb a{
  color:var(--plateau);
  font-weight:600;
  text-decoration:none;
}
.page-disclaimer .breadcrumb a:hover{
  text-decoration:underline;
}
.page-disclaimer .breadcrumb .is-current{
  color:var(--ink-gray);
}
.page-disclaimer .breadcrumb .is-current::before{
  content:"/";
  color:var(--peak-blue);
  margin-right:8px;
}

.page-disclaimer .decl-hero{
  margin-bottom:clamp(32px,6vw,64px);
  max-width:1180px;
}
.page-disclaimer .decl-kicker{
  display:inline-block;
  background:var(--plateau);
  color:var(--snow);
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.22em;
  padding:7px 16px 7px 20px;
  clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);
  margin-bottom:18px;
}
.page-disclaimer .decl-title{
  font-family:var(--font-display);
  font-size:clamp(2rem,4.8vw,3.2rem);
  font-weight:800;
  line-height:1.22;
  margin:0 0 12px;
  max-width:820px;
  position:relative;
  padding-left:16px;
}
.page-disclaimer .decl-title::before{
  content:"";
  position:absolute;
  left:0;
  top:.08em;
  bottom:.1em;
  width:6px;
  background:var(--flag-red);
  box-shadow:6px 0 0 var(--flag-yellow);
}
.page-disclaimer .decl-lead{
  font-size:clamp(1rem,1.5vw,1.18rem);
  color:var(--ink-gray);
  max-width:760px;
  margin:0 0 16px;
}
.page-disclaimer .decl-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 22px;
  margin:0 0 22px;
  font-size:.78rem;
  letter-spacing:.06em;
  color:var(--ink-gray);
}
.page-disclaimer .decl-meta-item{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.page-disclaimer .decl-meta-item::before{
  content:"▸";
  color:var(--peak-blue);
}
.page-disclaimer .decl-hero-figure{
  margin:0 0 6px;
  background:var(--night);
  box-shadow:var(--shadow-soft);
}
.page-disclaimer .decl-hero-figure img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));
}
.page-disclaimer .decl-hero-line{
  display:flex;
  gap:2px;
  margin-top:12px;
  height:5px;
}
.page-disclaimer .decl-hero-line i{
  flex:1 1 0;
  min-width:0;
  background:var(--c);
  clip-path:polygon(5px 0,100% 0,calc(100% - 5px) 100%,0 100%);
}
.page-disclaimer .decl-peaks{
  height:30px;
  margin-top:14px;
  opacity:.55;
  background:
    linear-gradient(135deg,transparent 0,transparent 58%,var(--plateau) 58%,var(--plateau) 72%,transparent 72%),
    linear-gradient(215deg,transparent 0,transparent 46%,var(--peak-blue) 46%,var(--peak-blue) 60%,transparent 60%);
  background-size:96px 30px;
  background-repeat:repeat-x;
}

.page-disclaimer .decl-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:28px;
  align-items:start;
  max-width:1180px;
}

.page-disclaimer .decl-toc{
  position:relative;
  background:var(--night);
  color:var(--snow);
  padding:24px 22px 20px;
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
}
.page-disclaimer .decl-toc::after{
  content:"";
  position:absolute;
  right:-6px;
  bottom:-6px;
  width:14px;
  height:14px;
  background:var(--flag-red);
}
.page-disclaimer .decl-toc-title{
  font-family:var(--font-display);
  font-size:1.1rem;
  font-weight:700;
  margin:0 0 6px;
  letter-spacing:.1em;
}
.page-disclaimer .decl-toc-title small{
  display:block;
  font-family:var(--font-body);
  font-size:.68rem;
  font-weight:400;
  letter-spacing:.34em;
  color:var(--peak-blue);
  margin-top:4px;
}
.page-disclaimer .decl-toc-list{
  list-style:none;
  margin:16px 0 18px;
  padding:0;
  counter-reset:decl-index;
}
.page-disclaimer .decl-toc-list li{
  counter-increment:decl-index;
}
.page-disclaimer .decl-toc-list a{
  display:flex;
  gap:12px;
  align-items:baseline;
  padding:10px 2px;
  color:rgba(248,250,252,.82);
  text-decoration:none;
  font-size:.9rem;
  border-bottom:1px dashed rgba(248,250,252,.12);
  transition:color var(--transition),padding-left var(--transition);
}
.page-disclaimer .decl-toc-list a::before{
  content:"0" counter(decl-index);
  font-family:var(--font-display);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.06em;
  color:var(--flag-yellow);
}
.page-disclaimer .decl-toc-list a:hover,
.page-disclaimer .decl-toc-list a:focus{
  color:#fff;
  padding-left:8px;
}
.page-disclaimer .decl-backtop{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:6px;
  color:var(--flag-yellow);
  font-size:.82rem;
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid transparent;
  padding-bottom:2px;
  transition:border-color var(--transition);
}
.page-disclaimer .decl-backtop::before{
  content:"↑";
  font-size:.9rem;
}
.page-disclaimer .decl-backtop:hover{
  border-color:var(--flag-yellow);
}
.page-disclaimer .decl-vertical{
  display:none;
}

.page-disclaimer .decl-doc{
  min-width:0;
  max-width:var(--doc-wide);
  padding:0 2px 26px;
  background:
    linear-gradient(90deg,var(--line-wash) 0,var(--line-wash) 1px,transparent 1px);
  background-size:86px 100%;
}
.page-disclaimer .decl-clause{
  padding:30px 0 24px;
  border-bottom:1px solid rgba(91,143,199,.28);
  scroll-margin-top:clamp(10px,3vw,28px);
}
.page-disclaimer .decl-clause-head{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:16px;
}
.page-disclaimer .decl-clause-no{
  flex-shrink:0;
  font-family:var(--font-display);
  font-size:1.2rem;
  font-weight:800;
  line-height:1;
  color:var(--snow);
  background:var(--plateau);
  padding:9px 14px 9px 17px;
  clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));
  letter-spacing:.06em;
}
.page-disclaimer .decl-clause h2{
  font-family:var(--font-display);
  font-size:clamp(1.12rem,2vw,1.42rem);
  font-weight:700;
  margin:0;
  color:var(--night);
}
.page-disclaimer .decl-clause-bar{
  flex:1;
  height:2px;
  background:linear-gradient(90deg,var(--peak-blue),rgba(91,143,199,.08));
}
.page-disclaimer .decl-clause-body{
  padding-left:clamp(14px,2vw,22px);
  border-left:2px solid rgba(91,143,199,.45);
}
.page-disclaimer .decl-clause-body p{
  margin:0 0 1em;
  font-size:.96rem;
}
.page-disclaimer .decl-clause-body p:last-child{
  margin-bottom:0;
}
.page-disclaimer .decl-clause-body a{
  color:var(--plateau);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid rgba(10,77,162,.35);
  transition:color var(--transition),border-color var(--transition);
}
.page-disclaimer .decl-clause-body a:hover{
  color:var(--flag-red);
  border-color:var(--flag-red);
}

.page-disclaimer .decl-consult{
  position:relative;
  margin-top:36px;
  padding:26px 24px;
  background:var(--snow);
  border:1px solid rgba(91,143,199,.36);
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));
  box-shadow:var(--shadow-soft);
}
.page-disclaimer .decl-consult::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:64px;
  height:4px;
  background:linear-gradient(90deg,var(--plateau),var(--flag-red),var(--flag-yellow),var(--flag-green));
}
.page-disclaimer .decl-consult h2{
  font-family:var(--font-display);
  font-size:1.12rem;
  font-weight:700;
  margin:0 0 6px;
}
.page-disclaimer .decl-consult>p{
  margin:0 0 14px;
  font-size:.9rem;
  color:var(--ink-gray);
}
.page-disclaimer .decl-consult ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:8px;
}
.page-disclaimer .decl-consult li{
  display:flex;
  align-items:baseline;
  gap:10px;
  font-size:.9rem;
}
.page-disclaimer .decl-consult li::before{
  content:"";
  flex:0 0 7px;
  width:7px;
  height:7px;
  background:var(--flag-yellow);
  transform:rotate(45deg);
}

.page-disclaimer .decl-footer{
  margin-top:16px;
  padding-top:18px;
  border-top:2px solid var(--night);
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px 22px;
  font-size:.82rem;
  color:var(--ink-gray);
}
.page-disclaimer .decl-footer p{
  margin:0;
}
.page-disclaimer .decl-icp{
  margin-left:auto;
  font-size:.76rem;
  letter-spacing:.04em;
  color:var(--plateau);
  border:1px solid rgba(10,77,162,.4);
  padding:4px 12px 4px 10px;
  clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%);
}

@media (min-width:900px){
  .page-disclaimer .decl-layout{
    grid-template-columns:var(--side-wide) minmax(0,1fr);
    gap:clamp(32px,5vw,76px);
  }
  .page-disclaimer .decl-side{
    position:sticky;
    top:24px;
    z-index:5;
    padding-right:18px;
  }
  .page-disclaimer .decl-vertical{
    display:block;
    position:absolute;
    right:0;
    bottom:18px;
    writing-mode:vertical-rl;
    font-family:var(--font-display);
    font-size:.7rem;
    letter-spacing:.38em;
    color:var(--peak-blue);
  }
  .page-disclaimer .decl-doc{
    padding-right:12px;
  }
}

.page-disclaimer {
  --c: transparent;
}
