
:root{
  --ct-orange:#ff4b16;
  --ct-ink:#12161a;
  --ct-muted:#68727c;
  --ct-line:#dfe4e7;
  --ct-paper:#fff;
  --ct-bg:#eef1f3;
  --ct-green:#16864a;
  --ct-blue:#3978d5;
  --ct-amber:#d58a1b;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.contract-terms-page{
  margin:0;
  background:var(--ct-bg);
  color:var(--ct-ink);
  font-family:Inter,Arial,sans-serif;
}
button,input,select{font:inherit}
[hidden]{display:none!important}
.ct-wrap{width:min(1240px,calc(100% - 48px));margin:auto}

/* Cover: deliberately unlike other support pages */
.ct-cover{
  position:relative;
  min-height:610px;
  padding:44px 0 50px;
  background:#f8f9fa;
  border-bottom:1px solid #d9dee2;
  overflow:hidden;
}
.ct-cover::before{
  content:"TERMS";
  position:absolute;
  right:-35px;
  top:65px;
  color:#edf0f2;
  font-size:210px;
  line-height:.8;
  letter-spacing:-14px;
  font-weight:900;
  transform:rotate(90deg);
  transform-origin:center;
}
.ct-cover-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding-bottom:20px;
  border-bottom:1px solid #dfe3e6;
}
.ct-breadcrumb{display:flex;align-items:center;gap:8px;color:#6b737b;font-size:13px;font-weight:750}
.ct-breadcrumb a{color:#6b737b}
.ct-breadcrumb b{color:#b5bbc0}
.ct-version-chip{
  display:flex;align-items:center;gap:10px;
  padding:8px 11px;border:1px solid #dce1e4;border-radius:9px;background:#fff;
}
.ct-version-chip i{width:8px;height:8px;border-radius:50%;background:var(--ct-amber)}
.ct-version-chip span{font-size:13px;color:#6c757e;font-weight:800}
.ct-cover-grid{
  position:relative;z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) 455px;
  gap:68px;
  align-items:start;
  padding-top:58px;
}
.ct-cover-copy{padding-top:28px}
.ct-overline{color:var(--ct-orange);font-size:13px;font-weight:900;letter-spacing:1.4px}
.ct-cover h1{
  max-width:720px;
  margin:16px 0 0;
  font-size:64px;
  line-height:.98;
  letter-spacing:-3.3px;
}
.ct-cover-lead{
  max-width:680px;
  margin:21px 0 0;
  color:#626c75;
  font-size:16px;
  line-height:1.75;
}
.ct-cover-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:27px}
.ct-cover-actions button,.ct-cover-actions a{
  height:45px;padding:0 16px;border-radius:8px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:14px;font-weight:850;
}
.ct-cover-actions .solid{border:0;background:var(--ct-orange);color:#fff}
.ct-cover-actions .outline{border:1px solid #d5dbe0;background:#fff;color:#4f5962}

/* Paper sheet */
.ct-cover-sheet{
  position:relative;
  min-height:500px;
  padding:38px 36px 30px 76px;
  background:#fff;
  border:1px solid #d8dde1;
  box-shadow:0 30px 70px rgba(19,23,27,.14);
}
.ct-cover-sheet::before{
  content:"";
  position:absolute;
  left:48px;top:0;bottom:0;
  width:1px;background:#f2b7a2;
}
.ct-sheet-corner{
  position:absolute;right:0;top:0;
  width:70px;height:70px;
  overflow:hidden;
}
.ct-sheet-corner::before{
  content:"";
  position:absolute;right:-35px;top:-35px;
  width:70px;height:70px;
  background:#eef1f3;
  transform:rotate(45deg);
  border-left:1px solid #d8dde1;
}
.ct-sheet-label{color:#6c7379;font-size:13px;font-weight:900;letter-spacing:1px}
.ct-cover-sheet h2{margin:12px 0 0;font-size:24px;letter-spacing:-.7px}
.ct-cover-sheet>p{margin:10px 0 0;color:#6b737b;font-size:16px;line-height:1.65}
.ct-agreement-lines{display:grid;gap:0;margin-top:26px}
.ct-agreement-line{
  display:grid;grid-template-columns:120px 1fr;
  gap:15px;padding:13px 0;border-bottom:1px solid #e8ebed;
}
.ct-agreement-line small{color:#6d7378;font-size:13px;font-weight:850;letter-spacing:.55px}
.ct-agreement-line strong{font-size:15px;line-height:1.55}
.ct-rights-stamp{
  margin-top:24px;padding:14px;
  border:2px solid var(--ct-green);
  color:var(--ct-green);
  transform:rotate(-1deg);
  text-align:center;
  font-size:13px;font-weight:900;letter-spacing:.7px;
}

/* Command rail */
.ct-command{
  position:sticky;
  top:0;
  z-index:30;
  background:#11161b;
  color:#fff;
  box-shadow:0 7px 22px rgba(12,16,20,.13);
}
.ct-command-inner{
  min-height:66px;
  display:grid;
  grid-template-columns:auto minmax(220px,1fr) auto auto;
  gap:12px;
  align-items:center;
}
.ct-command-title{display:flex;flex-direction:column;min-width:170px}
.ct-command-title small{color:#6c737a;font-size:13px;font-weight:850;letter-spacing:.7px}
.ct-command-title strong{margin-top:5px;font-size:15px}
.ct-search{
  height:40px;padding:0 11px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:8px;background:#20272e;
  display:flex;align-items:center;gap:8px;
}
.ct-search svg{width:16px;height:16px;fill:none;stroke:#aeb5bc;stroke-width:1.6}
.ct-search input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:16px}
.ct-search input::placeholder{color:#6c737a}
.ct-filter-toggle{
  height:40px;padding:0 11px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:8px;background:#20272e;color:#c5cbd0;
  font-size:14px;font-weight:800;
}
.ct-filter-toggle.active{background:var(--ct-orange);border-color:var(--ct-orange);color:#fff}
.ct-command-actions{display:flex;gap:7px}
.ct-command-actions button{
  height:40px;padding:0 11px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:8px;background:transparent;color:#c5cbd0;
  font-size:14px;font-weight:800;
}

/* Audience switcher */
.ct-service-band{
  padding:26px 0;
  background:#fff;
  border-bottom:1px solid var(--ct-line);
}
.ct-service-inner{
  display:grid;
  grid-template-columns:245px 1fr;
  gap:24px;
  align-items:center;
}
.ct-service-copy small{color:var(--ct-orange);font-size:16px;font-weight:900;letter-spacing:.8px}
.ct-service-copy strong{display:block;margin-top:6px;font-size:16px}
.ct-service-copy p{margin:5px 0 0;color:#6b737b;font-size:16px;line-height:1.5}
.ct-service-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.ct-service-tab{
  min-height:68px;padding:11px 12px;
  border:1px solid #dfe3e6;border-radius:10px;background:#fff;
  display:grid;grid-template-columns:32px 1fr;gap:9px;align-items:center;text-align:left;
}
.ct-service-tab.active{border-color:#11161b;background:#11161b;color:#fff}
.ct-service-tab span{
  width:32px;height:32px;border-radius:9px;
  display:grid;place-items:center;
  background:#f0f2f3;color:#5d6670;
}
.ct-service-tab.active span{background:var(--ct-orange);color:#fff}
.ct-service-tab svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
.ct-service-tab strong{display:block;font-size:15px}
.ct-service-tab small{display:block;margin-top:4px;color:#6c7379;font-size:14px;line-height:1.35}
.ct-service-tab.active small{color:#aeb6bd}

/* Contract document */
.ct-document-area{padding:46px 0 82px}
.ct-document-layout{
  display:grid;
  grid-template-columns:195px minmax(0,1fr);
  gap:27px;
  align-items:start;
}
.ct-chapter-index{
  position:sticky;
  top:92px;
  padding-top:5px;
}
.ct-index-label{color:#6c7379;font-size:13px;font-weight:900;letter-spacing:.8px}
.ct-chapter-list{display:grid;gap:7px;margin-top:12px}
.ct-chapter-link{
  padding:11px 12px;
  border-left:2px solid #d8dde1;
  color:#68727b;
  font-size:13px;font-weight:800;
}
.ct-chapter-link.active{border-left-color:var(--ct-orange);color:#151a1f;background:#fff}
.ct-progress-box{margin-top:20px;padding:12px;border:1px solid #dfe3e6;border-radius:10px;background:#fff}
.ct-progress-box small{color:#6c7379;font-size:13px;font-weight:850}
.ct-progress-track{height:5px;margin-top:9px;border-radius:99px;background:#e6eaed;overflow:hidden}
.ct-progress-track span{display:block;width:0;height:100%;background:var(--ct-orange);transition:.15s}
.ct-progress-box strong{display:block;margin-top:8px;font-size:15px}

.ct-document{
  min-width:0;
  display:grid;
  gap:28px;
}
.ct-chapter{
  scroll-margin-top:90px;
}
.ct-chapter-divider{
  min-height:128px;
  padding:25px 30px;
  background:#11161b;
  color:#fff;
  display:grid;
  grid-template-columns:130px 1fr;
  gap:24px;
  align-items:center;
}
.ct-chapter-number{
  font-size:70px;
  line-height:.8;
  letter-spacing:-4px;
  color:#2d353d;
  font-weight:900;
}
.ct-chapter-divider small{color:#ff9b78;font-size:13px;font-weight:900;letter-spacing:.85px}
.ct-chapter-divider h2{margin:7px 0 0;font-size:25px;letter-spacing:-.7px}
.ct-chapter-divider p{margin:7px 0 0;color:#aeb6bd;font-size:16px;line-height:1.55}

.ct-clause{
  position:relative;
  background:#fff;
  border:1px solid #dce1e4;
  box-shadow:0 8px 24px rgba(17,21,26,.035);
  scroll-margin-top:90px;
}
.ct-clause.filtered-out{display:none}
.ct-clause-head{
  min-height:82px;
  padding:18px 20px 18px 104px;
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border-bottom:1px solid #edf0f2;
}
.ct-clause-no{
  position:absolute;
  left:0;top:0;bottom:0;
  width:82px;
  background:#f6f8f9;
  border-right:1px solid #e2e6e9;
  display:flex;align-items:center;justify-content:center;
  color:#c5cbd0;
  font-size:28px;font-weight:900;letter-spacing:-1px;
}
.ct-clause-head small{display:block;color:#6c7379;font-size:13px;font-weight:900;letter-spacing:.65px}
.ct-clause-head h3{margin:6px 0 0;font-size:16px}
.ct-clause-tools{display:flex;gap:7px}
.ct-clause-tools button{
  height:31px;padding:0 9px;
  border:1px solid #dfe3e6;border-radius:7px;background:#fff;color:#667079;
  font-size:14px;font-weight:800;
}
.ct-key-badge{
  display:inline-flex;margin-left:8px;padding:4px 6px;border-radius:99px;
  background:#fff0ea;color:#a84322;font-size:13px;font-weight:900;vertical-align:middle
}
.ct-clause-body{padding:21px 24px 24px 104px}
.ct-clause-body>p{margin:0;color:#5f6972;font-size:16px;line-height:1.76}
.ct-clause-body>p+p{margin-top:12px}
.ct-clause-body .tc-list{margin:13px 0 0;padding-left:18px;color:#626c75;font-size:14px;line-height:1.78}
.ct-clause-body .tc-callout{margin-top:16px;padding:14px;border-left:3px solid var(--ct-orange);border-radius:0 9px 9px 0;background:#fff6f2}
.ct-clause-body .tc-callout.green{border-left-color:var(--ct-green);background:#f0f9f3}
.ct-clause-body .tc-callout.blue{border-left-color:var(--ct-blue);background:#f1f6fd}
.ct-clause-body .tc-callout strong{font-size:15px}
.ct-clause-body .tc-callout p{margin:6px 0 0;color:#725c53;font-size:16px;line-height:1.6}
.ct-clause-body .tc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}
.ct-clause-body .tc-info-card{padding:14px;border:1px solid #e4e8eb;border-radius:10px;background:#fbfcfc}
.ct-clause-body .tc-info-card strong{display:block;font-size:15px}
.ct-clause-body .tc-info-card p{margin:6px 0 0;color:#6a737c;font-size:16px;line-height:1.58}
.ct-clause-body .tc-table-wrap{margin-top:16px;overflow:auto}
.ct-clause-body .tc-table{width:100%;border-collapse:collapse;min-width:700px}
.ct-clause-body .tc-table th,.ct-clause-body .tc-table td{padding:12px 10px;border-bottom:1px solid #e7eaed;text-align:left;vertical-align:top;font-size:14px;line-height:1.55}
.ct-clause-body .tc-table th{color:#6c737a;font-size:14px}
.ct-clause-body .tc-rights-strip{margin-top:16px;padding:15px;border:1px solid #bfe1cc;border-radius:10px;background:#f2faf5}
.ct-clause-body .tc-rights-strip strong{color:#216e43;font-size:15px}
.ct-clause-body .tc-rights-strip p{margin:6px 0 0;color:#52705d;font-size:16px;line-height:1.6}
.ct-clause-body .tc-rights-strip a{display:inline-flex;margin-top:9px;color:#187a43;font-size:14px;font-weight:850}

.ct-no-results{
  padding:60px 24px;
  border:1px dashed #d4dade;
  background:#fff;
  text-align:center;
}
.ct-no-results h3{margin:0;font-size:16px}
.ct-no-results p{max-width:440px;margin:8px auto 0;color:#6b737c;font-size:16px;line-height:1.6}
.ct-no-results button{height:38px;margin-top:14px;padding:0 13px;border:0;border-radius:8px;background:var(--ct-orange);color:#fff;font-size:14px;font-weight:850}

/* Signature / acceptance - receipt style */
.ct-signature{
  padding:65px 0 72px;
  background:#fff;
  border-top:1px solid #dce1e4;
}
.ct-signature-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:38px;
  align-items:start;
}
.ct-signature-copy small{color:var(--ct-orange);font-size:16px;font-weight:900;letter-spacing:.8px}
.ct-signature-copy h2{margin:10px 0 0;font-size:35px;letter-spacing:-1.2px}
.ct-signature-copy p{margin:12px 0 0;color:#69737c;font-size:16px;line-height:1.7}
.ct-receipt{
  position:relative;
  padding:28px 28px 22px;
  border:1px solid #d8dde1;
  background:#fafafa;
  box-shadow:0 18px 40px rgba(17,21,26,.08);
}
.ct-receipt::after{
  content:"";
  position:absolute;left:0;right:0;bottom:-8px;height:16px;
  background:linear-gradient(135deg,transparent 75%,#fafafa 75%) 0 0/16px 16px,
             linear-gradient(225deg,transparent 75%,#fafafa 75%) 0 0/16px 16px;
}
.ct-receipt-top{display:flex;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px dashed #cbd1d5}
.ct-receipt-top strong{font-size:15px}
.ct-receipt-top span{font-size:13px;color:#6b737b}
.ct-accept-row{display:grid;grid-template-columns:auto 1fr;gap:10px;margin-top:17px}
.ct-accept-row input{margin-top:2px;accent-color:var(--ct-orange)}
.ct-accept-row strong{display:block;font-size:15px}
.ct-accept-row small{display:block;margin-top:5px;color:#6b737b;font-size:13px;line-height:1.55}
.ct-receipt-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}
.ct-receipt-fields label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:850}
.ct-receipt-fields input,.ct-receipt-fields select{height:39px;padding:0 10px;border:1px solid #d6dce0;background:#fff;font-size:16px}
.ct-sign-button{width:100%;height:43px;margin-top:15px;border:0;background:var(--ct-orange);color:#fff;font-size:14px;font-weight:850}
.ct-sign-button:disabled{background:#cfd4d8;color:#6c737a}
.ct-sign-status{min-height:16px;margin-top:10px;color:var(--ct-green);font-size:13px}

.ct-footer-action{
  width:min(1240px,calc(100% - 48px));
  margin:0 auto 70px;
  padding:24px 26px;
  background:#11161b;
  color:#fff;
  display:flex;justify-content:space-between;gap:24px;align-items:center;
}
.ct-footer-action small{color:#ff9b78;font-size:14px;font-weight:900;letter-spacing:.8px}
.ct-footer-action h2{margin:7px 0 0;font-size:21px}
.ct-footer-action p{margin:6px 0 0;color:#aeb6bd;font-size:16px}
.ct-footer-buttons{display:flex;gap:8px}
.ct-footer-buttons a{height:39px;padding:0 13px;display:flex;align-items:center;font-size:14px;font-weight:850}
.ct-footer-buttons a:first-child{background:var(--ct-orange)}
.ct-footer-buttons a:last-child{border:1px solid rgba(255,255,255,.17)}

.ct-toast{
  position:fixed;left:50%;bottom:25px;z-index:100;
  transform:translate(-50%,18px);
  padding:11px 15px;border-radius:9px;
  background:#171b20;color:#fff;font-size:14px;
  opacity:0;pointer-events:none;transition:.2s ease;
}
.ct-toast.show{opacity:1;transform:translate(-50%,0)}

@media print{
  .site-header,.site-footer,.ct-cover-actions,.ct-command,.ct-service-band,.ct-chapter-index,.ct-signature,.ct-footer-action,.ct-toast{display:none!important}
  body{background:#fff}.ct-cover{min-height:auto;padding:20px 0;background:#fff}.ct-cover-grid{grid-template-columns:1fr;padding-top:10px}.ct-cover-sheet{display:none}
  .ct-document-area{padding:20px 0}.ct-document-layout{grid-template-columns:1fr}
  .ct-clause,.ct-chapter-divider{break-inside:avoid;box-shadow:none}
}
@media(max-width:1080px){
  .ct-cover-grid{grid-template-columns:1fr}.ct-cover-sheet{max-width:650px}
  .ct-command-inner{grid-template-columns:auto 1fr auto}.ct-command-actions{display:none}
  .ct-service-inner{grid-template-columns:1fr}.ct-document-layout{grid-template-columns:160px 1fr}
  .ct-signature-grid{grid-template-columns:1fr}
}
@media(max-width:820px){
  .ct-cover h1{font-size:48px}.ct-cover::before{display:none}
  .ct-command-inner{grid-template-columns:1fr auto;padding:10px 0}.ct-command-title{display:none}.ct-search{grid-column:1}.ct-filter-toggle{grid-column:2}
  .ct-service-tabs{grid-template-columns:repeat(2,1fr)}
  .ct-document-layout{grid-template-columns:1fr}.ct-chapter-index{position:static;display:none}
  .ct-clause-head{padding-left:88px}.ct-clause-no{width:68px}.ct-clause-body{padding-left:88px}
  .ct-clause-body .tc-grid{grid-template-columns:1fr}
  .ct-footer-action{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .ct-wrap,.ct-footer-action{width:calc(100% - 24px)}
  .ct-cover{padding-top:26px}.ct-cover-top{align-items:flex-start;flex-direction:column}.ct-cover-grid{padding-top:34px}.ct-cover h1{font-size:38px}
  .ct-cover-sheet{padding:28px 20px 24px 52px}.ct-cover-sheet::before{left:34px}.ct-agreement-line{grid-template-columns:1fr;gap:5px}
  .ct-service-tabs{grid-template-columns:1fr}
  .ct-chapter-divider{grid-template-columns:1fr;padding:22px}.ct-chapter-number{font-size:48px}
  .ct-clause-head{padding:16px 14px 16px 68px}.ct-clause-no{width:54px;font-size:20px}.ct-clause-tools button:first-child{display:none}
  .ct-clause-body{padding:18px 15px 20px 68px}
  .ct-receipt-fields{grid-template-columns:1fr}.ct-footer-buttons{width:100%;flex-direction:column}.ct-footer-buttons a{justify-content:center}
}

/* Step 16: keep the contract document within the mobile viewport. */
.ct-document{grid-template-columns:minmax(0,1fr)}
.ct-chapter,.ct-clause,.ct-clause-head,.ct-clause-body,.ct-clause-body .tc-table-wrap{min-width:0;max-width:100%}
.ct-clause-body .tc-table-wrap{overflow-x:auto;overscroll-behavior-inline:contain}

@media(max-width:560px){
  .ct-document-layout,.ct-document,.ct-chapter,.ct-clause{width:100%;max-width:100%}
  .ct-clause-head{align-items:flex-start}
  .ct-clause-head>div:not(.ct-clause-no){min-width:0}
  .ct-clause-head h3{overflow-wrap:anywhere}
}
