/* ---- Reset & base ---- */
*,*::before,*::after{box-sizing:border-box;}
body{margin:0;padding:0;font-family:Rubik, sans-serif;background:#191a1d;color:#ebebeb;line-height:1.6;}
img{max-width:100%;display:block;}
a{color:#ffd95f;text-decoration:none;}
a:hover{color:#e6b61e;}
h1,h2,h3{color:#ebebeb;font-family:Rubik, sans-serif;line-height:1.25;}
p{margin:0 0 1em;}
ul,ol{margin:0 0 1em;padding-left:1.4em;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* ---- Utility bar ---- */
.utility-bar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:center;background:#0c0e12;padding:.35rem 1rem;font-size:.75rem;color:#ebebeb;border-bottom:1px solid #3d3e46;}
.utility-item{display:flex;align-items:center;gap:.3rem;}
.utility-icon{font-size:.9rem;}
.badge{background:#ffd95f;color:#0c0e12;font-weight:700;border-radius:4px;padding:0 .4em;font-size:.7rem;}

/* ---- Header ---- */
.site-header{position:sticky;top:0;z-index:50;background:#191a1d;border-bottom:1px solid #3d3e46;}
.header-inner{display:flex;align-items:center;gap:1.25rem;max-width:1200px;margin:0 auto;padding:.75rem 1rem;}
.logo-link{flex:0 0 auto;}
.logo-img{height:36px;width:auto;}
.primary-nav{display:flex;gap:1.25rem;flex:1;flex-wrap:wrap;}
.primary-nav a{color:#ebebeb;font-weight:500;font-size:.95rem;}
.primary-nav a:hover{color:#ffd95f;}
.nav-toggle{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:.4rem;}
.nav-toggle span{width:22px;height:2px;background:#ebebeb;display:block;}
.header-cta{flex:0 0 auto;display:flex;gap:.6rem;align-items:center;}

.cta-button{display:inline-block;background:#00ffff;color:#0c0e12;font-weight:700;padding:.65em 1.4em;border-radius:6px;text-align:center;border:none;cursor:pointer;transition:background .15s ease;}
.cta-button:hover{background:#00e0e0;color:#0c0e12;}
.cta-button-secondary{display:inline-block;background:#00000000;color:#ebebeb;font-weight:700;padding:.6em 1.3em;border-radius:6px;text-align:center;border:1px solid #3d3e46;cursor:pointer;transition:background .15s ease;}
.cta-button-secondary:hover{background:#00ffff1a;color:#ebebeb;}

/* ---- Hero carousel ---- */
.hero-carousel{overflow:hidden;padding:1.5rem 1rem;}
.carousel-track{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1200px;margin:0 auto;}
.promo-tile{position:relative;min-height:220px;border-radius:10px;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:flex-end;padding:1.25rem;gap:.75rem;background-color:#33353d;}
.promo-tile::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(12,14,18,0) 0%, rgba(12,14,18,.85) 100%);border-radius:10px;}
.promo-tile h2,.promo-tile .cta-button{position:relative;z-index:1;}
.promo-tile h2{font-size:1.25rem;margin:0;}
.promo-tile .cta-button{align-self:flex-start;}

/* ---- Page title / TOC ---- */
.page-title-toc{max-width:900px;margin:0 auto;padding:2rem 1rem 1rem;}
.page-title-toc h1{font-size:2rem;margin:0 0 1rem;}
.intro-meta{font-size:.85rem;opacity:.75;}
.toc-box{border:1px solid #3d3e46;background:#33353d;border-radius:10px;padding:1.25rem 1.5rem;}
.toc-label{display:flex;align-items:center;gap:.5rem;font-weight:700;margin:0 0 .75rem;}
.toc-list{list-style:none;padding:0;margin:0;columns:2;column-gap:2rem;}
.toc-list li{margin-bottom:.5rem;break-inside:avoid;}
.toc-list a{color:#ffd95f;font-size:.95rem;}

/* ---- Breadcrumb ---- */
.breadcrumb-bar{max-width:1200px;margin:0 auto;padding:.6rem 1rem;font-size:.8rem;color:#ebebeb;opacity:.75;display:flex;gap:.5rem;align-items:center;}
.breadcrumb-bar a{color:#ebebeb;}
.breadcrumb-bar a:hover{color:#ffd95f;}
.breadcrumb-sep{opacity:.5;}

/* ---- Inline promo banner ---- */
.inline-promo-banner{max-width:900px;margin:1rem auto 0;padding:.85rem 1.25rem;background:#33353d;border:1px solid #3d3e46;border-radius:10px;display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;}
.inline-promo-banner h2{font-size:1.05rem;margin:0;flex:1;}

/* ---- Intro / banner ---- */
.intro-banner{max-width:900px;margin:0 auto;padding:1rem 1rem 2rem;}
.promo-banner-link{display:block;margin-top:1rem;border-radius:10px;overflow:hidden;}
.promo-banner-img{width:100%;border-radius:10px;}
.hero-image{width:100%;}

/* ---- Article sections generally ---- */
.article-section,.trust-section,.support-table-section,.faq-section{max-width:900px;margin:0 auto;padding:1.5rem 1rem;}
.article-body{max-width:900px;margin:0 auto;padding:0 1rem;}
.article-subsection{padding:1.5rem 0;border-top:1px solid #3d3e46;}
.article-subsection:first-child{border-top:none;}
h2{font-size:1.5rem;margin:0 0 .75rem;}
.section-img{margin:1rem 0;border-radius:10px;}

/* ---- Step list ---- */
.step-list{list-style:none;padding:0;margin:1rem 0;}
.step-item{display:flex;align-items:flex-start;gap:.85rem;margin-bottom:.85rem;}
.step-badge{flex:0 0 auto;width:1.9em;height:1.9em;border-radius:50%;background:#00ffff;color:#0c0e12;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.9rem;}
.step-text{padding-top:.15em;}

/* ---- Secondary image block ---- */
.secondary-image-block{text-align:center;margin:1.5rem 0;}
.secondary-image-block img{margin-left:auto;margin-right:auto;max-width:360px;}
.secondary-image-block .cta-button{margin:1rem auto;}
.secondary-image-block p{text-align:left;}

/* ---- Tables ---- */
table{width:100%;border-collapse:collapse;margin:1rem 0;background:#33353d;border-radius:8px;overflow:hidden;}
th,td{text-align:left;padding:.65em .85em;border-bottom:1px solid #3d3e46;font-size:.95rem;}
th{background:#0c0e12;color:#ebebeb;font-weight:700;}
tr:last-child td{border-bottom:none;}

/* ---- FAQ ---- */
.faq-list{margin:0;}
.faq-item{border:1px solid #3d3e46;border-radius:8px;padding:.75em 1em;margin-bottom:.75em;background:#33353d;}
.faq-item summary{cursor:pointer;list-style:none;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary h3{display:inline;font-size:1.05rem;margin:0;}
.faq-item summary::before{content:"+";display:inline-block;width:1em;color:#ffd95f;font-weight:700;}
.faq-item[open] summary::before{content:"\2212";}
.faq-item dd{margin:.75em 0 0;padding:0;color:#ebebeb;}
.faq-item p{margin:.75em 0 0;}
.disclaimer-block{font-size:.85rem;color:#ebebeb;opacity:.8;margin-top:1.5rem;}

/* ---- Footer ---- */
.site-footer{background:#0c0e12;border-top:1px solid #3d3e46;margin-top:2rem;}
.footer-inner{max-width:1200px;margin:0 auto;padding:2rem 1rem;display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;justify-content:space-between;}
.footer-logo{height:32px;}
.footer-col{display:flex;align-items:center;}
.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap;}
.footer-links a{color:#ebebeb;font-size:.9rem;}
.footer-links a:hover{color:#ffd95f;}
.footer-payment-icons{display:flex;align-items:center;}
.footer-payment-icons img{height:28px;width:auto;}
.footer-legal{flex-basis:100%;font-size:.78rem;color:#ebebeb;opacity:.65;}

/* ---- Sticky bottom bar ---- */
.sticky-promo-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#33353d;border-top:1px solid #3d3e46;display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;box-shadow:0 -2px 10px rgba(0,0,0,.4);}
.sticky-icon{font-size:1.1rem;}
.sticky-text{flex:1;font-size:.85rem;}
.sticky-cta{padding:.5em 1.1em;font-size:.85rem;}

/* ---- Responsive ---- */
@media (max-width:900px){
  .carousel-track{grid-template-columns:1fr;}
  .toc-list{columns:1;}
}
@media (max-width:768px){
  .nav-toggle{display:flex;}
  .primary-nav{display:none;flex-direction:column;width:100%;order:3;gap:.75rem;padding-top:.75rem;}
  .primary-nav.open{display:flex;}
  .header-inner{flex-wrap:wrap;}
  .header-cta{order:2;}
  h1{font-size:1.5rem;}
  .sticky-text{display:none;}
}

/* ---- Additions for /enter page ---- */
.footer-links{list-style:none;}
.footer-inner .footer-col.footer-links{flex-direction:column;align-items:flex-start;gap:.6rem;}

/* ---- Additions for /contacts page ---- */
.cta-center{text-align:center;margin:1.5rem 0;}
.hero-banner{position:relative;margin:1.5rem 0;border-radius:10px;overflow:hidden;}
.hero-banner .hero-image{width:100%;display:block;border-radius:10px;}
.hero-banner h2{position:absolute;left:0;right:0;bottom:0;margin:0;padding:2.5rem 1.25rem 1.25rem;background:linear-gradient(180deg, rgba(12,14,18,0) 0%, rgba(12,14,18,.9) 100%);font-size:1.35rem;}
.faq-item summary h3{margin:0;}
.faq-list{list-style:none;}