/* Turku tänään – WordPress layer: lists, search, profile, comments, content basics, blocks. */
.skip:focus{position:fixed;left:12px;top:12px;width:auto;height:auto;clip:auto;z-index:100;padding:10px 14px;border-radius:12px;background:#fff;color:var(--ink);box-shadow:var(--sh)}
.searchsheet{position:fixed;left:50%;top:74px;z-index:59;width:min(640px,calc(100% - 24px));transform:translateX(-50%);padding:10px;border-radius:22px;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);box-shadow:0 30px 60px -30px rgba(15,30,38,.5),inset 0 0 0 1px rgba(15,30,38,.06)}
.searchsheet form{display:flex;gap:8px}
.searchsheet input{flex:1;min-width:0;padding:12px 16px;border-radius:14px;border:1.5px solid var(--line);background:var(--paper);font:16px var(--text)}
.island .live{display:flex;align-items:center;gap:8px;padding:0 12px 0 8px;font-family:var(--mono);font-size:21px;color:var(--sun);white-space:nowrap}
.island .live i{width:8px;height:8px;border-radius:50%;background:#4FD18B;box-shadow:0 0 0 4px rgba(79,209,139,.2)}
@media (max-width:640px){.island .live{display:none}}
.crumbs{margin:0 0 4px}
.crumbs ol{display:flex;gap:6px;flex-wrap:wrap;list-style:none;margin:0;padding:0;font-size:13px;font-weight:600;color:var(--ink-3)}
.crumbs li+li::before{content:"›";margin-right:6px}
.crumbs a:hover{color:var(--ink)}

/* prose inside articles and pages */
.prose a,.content a{color:var(--lake);text-decoration:underline;text-underline-offset:3px}
.prose h3,.content h3{font-size:22px;margin:1.4em 0 .5em}
.prose ul,.prose ol,.content ul,.content ol{padding-left:1.3em}
.prose li,.content li{margin:.3em 0}
.prose img,.content img{max-width:100%;height:auto;border-radius:18px}
.content figure,.prose figure{margin:1.6em 0}
.content figcaption,.prose figcaption,.wp-element-caption{font-size:13px;color:var(--ink-2);margin-top:8px;text-align:left}
.content blockquote:not([class]){margin:1.6em 0;padding:4px 0 4px 20px;border-left:4px solid var(--brick);font-size:20px;font-family:var(--display);font-weight:700;letter-spacing:-.02em}
.content table,.prose table{width:100%;border-collapse:collapse;font-size:15px;margin:1.4em 0;display:block;overflow-x:auto}
.content th,.content td,.prose th,.prose td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}
.alignwide{max-width:none}.alignleft{float:left;margin:0 20px 10px 0}.alignright{float:right;margin:0 0 10px 20px}.aligncenter{margin-left:auto;margin-right:auto}
.wp-block-embed iframe,.content iframe{max-width:100%;border-radius:18px}
.tk-pg .txt>*:first-child{margin-top:0}.tk-pg .txt>*:last-child{margin-bottom:0}
.tk-pg .txt p{margin:0 0 .9em}
.tk-pg .settings.noside{grid-template-columns:minmax(0,1fr);max-width:860px}
.tk-pg .phead .lead{font-size:18px;color:#33434B;margin-top:10px;max-width:58ch}
.tk-pg a.row{color:inherit;text-decoration:none}
.tk-pg a.row:hover{background:var(--paper)}

/* article bits from the engine */
.tk-art .srcs2{margin:1.6em 0 0;padding:14px 18px;border-radius:18px;background:var(--card);box-shadow:var(--sh);font-size:15px}
.tk-art .srcs2 summary{cursor:pointer;font-weight:800}
.tk-art .srcs2 ol{margin:10px 0 0}
.tk-art .content .fix{margin-top:1.6em}
.tk-art .side .sc dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:14px}
.tk-art .side .sc dt{color:var(--ink-3);font-weight:700}
.tk-art .side .sc dd{margin:0;font-weight:700}
.tk-art .side .sc .btn{margin-top:12px}
.tk-art .pic .img img{width:100%;height:100%;object-fit:cover}
.tk-art .by .who a:hover{text-decoration:underline}
.tk-art .tcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tk-home .tcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.tk-home .tcard:hover img{transform:scale(1.06)}
.tk-home .sheet .art img{width:100%;height:100%;object-fit:cover}
.tk-home .lock .consent{display:flex;gap:8px;align-items:flex-start;margin-top:10px;font-size:12px;color:#BFD5E6;max-width:440px;line-height:1.45}
.tk-home .lock .consent input{margin-top:2px;accent-color:var(--brick)}
.tk-home .lock .fmsg{min-height:18px;margin-top:8px;font-size:13.5px;font-weight:700;color:#FFE3D9}
.tk-home .phone .inp{text-decoration:none;color:inherit}
.tk-home .w-council{color:#fff;text-decoration:none}
.tk-home .story h2 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.tk-home .rc h3 a:hover{text-decoration:underline}

/* comments as bubbles */
.convo .cnote{font-size:12.5px;color:var(--ink-3);margin:10px 0 6px}
.convo .cform{margin-top:12px}
.convo .cfield{margin:0 0 8px}
.convo .cfield input{width:100%;padding:9px 12px;border-radius:12px;border:1px solid var(--line);background:var(--paper);font:14px var(--text)}
.convo .cbox textarea{flex:1;border:0;background:transparent;font:14.5px var(--text);outline:none;resize:none;min-height:22px;padding:6px 0}
.convo .comment-reply-title,.convo .logged-in-as{display:none}
.convo .bub .tx{overflow-wrap:anywhere}
.convo .comment-awaiting-moderation{font-size:12px;color:#7A5600}

/* community bits */
.tk-com .chead p.h1{font-family:var(--display);font-weight:800;letter-spacing:-.055em;font-size:clamp(34px,4vw,52px);line-height:1;margin-top:12px}
.tk-com .chead p.h1 span{color:var(--brick)}
.tk-com .chead .r .btn{align-self:flex-end}
.tk-com a.it{text-decoration:none;color:inherit}
.tk-com .it[hidden]{display:none}
.tk-com .qcard .qh{font-size:clamp(22px,2.2vw,28px);letter-spacing:-.035em;font-family:var(--display);line-height:1.1}
.tk-com .qcard .tags a{padding:4px 10px;border-radius:999px;font-size:11.5px;font-weight:800;text-decoration:none}
.tk-com .msg .b{overflow-wrap:anywhere}
.tk-com .composer .btn{margin:6px 0}
.tk-com .pane3 .empty2{margin:auto}

/* list views */
.lhead{padding:34px 0 26px}
.lhead h1{font-family:var(--display);font-size:clamp(36px,4.6vw,62px);font-weight:800;letter-spacing:-.055em;margin-top:10px}
.lhead h1 span{color:var(--brick)}
.lhead .lcode{display:inline-block;margin-top:12px;font-family:var(--mono);font-size:22px;color:var(--brick)}
.lhead .ldesc{font-size:17px;color:#33434B;margin-top:10px;max-width:62ch}
.lhead .ldesc p{margin:0}
.lstats{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.lstats div{padding:12px 16px;border-radius:18px;background:var(--card);box-shadow:var(--sh)}
.lstats b{display:block;font-family:var(--display);font-size:24px}
.lstats small{font-size:12px;font-weight:700;color:var(--ink-2)}
.lsearch{display:flex;gap:8px;max-width:560px;margin-top:16px}
.lsearch input{flex:1;min-width:0;padding:12px 16px;border-radius:14px;border:1.5px solid var(--line);background:#fff;font:16px var(--text)}
.lgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.lcard{display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:var(--card);box-shadow:var(--sh);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.lcard:hover{transform:translateY(-3px)}
.lcard .lm{position:relative;display:block;aspect-ratio:16/10;overflow:hidden}
.lcard .lm svg,.lcard .lm img{width:100%;height:100%;object-fit:cover;display:block}
.lcard .ldate{position:absolute;left:12px;top:12px;padding:6px 10px;border-radius:14px;background:#fff;box-shadow:var(--sh);font-size:11px;font-weight:800;text-align:center;line-height:1.1}
.lcard .ldate b{display:block;font-family:var(--display);font-size:22px}
.lcard .lb{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.lcard .lk2{font-size:11.5px;font-weight:800;letter-spacing:.06em}
.lcard h3{font-size:20px;line-height:1.15}
.lcard h3 a:hover{text-decoration:underline}
.lcard p{font-size:14.5px;color:var(--ink-2)}
.lcard .lmeta{margin-top:auto;font-size:12.5px;color:var(--ink-3);font-weight:600}
.pager{display:flex;gap:6px;justify-content:center;margin-top:28px;flex-wrap:wrap}
.pager a,.pager span{min-width:42px;height:42px;padding:0 12px;border-radius:14px;display:grid;place-items:center;background:var(--card);box-shadow:var(--sh);font-weight:700}
.pager .current{background:var(--ink);color:#fff}
.lempty{padding:40px;border-radius:24px;background:var(--card);box-shadow:var(--sh);text-align:center}
.lempty b{font-family:var(--display);font-size:22px}
.lempty a{color:var(--lake);text-decoration:underline}
.e404{max-width:620px;margin:40px auto 0;text-align:center}
.e404 svg{width:100%;height:auto;margin-bottom:22px}
.e404 h1{font-size:clamp(32px,4vw,48px);font-weight:800;letter-spacing:-.05em}
.e404 p{color:var(--ink-2);margin:10px 0}
.e404 .lsearch{margin:18px auto}
@media (max-width:980px){.lgrid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.lgrid{grid-template-columns:1fr}}

/* member profile */
.tk-pg .profile .contactcard{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:20px;border-radius:22px;background:linear-gradient(180deg,#EAF3FA,#fff 60%);box-shadow:var(--sh)}
.tk-pg .profile .contactcard .av{width:112px;height:112px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 4px #fff,0 12px 24px -12px rgba(15,30,38,.5);margin-bottom:8px}
.tk-pg .profile .contactcard .av svg,.tk-pg .profile .contactcard .av img{width:100%;height:100%;object-fit:cover}
.tk-pg .profile .contactcard b{font-family:var(--display);font-size:22px}
.tk-pg .profile .contactcard small{color:var(--ink-2);font-weight:600}
.tk-pg .profile .desk{margin-top:6px;padding:3px 10px;border-radius:999px;color:#fff;font-size:11.5px;font-weight:800}
.tk-team .promise .prose h2{font-size:clamp(26px,2.8vw,36px);margin:0 0 14px}
.tk-team .ft .tile img{width:100%;height:100%;object-fit:cover}
.tk-team .chief .ph img,.tk-team .chief .ph svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tk-team .mw .av img,.tk-team .bl .av img,.tk-team .tli .who img{width:100%;height:100%;object-fit:cover}
.tk-art .stepper ol.upd{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));row-gap:16px}
@media (max-width:640px){.tk-art .stepper ol.upd::before{display:none}}
