@font-face{font-family:Montserrat;src:url('assets/medium.ttf') format('truetype');font-weight:400 500;font-display:swap}@font-face{font-family:Montserrat;src:url('assets/bold.ttf') format('truetype');font-weight:600 900;font-display:swap}
:root{color-scheme:dark;--bg:#080f19;--panel:#101b27;--ink:#f7f4ec;--muted:#aeb7c5;--gold:#e8be72;--line:rgba(230,198,141,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}img{max-width:100%;height:auto;display:block}button{font:inherit}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.skip{position:fixed;top:-100px;left:20px;background:var(--gold);color:var(--bg);padding:10px;z-index:10}.skip:focus{top:10px}.header{position:absolute;top:0;left:0;right:0;z-index:3;border-bottom:1px solid rgba(255,255,255,.1)}.nav{min-height:100px;display:flex;align-items:center;gap:40px}.brand{margin-right:auto}.brand img{width:106px}.nav-links{display:flex;gap:32px;font-size:14px}.nav-links a:hover,.footer a:hover{color:var(--gold)}.languages{display:flex;align-items:center;gap:5px;font-size:13px;border:1px solid #ffffff26;border-radius:30px;padding:4px}.languages a{padding:6px 12px;border-radius:25px}.languages a[aria-current=page]{background:var(--gold);color:#17202b}.hero{position:relative;isolation:isolate;overflow:hidden;padding:178px 0 68px;min-height:790px;background:#0b182b}.hero:before{content:'';position:absolute;inset:0;z-index:-2;background:url('assets/waterfront.jpg') center 56%/cover no-repeat;opacity:.65}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,14,25,.96),rgba(6,14,25,.65) 43%,rgba(6,14,25,.12)),linear-gradient(0deg,var(--bg),transparent 45%)}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:20px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:700;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';height:1px;width:30px;background:var(--gold)}h1{font-size:clamp(44px,4.9vw,68px);line-height:1.12;letter-spacing:-.065em;margin:25px 0;font-weight:700}h1 em,h2 em{font-style:normal;color:var(--gold)}.lead{color:#c2cad6;max-width:480px;font-size:17px;line-height:1.9}.stores{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.store{display:flex;align-items:center;gap:12px;min-width:186px;padding:11px 19px;border:1px solid #ffffff40;border-radius:9px;background:#090f19d9;transition:transform .2s,border-color .2s}.store:hover{transform:translateY(-3px);border-color:var(--gold)}.store svg{width:28px;height:32px;flex:none;fill:currentColor}.store span{display:block;font-size:10px;letter-spacing:.04em;line-height:1.5}.store strong{display:block;font-size:19px;line-height:1.4;letter-spacing:-.03em}.availability{font-size:12px;color:var(--muted);margin-top:15px}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-height:440px}.hero-logo{width:520px;filter:drop-shadow(0 24px 35px #0009);transform:rotate(-5deg);animation:arrive 1s ease-out both}.floating-tile{position:absolute;width:65px;filter:drop-shadow(0 12px 14px #0008)}.tile-one{right:0;top:-18px;transform:rotate(18deg)}.tile-two{left:16px;bottom:0;transform:rotate(-20deg);width:57px}.hero-caption{text-align:center;position:absolute;bottom:-25px;left:0;right:0;font-size:11px;letter-spacing:.25em;color:#d7c6a6}.hero-bottom{margin-top:80px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted)}.hero-bottom a{color:var(--ink);display:flex;gap:18px;align-items:center}.hero-bottom a span{font-size:22px;color:var(--gold)}.qualities{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);padding-block:26px;gap:24px}.quality{display:flex;align-items:center;justify-content:center;gap:13px;font-size:13px}.quality+.quality{border-left:1px solid var(--line)}.quality b{font-size:20px;color:var(--gold);font-weight:400}.section{padding-block:100px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}h2{font-size:clamp(32px,3.4vw,46px);line-height:1.2;letter-spacing:-.05em;margin:18px 0 0}.section-head>p{max-width:365px;color:var(--muted);margin:0;font-size:15px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.feature{position:relative;padding:30px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:radial-gradient(ellipse at 50% 0,#26364755,transparent 65%),var(--panel)}.feature-art{height:162px;display:flex;align-items:center;justify-content:center;margin-bottom:26px}.feature-art>img{width:136px;max-height:160px;object-fit:contain;filter:drop-shadow(0 14px 16px #0007)}.mini-tiles{display:flex;align-items:center;justify-content:center}.mini-tiles img{width:57px;filter:drop-shadow(0 9px 8px #0005)}.mini-tiles img:first-child{transform:rotate(-13deg) translateY(8px)}.mini-tiles img:last-child{transform:rotate(13deg) translateY(8px)}.number{position:absolute;top:19px;left:25px;color:#93a0b5;font-size:11px;letter-spacing:.12em}.feature h3{font-size:19px;letter-spacing:-.03em;margin:0 0 12px}.feature p{font-size:14px;color:var(--muted);margin:0;line-height:1.85}.how{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px}.how p{color:var(--muted)}.rack-scene{position:relative;padding:70px 15px 40px;background:radial-gradient(ellipse,#28424755,transparent 68%)}.rack-tiles{display:flex;justify-content:center;gap:5px;position:relative;z-index:1;margin-bottom:-17px;padding-inline:26px}.rack-tiles img{width:15%;filter:drop-shadow(0 6px 5px #0007)}.rack{width:100%;position:relative;z-index:2}.steps{padding:0;margin:30px 0 0;list-style:none}.steps li{display:flex;gap:18px;margin:18px 0;font-size:14px;color:#c5ceda}.steps b{color:var(--gold);font-size:12px;border:1px solid var(--line);border-radius:50%;width:29px;height:29px;display:grid;place-items:center;flex:none}.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.questions details{border-bottom:1px solid var(--line)}summary{padding:24px 32px 24px 0;cursor:pointer;position:relative;font-size:15px;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:2px;color:var(--gold);font-size:23px;top:17px}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);margin:0;padding:0 26px 23px 0}.download{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px;text-align:center;padding:64px 25px;margin-bottom:80px;background:linear-gradient(#0c1726d9,#0c1726ee),url('assets/waterfront.jpg') center/cover}.download .eyebrow{justify-content:center}.download h2{margin:17px auto;max-width:660px}.download p{color:var(--muted);font-size:15px}.download .stores{justify-content:center}.footer{border-top:1px solid var(--line);padding-block:28px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;color:var(--muted)}.footer-brand{display:flex;align-items:center;gap:20px}.footer img{width:72px}.footer-links{display:flex;gap:22px}@keyframes arrive{from{opacity:0;transform:translateY(18px) rotate(-5deg)}to{opacity:1;transform:translateY(0) rotate(-5deg)}}@media(min-width:1500px){.hero{min-height:850px;padding-top:200px}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.nav{gap:24px}.nav-links{gap:18px}.hero-grid{grid-template-columns:1.1fr 1fr}.hero-logo{width:100%}.hero-art{min-height:340px}.store{min-width:168px;padding:10px 13px}.feature{padding:25px}.how,.faq{gap:45px}.hero{padding-top:155px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.nav{min-height:84px}.brand img{width:86px}.nav-links{display:none}.hero{padding:128px 0 30px;min-height:auto}.hero-grid{grid-template-columns:1fr;gap:25px}.hero-copy{text-align:center}.eyebrow{justify-content:center;font-size:11px}.hero h1{font-size:clamp(42px,8.3vw,62px);max-width:590px;margin:23px auto}.lead{margin:auto;font-size:15px;max-width:480px}.stores{justify-content:center}.hero-art{min-height:0;padding:12px 32px 36px;width:min(420px,100%);margin:auto}.hero-logo{width:340px}.tile-one{width:42px;top:20px;right:12px}.tile-two{width:39px;left:10px;bottom:30px}.hero-caption{bottom:0;font-size:10px}.hero-bottom{margin-top:32px;font-size:10px;gap:25px}.hero-bottom>span{max-width:180px}.qualities{gap:10px;padding-block:22px}.quality{flex-direction:column;gap:3px;text-align:center;font-size:11px}.section{padding-block:65px}.section-head{display:block;text-align:center}.section-head>p{margin:20px auto 0}.features{grid-template-columns:1fr}.feature{padding:28px;display:grid;grid-template-columns:105px 1fr;column-gap:25px}.feature-art{grid-row:1/3;height:120px;margin:0;align-self:center}.feature-art>img{width:100px;max-height:120px}.mini-tiles img{width:35px}.number{display:none}.feature h3{margin:0 0 8px;align-self:end}.feature p{font-size:13px}.how,.faq{grid-template-columns:1fr;gap:20px}.how-copy{text-align:center}.steps{text-align:left}.rack-scene{order:2;padding:25px 10px;max-width:470px;margin:auto}.faq-heading{text-align:center}.download{padding:45px 20px;margin-bottom:50px}.footer{flex-direction:column;text-align:center}.footer-brand{flex-direction:column;gap:8px}}@media(max-width:380px){.wrap{width:calc(100% - 28px)}.store{min-width:150px;padding:9px 10px;gap:8px}.store strong{font-size:16px}.store svg{width:24px}.languages a{padding:6px 9px}.feature{column-gap:16px;padding:20px;grid-template-columns:86px 1fr}.mini-tiles img{width:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Final typography, responsive and artwork refinements. */
.feature { background: var(--panel); text-align: center; }
.feature-art > .premium-icon { width: 180px; max-height: 180px; filter: none; }
.hero-copy, .hero-art, .feature, .how-copy, .questions { min-width: 0; }
h1, h2, h3 { text-wrap: balance; }
.languages a { min-height: 40px; display: inline-flex; align-items: center; }
.nav-links a { min-height: 44px; display: inline-flex; align-items: center; }
.footer-links { flex-wrap: wrap; justify-content: center; }
.footer-links a { min-height: 44px; display: inline-flex; align-items: center; }
.feature p, .steps li, details p, summary { font-size: 1rem; }
.feature h3 { min-height: 3.4em; }
.feature { transition: border-color .2s ease, background-color .2s ease; }
.feature:hover { border-color: rgba(232, 190, 114, .45); }
.lead { text-wrap: pretty; }
.steps b { margin-top: 2px; }
.evening-art {
  border: 1px solid var(--line);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 24px 60px #0004;
}
.evening-art img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.how { gap: 65px; }
.hero-bottom a { min-height: 44px; }
.hero .store { background: #0a121ee8; border-color: #d9bd8f70; }
.store span { font-size: 11px; }
.store:hover { background: #192331; }
@media (max-width: 1000px) {
  .feature { padding: 24px; }
  .features { gap: 16px; }
  .how { gap: 36px; }
}
@media (max-width: 760px) {
  .lead { font-size: 1rem; padding-inline: 4px; }
  .feature { grid-template-columns: 80px minmax(0, 1fr); column-gap: 22px; padding: 25px; }
  .feature h3 { min-height: 0; font-size: 1.125rem; align-self: center; margin: 0; }
  .feature p { font-size: 1rem; grid-column: 1 / -1; margin-top: 18px; }
  .feature-art { grid-row: auto; height: 88px; }
  .feature-art > img { width: 78px; }
  .mini-tiles img { width: 29px; }
  .section-head > p, .download p { font-size: 1rem; }
  .evening-art { order: 2; width: min(100%, 480px); margin: 10px auto 0; }
  .how { gap: 24px; }
  .hero-bottom { font-size: 12px; }
  .hero-bottom > span { flex: 1; }
  .hero-bottom a { flex: 1; justify-content: flex-end; text-align: right; gap: 10px; }
  .quality { font-size: 12px; }
  .footer { font-size: 13px; }
  .hero .stores { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; max-width: 390px; margin-inline: auto; }
  .hero .store { min-width: 0; padding: 11px 8px; gap: 8px; justify-content: center; }
  .hero .store svg { width: 24px; }
  .hero .store strong { font-size: 16px; }
  .hero .store span { font-size: 10px; }
}
@media (max-width: 380px) {
  .hero h1 { font-size: clamp(35px, 11vw, 42px); }
  .feature { padding: 22px; column-gap: 17px; grid-template-columns: 66px minmax(0, 1fr); }
  .feature-art > img { width: 66px; max-height: 80px; }
  .mini-tiles img { width: 25px; }
  .hero .store svg { width: 21px; }
  .hero .store { padding-inline: 6px; gap: 6px; }
  .languages a { padding-inline: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .feature, .store { transition: none; }
}

/* Classic Okey: a readable rules guide with real game-tile examples. */
.rules-link { display: inline-flex; align-items: center; gap: 18px; color: var(--gold); border-bottom: 1px solid var(--line); padding-block: 12px; font-size: 14px; }
.rules-link:hover { color: var(--ink); }
.rules { border-top: 1px solid var(--line); }
.rules-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--line); border-radius: 12px; margin-bottom: 40px; padding: 25px; background: #101b2780; }
.rules-stats > div { display: flex; align-items: center; justify-content: center; gap: 15px; padding: 0 14px; }
.rules-stats > div + div { border-left: 1px solid var(--line); }
.rules-stats strong { font-size: 30px; line-height: 1; color: var(--gold); letter-spacing: -.05em; }
.rules-stats span { color: var(--muted); font-size: 13px; line-height: 1.5; max-width: 155px; }
.rules-layout { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .8fr); gap: 60px; align-items: start; }
.rule-chapter { border-bottom: 1px solid var(--line); }
.rule-chapter summary { display: flex; align-items: center; gap: 16px; padding-block: 23px; font-weight: 600; }
.rule-chapter summary:after { top: 19px; }
.rule-index { flex: none; width: 30px; font-size: 12px; color: var(--gold); letter-spacing: .06em; }
.rule-body { padding: 0 22px 4px 46px; }
.rule-body p { padding: 0 0 18px; line-height: 1.85; }
.rule-chapter[open] summary { color: var(--gold); }
.rules-examples > h3 { font-size: 13px; font-weight: 500; color: var(--muted); margin: 0 0 18px; letter-spacing: .08em; }
.rule-example { display: flex; align-items: center; gap: 22px; border: 1px solid var(--line); border-radius: 12px; margin: 0 0 14px; padding: 22px; background: var(--panel); }
.rule-example figcaption { min-width: 0; }
.rule-example h4 { font-size: 16px; margin: 0 0 7px; line-height: 1.4; }
.rule-example p { font-size: 13px; line-height: 1.7; color: var(--muted); margin: 0; }
.rule-tiles { display: flex; justify-content: center; gap: 3px; flex: none; }
.rule-tiles img { width: 34px; height: auto; filter: drop-shadow(0 5px 4px #0005); }
.joker-example { display: block; }
.joker-demo { display: flex; align-items: center; justify-content: center; gap: 25px; margin: 5px 0 22px; }
.joker-demo > div { min-width: 85px; text-align: center; }
.joker-demo .rule-tiles img { width: 46px; }
.joker-demo > div > span { display: block; margin-top: 8px; font-size: 12px; color: var(--muted); }
.joker-arrow { font-size: 25px; color: var(--gold); }
.rules-reference { display: inline-flex; align-items: center; min-height: 44px; margin-top: 20px; font-size: 12px; color: var(--muted); text-decoration: underline; text-underline-offset: 4px; }
.rules-reference:hover { color: var(--gold); }
@media (max-width: 1050px) {
  .rules-layout { gap: 30px; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); }
  .rule-example { gap: 15px; padding: 18px; }
  .rule-tiles img { width: 29px; }
  .nav-links { gap: 18px; }
}
@media (max-width: 760px) {
  .feature-art > .premium-icon { width: 90px; max-width: none; max-height: 90px; }
  .rules-layout { grid-template-columns: 1fr; gap: 36px; }
  .rules-stats { padding: 20px 5px; margin-bottom: 24px; }
  .rules-stats > div { flex-direction: column; gap: 10px; padding: 0 8px; text-align: center; }
  .rules-stats span { font-size: 12px; }
  .rules-stats strong { font-size: 27px; }
  .rule-body { padding-left: 0; padding-right: 8px; }
  .rule-chapter summary { gap: 10px; font-size: 15px; }
  .rule-index { width: 24px; }
  .rules-examples { max-width: 480px; width: 100%; margin-inline: auto; }
  .rule-example { gap: 24px; padding: 22px; }
  .rule-tiles img { width: 36px; }
  .rules-link { font-size: 13px; }
}
@media (max-width: 380px) {
  .feature-art > .premium-icon { width: 78px; max-height: 78px; }
  .rule-example { padding: 18px; gap: 15px; }
  .rule-tiles img { width: 29px; }
  .rules-stats span { font-size: 11px; }
}
