/* Komponenter, nov 2026. Bygger på variablene i style.css */

/* Trappen: Foredrag, Foredrag pluss, Hele eventet */
.trapp{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.6rem;align-items:stretch;}
.trinn{background:var(--paper);border:1px solid var(--line-strong);border-radius:6px;padding:2rem 1.8rem;display:flex;flex-direction:column;gap:1rem;min-width:0;}
.trinn.hoved{border:2px solid var(--messing);background:var(--paper-2);}
.trinn .maler{display:flex;gap:4px;}
.trinn .maler i{height:5px;flex:1;border-radius:3px;background:var(--line-strong);}
.trinn .maler i.on{background:var(--messing);}
.trinn .merkelapp{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;}
.trinn.hoved .merkelapp{color:var(--messing);}
.trinn h3{margin:0;font-weight:600;}
.trinn ul{list-style:none;display:grid;gap:.55rem;flex:1;}
.trinn li{padding-left:1.4rem;position:relative;color:var(--ink-soft);font-size:.95rem;line-height:1.5;}
.trinn li::before{content:"";position:absolute;left:0;top:.7em;width:.8rem;height:2px;background:var(--messing);}
.trinn li.pluss{color:var(--ink);}
.trinn li.pluss::before{background:var(--jord);height:3px;}
.trinn .pris{font-size:.9rem;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:.9rem;}
.trinn .pris b{color:var(--ink);font-weight:600;}
.trinn .btn{align-self:flex-start;}
.trinn.aktiv{outline:3px solid var(--gull-lys);outline-offset:4px;}
@media(max-width:900px){.trapp{grid-template-columns:1fr;}}

/* Tre punkter med skillelinjer */
.aha{display:grid;gap:0;margin-top:1rem;}
.aha div{padding:1.1rem 0;border-top:1px solid var(--line);}
.aha h3{font-size:1.2rem;font-weight:600;margin-bottom:.3rem;}
.aha p{color:var(--ink-soft);font-size:.98rem;}

/* Prosess i tre steg */
.prosess{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--ink);margin-top:2.4rem;}
.prosess>div{padding:1.6rem 1.6rem .4rem 0;}
.prosess .n{font-size:.85rem;letter-spacing:.16em;text-transform:uppercase;color:var(--messing);font-weight:700;display:block;margin-bottom:.5rem;}
.prosess h3{font-weight:600;font-size:1.3rem;}
.prosess p{color:var(--ink-soft);font-size:.98rem;}
.prosess ul{list-style:none;margin-top:.8rem;display:grid;gap:.4rem;}
.prosess li{font-size:.95rem;padding-left:1.1rem;position:relative;}
.prosess li::before{content:"";position:absolute;left:0;top:.72em;width:.55rem;height:2px;background:var(--messing);}
@media(max-width:900px){.prosess{grid-template-columns:1fr;}.prosess>div{padding-right:0;border-bottom:1px solid var(--line);padding-bottom:1.2rem;}}

/* Produksjoner */
.prod-hode{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;flex-wrap:wrap;margin-top:5rem;}
.prod-hode p{color:var(--ink-soft);}
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:1.8rem;}
.prod{background:var(--paper);border:1px solid var(--line-strong);border-radius:6px;padding:1.6rem;display:flex;flex-direction:column;gap:.7rem;min-width:0;}
.prod.flagg{grid-column:1/-1;background:var(--brun);border-color:var(--brun);color:var(--paper);display:grid;grid-template-columns:1.1fr 1fr;gap:1rem 2.4rem;align-items:start;}
.prod.flagg h3,.prod.flagg strong{color:var(--paper);}
.prod.flagg .forankring{color:rgba(255,254,249,.78);border-color:var(--gull);}
.prod.flagg .meta{color:rgba(255,254,249,.7);}
.prod .topp{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;}
.prod h3{margin:0;font-weight:600;font-size:1.3rem;}
.prod p{font-size:.96rem;line-height:1.55;}
.moment{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--messing);border:1px solid currentColor;border-radius:999px;padding:.1rem .6rem;}
.prod.flagg .moment{color:var(--gull);}
.forankring{font-size:.88rem!important;color:var(--ink-soft);border-left:2px solid var(--gull);padding-left:.8rem;}
.forankring cite{display:block;font-style:normal;font-size:.78rem;margin-top:.3rem;opacity:.85;}
.prod .meta{font-size:.85rem;color:var(--ink-soft);margin-top:auto;padding-top:.4rem;}
.status{font-size:.75rem;font-weight:600;color:var(--jord);}
.prod.flagg .status{color:var(--gull);}
.prod img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:4px;display:block;}
@media(max-width:980px){.prod-grid{grid-template-columns:repeat(2,1fr);}.prod.flagg{grid-template-columns:1fr;}}
@media(max-width:620px){.prod-grid{grid-template-columns:1fr;}}

/* Caser */
.caser{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.4rem;}
.case-kort{background:var(--paper);border:1px solid var(--line-strong);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;min-width:0;}
.case-kort img,.case-kort video{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block;}
.case-kort .innhold{padding:1.5rem;display:grid;gap:.9rem;align-content:start;flex:1;}
.case-kort .num{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--messing);font-weight:600;}
.case-kort h3{margin:0;font-weight:600;font-size:1.3rem;}
.case-kort dl{display:grid;gap:.7rem;}
.case-kort dt{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;}
.case-kort dd{font-size:.95rem;line-height:1.5;}
.case-kort blockquote{font-style:italic;font-size:.95rem;color:var(--ink-soft);border-left:2px solid var(--gull);padding-left:.8rem;}
@media(max-width:900px){.caser{grid-template-columns:1fr;}}

/* Triaden */
.triade{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2rem;}
.triade div{border:1px solid var(--line-strong);border-radius:6px;padding:1.5rem;background:var(--paper);}
.triade b{display:block;font-size:1.4rem;font-weight:600;margin-bottom:.3rem;}
.triade span{color:var(--ink-soft);font-size:.98rem;}
.triade .k{border-top:3px solid #9C5B38;}.triade .n{border-top:3px solid #6E5A8A;}.triade .s{border-top:3px solid #2F7A6B;}
@media(max-width:900px){.triade{grid-template-columns:1fr;}}

.to-bokser{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;}
.to-bokser .boks{margin:0;}
@media(max-width:900px){.to-bokser{grid-template-columns:1fr;}}

/* Spor etter eventet */
.spor{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1.8rem;}
.spor div{border-top:2px solid var(--messing);padding-top:.9rem;}
.spor b{display:block;font-weight:600;font-size:1.1rem;margin-bottom:.25rem;}
.spor span{color:var(--ink-soft);font-size:.95rem;line-height:1.5;display:block;}

/* Sidelenker øverst på undersider */
.hopp{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.6rem;}
.hopp a{font-size:.9rem;border:1px solid var(--line-strong);border-radius:999px;padding:.35rem .9rem;color:var(--ink);}
.hopp a:hover{border-color:var(--messing);color:var(--messing);}

/* To veier inn i coaching */
.veier{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-top:2.4rem;}
.vei{background:var(--paper-2);border-radius:6px;padding:2rem;display:flex;flex-direction:column;gap:.8rem;}
.vei h3{font-weight:600;margin:0;}
.vei p{color:var(--ink-soft);}
.vei .pris{font-size:.95rem;color:var(--ink);font-weight:600;margin-top:auto;}
@media(max-width:900px){.veier{grid-template-columns:1fr;}}

/* Bookingvalg */
.valg{display:flex;flex-wrap:wrap;gap:.6rem;}
.valg label{text-transform:none;letter-spacing:normal;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--line-strong);border-radius:999px;padding:.5rem 1rem;cursor:pointer;font-size:.95rem;background:var(--paper);}
.valg input{width:auto;margin:0;}
.valg label:has(input:checked){border-color:var(--messing);background:var(--paper-2);}
.form-rad{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
@media(max-width:640px){.form-rad{grid-template-columns:1fr;}}


/* Case-bibliotek */
.filter{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem;}
.filter button{font:inherit;font-size:.92rem;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);border-radius:999px;padding:.45rem 1rem;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;}
.filter button[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:var(--paper);}
.filter i{width:.6rem;height:.6rem;border-radius:50%;display:inline-block;}
.filter i.k{background:#9C5B38;}.filter i.n{background:#6E5A8A;}.filter i.s{background:#2F7A6B;}
.bibliotek{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:1.6rem;}
.bib{background:var(--paper);border:1px solid var(--line-strong);border-radius:6px;padding:1.5rem;display:flex;flex-direction:column;gap:.6rem;min-width:0;}
.bib[hidden]{display:none!important;}
.bib .rad1{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem;}
.bib .rad1 .hvem{min-width:0;}
.bib .rad1 .merker{flex:none;margin:.2rem 0 0;}
.bib .hvem{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--messing);font-weight:600;}
.bib h3{margin:0;font-weight:600;font-size:1.2rem;}
.bib p{font-size:.95rem;line-height:1.55;}
.bib .format{font-size:.78rem;color:var(--ink-soft);}
.bib blockquote{font-style:italic;font-size:.92rem;color:var(--ink-soft);border-left:2px solid var(--gull);padding-left:.8rem;margin-top:.2rem;}
.bib blockquote cite{display:block;font-style:normal;font-size:.78rem;margin-top:.3rem;}
.bib .innsikt{font-size:.92rem;color:var(--messing);}
.bib a.mer{margin-top:auto;font-size:.95rem;}
@media(max-width:980px){.bibliotek{grid-template-columns:repeat(2,1fr);}}
@media(max-width:620px){.bibliotek{grid-template-columns:1fr;}}
.kundeliste{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem;margin-top:2rem;}
.kundeliste h3{font-size:1rem;font-weight:600;letter-spacing:.04em;margin-bottom:.6rem;}
.kundeliste p{font-size:.92rem;line-height:1.7;color:var(--ink-soft);}
@media(max-width:900px){.kundeliste{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.kundeliste{grid-template-columns:1fr;}}
.sitater{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2rem;}
.sitater figure{margin:0;border-top:2px solid var(--gull);padding-top:1rem;}
.sitater blockquote{font-size:1.02rem;line-height:1.55;font-style:italic;}
.sitater figcaption{font-size:.85rem;color:var(--ink-soft);margin-top:.6rem;}
@media(max-width:900px){.sitater{grid-template-columns:1fr;}}
.roller{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.6rem;}
.roller div{border:1px solid var(--line-strong);border-radius:6px;padding:1.1rem 1.2rem;background:var(--paper);}
.roller b{display:block;font-weight:600;margin-bottom:.2rem;}
.roller span{font-size:.92rem;color:var(--ink-soft);line-height:1.5;display:block;}
@media(max-width:900px){.roller{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.roller{grid-template-columns:1fr;}}

/* Tydelige lenker videre til undersider */
.videre{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;margin-top:2rem;padding:1.5rem 1.8rem;border:1px solid var(--line-strong);border-radius:8px;background:var(--paper-2);color:var(--ink)!important;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s;max-width:none;}
.videre:hover{border-color:var(--messing);transform:translateY(-2px);box-shadow:0 8px 24px rgba(43,28,10,.08);color:var(--ink)!important;}
.videre .tekst{display:grid;gap:.25rem;min-width:0;}
.videre .liten{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--messing);font-weight:600;}
.videre .stor{font-size:clamp(1.25rem,2.4vw,1.6rem);font-weight:600;line-height:1.25;}
.videre .under{font-size:.95rem;color:var(--ink-soft);}
.videre .pil{flex:none;width:3rem;height:3rem;border-radius:50%;background:var(--gull-lys);display:grid;place-items:center;font-size:1.3rem;color:var(--ink);transition:transform .2s;}
.videre:hover .pil{transform:translateX(4px);}
@media(prefers-reduced-motion:reduce){.videre,.videre .pil{transition:none;}.videre:hover,.videre:hover .pil{transform:none;}}
/* Pil-lenker i kort */
.card > a, .case-kort .innhold > a, .bib a.mer{font-weight:600;color:var(--messing);display:inline-flex;align-items:center;gap:.35rem;border-bottom:1.5px solid currentColor;padding-bottom:.1rem;align-self:flex-start;width:max-content;max-width:100%;}
.card > a:hover, .case-kort .innhold > a:hover, .bib a.mer:hover{color:var(--jord);}

/* Store bilder og bildepar */
.storbilde{width:min(1400px,calc(100vw - 32px));margin:4rem 0 0 calc(50% - min(700px,50vw - 16px));}
.storbilde img{width:100%;height:auto;aspect-ratio:21/9;object-fit:cover;border-radius:8px;display:block;}
.storbilde figcaption,.bildepar figcaption{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-top:.8rem;}
.bildepar{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:4rem;}
.bildepar figure{margin:0;min-width:0;}
.bildepar img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:8px;display:block;}
.tospalte{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem 3.6rem;margin-top:3.4rem;}
.tospalte h2{margin-bottom:.8rem;}
.aha.rutenett{grid-template-columns:1fr 1fr;column-gap:3rem;max-width:none!important;}
.aha.rutenett.tre{grid-template-columns:repeat(3,1fr);margin-top:1.6rem;}
@media(max-width:760px){.storbilde img{aspect-ratio:4/3;}.bildepar,.tospalte,.aha.rutenett,.aha.rutenett.tre{grid-template-columns:1fr;}}

/* Tre-sirkel-figuren */
.tre-figur.stor{margin-top:2rem;}
@media(min-width:900px){.tre-figur.stor{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;align-items:center;}}
.tre-figur.stor svg{max-width:560px;margin:0 auto;}
.tre-figur.stor .tf-liste li{font-size:.92rem;}
