@import url("/assets/mockup/v9-loki/arvostelut-kasino/hero-geometry.css?v=166981bf0a");
/* Method-specific hero only. Article styles live in /assets/mockup/v9-loki/arvostelut-kasino/category.css. */
.method-hero-band{background:var(--wash);border-bottom:1px solid var(--ink-3)}
.method-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;padding:32px 32px 34px;align-items:stretch}
.method-art{min-width:0;position:relative;overflow:hidden}.method-page .hero-plate{width:100%;aspect-ratio:1;margin:0;--plate-ratio:1}
.method-page .hero-layer{position:absolute;inset:0;background:var(--day) center/100% 100% no-repeat;filter:none}
.layer-base{--day:url('/assets/mockup/v9-loki/arvostelut-kasino/art/layers/base-day-desktop-q92.webp?v=5745195808');--night:url('/assets/mockup/v9-loki/arvostelut-kasino/art/layers/base-night-desktop-q92.webp?v=1b0e44c413')}
[data-paper=night] .method-page .hero-layer{background-image:var(--night);filter:url(#ink-night)}
/* Fade only the last plain-paper pixels at the chart bottom; preserve hat, hands and cartouche. */
.hero-plate .plate-stage{mask-image:linear-gradient(to bottom,#000 99.5%,transparent)}
.hero-logo-tile{position:absolute;display:flex;align-items:center;justify-content:center;background:#efe9dc;isolation:isolate}
.hero-logo-tile .method-logo{width:70%;height:70%}
.method-logo{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;filter:none!important;mix-blend-mode:normal!important;opacity:1!important;animation:none!important;transition:none!important}
.method-header-card{padding:36px;background:var(--paper)}
.method-type{display:inline-flex;padding:17px 22px;font:10px/1.2 var(--mono);text-transform:uppercase;letter-spacing:.1em;transform:rotate(-2deg);margin-bottom:12px;background:var(--paper)}
.method-header-card h1{font:400 clamp(38px,3.5vw,54px)/.97 var(--serif);letter-spacing:-.035em;margin:0 0 16px;max-width:none}
.method-header-card h1>span{display:block}.method-header-card h1 em{display:block;font-size:.55em;line-height:1.1;letter-spacing:-.01em;margin-top:10px;font-weight:400}
.method-header-card .category-intro{font-size:12px;line-height:1.65;max-width:none;margin:0}
.method-header-card .category-byline{max-width:none;margin:14px 0 9px}.method-header-card .category-commission{max-width:none;margin:0}
.fact-grid{display:flex;flex-direction:column;width:100%;border-collapse:separate;margin:16px 0 0;text-align:left}
.fact-grid tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fact-grid tr{display:flex;flex-direction:column;position:relative;min-width:0;background:var(--paper);padding:17px 17px 17px 43px}
.fact-grid th{font:9px/1.4 var(--mono);letter-spacing:.055em;text-transform:uppercase;margin-bottom:7px}
.fact-grid td{font:600 11px/1.55 var(--mono);color:var(--ink)}
.fact-grid .section-emblem{position:absolute;left:15px;top:17px;width:23px;height:26px}

@media(max-width:700px){.layer-base{--day:url('/assets/mockup/v9-loki/arvostelut-kasino/art/layers/base-day-phone-q92.webp?v=abac2cfd14');--night:url('/assets/mockup/v9-loki/arvostelut-kasino/art/layers/base-night-phone-q92.webp?v=84152f4b31')}}


/* Nine-slice artwork is isolated so night ink never recolours text or logos. */
.method-header-card,.method-type,.fact-grid tbody tr{position:relative;border:0;border-radius:0;box-shadow:none;isolation:isolate;background:transparent}
.method-header-card::before,.method-type::before,.fact-grid tbody tr::before{content:"";position:absolute;inset:0;pointer-events:none;border:22px solid transparent;border-image:url("/assets/mockup/v9-loki/arvostelut-kasino/art/layers/frame-torn-day.webp?v=8bfbc82d5b") 42.6155581 round;z-index:-1}
.method-header-card::before{border-width:44px}
[data-paper=night] .method-header-card::before,[data-paper=night] .method-type::before,[data-paper=night] .fact-grid tbody tr::before{border-image-source:url("/assets/mockup/v9-loki/arvostelut-kasino/art/layers/frame-torn-night.webp?v=47ffeabf84");filter:url(#ink-night)}
.fact-grid caption{display:block;order:1;margin-top:10px;font:10.5px/2.2 var(--mono);text-align:left;color:var(--ink-2)}

.method-header-card::after,.method-type::after,.fact-grid tbody tr::after{content:"";position:absolute;inset:13px;background:var(--paper);z-index:-2;pointer-events:none}
.method-header-card::after{inset:27px}
@media(min-width:721px){
.method-header-card{padding:32px}
.method-header-card h1{font-size:42px;margin-bottom:12px}
.method-header-card h1 em{margin-top:6px}
.method-type{padding:15px 22px;margin-bottom:9px}
.method-header-card .category-intro{font-size:11px;line-height:1.6}
.method-header-card .category-byline{font-size:10px;line-height:1.65;margin:12px 0 8px}
.method-header-card .category-commission{font-size:9px;line-height:1.6}
.fact-grid{margin-top:12px}
.fact-grid tbody{gap:8px}
.fact-grid tr{padding:15px 17px}
.fact-grid th{padding-left:27px;min-height:24px;font-size:8px;line-height:1.35;margin-bottom:2px}
.fact-grid td{font-size:10px;line-height:1.4}
.fact-grid .section-emblem{top:14px}
}

@media(min-width:1001px){.method-hero{grid-template-columns:minmax(0,54fr) minmax(0,46fr)}.method-art .hero-plate{position:absolute;left:0;top:0}.method-header-card{padding:30px}.method-header-card h1{font-size:40px}.fact-grid tbody{grid-template-columns:repeat(3,minmax(0,1fr))}.fact-grid tr{padding:14px}.fact-grid th{min-height:0;padding:0;margin-bottom:5px}.fact-grid td{padding:0}.fact-grid .section-emblem{position:static;float:right;width:18px;height:18px;margin-left:4px}}
@media(min-width:721px) and (max-width:1000px),(min-width:1101px) and (max-width:1240px){.method-hero{display:flex;flex-direction:column}.method-art{width:100%}.method-art .hero-plate{position:relative}.method-hero-copy{width:100%}}

@media(min-width:1001px) and (max-width:1100px){.method-hero{padding-inline:16px}}
@media(min-width:1350px){.method-hero{grid-template-columns:minmax(0,48fr) minmax(0,52fr)}}

@media(min-width:1001px){.fact-grid tr{padding:17px 16px 13px}.fact-grid tbody tr:last-child:nth-child(3n+2){grid-column:span 2}}

@media(min-width:1241px) and (max-width:1349px){.method-hero{padding-inline:24px;gap:16px}}
@media(min-width:1001px) and (max-width:1100px){.method-hero{padding-inline:8px;gap:16px}}

/* Keep content clear of the painted inner rule without inflating the tiles. */
.fact-grid tbody tr::before,.method-type::before{border-width:12px}
.fact-grid tbody tr{padding:20px}
.method-type{padding:20px 22px}
.method-header-card{padding:30px}
.method-header-card::before{border-width:26px}
.method-header-card::after{inset:18px}
@media(min-width:721px) and (max-width:1000px){
.fact-grid .section-emblem{left:18px;top:18px}
}
@media(min-width:1001px) and (max-width:1100px){
.method-hero{grid-template-columns:minmax(0,53fr) minmax(0,47fr)}
}

/* Full-width hero; the route starts in the standard logbook after the sea. */
.method-hero{max-width:1600px;margin:auto}
.method-header-card .category-intro{font:400 13px/1.85 var(--mono);letter-spacing:normal;text-transform:none}
.method-header-card .category-byline{font:400 10.5px/2.2 var(--mono);letter-spacing:normal;text-transform:none}
.method-header-card .category-commission{font:400 10px/1.8 var(--mono);letter-spacing:normal;text-transform:none}
.method-header-card h1{font:400 clamp(64px,6.1vw,88px)/.96 var(--serif);letter-spacing:-.035em}
.method-header-card h1 em{font-weight:400;line-height:1.08;letter-spacing:-.01em}
.method-type{font:400 10px/1.7 var(--mono);letter-spacing:.025em;text-transform:none}
.fact-grid th{font:normal 400 19px/1.15 var(--serif);font-synthesis:none;text-transform:none;letter-spacing:-.01em;overflow-wrap:anywhere!important}
.fact-grid td{font:400 13px/1.85 var(--mono);overflow-wrap:anywhere!important}
@media(max-width:720px){
 .method-hero{display:flex;flex-direction:column;gap:18px;padding:18px 20px 28px}
 .method-art{width:100%}.method-hero-copy{width:100%;min-width:0}
 .method-header-card h1{font-size:clamp(34px,10.9vw,47px)}
 .method-header-card .category-intro{font-size:12.5px;line-height:1.9}
 .method-header-card .category-byline{font-size:10px;line-height:2.25}
 .method-header-card .category-byline{margin-top:18px}
 .fact-grid tbody{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .fact-grid tr{padding:19px 17px}
 .fact-grid .section-emblem{position:static;display:block;width:25px;height:25px;margin-bottom:7px}
 .fact-grid th{font-size:17px}
 .fact-grid td{font-size:12px}
}
@media(max-width:359px){.fact-grid tbody{grid-template-columns:1fr}.method-hero{padding-inline:16px}}
@media(min-width:721px) and (max-width:1100px){
 .method-hero{display:flex;flex-direction:column}
 .method-art{width:100%}.method-art .hero-plate{position:relative}
 .method-hero-copy{width:100%}
}

/* The card sets the square's size; the facts are a separate full-width row.
   /assets/mockup/v9-loki/arvostelut-kasino/hero-layout.js resolves the content-dependent desktop column width once
   fonts are ready and on container resizes, with no animation or polling. */
@media(min-width:721px){
 .method-hero{display:grid;grid-template-columns:var(--hero-art-size,36%) minmax(0,1fr);align-items:start;row-gap:0}
 .method-art{width:100%}
 .method-art .hero-plate{position:relative;inset:auto}
 .method-hero-copy{min-width:0;width:100%}
 .fact-grid{grid-column:1/-1}
 .fact-grid tbody{grid-template-columns:repeat(4,minmax(0,1fr))}
 .fact-grid tbody tr:last-child:nth-child(3n+2){grid-column:auto}
}
@media(max-width:720px){
 .method-art .hero-plate{position:relative;inset:auto}
 .fact-grid{margin-top:0}
 .fact-grid tbody{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Narrow desktop: preserve the font families and card padding while fitting
   the full introduction beside an equally tall square. */
@media(min-width:1001px) and (max-width:1200px){
 .method-header-card h1{font-size:48px}
 .method-header-card .category-intro{font-size:clamp(10.5px,calc(10.5px + (100vw - 1024px)*.00568),11.5px)}
}
@media(min-width:721px) and (max-width:1000px){
 .method-hero{display:flex;flex-direction:column;gap:18px}
}

/* Review rating uses the same ink and value typography as the other facts. */
.review-rating{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.review-stars{display:flex;gap:3px;color:var(--ink);max-width:100%}
.review-stars svg{display:block;width:23px;height:23px;flex-shrink:1;min-width:0}
.rating-fact th{padding-left:0}
@media(max-width:720px){.review-stars{gap:2px}.review-stars svg{width:20px;height:20px}}
