/* Elementer: læsbar systemmodel med syv selvstændige indgange. */
.elements-intro .section-heading{max-width:880px;margin-bottom:26px;font-size:clamp(38px,4.2vw,64px)}
.elements-lead{max-width:820px;font-size:21px;line-height:1.6}
.elements-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:52px}
.elements-principles article{border-top:1px solid var(--line);padding-top:22px}
.elements-principles h3{font:400 28px/1.2 var(--serif);margin-bottom:16px}
.elements-principles p{font-size:17px;line-height:1.7}
.elements-model{background:var(--fc-paper);color:var(--fc-ink)}
.elements-model .section-label{color:var(--fc-muted);font-size:14px;margin-bottom:24px}
.elements-model .section-heading{font-size:clamp(36px,4vw,58px);margin-bottom:20px}
.elements-model-intro{font-size:18px;line-height:1.6;max-width:660px;margin-bottom:42px}
.elements-explorer{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:36px;align-items:start}
.system-map{border:1px solid var(--fc-line);padding:20px;position:relative}
.system-map a{display:flex;position:relative;flex-direction:column;text-decoration:none;padding:20px;color:var(--petrol-dark);background:var(--mineral);border:1px solid var(--fc-line);min-width:0;transition:background .15s}
.system-map a:hover{background:var(--mint-light)}
.system-map a[aria-current=true]{background:var(--amber-light);border-color:var(--amber-light)}
.system-map a:focus-visible,.element-detail a:focus-visible{outline:3px solid var(--amber-bright);outline-offset:5px}
.system-map a strong{font-size:22px;font-weight:500;line-height:1.25}
.system-map a small{font-size:14px;line-height:1.5;margin-top:6px}
.system-map .map-index{font-size:12px;line-height:1.3;margin-bottom:14px}
.system-map .map-open{position:absolute;right:14px;top:12px;font-size:21px;line-height:1}
.system-map .map-security{background:transparent;color:var(--fc-ink);padding:6px 4px 18px;margin-bottom:12px;border:0;border-bottom:1px solid var(--fc-line);flex-direction:row;align-items:center;gap:14px}
.map-security .map-index{margin:0}.map-security small{margin:0 24px 0 auto}
.system-map .map-security:hover{background:var(--fc-mint)}
.system-map .map-security[aria-current=true]{background:var(--amber-light);color:var(--petrol-dark);padding-inline:12px}
.map-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.map-row .map-person{background:var(--mint-mid)}
.map-connector{display:flex;align-items:center;justify-content:center;gap:14px;font-size:13px;color:var(--fc-muted);min-height:47px}
.map-connector::before,.map-connector::after{content:'';width:1px;height:26px;background:var(--fc-line)}
.map-core{display:grid;grid-template-columns:1.2fr 1fr;gap:16px}
.map-core .map-knowledge{grid-row:span 2;justify-content:center;background:var(--mint-light)}
.map-knowledge strong{font-family:var(--serif);font-size:clamp(27px,2.6vw,40px)!important}
.system-map .map-engine{background:var(--petrol-mid);color:var(--mineral);flex-direction:row;align-items:center;gap:16px}
.map-engine .map-index{margin:0}.map-engine small{margin-left:auto;max-width:190px}
.system-map .map-engine:hover{background:var(--mint-dark)}
.system-map .map-engine[aria-current=true]{background:var(--amber-light);color:var(--petrol-dark)}
.element-detail{scroll-margin-top:30px;padding:28px 4px 24px;border-top:1px solid var(--fc-line)}
.element-detail[hidden]{display:none}
.element-detail .element-kicker{font-size:14px;color:var(--fc-muted);margin-bottom:22px}
.element-detail h3{font:400 clamp(32px,3.2vw,47px)/1.13 var(--serif);letter-spacing:-.02em;margin-bottom:25px}
.element-detail h3:focus{outline:none}
.element-detail p{font-size:18px;line-height:1.65;margin-bottom:20px}
.element-detail .element-example{border-top:1px solid var(--fc-line);margin-top:28px;padding-top:24px;font-size:16px;color:var(--fc-muted)}
.element-detail a{display:inline-block;font-size:16px;text-decoration:underline;text-underline-offset:5px;margin-top:4px}
.element-detail .model-return{display:none}
.model-caption{font-size:14px;line-height:1.6;color:var(--fc-muted);margin-top:25px;max-width:730px}
.elements-outcome{background:var(--amber-light)}
.elements-outcome .section-inner{display:grid;grid-template-columns:1fr 1fr;gap:9%}
.elements-outcome .section-heading{font-size:clamp(36px,4vw,58px)}
.elements-outcome .section-copy{align-self:end}
.elements-outcome .section-copy p{margin-bottom:22px}
.elements-outcome a{display:inline-block;text-decoration:underline;text-underline-offset:5px}
@media(min-width:1600px){.elements-explorer{gap:70px}.system-map{padding:30px}.system-map a{padding:26px}}
@media(max-width:1050px){.elements-explorer{grid-template-columns:1fr;gap:32px}.element-detail{max-width:820px}.element-detail .model-return{display:block;width:fit-content;margin-top:24px}.elements-principles{gap:24px}.elements-principles h3{font-size:25px}}
@media(max-width:680px){.elements-principles{grid-template-columns:1fr;gap:28px;margin-top:34px}.elements-lead{font-size:18px}.elements-principles h3{font-size:27px}.elements-model-intro{font-size:17px}.system-map{padding:12px}.system-map a{padding:14px 12px}.system-map a strong{font-size:19px}.system-map a small{font-size:14px}.map-row,.map-core{gap:10px}.system-map .map-security{align-items:baseline;flex-wrap:wrap;gap:8px}.map-security small{flex-basis:100%;margin:0}.system-map .map-engine{flex-wrap:wrap;gap:8px}.map-engine small{flex-basis:100%;max-width:none;margin:0}.map-connector{font-size:12px;min-height:42px}.map-knowledge strong{font-size:26px!important}.element-detail p{font-size:17px}.elements-outcome .section-inner{grid-template-columns:1fr;gap:30px}.elements-outcome .section-label{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.system-map a{transition:none}}
@media(max-width:680px){.map-core{grid-template-columns:1fr 1fr}.map-core .map-knowledge{grid-column:1/-1;grid-row:auto}}
@media print{.elements-model{background:white;color:black}.element-detail[hidden]{display:block}.elements-explorer{display:block}.element-detail{break-inside:avoid}.element-detail .element-kicker,.element-detail .element-example,.model-caption{color:black}}

/* Elementer i komponenttemplaten: modellen bliver stående, detaljer åbner ovenpå. */
.tools-page.finch-kit{--gutter:var(--fc-gutter);--serif:var(--fc-serif);color:var(--fc-ink)}
.tools-page .elements-intro .section-inner,.tools-page .elements-model .section-inner,.tools-page .elements-outcome .section-inner{max-width:1800px;padding-block:100px}
.tools-page .elements-principles{grid-template-columns:2fr 1fr 1fr;gap:0}
.tools-page .elements-principles article{padding:24px 28px 0 0}
.tools-page .elements-principles article+article{padding-left:28px;border-left:1px solid var(--fc-line)}
.tools-page .elements-model{background:var(--fc-paper)}
.elements-ready .elements-explorer{display:block;max-width:1100px;margin-inline:auto}
.elements-ready .element-details:empty{display:none}
.elements-ready .system-map{padding:24px}
.elements-ready .system-map a[aria-current=true]{background:var(--fc-lime);border-color:var(--fc-lime);color:var(--fc-ink)}
.tools-page .elements-outcome{background:var(--fc-mint)}
.tools-page .elements-outcome .section-inner{gap:0}
.tools-page .elements-outcome .section-inner>div:first-child{padding-right:var(--fc-gutter)}
html:has(body.elements-ready){scrollbar-gutter:stable}
html:has(#element-dialog[open],#element-demo-dialog[open]){overflow:hidden}
.element-dialog{padding:0;width:min(900px,calc(100vw - 48px));max-height:calc(100dvh - 48px);overflow:hidden}
.element-dialog[open]{display:flex;flex-direction:column}
.element-dialog-bar,.element-demo-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 28px;border-bottom:1px solid var(--fc-line);flex-shrink:0}
.element-close{border:1px solid currentColor;background:transparent;padding:10px 16px;font-size:14px!important;white-space:nowrap;min-height:44px}
.element-dialog-nav{display:flex;flex-wrap:wrap;gap:6px;padding:18px 28px;border-bottom:1px solid var(--fc-line);flex-shrink:0}
.element-dialog-nav button{padding:9px 12px;border:1px solid var(--fc-line);font-size:13px;min-height:40px}
.element-dialog-nav button[aria-pressed=true]{background:var(--fc-purple);color:var(--fc-paper);border-color:var(--fc-purple)}
[data-element-detail-mount]{overflow:auto;overscroll-behavior:contain;padding:32px 40px 40px}
.element-dialog .element-detail{border:0;padding:0;max-width:none}
.element-dialog .element-kicker{font:11px/1.5 ui-monospace,Consolas,monospace;text-transform:uppercase;letter-spacing:.09em;color:var(--fc-muted)}
.element-dialog .element-detail h3{font:clamp(30px,3.5vw,46px)/1.13 var(--fc-serif);max-width:650px}
.element-dialog .element-detail p{font-size:17px}
.element-dialog .element-example{color:var(--fc-muted);border-color:var(--fc-line);font-size:15px}
.element-dialog .element-detail .fc-btn{display:inline-flex;text-decoration:none;margin-top:10px}
.element-demo-dialog{width:calc(100vw - 40px);height:calc(100dvh - 40px);max-width:1600px;max-height:none;padding:0;border:0;background:var(--fc-paper);color:var(--fc-ink);overflow:hidden}
.element-demo-dialog[open]{display:flex;flex-direction:column}
.element-demo-dialog::backdrop{background:#252329c9;backdrop-filter:blur(6px)}
.element-demo-bar{padding:14px 22px}
.element-demo-bar h2{font:22px/1.2 var(--fc-serif)}
.element-demo-bar p{font-size:11px;margin-top:5px;color:var(--fc-muted)}
.element-demo-mount{overflow:auto;overscroll-behavior:contain;flex:1;min-height:0}
.element-demo-mount .tools-section>.section-inner{padding:0;max-width:none}
.element-demo-mount .tools-section>.section-inner>:is(.section-label,.section-heading,.tools-description){display:none}
.element-demo-mount figure{margin:0!important;transform:none!important}
.element-demo-mount figcaption{padding:12px 20px;margin:0;font-size:11px}
.element-demo-mount .mock-app{border-radius:0;width:100%;max-width:none;height:calc(100dvh - 165px);min-height:540px}
.element-demo-mount .kg-shell{border-radius:0;height:calc(100dvh - 165px);min-height:540px;max-width:none}
/* Dialogen er allerede stor. Undgå endnu en fuldskærmsramme i eksemplet. */
.element-demo-mount :is(.mock-expand,[data-kg-action=fullscreen]){display:none!important}
@media(max-width:850px){.element-demo-mount .kg-shell{height:auto}.element-demo-mount .kg-map-pane{height:440px}.element-demo-mount .kg-inspector{height:560px}}
@media(max-width:700px){
 .tools-page .elements-intro .section-inner,.tools-page .elements-model .section-inner,.tools-page .elements-outcome .section-inner{padding-block:65px}
 .tools-page .elements-principles{grid-template-columns:1fr}
 .tools-page .elements-principles article,.tools-page .elements-principles article+article{padding:24px 0;border-left:0}
 .elements-ready .system-map{padding:12px}
 .tools-page .elements-outcome .section-inner>div:first-child{padding-right:0}
 .element-dialog{width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0}
 .element-dialog-bar{padding:14px 20px}
 .element-dialog-nav{padding:12px 20px;gap:5px}
 .element-dialog-nav button{font-size:12px;padding:7px 10px;min-height:36px}
 [data-element-detail-mount]{padding:26px 22px}
 .element-dialog .element-detail p{font-size:16px}
 .element-demo-dialog{width:100%;height:100dvh;margin:0;max-width:none}
 .element-demo-bar{padding:12px 14px;gap:12px}
 .element-demo-bar h2{font-size:19px}
 .element-demo-mount .mock-app{height:calc(100dvh - 90px);min-height:500px}
}
@media print{.elements-ready .element-details{display:block!important}.element-dialog,.element-demo-dialog{display:none!important}}

/* Teknologier flyttet fra forsiden efter systemmodellen. */
.tools-page .elements-tech-title{max-width:780px;margin-top:28px;margin-bottom:48px}
.tools-page .elements-logo-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--fc-line)}
.tools-page .elements-logo-grid li{display:flex;align-items:center;gap:16px;padding:28px 12px 28px 0;border-bottom:1px solid var(--fc-line);font-size:16px}
.tools-page .elements-logo-grid img{width:30px;height:30px;object-fit:contain;flex-shrink:0}
@media(max-width:700px){.tools-page .elements-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tools-page .elements-logo-grid li{font-size:13px;gap:10px}}

/* Tillid og ansvar: flyttet fra forsiden til efter Elementers introduktion. */
.tools-page .elements-trust{background:var(--fc-mint)}
.tools-page .elements-trust-heading{padding-right:var(--fc-gutter)}
.tools-page .elements-trust .fc-title{font-size:clamp(34px,4.1vw,60px);margin-top:30px;letter-spacing:-.035em}
.tools-page .elements-trust .fc-copy{padding-left:var(--fc-gutter);max-width:none}
@media(max-width:700px){.tools-page .elements-trust-heading{padding:0}.tools-page .elements-trust .fc-copy{padding:0;margin-top:32px}.tools-page .elements-trust .fc-title{font-size:36px}}
