/*
Theme Name: Morgans släktspår
Theme URI: https://example.com/morgans-slakt
Author: Morgan
Description: Ett varmt och modernt WordPress-tema för släktforskning, DNA och familjehistoria.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: morgans-slakt
*/

:root{--ink:#17231d;--forest:#173d31;--forest-2:#0d2b22;--sage:#8fae91;--cream:#f5f0e6;--paper:#fffdf8;--gold:#c99b50;--line:rgba(23,35,29,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 "DM Sans",sans-serif}a{color:inherit}.site-header{position:absolute;z-index:10;top:0;left:0;display:flex;width:100%;padding:24px clamp(22px,5vw,72px);align-items:center;justify-content:space-between;color:#fff}.brand{display:flex;align-items:center;gap:12px;font-weight:700;text-decoration:none}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.5);border-radius:50%;font-family:"Playfair Display",serif;font-size:22px}.site-header nav{display:flex;align-items:center;gap:28px}.site-header nav a{text-decoration:none;font-size:14px;font-weight:600}.site-header nav a:hover{color:#f1d6a1}.nav-contact{padding:9px 16px;border:1px solid rgba(255,255,255,.45);border-radius:99px}.menu-button{display:none;border:1px solid rgba(255,255,255,.45);border-radius:8px;background:transparent;color:#fff;padding:8px 12px}.hero{position:relative;display:grid;min-height:92vh;align-items:center;overflow:hidden;background:#191913;color:#fff}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(8,14,11,.91) 0%,rgba(8,14,11,.7) 38%,rgba(8,14,11,.1) 72%),linear-gradient(0deg,rgba(8,14,11,.38),transparent 40%)}.hero-content{position:relative;z-index:2;width:min(720px,calc(100% - 44px));margin-left:clamp(22px,8vw,130px);padding:150px 0 100px}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:700;color:#83652f}.eyebrow{color:#f1d6a1}.hero h1,.section h2{font-family:"Playfair Display",serif;line-height:1.06}.hero h1{max-width:680px;margin:18px 0 24px;font-size:clamp(48px,7vw,96px);letter-spacing:-.04em}.hero-lead{max-width:590px;font-size:clamp(18px,2vw,22px);color:rgba(255,255,255,.82)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;min-height:48px;padding:0 20px;align-items:center;justify-content:center;border:0;border-radius:99px;font:700 14px "DM Sans",sans-serif;text-decoration:none;cursor:pointer}.button-primary{background:#e9d4a6;color:#203126}.button-quiet{border:1px solid rgba(255,255,255,.4);color:#fff}.scroll-hint{position:absolute;z-index:2;right:5vw;bottom:30px;display:grid;width:46px;height:46px;place-items:center;border:1px solid rgba(255,255,255,.4);border-radius:50%;text-decoration:none}.section{padding:clamp(80px,10vw,145px) clamp(22px,8vw,130px)}.split-heading{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.section h2{margin:14px 0 30px;font-size:clamp(38px,5vw,68px);letter-spacing:-.025em}.split-heading p{max-width:590px;margin-top:24px;font-size:19px;color:#56635c}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:70px}.feature-card{position:relative;padding:34px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 18px 60px rgba(32,45,38,.06)}.feature-number{color:var(--gold);font-size:12px;font-weight:700}.feature-card h3{font-family:"Playfair Display",serif;font-size:25px}.feature-card p{color:#637068}.dna-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:center;background:var(--forest-2);color:#fff}.dna-art{position:relative;min-height:480px;border-radius:50%;background:radial-gradient(circle,#426b58 0 2%,transparent 3%),radial-gradient(circle at 40% 30%,#264f3f,transparent 50%);overflow:hidden}.helix{position:absolute;inset:8%;background:repeating-linear-gradient(115deg,transparent 0 24px,rgba(224,193,132,.85) 25px 27px,transparent 28px 50px);mask:radial-gradient(ellipse at center,#000 0 28%,transparent 29% 42%,#000 43% 48%,transparent 49%);transform:rotate(-18deg)}.section-kicker.light{color:#d9b97d}.dna-copy p{color:#b8c8c0;font-size:18px}.check-list{padding:0;list-style:none}.check-list li{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}.check-list li:before{content:"✓";margin-right:12px;color:#e1bf7d}.fine-print{font-size:13px!important}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center;background:var(--cream)}.portrait-placeholder{display:grid;aspect-ratio:4/5;place-items:center;align-content:center;border-radius:180px 180px 24px 24px;background:linear-gradient(145deg,#68806f,#1d4637);color:#fff;box-shadow:30px 30px 0 #ded4c1}.portrait-placeholder span{font:120px "Playfair Display",serif;opacity:.8}.portrait-placeholder small{opacity:.7}.large-copy{font-size:21px}.about-copy blockquote{margin:34px 0 0;padding-left:24px;border-left:2px solid var(--gold);font-family:"Playfair Display",serif;font-size:22px;font-style:italic}.game-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;background:#101b16;color:#fff}.game-intro p{color:#aebcb4}.game-stats{display:flex;gap:22px;margin:30px 0;color:#9caaa2;font-size:13px}.game-stats strong{display:block;color:#fff;font-size:20px}.button-gold{background:#ddb96f;color:#18251f}.memory-game{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-content:center}.memory-card{position:relative;aspect-ratio:1;border:0;border-radius:16px;background:transparent;cursor:pointer;perspective:800px}.memory-card-inner{position:absolute;inset:0;transition:transform .45s;transform-style:preserve-3d}.memory-card.flipped .memory-card-inner,.memory-card.matched .memory-card-inner{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;display:grid;place-items:center;border-radius:16px;backface-visibility:hidden}.card-back{border:1px solid #405148;background:#1a2a22}.card-back:after{content:"M";font:34px "Playfair Display",serif;color:#c9a968}.card-front{background:#f0e7d3;color:#183125;font-size:36px;transform:rotateY(180deg)}.memory-card.matched .card-front{box-shadow:inset 0 0 0 3px #c9a968}.game-message{grid-column:2;margin-top:-30px;color:#e4c787;font-weight:700}.contact{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact-copy{padding-top:25px}.contact-copy>p{font-size:19px;color:#56635c}.contact-placeholder{display:grid;margin-top:28px;padding:24px;border:1px dashed #9ca89f;border-radius:16px;background:#f7f4ed}.contact-placeholder span{font-weight:700}.contact-placeholder small{color:#68746c}footer{display:flex;padding:28px clamp(22px,5vw,72px);justify-content:space-between;gap:20px;background:#0d1813;color:#91a198;font-size:13px}footer a{color:#fff;text-decoration:none;font-weight:700}
@media(max-width:900px){.site-header nav{display:none;position:absolute;top:76px;right:20px;flex-direction:column;align-items:flex-start;width:220px;padding:22px;border-radius:14px;background:#10241b;box-shadow:0 18px 50px #0006}.site-header nav.open{display:flex}.menu-button{display:block}.split-heading,.dna-section,.about,.game-section,.contact{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.dna-art{min-height:320px}.portrait-placeholder{max-width:440px}.game-message{grid-column:1;margin-top:0}}
@media(max-width:560px){.hero-content{padding-top:130px}.hero h1{font-size:48px}.section{padding:75px 22px}.memory-game{grid-template-columns:repeat(3,1fr)}.game-stats{justify-content:space-between}footer{flex-direction:column}.scroll-hint{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.memory-card-inner{transition:none}}

/* Kompakt meny som följer med efter att besökaren börjat skrolla. */
.site-header{position:fixed;transition:padding .25s,background .25s,box-shadow .25s,backdrop-filter .25s}
.site-header.is-scrolled{padding-top:10px;padding-bottom:10px;background:rgba(10,27,21,.92);box-shadow:0 8px 30px rgba(0,0,0,.18);backdrop-filter:blur(14px)}
.brand-mark{transition:width .25s,height .25s,font-size .25s}
.site-header.is-scrolled .brand-mark{width:30px;height:30px;font-size:17px}
.site-header.is-scrolled .brand{font-size:14px}
.site-header.is-scrolled nav{gap:20px}
.site-header.is-scrolled nav a{font-size:13px}
.site-header.is-scrolled .nav-contact{padding:6px 13px}

/* WordPress navigation and reusable inner-page layout */
.site-header .menu,.site-footer .menu{display:flex;margin:0;padding:0;align-items:center;gap:28px;list-style:none}
.site-header .menu a{text-decoration:none;font-size:14px;font-weight:600}
.brand-logo,.brand-logo .custom-logo-link{display:flex}.brand-logo img{width:40px;height:40px;object-fit:contain}
.page-hero{display:flex;min-height:480px;padding:150px clamp(22px,8vw,130px) 80px;align-items:flex-end;background:#173d31 center/cover no-repeat;color:#fff}
.page-hero.compact{min-height:360px}.page-hero>div{width:min(900px,100%)}.page-hero h1{max-width:900px;margin:15px 0 0;font:700 clamp(44px,7vw,82px)/1.05 "Playfair Display",serif;letter-spacing:-.035em}
.narrow{width:min(920px,100%);margin-inline:auto}.entry-content{font-size:18px}.entry-content>*{max-width:800px;margin-left:auto;margin-right:auto}.entry-content>.alignwide{max-width:1160px}.entry-content>.alignfull{max-width:none;width:100vw;margin-left:50%;transform:translateX(-50%)}
.entry-content h2,.entry-content h3,.news-card h2{font-family:"Playfair Display",serif;line-height:1.15}.entry-content h2{margin-top:1.8em;font-size:clamp(32px,4vw,48px)}.entry-content h3{margin-top:1.6em;font-size:28px}.entry-content img{max-width:100%;height:auto;border-radius:16px}.entry-content a,.post-taxonomy a{color:#27604a}.entry-content blockquote{padding:8px 0 8px 24px;border-left:3px solid var(--gold);font:italic 22px/1.5 "Playfair Display",serif}
.front-content>*:first-child{margin-top:0}.front-content>*:last-child{margin-bottom:0}
.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:30px}.section-heading-row h2{margin-bottom:0}.news-section{background:#f8f5ed}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.news-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 18px 60px rgba(32,45,38,.06)}.news-image{display:grid;height:230px;place-items:center;overflow:hidden;background:linear-gradient(145deg,#68806f,#1d4637);color:#e9d4a6;text-decoration:none}.news-image img{width:100%;height:100%;object-fit:cover}.news-image span{font:80px "Playfair Display",serif}.news-card-copy{padding:26px}.news-card time{color:#748078;font-size:13px}.news-card h2,.news-card h3{margin:10px 0 12px;font-family:"Playfair Display",serif;font-size:27px;line-height:1.16}.news-card h2 a,.news-card h3 a{text-decoration:none}.news-card p{color:#637068}.text-link{color:#795b28;font-weight:700;text-decoration:none}.empty-news{grid-column:1/-1;padding:40px;border:1px dashed #9ca89f;border-radius:18px}.pagination{margin-top:50px}.nav-links{display:flex;gap:10px}.page-numbers{padding:8px 14px;border-radius:99px;background:#eee8da;text-decoration:none}.page-numbers.current{background:var(--forest);color:#fff}.post-taxonomy{margin-top:50px;padding-top:20px;border-top:1px solid var(--line)}.post-navigation{padding-top:0}.post-navigation .nav-links{justify-content:space-between}.post-navigation a{text-decoration:none;font-weight:700}.site-footer{display:flex;padding:28px clamp(22px,5vw,72px);align-items:center;justify-content:space-between;gap:20px;background:#0d1813;color:#91a198;font-size:13px}.site-footer a{color:#fff;text-decoration:none;font-weight:700}
.admin-bar .site-header{top:32px}
@media(max-width:900px){.site-header .menu{flex-direction:column;align-items:flex-start}.news-grid{grid-template-columns:1fr 1fr}.section-heading-row{align-items:flex-start;flex-direction:column}.site-footer{align-items:flex-start;flex-direction:column}.site-footer .menu{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:600px){.admin-bar .site-header{top:46px}.news-grid{grid-template-columns:1fr}.page-hero{min-height:400px;padding-top:130px}.page-hero.compact{min-height:320px}}
