/*
Theme Name: FriRum
Description: Selvstændigt, let tema til FriRum Friskole med en illustration i fuld bredde.
Version: 1.1.1
Requires at least: 6.0
Requires PHP: 7.4
Author: FriRum Friskole
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: frirum
*/
:root { --ink: #123e60; --paper: #fff; --admin-height: 0px; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: system-ui, sans-serif; font-size: 18px; line-height: 1.65; }
body.admin-bar { --admin-height: 32px; }
a { color: inherit; text-underline-offset: .2em; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid #bd681f; outline-offset: 4px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link:focus { clip-path: none; width: auto; height: auto; margin: 0; padding: .7rem 1rem; top: 0; left: 0; z-index: 100000; background: white; }
.frirum-stage { width: 100%; margin: 0; padding: 0; }
.frirum-stage img { display: block; width: 100%; max-width: 100%; height: auto; margin: 0; }
.site-header, .site-footer { max-width: 1100px; margin: auto; padding: 1.5rem; }
.site-header { max-width: none; background: #fff; padding: 1rem clamp(1rem, 3vw, 3rem); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; }
.site-header nav { font-size: 1rem; }
.site-header nav > .menu > ul { display: flex; flex-wrap: wrap; gap: .6rem 1.5rem; list-style: none; margin: 0; padding: 0; }
.site-header .current-menu-item > a, .site-header .current_page_item > a { font-weight: 750; }
.site-name { font-size: 1.5rem; font-weight: 750; text-decoration: none; }
.menu { list-style: none; display: flex; flex-wrap: wrap; gap: .6rem 1.5rem; margin: 0; padding: 0; }
.sub-menu { list-style: none; padding-left: 1rem; }
.front-navigation { padding: 1rem; }
.front-navigation .menu { justify-content: center; }
.content { width: min(100% - 3rem, 780px); margin: 2rem auto 4rem; overflow-wrap: anywhere; }
.content article + article { margin-top: 3rem; }
h1, h2, h3 { line-height: 1.2; }
h1 { font-size: clamp(2rem, 5vw, 3rem); }
img, video { max-width: 100%; height: auto; }
iframe { max-width: 100%; }
figure { max-width: 100%; margin-inline: 0; }
input, textarea, select, button { max-width: 100%; font: inherit; }
pre { overflow: auto; }
table { display: block; max-width: 100%; overflow: auto; }
.aligncenter { display: block; margin-inline: auto; }
.alignleft { float: left; margin: 0 1.5rem 1rem 0; }
.alignright { float: right; margin: 0 0 1rem 1.5rem; }
.entry-content::after { content: ''; display: block; clear: both; }
.wp-caption-text, figcaption { font-size: .875rem; }
@media (max-width: 782px) { body.admin-bar { --admin-height: 46px; } }
/* Simple text navigation on every screen size. */
.site-header { min-height: 76px; gap: 12px 24px; padding: 14px clamp(16px, 3vw, 48px); border-bottom: 1px solid #eef1f2; }
.site-header nav { max-width: 100%; }
.site-header .menu, .site-header nav > .menu > ul { align-items: center; gap: 4px 18px; }
.site-header nav a { display: inline-block; padding: 10px 0; text-decoration: none; line-height: 1.5; }
.site-header nav a:hover { text-decoration: underline; text-underline-offset: 6px; }
.site-header .current-menu-item > a, .site-header .current-menu-ancestor > a { font-weight: 700; }
.related-pages { margin-top: 2rem; }
.site-header { position: sticky; top: var(--admin-height); z-index: 100; }
.frirum-fixed-logo { position: fixed; z-index: 110; top: calc(var(--admin-height) + var(--frirum-header-height, 76px) + 8px); left: 50%; transform: translateX(-50%); width: 62vw; pointer-events: none; transition: top .4s ease, left .4s ease, width .4s ease, transform .4s ease; }
.site-name { transition: opacity .2s ease; }
.frirum-logo-compact .site-name { opacity: 0; }
.frirum-logo-compact .site-name:focus-visible { opacity: 1; }
.frirum-logo-compact .frirum-fixed-logo { width: 190px; left: clamp(16px, 3vw, 48px); top: calc(var(--admin-height) + (var(--frirum-header-height, 76px) - 73px) / 2); transform: translateX(-18%); }
@media (prefers-reduced-motion: reduce) { .frirum-fixed-logo, .site-name { transition: none; } }
.frirum-fixed-logo img { display: block; width: 100%; height: auto; }
@media (max-width: 600px) { body.admin-bar #wpadminbar { position: fixed; } }
.related-pages h2 { font-size: 1.2rem; }
@media (max-width: 760px) {
 .site-header { justify-content: center; padding: 12px 16px; }
 .site-name { width: 100%; text-align: center; font-size: 1.25rem; }
 .site-header nav { width: 100%; }
 .site-header .menu, .site-header nav > .menu > ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 18px; }
 .site-header nav a { font-size: 15px; }
 .frirum-logo-compact .frirum-fixed-logo { width: 130px; left: 16px; top: calc(var(--admin-height) + 1px); }
}
