/* ============================================================
   Mountain of Minds — quiet pages (About, Imprint, Privacy)
   Same type, edge and palette as the Nebelmeer landing page,
   without the scene: the mountain at rest.
   ============================================================ */

/* Self-hosted fonts — adjust the paths to where the .woff2 files live on the webspace */
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/barlow-400-latin.woff2') format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/barlow-500-latin.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/barlow-condensed-400-latin.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/barlow-condensed-500-latin.woff2') format('woff2')}

:root{
  --paper:#ECE8E2;            /* warm fog-white, from the light palette */
  --ink:#232830;  --ink2:#4E5661;  --ink3:rgba(35,40,48,.52);
  --rule:rgba(35,40,48,.14);
  --sky-top:#C3C8D0; --sky-mid:#E2DCD3;   /* the static header band: sky meeting fog */
  --accent:#8E4A31;
  --font:'Barlow','Helvetica Neue',Arial,sans-serif;
  --display:'Barlow Condensed','Arial Narrow','Helvetica Neue',sans-serif;
  --edge:max(28px,6.5vw);     /* the landing page's left anchor */
  --measure:64ch;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  color-scheme:dark; --paper:#20252B; --ink:#E6E8EA; --ink2:#AEB5BC; --ink3:rgba(230,232,234,.5);
  --rule:rgba(230,232,234,.13); --sky-top:#0E1420; --sky-mid:#1B222C; --accent:#B5684A}}
:root[data-theme="dark"]{
  color-scheme:dark; --paper:#20252B; --ink:#E6E8EA; --ink2:#AEB5BC; --ink3:rgba(230,232,234,.5);
  --rule:rgba(230,232,234,.13); --sky-top:#0E1420; --sky-mid:#1B222C; --accent:#B5684A}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:24px}
body{
  margin:0;min-height:100vh;display:flex;flex-direction:column;
  background:var(--paper) linear-gradient(180deg,var(--sky-top) 0,var(--sky-mid) 22vh,var(--paper) 48vh) no-repeat;
  color:var(--ink);font:400 17.5px/1.62 var(--font);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px);
}

/* ---------- header ---------- */
.masthead{padding:max(34px,6.5vh) var(--edge) 0}
.site{display:inline-block;font:500 15px/1 var(--font);letter-spacing:.01em;color:var(--ink2);text-decoration:none;padding:4px 0;border-bottom:1px solid transparent;transition:border-color .3s ease,color .3s ease}
.site:hover{color:var(--ink);border-bottom-color:currentColor}
.masthead h1{font:400 clamp(52px,7vw,96px)/.84 var(--display);letter-spacing:.015em;margin:clamp(22px,5vh,48px) 0 0 -.04em}
.lede{font:400 clamp(20px,1.6vw,25px)/1.3 var(--display);color:var(--ink2);margin:1.05em 0 0;max-width:34ch}

/* ---------- body grid: margin column + reading column ---------- */
.page{flex:1;display:grid;grid-template-columns:minmax(0,var(--measure));gap:0 clamp(40px,5vw,88px);padding:clamp(40px,8vh,84px) var(--edge) 0}
.margin{font-size:14.5px;line-height:1.5;color:var(--ink2)}
@media (min-width:1000px){
  .page{grid-template-columns:13rem minmax(0,var(--measure))}
  .margin{position:sticky;top:32px;align-self:start}
}
@media (max-width:999px){.margin{margin-bottom:36px;padding-bottom:22px;border-bottom:1px solid var(--rule)}}
.margin .label{display:block;font:500 13px/1.4 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);margin:0 0 8px}
.margin p{margin:0 0 18px}
.margin ol{list-style:none;margin:0 0 22px;padding:0}
.margin li{margin:0 0 6px}
.margin a{color:var(--ink2);text-decoration:none}
.margin a:hover{color:var(--ink)}
.margin a[aria-current="true"]{color:var(--ink)}

/* ---------- prose ---------- */
.prose{max-width:var(--measure)}
.prose > :first-child{margin-top:0}
.prose p{margin:0 0 1.05em}
.prose h2{font:500 clamp(23px,1.7vw,27px)/1.15 var(--display);letter-spacing:.01em;margin:2.2em 0 .6em}
.prose h3{font:500 17.5px/1.4 var(--font);margin:1.6em 0 .3em}
.prose ul{margin:0 0 1.05em;padding-left:1.1em}
.prose li{margin:0 0 .35em}
.prose li::marker{color:var(--ink3)}
.prose strong{font-weight:500}
.prose a,.text-link{color:inherit;text-decoration:none;background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;padding-bottom:1px;transition:background-size .5s ease}
.prose a:hover,.text-link:hover{background-size:38% 1px}
.big{font:400 clamp(22px,1.75vw,27px)/1.36 var(--display);color:var(--ink);margin:0 0 1.2em!important}
.byline{font-size:15px;line-height:1.5;color:var(--ink2)}
.cta{display:inline-block;font:500 clamp(22px,1.6vw,26px)/1 var(--display);color:var(--ink);text-decoration:none;padding:6px 0 7px;background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;transition:background-size .5s ease}
.cta:hover{background-size:38% 1px}
figure{margin:0 0 2em}
figure img{display:block;width:100%;height:auto}
figcaption{font-size:14px;color:var(--ink3);margin-top:8px}

/* numbered sections (privacy) */
.numbered{counter-reset:sec}
.numbered h2{counter-increment:sec}
.numbered h2::before{content:counter(sec,decimal-leading-zero);display:inline-block;min-width:2.1em;color:var(--ink3);font-weight:400}

/* definition grid (imprint) */
.facts{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:14px 28px;margin:0 0 2.2em;padding:22px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.facts dt{font-size:14.5px;line-height:1.62;color:var(--ink2)}
.facts dd{margin:0}
@media (max-width:560px){.facts{grid-template-columns:1fr;gap:2px}.facts dd{margin-bottom:14px}}

/* draft placeholders: easy to spot, easy to grep ("TODO") */
.todo{background:none;color:var(--accent);border:1px dashed var(--accent);padding:0 4px;border-radius:2px;font-style:normal}

/* ---------- footer ---------- */
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:18px 32px;padding:clamp(56px,10vh,110px) var(--edge) max(28px,6vh)}
.foot small{font-size:13.5px;color:var(--ink3)}
.legal{display:flex;gap:22px;font-size:13.5px;line-height:1}
.legal a{color:var(--ink2);text-decoration:none;padding:4px 0;border-bottom:1px solid transparent;transition:border-color .3s ease,color .3s ease}
.legal a:hover,.legal a[aria-current="page"]{color:var(--ink);border-bottom-color:currentColor}

a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
::selection{background:color-mix(in srgb,var(--accent) 28%,transparent)}
@media (prefers-reduced-motion: reduce){*{transition:none!important}}
@media print{body{background:#fff;color:#000}.margin,.legal{display:none}.page{display:block}}

/* Long contact and licence links must remain readable on narrow screens. */
.prose a{overflow-wrap:anywhere}
