/*
Theme Name: Filosofisk Dialog V6 Let
Theme URI: https://example.com/
Author: Filosofisk Dialog
Description: Skræddersyet WordPress-tema til Filosofisk Dialog og Certificering i Protreptik.
Version: 6.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: filosofisk-dialog
*/

:root{
  --forest:#243b2c; --forest2:#425a40; --moss:#6b7650; --sage:#bfc4a8;
  --cream:#f5eedf; --paper:#fffaf0; --sand:#dfcfb0; --rust:#a7662b;
  --ink:#263027; --muted:#626b61; --line:rgba(36,59,44,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}
a{text-decoration:none;color:inherit} img{max-width:100%;display:block}
.wrap{width:min(1180px,calc(100% - 36px));margin:auto}
h1,h2,h3,.serif{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.025em}
.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--rust)}
header{position:sticky;top:0;z-index:50;background:rgba(245,238,223,.97);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);box-shadow:0 4px 20px rgba(30,45,35,.05)}
nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:flex;align-items:center;gap:14px;font-weight:800;letter-spacing:.04em}
.brand img{width:52px;height:52px;border-radius:50%;object-fit:cover}
.links{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:650}
.nav-item{position:relative;height:88px;display:flex;align-items:center}
.nav-main{display:flex;align-items:center;gap:5px;height:100%}
.chev{font-size:13px;opacity:.65;transition:transform .2s}
.has-sub:hover .chev{transform:rotate(180deg)}
.submenu{position:absolute;left:-18px;top:74px;min-width:245px;padding:10px;background:rgba(255,250,240,.99);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 45px rgba(28,43,32,.16);opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s ease;z-index:100}
.submenu-right{left:auto;right:-18px}
.has-sub:hover .submenu,.has-sub:focus-within .submenu{opacity:1;visibility:visible;transform:translateY(0)}
.submenu a{display:block;padding:10px 12px;border-radius:9px;font-size:13px;font-weight:550;white-space:nowrap}
.submenu a:hover{background:#ebe7d8}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:999px;background:var(--forest);color:white;font-weight:700;font-size:14px;border:1px solid var(--forest);transition:.2s}
.btn:hover{transform:translateY(-1px);background:#17281e}
.btn.alt{background:transparent;color:var(--forest)}
.menu-toggle{display:none;background:none;border:0;padding:10px;cursor:pointer}
.menu-toggle span{display:block;width:25px;height:2px;background:var(--forest);margin:5px 0}

.hero-photo{position:relative;height:min(820px,calc(100vh - 88px));min-height:680px;overflow:hidden;background:#2d3d2f}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%;filter:saturate(.78) brightness(.78) contrast(1.03)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,34,25,.82) 0%,rgba(21,34,25,.62) 40%,rgba(21,34,25,.17) 72%,rgba(21,34,25,.08) 100%);z-index:1}
.hero-photo-content{position:relative;z-index:2;height:100%;display:flex;align-items:center}
.hero-card{max-width:650px;color:white;position:relative;z-index:4}
.hero-card .eyebrow{color:#e7cfa5}
.hero-card h1{font-size:clamp(58px,6.5vw,94px);line-height:.96;margin:14px 0 24px;color:white}
.hero-card .sub{font:400 clamp(24px,2.5vw,36px)/1.25 Georgia,serif;color:#f2ede4;max-width:680px}
.hero-card p{font-size:18px;color:#edf0eb;max-width:650px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.hero-light{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.62);color:white}
.hero-person{position:absolute;right:0;bottom:58px;width:min(330px,29vw);z-index:5;background:rgba(250,245,234,.96);border:1px solid rgba(255,255,255,.55);border-radius:180px 180px 24px 24px;overflow:hidden;box-shadow:0 26px 70px rgba(0,0,0,.28)}
.hero-person img{width:100%;height:360px;object-fit:cover;object-position:center 36%}
.hero-person-text{padding:19px 22px 21px;color:var(--forest);text-align:center}
.hero-person-text strong{display:block;font:400 25px/1.1 Georgia,serif;margin-bottom:5px}
.hero-person-text span{display:block;font-size:12px;line-height:1.4}

.page-hero{padding:105px 0 80px;background:linear-gradient(135deg,#e8e8d8,#f5eedf);border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(52px,6vw,82px);line-height:1;margin:15px 0 24px;max-width:900px}
.page-hero .lead{font-size:22px;color:#465248;max-width:780px}
section{padding:95px 0;border-bottom:1px solid var(--line)}
h2{font-size:clamp(39px,4.5vw,60px);line-height:1.08;margin:12px 0 22px}
h3{font-size:28px;margin:0 0 12px}
.lead{font-size:21px;color:#465248}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.paper{background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:38px;box-shadow:0 20px 55px rgba(52,55,45,.06)}
.paper p:first-child{margin-top:0}.paper p:last-child{margin-bottom:0}
.soft{background:#e9eadc}
.dark{background:var(--forest);color:white;border-radius:30px;padding:44px}
.dark p{color:#e1e7e0}
.quote{font:400 27px/1.35 Georgia,serif;color:var(--forest2);border-left:3px solid var(--rust);padding-left:24px;margin:32px 0}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
.stat{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:26px}
.stat strong{display:block;font:400 38px Georgia,serif;color:var(--rust);margin-bottom:6px}
.timeline{border-top:1px solid var(--line)}
.stop{display:grid;grid-template-columns:66px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}
.stop .n{width:44px;height:44px;border:1px solid var(--forest2);border-radius:50%;display:grid;place-items:center;font:400 20px Georgia,serif}
.stop h3{font-size:25px;margin:0 0 4px}.stop p{margin:0;color:var(--muted)}
.movements{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}
.move{border-top:1px solid var(--line);padding:14px 0}
.teacher{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:center}
.portrait{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 36%;border-radius:220px 220px 26px 26px;border:1px solid var(--line);box-shadow:0 24px 60px rgba(42,47,38,.14)}
.detailrow{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.detailrow:last-child{border-bottom:0}.detailrow b{text-transform:uppercase;letter-spacing:.1em;font-size:11px}
.cta{background:var(--sand);text-align:center}
.cta .inner{max-width:800px;margin:auto}
footer{background:#16241b;color:#e6ece6;padding:48px 0}
.foot{display:flex;justify-content:space-between;gap:30px;align-items:end}
footer p{margin:5px 0;color:#b9c6bd;font-size:14px}

@media(max-width:1050px){.links{gap:14px;font-size:13px}.nav-cta{display:none}}
@media(max-width:820px){
 nav{height:78px}.menu-toggle{display:block;margin-left:auto}.nav-cta{display:none}
 .links{position:absolute;top:78px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--cream);border-top:1px solid var(--line);box-shadow:0 16px 30px rgba(25,40,30,.10);padding:10px 24px 20px}
 .menu-open .links{display:flex}.nav-item{height:auto;display:block}.nav-main{height:auto;padding:14px 0}
 .submenu,.submenu-right{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-radius:0;min-width:0;padding:0 0 8px 14px;background:transparent}
 .has-sub:hover .submenu,.has-sub:focus-within .submenu{display:block}
 .submenu a{padding:9px 12px;border-left:1px solid var(--line);border-radius:0;color:var(--muted)}
 .hero-photo{height:auto;min-height:720px}.hero-photo-content{min-height:720px}
 .hero-person{width:180px;right:14px;top:48px;bottom:auto}.hero-person img{height:190px}.hero-person-text{padding:12px 10px}.hero-person-text strong{font-size:20px}
 .hero-card{padding-top:250px}.grid2,.grid3,.teacher{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
 .stats{grid-template-columns:1fr}.movements{grid-template-columns:1fr}.foot{display:block}
 .hero-card h1{font-size:52px}.hero-person{width:150px;top:35px}.hero-person img{height:155px}.hero-card{padding-top:215px}
}

/* Farvejustering inspireret af brochurefotoet – kun farver ændret */
:root{
  --forest:#6f6550;
  --forest2:#84755e;
  --moss:#8e8968;
  --sage:#d8cfb9;
  --cream:#f4e8d7;
  --paper:#fbf3e7;
  --sand:#ddc6a8;
  --rust:#a86635;
  --ink:#3f3127;
  --muted:#76685b;
  --line:rgba(93,73,55,.18);
}
body{background:var(--cream);color:var(--ink)}
header{background:rgba(244,232,215,.97);border-bottom-color:var(--line);box-shadow:0 4px 20px rgba(82,58,40,.05)}
.submenu{background:rgba(251,243,231,.99);box-shadow:0 18px 45px rgba(75,54,39,.14)}
.submenu a:hover{background:#eadbc7}
.btn{background:var(--rust);border-color:var(--rust);color:#fff}
.btn:hover{background:#92572d}
.btn.alt{background:transparent;color:#6f6550;border-color:#9a896f}
.menu-toggle span{background:#6f6550}
.hero-photo{background:#6a5b48}
.hero-image{filter:saturate(.84) brightness(.88) contrast(1.01)}
.hero-overlay{background:linear-gradient(90deg,rgba(71,51,37,.68) 0%,rgba(86,64,47,.48) 40%,rgba(112,88,65,.15) 72%,rgba(112,88,65,.05) 100%)}
.hero-card .eyebrow{color:#ecd0ad}
.hero-card .sub{color:#fff6e9}
.hero-card p{color:#f7eee2}
.hero-light{background:rgba(255,248,238,.13);border-color:rgba(255,248,238,.65);color:#fffaf2}
.hero-person{background:rgba(251,243,231,.96);border-color:rgba(255,245,232,.60);box-shadow:0 26px 70px rgba(74,52,36,.25)}
.hero-person-text{color:#5b4a3a}
.page-hero{background:linear-gradient(135deg,#eadfcf,#f4e8d7)}
.page-hero .lead,.lead{color:#66584b}
.paper{background:var(--paper);box-shadow:0 20px 55px rgba(82,62,46,.05)}
.soft{background:#e9ddcb}
.dark{background:#9b8d74;color:#fffaf2}
.dark p{color:#f1e7d8}
.quote{color:#6e604e;border-left-color:var(--rust)}
.stat strong{color:var(--rust)}
.stop .n{border-color:#8e8068}
.portrait{box-shadow:0 24px 60px rgba(80,59,42,.12)}
.cta{background:#e4d4bd}
footer{background:#7a6b57;color:#fff7ec}
footer p,footer a{color:#fff7ec}
.botanical path,.botanical ellipse{stroke:#8e8968}
.eyebrow:before{background:#a8a17e}



/* WordPress helpers */
.admin-bar header{top:32px}
@media(max-width:782px){.admin-bar header{top:46px}}
.current-menu-item>a{font-weight:800}


/* Responsive rettelse – forhindrer vandret scroll på PC, tablet og mobil */
html, body { width:100%; max-width:100%; overflow-x:hidden; }
.site, main, section, header, footer { max-width:100%; }
.wrap { max-width:1180px; }
nav { min-width:0; }
.brand { flex:0 1 auto; min-width:0; }
.links { min-width:0; }
.hero-photo, .hero-photo-content { width:100%; max-width:100%; }
.hero-card { min-width:0; }
.hero-person { max-width:calc(100% - 28px); }

@media (max-width:1100px){
  .wrap{width:min(1180px,calc(100% - 28px))}
  .links{gap:12px;font-size:13px}
  .brand{gap:9px;font-size:15px}
  .brand img{width:44px;height:44px}
}
@media (max-width:900px){
  nav{height:78px}
  .menu-toggle{display:block;margin-left:auto}
  .links{
    position:absolute;top:78px;left:0;right:0;width:100%;
    display:none;flex-direction:column;align-items:stretch;gap:0;
    background:var(--cream);border-top:1px solid var(--line);
    box-shadow:0 16px 30px rgba(25,40,30,.10);padding:10px 24px 20px
  }
  .menu-open .links{display:flex}
  .nav-item{height:auto;display:block}
  .nav-main{height:auto;padding:14px 0}
  .submenu,.submenu-right{
    position:static;display:none;opacity:1;visibility:visible;transform:none;
    box-shadow:none;border:0;border-radius:0;min-width:0;
    padding:0 0 8px 14px;background:transparent
  }
  .has-sub:hover .submenu,.has-sub:focus-within .submenu{display:block}
  .submenu a{white-space:normal}
}
@media (max-width:560px){
  .wrap{width:calc(100% - 24px)}
  section{padding:68px 0}
  .hero-card h1{font-size:clamp(43px,13vw,52px)}
}


/* Sociale medier */
.footer-contact{display:flex;flex-direction:column;gap:8px}
.social-links{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.social-link{display:flex;align-items:center;gap:9px;text-decoration:none;color:inherit;font-size:14px}
.social-link:hover{text-decoration:underline}
.social-icon{
  width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 28px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);
  font-weight:700;font-size:14px;line-height:1
}
@media(max-width:700px){
  .foot{gap:24px}
  .social-link{font-size:13px}
}


.social-pending{opacity:.82;cursor:default}
.social-pending small{font-size:.9em;opacity:.8}


/* V4 – fyldige undersider */
.rich-copy{max-width:900px}
.rich-copy h2{margin:42px 0 14px;font-size:clamp(27px,3vw,38px)}
.rich-copy h3{margin:6px 0 12px;font-family:Inter,Arial,sans-serif;font-size:16px;letter-spacing:.02em;color:var(--rust)}
.rich-copy p{font-size:18px;line-height:1.75;margin:0 0 18px}
.quote-card{margin:30px 0;padding:26px 30px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.38)}
.quote-card p{margin:0;font-family:Georgia,serif;font-size:23px;line-height:1.5}
.quote-card.big p{font-size:clamp(25px,3vw,34px)}
.module-stack{display:grid;gap:22px}
.module{display:grid;grid-template-columns:64px 1fr;gap:22px;padding:28px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.34)}
.module>span{font-family:Georgia,serif;font-size:34px;color:var(--rust)}
.module h2{margin:0 0 4px}
.steps-rich{display:grid;gap:18px;margin-top:28px}
.steps-rich>div{padding:24px 26px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.32)}
.steps-rich b{display:inline-flex;width:34px;height:34px;border-radius:50%;align-items:center;justify-content:center;background:var(--rust);color:white;margin-bottom:10px}
.steps-rich h3{font-size:21px;color:var(--ink);font-family:Georgia,serif;margin:0 0 8px}
.steps-rich p{margin:0}
.practical-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:34px}
.practical-grid .card h2{margin:8px 0 0;font-size:26px}
.guli-detail{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:38px;align-items:start}
.guli-detail img{width:100%;border-radius:28px;display:block}
@media(max-width:720px){
 .module{grid-template-columns:1fr}.module>span{font-size:28px}
 .practical-grid,.guli-detail{grid-template-columns:1fr}
 .rich-copy p{font-size:17px}
}
