/*
Theme Name: KrakMarkedsdata
Template: generatepress
Version: 2.0.0
Description: KrakMarkedsdata child theme
*/

@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700&family=DM+Sans:wght@300;400;500&display=swap');

:root {
    --kmd-accent: #1B5E8A;
    --kmd-accent-dark: #0F3F5E;
    --kmd-accent-bg: #EBF3FA;
    --kmd-bg: #F7F6F2;
    --kmd-surface: #ffffff;
    --kmd-ink: #1A1915;
    --kmd-ink-2: #5A5954;
    --kmd-ink-3: #9A9891;
    --kmd-border: rgba(0,0,0,.09);
    --kmd-font-h: 'Syne', sans-serif;
    --kmd-font-b: 'DM Sans', sans-serif;
    --kmd-radius: 10px;
    --kmd-radius-lg: 16px;
    --kmd-shadow: 0 1px 3px rgba(0,0,0,.06), 0 4px 16px rgba(0,0,0,.05);
}

/* === BASE === */
body { font-family: var(--kmd-font-b) !important; background: var(--kmd-bg) !important; color: var(--kmd-ink) !important; font-size: 15px !important; line-height: 1.7 !important; }
h1,h2,h3,h4,h5,h6 { font-family: var(--kmd-font-h) !important; color: var(--kmd-ink) !important; line-height: 1.25 !important; font-weight: 600 !important; }
p { color: var(--kmd-ink-2) !important; margin-bottom: 1rem !important; }
a { color: var(--kmd-accent) !important; text-decoration: none !important; }
a:hover { text-decoration: underline !important; }
img { border-radius: var(--kmd-radius) !important; max-width: 100% !important; }

/* === FJERN SIDEBAR & SÆTTE FULD BREDDE === */
.sidebar-primary { display: none !important; }
.content-area { width: 100% !important; max-width: 100% !important; padding: 0 !important; }
.site-main { max-width: 100% !important; padding: 0 !important; }
.entry-header { display: none !important; }
.inside-article { padding: 0 !important; max-width: 100% !important; }
.post-image { display: none !important; }
.entry-footer { display: none !important; }
#genesis-content { padding: 0 !important; }
.container { max-width: 100% !important; padding: 0 !important; }
.grid-container { max-width: 100% !important; padding: 0 !important; }
.site-content .content-area { float: none !important; }

/* === HEADER === */
.site-header { background: var(--kmd-surface) !important; border-bottom: 1px solid var(--kmd-border) !important; box-shadow: none !important; padding: 0 !important; }
.inside-header { max-width: 1200px !important; margin: 0 auto !important; padding: 0 32px !important; display: flex !important; align-items: center !important; min-height: 64px !important; gap: 0 !important; }
.site-branding { display: flex !important; align-items: center !important; }
.site-title { margin: 0 !important; font-size: 18px !important; line-height: 1 !important; }
.site-title a, .site-title a:visited { font-family: var(--kmd-font-h) !important; font-weight: 700 !important; color: var(--kmd-ink) !important; text-decoration: none !important; letter-spacing: -.02em !important; }
.site-description { display: none !important; }

/* === NAVIGATION === */
.nav-primary { margin-left: auto !important; }
.nav-primary .main-nav > ul { display: flex !important; gap: 2px !important; list-style: none !important; margin: 0 !important; padding: 0 !important; align-items: center !important; }
.nav-primary .main-nav ul li a { font-family: var(--kmd-font-b) !important; font-size: 13.5px !important; color: var(--kmd-ink-2) !important; text-decoration: none !important; padding: 7px 14px !important; border-radius: 8px !important; transition: all .15s !important; font-weight: 400 !important; display: block !important; }
.nav-primary .main-nav ul li a:hover { background: var(--kmd-bg) !important; color: var(--kmd-ink) !important; text-decoration: none !important; }
.nav-primary .main-nav ul li.current-menu-item > a { background: var(--kmd-accent-bg) !important; color: var(--kmd-accent) !important; font-weight: 500 !important; }
.nav-primary .main-nav ul li.menu-portal > a { background: var(--kmd-accent) !important; color: #fff !important; font-weight: 500 !important; }
.nav-primary .main-nav ul li.menu-portal > a:hover { opacity: .88 !important; color: #fff !important; background: var(--kmd-accent) !important; }

/* === FOOTER === */
.site-footer { background: #1A1915 !important; color: #9A9891 !important; border-top: none !important; padding: 0 !important; }
.inside-footer-widgets { max-width: 1200px !important; margin: 0 auto !important; padding: 48px 32px 32px !important; }
.footer-widgets-1 h2 { color: #fff !important; font-size: 15px !important; margin-bottom: 12px !important; }
.footer-widgets-1 p, .footer-widgets-1 li, .footer-widgets-1 a { color: #9A9891 !important; font-size: 13px !important; }
.footer-widgets-1 a:hover { color: #fff !important; text-decoration: none !important; }
.site-info { background: #111110 !important; border-top: 1px solid rgba(255,255,255,.06) !important; padding: 0 !important; }
.inside-site-info { max-width: 1200px !important; margin: 0 auto !important; padding: 16px 32px !important; font-size: 12px !important; color: #5A5954 !important; display: flex !important; justify-content: space-between !important; align-items: center !important; }
.inside-site-info a { color: #5A5954 !important; }
.powered-by { display: none !important; }

/* === FORSIDE SEKTIONER === */
.kmd-hero { background: linear-gradient(135deg, var(--kmd-accent) 0%, var(--kmd-accent-dark) 100%); padding: 100px 32px 90px; text-align: center; }
.kmd-hero-inner { max-width: 680px; margin: 0 auto; }
.kmd-hero h1 { color: #fff !important; font-size: clamp(28px, 4.5vw, 52px) !important; font-weight: 700 !important; margin-bottom: 20px !important; letter-spacing: -.025em !important; line-height: 1.15 !important; }
.kmd-hero p { color: rgba(255,255,255,.82) !important; font-size: 17px !important; margin-bottom: 36px !important; line-height: 1.65 !important; }
.kmd-hero-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.kmd-btn-white { display: inline-flex; align-items: center; gap: 8px; background: #fff; color: var(--kmd-accent) !important; font-family: var(--kmd-font-b); font-size: 15px; font-weight: 600; padding: 14px 28px; border-radius: 10px; text-decoration: none !important; box-shadow: 0 4px 20px rgba(0,0,0,.18); transition: transform .15s, box-shadow .15s; }
.kmd-btn-white:hover { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(0,0,0,.22); color: var(--kmd-accent) !important; text-decoration: none !important; }
.kmd-btn-outline { display: inline-flex; align-items: center; gap: 8px; background: rgba(255,255,255,.12); color: #fff !important; font-family: var(--kmd-font-b); font-size: 15px; font-weight: 500; padding: 14px 28px; border-radius: 10px; text-decoration: none !important; border: 1.5px solid rgba(255,255,255,.3); transition: background .15s; }
.kmd-btn-outline:hover { background: rgba(255,255,255,.22); color: #fff !important; text-decoration: none !important; }

.kmd-stats { background: var(--kmd-surface); border-bottom: 1px solid var(--kmd-border); }
.kmd-stats-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); }
.kmd-stat { padding: 28px 24px; text-align: center; border-right: 1px solid var(--kmd-border); }
.kmd-stat:last-child { border-right: none; }
.kmd-stat-num { font-family: var(--kmd-font-h); font-size: 30px; font-weight: 700; color: var(--kmd-accent); display: block; line-height: 1; margin-bottom: 6px; }
.kmd-stat-label { font-size: 12px; color: var(--kmd-ink-3); text-transform: uppercase; letter-spacing: .06em; }

.kmd-features { max-width: 1200px; margin: 0 auto; padding: 72px 32px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.kmd-feature { background: var(--kmd-surface); border: 1px solid var(--kmd-border); border-radius: var(--kmd-radius-lg); padding: 28px 24px; box-shadow: var(--kmd-shadow); transition: transform .2s, box-shadow .2s; }
.kmd-feature:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0,0,0,.09); }
.kmd-feature-icon { width: 48px; height: 48px; background: var(--kmd-accent-bg); border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 22px; margin-bottom: 16px; }
.kmd-feature h3 { font-size: 16px !important; margin-bottom: 8px !important; color: var(--kmd-ink) !important; }
.kmd-feature p { font-size: 13.5px !important; color: var(--kmd-ink-2) !important; margin: 0 !important; line-height: 1.65 !important; }

.kmd-cta { background: var(--kmd-accent); padding: 72px 32px; text-align: center; }
.kmd-cta h2 { color: #fff !important; font-size: 30px !important; margin-bottom: 14px !important; }
.kmd-cta p { color: rgba(255,255,255,.8) !important; font-size: 16px !important; margin-bottom: 28px !important; max-width: 500px; margin-left: auto; margin-right: auto; }

/* === INDHOLDSSIDER === */
.kmd-page-hero { background: var(--kmd-surface); border-bottom: 1px solid var(--kmd-border); padding: 56px 32px 48px; }
.kmd-page-hero-inner { max-width: 900px; margin: 0 auto; }
.kmd-page-hero h1 { font-size: 34px !important; margin-bottom: 10px !important; }
.kmd-page-hero p { font-size: 16px !important; color: var(--kmd-ink-2) !important; margin: 0 !important; }

.kmd-content { max-width: 900px; margin: 0 auto; padding: 56px 32px; }
.kmd-content h2 { font-size: 22px !important; margin: 40px 0 12px !important; padding-top: 8px !important; }
.kmd-content p { font-size: 15.5px !important; color: var(--kmd-ink-2) !important; }

/* === FAQ === */
.kmd-faq-wrap { max-width: 760px; margin: 0 auto; padding: 56px 32px; }
.kmd-faq-item { background: var(--kmd-surface); border: 1px solid var(--kmd-border); border-radius: var(--kmd-radius); margin-bottom: 8px; overflow: hidden; }
.kmd-faq-q { width: 100%; padding: 18px 22px; background: none; border: none; text-align: left; font-family: var(--kmd-font-b); font-size: 15px; font-weight: 500; color: var(--kmd-ink); cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.kmd-faq-q:hover { background: var(--kmd-bg); }
.kmd-faq-chevron { color: var(--kmd-ink-3); transition: transform .2s; flex-shrink: 0; font-size: 11px; }
.kmd-faq-item.open .kmd-faq-chevron { transform: rotate(180deg); }
.kmd-faq-a { display: none; padding: 0 22px 20px; font-size: 14.5px; color: var(--kmd-ink-2); line-height: 1.7; }
.kmd-faq-item.open .kmd-faq-a { display: block; }

/* === KONTAKT === */
.kmd-kontakt-wrap { max-width: 680px; margin: 0 auto; padding: 56px 32px; }
.kmd-info-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 32px; }
.kmd-info-card { background: var(--kmd-surface); border: 1px solid var(--kmd-border); border-radius: var(--kmd-radius); padding: 22px; text-align: center; }
.kmd-info-card .icon { font-size: 24px; margin-bottom: 10px; }
.kmd-info-card h3 { font-size: 11px !important; color: var(--kmd-ink-3) !important; text-transform: uppercase !important; letter-spacing: .07em !important; margin-bottom: 5px !important; }
.kmd-info-card p { font-size: 14px !important; color: var(--kmd-ink) !important; margin: 0 !important; }
.kmd-form-box { background: var(--kmd-surface); border: 1px solid var(--kmd-border); border-radius: var(--kmd-radius-lg); padding: 36px; box-shadow: var(--kmd-shadow); }
.kmd-form-box h2 { font-size: 20px !important; margin-bottom: 24px !important; margin-top: 0 !important; }
.kmd-form-group { margin-bottom: 18px; }
.kmd-form-group label { display: block; font-size: 13px; font-weight: 500; color: var(--kmd-ink); margin-bottom: 6px; }
.kmd-form-group input, .kmd-form-group textarea { width: 100%; padding: 10px 14px; border: 1px solid rgba(0,0,0,.14); border-radius: 8px; background: var(--kmd-bg); color: var(--kmd-ink); font-family: var(--kmd-font-b); font-size: 14px; outline: none; transition: border-color .15s; box-sizing: border-box; }
.kmd-form-group input:focus, .kmd-form-group textarea:focus { border-color: var(--kmd-accent); }
.kmd-form-group textarea { height: 120px; resize: vertical; }
.kmd-submit { width: 100%; padding: 13px; background: var(--kmd-accent); color: #fff; border: none; border-radius: 9px; font-family: var(--kmd-font-b); font-size: 15px; font-weight: 500; cursor: pointer; transition: opacity .15s; }
.kmd-submit:hover { opacity: .88; }

/* === BLOG GRID === */
.kmd-blog-header { background: var(--kmd-surface); border-bottom: 1px solid var(--kmd-border); padding: 48px 32px 40px; text-align: center; }
.kmd-blog-header h1 { font-size: 34px !important; margin-bottom: 8px !important; }
.kmd-post-grid { max-width: 1200px; margin: 0 auto; padding: 48px 32px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.kmd-post-card { background: var(--kmd-surface); border: 1px solid var(--kmd-border); border-radius: var(--kmd-radius-lg); overflow: hidden; box-shadow: var(--kmd-shadow); transition: transform .2s, box-shadow .2s; }
.kmd-post-card:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0,0,0,.09); }
.kmd-post-card-img { height: 180px; background: var(--kmd-accent-bg); overflow: hidden; }
.kmd-post-card-img img { width: 100%; height: 100%; object-fit: cover; border-radius: 0 !important; }
.kmd-post-card-body { padding: 22px 24px 26px; }
.kmd-post-cat { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--kmd-accent); margin-bottom: 8px; display: block; }
.kmd-post-card h3 { font-size: 17px !important; margin-bottom: 10px !important; line-height: 1.35 !important; }
.kmd-post-card h3 a { color: var(--kmd-ink) !important; text-decoration: none !important; }
.kmd-post-card h3 a:hover { color: var(--kmd-accent) !important; }
.kmd-post-card p { font-size: 13.5px !important; color: var(--kmd-ink-2) !important; margin: 0 !important; line-height: 1.6 !important; }
.kmd-post-meta { font-size: 12px; color: var(--kmd-ink-3); margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--kmd-border); }

/* Enkelt blogpost */
.kmd-single-post { max-width: 760px; margin: 0 auto; padding: 56px 32px; }
.kmd-single-post h1 { font-size: 34px !important; margin-bottom: 16px !important; }
.kmd-single-post .kmd-post-meta { margin-bottom: 32px; padding-bottom: 24px; border-bottom: 1px solid var(--kmd-border); }
.kmd-single-post .entry-content p { font-size: 16px !important; color: var(--kmd-ink-2) !important; line-height: 1.8 !important; }
.kmd-single-post .entry-content h2 { font-size: 24px !important; margin: 40px 0 14px !important; }
.kmd-single-post .entry-content h3 { font-size: 19px !important; margin: 32px 0 10px !important; }
.kmd-single-post .entry-content ul, .kmd-single-post .entry-content ol { padding-left: 1.5rem; margin-bottom: 1.5rem; color: var(--kmd-ink-2); }
.kmd-single-post .entry-content li { margin-bottom: 6px; font-size: 15.5px; }

/* === OM OS VÆRDIER === */
.kmd-values { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 24px 0 32px; }
.kmd-value { background: var(--kmd-surface); border: 1px solid var(--kmd-border); border-radius: var(--kmd-radius); padding: 24px 20px; text-align: center; }
.kmd-value-icon { font-size: 28px; margin-bottom: 10px; }
.kmd-value h3 { font-size: 15px !important; margin: 0 !important; color: var(--kmd-ink) !important; }

/* === MOBIL === */
@media (max-width: 900px) {
    .kmd-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .kmd-stat { border-right: none; border-bottom: 1px solid var(--kmd-border); }
    .kmd-features, .kmd-post-grid { grid-template-columns: 1fr; padding: 40px 20px; }
    .kmd-values { grid-template-columns: 1fr; }
    .kmd-info-grid { grid-template-columns: 1fr; }
    .kmd-hero { padding: 72px 20px 64px; }
    .kmd-hero h1 { font-size: 28px !important; }
    .kmd-hero-btns { flex-direction: column; align-items: stretch; text-align: center; }
    .inside-header { padding: 0 20px !important; }
    .kmd-page-hero, .kmd-content, .kmd-faq-wrap, .kmd-kontakt-wrap, .kmd-single-post { padding-left: 20px; padding-right: 20px; }
    .kmd-blog-header { padding: 36px 20px 28px; }
}
