@import url("/assets/mockup/v9-loki/verovapaat/category.css?v=b351be5791");
/* Reusable legal leaf: the approved site shell, one continuous reading column. */
.legal-page .logbook{padding-top:42px;border-top:0}
.legal-page .logbook-content{padding-bottom:8px}
.legal-title{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:18px 28px;align-items:center;padding:0 0 28px;border-bottom:3px double var(--ink-3)}
.legal-title h1{font:400 clamp(42px,4.2vw,60px)/1.02 var(--serif);letter-spacing:-.025em;margin:0;max-width:none}
.legal-title h1>span{display:block}
.legal-title h1 em{display:block;font-size:.63em;font-weight:400;line-height:1.15;letter-spacing:-.01em;margin-top:10px}
.legal-date{grid-column:1;margin:0;font:10.5px/1.8 var(--mono);color:var(--ink-2)}
.legal-emblem{grid-column:2;grid-row:1/3;width:90px;height:80px;object-fit:contain}
.legal-page .legal-intro{font:13px/1.95 var(--mono);color:var(--ink);margin:26px 0 0;max-width:none}
.legal-page .category-section{padding:32px 0 34px}
.legal-page .category-section h2{font:400 clamp(30px,2.8vw,40px)/1.12 var(--serif);letter-spacing:-.018em;max-width:none;margin:0 0 20px;text-wrap:pretty}
.legal-page .section-body{font:13px/1.95 var(--mono)}
.legal-page .section-body p{max-width:none;margin:0 0 18px}
.legal-page .section-body p:last-child{margin-bottom:0}
.legal-page .section-body strong{font-weight:500;color:var(--ink)}
.legal-ledger{padding:0;margin:24px 0 0;list-style:none;border-block:3px double var(--ink-3);background:var(--wash)}
.legal-ledger li{padding:18px 22px 20px;border-bottom:1px dotted var(--ink-3);color:var(--ink-2)}
.legal-ledger li:last-child{border-bottom:0}
.legal-page .legal-ledger strong{display:block;font:400 26px/1.2 var(--serif);margin-bottom:9px}
.legal-checklist{list-style:none;margin:24px 0;padding:0;border-block:3px double var(--ink-3);background:linear-gradient(90deg,var(--wash) 0,var(--wash) 66px,transparent 66px)}
.legal-page .legal-checklist li,.legal-page .legal-checklist li:first-child{padding:21px 18px 21px 88px;font:13px/1.95 var(--mono)}
.legal-page .legal-checklist li::before,.legal-page .legal-checklist li:first-child::before{content:'✓';left:15px;top:24px;font:21px/1 var(--serif)}
.legal-page .legal-safety{font:11px/1.9 var(--mono);color:var(--red);border-left:3px solid var(--red);padding:13px 18px;margin-top:26px;background:color-mix(in srgb,var(--red) 3%,transparent)}
.legal-page .legal-safety a{color:inherit}
.legal-page .category-section:last-child{border-bottom:0;padding-bottom:0}
.legal-page .footer{margin-top:48px}
.legal-page .footer a[aria-current=page]{font-weight:600;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){
 .legal-page .logbook{padding-top:14px}
 .legal-page .logbook-content{padding-top:30px}
 .legal-page .legal-title h1{font-size:52px}
}
@media(max-width:720px){
 .legal-page .logbook{padding-top:0}
 .legal-page .logbook-content{padding-top:26px}
 .legal-title{grid-template-columns:minmax(0,1fr) 48px;column-gap:8px;row-gap:18px;padding-bottom:23px}
 .legal-page .legal-title h1{grid-column:1/-1;font-size:42px}
 .legal-title h1 em{font-size:29px;line-height:1.14;margin-top:10px}
 .legal-date{grid-row:2;font-size:10px}
 .legal-emblem{grid-row:2;width:48px;height:44px}
 .legal-page .legal-intro{font-size:12px;line-height:1.95;margin-top:22px}
 .legal-page .category-section{padding:28px 0}
 .legal-page .category-section h2{font-size:31px;line-height:1.12;margin-bottom:18px}
 .legal-page .section-body{font-size:12px}
 .legal-ledger li{padding:18px 15px}
 .legal-page .legal-ledger strong{font-size:24px}
 .legal-checklist{background:linear-gradient(90deg,var(--wash) 0,var(--wash) 48px,transparent 48px)}
 .legal-page .legal-checklist li,.legal-page .legal-checklist li:first-child{padding:18px 8px 18px 63px;font-size:12px}
 .legal-page .legal-checklist li::before,.legal-page .legal-checklist li:first-child::before{left:8px;top:22px}
 .legal-page .legal-safety{font-size:11px;padding:12px 14px}
}
@media print{
 .legal-page .nav,.legal-page .route-column,.legal-page .footer{display:none}
 .legal-page .logbook{display:block;padding:0}
 .legal-page .logbook-content{border:0;padding:0}
 .legal-title,.legal-ledger li,.legal-checklist li{break-inside:avoid}
 .legal-page h2{break-after:avoid}
}

/* Affiliate disclosure: the casino's payment enters the harbour ledger. */
.disclosure-hero{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:center;gap:30px;padding-block:46px 30px}
.hero-heading{padding-bottom:22px}
.disclosure-hero h1{font:400 clamp(46px,4.8vw,70px)/1.03 var(--serif);letter-spacing:-.03em;margin:0}
.disclosure-hero h1>span:first-child{display:block}
.disclosure-hero h1 em{display:block;font:italic 400 clamp(32px,3.1vw,44px)/1.1 var(--serif);letter-spacing:-.015em;max-width:19ch;margin-top:16px}
.title-colon{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.disclosure-hero .legal-date{margin-top:28px}
.hero-ornament{display:flex;align-items:center;gap:12px;width:185px;margin-top:25px;color:var(--ink-3)}
.hero-ornament .line-icon{width:34px;height:34px}.hero-ornament>span{flex:1;border-top:1px dashed currentColor;position:relative}
.hero-ornament>span:after{content:'';position:absolute;right:0;top:-3px;width:5px;height:5px;transform:rotate(45deg);border-top:1px solid;border-right:1px solid}
.disclosure-scene{margin:0;min-width:0}.affiliate-plate{width:100%;overflow:hidden}
.v2-stage{position:absolute;inset:-1.1%;overflow:hidden}.v2-layer,.v2-motion{position:absolute;inset:0;width:100%;height:100%;display:block}.v2-layer{max-width:none;object-fit:fill}
.disclosure-paper{background:transparent;filter:url(#paper-tone)}
.disclosure-scene figcaption{display:flex;align-items:center;justify-content:center;gap:16px;font:10px/1.6 var(--mono);margin-top:9px;color:var(--ink-2)}
.caption-rule{width:42px;border-top:1px solid var(--rule)}
.pilot-motion{transform-origin:23% 74%;animation:pilot-rock 6.8s ease-in-out infinite}
.ship-motion{transform-origin:4% 73%;animation:passenger-rock 9.3s ease-in-out infinite}
.water-motion{transform-origin:50% 77%;animation:harbour-breathe 9s ease-in-out infinite}
.purse-motion{transform-origin:79.75% 56.8%;animation:purse-swing 4.8s ease-in-out infinite}
.flagA-motion{transform-origin:92.9% 12%;animation:casino-flutter 3.6s ease-in-out infinite}
.flagB-motion{transform-origin:85.1% 15%;animation:casino-flutter 4.2s ease-in-out infinite reverse}
.flagC-motion{transform-origin:81.2% 21%;animation:casino-flutter 3.9s ease-in-out infinite}
.gullA-motion,.gullB-motion,.gullC-motion,.gullD-motion{animation:gull-drift 14s ease-in-out infinite}.gullB-motion{animation-duration:17s;animation-direction:reverse}.gullC-motion{animation-duration:15s}.gullD-motion{animation-duration:19s;animation-direction:reverse}
@keyframes pilot-rock{0%,100%{transform:translateY(.7px) rotate(-.55deg)}50%{transform:translateY(-.7px) rotate(.55deg)}}
@keyframes passenger-rock{0%,100%{transform:rotate(-.16deg)}50%{transform:rotate(.16deg)}}
@keyframes harbour-breathe{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.012)}}
@keyframes purse-swing{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes casino-flutter{0%,100%{transform:skewY(-1.4deg) scaleX(.985)}50%{transform:skewY(1.4deg) scaleX(1)}}
@keyframes gull-drift{0%,100%{transform:translate(-2px,1px)}50%{transform:translate(2px,-1px)}}
.legal-v2 .logbook{padding-top:32px;border-top:3px double var(--ink-3)}
.legal-v2 .legal-intro{margin:0;padding-bottom:25px;border-bottom:1px solid var(--rule);font-size:13px;line-height:1.95}
.legal-v2 .category-section{padding-block:30px 32px}.legal-v2 .category-section h2{font-size:clamp(31px,2.8vw,40px)}
.line-icon{width:64px;height:64px;flex:none;display:block}
.fee-route{display:grid;grid-template-columns:1fr minmax(80px,1.1fr) 1fr;align-items:center;gap:10px 20px;margin:24px 0;padding:19px 24px 14px;border-block:3px double var(--ink-3);background:var(--wash)}
.fee-node{display:flex;align-items:center;justify-content:center;gap:14px;font:26px/1.2 var(--serif)}
.fee-node .line-icon{width:54px;height:54px}
.fee-transfer{display:grid;grid-template-columns:1fr;justify-items:center;font:10px/1.5 var(--mono)}
.fee-transfer>.line-icon{width:42px;height:42px;margin-bottom:3px}
.fee-transfer>svg:last-child{width:100%;height:16px;fill:none;stroke:currentColor;stroke-width:1.2;overflow:visible;margin-top:5px}
.fee-route figcaption{grid-column:1/-1;text-align:center;font:10px/1.6 var(--mono);border-top:1px dotted var(--rule);padding-top:10px;margin-top:4px}
.legal-v2 .legal-ledger{background:linear-gradient(90deg,transparent 76px,var(--rule) 76px,var(--rule) 77px,transparent 77px),var(--wash);margin-top:23px}
.legal-v2 .legal-ledger li{display:flex;gap:27px;align-items:flex-start;padding:22px 23px 23px 16px;position:relative;border-bottom:0}
.legal-ledger li+li:after{content:'';position:absolute;left:16px;right:20px;top:0;border-top:1px dotted var(--ink-3);transform-origin:left;transition:transform 1.3s ease}
.legal-ledger .entry-mark{width:44px;height:44px;margin-top:2px}
.legal-v2 .legal-ledger strong{font-size:27px}
.legal-v2 .legal-checklist{background:none;border:0;margin-block:24px}
.legal-v2 .legal-checklist li,.legal-v2 .legal-checklist li:first-child{display:flex;gap:22px;padding:21px 0;border-top:1px solid var(--rule);position:relative;align-items:flex-start}
.legal-v2 .legal-checklist li:last-child{border-bottom:1px solid var(--rule)}
.legal-v2 .legal-checklist li:before{display:none}
.legal-checklist .entry-mark{width:49px;height:49px;color:var(--ink);transform:rotate(-8deg);transition:transform 900ms ease,opacity 900ms ease}
.legal-checklist li:nth-child(even) .entry-mark{transform:rotate(6deg)}
.legal-v2 .link-entry{border-top:1px solid var(--rule);padding:18px 0 20px}.legal-v2 .link-entry:last-child{padding-bottom:0}
.link-key{display:flex;align-items:center;gap:12px;font:italic 25px/1.3 var(--serif);margin-bottom:12px}.link-key .line-icon{width:34px;height:34px}
.commercial .link-key>span{border-bottom:1px dashed var(--ink-3)}.noncommercial .link-key>span{border-bottom:1px solid var(--ink-3)}
.editorial-link{ text-decoration-style:solid;text-underline-offset:4px}.editorial-link:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.rule-entry{position:relative;padding:0 0 18px}.rule-entry:last-child{padding:17px 0 0;border-top:1px dotted var(--rule)}
.rule-mark{float:left;width:28px;height:28px;margin:0 12px 3px 0}
.legal-v2 .legal-safety{clear:both}.legal-v2 .footer{margin-top:38px}
/* Decorative strokes reveal; words are never hidden or shifted. */
.motion-ready .ink-entry:not(.entered) .entry-mark{opacity:.45;transform:rotate(-14deg) scale(.94)}
.motion-ready .legal-ledger .ink-entry:not(.entered):after{transform:scaleX(.08)}
.fee-route.entered .fee-transfer>svg:last-child path{stroke-dasharray:280;animation:fee-draw 1.6s ease-out both}
@keyframes fee-draw{from{stroke-dashoffset:280}to{stroke-dashoffset:0}}
@media(max-width:1100px){.disclosure-hero{gap:24px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);padding-block:32px 26px}.disclosure-hero h1{font-size:49px}.disclosure-hero h1 em{font-size:34px}.legal-v2 .logbook-content{padding-top:24px}.legal-v2 .logbook{padding-top:0}.fee-node{font-size:24px}.fee-node .line-icon{width:44px;height:44px}}
@media(max-width:720px){.disclosure-hero{display:block;padding-top:29px;padding-bottom:24px}.hero-heading{padding-bottom:20px}.disclosure-hero h1{font-size:45px;letter-spacing:-.035em}.disclosure-hero h1 em{font-size:31px;max-width:none;margin-top:10px}.disclosure-hero .legal-date{margin-top:18px}.hero-ornament{display:none}.disclosure-scene{margin-inline:-6px}.disclosure-scene figcaption{font-size:9px;gap:9px}.caption-rule{width:22px}.legal-v2 .legal-intro{font-size:12px}.legal-v2 .category-section{padding-block:27px 28px}.legal-v2 .category-section h2{font-size:31px}.fee-route{padding:15px 10px 12px;gap:9px;margin-block:21px}.fee-node{flex-direction:column;gap:5px;font-size:21px}.fee-node .line-icon{width:40px;height:40px}.fee-transfer .line-icon{width:34px;height:34px}.fee-route figcaption{font-size:9px}.legal-v2 .legal-ledger{background:var(--wash)}.legal-v2 .legal-ledger li{padding:18px 14px;gap:12px}.legal-ledger .entry-mark{width:30px;height:30px}.legal-v2 .legal-ledger strong{font-size:24px}.legal-v2 .legal-checklist li,.legal-v2 .legal-checklist li:first-child{gap:13px;padding-block:18px;font-size:12px}.legal-checklist .entry-mark{width:37px;height:37px}.link-key{font-size:23px}}
@media(prefers-reduced-motion:reduce){.legal-v2 *, .legal-v2 *:before,.legal-v2 *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .ink-entry:not(.entered) .entry-mark{opacity:1;transform:none}.motion-ready .legal-ledger .ink-entry:not(.entered):after{transform:none}}
@media print{.disclosure-hero{padding:0;break-inside:avoid}.v2-motion{animation:none!important}.hero-ornament{display:none}}

/* About page: an editorial chart, in the approved legal family. */
.about-page .disclosure-hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:22px;padding-block:36px 29px}
.about-page .disclosure-hero h1>span:first-child{font-size:40px;letter-spacing:-.015em}
.about-page .disclosure-hero h1 em{font-size:clamp(42px,4.5vw,65px);line-height:1.06;letter-spacing:-.035em;margin-top:9px;max-width:none}
.about-page .hero-ornament{width:173px}.about-page .hero-ornament>span:after{display:none}.about-page .hero-ornament>span{border-top-style:solid}
.about-emblem{display:inline-flex;align-items:center;justify-content:center;width:72px;height:64px;flex:none}
.about-emblem img{display:block;width:100%;height:100%;object-fit:contain}
.about-page .hero-ornament .about-emblem{width:38px;height:38px;border:0;flex:none}
.about-page .section-heading{display:flex;align-items:center;gap:20px;margin-bottom:20px}
.about-page .section-heading h2{margin:0;flex:1}.about-page .section-heading .about-emblem{width:70px;height:65px}
.about-page #pelaamisen-rajat .about-emblem img{border-radius:50%;object-fit:cover;width:60px;height:60px}
.about-page .legal-intro:first-child{border-bottom:0;padding-bottom:18px}
.independence-entry{display:flex;align-items:center;gap:24px;padding:20px 23px;margin-bottom:22px;border-block:3px double var(--ink-3);background:var(--wash)}
.about-page .independence-entry p{margin:0;flex:1}.independence-entry .about-emblem{width:74px;height:68px}
.team-ledger{list-style:none;padding:0;margin:22px 0 24px;border-block:3px double var(--ink-3)}
.about-page .team-ledger li,.about-page .team-ledger li:first-child{display:flex;align-items:center;gap:26px;padding:24px 0;border:0;border-bottom:1px solid var(--rule);font:13px/1.95 var(--mono)}
.about-page .team-ledger li:last-child{border-bottom:0}.about-page .team-ledger li:before{display:none}
.about-page .team-ledger .portrait{display:block;width:96px;height:96px;flex:none;margin:0}
.about-page .team-ledger .author-photo{filter:none;mix-blend-mode:normal;opacity:1}
.about-page .person-link{font-weight:600}.about-page .team-ledger li>div{flex:1;min-width:0}
.about-page .footer-engraving{width:28px;height:28px;object-fit:contain;filter:url(#ink-night)}
.about-page .footer-engraving:last-child{border-radius:50%;object-fit:cover}
[data-paper=night] .about-page .footer-engraving{filter:brightness(0);opacity:.8}
.chart-plate{width:100%;overflow:hidden;border:1px solid var(--ink-3)}
.chart-stage{position:absolute;inset:0;overflow:hidden}
.chart-layer,.chart-ship{position:absolute;inset:0;width:100%;height:100%;display:block}
.chart-layer{max-width:none;object-fit:fill}.chart-paper{filter:url(#paper-tone)}
.chart-ship{transform-origin:33.5% 29%;animation:chart-rock 4.8s ease-in-out infinite}
@keyframes chart-rock{0%,100%{transform:translateY(.45px) rotate(-2.6deg)}50%{transform:translateY(-.45px) rotate(2.6deg)}}
@media(max-width:1100px){.about-page .disclosure-hero{padding-block:29px 25px;gap:16px}.about-page .disclosure-hero h1>span:first-child{font-size:32px}.about-page .disclosure-hero h1 em{font-size:46px}}
@media(max-width:720px){.about-page .disclosure-hero{display:block;padding-block:27px 23px}.about-page .disclosure-hero h1>span:first-child{font-size:29px}.about-page .disclosure-hero h1 em{font-size:40px;margin-top:7px}.about-page .hero-heading{padding-bottom:20px}.about-page .section-heading{gap:12px;margin-bottom:18px}.about-page .section-heading .about-emblem{width:48px;height:52px}.about-page #pelaamisen-rajat .about-emblem img{width:46px;height:46px}.independence-entry{padding:16px 12px;gap:13px;align-items:flex-start}.independence-entry .about-emblem{width:44px;height:48px}.about-page .team-ledger li,.about-page .team-ledger li:first-child{gap:16px;padding-block:20px;align-items:flex-start;font-size:12px}.about-page .team-ledger .portrait{width:58px;height:58px;margin-top:4px}.about-page .section-body p{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){.about-page *,.about-page *:before,.about-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.chart-ship{transform:none!important}}
@media print{.chart-ship{animation:none!important;transform:none!important}.team-ledger li{break-inside:avoid}}

/* Image readiness must never delay already available artwork or photographs. */
.category-page .reveal,.category-page .stag>*{transition:none!important}
.category-page .engraving.drawn .engraving-sheet{animation:none!important}
.category-page .hero-plate,.category-page .profile-title img,.category-page .author-photo{transition:none!important}
.category-page img{transition-property:transform!important}
@media(prefers-reduced-motion:reduce){.category-page img{transition:none!important}}
