/* Kempeleen Kokoomus - jaettu brandi-design-systeemi (etusivun pohjalta). Scope: .kk. Vain CSS. */
.kk{--sininen:var(--global-palette1,#0B288C);--sininen-d:var(--global-palette2,#081d66);--taivas:var(--global-palette7,#CCDDFE);--taivas-d:#bcd0f7;--ruis:var(--global-palette8,#ECE0AA);--ruis-d:#D4C190;--kupari:var(--global-palette4,#9C7828);--syaani:#ABEFFF;--niitty:#99AC94;--valkoinen:var(--global-palette9,#FFFDF8);--ink:var(--global-palette3,#1b2440);--ar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 102 78'%3E%3Cpath transform='matrix(0 -1 -1 0 844.62 228.37)' d='M172.68 822.72 C175.01 821.82 178.00 822.81 179.33 824.93 L186.89 837.00 C188.21 839.12 190.39 839.12 191.71 837.00 L199.27 824.93 C200.60 822.81 203.59 821.82 205.92 822.72 L219.58 828.03 C221.91 828.94 223.03 827.79 222.08 825.48 L191.04 750.55 C190.08 748.24 188.52 748.24 187.56 750.55 L156.52 825.48 C155.56 827.79 156.69 828.94 159.02 828.03 Z'/%3E%3C/svg%3E");--ck:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 217.66 156.18'%3E%3Cg transform='translate(-84.47 839.12) scale(1 -1)'%3E%3Cpath d='M172.68 822.72 C175.01 821.82 178.00 822.81 179.33 824.93 L186.89 837.00 C188.21 839.12 190.39 839.12 191.71 837.00 L199.27 824.93 C200.60 822.81 203.59 821.82 205.92 822.72 L219.58 828.03 C221.91 828.94 223.03 827.79 222.08 825.48 L191.04 750.55 C190.08 748.24 188.52 748.24 187.56 750.55 L156.52 825.48 C155.56 827.79 156.69 828.94 159.02 828.03'/%3E%3Cpath d='M115.02 785.07 C117.31 786.08 118.72 788.90 118.16 791.34 L114.97 805.21 C114.41 807.65 115.94 809.19 118.38 808.63 L132.26 805.43 C134.70 804.87 137.52 806.29 138.53 808.58 L144.43 821.99 C145.44 824.28 147.04 824.26 148.00 821.95 L179.04 747.02 C180.00 744.71 178.89 743.60 176.58 744.56 L101.65 775.59 C99.33 776.55 99.32 778.16 101.61 779.17'/%3E%3Cpath d='M100.87 717.67 C101.78 720.00 100.78 723.00 98.66 724.33 L86.59 731.88 C84.47 733.21 84.47 735.38 86.59 736.71 L98.66 744.26 C100.78 745.59 101.78 748.58 100.87 750.92 L95.56 764.57 C94.66 766.90 95.81 768.03 98.12 767.07 L173.05 736.04 C175.36 735.08 175.36 733.51 173.05 732.55 L98.12 701.52 C95.81 700.56 94.66 701.68 95.56 704.01'/%3E%3Cpath d='M277.73 750.92 C276.82 748.58 277.82 745.59 279.94 744.26 L292.01 736.71 C294.13 735.38 294.13 733.21 292.01 731.88 L279.94 724.33 C277.82 723.00 276.82 720.00 277.73 717.67 L283.04 704.01 C283.94 701.68 282.79 700.56 280.48 701.52 L205.55 732.55 C203.24 733.51 203.24 735.08 205.55 736.04 L280.48 767.07 C282.79 768.03 283.94 766.90 283.04 764.57'/%3E%3Cpath d='M240.08 808.58 C241.08 806.29 243.90 804.87 246.34 805.43 L260.22 808.63 C262.66 809.19 264.19 807.65 263.63 805.21 L260.44 791.34 C259.88 788.90 261.29 786.08 263.58 785.07 L276.99 779.17 C279.28 778.16 279.27 776.55 276.95 775.59 L202.02 744.56 C199.71 743.60 198.60 744.71 199.56 747.02 L230.60 821.95 C231.56 824.26 233.16 824.28 234.17 821.99'/%3E%3Cpath d='M189.30 690.95 C203.77 690.95 216.18 699.75 221.47 712.29 C222.21 714.03 221.38 716.05 219.64 716.78 L190.60 728.80 C189.77 729.15 188.83 729.15 188.00 728.80 L158.96 716.78 C157.22 716.05 156.39 714.03 157.13 712.29 C162.42 699.75 174.83 690.95 189.30 690.95'/%3E%3C/g%3E%3C/svg%3E");--ku:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='560' height='132'%3E%3Cg fill='%23C9B57E' font-family='Epilogue,Arial,sans-serif' font-weight='800' font-size='46' letter-spacing='7'%3E%3Ctext x='0' y='52'%3EKOKOOMUS%3C/text%3E%3Ctext x='280' y='118'%3EKOKOOMUS%3C/text%3E%3Ctext x='-280' y='118'%3EKOKOOMUS%3C/text%3E%3C/g%3E%3C/svg%3E");font-family:'Epilogue',sans-serif;color:var(--ink);background:var(--valkoinen);line-height:1.5;-webkit-font-smoothing:antialiased}
.kk *{box-sizing:border-box;margin:0;padding:0}
.kk .sec{position:relative;padding:clamp(64px,8vw,128px) clamp(22px,6vw,96px);overflow:hidden}
.kk .inner{max-width:1200px;margin:0 auto;position:relative;z-index:3}
.kk .eyebrow{font:600 .78rem/1 'Epilogue';letter-spacing:.24em;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px;margin-bottom:22px}
.kk .amark{background:currentColor;-webkit-mask:var(--ar) center/contain no-repeat;mask:var(--ar) center/contain no-repeat;display:inline-block;width:26px;height:16px;flex:0 0 auto}
.kk .sig em{display:block;font-family:'Lora';font-style:italic;font-weight:500;font-size:clamp(1.5rem,3vw,2.3rem);line-height:1.06;margin-bottom:.08em}
.kk .sig b{display:block;font-family:'Epilogue';font-weight:800;text-transform:uppercase;letter-spacing:-.018em;font-size:clamp(2.5rem,6.4vw,4.7rem);line-height:.94}
.kk .lead{font-family:'Lora';font-style:italic;font-weight:500;font-size:clamp(1.05rem,1.7vw,1.32rem);line-height:1.42}
.kk .body{font-family:'Lora';font-size:1.04rem;line-height:1.62;max-width:52ch}
.kk .btn{display:inline-block;font:600 .8rem/1 'Epilogue';letter-spacing:.1em;text-transform:uppercase;padding:16px 30px;border-radius:40px;text-decoration:none;cursor:pointer;transition:opacity .2s,background .2s,color .2s}
.kk .btn:hover{opacity:.9}
.kk .arrowlink{font:600 .78rem/1 'Epilogue';letter-spacing:.12em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;gap:11px;color:var(--sininen)}
.kk .arrowlink .amark{width:24px;height:15px;transition:transform .2s}
.kk .arrowlink:hover .amark{transform:translateX(4px)}
.kk .gnum{position:absolute;font:800 clamp(8rem,22vw,19rem)/.8 'Epilogue';letter-spacing:-.03em;pointer-events:none;z-index:1;opacity:.05}
.kk .duo{position:relative;overflow:hidden;background:var(--sininen)}
.kk .duo>img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.06) brightness(1.04);mix-blend-mode:luminosity}
.kk .site-head{position:sticky;top:0;z-index:60;background:rgba(255,253,248,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(11,40,140,.1);display:flex;align-items:center;justify-content:space-between;padding:13px clamp(22px,6vw,96px)}
.kk .brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.kk .brand img{height:46px;display:block}
.kk .nav{display:flex;align-items:center;gap:30px}
.kk .nav a{font:600 .82rem/1 'Epilogue';letter-spacing:.03em;text-decoration:none;color:var(--ink);transition:color .15s}
.kk .nav a:hover,.kk .nav a.on{color:var(--sininen)}
.kk .nav .cta{background:var(--sininen);color:var(--valkoinen);padding:12px 22px;border-radius:30px;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}
.kk .nav .cta:hover{color:var(--valkoinen);background:#0a2278}
.kk .hero{min-height:94vh;display:flex;align-items:flex-end;color:#fff;padding-bottom:clamp(54px,7vw,96px)}
.kk .hero .duo{position:absolute;inset:0}
.kk .hero::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(168deg,rgba(8,24,80,.34) 0%,rgba(8,24,80,.5) 48%,rgba(8,24,80,.82) 100%)}
.kk .hero .cwm{position:absolute;z-index:2;top:-70px;right:-60px;width:520px;height:374px;background:var(--taivas);-webkit-mask:var(--ck) center/contain no-repeat;mask:var(--ck) center/contain no-repeat;opacity:.14}
.kk .hero .eyebrow{color:var(--taivas)}
.kk .hero .sig em{color:var(--ruis)}
.kk .hero .sig b{color:#fff}
.kk .hero .lead{color:var(--taivas);max-width:34ch;margin-top:26px}
.kk .hero .row{display:flex;gap:14px;margin-top:38px;flex-wrap:wrap}
.kk .hero .btn.solid{background:var(--valkoinen);color:var(--sininen)}
.kk .hero .btn.ghost{border:1.5px solid rgba(255,255,255,.5);color:#fff}
.kk .hero .idx{position:absolute;left:clamp(22px,6vw,96px);bottom:34px;z-index:3;font:600 .72rem/1 'Epilogue';letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.kk .esittely{background:var(--valkoinen)}
.kk .esittely .gnum{color:var(--sininen);top:40px;right:2%}
.kk .esittely .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(34px,5vw,80px);align-items:center}
.kk .esittely .eyebrow{color:var(--kupari)}
.kk .esittely .sig em{color:var(--kupari)}
.kk .esittely .sig b{color:var(--sininen);font-size:clamp(2rem,3.8vw,3rem)}
.kk .esittely .body{color:var(--ink);margin-top:20px}
.kk .esittely .arrowlink{margin-top:26px}
.kk .esittely .arrowlink .amark{color:var(--kupari)}
.kk .esittely .figure{position:relative}
.kk .esittely .figure .duo{border-radius:16px;aspect-ratio:4/5}
.kk .esittely .figure .tag{position:absolute;left:-26px;bottom:34px;background:var(--valkoinen);padding:20px 26px;border-radius:14px;box-shadow:0 18px 50px -22px rgba(11,40,140,.45);border-left:4px solid var(--kupari)}
.kk .esittely .figure .tag .n{font:800 2.8rem/.9 'Epilogue';color:var(--sininen);display:flex;align-items:center;gap:12px}
.kk .esittely .figure .tag .n .amark{width:30px;height:19px;color:var(--kupari)}
.kk .esittely .figure .tag .l{font:600 .72rem/1.4 'Epilogue';letter-spacing:.14em;text-transform:uppercase;color:var(--kupari);margin-top:8px;max-width:15ch}
.kk .ajankohtaista{background:var(--taivas)}
.kk .ajankohtaista .gnum{color:var(--sininen);top:30px;left:1%;opacity:.06}
.kk .ajankohtaista .top{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:18px;margin-bottom:46px}
.kk .ajankohtaista .eyebrow{color:var(--kupari)}
.kk .ajankohtaista .sig em{color:var(--sininen)}
.kk .ajankohtaista .sig b{color:var(--sininen);font-size:clamp(1.9rem,3.6vw,2.8rem)}
.kk .ajankohtaista .arrowlink .amark{color:var(--sininen)}
.kk .cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.kk .ncard{background:var(--valkoinen);border-radius:16px;padding:30px 28px 32px;border-top:4px solid var(--sininen);display:flex;flex-direction:column;min-height:264px}
.kk .ncard:nth-child(2){border-top-color:var(--kupari)}
.kk .ncard .cat{font:600 .7rem/1 'Epilogue';letter-spacing:.18em;text-transform:uppercase;color:var(--kupari);display:flex;align-items:center;gap:9px;margin-bottom:18px}
.kk .ncard .cat .amark{width:18px;height:11px}
.kk .ncard .date{font:600 .82rem/1 'Radio Canada Big';color:var(--ink);opacity:.55;margin-bottom:8px}
.kk .ncard h3{font:800 1.32rem/1.16 'Epilogue';text-transform:uppercase;color:var(--sininen);letter-spacing:-.01em}
.kk .ncard p{font-family:'Lora';font-size:.97rem;line-height:1.5;color:var(--ink);margin-top:12px}
.kk .ncard .arrowlink{margin-top:auto;padding-top:22px;font-size:.72rem}
.kk .ncard .arrowlink .amark{color:var(--kupari);width:20px;height:13px}
.kk .teemat{background:var(--ruis)}
.kk .teemat::before{content:'';position:absolute;inset:0;background:var(--ku);background-size:560px 132px;opacity:.55;z-index:0}
.kk .teemat .gnum{color:var(--sininen);top:30px;right:2%;opacity:.07}
.kk .teemat .head{max-width:60ch;margin-bottom:48px}
.kk .teemat .eyebrow{color:var(--kupari)}
.kk .teemat .sig em{color:var(--kupari)}
.kk .teemat .sig b{color:var(--sininen)}
.kk .teemat .head p{font-family:'Lora';font-style:italic;color:var(--ink);margin-top:16px;font-size:1.1rem;max-width:48ch}
.kk .qgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.kk .qcard{background:var(--valkoinen);border-radius:16px;padding:34px 32px;display:flex;gap:24px;box-shadow:0 24px 60px -34px rgba(11,40,140,.4)}
.kk .qcard .no{font:800 2.1rem/.9 'Epilogue';color:var(--ruis-d);flex:0 0 auto;width:58px}
.kk .qcard h3{font:800 1.24rem/1.18 'Epilogue';text-transform:uppercase;color:var(--sininen);letter-spacing:-.01em;display:flex;align-items:flex-start;gap:10px}
.kk .qcard h3 .amark{width:20px;height:13px;color:var(--kupari);margin-top:4px;flex:0 0 auto}
.kk .qcard .kanta{font-family:'Lora';font-size:1rem;line-height:1.55;color:var(--ink);margin-top:12px}
.kk .qcard .kanta b{font-family:'Epilogue';font-weight:700;font-style:normal;color:var(--kupari);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;display:block;margin-bottom:5px}
.kk .tapahtumat{background:var(--valkoinen)}
.kk .tapahtumat .gnum{color:var(--sininen);top:40px;left:1%;opacity:.05}
.kk .tapahtumat .top{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:18px;margin-bottom:42px}
.kk .tapahtumat .eyebrow{color:var(--kupari)}
.kk .tapahtumat .sig em{color:var(--kupari)}
.kk .tapahtumat .sig b{color:var(--sininen);font-size:clamp(1.9rem,3.6vw,2.8rem)}
.kk .tapahtumat .arrowlink .amark{color:var(--sininen)}
.kk .erow{display:grid;grid-template-columns:96px 132px 1fr auto;gap:30px;align-items:center;padding:28px 6px;border-bottom:1px solid rgba(11,40,140,.16);transition:background .2s}
.kk .erow:first-of-type{border-top:1px solid rgba(11,40,140,.16)}
.kk .erow:hover{background:rgba(204,221,254,.28)}
.kk .erow .day{font:800 2.1rem/.85 'Epilogue';color:var(--sininen);text-align:center}
.kk .erow .day span{display:block;font:600 .72rem/1 'Epilogue';letter-spacing:.14em;text-transform:uppercase;color:var(--kupari);margin-top:6px}
.kk .erow .badge{font:600 .68rem/1 'Epilogue';letter-spacing:.14em;text-transform:uppercase;color:var(--kupari);border:1px solid var(--ruis-d);border-radius:30px;padding:8px 14px;text-align:center;justify-self:start}
.kk .erow h4{font:800 1.22rem/1.1 'Epilogue';text-transform:uppercase;color:var(--ink)}
.kk .erow .loc{font-family:'Lora';font-style:italic;color:var(--kupari);margin-top:5px}
.kk .erow .go{width:42px;height:26px;background:var(--sininen);-webkit-mask:var(--ar) center/contain no-repeat;mask:var(--ar) center/contain no-repeat}
.kk .liity{background:var(--sininen);color:#fff;text-align:center}
.kk .liity .cwm{position:absolute;z-index:1;left:50%;top:46%;transform:translate(-50%,-50%);width:680px;height:520px;background:#fff;-webkit-mask:var(--ar) center/contain no-repeat;mask:var(--ar) center/contain no-repeat;opacity:.07;rotate:8deg}
.kk .liity .eyebrow{color:var(--taivas);justify-content:center}
.kk .liity .sig em{color:var(--ruis)}
.kk .liity .sig b{color:#fff}
.kk .liity .lead{color:var(--taivas);max-width:42ch;margin:20px auto 0;text-align:center}
.kk .liity .perks{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;margin:34px auto 6px}
.kk .liity .perks span{font:600 .76rem/1 'Epilogue';letter-spacing:.1em;text-transform:uppercase;color:var(--taivas);display:inline-flex;align-items:center;gap:9px}
.kk .liity .perks .amark{width:18px;height:11px;color:var(--ruis)}
.kk .liity .btn{background:var(--ruis);color:var(--sininen);margin-top:30px}
.kk .insta{background:var(--kupari);color:#fff}
.kk .insta .top{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:18px;margin-bottom:40px}
.kk .insta .eyebrow{color:#fff}
.kk .insta .sig em{color:var(--ruis)}
.kk .insta .sig b{color:#fff;font-size:clamp(1.9rem,3.6vw,2.8rem)}
.kk .insta .handle{color:#fff;text-decoration:none;font:600 .8rem/1 'Epilogue';letter-spacing:.06em;display:inline-flex;align-items:center;gap:10px;border:1.5px solid rgba(255,255,255,.5);padding:13px 22px;border-radius:30px}
.kk .insta .handle:hover{background:rgba(255,255,255,.12)}
.kk .igrid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.kk .igrid .duo{aspect-ratio:1;border-radius:10px;cursor:pointer}
.kk .igrid .duo>img{mix-blend-mode:normal;filter:none;transition:transform .3s}
@media(hover:hover){.kk .igrid .duo:hover>img{transform:scale(1.05)}}
.kk .foot{background:var(--sininen-d);color:var(--taivas);padding:clamp(54px,6vw,84px) clamp(22px,6vw,96px) 32px}
.kk .foot .cols{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:42px}
.kk .foot img{height:62px;margin-bottom:20px}
.kk .foot .blurb{font-family:'Lora';font-size:.96rem;line-height:1.6;color:rgba(204,221,254,.82);max-width:32ch}
.kk .foot h5{font:700 .72rem/1 'Epilogue';letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:16px}
.kk .foot a{display:block;color:rgba(204,221,254,.85);text-decoration:none;font-size:.93rem;margin-bottom:10px}
.kk .foot a:hover{color:#fff}
.kk .foot .bot{max-width:1200px;margin:48px auto 0;padding-top:22px;border-top:1px solid rgba(204,221,254,.18);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.78rem;color:rgba(204,221,254,.6)}
@media(max-width:900px){.kk .nav{display:none}.kk .esittely .grid,.kk .cards3,.kk .qgrid,.kk .foot .cols{grid-template-columns:1fr}.kk .igrid{grid-template-columns:repeat(3,1fr)}.kk .erow{grid-template-columns:70px 1fr auto;gap:18px}.kk .erow .badge{display:none}}

/* --- Block-friendly nuolimerkit: ei inline-spaneja, ei custom HTML:aa. 
   Anna lohkolle luokka (eyebrow / arrowlink / cat / perks span / qcard h3) ja nuoli tulee CSS:sta. --- */
.kk .eyebrow::before,.kk .arrowlink::after,.kk .cat::before,.kk .qcard h3::before,.kk .liity .perks span::before{content:"";background:currentColor;-webkit-mask:var(--ar) center/contain no-repeat;mask:var(--ar) center/contain no-repeat;display:inline-block;flex:0 0 auto;width:24px;height:15px}
.kk .cat::before{width:18px;height:11px}
.kk .liity .perks span::before{width:18px;height:11px;color:var(--ruis)}
.kk .qcard h3::before{width:20px;height:13px;color:var(--kupari);margin-top:4px}
.kk .arrowlink:hover::after{transform:translateX(4px)}

/* --- .sig: salli lohkoeditorin lihavointi (<strong>) ison rivin tyylina; kursivointi (<em>) toimii jo --- */
.kk .sig strong{display:block;font-family:'Epilogue';font-weight:800;text-transform:uppercase;letter-spacing:-.018em;font-size:clamp(2.5rem,6.4vw,4.7rem);line-height:.94}
.kk .hero .sig strong{color:#fff}
.kk .esittely .sig strong{color:var(--sininen);font-size:clamp(2rem,3.8vw,3rem)}
.kk .ajankohtaista .sig strong{color:var(--sininen);font-size:clamp(1.9rem,3.6vw,2.8rem)}
.kk .teemat .sig strong{color:var(--sininen)}
.kk .tapahtumat .sig strong{color:var(--sininen);font-size:clamp(1.9rem,3.6vw,2.8rem)}
.kk .liity .sig strong{color:#fff}
.kk .insta .sig strong{color:#fff;font-size:clamp(1.9rem,3.6vw,2.8rem)}

/* === Alasivujen lisaykset (lohkopohjainen) === */
/* Sektion valistys nyt luokalla .sec (lohkot = div, ei <section>). Anna jokaiselle sektioryhmalle luokka: sec + tyyppiluokka. */
.kk .sec-white{background:var(--valkoinen)}
.kk .sec-taivas{background:var(--taivas)}
.kk .sec-ruis{background:var(--ruis)}
.kk .sec-blue{background:var(--sininen);color:#fff}
/* Sivun otsikkobanneri */
.kk .pagehead{background:var(--sininen);color:#fff}
.kk .pagehead .eyebrow{color:var(--taivas)}
.kk .pagehead .sig em{color:var(--ruis)}
.kk .pagehead .sig strong,.kk .pagehead .sig b{color:#fff;font-size:clamp(2.2rem,5vw,3.6rem)}
.kk .pagehead .lead{color:var(--taivas);max-width:46ch;margin-top:20px}
.kk .pagehead .cwm{position:absolute;z-index:1;top:-60px;right:-50px;width:420px;height:300px;background:var(--taivas);-webkit-mask:var(--ck) center/contain no-repeat;mask:var(--ck) center/contain no-repeat;opacity:.12}
/* Henkilokortti (valtuutetut/hallitus) */
.kk .people{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.kk .pcard{background:var(--valkoinen);border-radius:16px;overflow:hidden;border-top:4px solid var(--sininen);display:flex;flex-direction:column}
.kk .pcard .wp-block-image{margin:0}
.kk .pcard .wp-block-image img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.kk .pcard .meta{padding:22px 22px 26px}
.kk .pcard h3{font:800 1.12rem/1.14 'Epilogue';text-transform:uppercase;color:var(--sininen);letter-spacing:-.01em;margin:0}
.kk .pcard .role{font-family:'Lora';font-style:italic;color:var(--kupari);margin:6px 0 0;font-size:.95rem}
@media(max-width:900px){.kk .people{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.kk .people{grid-template-columns:1fr}}

/* .sig: salli semanttinen otsikkolohko (h1-h3) ison rivin tyylina */
.kk .sig :is(h1,h2,h3){display:block;font-family:'Epilogue';font-weight:800;text-transform:uppercase;letter-spacing:-.018em;line-height:.94;margin:0;color:var(--sininen)}
.kk .pagehead .sig :is(h1,h2,h3){color:#fff;font-size:clamp(2.2rem,5vw,3.6rem)}
.kk .hero .sig :is(h1,h2,h3){color:#fff}
/* Button-lohko -> brandinappi */
.kk .wp-block-button__link{font:600 .8rem/1 'Epilogue';letter-spacing:.1em;text-transform:uppercase;padding:16px 30px;border-radius:40px;text-decoration:none;display:inline-block}
.kk .wp-block-button__link{background:var(--sininen);color:var(--valkoinen)}
.kk .pagehead .wp-block-button__link,.kk .liity .wp-block-button__link{background:var(--ruis);color:var(--sininen)}
.kk .wp-block-button__link:hover{opacity:.9}

.kk .pcard .ph{aspect-ratio:4/5;background:linear-gradient(135deg,var(--taivas),#bcd0f7);display:block}

/* === Lohkoyhteensopivuus: grid/flex-komponenttien sisakaare lapinakyvaksi === */
.kk .cards3 > .wp-block-group__inner-container,.kk .qgrid > .wp-block-group__inner-container,.kk .igrid > .wp-block-group__inner-container,.kk .people > .wp-block-group__inner-container,.kk .perks > .wp-block-group__inner-container,.kk .erow > .wp-block-group__inner-container,.kk .grid > .wp-block-group__inner-container,.kk .top > .wp-block-group__inner-container,.kk .qcard > .wp-block-group__inner-container,.kk .pcard .meta > .wp-block-group__inner-container,.kk .erow .day > .wp-block-group__inner-container{display:contents}
/* erow paivamaaran kuukausi lohkona */
.kk .erow .day .m{display:block;font:600 .72rem/1 'Epilogue';letter-spacing:.14em;text-transform:uppercase;color:var(--kupari);margin-top:6px}
.kk .erow .day p{margin:0}
/* perks lohkoina (paragrafit) */
.kk .perks p{font:600 .76rem/1 'Epilogue';letter-spacing:.1em;text-transform:uppercase;color:var(--taivas);display:inline-flex;align-items:center;gap:9px;margin:0}
.kk .perks p::before{content:"";background:currentColor;-webkit-mask:var(--ar) center/contain no-repeat;mask:var(--ar) center/contain no-repeat;display:inline-block;flex:0 0 auto;width:18px;height:11px}
.kk .liity .perks p::before{color:var(--ruis)}


/* qcard: typografia ja varit (layout = wp:columns natiivisti) */
.kk .qcard{background:#fff;border-radius:12px;padding:44px 40px;border-left:4px solid var(--sininen)}
.kk .qcard-no p{font:800 2.4rem/1 'Epilogue';color:var(--kupari);margin:0}
.kk .qcard-title .eyebrow{font-size:.68rem;letter-spacing:.16em;color:var(--kupari);margin:0 0 6px}
.kk .qcard-title h3{font:800 1rem/1.1 'Epilogue';text-transform:uppercase;color:var(--sininen);margin:0 0 8px;letter-spacing:.02em}
.kk .qcard-price{font:600 .95rem/1.4 'Epilogue';color:var(--sininen);margin:0}
.kk .qcard-desc p{font-family:'Lora';font-size:.95rem;line-height:1.6;color:var(--sininen);margin:0}
.kk .qcard .wp-block-columns{align-items:center;gap:24px}
/* Sivuston nimi piilotetaan headerista */
.site-branding .site-title,.site-header .site-title{display:none}

/* liity-card: hinta+otsikko+kuvaus kortit sinisella taustalla */
.kk .liity-hero{text-align:left;max-width:860px}
.kk .liity-heading{font-size:clamp(2rem,4vw,3rem);line-height:1.1;margin:16px 0 0;color:#fff}
.kk .liity-heading strong{font-family:'Epilogue';font-weight:800;text-transform:uppercase;color:#fff}
.kk .liity-heading em{font-family:'Lora';font-style:italic;font-weight:400;color:var(--ruis)}
.kk .liity-lead{font-family:'Lora';font-size:1.05rem;line-height:1.65;color:rgba(255,253,248,.88);max-width:56ch;margin:0}
.kk .liity-cards{gap:20px;align-items:stretch}
.kk .liity-card{background:rgba(255,253,248,.08);border:1px solid rgba(255,253,248,.22);border-radius:14px;padding:32px 28px;height:100%}
.kk .liity-card > .wp-block-group__inner-container{display:flex;flex-direction:column;gap:12px}
.kk .liity-card__price{font:800 3rem/1 'Epilogue';color:#fff;margin:0}
.kk .liity-card__title{font:700 .82rem/1 'Epilogue';letter-spacing:.12em;text-transform:uppercase;color:var(--ruis);margin:0}
.kk .liity-card__desc{font-family:'Lora';font-size:.95rem;line-height:1.6;color:rgba(255,253,248,.82);margin:0}
.kk .liity .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:#fff;border:2px solid #fff}
.kk .liity .wp-block-button.is-style-outline .wp-block-button__link:hover{background:#fff;color:var(--sininen)}
@media(max-width:640px){.kk .liity-cards{flex-direction:column}}

/* === Liity jaseneksi -sivu (lj) === */
.kk .lj{background:var(--sininen);color:#fff;position:relative;overflow:hidden}
.kk .lj .inner{position:relative;z-index:2;padding:clamp(72px,8vw,120px) 0}
.kk .lj-ck{position:absolute;z-index:1;right:-120px;bottom:-80px;width:480px;height:480px;background:#fff;-webkit-mask:var(--ck) center/contain no-repeat;mask:var(--ck) center/contain no-repeat;opacity:.07}
.kk .lj .lj-ey{color:var(--taivas);justify-content:flex-start;margin-bottom:28px}
.kk .lj-title{font-size:clamp(2.4rem,5vw,3.8rem);line-height:1.05;margin:0}
.kk .lj-title strong{font-family:'Epilogue';font-weight:800;text-transform:uppercase;color:#fff;letter-spacing:-.02em}
.kk .lj-title em{font-family:'Lora';font-style:italic;font-weight:400;color:var(--taivas);text-transform:none;letter-spacing:0}
.kk .lj-lead{font-family:'Lora';font-size:1.05rem;line-height:1.7;color:rgba(255,253,248,.85);max-width:54ch;margin:0}
.kk .lj-cards{gap:20px;align-items:stretch}
.kk .lj-cards > .wp-block-column{display:flex;flex-direction:column}
.kk .ljcard{border:1px solid rgba(255,253,248,.25);border-radius:14px;padding:32px 28px;flex:1;display:flex;flex-direction:column;gap:12px}
.kk .ljcard--white{background:#fff;border-color:#fff}
.kk .ljcard--white .ljcard-price,.kk .ljcard--white h3,.kk .ljcard--white .ljcard-desc{color:var(--sininen)}
.kk .ljcard-price{font:800 2.6rem/1 'Epilogue';color:#fff;margin:0;letter-spacing:-.03em}
.kk .ljcard h3{font:700 .82rem/1 'Epilogue';text-transform:uppercase;letter-spacing:.1em;color:rgba(255,253,248,.9);margin:0}
.kk .ljcard-desc{font-family:'Lora';font-size:.93rem;line-height:1.6;color:rgba(255,253,248,.72);margin:0}
.kk .lj-btn .wp-block-button__link{background:transparent;color:#fff;border:2px solid rgba(255,253,248,.6);border-radius:40px;font:600 .82rem/1 'Epilogue';letter-spacing:.08em;text-transform:none;padding:16px 32px}
.kk .lj-btn .wp-block-button__link:hover{background:rgba(255,253,248,.1);border-color:#fff}
@media(max-width:700px){.kk .lj-cards{flex-direction:column}}

/* === Ajankohtaista (kk-news) — Query Loopin post-lohkot ncard-tyyliin === */
.kk-news .news-grid{gap:22px}
.kk-news .news-grid .ncard{background:var(--valkoinen);border-radius:16px;padding:30px 28px 32px;border-top:4px solid var(--sininen);border-right:1px solid rgba(11,40,140,.1);border-bottom:1px solid rgba(11,40,140,.1);border-left:1px solid rgba(11,40,140,.1);box-shadow:0 18px 44px -28px rgba(11,40,140,.35);display:flex;flex-direction:column;min-height:264px}
.kk-news .news-grid > li:nth-child(2) .ncard{border-top-color:var(--kupari)}
.kk-news .ncard .wp-block-post-terms{font:600 .7rem/1 'Epilogue';letter-spacing:.18em;text-transform:uppercase;color:var(--kupari);margin-bottom:18px}
.kk-news .ncard .wp-block-post-date{font:600 .82rem/1 'Radio Canada Big';color:var(--ink);opacity:.55;margin-bottom:8px}
.kk-news .ncard .wp-block-post-title{font:800 1.32rem/1.16 'Epilogue';text-transform:uppercase;color:var(--sininen);letter-spacing:-.01em;margin:0}
.kk-news .ncard .wp-block-post-title a{color:var(--sininen);text-decoration:none}
.kk-news .ncard .wp-block-post-excerpt{font-family:'Lora';font-size:.97rem;line-height:1.5;color:var(--ink);margin-top:12px}
.kk-news .ncard .wp-block-post-excerpt__excerpt{margin:0}
.kk-news .ncard .wp-block-read-more{margin-top:auto;padding-top:22px;font:600 .72rem/1 'Epilogue';letter-spacing:.12em;text-transform:uppercase;color:var(--sininen);text-decoration:none;display:inline-flex;align-items:center;gap:9px}
.kk-news .ncard .wp-block-read-more::after{content:"";background:currentColor;-webkit-mask:var(--ar) center/contain no-repeat;mask:var(--ar) center/contain no-repeat;display:inline-block;width:20px;height:13px;color:var(--kupari)}

/* === Ketä me olemme (kk-ketaolemme) === */
.kk-ketaolemme .ko-cols{gap:clamp(28px,4vw,64px);align-items:center}
.kk-ketaolemme .figph{aspect-ratio:4/3;background:linear-gradient(135deg,#cfe0ff,#aac4f2);border:1px solid rgba(11,40,140,.18);border-radius:18px;display:flex;align-items:center;justify-content:center;color:rgba(11,40,140,.5);font:600 .8rem/1 'Epilogue';letter-spacing:.16em;text-transform:uppercase;text-align:center;padding:24px}
.kk-ketaolemme .figph p{margin:0}

/* === Kuvapankki (kk-kuvapankki) === */
.kk-kuvapankki .kk-gallery img{border-radius:12px}

/* KK-SEC-GOLD: content-section (sec-white/sec-taivas) gold arrow-label + subtitle */
.kk .sec-white .eyebrow,.kk .sec-taivas .eyebrow{color:var(--kupari)}
.kk .sec-white .sig em,.kk .sec-taivas .sig em{color:var(--kupari)}
