@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/manrope-700-latin.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/manrope-800-latin.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/manrope-800-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-latin.woff2) format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-600-latin.woff2) format('woff2')}
:root{--bg:#F6F8FB;--card:#fff;--ink:#14213D;--ink2:#46546E;--line:#DCE3EE;--line2:#EEF2F8;--blue:#1D6FB8;--blue2:#E8F1FB;--orange:#F2994A;--orange2:#FFF1E4;--r:16px;--sh:0 1px 2px rgba(20,33,61,.05),0 6px 22px rgba(20,33,61,.06);--hf:'Manrope',system-ui,sans-serif;--bf:'Source Sans 3',system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 18px/1.62 var(--bf)}
a{color:var(--blue);text-underline-offset:3px}a:hover{color:#11518A}
img{max-width:100%;height:auto}
h1,h2,h3{font-family:var(--hf);line-height:1.18;letter-spacing:-.01em;color:var(--ink)}
h1{font-weight:800;font-size:clamp(28px,6vw,44px);margin:.2em 0 .35em}
h2{font-weight:800;font-size:clamp(22px,3.6vw,28px);margin:1.8em 0 .5em}
h3{font-weight:700;font-size:19px;margin:1.4em 0 .4em}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px;border-radius:8px}
/* header */
.top{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
.top__in{max-width:1180px;margin:0 auto;padding:8px 16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);margin-right:auto}
.logo__mark{position:relative;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--ink);color:#fff;font:800 14px var(--hf);letter-spacing:.02em}
.logo__mark i{position:absolute;top:-4px;left:12px;width:14px;height:8px;border-radius:4px 4px 0 0;background:var(--orange)}
.logo__txt{font:800 17px/1.05 var(--hf)}.logo__txt small{display:block;font:600 12px var(--bf);color:var(--ink2);letter-spacing:.02em}
.nav{display:flex;gap:4px;flex-wrap:wrap}.nav a{padding:7px 10px;border-radius:10px;text-decoration:none;color:var(--ink);font:700 14.5px var(--hf)}.nav a:hover{background:var(--blue2)}
.navbtn{display:none;border:0;background:var(--line2);border-radius:10px;width:40px;height:40px;color:var(--ink);cursor:pointer}
.search{position:relative;display:flex;flex:0 1 330px}
.search input{width:100%;height:40px;border:1px solid var(--line);border-radius:12px;padding:0 42px 0 14px;font:400 16px var(--bf);background:#fff;color:var(--ink)}
.search input:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:transparent}
.search button{position:absolute;right:4px;top:4px;height:32px;width:34px;border:0;border-radius:9px;background:var(--ink);color:#fff;cursor:pointer}
.search__res{position:absolute;top:calc(100% + 6px);left:0;right:0;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh);z-index:40;max-height:60vh;overflow:auto}
.search__res a{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:10px;text-decoration:none;color:var(--ink)}
.search__res a:hover,.search__res a.on{background:var(--blue2)}.search__res small{color:var(--ink2);white-space:nowrap}
@media(max-width:860px){.navbtn{display:block}.nav{display:none;order:4;width:100%;flex-direction:column;padding:4px 0 8px}.nav.open{display:flex}.search{order:5;flex:1 1 100%}.top__in{gap:8px}}
/* hero */
.hero{background:linear-gradient(180deg,#fff, var(--bg));border-bottom:1px solid var(--line2)}
.hero__in{max-width:820px;margin:0 auto;padding:18px 16px 14px}
.hero__lead{color:var(--ink2);font-size:19px;margin:.2em 0 .6em}
.crumbs ol{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none;font-size:14px;color:var(--ink2)}
.crumbs li+li:before{content:'›';margin-right:4px;color:#9AA6BA}.crumbs a{color:var(--ink2)}
.tab{display:inline-block;margin:12px 0 0;padding:4px 12px 4px;border-radius:10px 10px 0 0;background:var(--orange2);color:#8A4A10;font:700 13px var(--hf);letter-spacing:.04em;text-transform:uppercase;border:1px solid #F8D3B0;border-bottom:0}
.tab--muted{background:var(--line2);color:var(--ink2);border-color:var(--line)}
.byline{display:flex;align-items:center;gap:12px;margin:6px 0 4px}.byline img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 0 0 1px var(--line)}
.byline p{margin:0;font-size:15px;line-height:1.35}.byline a{font-weight:600;color:var(--ink)}.byline span{color:var(--ink2)}.byline--guest p{color:var(--ink2)}
/* body */
.body{max-width:820px;margin:0 auto;padding:8px 16px 48px}
.content>p,.content li{color:#1f2b45}
.content ul{padding-left:1.2em}
/* Lyhyt vastaus = catalogue card */
.sr-answer{position:relative;margin:18px 0 26px;padding:22px 20px 16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);
  background-image:repeating-linear-gradient(180deg,transparent 0 31px,var(--line2) 31px 32px);background-position:0 54px}
.sr-answer:before{content:'';position:absolute;top:10px;left:50%;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:var(--bg);box-shadow:inset 0 1px 2px rgba(20,33,61,.25)}
.sr-answer__label{display:inline-block;margin:0 0 8px;padding:3px 10px;border-radius:8px;background:var(--blue);color:#fff;font:800 12.5px var(--hf);letter-spacing:.06em;text-transform:uppercase}
.sr-answer__text{margin:0 0 12px;font-size:19px;line-height:1.55;color:var(--ink);background:#fff}
.sr-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 6px;padding:0;list-style:none}
.sr-chips li{padding:3px 10px;border-radius:999px;background:var(--blue2);color:#164E82;font:600 14px var(--bf)}
.sr-answer__links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.sr-answer__links a{padding:8px 14px;border-radius:12px;background:var(--ink);color:#fff;text-decoration:none;font:700 14.5px var(--hf)}
.sr-answer__links a+a{background:#fff;color:var(--ink);border:1px solid var(--line)}
/* cast rows (Rooli | Näyttelijä) */
.sr-cast{margin:8px 0 14px;padding:0;list-style:none;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.sr-cast li{display:grid;grid-template-columns:34px 1fr 1fr;gap:10px;align-items:center;padding:9px 14px;border-top:1px solid var(--line2)}
.sr-cast li:first-child{border-top:0}.sr-cast li:nth-child(even){background:#FAFBFD}
.sr-cast .i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--blue2);color:#164E82;font:800 12px var(--hf)}
.sr-cast .r{color:var(--ink2);font-size:16px}.sr-cast .a{font-weight:600;color:var(--ink)}.sr-cast .a a{color:var(--ink)}
.sr-cast .s{grid-column:2/4;margin-top:-6px;font-size:13.5px;color:#7A869C}
.sr-cast--mini{border:0;border-radius:0;background:transparent;margin:6px 0}
.sr-cast--mini li{padding:6px 0;background:transparent!important;grid-template-columns:30px 1fr 1fr}
.sr-castlist h3{display:flex;align-items:center;gap:8px}.sr-castlist h3:before{content:'';width:10px;height:10px;border-radius:3px;background:var(--orange)}
.sr-castlist details{margin:10px 0}.sr-castlist summary{cursor:pointer;font:700 15.5px var(--hf);color:var(--blue);padding:6px 0}
.sr-castlist .head{display:grid;grid-template-columns:34px 1fr 1fr;gap:10px;padding:0 14px;font:700 12.5px var(--hf);text-transform:uppercase;letter-spacing:.05em;color:#7A869C}
@media(max-width:520px){.sr-cast li{grid-template-columns:30px 1fr;gap:2px 10px}.sr-cast .i{grid-row:1/3}.sr-cast .a{grid-column:2}.sr-cast .s{grid-column:2;margin:0}.sr-castlist .head{display:none}}
.sr-seen{padding:0;list-style:none}.sr-seen li{padding:10px 0;border-top:1px dashed var(--line)}
.sr-watch{padding:14px 18px;border-radius:14px;background:var(--blue2);border:1px solid #CFE0F3}.sr-watch p{margin:0}
.sr-note{position:relative;margin:28px 0;padding:18px 20px 14px;background:#FFFDF8;border:1px solid #F3E3CC;border-radius:var(--r);box-shadow:var(--sh);transform:rotate(-.3deg)}
.sr-note__label{display:flex;align-items:center;gap:10px;margin:0 0 6px;font:800 15px var(--hf);color:#8A4A10}.sr-note__label img{width:32px;height:32px;border-radius:50%}
.sr-note p{margin:.4em 0}
.sr-keep{margin:18px 0;padding:0}
.sr-faq details{border:1px solid var(--line);border-radius:12px;background:#fff;margin:8px 0;padding:0 16px}
.sr-faq summary{cursor:pointer;padding:13px 0;font:700 16.5px var(--hf);list-style:none}.sr-faq summary::-webkit-details-marker{display:none}
.sr-faq summary:after{content:'+';float:right;color:var(--blue);font-size:20px;line-height:1}.sr-faq details[open] summary:after{content:'–'}
.sr-faq details p{margin:0 0 14px}
.sr-sources{font-size:15px;color:var(--ink2);padding-left:1.1em}
/* author box, related, cards */
.authorbox{display:flex;gap:16px;align-items:flex-start;margin:36px 0 10px;padding:18px;border-radius:var(--r);background:#fff;border:1px solid var(--line)}
.authorbox img{width:84px;height:84px;border-radius:50%;object-fit:cover;flex:none}.authorbox p{margin:.2em 0;font-size:16px}.ab-name{font:800 18px var(--hf)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin:10px 0;padding:0;list-style:none}
.cards a{display:flex;flex-direction:column;gap:2px;height:100%;padding:13px 15px 12px;border-radius:14px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);box-shadow:0 1px 0 var(--line2);border-top:4px solid var(--blue)}
.cards li:nth-child(3n+2) a{border-top-color:var(--orange)}.cards li:nth-child(3n) a{border-top-color:#5C7CA6}
.cards a:hover{transform:translateY(-1px);box-shadow:var(--sh)}.cards .t{font:700 16.5px/1.3 var(--hf)}.cards .m{font-size:14px;color:var(--ink2)}
.rows{margin:6px 0 18px;padding:0;list-style:none;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.rows li+li{border-top:1px solid var(--line2)}.rows a{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;text-decoration:none;color:var(--ink)}
.rows a:hover{background:var(--blue2)}.rows .t{font-weight:600}.rows .m{color:var(--ink2);font-size:14.5px;white-space:nowrap}
.az-filter{display:flex;flex-direction:column;gap:4px;margin:10px 0;font:700 14px var(--hf)}.az-filter input{height:44px;border:1px solid var(--line);border-radius:12px;padding:0 14px;font:400 17px var(--bf)}
.az-letters{display:flex;flex-wrap:wrap;gap:6px}.az-letters a{display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;background:#fff;border:1px solid var(--line);text-decoration:none;font:700 14px var(--hf);color:var(--ink)}
.az h2{margin-top:1.2em}.az-count{color:var(--ink2)}
.btn{display:inline-block;padding:10px 16px;border-radius:12px;background:var(--ink);color:#fff!important;text-decoration:none;font:700 15px var(--hf);margin:4px 6px 4px 0}
.btn--ghost{background:#fff;color:var(--ink)!important;border:1px solid var(--line)}
.portrait{margin:0 0 18px}.portrait img{border-radius:var(--r);box-shadow:var(--sh);width:100%;max-width:420px}
/* home */
.home-hero{max-width:1180px;margin:0 auto;padding:22px 16px 10px;display:grid;grid-template-columns:1.25fr .9fr;gap:34px;align-items:center}
.search--big{flex:none;max-width:640px;margin:14px 0 8px}.search--big input{height:56px;font-size:18px;border-radius:16px;padding-right:150px;box-shadow:var(--sh)}
.search--big button{width:auto;height:46px;top:5px;right:5px;padding:0 16px;border-radius:12px;font:700 15px var(--hf)}
.pop{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:15px}.pop span{color:var(--ink2);margin-right:2px}
.pop a{padding:4px 10px;border-radius:999px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);font-weight:600}
.deck{position:relative;height:330px}
.deck__card{position:absolute;width:86%;padding:18px 18px 12px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);
  background-image:repeating-linear-gradient(180deg,transparent 0 31px,var(--line2) 31px 32px);background-position:0 60px}
.deck__card--0{top:0;left:0;transform:rotate(-2.2deg)}.deck__card--1{top:46px;left:7%;transform:rotate(1.4deg)}.deck__card--2{top:92px;left:14%;transform:rotate(-.6deg)}
.deck__tab{display:inline-block;margin:0 0 6px;padding:2px 9px;border-radius:7px;background:var(--orange2);color:#8A4A10;font:700 11.5px var(--hf);text-transform:uppercase;letter-spacing:.05em}
.deck__t{margin:0 0 6px;font:800 20px var(--hf)}.deck__r{display:flex;justify-content:space-between;gap:10px;margin:0;line-height:32px;font-size:15px}.deck__r span{color:var(--ink2)}
@media(max-width:860px){.home-hero{grid-template-columns:1fr}.deck{display:none}}
.homewrap{max-width:1180px;margin:0 auto;padding:6px 16px 50px}
.home-sec{margin:28px 0}.home-sec header{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.home-sec h2{margin:0}
.home-sec header a{font:700 15px var(--hf);text-decoration:none}.home-sec__lead{color:var(--ink2);margin:.2em 0 .4em}
.persona{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center;margin:34px 0;padding:22px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.persona img{border-radius:16px;width:200px;height:250px;object-fit:cover}.persona h2{margin:.3em 0 .2em}
@media(max-width:620px){.persona{grid-template-columns:1fr}.persona img{width:100%;height:auto;max-height:340px}}
/* footer */
.foot{background:var(--ink);color:#C9D3E3;margin-top:30px}.foot__in{max-width:1180px;margin:0 auto;padding:34px 16px 26px;display:grid;grid-template-columns:1.2fr 1fr;gap:26px}
.foot a{color:#fff}.foot nav{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;align-content:start}.foot nav a{text-decoration:none;font-size:15.5px}
.foot__logo{font:800 22px var(--hf);color:#fff;margin:0 0 6px}.foot__card p{margin:.3em 0 .7em}.foot__small{grid-column:1/-1;font-size:13.5px;color:#93A1BA;margin:0}
.contact-btn{display:inline-block;padding:10px 18px;border-radius:12px;background:var(--orange);color:var(--ink)!important;font:800 15px var(--hf);text-decoration:none}
@media(max-width:700px){.foot__in{grid-template-columns:1fr}}
/* OBL desk boxes in Kortisto style (desk:pilot markup untouched; theme only, :has() so hashed class names don't matter) */
  background:#fff repeating-linear-gradient(180deg,transparent 0 31px,var(--line2) 31px 32px)!important;background-position:0 58px!important}
.pager{margin:20px 0}.pager .page-numbers{padding:6px 10px;border-radius:8px;background:#fff;border:1px solid var(--line);margin-right:4px;text-decoration:none}

/* ===== 1.1 rakenne: kortistokaappi (header), luettelokortti (single), kaappi (etusivu) ===== */
.cab{background:var(--ink);color:#fff}
.cab__plate{max-width:1180px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.plate{position:relative;display:flex;flex-direction:column;margin-right:auto;padding:7px 16px 7px 34px;border-radius:6px;background:linear-gradient(180deg,#FBF3E6,#EED9BC);color:var(--ink);text-decoration:none;box-shadow:inset 0 0 0 1px rgba(20,33,61,.18),0 2px 0 rgba(0,0,0,.25)}
.plate__hole{position:absolute;left:12px;top:50%;width:11px;height:11px;margin-top:-5.5px;border-radius:50%;background:var(--ink);box-shadow:inset 0 1px 2px rgba(0,0,0,.5)}
.plate strong{font:800 18px/1.05 var(--hf);letter-spacing:-.01em}.plate em{font:600 12px/1.3 var(--bf);font-style:normal;color:#5A4A33}
.cab__find{flex:0 1 360px}.cab__find input{border-color:transparent;background:#fff}
.cab__find button{background:var(--orange);color:var(--ink)}
.cab__toggle{display:none;height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.35);border-radius:10px;background:transparent;color:#fff;font:700 14px var(--hf);cursor:pointer}
.cab__drawers{background:#1E2D4F;border-top:1px solid rgba(255,255,255,.08)}
.cab__drawers ul{max-width:1180px;margin:0 auto;padding:8px 16px 0;display:flex;gap:6px;list-style:none;flex-wrap:wrap}
.cab__drawers li a{display:flex;align-items:center;gap:8px;padding:8px 14px 9px;border-radius:9px 9px 0 0;background:#2A3B60;color:#E6ECF6;text-decoration:none;font:700 14.5px var(--hf)}
.cab__drawers li a:hover{background:#34496F;color:#fff}
.cab__drawers li.is-open a{background:var(--bg);color:var(--ink)}
.cab__key{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.14);font:800 11px var(--hf)}
.cab__drawers li.is-open .cab__key{background:var(--orange);color:var(--ink)}
@media(max-width:860px){.cab__toggle{display:block}.cab__find{order:5;flex:1 1 100%}.cab__drawers{display:none}.cab__drawers.open{display:block}
 .cab__drawers ul{display:grid;grid-template-columns:1fr 1fr;padding:8px 16px 12px}.cab__drawers li a{border-radius:9px}}

/* single */
.sheet{max-width:1120px;margin:0 auto;padding:22px 16px 48px;display:grid;grid-template-columns:250px minmax(0,1fr);grid-template-areas:"stamp stamp" "spine main" "spine more" "foot foot";column-gap:40px}
.sheet__stamp{grid-area:stamp;max-width:860px;margin-left:290px}
.sheet__spine{grid-area:spine;align-self:start;position:sticky;top:16px;display:flex;flex-direction:column;gap:16px}
.sheet__main{grid-area:main;max-width:760px;min-width:0}
.sheet__more{grid-area:more;max-width:760px;min-width:0}
.sheet__foot{grid-area:foot;max-width:760px;margin-left:290px}
.sheet__title{margin:.15em 0 .4em}
.notice{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;color:var(--ink2);font:600 14.5px var(--bf)}
.notice span{padding:3px 10px;border-radius:6px;background:var(--ink);color:#fff;font:700 12.5px var(--hf);letter-spacing:.04em;text-transform:uppercase}
.notice--guest span{background:var(--line);color:var(--ink2)}
.signum{position:relative;padding:30px 16px 10px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:var(--sh);background-image:repeating-linear-gradient(180deg,transparent 0 33px,#E7EEF8 33px 34px);background-position:0 62px}
.signum:before{content:'';position:absolute;bottom:10px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}
.signum:after{content:'';position:absolute;top:0;bottom:0;left:22px;width:1px;background:#F2B482}
.signum__code{margin:0 0 8px;padding-left:16px;font:800 30px/1 var(--hf);letter-spacing:.06em;color:var(--ink)}
.signum__code small{margin-left:8px;font:600 13px var(--bf);letter-spacing:0;color:#8A96AB}
.signum dl{margin:0 0 22px;padding-left:16px}.signum dl div{display:flex;justify-content:space-between;gap:10px;line-height:34px;font-size:15px}
.signum dt{color:var(--ink2)}.signum dd{margin:0;font-weight:600;text-align:right}
.check{display:grid;grid-template-columns:52px 1fr;gap:2px 12px;align-items:center;margin:0;padding:12px 14px;border:2px dashed #C9D4E4;border-radius:10px;font-size:14.5px;line-height:1.35;transform:rotate(-1deg)}
.check img{grid-row:1/3;width:52px;height:52px;border-radius:50%;object-fit:cover}
.check a{font-weight:700;color:var(--ink)}.check span+span{color:var(--ink2)}
.check--guest{display:block;color:var(--ink2);transform:none}
.shelf{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:26px 0 0;padding:12px 0 0;border-top:1px solid var(--line);font-size:14.5px;color:var(--ink2)}
.shelf__k{font:700 12px var(--hf);letter-spacing:.06em;text-transform:uppercase;color:#8A96AB;margin-right:4px}
.shelf a{color:var(--ink2)}.shelf i{font-style:normal;color:#AAB4C5}
@media(max-width:900px){.sheet{display:block;padding-top:16px}.sheet__stamp,.sheet__foot{margin-left:0}
 .sheet__spine{position:static;flex-direction:row;flex-wrap:wrap;margin:6px 0 4px}.sheet__spine>*{flex:1 1 240px}
 .signum{padding-top:22px}.signum__code{font-size:24px}.check{transform:none}}

/* etusivu */
.cover{max-width:1180px;margin:0 auto;padding:26px 16px 14px;display:grid;grid-template-columns:1.3fr .9fr;gap:40px;align-items:center}
.cover__count{display:inline-block;margin:0;padding:3px 12px;border-radius:6px;background:var(--orange2);color:#8A4A10;font:700 13px var(--hf)}
.cover__lead{color:var(--ink2);font-size:19px;margin:.2em 0 .6em}
.today{position:relative;margin:0;padding:18px 20px 34px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:var(--sh);transform:rotate(1.2deg)}
.today:after{content:'';position:absolute;bottom:12px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}
.today figcaption{font:800 21px var(--hf);margin:0 0 8px}.today figcaption span{display:block;font:700 12px var(--hf);letter-spacing:.06em;text-transform:uppercase;color:#C26A1E}
.today table{width:100%;border-collapse:collapse;font-size:15px}.today th,.today td{padding:6px 0;border-top:1px solid #E7EEF8;text-align:left}
.today th{font-weight:400;color:var(--ink2)}.today td{font-weight:600;text-align:right}
.today__tab{position:absolute;top:-12px;right:18px;margin:0;padding:2px 10px;border-radius:6px 6px 0 0;background:var(--orange);color:var(--ink);font:700 11.5px var(--hf)}
.letters{max-width:1180px;margin:8px auto 0;padding:0 16px;display:flex;align-items:center;gap:12px}
.letters__k{margin:0;flex:none;font:700 12px var(--hf);letter-spacing:.06em;text-transform:uppercase;color:#8A96AB}
.letters ol{flex:1;display:flex;gap:4px;margin:0;padding:4px 0;list-style:none;overflow-x:auto;min-width:0}.letters li{flex:1 0 28px}
.letters a{display:grid;place-items:center;width:auto;height:36px;border-radius:5px;background:#fff;border:1px solid var(--line);border-bottom:3px solid var(--ink);text-decoration:none;color:var(--ink);font:800 14px var(--hf)}
.letters a:hover{border-bottom-color:var(--orange)}
.cabinet{max-width:1180px;margin:0 auto;padding:20px 16px 0;display:grid;grid-template-columns:1fr 1.1fr;gap:24px;align-items:start}
.loans h2,.dept__box h2{margin:0 0 .4em}
.loans__list{margin:0;padding:0;list-style:none;columns:2;column-gap:18px}
.loans__list li{break-inside:avoid}.loans__list a{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--line);color:var(--ink);text-decoration:none;font-weight:600}
.loans__list b{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;font:800 12px var(--hf)}
.lender{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;padding:18px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:var(--sh)}
.lender figure{margin:0}.lender img{display:block;width:150px;height:190px;border-radius:6px;object-fit:cover}
.lender__k{margin:0;font:700 12px var(--hf);letter-spacing:.06em;text-transform:uppercase;color:#C26A1E}.lender h2{margin:.15em 0 .3em}
.lender__card>p{font-size:16.5px}.lender__links{display:flex;flex-wrap:wrap;gap:8px}
.lender__links a{padding:8px 14px;border-radius:10px;background:var(--ink);color:#fff;text-decoration:none;font:700 14.5px var(--hf)}.lender__links a+a{background:#fff;color:var(--ink);border:1px solid var(--line)}
.dept{max-width:1180px;margin:0 auto;padding:10px 16px 50px;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.dept__box{margin-top:18px;padding:18px 20px 14px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--ink);border-radius:6px}
.dept__box:nth-child(3n+2){border-top-color:var(--orange)}.dept__box:nth-child(3n){border-top-color:#5C7CA6}
.dept__lead{color:var(--ink2);margin:0 0 .4em;font-size:16.5px}
.slips{margin:0;padding:0;list-style:none}.slips a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;border-top:1px solid var(--line2);color:var(--ink);text-decoration:none;font:700 16px var(--hf)}
.slips a:hover{color:var(--blue)}.slips small{flex:0 1 auto;max-width:48%;text-align:right;overflow-wrap:anywhere;font:400 14px var(--bf);color:var(--ink2)}
.dept__more{margin:.6em 0 0}.dept__more a{font:700 15px var(--hf);text-decoration:none}
.dept__box--all{grid-column:1/-1}
@media(max-width:860px){.cover,.cabinet,.dept{grid-template-columns:minmax(0,1fr)}.today{transform:none}.loans__list{columns:1}}
@media(max-width:520px){.lender{grid-template-columns:1fr}.lender img{width:100%;height:auto;max-height:320px}.letters{flex-direction:column;align-items:flex-start;gap:4px}.letters ol{max-width:100%}}

/* ===== 1.2 porträtt: ett foto, litet och inramat (ägarorder 13/11) ===== */
.lender{grid-template-columns:132px 1fr}
.lender figure{align-self:start}
.lender img{width:132px;height:132px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #fff,0 0 0 5px var(--orange)}
.byline img,.check img,.authorbox img{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--orange);border:0}
.content .me{float:right;width:165px;margin:4px 0 14px 22px;padding:6px 6px 4px;background:#fffdf7;border:1px solid #ece4d3;box-shadow:0 2px 8px rgba(20,33,61,.12);transform:rotate(.8deg)}
.content .me img{display:block;width:100%;height:auto;border-radius:0;box-shadow:none;max-width:none}
.content .me figcaption{margin:5px 2px 0;font:600 12px/1.3 var(--bf);color:var(--ink2);text-align:center}
.content:has(>.me)::after{content:'';display:block;clear:both}
@media(max-width:560px){.content .me{width:140px;margin:4px 0 12px 16px}}
@media(max-width:520px){.lender{grid-template-columns:1fr}.lender img{width:120px;height:120px;max-height:none}}

/* ===== 1.3 OBL desk boxes v3 – Kortisto's own look (owner 13/11, OBL-RUTOR-DESIGN §0): a library catalogue card and a loan card.
   Selectors by class suffix inside .obl-skin (theme filter), markup untouched. ===== */
.content .obl-skin{clear:both;margin:34px 0 30px;position:relative}
body .content .obl-skin section{position:relative!important;margin:0!important;padding:0!important;border:1px solid #E2CDB0!important;border-radius:3px!important;
  background:var(--orange2) repeating-linear-gradient(180deg,transparent 0 27px,rgba(29,111,184,.16) 27px 28px)!important;background-position:0 64px!important;
  box-shadow:0 1px 0 #E2CDB0,2px 3px 0 rgba(20,33,61,.06)!important;color:var(--ink)!important;font-family:var(--bf)!important;overflow:visible!important;text-align:left!important}
/* red heading rule of a catalogue card + punched hole at the bottom */
body .content .obl-skin section:before{content:'';position:absolute;left:0;right:0;top:52px;height:2px;background:rgba(214,64,52,.55);pointer-events:none}
body .content .obl-skin section:after{content:'';position:absolute;bottom:9px;left:50%;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:var(--bg);box-shadow:inset 0 1px 2px rgba(20,33,61,.3);pointer-events:none}
/* call-number in the corner */
body .content .obl-skin--cta section form:before{content:'SR 070.5 · VIERAS';position:absolute;top:16px;right:18px;font:700 11px/1 ui-monospace,'Courier New',monospace;letter-spacing:.08em;color:#9A6A3A}
body .content .obl-skin [class$="m"]{display:block!important;background:transparent!important;color:var(--ink)!important;padding:14px 26px 8px!important}
body .content .obl-skin [class$="t"]{max-width:none!important}
body .content .obl-skin [class$="e"]{display:block!important;margin:0 0 22px!important;padding:0!important;background:none!important;border:0!important;color:#9A3B2E!important;
  font:700 12px/1.4 ui-monospace,'Courier New',monospace!important;letter-spacing:.14em!important;text-transform:uppercase!important}
body .content .obl-skin [class$="h"]{margin:0 0 6px!important;color:var(--ink)!important;font:800 clamp(20px,3.2vw,24px)/1.18 var(--hf)!important;letter-spacing:-.01em}
body .content .obl-skin [class$="t"] p{margin:0!important;color:var(--ink2)!important;font:400 16.5px/28px var(--bf)!important}
body .content .obl-skin [class$="l"]{display:flex!important;flex-wrap:wrap;gap:4px 18px!important;margin:4px 0 0!important;color:var(--ink)!important;font:600 14px/28px ui-monospace,'Courier New',monospace!important}
body .content .obl-skin [class$="l"]>span{background:none!important;padding:0!important}
body .content .obl-skin [class$="a"]{display:block!important;margin:14px 0 4px!important;text-align:right!important}
/* button = library date stamp */
body .content .obl-skin button[name="na_buy"]{display:inline-block!important;padding:9px 16px 8px!important;border:2px solid var(--ink)!important;outline:1px solid var(--ink);outline-offset:2px;border-radius:2px!important;
  background:transparent!important;color:var(--ink)!important;font:700 14px/1.2 ui-monospace,'Courier New',monospace!important;letter-spacing:.1em!important;text-transform:uppercase!important;
  transform:rotate(-1.5deg);box-shadow:none!important;cursor:pointer;white-space:normal!important}
body .content .obl-skin button[name="na_buy"]:hover{background:var(--orange)!important;transform:rotate(0)}
body .content .obl-skin button[name="na_buy"]:focus-visible{outline:3px solid var(--blue)}
/* "other enquiries" = a fold-out slip */
body .content .obl-skin details{margin:6px 26px 30px!important;padding:8px 0 0!important;border:0!important;border-top:1px dashed #C9A97F!important;background:transparent!important}
body .content .obl-skin summary{color:var(--blue)!important;font:700 13px/2 ui-monospace,'Courier New',monospace!important;letter-spacing:.06em;text-transform:uppercase;list-style:none;cursor:pointer}
body .content .obl-skin summary::-webkit-details-marker{display:none}
body .content .obl-skin summary:before{content:'▸ ';color:var(--orange)}body .content .obl-skin details[open] summary:before{content:'▾ '}
/* terms box (form>dl) if DeskCta ever shows it */
body .content .obl-skin dl{margin:10px 26px 22px!important;border:0!important;border-top:1px solid #C9A97F!important;background:transparent!important}
body .content .obl-skin dl>div{display:grid!important;grid-template-columns:150px 1fr;gap:4px 14px;padding:6px 0!important;border-bottom:1px dotted #C9A97F!important;background:transparent!important}
body .content .obl-skin dt{color:#9A6A3A!important;font:700 12px/1.6 ui-monospace,'Courier New',monospace!important;text-transform:uppercase;letter-spacing:.06em}
body .content .obl-skin dd{margin:0!important;color:var(--ink)!important;font-size:15.5px!important}
/* loan card form: label | field rows, fields as dotted lines */
body .content .obl-skin--form section{background:#FFFDF8 linear-gradient(90deg,transparent 0 184px,rgba(214,64,52,.35) 184px 185px,transparent 185px) no-repeat!important;background-position:0 0!important}
body .content .obl-skin--form section:before{top:0;height:8px;background:repeating-linear-gradient(90deg,var(--ink) 0 18px,transparent 18px 24px)}
body .content .obl-skin--form form{padding:30px 26px 34px!important}
body .content .obl-skin--form form:before{content:'LAINAUSKORTTI · SUOMI ROOLEISSA';display:block;margin:0 0 4px;color:#9A3B2E;font:700 11px/1 ui-monospace,'Courier New',monospace;letter-spacing:.16em}
body .content .obl-skin--form [class$="h"]{margin:0 0 18px!important;padding:0 0 10px!important;border-bottom:2px solid var(--ink)!important;font:800 22px/1.2 var(--hf)!important}
body .content .obl-skin--form label:not([class$="c"]){display:grid!important;grid-template-columns:150px 1fr;align-items:end;gap:0 20px;margin:0 0 14px!important;
  color:#9A6A3A!important;font:700 12px/1.4 ui-monospace,'Courier New',monospace!important;letter-spacing:.08em!important;text-transform:uppercase!important}
body .content .obl-skin--form input:not([type=hidden]):not([type=checkbox]),body .content .obl-skin--form select{margin:0!important;padding:6px 2px!important;border:0!important;border-bottom:1px dotted var(--ink2)!important;
  border-radius:0!important;background:transparent!important;color:var(--ink)!important;font:400 17px/1.3 var(--bf)!important;text-transform:none;letter-spacing:0;box-shadow:none!important}
body .content .obl-skin--form textarea{margin:0!important;padding:4px 6px!important;border:1px solid #D9C7AA!important;border-radius:0!important;line-height:28px!important;min-height:140px;
  background:#fff repeating-linear-gradient(180deg,transparent 0 27px,rgba(29,111,184,.18) 27px 28px)!important;background-attachment:local!important;color:var(--ink)!important;font:400 17px var(--bf)!important;text-transform:none;letter-spacing:0}
body .content .obl-skin--form label:has(textarea){align-items:start!important}
body .content .obl-skin--form :is(input,select,textarea):focus{outline:2px solid var(--blue)!important;outline-offset:2px}
body .content .obl-skin--form label[class$="c"]{display:flex!important;gap:10px;align-items:center;margin:18px 0 20px!important;color:var(--ink)!important;font:600 15px var(--bf)!important;text-transform:none;letter-spacing:0}
body .content .obl-skin--form input[type=checkbox]{width:18px!important;height:18px!important;accent-color:var(--orange)!important}
body .content .obl-skin--form button[type=submit],body .content .obl-skin details button{display:inline-block!important;padding:10px 18px 9px!important;border:2px solid #9A3B2E!important;border-radius:2px!important;
  background:transparent!important;color:#9A3B2E!important;font:700 14px/1.2 ui-monospace,'Courier New',monospace!important;letter-spacing:.1em!important;text-transform:uppercase!important;transform:rotate(-1deg);box-shadow:none!important;cursor:pointer}
body .content .obl-skin--form button[type=submit]:hover,body .content .obl-skin details button:hover{background:#9A3B2E!important;color:#fff!important}
body .content .obl-skin--form [class$="n"]{margin:12px 0 0!important;color:#7A869C!important;font:400 13px ui-monospace,'Courier New',monospace!important}
body .content .obl-skin details label{display:block!important;margin:10px 0 0!important;color:#9A6A3A!important;font:700 12px ui-monospace,'Courier New',monospace!important;text-transform:uppercase;letter-spacing:.06em}
body .content .obl-skin details :is(input,select,textarea){display:block;width:100%;margin-top:4px!important;padding:6px 2px!important;border:0!important;border-bottom:1px dotted var(--ink2)!important;border-radius:0!important;background:transparent!important;font:400 16px var(--bf)!important;text-transform:none}
@media(max-width:640px){
 body .content .obl-skin--cta section form:before{position:static;display:block;padding:14px 18px 0}
 body .content .obl-skin--cta section:before{top:72px}
 body .content .obl-skin [class$="m"]{padding:10px 18px 6px!important}body .content .obl-skin details{margin:6px 18px 30px!important}
 body .content .obl-skin [class$="a"]{text-align:left!important}
 body .content .obl-skin--form section{background:#FFFDF8!important}
 body .content .obl-skin--form form{padding:24px 18px 34px!important}
 body .content .obl-skin--form label:not([class$="c"]){grid-template-columns:1fr;gap:2px}
 body .content .obl-skin dl>div{grid-template-columns:1fr}
}
