/*
Theme Name: Resett
Theme URI: https://resett.nl/
Author: Resett
Description: Een rustig, responsief WordPress-thema voor Resett.
Version: 1.9.0
Text Domain: resett
Requires at least: 6.0
Requires PHP: 7.4
*/

:root { --ink:#15171b; --muted:#5c6068; --night:#090c12; --red:#d7192d; --line:#dededc; --paper:#fff; --soft:#f6f6f4; --max:1320px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; line-height:1.65; }
img { max-width:100%; height:auto; }
a { color:inherit; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.screen-reader-text:focus { clip:auto; width:auto; height:auto; margin:8px; padding:12px; background:#fff; z-index:9999; }
.site-header { background:#fff; border-bottom:1px solid var(--line); }
.header-inner { position:relative; max-width:var(--max); min-height:232px; margin:auto; padding:20px 36px; display:flex; justify-content:space-between; align-items:center; gap:28px; }
.header-art { display:block; flex:0 0 190px; }
.hope-image { display:block; width:auto; height:184px; max-height:none; object-fit:contain; }
.brand { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:min(430px,42vw); }
.brand img { display:block; width:min(100%,430px); }
.header-quote { flex:0 0 280px; margin:0; font-family:Arial,Helvetica,sans-serif; font-size:1.08rem; line-height:1.6; font-style:normal; font-weight:700; text-align:right; color:#26272b; }
.main-nav { background:var(--night); color:#fff; }
.nav-inner { max-width:var(--max); margin:auto; display:flex; justify-content:center; align-items:center; min-height:48px; padding:0 20px; }
.menu { list-style:none; display:flex; justify-content:center; flex-wrap:wrap; gap:8px 34px; padding:0; margin:0; }
.menu a { display:block; padding:11px 0; color:#fff; text-decoration:none; font-size:.78rem; letter-spacing:.15em; font-weight:700; }
.menu .current-menu-item a,.menu a:hover,.menu a:focus { color:#ef3340; }
.menu-toggle { display:none; background:none; color:#fff; border:1px solid #777; padding:7px 12px; font:inherit; }
.page-hero { height:clamp(520px,37vw,600px); min-height:0; display:flex; align-items:flex-start; background-color:#020308; background-image:linear-gradient(90deg,rgba(0,0,0,.48),rgba(0,0,0,.06)),url('assets/images/earth-hero.jpg'); background-size:cover; background-position:center; color:#fff; overflow:hidden; }
.hero-inner { width:100%; max-width:var(--max); margin:0 auto; padding:64px 36px 0; }
.hero-title { margin:0; max-width:760px; font-size:clamp(2.4rem,6vw,4.5rem); line-height:.95; letter-spacing:.12em; font-weight:700; text-shadow:0 2px 20px #000; }
.page-intro { background:var(--night); color:#fff; padding:14px 22px; text-align:center; }
.page-intro p { margin:0; font-family:Georgia,serif; font-size:clamp(1rem,2vw,1.25rem); line-height:1.4; letter-spacing:.035em; }
.content-wrap { max-width:900px; margin:auto; padding:64px 28px 80px; min-height:520px; }
.content-wrap.wide { max-width:var(--max); }
.home-insights { background:#fff; }
.home-insights .content-wrap { padding-top:58px; }
.home-insight-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px 64px; }
.home-insight-card { min-width:0; min-height:272px; border:1px solid var(--line); background:var(--soft); }
.home-insight-link,.home-insight-summary { position:relative; display:block; min-height:270px; padding:98px 30px 30px; text-decoration:none; }
.home-insight-summary { cursor:pointer; list-style:none; }
.home-insight-summary::-webkit-details-marker { display:none; }
.home-insight-link::before,.home-insight-summary::before { content:""; position:absolute; top:34px; left:30px; width:42px; height:42px; border-radius:50%; background:#e51f2a; }
.home-insight-card h3 { margin:0 0 14px; font-size:1.28rem; line-height:1.3; font-weight:400; }
.home-insight-link:hover h3,.home-insight-link:focus h3,.home-insight-summary:hover h3,.home-insight-summary:focus h3 { color:var(--red); }
.home-insight-link:focus-visible,.home-insight-summary:focus-visible { outline:3px solid var(--red); outline-offset:3px; }
.home-insight-story { margin:0 30px 30px; padding:22px 0 0; border-top:1px solid var(--line); color:#4f5258; }
.home-insight-story p { margin:0; }
.home-insight-card[open] .home-insight-summary { min-height:0; }
.home-insight-card p { margin:0; color:#666970; font-size:.94rem; }
.entry-content > *:first-child { margin-top:0; }
.entry-content h2,.entry-content h3 { line-height:1.25; }
.entry-content a { color:#b71325; }
.empty-content { text-align:center; color:var(--muted); }
.blog-section-title { margin:0 0 20px; font-size:clamp(1.8rem,3vw,2.35rem); line-height:1.2; }
.category-filter { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:10px; margin:0 0 54px; }
.category-filter a { border:0; border-radius:999px; padding:9px 18px; background:#eeeeec; text-decoration:none; font-size:.9rem; }
.category-filter a:hover,.category-filter a:focus,.category-filter .active { background:var(--red); color:#fff; border-color:var(--red); }
.post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:34px 64px; margin:0; padding:0; }
.post-card { position:relative; min-width:0; min-height:330px; border:1px solid var(--line); background:var(--soft); padding:108px 30px 30px; }
.post-card::before { content:""; position:absolute; top:38px; left:30px; width:42px; height:42px; border-radius:50%; background:#e51f2a; }
.post-card-thumb { display:none; }
.post-card-thumb img { width:100%; height:100%; object-fit:cover; transition:transform .25s; }
.post-card-thumb:hover img { transform:scale(1.025); }
.post-card-body { padding:0; }
.post-card-meta { margin:0 0 16px; color:#777; font-size:.9rem; }
.post-card-title { margin:0 0 18px; font-size:1.28rem; line-height:1.3; font-weight:400; overflow-wrap:anywhere; }
.post-card-title a { text-decoration:none; }
.post-card-title a:hover { color:var(--red); }
.post-card-excerpt { margin:0; color:#666970; font-size:.94rem; }
.post-card-excerpt p { margin:0 0 22px; }
.post-card-readmore { color:var(--red); text-decoration:none; font-size:.92rem; }
.post-card-readmore:hover,.post-card-readmore:focus { text-decoration:underline; }
.pagination { margin-top:46px; }
.pagination .nav-links { display:flex; justify-content:center; flex-wrap:wrap; gap:7px; }
.pagination .page-numbers { min-width:38px; padding:6px 11px; border:1px solid #ccc; text-align:center; text-decoration:none; }
.pagination .current { background:var(--night); color:#fff; border-color:var(--night); }
.single-meta { color:var(--muted); }
.post-footnote { margin:48px 0 0; padding:18px 0 0; border-top:1px solid var(--line); color:#32353b; font-family:Georgia,serif; font-size:1.05rem; font-style:italic; line-height:1.55; }
.site-footer { background:var(--night); color:#d9dadd; }
.footer-inner { max-width:var(--max); margin:auto; padding:21px 28px; display:grid; grid-template-columns:1fr 1.4fr auto; align-items:center; gap:22px; }
.footer-brand strong { display:block; color:#fff; font-size:1.25rem; line-height:1.25; letter-spacing:.08em; }
.footer-brand span { font-size:.82rem; line-height:1.3; }
.footer-note { margin:0; font-family:Georgia,serif; font-size:.9rem; line-height:1.4; text-align:center; }
.footer-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:5px 16px; list-style:none; margin:0; padding:0; font-size:.8rem; line-height:1.35; }
.footer-links a { text-decoration:none; }
.footer-links a:hover { color:#ef3340; }
@media (max-width:850px) { .header-inner { min-height:230px; align-items:flex-start; padding-top:22px; } .header-art { flex-basis:100px; } .brand { left:50%; top:66px; width:min(430px,58vw); } .header-quote { position:absolute; left:50%; bottom:18px; transform:translateX(-50%); width:calc(100% - 36px); text-align:center; font-size:.95rem; line-height:1.35; } .hope-image { width:auto; height:112px; } .page-hero { height:430px; } .hero-inner { padding:44px 28px 0; } .content-wrap { min-height:440px; } .home-insight-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; } .post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; } .post-card { min-height:300px; } .footer-inner { grid-template-columns:1fr; text-align:center; } .footer-links { justify-content:center; } }
@media (max-width:560px) { .header-inner { min-height:208px; padding:14px 18px; gap:14px; } .header-art { flex-basis:70px; } .brand { left:auto; right:18px; top:31px; transform:none; width:min(235px,56vw); } .header-quote { bottom:14px; } .hope-image { width:auto; height:92px; } .menu-toggle { display:block; margin:8px auto; } .nav-inner { display:block; } .menu { display:none; padding:8px 0 14px; flex-direction:column; align-items:center; gap:0; } .menu.is-open { display:flex; } .page-hero { height:320px; background-position:58% center; } .hero-inner { padding:34px 22px 0; } .hero-title { font-size:clamp(2rem,11vw,3rem); max-width:90%; } .content-wrap { min-height:360px; padding:44px 20px 60px; } .home-insight-grid { grid-template-columns:1fr; } .home-insight-card { min-height:0; } .category-filter { margin-bottom:36px; } .post-grid { grid-template-columns:1fr; } .post-card { min-height:0; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }
