@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:opsz,wght@8..60,400;8..60,600;8..60,700&family=IBM+Plex+Sans:wght@400;500;600&display=swap');

/* rikonda.co.nz — paper-ink-teal. Single narrow column, hairline rules, no cards-on-cards. */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body.rkn {
  margin: 0;
  padding: 0;
  background: #F4F1EA;
  color: #15202E;
  font-family: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  font-size: 17px;
  line-height: 1.62;
  overflow-x: hidden;
}

body.rkn img,
body.rkn svg,
body.rkn video,
body.rkn iframe {
  max-width: 100%;
  height: auto;
}

.rkn-wrap {
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  padding: 0 18px;
}

/* ---------- typography ---------- */

.rkn h1, .rkn h2, .rkn h3, .rkn h4 {
  font-family: 'Source Serif 4', Georgia, 'Times New Roman', serif;
  color: #15202E;
  font-weight: 600;
  line-height: 1.22;
  margin: 0 0 .5em;
  overflow-wrap: break-word;
}

.rkn h1 { font-size: 1.95rem; letter-spacing: -.01em; }
.rkn h2 {
  font-size: 1.45rem;
  margin-top: 2.2em;
  padding-top: .7em;
  border-top: 1px solid #D6CFC2;
}
.rkn h3 { font-size: 1.15rem; margin-top: 1.7em; }

.rkn p {
  margin: 0 0 1.05em;
  overflow-wrap: break-word;
}

.rkn a {
  color: #0B5A4B;
  text-decoration: underline;
  text-underline-offset: 2px;
  overflow-wrap: break-word;
}
.rkn a:hover, .rkn a:focus { text-decoration-thickness: 2px; }
.rkn a:focus-visible { outline: 2px solid #0B5A4B; outline-offset: 2px; }

.rkn strong { font-weight: 600; }
.rkn small { font-size: .875rem; color: #4B5668; }

.rkn ul, .rkn ol {
  margin: 0 0 1.15em;
  padding-left: 1.15em;
}
.rkn li { margin-bottom: .45em; }
.rkn ul li::marker { color: #0B5A4B; }
.rkn ol li::marker { color: #0B5A4B; font-weight: 600; }

.rkn figure { margin: 1.4em 0; }
.rkn figcaption {
  font-size: .875rem;
  color: #4B5668;
  margin-top: .5em;
  border-left: 2px solid #D6CFC2;
  padding-left: .7em;
}

.rkn aside {
  margin: 1.5em 0;
  padding: .9em 1em;
  background: #ECF2EF;
  border-left: 3px solid #0B5A4B;
  border-radius: 0 4px 4px 0;
  color: #15202E;
}
.rkn aside p:last-child { margin-bottom: 0; }

.rkn details {
  border-bottom: 1px solid #D6CFC2;
  padding: .85em 0;
}
.rkn details summary {
  cursor: pointer;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.06rem;
  font-weight: 600;
  color: #15202E;
  list-style: none;
  position: relative;
  padding-right: 1.6em;
}
.rkn details summary::-webkit-details-marker { display: none; }
.rkn details summary::after {
  content: "+";
  position: absolute;
  right: 0;
  top: 0;
  color: #0B5A4B;
  font-weight: 700;
}
.rkn details[open] summary::after { content: "\2212"; }
.rkn details summary:focus-visible { outline: 2px solid #0B5A4B; outline-offset: 2px; }
.rkn details > *:not(summary) { margin-top: .7em; }
.rkn details p:last-child { margin-bottom: 0; }

/* ---------- header ---------- */

.rkn-head {
  background: #F4F1EA;
  border-bottom: 3px solid #0B5A4B;
}
.rkn-head-in {
  display: flex;
  flex-direction: column;
  gap: .5em;
  padding-top: .9em;
  padding-bottom: .8em;
}
.rkn-brandname {
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.2rem;
  font-weight: 700;
  color: #15202E;
  text-decoration: none;
  letter-spacing: .01em;
}
.rkn-brandname:hover { text-decoration: underline; }
.rkn .rkn-nav ul {
  display: flex;
  flex-wrap: wrap;
  gap: .55em 1.1em;
  list-style: none;
  margin: 0;
  padding: 0;
}
.rkn .rkn-nav li { margin: 0; }
.rkn-nav a {
  font-size: .9rem;
  font-weight: 500;
  color: #15202E;
  text-decoration: none;
  border-bottom: 1px solid #D6CFC2;
  padding-bottom: 1px;
}
.rkn-nav a:hover { color: #0B5A4B; border-bottom-color: #0B5A4B; }

/* ---------- hero ---------- */

.rkn-hero { padding: 1.6em 0 .4em; }
.rkn-kicker {
  font-size: .76rem;
  font-weight: 600;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #0B5A4B;
  margin: 0 0 .7em;
}
.rkn-hero h1 { margin-bottom: .45em; }
.rkn-updated {
  font-size: .85rem;
  color: #4B5668;
  margin: 0 0 1.1em;
}
.rkn-hero-img {
  margin: 0 0 1.2em;
  border: 1px solid #D6CFC2;
  border-radius: 4px;
  overflow: hidden;
  background: #FFFFFF;
}
.rkn-hero-img img { display: block; width: 100%; }

/* ---------- toc ---------- */

.rkn nav.rkn-toc {
  background: #FFFFFF;
  border: 1px solid #D6CFC2;
  border-left: 3px solid #0B5A4B;
  border-radius: 0 4px 4px 0;
  padding: 1em 1.1em;
  margin: 1.6em 0;
}
.rkn-toc-title {
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: .95rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #15202E;
  margin: 0 0 .6em;
}
.rkn .rkn-toc ol {
  counter-reset: rkntoc;
  list-style: none;
  margin: 0;
  padding: 0;
}
.rkn .rkn-toc li {
  counter-increment: rkntoc;
  position: relative;
  padding-left: 2.1em;
  margin-bottom: .4em;
  font-size: .95rem;
}
.rkn-toc li::before {
  content: counter(rkntoc, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 0;
  font-size: .8rem;
  font-weight: 600;
  color: #4B5668;
  font-variant-numeric: tabular-nums;
}
.rkn-toc a { color: #15202E; text-decoration: none; border-bottom: 1px solid #D6CFC2; }
.rkn-toc a:hover { color: #0B5A4B; border-bottom-color: #0B5A4B; }

/* ---------- section icon ---------- */

.rkn-icon {
  display: block;
  margin: 0 auto 1em;
  width: 96px;
  height: 96px;
  border: 1px solid #D6CFC2;
  border-radius: 4px;
  background: #FFFFFF;
  padding: 6px;
}

/* ---------- note ---------- */

.rkn .rkn-note {
  margin: 1.5em 0;
  padding: .9em 1.05em;
  background: #ECF2EF;
  border-left: 3px solid #0B5A4B;
  border-radius: 0 4px 4px 0;
  font-size: .96rem;
  color: #15202E;
}
.rkn-note p { margin-bottom: .6em; }
.rkn-note p:last-child { margin-bottom: 0; }
.rkn-note-label {
  display: block;
  font-size: .74rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #0B5A4B;
  margin-bottom: .35em;
}

/* ---------- steps ---------- */

.rkn ol.rkn-steps, .rkn ul.rkn-steps {
  counter-reset: rknstep;
  list-style: none;
  margin: 1.4em 0;
  padding: 0;
}
.rkn .rkn-steps li {
  counter-increment: rknstep;
  position: relative;
  padding: 0 0 .9em 2.9em;
  margin: 0 0 .9em;
  border-bottom: 1px solid #D6CFC2;
}
.rkn .rkn-steps li:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.rkn .rkn-steps li::before {
  content: counter(rknstep);
  position: absolute;
  left: 0;
  top: 0;
  width: 2em;
  height: 2em;
  line-height: 2em;
  text-align: center;
  border-radius: 50%;
  background: #0B5A4B;
  color: #FFFFFF;
  font-size: .85rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

/* ---------- brand list ---------- */

.rkn ol.rkn-brands, .rkn ul.rkn-brands {
  list-style: none;
  margin: 1.6em 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.rkn li.rkn-brand {
  background: #FFFFFF;
  border: 1px solid #D6CFC2;
  border-radius: 4px;
  padding: 1em;
  margin: 0;
  position: relative;
}
.rkn-brand-top {
  display: flex;
  align-items: flex-start;
  gap: .85em;
  margin-bottom: .75em;
}
.rkn-pos {
  flex: 0 0 auto;
  width: 2.1em;
  height: 2.1em;
  line-height: 2.1em;
  text-align: center;
  border-radius: 50%;
  background: #0B5A4B;
  color: #FFFFFF;
  font-size: .85rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.rkn-logo {
  flex: 0 0 auto;
  width: 96px;
  height: 96px;
  object-fit: contain;
  background: #F4F1EA;
  border: 1px solid #D6CFC2;
  border-radius: 4px;
  padding: 5px;
}
.rkn-brand-id { min-width: 0; flex: 1 1 auto; }
.rkn-brand-name {
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.15rem;
  font-weight: 700;
  color: #15202E;
  margin: 0 0 .3em;
  overflow-wrap: break-word;
}
.rkn-rating {
  display: inline-block;
  background: #F6EBD8;
  color: #6E4106;
  border-radius: 3px;
  padding: .12em .5em;
  font-size: .82rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.rkn-bonus {
  margin: 0 0 .75em;
  padding: .55em .7em;
  background: #ECF2EF;
  border-left: 3px solid #0B5A4B;
  border-radius: 0 3px 3px 0;
  font-size: .95rem;
  color: #15202E;
}
.rkn ul.rkn-facts {
  list-style: none;
  margin: 0 0 .7em;
  padding: 0;
  font-size: .93rem;
}
.rkn .rkn-facts li {
  position: relative;
  padding-left: 1.2em;
  margin-bottom: .35em;
  color: #15202E;
}
.rkn .rkn-facts li::before {
  content: "\2014";
  position: absolute;
  left: 0;
  top: 0;
  color: #0B5A4B;
  font-weight: 600;
}
.rkn ul.rkn-pay {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: .35em;
  margin: 0;
  padding: 0;
}
.rkn .rkn-pay li {
  margin: 0;
  font-size: .78rem;
  font-weight: 500;
  color: #15202E;
  background: #F4F1EA;
  border: 1px solid #D6CFC2;
  border-radius: 3px;
  padding: .16em .5em;
}

/* ---------- table ---------- */

.rkn .rkn-tablewrap {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #D6CFC2;
  border-radius: 4px;
  background: #FFFFFF;
  margin: 1.5em 0;
}
.rkn table {
  border-collapse: collapse;
  width: 100%;
  min-width: 480px;
  font-size: .92rem;
  background: #FFFFFF;
}
.rkn caption {
  caption-side: top;
  text-align: left;
  font-size: .85rem;
  color: #4B5668;
  padding: .7em .8em .5em;
}
.rkn th, .rkn td {
  padding: .6em .75em;
  text-align: left;
  border-bottom: 1px solid #D6CFC2;
  vertical-align: top;
  color: #15202E;
}
.rkn thead th {
  background: #0B5A4B;
  color: #FFFFFF;
  font-family: 'IBM Plex Sans', Arial, sans-serif;
  font-weight: 600;
  font-size: .8rem;
  letter-spacing: .05em;
  text-transform: uppercase;
  border-bottom: 0;
  white-space: nowrap;
}
.rkn tbody tr:nth-child(even) td { background: #FAF8F3; }
.rkn tbody tr:last-child td { border-bottom: 0; }
.rkn-scrollhint {
  font-size: .8rem;
  color: #4B5668;
  margin: -1.1em 0 1.5em;
}

/* ---------- faq ---------- */

.rkn .rkn-faq {
  border-top: 1px solid #D6CFC2;
  margin: 1.5em 0;
}
.rkn-faq details { border-bottom: 1px solid #D6CFC2; }
.rkn-faq-a { font-size: .97rem; color: #15202E; }
.rkn-faq-a p:last-child { margin-bottom: 0; }

/* ---------- responsible gambling ---------- */
/* .rkn aside задаёт светлый фон — RG-блок перебиваем по специфичности,
   иначе светлый текст ложится на светлую подложку (урок 133). */

.rkn aside.rkn-rg {
  background: #141D29;
  color: #EDEAE2;
  border-left: 3px solid #7FD8C1;
  border-radius: 4px;
  padding: 1.1em 1.15em;
  margin: 1.8em 0;
}
.rkn aside.rkn-rg .rkn-rg-title {
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.05rem;
  font-weight: 700;
  color: #EDEAE2;
  margin: 0 0 .6em;
}
.rkn aside.rkn-rg p { color: #EDEAE2; font-size: .93rem; }
.rkn aside.rkn-rg ul { list-style: none; margin: 0; padding: 0; }
.rkn aside.rkn-rg li {
  color: #EDEAE2;
  font-size: .93rem;
  margin-bottom: .55em;
  padding-bottom: .55em;
  border-bottom: 1px solid #3A4654;
}
.rkn aside.rkn-rg li:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.rkn aside.rkn-rg a { color: #7FD8C1; text-decoration: underline; }
.rkn aside.rkn-rg a:focus-visible { outline: 2px solid #7FD8C1; outline-offset: 2px; }
.rkn aside.rkn-rg .rkn-rg-phone { color: #AFBBC7; }
.rkn .rkn-rg-phone { display: block; color: #AFBBC7; font-size: .85rem; }
.rkn .rkn-age {
  display: inline-block;
  border: 1px solid #7FD8C1;
  border-radius: 3px;
  color: #7FD8C1;
  font-size: .78rem;
  font-weight: 600;
  padding: .1em .45em;
  margin-right: .4em;
}

/* ---------- footer ---------- */

.rkn-foot {
  background: #141D29;
  color: #EDEAE2;
  margin-top: 2.5em;
  padding: 1.8em 0;
}
.rkn-foot p { color: #EDEAE2; font-size: .88rem; }
.rkn-foot-name {
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 1.1rem;
  font-weight: 700;
  color: #EDEAE2;
  margin: 0 0 .6em;
}
.rkn-foot a { color: #7FD8C1; }
.rkn ul.rkn-foot-nav {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: .5em 1.1em;
  margin: 0 0 1.1em;
  padding: 0;
}
.rkn .rkn-foot-nav li { margin: 0; font-size: .88rem; }
.rkn ul.rkn-foot-rg {
  list-style: none;
  margin: 0 0 1.1em;
  padding: 0;
  border-top: 1px solid #3A4654;
  padding-top: .9em;
}
.rkn .rkn-foot-rg li { font-size: .85rem; color: #EDEAE2; margin-bottom: .45em; }
.rkn-foot-legal {
  border-top: 1px solid #3A4654;
  padding-top: .9em;
  font-size: .82rem;
  color: #AFBBC7;
}
.rkn-foot-legal p { color: #AFBBC7; font-size: .82rem; margin-bottom: .4em; }

/* ---------- desktop ---------- */

@media (min-width: 600px) {
  body.rkn { font-size: 18px; }
  .rkn h1 { font-size: 2.4rem; }
  .rkn h2 { font-size: 1.65rem; }
  .rkn-icon {
    float: right;
    margin: .2em 0 .8em 1.2em;
    width: 120px;
    height: 120px;
  }
  .rkn-brand-top { align-items: center; }
}

@media (min-width: 860px) {
  .rkn-wrap { padding: 0 28px; max-width: 820px; }
  .rkn-head-in {
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    gap: 1.5em;
    padding-top: 1.1em;
    padding-bottom: 1em;
  }
  .rkn-brandname { font-size: 1.32rem; }
  .rkn ol.rkn-brands, .rkn ul.rkn-brands { grid-template-columns: 1fr 1fr; gap: 18px; }
  .rkn table { min-width: 0; }
  .rkn-scrollhint { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .rkn * { animation: none !important; transition: none !important; }
}
