

/* //   privacypolicy and terms&conditions-----------------------------------------    //  */

body{
  overflow-x: visible;
}

.legal-hero{ /* or whichever section has the bleeding background */
  overflow-x: hidden;
}
/* ===== LEGAL DOC PAGES (privacy / terms) ===== */
.legal-hero{
  position:relative; padding:88px 0 64px;
  background: radial-gradient(circle at 15% 50%, rgba(36, 107, 255, .18), transparent 38%),
              radial-gradient(circle at 85% 40%, rgba(107, 61, 255, .18), transparent 40%),
              linear-gradient(135deg, #050816 0%, #080D22 45%, #07142A 100%);
  border-bottom:1px solid var(--line-dark);
  text-align:center;
}
.legal-title{
  font-family:var(--font-display); font-weight:800; text-transform:uppercase;
  font-size:clamp(38px, 5.6vw, 68px); line-height:.98; letter-spacing:-.01em;
  margin-top:18px;
}
.legal-title .accent{ color:var(--teal); }
.legal-sub{ max-width:640px; margin:18px auto 0; color:var(--paper-dim); font-size:16px; text-align:center; }
.legal-meta{ margin:30px auto 0; display:flex; justify-content:center; align-items:center; gap:14px; flex-wrap:wrap; }
.meta-chip{
  font-family:var(--font-mono); font-size:12px; color:var(--paper-dim);
  border:1px solid var(--line-dark); background:var(--charcoal-2);
  padding:9px 14px; border-radius:6px;
}
.meta-chip b{ color:var(--red); font-weight:600; }

.doc-wrap{ color:var(--ink); }
.doc-inner{ display:grid; grid-template-columns:230px 1fr; gap:0; align-items:start; }
@media (max-width:900px){ .doc-inner{ grid-template-columns:1fr; } }

.toc{
  position:sticky; top:0; align-self:start;
  padding:56px 28px 40px 0; height:100vh; overflow-y:auto;
  border-right:1px solid var(--line-light-2);
}
@media (max-width:900px){
  /* .toc{ position:static; height:auto; border-right:none; border-bottom:1px solid var(--line-light-2); padding:32px 0; } */
    .toc{display: none; padding:0; }
}
@media (max-width:480px){
  .doc-wrap {padding: 0;}
  .toc{display: none;}
}
.toc-label{
  font-family:var(--font-mono); font-size:11px; letter-spacing:.14em;
  text-transform:uppercase; color:#8a8672; margin-bottom:18px;
}
.toc a{ display:block; font-size:14px; padding:9px 0; color:#4a473d; }
.toc a:hover, .toc a.active{ color:var(--ink); font-weight:600; }

.doc-content{ padding:64px 0 100px 56px; max-width:800px; }
@media (max-width:900px){ .doc-content{ padding:44px 0 80px; } }

.callout{
  background:#fff; border:1px solid var(--line-light-2); border-left:4px solid var(--teal);
  border-radius:8px; padding:18px 22px; margin:20px 0 8px; font-size:14.5px; color:#333;
}
.callout b{ color:var(--ink); }
.callout.info{ border-left-color:var(--red); }
.callout.warn{ border-left-color:var(--amber); background:#fdf8ee; }

section.doc-section{ padding:44px 0; border-bottom:1px solid var(--line-light-2); scroll-margin-top:24px; }
section.doc-section:last-child{ border-bottom:none; }
.sec-eyebrow{
  font-family:var(--font-mono); font-size:12px; color:var(--red); letter-spacing:.1em;
  margin-bottom:10px; text-transform:uppercase;
}
.doc-content h2{
  font-family:var(--font-display); font-weight:800; text-transform:uppercase;
  font-size:28px; letter-spacing:.01em; margin-bottom:16px;
}
.doc-content p{ font-size:15.5px; color:#3a362f; margin-bottom:14px; }
a.inline-link{ color:var(--red-dim); border-bottom:1px solid rgba(199,58,34,.4); }

.data-card{ background:#fff; border:1px solid var(--line-light-2); border-radius:8px; padding:18px 20px; margin-bottom:14px; display:flex; gap:14px; }
.data-card .icon{ font-size:22px; }
.data-card h4{ font-size:15px; margin-bottom:4px; }
.tag{
  font-family:var(--font-mono); font-size:10px; letter-spacing:.05em; text-transform:uppercase;
  background:rgba(62,168,158,.14); color:var(--teal-dim); padding:3px 8px; border-radius:4px; margin-left:8px;
}
.data-card p{ font-size:14px; color:#5c584d; margin:0; }

.check-list{ margin:8px 0 4px; }
.check-item{ display:flex; gap:12px; padding:14px 0; border-top:1px solid var(--line-light-2); }
.check-item:first-child{ border-top:none; }
.check-item .mark{ color:var(--teal); font-family:var(--font-mono); font-weight:700; flex-shrink:0; }
.check-item h4{ font-size:15px; margin-bottom:3px; }
.check-item p{ font-size:14px; color:#5c584d; margin:0; }

.restrict-list{ margin:8px 0 4px; }
.restrict-item{ display:flex; gap:12px; padding:14px 0; border-top:1px solid var(--line-light-2); }
.restrict-item:first-child{ border-top:none; }
.restrict-item .mark{ color:var(--red); font-family:var(--font-mono); font-weight:700; flex-shrink:0; }
.restrict-item h4{ font-size:15px; margin-bottom:3px; }
.restrict-item p{ font-size:14px; color:#5c584d; margin:0; }

ol.rights-list{ list-style:none; margin-top:8px; }
ol.rights-list li{ display:flex; gap:16px; padding:16px 0; border-top:1px solid var(--line-light-2); }
ol.rights-list li:first-child{ border-top:none; }
.rnum{
  font-family:var(--font-mono); background:var(--ink); color:var(--paper);
  width:26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-size:12px; flex-shrink:0;
}
ol.rights-list h4{ font-size:15px; margin-bottom:3px; }
ol.rights-list p{ font-size:14px; color:#5c584d; margin:0; }

.contact-block{ background:var(--ink); color:var(--paper); border-radius:10px; padding:26px 28px; margin-top:10px; }
.contact-block .row{ display:flex; justify-content:space-between; padding:10px 0; border-top:1px solid var(--line-dark); font-size:14px; }
.contact-block .row:first-child{ border-top:none; }
.contact-block .row span:first-child{ color:var(--paper-dim); }
.contact-block a{ color:var(--teal); }

.doc-footer-note{ margin-top:40px; font-family:var(--font-mono); font-size:12px; color:#8a8672; }









/* ===== HELP CENTER (uses same legal-hero / doc-wrap system) ===== */

.doc-search{
  max-width:520px; margin:30px auto 0; position:relative; 
}
.doc-search input{
  width:100%; padding:14px 16px 14px 46px; border-radius:8px;
  border:1px solid var(--line-dark); background:var(--charcoal-2);
  color:var(--paper); font-size:14px; font-family:var(--font-body,"Inter",sans-serif);
}
.doc-search input::placeholder{ color:var(--paper-dim); }
.doc-search input:focus{ outline:none; border-color:var(--teal); }
.doc-search svg{
  position:absolute; left:15px; top:50%; transform:translateY(-50%);
  width:17px; height:17px; color:var(--paper-dim); pointer-events:none;
}

.help-cat{ scroll-margin-top:24px; }
.help-cat-head{ display:flex; align-items:center; gap:12px; margin-bottom:6px; }
.help-cat-icon{
  width:38px; height:38px; border-radius:10px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  background:rgba(199,58,34,.10); color:var(--red);
}
.help-cat-icon svg{ width:19px; height:19px; }

.faq-item{ border-top:1px solid var(--line-light-2); }
.faq-item:first-child{ border-top:none; }
.faq-q{
  width:100%; display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:16px 0; background:none; border:none; cursor:pointer; text-align:left;
  font-size:14.5px; font-weight:600; color:var(--ink);
}
.faq-q .fq-num{ font-family:var(--font-mono); font-size:11px; color:var(--red); margin-right:10px; }
/* .fq-icon{ flex-shrink:0; width:16px; height:16px; position:relative; }
.fq-icon::before, .fq-icon::after{ content:""; position:absolute; background:#8a8672; border-radius:2px; }
.fq-icon::before{ width:10px; height:2px; top:7px; left:3px; }
.fq-icon::after{ width:2px; height:10px; top:3px; left:7px; transition:transform .25s ease; }
.faq-item.open .fq-icon::after{ transform:rotate(90deg); } */

.faq-item.open .faq-a{ max-height:600px; }
.faq-a{ max-height:0; overflow:hidden; transition:max-height .3s ease; }
/* .faq-item.open .faq-a{ max-height:300px; } */
.faq-a p{ font-size:14px; color:#5c584d; margin:0 0 18px; }
.faq-a a{ color:var(--red-dim); border-bottom:1px solid rgba(199,58,34,.4); }

.help-cta{ text-align:center; padding:60px 0 20px; }
.help-cta p{ color:#0f1014;font-weight: 600; margin-bottom:16px; font-size:16px; }






/* nav active state on this page */
.nav-links a.is-active{
    color:var(--cyan);
}

/* =========================================================
   LOCATION / MAP SECTION — full width, sits before the footer
========================================================= */

.location-map{
    padding:90px 0 100px;

    background:
        radial-gradient(circle at 15% 20%, rgba(36,107,255,.14), transparent 40%),
        radial-gradient(circle at 85% 80%, rgba(107,61,255,.14), transparent 42%),
        var(--ink);
}

.location-map .section-head{
    margin-bottom:36px;
}

.location-map .section-desc{
    font-family:var(--font-mono);
    font-size:13.5px;
    letter-spacing:.02em;
}

.map-panel{
    position:relative;
    width:100%;
    height:440px;

    border-radius:16px;
    overflow:hidden;

    border:1px solid rgba(120,150,210,.24);
    box-shadow:
        0 25px 60px rgba(7,10,24,.30),
        0 0 30px rgba(36,107,255,.08);
}

.map-panel iframe{
    display:block;
    filter:saturate(.85) contrast(1.05);
}

.map-open-link{
    position:absolute;
    top:18px;
    left:18px;

    display:inline-flex;
    align-items:center;
    gap:8px;

    padding:10px 16px;
    border-radius:8px;

    font-family:var(--font-mono);
    font-size:12px;
    font-weight:600;
    letter-spacing:.05em;
    text-transform:uppercase;

    color:#fff;

    background:rgba(7,10,24,.72);
    border:1px solid rgba(25,216,255,.35);
    backdrop-filter:blur(6px);

    transition:background .2s ease, border-color .2s ease, transform .15s ease;
}

.map-open-link svg{
    width:15px;
    height:15px;
    color:var(--cyan);
}

.map-open-link:hover{
    background:rgba(7,10,24,.9);
    border-color:var(--cyan);
    transform:translateY(-1px);
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:860px){
    .map-panel{ height:340px; }
}

@media (max-width:600px){
    .location-map{ padding:64px 0 72px; }
    .map-panel{ height:280px; }
    .map-open-link{
        top:12px;
        left:12px;
        padding:8px 12px;
        font-size:10.5px;
    }
    .doc-search ,.legal-sub {
      max-width: calc(100% - 100px);

    }
}