 :root {
     --bg: #0b0f16;
     --panel: #0f1724;
     --panel-2: #0c1422;
     --text: #eaf0ff;
     --muted: #a9b4cc;
     --line: rgba(255, 255, 255, .10);

     --gold: #d8b15a;
     --gold-2: #f2d38a;

     --blue: #3aa3ff;
     --green: #23c483;

     --shadow: 0 18px 60px rgba(0, 0, 0, .45);
     --shadow-soft: 0 10px 28px rgba(0, 0, 0, .35);
     --radius: 16px;

     --max: 1160px;
 }

 * {
     box-sizing: border-box
 }

 html {
     scroll-behavior: smooth
 }

 body {
     margin: 0;
     font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
     color: var(--text);
     background:
         radial-gradient(900px 380px at 20% 10%, rgba(216, 177, 90, .18), transparent 55%),
         radial-gradient(900px 420px at 80% 0%, rgba(58, 163, 255, .16), transparent 60%),
         radial-gradient(900px 520px at 70% 90%, rgba(35, 196, 131, .10), transparent 55%),
         var(--bg);
     line-height: 1.55;
 }

 a {
     color: inherit;
     text-decoration: none
 }

 img {
     max-width: 100%;
     display: block
 }

 .container {
     width: min(var(--max), calc(100% - 40px));
     margin: 0 auto
 }

 .skip-link {
     position: absolute;
     left: -999px;
     top: auto;
     width: 1px;
     height: 1px;
     overflow: hidden;
 }

 .skip-link:focus {
     left: 16px;
     top: 16px;
     width: auto;
     height: auto;
     background: var(--panel);
     border: 1px solid var(--line);
     padding: 10px 12px;
     border-radius: 10px;
     z-index: 9999;
 }


 header {
     position: sticky;
     top: 0;
     z-index: 1000;
     backdrop-filter: blur(10px);
     background: rgba(11, 15, 22, .72);
     border-bottom: 1px solid var(--line);
 }

 .nav {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 14px 0;
     gap: 16px;
 }

 .brand {
     display: flex;
     align-items: center;
     gap: 10px;
     min-width: 220px;
 }

 .logoMark {
     width: 38px;
     height: 38px;
     border-radius: 12px;
     background:
         linear-gradient(135deg, rgba(216, 177, 90, .95), rgba(58, 163, 255, .75));
     box-shadow: 0 10px 28px rgba(0, 0, 0, .35);
     border: 1px solid rgba(255, 255, 255, .12);
     position: relative;
 }

 .logoMark::after {
     content: "";
     position: absolute;
     inset: 10px;
     border-radius: 10px;
     border: 1px solid rgba(11, 15, 22, .5);
     background: radial-gradient(circle at 35% 30%, rgba(255, 255, 255, .35), transparent 55%);
 }

 .brandName {
     display: flex;
     flex-direction: column;
     line-height: 1.1;
 }

 .brandName strong {
     font-size: 14px;
     letter-spacing: .2px
 }

 .brandName span {
     font-size: 12px;
     color: var(--muted)
 }

 nav ul {
     display: flex;
     gap: 18px;
     list-style: none;
     padding: 0;
     margin: 0;
     align-items: center;
 }

 nav a {
     font-size: 13px;
     color: var(--muted);
     padding: 10px 10px;
     border-radius: 10px;
     transition: all .2s ease;
     display: inline-flex;
     align-items: center;
     gap: 8px;
 }

 nav a:hover {
     color: var(--text);
     background: rgba(255, 255, 255, .06)
 }

 nav a.active {
     color: var(--text);
     background: rgba(216, 177, 90, .14);
     border: 1px solid rgba(216, 177, 90, .22)
 }

 .navRight {
     display: flex;
     align-items: center;
     gap: 10px;
 }

 .btn {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     padding: 10px 14px;
     border-radius: 12px;
     border: 1px solid rgba(255, 255, 255, .14);
     background: rgba(255, 255, 255, .06);
     color: var(--text);
     font-weight: 600;
     font-size: 13px;
     transition: transform .15s ease, background .2s ease, border-color .2s ease;
     gap: 10px;
     cursor: pointer;
     user-select: none;
     white-space: nowrap;
 }

 .btn:hover {
     transform: translateY(-1px);
     background: rgba(255, 255, 255, .09);
     border-color: rgba(255, 255, 255, .20)
 }

 .btnPrimary {
     border-color: rgba(216, 177, 90, .40);
     background: linear-gradient(135deg, rgba(216, 177, 90, .25), rgba(58, 163, 255, .18));
 }

 .btnPrimary:hover {
     border-color: rgba(242, 211, 138, .55)
 }

 .btnGhost {
     background: transparent;
     border-color: rgba(255, 255, 255, .14);
     color: var(--muted);
 }

 .hamburger {
     display: none;
     width: 44px;
     height: 44px;
     border-radius: 12px;
     border: 1px solid rgba(255, 255, 255, .14);
     background: rgba(255, 255, 255, .06);
     color: var(--text);
     cursor: pointer;
 }

 .hamburger i {
     font-size: 16px
 }


 .mobileMenu {
     display: none;
     border-top: 1px solid var(--line);
     background: rgba(11, 15, 22, .92);
 }

 .mobileMenu .container {
     padding: 10px 0 16px
 }

 .mobileMenu a {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 12px 12px;
     border-radius: 12px;
     color: var(--muted);
     border: 1px solid transparent;
 }

 .mobileMenu a:hover {
     background: rgba(255, 255, 255, .06);
     border-color: rgba(255, 255, 255, .10);
     color: var(--text);
 }


 section {
     padding: 72px 0
 }

 .sectionHeader {
     display: flex;
     align-items: flex-end;
     justify-content: space-between;
     gap: 18px;
     margin-bottom: 20px;
 }

 .sectionHeader h2 {
     margin: 0;
     font-size: 28px;
     letter-spacing: -.3px;
 }

 .kicker {
     display: inline-flex;
     align-items: center;
     gap: 10px;
     color: var(--muted);
     font-size: 13px;
 }

 .kicker .dot {
     width: 8px;
     height: 8px;
     border-radius: 99px;
     background: linear-gradient(135deg, var(--gold), var(--blue));
     box-shadow: 0 0 0 4px rgba(216, 177, 90, .10);
 }

 .muted {
     color: var(--muted)
 }


 .hero {
     padding: 58px 0 36px;
     position: relative;
     overflow: hidden;
 }

 .hero::before {
     content: "";
     position: absolute;
     inset: -2px;
     background:
         radial-gradient(900px 480px at 18% 15%, rgba(216, 177, 90, .22), transparent 60%),
         radial-gradient(900px 480px at 85% 10%, rgba(58, 163, 255, .20), transparent 60%),
         radial-gradient(680px 520px at 65% 88%, rgba(35, 196, 131, .12), transparent 60%);
     pointer-events: none;
     filter: saturate(1.1);
 }

 .heroGrid {
     position: relative;
     display: grid;
     grid-template-columns: 1.15fr .85fr;
     gap: 28px;
     align-items: stretch;
 }

 .heroCard {
     background:
         linear-gradient(180deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .03));
     border: 1px solid rgba(255, 255, 255, .12);
     border-radius: var(--radius);
     box-shadow: var(--shadow);
     padding: 26px;
     overflow: hidden;
     position: relative;
 }

 .heroTitle {
     font-size: 44px;
     line-height: 1.08;
     letter-spacing: -.8px;
     margin: 8px 0 12px;
 }

 .heroSubtitle {
     margin: 0 0 18px;
     color: var(--muted);
     font-size: 15px;
     max-width: 60ch;
 }

 .heroActions {
     display: flex;
     gap: 10px;
     flex-wrap: wrap;
     margin: 18px 0 8px;
 }

 .pillRow {
     display: flex;
     gap: 10px;
     flex-wrap: wrap;
     margin-top: 14px;
 }

 .pill {
     display: inline-flex;
     align-items: center;
     gap: 10px;
     padding: 10px 12px;
     border-radius: 999px;
     border: 1px solid rgba(255, 255, 255, .12);
     background: rgba(255, 255, 255, .05);
     color: var(--muted);
     font-size: 13px;
 }

 .pill i {
     color: rgba(242, 211, 138, .95)
 }

 .disclaimerTop {
     margin-top: 10px;
     font-size: 12px;
     color: rgba(233, 240, 255, .75);
     border-left: 3px solid rgba(216, 177, 90, .45);
     padding-left: 10px;
 }

 .heroSide {
     display: flex;
     flex-direction: column;
     gap: 14px;
     height: 100%;
 }

 .trustCard {
     flex: 1;
     background: linear-gradient(180deg, rgba(15, 23, 36, .9), rgba(12, 20, 34, .78));
     border: 1px solid rgba(255, 255, 255, .10);
     border-radius: var(--radius);
     box-shadow: var(--shadow-soft);
     padding: 18px;
     position: relative;
     overflow: hidden;
 }

 .trustCard h3 {
     margin: 0 0 10px;
     font-size: 16px;
     letter-spacing: -.2px;
 }

 .trustList {
     display: grid;
     gap: 10px;
     margin: 0;
     padding: 0;
     list-style: none;
 }

 .trustList li {
     display: flex;
     gap: 10px;
     align-items: flex-start;
     padding: 10px 12px;
     border: 1px solid rgba(255, 255, 255, .10);
     border-radius: 14px;
     background: rgba(255, 255, 255, .04);
     color: var(--muted);
     font-size: 13px;
 }

 .trustList i {
     margin-top: 2px;
     color: rgba(58, 163, 255, .95);
 }

 .miniNote {
     margin-top: 10px;
     font-size: 12px;
     color: rgba(233, 240, 255, .70);
 }


 .grid3 {
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 14px;
     margin-top: 16px;
 }

 .card {
     border-radius: var(--radius);
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .04);
     padding: 16px;
     box-shadow: var(--shadow-soft);
     transition: transform .15s ease, border-color .2s ease, background .2s ease;
 }

 .card:hover {
     transform: translateY(-2px);
     border-color: rgba(216, 177, 90, .22);
     background: rgba(255, 255, 255, .05);
 }

 .card h3 {
     margin: 8px 0 6px;
     font-size: 16px;
     letter-spacing: -.2px;
 }

 .card p {
     margin: 0;
     color: var(--muted);
     font-size: 13px
 }

 .iconBadge {
     width: 40px;
     height: 40px;
     border-radius: 14px;
     display: grid;
     place-items: center;
     border: 1px solid rgba(216, 177, 90, .22);
     background: linear-gradient(135deg, rgba(216, 177, 90, .16), rgba(58, 163, 255, .08));
 }

 .iconBadge i {
     color: rgba(242, 211, 138, .98)
 }


 .featuredWrap {
     display: grid;
     grid-template-columns: 1.25fr .75fr;
     gap: 16px;
     margin-top: 14px;
 }

 .featured {
     border-radius: calc(var(--radius) + 6px);
     border: 1px solid rgba(242, 211, 138, .25);
     background:
         linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .03));
     box-shadow: var(--shadow);
     padding: 20px;
     position: relative;
     overflow: hidden;
 }

 .featured::before {
     content: "";
     position: absolute;
     inset: -2px;
     background:
         radial-gradient(800px 380px at 12% 10%, rgba(216, 177, 90, .20), transparent 60%),
         radial-gradient(700px 360px at 88% 18%, rgba(35, 196, 131, .12), transparent 62%);
     pointer-events: none;
 }

 .featuredInner {
     position: relative
 }

 .casinoRow {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 14px;
     flex-wrap: wrap;
 }

 .casinoIdentity {
     display: flex;
     gap: 12px;
     align-items: center;
 }

 .codereLogo {
     width: 80px;
     height: 80px;
     border-radius: 16px;
     display: grid;
     place-items: center;
     background: rgb(227, 227, 227);
     border: 1px solid rgba(255, 255, 255, .12);
     overflow: hidden;
 }

 .codereLogo img {
     width: 99%;
 }

 .casinoIdentity .nameBlock strong {
     display: block;
     font-size: 18px
 }

 .casinoIdentity .nameBlock span {
     display: block;
     font-size: 12px;
     color: var(--muted)
 }

 .rating {
     display: flex;
     align-items: center;
     gap: 10px;
     padding: 10px 12px;
     border-radius: 999px;
     border: 1px solid rgba(255, 255, 255, .12);
     background: rgba(255, 255, 255, .05);
     font-size: 13px;
     color: var(--muted);
 }

 .stars i {
     color: rgba(242, 211, 138, .95)
 }

 .badges {
     display: flex;
     gap: 8px;
     flex-wrap: wrap;
     margin-top: 12px;
 }

 .badge {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     padding: 8px 10px;
     border-radius: 999px;
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .04);
     color: var(--muted);
     font-size: 12px;
 }

 .badge i {
     color: rgba(58, 163, 255, .95)
 }

 .featuredBody {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 14px;
     margin-top: 14px;
 }

 .list {
     margin: 0;
     padding: 0;
     list-style: none;
     display: grid;
     gap: 10px;
 }

 .list li {
     display: flex;
     gap: 10px;
     align-items: flex-start;
     padding: 10px 12px;
     border-radius: 14px;
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .04);
     color: var(--muted);
     font-size: 13px;
 }

 .list li i {
     margin-top: 2px;
     color: rgba(35, 196, 131, .95)
 }

 .bonusBox {
     border-radius: 18px;
     border: 1px solid rgba(216, 177, 90, .20);
     background: linear-gradient(180deg, rgba(216, 177, 90, .10), rgba(255, 255, 255, .02));
     padding: 14px;
 }

 .bonusBox h3 {
     margin: 0 0 10px;
     font-size: 16px
 }

 .bonusLine {
     display: flex;
     align-items: flex-start;
     gap: 10px;
     padding: 10px 12px;
     border-radius: 14px;
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .04);
     color: var(--muted);
     font-size: 13px;
     margin-bottom: 10px;
 }

 .bonusLine i {
     margin-top: 2px;
     color: rgba(242, 211, 138, .95)
 }

 .featuredCtas {
     display: flex;
     gap: 10px;
     flex-wrap: wrap;
     margin-top: 14px;
 }

 .sidePanel {
     border-radius: var(--radius);
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .03);
     box-shadow: var(--shadow-soft);
     padding: 16px;
     height: 100%;
 }

 .sidePanel h3 {
     margin: 0 0 10px;
     font-size: 16px
 }

 .sidePanel p {
     margin: 0 0 12px;
     color: var(--muted);
     font-size: 13px
 }

 .sidePanel .btn {
     width: 100%
 }


 .tableWrap {
     margin-top: 12px;
     border-radius: var(--radius);
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .03);
     overflow: hidden;
     box-shadow: var(--shadow-soft);
 }

 .tableScroll {
     overflow: auto;
     -webkit-overflow-scrolling: touch;
 }

 table {
     width: 100%;
     border-collapse: collapse;
     min-width: 860px;
 }

 thead th {
     text-align: left;
     font-size: 12px;
     letter-spacing: .2px;
     color: rgba(233, 240, 255, .78);
     background: rgba(255, 255, 255, .04);
     border-bottom: 1px solid rgba(255, 255, 255, .10);
     padding: 12px 14px;
     position: sticky;
     top: 0;
 }

 tbody td {
     padding: 12px 14px;
     border-bottom: 1px solid rgba(255, 255, 255, .08);
     color: var(--muted);
     font-size: 13px;
     vertical-align: top;
 }

 tbody tr:hover td {
     background: rgba(255, 255, 255, .03);
     color: rgba(233, 240, 255, .85)
 }

 .cellCasino {
     display: flex;
     align-items: center;
     gap: 10px;
     color: var(--text);
     font-weight: 600;
 }

 .tinyLogo {
     width: 28px;
     height: 28px;
     border-radius: 10px;
     display: grid;
     place-items: center;
     border: 1px solid rgba(255, 255, 255, .12);
     background: rgba(255, 255, 255, .06);
     font-size: 12px;
     color: rgba(242, 211, 138, .95);
 }

 .tagOk {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     padding: 6px 10px;
     border-radius: 999px;
     border: 1px solid rgba(35, 196, 131, .25);
     background: rgba(35, 196, 131, .10);
     color: rgba(233, 240, 255, .85);
     font-size: 12px;
     white-space: nowrap;
 }

 .tagOk i {
     color: rgba(35, 196, 131, .95)
 }

 .tagInfo {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     padding: 6px 10px;
     border-radius: 999px;
     border: 1px solid rgba(58, 163, 255, .25);
     background: rgba(58, 163, 255, .10);
     color: rgba(233, 240, 255, .85);
     font-size: 12px;
     white-space: nowrap;
 }

 .tagInfo i {
     color: rgba(58, 163, 255, .95)
 }

 .linkOut {
     display: inline-flex;
     align-items: center;
     gap: 8px;
     color: rgba(242, 211, 138, .95);
     font-weight: 600;
 }

 .linkOut:hover {
     text-decoration: underline
 }

 .tableNote {
     padding: 12px 14px;
     font-size: 12px;
     color: rgba(233, 240, 255, .70);
     border-top: 1px solid rgba(255, 255, 255, .08);
     background: rgba(0, 0, 0, .10);
 }


 .grid2 {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 14px;
     margin-top: 16px;
 }


 .accordion {
     margin-top: 16px;
     display: grid;
     gap: 10px;
 }

 .accItem {
     border-radius: var(--radius);
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .03);
     box-shadow: var(--shadow-soft);
     overflow: hidden;
 }

 .accBtn {
     width: 100%;
     text-align: left;
     padding: 14px 14px;
     background: transparent;
     border: 0;
     color: var(--text);
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 12px;
     cursor: pointer;
     font-weight: 600;
     font-size: 14px;
 }

 .accBtn span {
     display: flex;
     align-items: flex-start;
     gap: 10px;
 }

 .accBtn i {
     color: rgba(242, 211, 138, .95);
     margin-top: 2px
 }

 .accPanel {
     max-height: 0;
     overflow: hidden;
     transition: max-height .25s ease;
     border-top: 1px solid rgba(255, 255, 255, .08);
 }

 .accPanel .inner {
     padding: 12px 14px 14px;
     color: var(--muted);
     font-size: 13px;
 }

 .chev {
     color: rgba(233, 240, 255, .65);
     transition: transform .2s ease;
 }

 .accItem.open .chev {
     transform: rotate(180deg)
 }

 .accItem.open .accPanel {
     max-height: 260px
 }


 .responsible {
     padding: 70px 0;
     background:
         radial-gradient(900px 420px at 20% 20%, rgba(58, 163, 255, .16), transparent 60%),
         radial-gradient(900px 480px at 70% 40%, rgba(216, 177, 90, .18), transparent 62%),
         rgba(0, 0, 0, .10);
     border-top: 1px solid rgba(255, 255, 255, .08);
     border-bottom: 1px solid rgba(255, 255, 255, .08);
 }

 .responsibleBox {
     border-radius: calc(var(--radius) + 6px);
     border: 1px solid rgba(255, 255, 255, .12);
     background: rgba(15, 23, 36, .72);
     box-shadow: var(--shadow);
     padding: 22px;
 }

 .responsibleTop {
     display: flex;
     align-items: flex-start;
     justify-content: space-between;
     gap: 16px;
     flex-wrap: wrap;
 }

 .responsibleTop h2 {
     margin: 0;
     font-size: 28px
 }

 .notice18 {
     display: inline-flex;
     align-items: center;
     gap: 10px;
     padding: 10px 12px;
     border-radius: 999px;
     border: 1px solid rgba(216, 177, 90, .28);
     background: rgba(216, 177, 90, .10);
     color: rgba(233, 240, 255, .88);
     font-size: 12px;
     white-space: nowrap;
 }

 .notice18 i {
     color: rgba(242, 211, 138, .98)
 }

 .responsibleBox p {
     color: var(--muted);
     margin: 10px 0 0;
     max-width: 92ch
 }

 .iconGrid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 12px;
     margin-top: 16px;
 }

 .iconTile {
     border-radius: 18px;
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .04);
     padding: 14px;
     display: flex;
     gap: 10px;
     align-items: flex-start;
 }

 .iconTile i {
     color: rgba(58, 163, 255, .95);
     margin-top: 2px
 }

 .iconTile strong {
     display: block;
     font-size: 13px
 }

 .iconTile span {
     display: block;
     font-size: 12px;
     color: var(--muted);
     margin-top: 2px
 }


 footer {
     padding: 56px 0 28px;
     background: rgba(0, 0, 0, .22);
     border-top: 1px solid rgba(255, 255, 255, .08);
 }

 .footerGrid {
     display: grid;
     grid-template-columns: 1.3fr .9fr .9fr;
     gap: 18px;
     align-items: start;
 }

 .footerBrand {
     border-radius: var(--radius);
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .03);
     padding: 16px;
     box-shadow: var(--shadow-soft);
 }

 .footerBrand .row {
     display: flex;
     gap: 12px;
     align-items: center;
     margin-bottom: 10px;
 }

 .footerBrand p {
     margin: 0;
     color: var(--muted);
     font-size: 13px
 }

 .footerCols {
     border-radius: var(--radius);
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .03);
     padding: 16px;
     box-shadow: var(--shadow-soft);
     height: 100%;
 }

 .footerCols h3 {
     margin: 0 0 10px;
     font-size: 14px;
     color: rgba(233, 240, 255, .92);
 }

 .footerLinks {
     list-style: none;
     padding: 0;
     margin: 0;
     display: grid;
     gap: 10px;
 }

 .footerLinks a {
     color: var(--muted);
     font-size: 13px;
     display: flex;
     align-items: center;
     gap: 10px;
     padding: 8px 10px;
     border-radius: 12px;
     border: 1px solid transparent;
 }

 .footerLinks a:hover {
     color: var(--text);
     background: rgba(255, 255, 255, .05);
     border-color: rgba(255, 255, 255, .10);
 }

 .footerLinks i {
     color: rgba(242, 211, 138, .95)
 }

 .legalBox {
     margin-top: 12px;
     padding: 12px 12px;
     border-radius: 14px;
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(0, 0, 0, .12);
     color: rgba(233, 240, 255, .70);
     font-size: 12px;
 }

 .socialRow {
     display: flex;
     gap: 10px;
     margin-top: 12px;
     flex-wrap: wrap;
 }

 .social {
     width: 40px;
     height: 40px;
     border-radius: 14px;
     display: grid;
     place-items: center;
     border: 1px solid rgba(255, 255, 255, .12);
     background: rgba(255, 255, 255, .04);
     color: rgba(233, 240, 255, .85);
     transition: transform .15s ease, background .2s ease, border-color .2s ease;
 }

 .social:hover {
     transform: translateY(-2px);
     background: rgba(255, 255, 255, .06);
     border-color: rgba(216, 177, 90, .22);
 }

 .copyright {
     margin-top: 18px;
     padding-top: 18px;
     border-top: 1px solid rgba(255, 255, 255, .08);
     color: rgba(233, 240, 255, .60);
     font-size: 12px;
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 12px;
     flex-wrap: wrap;
 }

 .backTop {
     color: rgba(242, 211, 138, .95);
     font-weight: 600;
     display: inline-flex;
     align-items: center;
     gap: 8px;
 }

 .backTop:hover {
     text-decoration: underline
 }


 @media (max-width: 980px) {
     .heroGrid {
         grid-template-columns: 1fr
     }

     .featuredWrap {
         grid-template-columns: 1fr
     }

     .featuredBody {
         grid-template-columns: 1fr
     }

     .grid3 {
         grid-template-columns: 1fr
     }

     .grid2 {
         grid-template-columns: 1fr
     }

     .iconGrid {
         grid-template-columns: 1fr 1fr
     }

     nav ul {
         display: none
     }

     .hamburger {
         display: inline-grid;
         place-items: center
     }

     .brand {
         min-width: auto
     }
 }

 @media (max-width: 520px) {
     section {
         padding: 58px 0
     }

     .heroTitle {
         font-size: 36px
     }

     .iconGrid {
         grid-template-columns: 1fr
     }

     .btn {
         width: 100%
     }

     .heroActions {
         gap: 8px
     }

     .pill {
         width: 100%
     }

     .footerGrid {
         grid-template-columns: 1fr
     }
 }


 @media (prefers-reduced-motion: reduce) {
     html {
         scroll-behavior: auto
     }

     * {
         transition: none !important
     }
 }

 
 .contactForm {
     padding: 72px 0;
 }

 .contactGrid {
     display: grid;
     grid-template-columns: 1.2fr .8fr;
     gap: 16px;
     margin-top: 16px;
 }

 .contactCard {
     border-radius: calc(var(--radius) + 6px);
     border: 1px solid rgba(255, 255, 255, .12);
     background: linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .03));
     box-shadow: var(--shadow);
     padding: 18px;
 }

 .contactTop {
     display: flex;
     gap: 12px;
     align-items: flex-start;
     margin-bottom: 14px;
 }

 .contactTop h3 {
     margin: 0;
     font-size: 16px;
     letter-spacing: -.2px;
 }

 .formGrid {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 12px;
 }

 .field {
     display: flex;
     flex-direction: column;
     gap: 8px;
 }

 .field.full {
     grid-column: 1 / -1;
 }

 .field label {
     font-size: 12px;
     color: rgba(233, 240, 255, .82);
     display: flex;
     align-items: center;
     gap: 10px;
 }

 .field label i {
     color: rgba(242, 211, 138, .95);
 }

 .field input,
 .field select,
 .field textarea {
     width: 100%;
     border-radius: 14px;
     border: 1px solid rgba(255, 255, 255, .12);
     background: rgba(0, 0, 0, .14);
     color: var(--text);
     padding: 12px 12px;
     outline: none;
     font-size: 13px;
     transition: border-color .2s ease, background .2s ease, transform .15s ease;
 }

 .field textarea {
     resize: vertical;
     min-height: 130px;
 }

 .field input::placeholder,
 .field textarea::placeholder {
     color: rgba(169, 180, 204, .75);
 }

 .field input:focus,
 .field select:focus,
 .field textarea:focus {
     border-color: rgba(216, 177, 90, .35);
     background: rgba(255, 255, 255, .03);
 }

 .consent .check {
     display: flex;
     gap: 10px;
     align-items: flex-start;
     padding: 12px 12px;
     border-radius: 14px;
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .03);
     color: rgba(233, 240, 255, .70);
     font-size: 12px;
 }

 .consent input {
     margin-top: 3px;
     accent-color: #d8b15a;
 }

 .formActions {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 12px;
     flex-wrap: wrap;
     margin-top: 4px;
 }

 .formActions .btn {
     min-width: 220px;
 }

 .finePrint {
     margin: 0;
     color: rgba(233, 240, 255, .62);
     font-size: 12px;
     display: flex;
     align-items: center;
     gap: 8px;
 }

 .finePrint i {
     color: rgba(35, 196, 131, .95);
 }

 
 .contactAside {
     display: flex;
     flex-direction: column;
     gap: 12px;
 }

 .asideCard {
     border-radius: var(--radius);
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .03);
     box-shadow: var(--shadow-soft);
     padding: 16px;
 }

 .asideCard h3 {
     margin: 0 0 10px;
     font-size: 14px;
     color: rgba(233, 240, 255, .92);
 }

 .asideCard h3 i {
     color: rgba(58, 163, 255, .95);
     margin-right: 8px;
 }

 .asideList {
     list-style: none;
     padding: 0;
     margin: 0;
     display: grid;
     gap: 10px;
     color: var(--muted);
     font-size: 13px;
 }

 .asideList li {
     display: flex;
     gap: 10px;
     align-items: flex-start;
     padding: 10px 12px;
     border-radius: 14px;
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(255, 255, 255, .04);
 }

 .asideList i {
     color: rgba(35, 196, 131, .95);
     margin-top: 2px;
 }

 .miniLegal {
     margin-top: 12px;
     padding: 12px 12px;
     border-radius: 14px;
     border: 1px solid rgba(255, 255, 255, .10);
     background: rgba(0, 0, 0, .12);
     color: rgba(233, 240, 255, .70);
     font-size: 12px;
     display: flex;
     gap: 10px;
     align-items: flex-start;
 }

 .miniLegal i {
     color: rgba(242, 211, 138, .95);
     margin-top: 2px;
 }

 
 @media (max-width: 980px) {
     .contactGrid {
         grid-template-columns: 1fr;
     }
 }

 @media (max-width: 520px) {
     .formGrid {
         grid-template-columns: 1fr;
     }

     .formActions .btn {
         width: 100%;
         min-width: auto;
     }
 }
.privacyPolicy{
  padding: 78px 0;
}

.privacyCard{
  border-radius: calc(var(--radius) + 6px);
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  box-shadow: var(--shadow);
  padding: 18px;
  overflow: hidden;
}

.privacyMeta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  color: rgba(233,240,255,.72);
  font-size: 12px;
}

.metaPill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  white-space: nowrap;
}
.metaPill i{color: rgba(242,211,138,.95);}

.privacyToc{
  margin-top: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  padding: 14px;
  box-shadow: var(--shadow-soft);
}
.privacyToc h3{
  margin: 0 0 10px;
  font-size: 14px;
  color: rgba(233,240,255,.92);
}
.privacyToc h3 i{color: rgba(58,163,255,.95); margin-right: 8px;}

.tocGrid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.tocGrid a{
  display:flex;
  align-items:center;
  gap:10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size: 13px;
  transition: transform .15s ease, border-color .2s ease, background .2s ease, color .2s ease;
}
.tocGrid a i{color: rgba(242,211,138,.95);}
.tocGrid a:hover{
  transform: translateY(-2px);
  border-color: rgba(216,177,90,.22);
  background: rgba(255,255,255,.05);
  color: rgba(233,240,255,.90);
}

.privacyContent{
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.ppBlock{
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.ppBlock:last-child{border-bottom:0}

.ppBlock h3{
  margin: 0 0 10px;
  font-size: 16px;
  letter-spacing: -.2px;
  color: rgba(233,240,255,.94);
  display:flex;
  align-items:center;
  gap:10px;
}
.ppBlock h3 i{color: rgba(242,211,138,.95);}

.ppBlock p{
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 13px;
  max-width: 95ch;
}
.ppBlock p:last-child{margin-bottom:0}

.ppList{
  margin: 10px 0 10px;
  padding: 0;
  list-style: none;
  display:grid;
  gap: 10px;
}
.ppList li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size: 13px;
}
.ppList i{color: rgba(35,196,131,.95); margin-top: 2px;}

.ppNote{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  color: rgba(233,240,255,.70) !important;
  font-size: 12px !important;
}
.ppNote i{color: rgba(58,163,255,.95); margin-top: 2px;}
.ppNote strong{color: rgba(233,240,255,.90);}

.ppCards{
  margin-top: 10px;
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.ppMiniCard{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
  box-shadow: var(--shadow-soft);
}
.ppMiniCard i{
  color: rgba(58,163,255,.95);
  margin-top: 2px;
}
.ppMiniCard strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.ppMiniCard span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}

.ppTableWrap{
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  overflow:auto;
  box-shadow: var(--shadow-soft);
}
.ppTable{
  width:100%;
  border-collapse: collapse;
  min-width: 720px;
}
.ppTable thead th{
  text-align:left;
  font-size: 12px;
  color: rgba(233,240,255,.78);
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.10);
  padding: 12px 14px;
  position: sticky;
  top: 0;
}
.ppTable tbody td{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: var(--muted);
  font-size: 13px;
  vertical-align: top;
}
.ppTable tbody tr:hover td{
  background: rgba(255,255,255,.03);
  color: rgba(233,240,255,.85);
}

.ppTag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  white-space: nowrap;
}
.ppTag.ok{
  border: 1px solid rgba(35,196,131,.25);
  background: rgba(35,196,131,.10);
  color: rgba(233,240,255,.86);
}
.ppTag.info{
  border: 1px solid rgba(58,163,255,.25);
  background: rgba(58,163,255,.10);
  color: rgba(233,240,255,.86);
}
.ppTag.warn{
  border: 1px solid rgba(216,177,90,.25);
  background: rgba(216,177,90,.10);
  color: rgba(233,240,255,.86);
}
.ppTag i{opacity:.95}

.ppCallout{
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(216,177,90,.22);
  background: linear-gradient(135deg, rgba(216,177,90,.12), rgba(58,163,255,.08));
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
}
.ppCallout i{color: rgba(242,211,138,.95); margin-top: 2px;}
.ppCallout strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.ppCallout span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}

.privacyBottom{
  display:flex;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}


@media (max-width: 980px){
  .tocGrid{grid-template-columns: 1fr;}
  .ppCards{grid-template-columns: 1fr;}
}
@media (max-width: 520px){
  .privacyBottom .btn{width:100%;}
}
.termsPage{
  padding: 78px 0;
}

.termsCard{
  border-radius: calc(var(--radius) + 6px);
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  box-shadow: var(--shadow);
  padding: 18px;
  overflow: hidden;
}

.termsMeta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  color: rgba(233,240,255,.72);
  font-size: 12px;
}

.termsToc{
  margin-top: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  padding: 14px;
  box-shadow: var(--shadow-soft);
}
.termsToc h3{
  margin: 0 0 10px;
  font-size: 14px;
  color: rgba(233,240,255,.92);
}
.termsToc h3 i{color: rgba(58,163,255,.95); margin-right: 8px;}

.termsContent{
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.tcBlock{
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.tcBlock:last-child{border-bottom:0}

.tcBlock h3{
  margin: 0 0 10px;
  font-size: 16px;
  letter-spacing: -.2px;
  color: rgba(233,240,255,.94);
  display:flex;
  align-items:center;
  gap:10px;
}
.tcBlock h3 i{color: rgba(242,211,138,.95);}

.tcBlock p{
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 13px;
  max-width: 95ch;
}
.tcBlock p:last-child{margin-bottom:0}

.tcList{
  margin: 10px 0 10px;
  padding: 0;
  list-style: none;
  display:grid;
  gap: 10px;
}
.tcList li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size: 13px;
}
.tcList i{margin-top: 2px;}
.tcList .fa-ban{color: rgba(216,177,90,.95);}
.tcList .fa-check{color: rgba(35,196,131,.95);}

.tcNote{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  color: rgba(233,240,255,.70) !important;
  font-size: 12px !important;
}
.tcNote i{color: rgba(58,163,255,.95); margin-top: 2px;}

.tcCallout{
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(216,177,90,.22);
  background: linear-gradient(135deg, rgba(216,177,90,.12), rgba(58,163,255,.08));
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
}
.tcCallout i{color: rgba(242,211,138,.95); margin-top: 2px;}
.tcCallout strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.tcCallout span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}

.tcPillRow{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: 10px;
}
.tcPill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  color: var(--muted);
  font-size: 13px;
}
.tcPill i{color: rgba(35,196,131,.95);}

.termsBottom{
  display:flex;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}


@media (max-width: 980px){
  .tocGrid{grid-template-columns: 1fr;}
}
@media (max-width: 520px){
  .termsBottom .btn{width:100%;}
}
.cookiesPage{
  padding: 78px 0;
}

.cookiesCard{
  border-radius: calc(var(--radius) + 6px);
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  box-shadow: var(--shadow);
  padding: 18px;
  overflow: hidden;
}

.cookiesMeta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  color: rgba(233,240,255,.72);
  font-size: 12px;
}


.cookiesToc{
  margin-top: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  padding: 14px;
  box-shadow: var(--shadow-soft);
}
.cookiesToc h3{
  margin: 0 0 10px;
  font-size: 14px;
  color: rgba(233,240,255,.92);
}
.cookiesToc h3 i{color: rgba(58,163,255,.95); margin-right: 8px;}

.cookiesContent{
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.pcBlock{
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.pcBlock:last-child{border-bottom:0}

.pcBlock h3{
  margin: 0 0 10px;
  font-size: 16px;
  letter-spacing: -.2px;
  color: rgba(233,240,255,.94);
  display:flex;
  align-items:center;
  gap:10px;
}
.pcBlock h3 i{color: rgba(242,211,138,.95);}

.pcBlock p{
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 13px;
  max-width: 95ch;
}
.pcBlock p:last-child{margin-bottom:0}

.pcList{
  margin: 10px 0 10px;
  padding: 0;
  list-style: none;
  display:grid;
  gap: 10px;
}
.pcList li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size: 13px;
}
.pcList i{color: rgba(35,196,131,.95); margin-top: 2px;}

.pcNote{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  color: rgba(233,240,255,.70) !important;
  font-size: 12px !important;
}
.pcNote i{color: rgba(58,163,255,.95); margin-top: 2px;}

.pcTableWrap{
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  overflow:auto;
  box-shadow: var(--shadow-soft);
}
.pcTable{
  width:100%;
  border-collapse: collapse;
  min-width: 760px;
}
.pcTable thead th{
  text-align:left;
  font-size: 12px;
  color: rgba(233,240,255,.78);
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.10);
  padding: 12px 14px;
  position: sticky;
  top: 0;
}
.pcTable tbody td{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: var(--muted);
  font-size: 13px;
  vertical-align: top;
}
.pcTable tbody tr:hover td{
  background: rgba(255,255,255,.03);
  color: rgba(233,240,255,.85);
}

.pcTag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  white-space: nowrap;
}
.pcTag.ok{
  border: 1px solid rgba(35,196,131,.25);
  background: rgba(35,196,131,.10);
  color: rgba(233,240,255,.86);
}
.pcTag.info{
  border: 1px solid rgba(58,163,255,.25);
  background: rgba(58,163,255,.10);
  color: rgba(233,240,255,.86);
}
.pcTag.warn{
  border: 1px solid rgba(216,177,90,.25);
  background: rgba(216,177,90,.10);
  color: rgba(233,240,255,.86);
}
.pcTag i{opacity:.95}

.pcCallout{
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(216,177,90,.22);
  background: linear-gradient(135deg, rgba(216,177,90,.12), rgba(58,163,255,.08));
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
}
.pcCallout i{color: rgba(242,211,138,.95); margin-top: 2px;}
.pcCallout strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.pcCallout span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}

.cookiesBottom{
  display:flex;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}


@media (max-width: 980px){
  .tocGrid{grid-template-columns: 1fr;}
}
@media (max-width: 520px){
  .cookiesBottom .btn{width:100%;}
}
.rgPage{
  padding: 78px 0;
}

.rgCard{
  border-radius: calc(var(--radius) + 6px);
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  box-shadow: var(--shadow);
  padding: 18px;
  overflow: hidden;
}

.rgMeta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  color: rgba(233,240,255,.72);
  font-size: 12px;
}


.rgToc{
  margin-top: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  padding: 14px;
  box-shadow: var(--shadow-soft);
}
.rgToc h3{
  margin: 0 0 10px;
  font-size: 14px;
  color: rgba(233,240,255,.92);
}
.rgToc h3 i{color: rgba(58,163,255,.95); margin-right: 8px;}

.rgContent{
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.rgBlock{
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.rgBlock:last-child{border-bottom:0}

.rgBlock h3{
  margin: 0 0 10px;
  font-size: 16px;
  letter-spacing: -.2px;
  color: rgba(233,240,255,.94);
  display:flex;
  align-items:center;
  gap:10px;
}
.rgBlock h3 i{color: rgba(242,211,138,.95);}

.rgBlock p{
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 13px;
  max-width: 95ch;
}
.rgBlock p:last-child{margin-bottom:0}

.rgList{
  margin: 10px 0 10px;
  padding: 0;
  list-style: none;
  display:grid;
  gap: 10px;
}
.rgList li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size: 13px;
}
.rgList i{color: rgba(35,196,131,.95); margin-top: 2px;}

.rgNote{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  color: rgba(233,240,255,.70) !important;
  font-size: 12px !important;
}
.rgNote i{color: rgba(58,163,255,.95); margin-top: 2px;}

.rgCallout{
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(216,177,90,.22);
  background: linear-gradient(135deg, rgba(216,177,90,.12), rgba(58,163,255,.08));
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
}
.rgCallout i{color: rgba(242,211,138,.95); margin-top: 2px;}
.rgCallout strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.rgCallout span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}
.rgCallout.alt{
  border-color: rgba(58,163,255,.22);
  background: linear-gradient(135deg, rgba(58,163,255,.12), rgba(35,196,131,.07));
}
.rgCallout.alt i{color: rgba(58,163,255,.95);}

.rgPillRow{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: 10px;
}
.rgPill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  color: var(--muted);
  font-size: 13px;
}
.rgPill i{color: rgba(35,196,131,.95);}

.rgGrid2{
  margin-top: 10px;
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.rgMiniCard{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
  box-shadow: var(--shadow-soft);
}
.rgMiniCard i{color: rgba(58,163,255,.95); margin-top: 2px;}
.rgMiniCard strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.rgMiniCard span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}

.rgTools{
  margin-top: 10px;
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.rgTool{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
  box-shadow: var(--shadow-soft);
}
.rgTool i{color: rgba(242,211,138,.95); margin-top: 2px;}
.rgTool strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.rgTool span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}

.rgHelpBox{
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.12);
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
}
.rgHelpBox i{color: rgba(35,196,131,.95); margin-top: 2px;}
.rgHelpBox strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.rgHelpBox span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}

.rgSummary{
  margin-top: 10px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.rgSummaryItem{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  padding: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
  box-shadow: var(--shadow-soft);
}
.rgSummaryItem i{color: rgba(35,196,131,.95); margin-top: 2px;}
.rgSummaryItem strong{display:block; font-size: 13px; color: rgba(233,240,255,.92);}
.rgSummaryItem span{display:block; margin-top: 2px; font-size: 12px; color: var(--muted);}

.rgBottom{
  display:flex;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
}


@media (max-width: 980px){
  .tocGrid{grid-template-columns: 1fr;}
  .rgGrid2{grid-template-columns: 1fr;}
  .rgTools{grid-template-columns: 1fr;}
  .rgSummary{grid-template-columns: 1fr;}
}
@media (max-width: 520px){
  .rgBottom .btn{width:100%;}
}
.cookieBanner{
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 9998;
}

.cookieInner{
  width: min(980px, 100%);
  margin: 0 auto;
  border-radius: calc(var(--radius) + 8px);
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(15,23,36,.92);
  backdrop-filter: blur(10px);
  box-shadow: var(--shadow);
  padding: 14px;
}

.cookieHead{
  display:flex;
  gap: 12px;
  align-items:flex-start;
}

.cookieIcon{
  width:44px; height:44px;
  border-radius: 16px;
  display:grid; place-items:center;
  border: 1px solid rgba(216,177,90,.22);
  background: linear-gradient(135deg, rgba(216,177,90,.16), rgba(58,163,255,.08));
  flex: 0 0 auto;
}
.cookieIcon i{color: rgba(242,211,138,.98);}

.cookieHead strong{
  display:block;
  font-size: 14px;
  letter-spacing: -.2px;
}
.cookieHead p{
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  max-width: 92ch;
}

.cookieActions{
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
  justify-content:flex-end;
  margin-top: 12px;
}

.cookiePanel{
  margin-top: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.14);
  padding: 12px;
}

.cookieGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.cookieOption{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  padding: 12px;
}
.cookieOption p{
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.optTop{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
}
.optTop strong{
  display:flex;
  align-items:center;
  gap: 10px;
  font-size: 13px;
}
.optTop strong i{color: rgba(58,163,255,.95);}

.optTag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: rgba(233,240,255,.75);
  font-size: 12px;
  white-space:nowrap;
}
.optTag.locked{
  border-color: rgba(216,177,90,.20);
  background: rgba(216,177,90,.10);
}


.switch{position: relative; width: 44px; height: 26px; display:inline-block; flex: 0 0 auto;}
.switch input{opacity:0; width:0; height:0;}
.slider{
  position:absolute; inset:0;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  transition: .2s;
}
.slider:before{
  content:"";
  position:absolute;
  width: 20px; height: 20px;
  left: 3px; top: 2px;
  border-radius: 999px;
  background: rgba(233,240,255,.85);
  transition: .2s;
}
.switch input:checked + .slider{
  background: rgba(35,196,131,.18);
  border-color: rgba(35,196,131,.35);
}
.switch input:checked + .slider:before{
  transform: translateX(18px);
  background: rgba(233,240,255,.92);
}

.cookieFooter{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
  margin-top: 12px;
}

.cookieLink{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  color: rgba(242,211,138,.95);
  font-weight: 600;
  font-size: 13px;
}
.cookieLink:hover{text-decoration: underline;}

.cookieFine{
  margin: 12px 0 0;
  color: rgba(233,240,255,.60);
  font-size: 12px;
  display:flex;
  align-items:flex-start;
  gap: 10px;
}
.cookieFine i{color: rgba(58,163,255,.95); margin-top: 2px;}

.cookieBanner.hide{
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease;
}


.ageGate{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display:grid;
  place-items:center;
  padding: 20px;
  background:
    radial-gradient(900px 520px at 20% 15%, rgba(216,177,90,.22), transparent 60%),
    radial-gradient(900px 520px at 80% 10%, rgba(58,163,255,.18), transparent 60%),
    rgba(0,0,0,.72);
  backdrop-filter: blur(6px);
}

.ageInner{
  width: min(720px, 100%);
  border-radius: calc(var(--radius) + 10px);
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(15,23,36,.92);
  box-shadow: var(--shadow);
  padding: 18px;
  text-align:left;
}

.ageBadge{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(216,177,90,.28);
  background: rgba(216,177,90,.10);
  color: rgba(233,240,255,.92);
  font-weight: 800;
  letter-spacing: .2px;
}
.ageBadge i{color: rgba(242,211,138,.98);}
.ageBadge span{font-size: 13px;}

.ageInner h3{
  margin: 12px 0 6px;
  font-size: 20px;
  letter-spacing: -.3px;
}
.ageInner p{
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  max-width: 85ch;
}

.ageActions{
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
  margin-top: 14px;
}

.ageLinks{
  display:flex;
  gap: 14px;
  flex-wrap:wrap;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.ageGate.hide{
  opacity: 0;
  transform: scale(.985);
  transition: opacity .2s ease, transform .2s ease;
}


@media (max-width: 520px){
  .cookieActions .btn{width:100%;}
  .cookieGrid{grid-template-columns: 1fr;}
  .cookieFooter .btn{width:100%;}
  .ageActions .btn{width:100%;}
}