/* Overrides for WordPress dynamic presentation. */
.reboot-header .menu-toggle{display:none}.reboot-header nav{display:flex;align-items:center;gap:20px}
.reboot-header nav ul{display:flex;list-style:none;gap:20px;padding:0;margin:0}
.reboot-header nav a{text-decoration:none}
.reboot-footer{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px;padding:60px 0}
.reboot-footer>div:not(.footer-bottom){display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.reboot-footer .footer-bottom{grid-column:1 / -1;border-top:1px solid var(--line);padding-top:25px;display:flex;justify-content:space-between}
.hero-copy h1{font-size:clamp(54px,5.6vw,94px);line-height:1.04;letter-spacing:-.04em}
.hero-copy h1 em{display:block;font-size:clamp(55px,5.85vw,98px);font-style:normal;color:var(--accent);line-height:1.07}
.hero-copy .actions{margin-top:36px}.hero-release{font-size:15px;margin-top:20px}
.cover img,.hero-cover img{width:100%;aspect-ratio:1;object-fit:cover;height:auto}
.episode-fallback{display:grid;place-items:center;aspect-ratio:1;background:var(--panel);font-family:var(--font-display);font-size:36px}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.tags a{display:inline-block;padding:8px 12px;border:1px solid var(--line);text-decoration:none;color:inherit;font-size:13px}
.tags a:hover,.tags a:focus-visible{border-color:var(--accent);color:var(--accent)}
.breadcrumb{font-size:12px;margin-bottom:25px}.breadcrumb-current{color:var(--accent)}
.reboot-single .reading{max-width:760px}.presenter-headshot{aspect-ratio:1;object-fit:cover;width:100%;height:auto}.presenter-role{color:var(--accent);font-size:12px}
.topic-heading{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
@media(max-width:800px){.reboot-header .menu-toggle{display:block}.reboot-header nav{display:none}.reboot-header nav.open{display:flex;position:absolute;z-index:20;left:0;right:0;top:78px;flex-direction:column;background:var(--bg);padding:25px}.reboot-header nav ul{flex-direction:column}.reboot-footer{grid-template-columns:1fr 1fr}.reboot-footer>div:first-child{grid-column:1/-1}.hero-copy h1 em{font-size:clamp(38px,8vw,65px)}}
@media(max-width:480px){.reboot-footer{grid-template-columns:1fr}.reboot-footer>div:first-child{grid-column:auto}}

/* v0.2: accessible image links, guest cards and responsive profile photos */
.reboot-header .menu-toggle{cursor:pointer}
.reboot-header nav a:focus-visible,.guest-cover-link:focus-visible,.tags a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.reboot-footer .footer-bottom{flex-wrap:wrap;gap:14px}
.hero-copy h1 em{white-space:nowrap}
.hero-copy .actions{margin-top:44px}
.reboot-single .detail-art img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.presenter-profile-photo{width:100%;max-width:520px;aspect-ratio:1}
.presenter-profile-photo img{aspect-ratio:1;height:100%;width:100%;object-fit:cover}
.guest-grid .guest{padding:0;display:flex;flex-direction:column;overflow:hidden}
.guest-grid .guest .guest-portrait{display:block;aspect-ratio:16/10;overflow:hidden;width:100%;border-bottom:1px solid var(--line)}
.guest-grid .guest .guest-portrait img{display:block;width:100%;height:100%;object-fit:cover}
.guest-grid .guest .guest-cover-link:hover img{transform:scale(1.025)}
.guest-grid .guest .guest-portrait img{transition:transform .2s ease}
.guest-grid .guest h2,.guest-grid .guest .guest-description,.guest-grid .guest>p{margin-left:28px;margin-right:28px}
.guest-grid .guest h2{margin-top:24px}
.guest-grid .guest>p:last-child{margin-top:auto;padding-bottom:24px}
.guest-preparation{margin:0 auto 40px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent);padding:28px 32px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.guest-preparation h2{font-size:clamp(22px,2.2vw,32px);margin:0 0 8px}
.guest-preparation p{margin:0}
.guest-preparation a{color:var(--accent);font-weight:700;white-space:nowrap}
@media(max-width:1050px){.hero-copy h1 em{white-space:normal}}
@media(max-width:800px){.guest-preparation{display:block}.guest-preparation a{display:inline-block;margin-top:18px}}
@media(prefers-reduced-motion:reduce){.guest-grid .guest .guest-portrait img{transition:none}}


/* v0.2.5: Vercel-inspired WordPress episode detail; no PowerPress modifications */
.reboot-episode-page .reboot-episode-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:clamp(32px,5vw,78px);align-items:center;padding-top:58px;padding-bottom:68px}
.reboot-episode-page .detail-art{min-width:0;max-width:none}
.reboot-episode-page .detail-art img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.reboot-episode-page .episode-context{display:block;color:var(--accent);font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:.06em;margin-bottom:18px}
.reboot-episode-page .reboot-episode-intro h1{font-size:clamp(35px,3.5vw,56px);line-height:1.12;letter-spacing:-.03em;margin:0 0 20px;overflow-wrap:break-word}
.reboot-episode-page .episode-lead{font-size:17px;line-height:1.65;margin:0 0 28px;color:var(--body-text)}
.reboot-episode-page .reboot-episode-listen{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.reboot-episode-page .reboot-episode-listen .button{white-space:nowrap}
.reboot-episode-page .reboot-episode-listen .button img{width:24px;height:24px;object-fit:contain}
.reboot-episode-page .reboot-episode-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr);gap:clamp(38px,6vw,90px);align-items:start;border-top:1px solid var(--line);padding-top:58px;padding-bottom:90px}
.reboot-episode-page .reboot-episode-aside{min-width:0}
.reboot-episode-page .content-label{display:block;color:var(--muted);font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;margin:0 0 16px}
.reboot-episode-page .episode-presenters{display:grid;gap:10px;margin:0 0 35px}
.reboot-episode-page .presenter-link{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:var(--panel);padding:11px 13px;color:inherit;text-decoration:none}
.reboot-episode-page .presenter-link:hover,.reboot-episode-page .presenter-link:focus-visible{border-color:var(--accent)}
.reboot-episode-page .presenter-link img{display:block;flex:none;width:56px;height:56px;aspect-ratio:1;object-fit:cover;border-radius:50%}
.reboot-episode-page .presenter-link>span:not(.reboot-episode-arrow){font-weight:700;font-size:14px;line-height:1.4}
.reboot-episode-page .presenter-link small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}
.reboot-episode-page .reboot-episode-arrow{color:var(--accent);margin-left:auto}
.reboot-episode-page .tags{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px}
.reboot-episode-page .tags a{font-size:12px;padding:7px 10px;line-height:1.3}
.reboot-episode-page .reboot-episode-reading{min-width:0;max-width:760px}
.reboot-episode-page .reboot-episode-reading h2:first-child{font-size:clamp(28px,2.4vw,34px);line-height:1.15;letter-spacing:-.02em;margin:0 0 25px}
.reboot-episode-page .reboot-episode-reading p{font-size:16px;line-height:1.8;margin:0 0 20px}
.reboot-episode-page .reboot-episode-reading img{max-width:100%;height:auto}
.reboot-episode-page .reboot-episode-reading iframe{max-width:100%}
.reboot-episode-page .reboot-episode-reading .wp-block-embed{max-width:100%}
@media(max-width:800px){
 .reboot-episode-page .reboot-episode-hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:45px;gap:28px}
 .reboot-episode-page .detail-art{max-width:460px}
 .reboot-episode-page .reboot-episode-content{grid-template-columns:1fr;padding-top:40px;padding-bottom:56px;gap:35px}
 .reboot-episode-page .reboot-episode-intro h1{font-size:clamp(34px,6vw,46px)}
}
@media(max-width:480px){.reboot-episode-page .reboot-episode-listen .button{width:100%}.reboot-episode-page .episode-lead{font-size:16px}}

/* Reboot v0.2.7: legacy episode presentation */
.reboot-episode-page .reboot-extracted-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px}
.reboot-episode-page .reboot-extracted-images figure{margin:0;background:var(--panel);overflow:hidden;aspect-ratio:1}
.reboot-episode-page .reboot-extracted-images img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;display:block}
.reboot-episode-page .reboot-ethics-box{margin-top:36px;padding:25px 27px;background:var(--panel);border-left:2px solid var(--accent);font-size:13px;line-height:1.7}
.reboot-episode-page .reboot-ethics-box p{font-size:13px;line-height:1.75;margin:0 0 20px;max-width:none}
.reboot-episode-page .reboot-ethics-box a{color:var(--accent);font-size:13px;text-decoration:underline;text-underline-offset:3px}
.reboot-episode-page .reboot-ethics-box a:hover{text-decoration:none}
.reboot-episode-page .reboot-episode-reading iframe,.reboot-episode-page .reboot-episode-reading .powerpress_player{display:none}
@media(max-width:650px){.reboot-episode-page .reboot-extracted-images{gap:10px}.reboot-episode-page .reboot-ethics-box{padding:20px}}

/* Header parity with Vercel. Scoped to the WordPress header, not the content. */
.reboot-header .nav{height:92px;display:flex;align-items:center;gap:clamp(20px,2.4vw,38px)}
.reboot-header .wordmark{flex-shrink:0;margin-right:0}
.reboot-header #navigation{flex:1;min-width:0;justify-content:center;gap:22px}
.reboot-header #navigation ul{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:22px;list-style:none;margin:0;padding:0}
.reboot-header #navigation a{font-size:12px;font-weight:500;white-space:nowrap;color:var(--nav-text);text-decoration:none}
.reboot-header #navigation a:hover,.reboot-header #navigation .current-menu-item>a,.reboot-header #navigation a[aria-current="page"]{color:var(--accent)}
.reboot-header .header-actions{display:flex;align-items:center;gap:22px;flex-shrink:0}
.reboot-header .nav-spotify{font-size:12px;gap:9px;font-weight:600;color:var(--green);text-decoration:none;display:inline-flex;align-items:center}
.reboot-header .nav-spotify .spotify-brand{height:21px;width:21px;position:relative;display:inline-flex}
.reboot-header .nav-spotify .spotify-brand img{height:21px;width:21px;position:absolute;inset:0}
.reboot-header .nav-spotify .spotify-black{display:none}
:root[data-theme="light"] .reboot-header .nav-spotify .spotify-white{display:none}
:root[data-theme="light"] .reboot-header .nav-spotify .spotify-black{display:block}
.reboot-header .theme-control{position:relative}
.reboot-header .theme-trigger{font-size:12px;min-height:42px}
.reboot-header .theme-trigger .theme-moon{height:16px;width:16px;flex-shrink:0}
.reboot-header .theme-options{grid-template-columns:repeat(3,minmax(0,1fr))}
.reboot-header .theme-option{min-height:60px;justify-content:center}
.reboot-header .menu-toggle{margin-left:0;flex-shrink:0}
@media(max-width:1150px){
 .reboot-header .nav{gap:18px}
 .reboot-header #navigation,.reboot-header #navigation ul{gap:14px}
 .reboot-header .header-actions{gap:12px}
 .reboot-header .nav-spotify{font-size:12px}
}
@media(max-width:920px){
 .reboot-header .nav{height:80px;gap:12px}
 .reboot-header .header-actions{margin-left:auto}
 .reboot-header #navigation{display:none;position:absolute;top:80px;left:0;right:0;z-index:25;padding:22px;background:var(--panel);border-bottom:1px solid var(--line);box-shadow:0 14px 28px #0003}
 .reboot-header #navigation.open{display:flex;flex-direction:column;align-items:stretch}
 .reboot-header #navigation ul{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0}
 .reboot-header #navigation a{display:block;padding:13px 10px}
 .reboot-header .menu-toggle{display:block}
}
@media(max-width:560px){
 .reboot-header .header-actions{gap:9px}
 .reboot-header .nav-spotify>span:last-child{display:none}
 .reboot-header .theme-trigger{padding:9px;min-height:38px}
 .reboot-header .theme-trigger>span{display:none}
 .reboot-header .wordmark{width:105px;height:34px}
 .reboot-header .nav{gap:9px}
}

/* Front page: meet the hosts */
.reboot-home-redaksjonen{scroll-margin-top:90px}
.reboot-home-redaksjonen .reboot-about-copy h2{line-height:1.12}
.reboot-home-redaksjonen .portrait-grid a{color:var(--paper);text-decoration:none}
.reboot-home-redaksjonen .portrait-grid a:hover span,.reboot-home-redaksjonen .portrait-grid a:focus-visible span{color:var(--accent)}
.reboot-home-redaksjonen .portrait-grid a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:800px){.reboot-home-redaksjonen{gap:36px}.reboot-home-redaksjonen .portrait-grid{gap:10px}}
@media(max-width:450px){.reboot-home-redaksjonen .portrait-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px}.reboot-home-redaksjonen .portrait-grid a:nth-child(even){transform:none}}

/* Reboot Editorial v0.2.16: searchable full episode archive */
.reboot-episode-archive .page-intro{padding-bottom:50px}
.reboot-episode-archive .page-intro>p{max-width:670px}
.reboot-archive-search{margin-bottom:12px}
.reboot-archive-search>label{display:block;font-family:var(--font-display);font-size:11px;letter-spacing:1.2px;font-weight:600;color:var(--muted)}
.reboot-search-row{display:flex;gap:12px;align-items:stretch;margin-top:12px}
.reboot-archive-search .reboot-search-row input{margin:0;min-width:0;flex:1}
.reboot-search-row button{background:var(--accent);color:var(--bg);border:0;border-radius:3px;font-size:14px;font-weight:700;padding:12px 25px;cursor:pointer}
.reboot-search-row button:hover{filter:brightness(1.08)}
.reboot-episode-archive .reboot-results{margin:14px 0 35px}
.reboot-episode-archive .episode-card .cover img{aspect-ratio:1/1;object-fit:cover}
.reboot-archive-pagination{display:block;margin:48px 0 0}
.reboot-archive-pagination ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:0;margin:0}
.reboot-archive-pagination li{display:block}
.reboot-archive-pagination .page-numbers{display:inline-flex;padding:10px 15px;border:1px solid var(--line);color:var(--paper);text-decoration:none}
.reboot-archive-pagination .page-numbers.current,.reboot-archive-pagination a:hover{border-color:var(--accent);color:var(--accent)}
@media(max-width:450px){.reboot-search-row{gap:8px}.reboot-search-row button{padding:10px 15px}}

/* Reboot v0.2.18: WordPress guest listing matches the Vercel editorial cards. */
.guest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:75px}
.guest-grid .guest{padding:0;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--panel);border:1px solid var(--line)}
.guest-grid .guest .guest-portrait{display:block;width:100%;aspect-ratio:16/10;overflow:hidden;flex:none;margin:0;border-bottom:1px solid var(--line)}
.guest-grid .guest .guest-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .2s ease}
.guest-grid .guest .guest-cover-link:hover img{transform:scale(1.025)}
.guest-grid .guest h2{margin:28px 32px 16px;font-size:clamp(24px,2.4vw,30px);line-height:1.18}
.guest-grid .guest .guest-description{margin:0 32px;max-width:none}
.guest-grid .guest .guest-description p{font-size:15px;line-height:1.7;margin:0}
.guest-grid .guest .guest-description em{color:var(--muted);font-size:14px}
.guest-grid .guest .guest-action{margin:0 32px;padding:24px 0 30px;margin-top:auto}
.guest-grid .guest .guest-action a{font-size:13px;color:var(--green);text-decoration:none;border-bottom:1px solid var(--green);padding-bottom:3px}
.guest-grid .guest .guest-action a:hover{text-decoration:none;color:var(--accent);border-color:var(--accent)}
.guest-grid .guest .guest-cover-link:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}
@media(max-width:800px){.guest-grid{grid-template-columns:1fr;gap:18px;margin-bottom:50px}.guest-grid .guest h2{margin-left:24px;margin-right:24px}.guest-grid .guest .guest-description{margin-left:24px;margin-right:24px}.guest-grid .guest .guest-action{margin-left:24px;margin-right:24px}}
@media(prefers-reduced-motion:reduce){.guest-grid .guest .guest-portrait img{transition:none}}

/* v0.2.19: Vercel-style editorial team page */
.reboot-editors-page .page-intro{padding-bottom:58px}
.reboot-editors-page .page-intro h1{max-width:none}
.reboot-editors-page .people{padding-bottom:38px}
.reboot-editors-page .person{grid-template-columns:minmax(0,.85fr) minmax(0,1.6fr);align-items:start;gap:clamp(30px,5vw,70px)}
.reboot-editors-page .person-picture a{display:block;aspect-ratio:1;overflow:hidden}
.reboot-editors-page .person-picture img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover;object-position:center;transition:transform .18s ease}
.reboot-editors-page .person-picture a:hover img{transform:scale(1.025)}
.reboot-editors-page .person-role{font:600 12px/1.5 var(--font-display);letter-spacing:.04em;color:var(--accent);margin:0 0 14px}
.reboot-editors-page .person-bio h2{font-size:clamp(33px,3.3vw,46px);margin:0 0 20px}
.reboot-editors-page .person-bio p:not(.person-role){font-size:16px;line-height:1.8;margin:0 0 20px;max-width:690px}
.reboot-editors-page .person-bio a.person-more{font-size:13px;font-weight:700;display:inline-flex;align-items:center;gap:6px;color:var(--green);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;margin-top:7px}
.reboot-editors-page .person-bio a.person-more:hover{color:var(--accent)}
.reboot-editors-page .former{padding-bottom:82px}
.reboot-editors-page .former h2{font-size:clamp(28px,3vw,40px)}
.reboot-editors-page .former h3{font-size:24px;margin:26px 0 12px}
.reboot-editors-page .former .reboot-years{font-size:.65em;color:var(--muted);letter-spacing:0}
.reboot-editors-page .former p{font-size:15px;line-height:1.8}
.reboot-editors-page .former>a{display:inline-block;color:var(--green);font-size:13px;border-bottom:1px solid currentColor;padding-bottom:5px}
@media(max-width:800px){.reboot-editors-page .person{grid-template-columns:1fr;gap:26px}.reboot-editors-page .person-picture{max-width:420px}.reboot-editors-page .page-intro{padding-bottom:38px}}
@media(prefers-reduced-motion:reduce){.reboot-editors-page .person-picture img{transition:none}}

/* v0.2.20: presenter profiles aligned to Vercel design */
.reboot-profile-page .presenter-profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:center;gap:clamp(35px,5vw,70px);padding:60px 0 74px}
.reboot-profile-page .presenter-headshot{display:block;width:100%;max-width:none;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center}
.reboot-profile-page .presenter-profile-copy{min-width:0}
.reboot-profile-page .presenter-profile-copy .breadcrumb{margin-bottom:32px}
.reboot-profile-page .presenter-profile-copy .presenter-role{display:block;color:var(--accent);font:600 11px/1.5 var(--font-display);letter-spacing:.09em;margin:0 0 8px}
.reboot-profile-page .presenter-profile-copy h1{margin:0 0 26px;line-height:1.05;font-size:clamp(36px,4vw,60px)}
.reboot-profile-page .presenter-profile-copy p{font-size:17px;line-height:1.75;margin:0 0 22px}
.reboot-profile-page .reboot-profile-scroll{display:inline-block;font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--muted);padding-bottom:7px;color:var(--paper)}
.reboot-profile-page .reboot-profile-scroll:hover{color:var(--accent);border-color:var(--accent)}
.reboot-profile-page .presenter-archive{padding:55px 0 78px;border-top:1px solid var(--line)}
.reboot-profile-page .presenter-archive h2{font-size:clamp(28px,3vw,42px);margin:0 0 28px}
.reboot-profile-page .presenter-empty{max-width:62ch;line-height:1.7}
@media(max-width:800px){.reboot-profile-page .presenter-profile{grid-template-columns:1fr;gap:28px;padding:34px 0 48px}.reboot-profile-page .presenter-headshot{max-width:420px}.reboot-profile-page .presenter-profile-copy p{font-size:16px}.reboot-profile-page .presenter-archive{padding:40px 0 55px}}

/* Home archive progressive disclosure */
.reboot-load-more-wrap{text-align:center;margin:44px auto 0}
.reboot-load-more{display:inline-flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;padding:14px 27px;background:transparent;color:var(--paper);border:1px solid var(--line);font-family:var(--font-display);font-size:14px;font-weight:700;transition:border-color .2s,color .2s}
.reboot-load-more:hover,.reboot-load-more:focus-visible{border-color:var(--accent);color:var(--accent)}
.reboot-load-more:disabled{opacity:.6;cursor:wait}
.reboot-load-more-status{font-size:12px;color:var(--muted);margin:12px auto 0;min-height:1.3em}

/* v0.2.23: ethics page shares the two-column Vercel editorial layout. */
.reboot-ethics-page .page-intro{padding-top:56px;padding-bottom:50px}
.reboot-ethics-page .page-intro h1{font-size:clamp(43px,5.2vw,72px);line-height:1.08;letter-spacing:-.035em;margin:16px 0 22px}
.reboot-ethics-page .page-intro>p{font-size:18px;line-height:1.7;max-width:740px}
.reboot-ethics-page .reboot-ethics-content{grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:clamp(36px,6vw,95px);padding-top:0;padding-bottom:80px;align-items:start}
.reboot-ethics-page .reboot-ethics-content aside{min-width:0;position:sticky;top:34px}
.reboot-ethics-page .reboot-ethics-content aside>p{font-size:clamp(19px,2vw,23px);letter-spacing:-.035em;line-height:1.5;margin:0 0 24px}
.reboot-ethics-page .reboot-ethics-content aside>a{font-size:13px;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.reboot-ethics-page .reboot-ethics-articles{min-width:0}
.reboot-ethics-page .reboot-ethics-articles article{border-top:1px solid var(--line);padding:27px 0 32px}
.reboot-ethics-page .reboot-ethics-articles article h2{margin:0 0 13px;font-size:clamp(23px,2.3vw,28px);letter-spacing:-.025em;line-height:1.25}
.reboot-ethics-page .reboot-ethics-articles article p{font-size:15px;line-height:1.82;margin:12px 0 15px}
.reboot-ethics-page .reboot-ethics-articles article a{color:var(--accent);text-decoration:underline}
.reboot-ethics-page .reboot-ethics-follow{margin-bottom:64px}
@media(max-width:800px){.reboot-ethics-page .page-intro{padding-top:35px;padding-bottom:35px}.reboot-ethics-page .reboot-ethics-content{grid-template-columns:1fr;gap:36px;padding-bottom:55px}.reboot-ethics-page .reboot-ethics-content aside{position:static}.reboot-ethics-page .breadcrumb{display:block}}

/* Listen and find: Vercel-aligned landing page. Scoped to prevent regressions elsewhere. */
.reboot-listen-page .platforms .platform{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.reboot-listen-page .platform>.reboot-platform-logo{width:40px;height:40px;object-fit:contain;margin-bottom:25px}
.reboot-listen-page .platform>.big-icon{margin-bottom:25px}
.reboot-listen-page .platform>.eyebrow{display:block;margin-bottom:12px;letter-spacing:.1em;color:var(--muted);font-size:10px}
.reboot-listen-page .platform h2{margin:0 0 14px}
.reboot-listen-page .platform p{margin:0 0 25px;flex:1}
.reboot-listen-page .platform .button{max-width:100%;margin-top:auto;gap:10px}
.reboot-listen-page .platform .button img{height:24px;width:24px;object-fit:contain}
.reboot-listen-page .platform .rss-address{margin-top:16px;overflow-wrap:anywhere}
.reboot-listen-page .platform .copy-status{display:block;min-height:1.6em;margin-top:10px}
.reboot-listen-page .reboot-listen-about{align-items:start}
.reboot-listen-page .reboot-listen-about h2{margin:0}
@media(max-width:800px){.reboot-listen-page .platforms{grid-template-columns:1fr}.reboot-listen-page .platform{padding:28px}.reboot-listen-page .reboot-listen-about{grid-template-columns:1fr;gap:28px}}

/* v0.2.26: Recording preparation page. Match the Vercel page using the CSS file actually enqueued by WordPress. */
.reboot-preparation-page .page-intro{padding-top:50px;padding-bottom:60px}
.reboot-preparation-page .reboot-preparation-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(40px,6.5vw,90px);align-items:start;padding-top:20px;padding-bottom:85px}
.reboot-preparation-page .reboot-preparation-aside{position:sticky;top:35px;align-self:start;min-width:0}
.reboot-preparation-page .reboot-preparation-aside>.eyebrow{display:block;color:var(--accent);margin:0 0 22px}
.reboot-preparation-page .reboot-preparation-aside h2{font-size:clamp(32px,3.4vw,44px);line-height:1.12;letter-spacing:-.035em;margin:0 0 22px}
.reboot-preparation-page .reboot-preparation-aside p{font-size:16px;line-height:1.65;margin:0 0 26px;color:var(--body-text)}
.reboot-preparation-page .reboot-preparation-aside .text-link{display:inline-block;color:var(--accent);font-size:13px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px;font-weight:600}
.reboot-preparation-page .reboot-preparation-steps{min-width:0}
.reboot-preparation-page .reboot-preparation-step{display:flex;align-items:flex-start;gap:30px;border-top:1px solid var(--line);padding:30px 0}
.reboot-preparation-page .reboot-preparation-step>.step-number{font-family:var(--font-display);font-size:32px;line-height:1.2;font-weight:600;color:var(--accent);flex:0 0 36px;padding:0}
.reboot-preparation-page .reboot-preparation-step-content{min-width:0;flex:1}
.reboot-preparation-page .reboot-preparation-step-content h2{font-family:var(--font-display);font-size:26px;line-height:1.25;letter-spacing:-.8px;margin:0 0 14px}
.reboot-preparation-page .reboot-preparation-step-content p{font-size:15px;line-height:1.8;margin:0 0 14px}
.reboot-preparation-page .reboot-preparation-step-content p:last-child{margin-bottom:0}
.reboot-preparation-page .reboot-preparation-step-content a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.reboot-preparation-page .reboot-preparation-step-content strong{color:var(--paper)}
.reboot-preparation-page .reboot-preparation-follow{margin-bottom:65px}
@media(max-width:800px){
 .reboot-preparation-page .reboot-preparation-layout{grid-template-columns:1fr;gap:32px;padding-bottom:50px}
 .reboot-preparation-page .reboot-preparation-aside{position:static}
 .reboot-preparation-page .reboot-preparation-step{gap:20px}
 .reboot-preparation-page .reboot-preparation-step>.step-number{font-size:29px;flex-basis:32px}
 .reboot-preparation-page .reboot-preparation-step-content h2{font-size:25px}
}
@media(max-width:450px){.reboot-preparation-page .reboot-preparation-step{gap:16px}.reboot-preparation-page .reboot-preparation-step-content h2{font-size:23px}}

/* Reboot Arcade entrance and dedicated Memory page */
.reboot-memory-breadcrumb{padding-top:36px}
.reboot-memory-breadcrumb .breadcrumb{margin:0}
.reboot-memory-page-content .reboot-memory{padding-top:30px}
.reboot-arcade-promo{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent);padding:clamp(25px,4vw,46px);display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:65px;margin-bottom:70px}
.reboot-arcade-kicker{display:block;color:var(--accent);font:700 11px/1.3 var(--font-display);letter-spacing:.11em;margin-bottom:15px}
.reboot-arcade-promo h2{font-family:var(--font-display);font-size:clamp(27px,3.3vw,47px);line-height:1.12;letter-spacing:-.035em;margin:0 0 12px}
.reboot-arcade-promo p{font-size:15px;color:var(--body-text);margin:0}
.reboot-arcade-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;flex-shrink:0;text-decoration:none;background:var(--accent);color:#11141a!important;border:1px solid transparent;padding:17px 24px;font-weight:700;font-size:14px}
.reboot-arcade-button:hover,.reboot-arcade-button:focus-visible{background:var(--paper);color:var(--bg)!important}
@media(max-width:700px){.reboot-arcade-promo{display:block;margin-top:45px;margin-bottom:50px}.reboot-arcade-button{margin-top:24px;width:100%}.reboot-memory-breadcrumb{padding-top:24px}}

/* Reboot Editorial v0.2.29: responsive polish.
 * Applies only to the frontend. No content, feed or PowerPress changes.
 * Layout breakpoints cover 1920, 1440/1366, 1024, tablets and phones.
 */
:root{--reboot-page-max:1560px;--reboot-gutter:clamp(20px,3.125vw,60px)}
html{overflow-x:clip}
body{min-width:320px}
.wrap{max-width:var(--reboot-page-max);width:calc(100% - 2*var(--reboot-gutter));margin-inline:auto}
/* Prevent wide text, images and grid children from forcing overflow. */
.hero>* , .episode-grid>*, .guest-grid>*, .about>*, .platforms>*,
.reboot-episode-hero>*,.presenter-profile>*,.reboot-preparation-layout>*,
.reboot-arcade-promo>*,.reboot-footer>*{min-width:0}
img,video,iframe{max-width:100%}
.reading, .reboot-single, .episode-copy, .presenter-profile-copy{overflow-wrap:break-word}
/* Large desktops: use the available screen without stretching reading text. */
@media(min-width:1600px){
  .reboot-header .nav{min-height:92px}
  .hero{grid-template-columns:minmax(0,1.42fr) minmax(0,1fr);gap:clamp(56px,5vw,92px);padding-block:clamp(64px,5vw,94px)}
  .hero-art{max-width:570px}
  .hero-copy h1{font-size:clamp(66px,4.5vw,85px);line-height:1.045}
  .hero-copy h1 em{font-size:clamp(70px,4.6vw,86px);line-height:1.08;letter-spacing:-.052em}
  .episode-grid{gap:44px 30px}
  .section{padding-block:90px}
  .about{gap:clamp(65px,6vw,105px)}
  .reboot-episode-page .reboot-episode-hero{gap:clamp(55px,5vw,90px)}
  .reboot-episode-page .reading{max-width:780px}
}
/* Standard laptops and desktops: preserve two-column hero, avoid oversized no-wrap text. */
@media(min-width:1101px) and (max-width:1599px){
  .hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(32px,3.5vw,54px)}
  .hero-copy h1{font-size:clamp(52px,4.6vw,72px);line-height:1.05}
  .hero-copy h1 em{font-size:clamp(50px,4.35vw,69px);line-height:1.1;white-space:normal}
  .hero-art{max-width:500px}
  .reboot-header .nav{gap:clamp(12px,2vw,30px)}
  .reboot-header #navigation,.reboot-header #navigation ul{gap:clamp(11px,1.5vw,22px)}
  .reboot-header .header-actions{gap:clamp(10px,1.6vw,20px)}
}
/* 1024 and small laptops: make the image less dominant and headings predictable. */
@media(min-width:921px) and (max-width:1100px){
  .hero{grid-template-columns:minmax(0,1.16fr) minmax(0,1fr);gap:28px;padding-block:55px}
  .hero-copy h1{font-size:clamp(44px,5vw,57px);line-height:1.07}
  .hero-copy h1 em{font-size:clamp(42px,4.4vw,54px);white-space:normal;line-height:1.1}
  .hero-art{max-width:100%}
  .reboot-header .nav{gap:12px}
  .reboot-header #navigation,.reboot-header #navigation ul{gap:12px}
  .reboot-header .header-actions{gap:10px}
  .episode-grid{gap:28px 18px}
  .episode-card h3{font-size:clamp(18px,1.9vw,23px)}
  .about{gap:35px}
  .reboot-home-redaksjonen .portrait-grid{gap:8px}
}
/* Tablet: switch to stacked hero and comfortably sized episode cards. */
@media(min-width:701px) and (max-width:920px){
  .hero{grid-template-columns:1fr;gap:40px;padding-block:46px 62px}
  .hero-art{justify-self:stretch;max-width:750px}
  .hero-copy h1{font-size:clamp(55px,7vw,74px)}
  .hero-copy h1 em{font-size:clamp(53px,7.2vw,76px);white-space:normal}
  .episode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px}
  .section .episode-card:last-child{display:block}
  .about{grid-template-columns:1fr;gap:32px}
  .reboot-home-redaksjonen .portrait-grid{max-width:680px}
  .portrait-grid a:nth-child(even){transform:translateY(12px)}
  .guest-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .reboot-arcade-promo{gap:20px}
}
/* Phones: retain square artwork, readable text and touch-friendly controls. */
@media(max-width:700px){
  .wrap{width:calc(100% - 2*var(--reboot-gutter))}
  .hero{grid-template-columns:1fr;gap:34px;padding-block:34px 48px}
  .hero-copy h1{font-size:clamp(43px,9vw,60px);line-height:1.08}
  .hero-copy h1 em{font-size:clamp(40px,8.6vw,58px);line-height:1.1;white-space:normal}
  .hero-copy .actions{margin-top:28px}
  .hero-art{max-width:100%;justify-self:stretch}
  .hero-cover img,.cover img{aspect-ratio:1;object-fit:cover}
  .topic-strip .wrap{overflow-x:auto;scrollbar-width:thin;justify-content:flex-start;gap:22px}
  .section{padding-block:48px}
  .section-head{align-items:start;flex-wrap:wrap;gap:18px}
  .section-head h2{font-size:clamp(29px,7vw,38px)}
  .episode-grid{grid-template-columns:1fr;gap:34px}
  .section .episode-card:last-child{display:block}
  .episode-card h3{max-width:100%;font-size:clamp(21px,5.3vw,25px)}
  .about{grid-template-columns:1fr;gap:34px;padding-block:52px}
  .portrait-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .portrait-grid a:nth-child(even){transform:none}
  .reboot-home-redaksjonen .portrait-grid{max-width:560px}
  .follow{padding:26px;gap:25px}
  .follow .actions{max-width:none;width:100%}
  .follow .actions .button{max-width:100%;white-space:normal}
  .reboot-arcade-promo{display:block;padding:26px;margin-block:38px 48px}
  .reboot-arcade-button{margin-top:22px;width:100%;min-height:48px}
  .guest-grid{grid-template-columns:1fr;gap:20px}
  .reboot-episode-page .reboot-episode-hero,.reboot-profile-page .presenter-profile{grid-template-columns:1fr}
  .reboot-header .nav{min-height:76px}
  .reboot-footer,.reboot-footer .footer-bottom{gap:18px}
}
@media(max-width:420px){
  .hero-copy h1{font-size:clamp(40px,10vw,48px)}
  .hero-copy h1 em{font-size:clamp(37px,9vw,44px)}
  .hero-copy .actions{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-copy .actions .button{width:100%;min-height:46px}
  .hero-art{padding:14px}
  .reboot-header .nav{gap:9px}
  .reboot-header .wordmark{width:112px}
  .reboot-footer{grid-template-columns:1fr}
  .reboot-footer>div:first-child{grid-column:auto}
}
/* Extra-narrow phones: prevent header tools from forcing page overflow. */
@media(max-width:359px){
  .reboot-header .nav{gap:6px}
  .reboot-header .wordmark{width:94px;min-width:0}
  .reboot-header .header-actions{gap:6px;min-width:0;margin-left:auto}
  .reboot-header .nav-spotify{display:none}
  .reboot-header .theme-trigger{padding:8px}
  .reboot-header .menu-toggle{padding:8px}
}

/* v0.2.30: supplied JR Korpa image, exclusively behind the home hero.
   Full-bleed background and a layered dark scrim preserve text legibility. */
body.home .hero.wrap,
body.blog .hero.wrap { position:relative; isolation:isolate; }
body.home .hero.wrap::before,
body.blog .hero.wrap::before {
  content:"";
  position:absolute;
  z-index:-1;
  top:0;
  bottom:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  pointer-events:none;
  background-image:
    linear-gradient(90deg, rgba(12,12,19,.90) 0%, rgba(13,12,22,.77) 39%, rgba(13,12,22,.57) 70%, rgba(10,10,17,.65) 100%),
    linear-gradient(0deg, rgba(15,16,17,.66), rgba(15,16,17,.10) 45%, rgba(15,16,17,.42)),
    url("jr-korpa-9XngoIpxcEo-unsplash.jpg");
  background-repeat:no-repeat;
  background-position:center,center,center 48%;
  background-size:cover;
}
body.home .hero .hero-copy h1,
body.blog .hero .hero-copy h1 { color:#f4f2ee; }
body.home .hero .hero-copy h1 em,
body.blog .hero .hero-copy h1 em { color:#91afff; }
body.home .hero .hero-release,
body.blog .hero .hero-release { color:#e4e4eb; }
@media (max-width:800px) {
  body.home .hero.wrap::before,
  body.blog .hero.wrap::before {
    background-image:
      linear-gradient(180deg, rgba(12,12,19,.91) 0%, rgba(12,12,19,.88) 43%, rgba(12,12,19,.72) 100%),
      url("jr-korpa-9XngoIpxcEo-unsplash.jpg");
    background-position:center, 55% center;
  }
}
