/*
 * Víkingur 26: the education pages, the hub (page-fraedsla.php) and the
 * policy pages (page-edu-policy.php), after the design's FraedslaPage and
 * PolicyPage (ui_kits/web/InfoPages.jsx).
 */

/* ── Hub: a card per page ── */
.vik-edu-hub{padding-top:64px}
.vik-edu-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.vik-edu-card{display:grid;gap:40px;align-content:space-between;min-width:0;min-height:200px;padding:28px;border:1px solid var(--border-hairline);border-radius:var(--radius-card);color:var(--ink);text-decoration:none;transition:border-color var(--dur-fast),background var(--dur-fast)}
.vik-edu-card:hover{border-color:var(--ink);background:var(--canvas)}
.vik-edu-card__body{display:grid;gap:6px}
.vik-edu-card__title{font-family:var(--font-condensed);font-weight:700;font-size:24px;line-height:1.05;text-transform:uppercase;overflow-wrap:normal;hyphens:manual}
.vik-edu-card__sub{font-size:14px;line-height:1.45;color:var(--text-secondary)}

/* ── Hub: its own documents and links out ── */
.vik-edu-more{padding:0 0 96px}
.vik-edu-more__in{display:grid;gap:56px;padding-top:56px;border-top:1px solid var(--border-hairline)}
.vik-edu-more__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px}
.vik-edu-more__col{display:grid;gap:20px;align-content:start;min-width:0}
.vik-edu-more .vik-edu__h2{font-size:clamp(28px,2.6vw,40px);line-height:.98}
.vik-edu-out{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.vik-edu-out__card{display:grid;grid-template-columns:200px minmax(0,1fr);border:1px solid var(--border-hairline);border-radius:var(--radius-card);overflow:hidden}
.vik-edu-out__img{position:relative;min-height:160px;border-right:1px solid var(--border-hairline);background:var(--white)}
.vik-edu-out__img img{position:absolute;inset:16px;width:calc(100% - 32px);height:calc(100% - 32px);object-fit:contain}
.vik-edu-out__body{display:grid;gap:16px;align-content:center;justify-items:start;padding:24px 28px}
.vik-edu-out__title{margin:0;font-family:var(--font-condensed);font-weight:700;font-size:24px;line-height:1.05;text-transform:uppercase}
.vik-edu-out__body p{margin:0;font-size:16px;line-height:1.55;color:var(--text-secondary)}

/* ── Policy: rules in tabs ── */
.vik-edu{padding-top:48px}
.vik-edu__h2{margin:0;font-family:var(--font-display);font-weight:900;font-size:clamp(36px,3.6vw,56px);line-height:.92;text-transform:uppercase;text-wrap:balance}
.vik-edu-rules{display:grid;gap:32px}
.vik-edu-tabs{display:flex;flex-wrap:wrap;gap:8px}
.vik-edu-tabs[hidden]{display:none}
.vik-edu-tabs__tab{padding:12px 18px;border:1px solid var(--border-hairline);background:var(--white);color:var(--ink);font-family:var(--font-condensed);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast)}
.vik-edu-tabs__tab:hover{border-color:var(--ink)}
.vik-edu-tabs__tab.is-active{border-color:var(--ink);background:var(--ink);color:#fff}
.vik-edu-tabs__tab span{margin-left:8px;opacity:.6}
.vik-edu-group{display:grid;gap:16px}
.vik-edu-group[hidden]{display:none}
.vik-edu-group+.vik-edu-group{margin-top:24px}
.vik-edu-group__title{margin:0;font-family:var(--font-condensed);font-weight:700;font-size:22px;line-height:1.15;text-transform:uppercase}
.vik-edu-rules.is-tabbed .vik-edu-group+.vik-edu-group{margin-top:0}
.vik-edu-rules.is-tabbed .vik-edu-group__title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.vik-edu-rules__list{margin:0;padding:0;list-style:none;columns:2;column-gap:56px;border-top:1px solid var(--border-hairline)}
.vik-edu-rules__list li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:16px 0;border-bottom:1px solid var(--border-hairline);break-inside:avoid;font-size:17px;line-height:1.5}
.vik-edu-rules__n{font-family:var(--font-display);font-weight:900;font-size:26px;line-height:.95;color:var(--vik-astrida);font-variant-numeric:tabular-nums}

/* ── Policy: text ── */
.vik-edu-prose{max-width:860px;min-width:0;font-size:18px;line-height:1.65;overflow-wrap:break-word}
.vik-edu-prose>:first-child{margin-top:0}
.vik-edu-prose>:last-child{margin-bottom:0}
.vik-edu-prose p{margin:0 0 20px}
.vik-edu-prose a{color:var(--text-brand)}
.vik-edu-prose__h{margin:40px 0 14px;font-family:var(--font-condensed);font-weight:700;font-size:24px;line-height:1.15;text-transform:uppercase}
.vik-edu-list{margin:0 0 20px;padding:0;list-style:none;border-top:1px solid var(--border-hairline)}
.vik-edu-list li{position:relative;padding:14px 0 14px 28px;border-bottom:1px solid var(--border-hairline);font-size:17px;line-height:1.5}
.vik-edu-list li::before{content:"";position:absolute;left:4px;top:24px;width:8px;height:8px;background:var(--vik-astrida)}
.vik-edu-raw img{max-width:100%;height:auto}

/* ── Documents ── */
.vik-edu-docs{margin:0 0 20px;border-top:1px solid var(--border-hairline)}
.vik-edu-doc{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--border-hairline);color:var(--ink);text-decoration:none;transition:color var(--dur-fast)}
.vik-edu-prose .vik-edu-doc{color:var(--ink)}
.vik-edu-doc:hover,.vik-edu-prose .vik-edu-doc:hover{color:var(--vik-astrida)}
.vik-edu-doc__name{display:flex;align-items:center;gap:14px;min-width:0;font-size:17px;font-weight:600;line-height:1.35}
.vik-edu-doc__name .vik-icon{flex:none}
.vik-edu-doc__kind{display:flex;align-items:center;gap:10px;flex:none;font-family:var(--font-condensed);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}

/* ── Not published, and the row of other pages ── */
.vik-edu-empty{display:grid;gap:16px;justify-items:start;max-width:760px;padding:40px;border-radius:var(--radius-card);background:var(--canvas)}
.vik-edu-empty p{margin:0;font-size:17px;line-height:1.55;color:var(--text-secondary)}
.vik-edu-next{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:56px;padding-top:32px;border-top:1px solid var(--border-hairline)}
.vik-edu-next__label{margin-right:8px;font-family:var(--font-condensed);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);text-decoration:none}
.vik-edu-next__label:hover{color:var(--ink)}

@media (prefers-reduced-motion:no-preference){
	.vik-edu-rules.is-tabbed .vik-edu-group:not([hidden]){animation:vik-edu-drop 220ms var(--ease-strike)}
}
@keyframes vik-edu-drop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

@media (max-width:1180px){
	.vik-edu-cards{gap:24px}
	.vik-edu-out__card{grid-template-columns:1fr}
	.vik-edu-out__img{min-height:0;aspect-ratio:16/9;border-right:0;border-bottom:1px solid var(--border-hairline)}
}
@media (max-width:900px){
	.vik-edu-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
	.vik-edu-more__cols{grid-template-columns:1fr}
}
@media (max-width:640px){
	.vik-edu-hub{padding-top:40px}
	.vik-edu{padding-top:40px}
	.vik-edu-cards{grid-template-columns:1fr;gap:12px}
	.vik-edu-card{gap:24px;min-height:0;padding:22px}
	.vik-edu-card__title{font-size:22px}
	.vik-edu-more{padding-bottom:56px}
	.vik-edu-more__in{gap:40px;padding-top:40px}
	.vik-edu-out{grid-template-columns:1fr}
	.vik-edu-out__body{padding:20px}
	.vik-edu-rules__list{columns:1}
	.vik-edu-rules__list li{grid-template-columns:36px minmax(0,1fr)}
	.vik-edu-rules__n{font-size:22px}
	.vik-edu-tabs__tab{padding:10px 14px;font-size:13px}
	.vik-edu-prose{font-size:17px}
	.vik-edu-empty{padding:28px 20px}
	.vik-edu-doc__kind>span{display:none}
}
