/* Genskabt af godkendt HTML-model B 3.1 – kun tema, ingen ændring af lyd-plugin. */
:root{--kk-navy:#172f3a;--kk-cream:#f7f3eb;--kk-sand:#e4c1a1;--kk-ink:#1b343d}
.wp-site-blocks{overflow-x:clip}
.kk-site-header{background:var(--kk-navy)}
.kk-site-header .kk-header-inner{display:flex!important;justify-content:space-between;align-items:center;width:min(1190px,calc(100% - 80px));max-width:none!important;min-height:101px;margin:0 auto!important;padding:0;border-bottom:1px solid #ffffff25;gap:25px;align-items:center}
.kk-site-header .kk-identity{display:flex;gap:13px;align-items:center;flex-shrink:0}
.kk-site-header .kk-brand{font-size:27px;letter-spacing:-1.2px;font-weight:750;line-height:1.2;margin:0}
.kk-brandmark{display:flex;justify-content:center;align-items:center;gap:3px;width:43px;height:43px;border:1.7px solid var(--kk-sand);border-radius:50%;flex:none}
.kk-brandmark i{height:17px;width:3px;background:var(--kk-sand);border-radius:4px;display:block}
.kk-brandmark i:nth-child(2){height:27px}.kk-brandmark i:nth-child(3){height:13px}.kk-brandmark i:nth-child(4){height:22px}
.kk-navigation .wp-block-navigation-item__content{font-size:15px}
.kk-home-hero{padding:0!important;margin:0!important;background:var(--kk-navy);color:var(--kk-cream);overflow:hidden}
.kk-home-hero .kk-hero-inner{width:min(1190px,calc(100% - 80px));max-width:none!important;display:grid!important;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:55px;min-height:540px;margin:0 auto!important;padding:62px 0 58px}
.kk-home-hero .kk-hero-art{display:block!important}
.kk-home-hero .kk-hero-inner>.wp-block-column{width:100%;min-width:0;flex-basis:auto!important;max-width:100%}
.kk-home-hero .kk-hero-text>*{margin-block-start:0}
.kk-home-hero .kk-hero-title{font-weight:450;font-size:clamp(49px,5.5vw,80px);line-height:1.09;letter-spacing:-2.8px;margin:22px 0 20px;overflow-wrap:normal;word-break:normal}
.kk-home-hero .kk-hero-title em{font:italic 400 1em Georgia,serif;color:#e2c6a7}
.kk-home-hero .kk-eyebrow{font-size:12px;letter-spacing:2.5px;color:#e3ba91;font-weight:800;text-transform:uppercase}
.kk-home-hero .kk-hero-description{font-size:19px;max-width:510px;color:#c6d5d0;line-height:1.75;margin-bottom:34px}
.kk-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:25px!important}
.kk-hero-actions .wp-block-button{margin:0}
.kk-hero-actions .kk-primary-button .wp-block-button__link{padding:14px 24px!important;min-height:48px;background:var(--kk-sand)!important;color:var(--kk-navy)!important;font-weight:750;border-radius:999px;box-shadow:none;text-decoration:none}
.kk-hero-actions .kk-secondary-button .wp-block-button__link{background:transparent!important;padding:10px 2px!important;color:#e7efeb!important;border-radius:0!important;border-bottom:1px solid #9dbaa8;font-size:15px;font-weight:720;text-decoration:none}
.kk-hero-art:before,.kk-hero-art:after{display:none!important;content:none!important}
.kk-design-art{position:relative;min-height:375px;display:grid;place-items:center;isolation:isolate}
.kk-design-orb{position:relative;width:min(360px,90%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 27%,#9db3a1,#557c70 42%,#244754 74%);box-shadow:0 0 0 34px #ffffff07,0 0 0 69px #ffffff06;z-index:0}
.kk-design-orb:before,.kk-design-orb:after{content:"";position:absolute;border-radius:50%;border:1px solid #dce7d244;inset:34px}
.kk-design-orb:after{inset:81px}
.kk-waveform{position:absolute;z-index:1;display:flex;align-items:center;gap:9px}
.kk-waveform span{display:block;width:6px;flex:none;height:var(--kk-bar-height);border-radius:6px;background:#f2dec3}
.kk-waveform span:nth-child(3n){background:#c8d9c5}
.kk-design-caption{position:absolute;z-index:2;bottom:8px;left:0;background:#f8f3e9;color:var(--kk-ink);padding:13px 18px;border-radius:9px;box-shadow:0 12px 40px #0005;max-width:calc(100% - 20px)}
.kk-design-caption strong{display:block;font-size:15px;font-weight:750}.kk-design-caption span{color:#6e817a;font-size:12px;display:block}
.kk-hero-strap{width:min(1190px,calc(100% - 80px));max-width:none!important;display:flex;gap:16px 26px;align-items:center;margin:0 auto!important;padding:20px 0 26px;border-top:1px solid #ffffff24;color:#c6d5d0;font-size:14px}
.kk-hero-strap p{margin:0!important;font-size:14px}.kk-hero-strap strong{color:#f4dfc9}
.kk-home-section{margin:0!important;padding:70px 0 78px!important}
.kk-home-section .kk-home-inner{width:min(1190px,calc(100% - 80px));max-width:none!important;margin:0 auto!important;padding:0}
.kk-home-section .kk-home-inner>.kk-eyebrow{margin-bottom:10px;color:#996f54}
.kk-home-section .kk-home-inner>h2{margin:0 0 18px;font-size:clamp(30px,3.3vw,43px);font-weight:560;letter-spacing:-1.3px}
.kk-home-section .kk-home-inner>p:not(.kk-eyebrow){color:#667a72;font-size:16px;line-height:1.7;margin-bottom:28px}
.kk-home-featured{background:var(--kk-cream)}
.kk-home-featured .kk-latest-programmes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:28px}
.kk-home-featured .kk-program-row{position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:0;min-width:0;overflow:hidden;background:#fffdf9;border-radius:13px;border:1px solid #dce3d8}
.kk-home-featured .kk-program-row:before{content:"✺";height:155px;display:grid;place-items:center;background:linear-gradient(140deg,#aebbab,#557c70);font:italic 86px Georgia,serif;color:#f3e4ca}
.kk-home-featured .kk-program-row:nth-child(3n+2):before{content:"≈";background:linear-gradient(135deg,#a0b9bb,#577d88)}
.kk-home-featured .kk-program-row:nth-child(3n):before{content:"A";background:linear-gradient(135deg,#d7b49d,#aa8a7b)}
.kk-home-featured .kk-program-row .kk-row-copy{padding:22px 24px 8px;flex:1}
.kk-home-featured .kk-program-row .kk-row-copy h3{font-size:23px;margin:14px 0 10px;font-weight:590}
.kk-home-featured .kk-program-row .kk-row-copy p{font-size:14px;color:#708078}
.kk-home-featured .kk-program-row .kk-row-actions{padding:13px 24px 24px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.kk-home-featured .kk-program-row .kk-row-actions .kk-listen{font-size:12px;padding:10px 14px}
.kk-home-featured .kk-outline-button .wp-block-button__link{background:transparent!important;border:1px solid #9fbaac;border-radius:25px;color:#315c52!important;font-size:14px;font-weight:700}
.kk-home-series{background:#e7eee7}
.kk-home-series .kk-content-shell,.kk-home-topics .kk-content-shell{max-width:none;margin:0;padding:0}
.kk-home-series .kk-page-heading,.kk-home-topics .kk-page-heading{margin-bottom:28px}
.kk-home-series .kk-page-heading h1,.kk-home-topics .kk-page-heading h1{font-size:clamp(30px,3.3vw,43px);font-weight:560;letter-spacing:-1.3px;margin:0 0 9px}
.kk-home-series .kk-page-heading .kk-eyebrow,.kk-home-topics .kk-page-heading .kk-eyebrow{display:none}
.kk-home-series .kk-page-heading p,.kk-home-topics .kk-page-heading p{font-size:15px;color:#647c72}
.kk-home-series .kk-term-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.kk-home-series .kk-term-grid article{background:#fffdf9;border:1px solid #d4dfd6;border-radius:13px;padding:25px}
.kk-home-topics{background:#f7f3eb}
.kk-home-topics .kk-term-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.kk-home-topics .kk-term-grid article{background:#fffdf9}
.kk-home-closing{background:#e7eee7}
.kk-home-closing .kk-home-inner{background:#fffdf9;border-radius:16px;border:1px solid #d7e1d9;padding:42px 48px}
.kk-home-closing .kk-primary-button .wp-block-button__link{background:#3f6d66!important;color:#fff!important}
.kk-site-footer{padding:56px 0 26px!important;margin:0!important}
.kk-site-footer>.wp-block-columns{width:min(1190px,calc(100% - 80px))}
.kk-site-footer .kk-footer-columns{width:min(1190px,calc(100% - 80px));max-width:none!important;margin:0 auto!important;gap:55px}
.kk-site-footer .kk-footer-columns h3{font-size:16px;letter-spacing:.6px;color:#e4c7a7;margin:0 0 18px;font-weight:720}
.kk-site-footer .kk-footer-columns .wp-block-column:first-child h3{font-size:23px;letter-spacing:-.5px;color:#f2efe5}
.kk-site-footer .kk-footer-columns p{color:#b1c3ba;font-size:14px;margin:0 0 12px}
.kk-site-footer .kk-footer-columns a{color:#d1e0d8;text-decoration:none}
.kk-site-footer .kk-footer-columns a:hover{text-decoration:underline}
.kk-site-footer .kk-footer-meta{width:min(1190px,calc(100% - 80px));max-width:none!important;border-top:1px solid #48626a;color:#a3b7b0;font-size:12px;margin:38px auto 0!important;padding-top:19px}
@media(max-width:900px){
 .kk-site-header .kk-header-inner,.kk-home-hero .kk-hero-inner,.kk-hero-strap,.kk-home-section .kk-home-inner,.kk-site-footer .kk-footer-columns,.kk-site-footer .kk-footer-meta{width:min(100% - 40px,720px)}
 .kk-home-hero .kk-hero-inner{grid-template-columns:1fr;gap:20px;padding:52px 0 36px}
 .kk-design-art{min-height:345px}
 .kk-hero-strap{gap:12px 20px}
 .kk-home-featured .kk-latest-programmes{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kk-home-topics .kk-term-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kk-site-header .kk-header-inner{min-height:80px}
}
@media(max-width:600px){
 .kk-site-header .kk-brand{font-size:20px}.kk-brandmark{width:36px;height:36px}
 .kk-home-hero .kk-hero-title{font-size:clamp(45px,11vw,62px);letter-spacing:-1.7px}
 .kk-home-hero .kk-hero-description{font-size:17px}
 .kk-hero-strap p[aria-hidden]{display:none}
 .kk-hero-strap{gap:7px 15px}
 .kk-hero-strap p{font-size:12px}
 .kk-design-art{min-height:310px}
 .kk-design-orb{width:min(290px,84%)}
 .kk-waveform{transform:scale(.78)}
 .kk-design-caption{bottom:0}
 .kk-home-section{padding:45px 0 55px!important}
 .kk-home-featured .kk-latest-programmes{grid-template-columns:1fr}
 .kk-home-series .kk-term-grid,.kk-home-topics .kk-term-grid{grid-template-columns:1fr}
 .kk-home-closing .kk-home-inner{padding:25px}
 .kk-site-footer .kk-footer-columns{display:block}.kk-site-footer .kk-footer-columns>.wp-block-column{margin-bottom:28px}
}


/* v0.2.1: Kortene på forsiden følger den godkendte designmodel B.
   Ændringerne er afgrænset til forsiden: arkiv og lydafspiller berøres ikke. */
@media (min-width:901px){
  .kk-home-featured .kk-home-inner{width:min(1590px,calc(100% - 80px))!important}
}
.kk-home-featured .kk-featured-heading-row{
  display:flex!important;align-items:end;justify-content:space-between;
  flex-wrap:wrap;gap:14px 32px;margin:0 0 34px!important;
}
.kk-home-featured .kk-featured-heading-row>h2{
  font-size:clamp(35px,3.4vw,54px);font-weight:560;line-height:1.2;
  letter-spacing:-1.7px;margin:0;
}
.kk-home-featured .kk-featured-heading-row .wp-block-buttons{
  display:flex;gap:0;margin:0 0 7px;align-items:center;
}
.kk-home-featured .kk-featured-heading-row .kk-outline-button .wp-block-button__link{
  display:inline-block;background:transparent!important;color:#23594d!important;
  border:0!important;border-bottom:1px solid #83a69b!important;
  border-radius:0!important;box-shadow:none!important;
  padding:2px 0 7px!important;font-size:16px;font-weight:750;
  text-decoration:none;white-space:normal;text-align:left;
}
.kk-home-featured .kk-latest-programmes{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;
}
.kk-home-featured .kk-program-row{
  display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:520px;
  overflow:hidden;border-radius:15px;background:#fffdfa;border:1px solid #e2e3dc;
  box-shadow:0 7px 21px #1e373e0a;
}
.kk-home-featured .kk-program-row::before{
  box-sizing:border-box;height:225px;flex:none;display:grid;place-items:center;
  background:
    radial-gradient(circle at center,transparent 0 104px,#ffffff66 105px 106px,transparent 107px 204px,#ffffff55 205px 206px,transparent 207px),
    linear-gradient(140deg,#b0c0ac,#577b6d);
  color:#f5e5c8;font:italic 112px Georgia,serif;
}
.kk-home-featured .kk-program-row:nth-child(3n+2)::before{
  background:
    radial-gradient(circle at center,transparent 0 104px,#ffffff66 105px 106px,transparent 107px 204px,#ffffff55 205px 206px,transparent 207px),
    linear-gradient(140deg,#a6c2c0,#5b8390);
}
.kk-home-featured .kk-program-row:nth-child(3n)::before{
  background:
    radial-gradient(circle at center,transparent 0 104px,#ffffff66 105px 106px,transparent 107px 204px,#ffffff55 205px 206px,transparent 207px),
    linear-gradient(140deg,#d9b9a4,#b39085);
}
.kk-home-featured .kk-program-row .kk-row-copy{
  flex:1 1 auto;min-width:0;max-width:100%;padding:27px 30px 10px;
}
/* Metadata fra WP (demomærkat + afsnit + serie) må ikke presses ud af kortet. */
.kk-home-featured .kk-program-row .kk-kicker{
  display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;
  column-gap:12px;row-gap:5px;min-width:0;max-width:100%;
  line-height:1.4;font-size:11px;letter-spacing:1px;
  font-weight:770;text-transform:uppercase;white-space:normal;
}
.kk-home-featured .kk-program-row .kk-kicker>span{
  min-width:0;max-width:100%;overflow-wrap:break-word;word-break:normal;
}
.kk-home-featured .kk-program-row .kk-kicker .kk-demo-badge{
  grid-column:1/-1;justify-self:start;width:fit-content;max-width:100%;margin:0 0 3px;
  padding:5px 9px;font-size:10px;line-height:1.4;letter-spacing:.3px;
  background:#e9ebe5;color:#405b52;border-radius:4px;
}
.kk-home-featured .kk-program-row .kk-row-copy h3{
  font-size:clamp(22px,2.15vw,27px);font-weight:570;line-height:1.28;
  letter-spacing:-.55px;margin:17px 0 13px;
  overflow-wrap:break-word;
}
.kk-home-featured .kk-program-row .kk-row-copy p{
  font-size:16px;line-height:1.75;color:#687d75;margin:0;
}
.kk-home-featured .kk-program-row .kk-row-actions{
  display:flex;align-items:center;justify-content:flex-start;gap:14px 18px;
  flex-wrap:wrap;min-width:0;max-width:100%;padding:24px 30px 29px;
}
.kk-home-featured .kk-program-row .kk-row-actions a{font-size:14px}
.kk-home-featured .kk-program-row .kk-row-actions .kk-listen{
  display:inline-flex;justify-content:center;align-items:center;
  padding:12px 16px;font-size:13px;line-height:1.25;white-space:normal;
  max-width:100%;text-align:center;text-decoration:none;
}
.kk-home-featured .kk-program-row .kk-row-actions a:not(.kk-listen){
  display:inline-block;color:#245c4f;text-underline-offset:4px;white-space:normal;
}
@media(max-width:1150px){
  .kk-home-featured .kk-latest-programmes{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .kk-home-featured .kk-latest-programmes{grid-template-columns:minmax(0,1fr);gap:20px}
  .kk-home-featured .kk-featured-heading-row{align-items:start;gap:15px;margin-bottom:24px!important}
  .kk-home-featured .kk-featured-heading-row>h2{font-size:38px}
  .kk-home-featured .kk-featured-heading-row .wp-block-buttons{margin:0}
  .kk-home-featured .kk-program-row{min-height:0}
  .kk-home-featured .kk-program-row::before{height:190px}
  .kk-home-featured .kk-program-row .kk-row-copy{padding:22px 24px 9px}
  .kk-home-featured .kk-program-row .kk-row-actions{padding:19px 24px 25px}
}


/* Version 0.2.2: Reparér WordPress' indholdsbegrænsning specifikt på forsiden.
   Gutenberg giver almindelige børn af is-layout-constrained en contentSize
   på 760px – også når sektionens ydre gruppe er bredere. For programkort skal
   både overskriftsrække og shortcode-blok fylde hele den godkendte sektion.
   Andre side- og programskabeloner ændres ikke. */
.kk-home-featured .kk-home-inner > .kk-eyebrow,
.kk-home-featured .kk-home-inner > .kk-featured-heading-row,
.kk-home-featured .kk-home-inner > .wp-block-shortcode {
  box-sizing:border-box;
  width:100% !important;
  max-width:100% !important;
  min-width:0;
  margin-left:0 !important;
  margin-right:0 !important;
}
.kk-home-featured .kk-home-inner > .wp-block-shortcode > .kk-latest-programmes {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  max-width:none;
  margin-left:0;
  margin-right:0;
}
/* Både grid-børn og tekster skal kunne krympe ved mindre skærme. */
.kk-home-featured .kk-latest-programmes > .kk-program-row { min-width:0; }
.kk-home-featured .kk-program-row .kk-row-copy,
.kk-home-featured .kk-program-row .kk-row-actions { min-width:0; }


/* v0.2.3 – Den egentlige WordPress-rettelse: Kortoversigt og overskriftsrække
 * står i en flow-gruppe, ikke i en constrained-gruppe. Shortcode-blokken
 * gengiver normalt KUN den HTML, som plugin returnerer; .wp-block-shortcode
 * findes ikke nødvendigvis på forsiden. Derfor styres selve outputtet. */
.kk-home-featured > .kk-home-inner,
.kk-home-featured .kk-home-inner {
  box-sizing:border-box;
  min-width:0;
}
.kk-home-featured .kk-home-inner > .kk-latest-programmes,
.kk-home-featured .kk-home-inner > .wp-block-shortcode,
.kk-home-featured .kk-home-inner > .wp-block-shortcode > .kk-latest-programmes,
.kk-home-featured .kk-home-inner > .kk-featured-heading-row {
  box-sizing:border-box;
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  min-width:0;
}
/* Hvis en installation har en ældre, gemt constrained-gruppe, ophæves
 * den globale contentSize-regel også for det direkte shortcode-output. */
.kk-home-featured .kk-home-inner.is-layout-constrained > .kk-latest-programmes {
  max-width:100% !important;
  width:100% !important;
}
/* Hold grid og kort inden for sektionens bredde på alle skærmstørrelser. */
.kk-home-featured .kk-latest-programmes {width:100%;max-width:100%;min-width:0;}
.kk-home-featured .kk-latest-programmes > .kk-program-row {min-width:0;}
