.elementor-2 .elementor-element.elementor-element-277fef91{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-27ea3841{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-66aded48{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-2 .elementor-element.elementor-element-66aded48 .elementor-divider-separator{width:100%;}.elementor-2 .elementor-element.elementor-element-66aded48 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-2 .elementor-element.elementor-element-45dd6aea{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-81ff7df{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-37a63668{--display:grid;--e-con-grid-template-columns:310px 1fr;--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-2 .elementor-element.elementor-element-45f69812{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2 .elementor-element.elementor-element-1e5e94c1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-1587ba28{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-53cea3fe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-566e1607{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-77c952a6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-1bb47baf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-552f865b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-2dc14cbb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-40e508c8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-23b3133d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:1024px){.elementor-2 .elementor-element.elementor-element-37a63668{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-2 .elementor-element.elementor-element-27ea3841{--content-width:1160px;}.elementor-2 .elementor-element.elementor-element-45dd6aea{--content-width:1160px;}.elementor-2 .elementor-element.elementor-element-45f69812{--content-width:0%;}.elementor-2 .elementor-element.elementor-element-23b3133d{--content-width:1160px;}}@media(max-width:767px){.elementor-2 .elementor-element.elementor-element-37a63668{--e-con-grid-template-columns:1;--grid-auto-flow:row;}}/* Start custom CSS *//* =========================================================
   SUBJECT 157 — TERMS & CONDITIONS (WHITE PREMIUM)
   Scope: .s157-legal-page
   ========================================================= */

.s157-legal-page{
  --s157-ink:#0F172A;
  --s157-ink-2:rgba(15,23,42,.74);
  --s157-ink-3:rgba(15,23,42,.58);
  --s157-border:rgba(15,23,42,.12);
  --s157-border-2:rgba(15,23,42,.18);

  --s157-bg:#FFFFFF;
  --s157-soft:#F9FAFB;
  --s157-soft-2:#F3F4F6;

  --s157-accent:#00D6A0; /* teal */
  --s157-accent-2:#00C8FF; /* cyan */

  background:var(--s157-bg);
  color:var(--s157-ink);
}

/* --- container widths (Elementor friendly) --- */
.s157-legal-page .elementor-container,
.s157-legal-page .e-con-inner{
  max-width: 1120px;
}

/* --- global spacing polish --- */
.s157-legal-page .e-con,
.s157-legal-page .elementor-section{
  scroll-margin-top: 92px; /* anchors below sticky header */
}

/* =========================================================
   HERO
   ========================================================= */
.s157-legal-hero{
  position: relative;
  padding: clamp(28px, 4vw, 56px) 0;
  background: linear-gradient(180deg, var(--s157-soft) 0%, rgba(255,255,255,0) 70%);
}

.s157-legal-hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  /* subtle lab grid */
  background-image:
    linear-gradient(to right, rgba(15,23,42,.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(15,23,42,.05) 1px, transparent 1px);
  background-size: 44px 44px;
  opacity:.35;
  mask-image: radial-gradient(1200px 420px at 50% 0%, #000 55%, transparent 100%);
}

/* label: // TERMS */
.s157-section-label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--s157-ink-3);
}

.s157-section-label:before{
  content:"";
  width: 10px;
  height: 10px;
  border-radius: 3px;
  background: var(--s157-accent);
  box-shadow: 0 0 0 3px rgba(0,214,160,.14);
}

/* H1 */
.s157-title-xl{
  font-family: Montserrat, Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin: 10px 0 12px;
  font-size: clamp(34px, 5vw, 56px);
  color: var(--s157-ink);
}

/* Lead */
.s157-lead{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: clamp(15px, 1.2vw, 18px);
  line-height: 1.65;
  color: var(--s157-ink-2);
  max-width: 74ch;
}

/* Divider */
.s157-hr{
  height: 1px;
  border: 0;
  background: linear-gradient(90deg, transparent 0%, rgba(15,23,42,.18) 20%, rgba(15,23,42,.18) 80%, transparent 100%);
  margin: 22px 0 0;
}

/* =========================================================
   MAIN GRID (TOC + CONTENT)
   ========================================================= */
.s157-legal-grid{
  padding: clamp(26px, 3vw, 46px) 0;
}

@media (min-width: 980px){
  .s157-legal-grid{
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 28px;
    align-items: start;
  }
}

/* TOC card */
.s157-legal-toc{
  background: rgba(249,250,251,.88);
  border: 1px solid var(--s157-border);
  border-radius: 18px;
  padding: 18px 16px;
  box-shadow: 0 14px 30px rgba(15,23,42,.06);
  backdrop-filter: blur(8px);
}

@media (min-width: 980px){
  .s157-legal-toc{
    position: sticky;
    top: 92px;
  }
}

.s157-legal-toc__title{
  font-family: Montserrat, Inter, system-ui;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--s157-ink);
  margin-bottom: 10px;
}

.s157-legal-toc__body a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 10px 10px;
  border-radius: 12px;
  text-decoration: none !important;
  color: var(--s157-ink-2);
  font-family: Inter, system-ui;
  font-size: 14px;
  line-height: 1.35;
  transition: transform .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
}

.s157-legal-toc__body a:hover{
  background: rgba(0,214,160,.10);
  color: var(--s157-ink);
  box-shadow: 0 10px 18px rgba(0,214,160,.12);
  transform: translateY(-1px);
}

.s157-legal-toc__body a:after{
  content:"→";
  color: var(--s157-accent);
  font-weight: 700;
  opacity:.9;
}

/* CONTENT */
.s157-legal-content{
  min-width: 0;
}

.s157-legal-section{
  padding: 18px 0;
  border-bottom: 1px solid rgba(15,23,42,.10);
}

.s157-legal-section:last-child{
  border-bottom: 0;
}

.s157-legal-section__title{
  font-family: Montserrat, Inter, system-ui;
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin: 0 0 8px;
  font-size: clamp(18px, 1.8vw, 22px);
  color: var(--s157-ink);
}

.s157-legal-section__text,
.s157-legal-body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--s157-ink-2);
  line-height: 1.75;
  font-size: 15px;
  max-width: 78ch;
}

.s157-legal-section__text strong,
.s157-legal-body strong{
  color: var(--s157-ink);
}

/* links inside content */
.s157-legal-page .s157-legal-content a{
  color: var(--s157-ink);
  text-decoration: none;
  border-bottom: 1px solid rgba(0,214,160,.55);
  transition: border-color .15s ease, color .15s ease;
}
.s157-legal-page .s157-legal-content a:hover{
  color: var(--s157-accent);
  border-bottom-color: rgba(0,214,160,.95);
}

/* =========================================================
   CTA CARD (bottom)
   ========================================================= */
.s157-legal-card{
  margin-top: 26px;
  background: linear-gradient(180deg, rgba(249,250,251,.96) 0%, rgba(243,244,246,.92) 100%);
  border: 1px solid var(--s157-border);
  border-radius: 20px;
  padding: clamp(18px, 2.4vw, 26px);
  box-shadow: 0 18px 42px rgba(15,23,42,.08);
  position: relative;
  overflow: hidden;
}

.s157-legal-card:before{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(500px 220px at 20% 0%, rgba(0,200,255,.14), transparent 60%),
              radial-gradient(520px 220px at 80% 0%, rgba(0,214,160,.18), transparent 60%);
  pointer-events:none;
  opacity:.9;
}

.s157-legal-cta__title{
  position: relative;
  font-family: Montserrat, Inter, system-ui;
  font-weight: 900;
  font-size: 14px;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: var(--s157-ink);
  margin: 0 0 8px;
}

.s157-legal-cta__text{
  position: relative;
  color: var(--s157-ink-2);
  font-family: Inter, system-ui;
  line-height: 1.7;
  font-size: 14px;
  max-width: 80ch;
}

/* Button */
.s157-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 12px 18px;
  border-radius: 999px;
  font-family: Inter, system-ui;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: .02em;
  text-decoration: none !important;
  border: 1px solid rgba(0,200,255,.35);
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
  position: relative;
  z-index: 1;
}

.s157-btn--primary{
  color: #06202A;
  background: linear-gradient(180deg, rgba(0,200,255,.95) 0%, rgba(0,214,160,.92) 100%);
  box-shadow: 0 14px 30px rgba(0,200,255,.18);
}

.s157-btn--primary:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 40px rgba(0,214,160,.22);
  filter: saturate(1.05);
}

/* Mobile: TOC becomes normal block */
@media (max-width: 979px){
  .s157-legal-toc{
    margin-bottom: 18px;
  }
  .s157-legal-toc__body a{
    padding: 12px 10px;
  }
}/* End custom CSS */