/*
Theme Name: Nugget of Joy — Editorial Archive
Theme URI: https://nuggetofjoy.com/
Author: Nugget of Joy
Description: An editorial, archive-first theme inspired by the typography, restrained color, and open layout of nicholasdangelo.com.
Version: 6.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: nuggetofjoy-archive
*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');
:root{--ink:#222426;--muted:#777b80;--paper:#f8f6f0;--rule:#e4e5e6;--orange:#e9783d;--blue:#427fa4;--sans:"Montserrat",Arial,Helvetica,sans-serif;--serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.75;font-weight:400}
a{color:var(--blue);text-decoration:none;text-underline-offset:3px}
a:hover{color:var(--orange)}
a:focus-visible,input:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.noj-wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto}
.noj-skip{position:absolute;left:-9999px;top:auto}.noj-skip:focus{left:16px;top:16px;z-index:999;background:#fff;padding:12px}
.noj-header{border:0}
.noj-header-inner{min-height:76px;display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:32px;padding:12px 0}
.noj-brand{font-size:1.02rem;font-weight:600;letter-spacing:-.055em;text-decoration:none;white-space:nowrap;color:var(--ink)}
.noj-brand .noj-brand-orange{color:var(--orange)}
.noj-brand .noj-brand-blue{color:var(--blue)}
.noj-nav{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,25px);flex-wrap:wrap}
.noj-nav a{font-size:.67rem;font-weight:500;letter-spacing:.015em;text-decoration:none;color:#3f4245}
.noj-nav a:hover{color:var(--orange)}
.noj-search{display:flex;gap:5px;align-items:stretch;max-width:100%}
.noj-search input[type=search]{width:132px;max-width:25vw;border:0;border-bottom:1px solid #bfc2c4;background:#fff;border-radius:0;padding:6px 2px;font:inherit;font-size:.68rem}
.noj-search button{border:0;background:transparent;color:var(--blue);padding:6px 0 6px 7px;font:500 .67rem var(--sans);cursor:pointer}
.noj-search button:hover{color:var(--orange)}
.noj-hero{padding:32px 0 32px}
.noj-kicker{font:500 .62rem/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--orange);margin:0 0 9px}
.noj-hero h1{max-width:800px;margin:0;font-size:clamp(2rem,4.4vw,3.55rem);line-height:1.12;letter-spacing:-.065em;font-weight:500;color:var(--ink)}
.noj-hero h1 em{font-family:var(--sans);font-weight:500;font-style:italic;letter-spacing:-.055em;color:var(--blue)}
.noj-intro{max-width:680px;margin:13px 0 0;color:#606469;font-size:.82rem;line-height:1.85}
.noj-hero-tools{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:17px}
.noj-hero-tools .noj-search input[type=search]{width:min(300px,55vw)}
.noj-text-link{font-size:.69rem;font-weight:500;color:var(--blue);text-decoration:none;border-bottom:1px solid #c7d6df;padding-bottom:2px}
.noj-text-link:hover{border-color:var(--orange)}
.noj-section{padding:18px 0 60px}
.noj-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:16px}
.noj-section h2,.noj-archive h2{font-size:1rem;line-height:1.35;letter-spacing:-.035em;font-weight:600;margin:0;color:var(--orange)}
.noj-small-note{font-size:.7rem;color:var(--muted);margin:4px 0 0}
.noj-category-list{display:flex;gap:8px 15px;flex-wrap:wrap;margin:16px 0 18px}
.noj-category-list a{border:0;border-bottom:1px solid #d8e3e9;padding:0 0 2px;font-size:.65rem;text-decoration:none;color:var(--blue)}
.noj-category-list a:hover{border-color:var(--orange);color:var(--orange)}
.noj-content-list{border-top:1px solid var(--rule)}
.noj-content-row{display:grid;grid-template-columns:96px minmax(0,1fr) 18px;gap:20px;align-items:start;padding:14px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:inherit}
.noj-content-row:hover .noj-row-title{color:var(--orange)}
.noj-row-date{font-size:.61rem;line-height:1.7;color:#898d91;padding-top:3px;white-space:nowrap}
.noj-row-title{font-size:.88rem;line-height:1.5;letter-spacing:-.025em;margin:0;font-weight:600;color:var(--blue);transition:color .15s}
.noj-row-excerpt{font-size:.72rem;color:#666b70;max-width:760px;margin:4px 0 0;line-height:1.7}
.noj-row-type{font-size:.57rem;text-transform:uppercase;letter-spacing:.07em;color:#888d91;display:inline-block;margin-top:5px}
.noj-row-arrow{font-size:.78rem;text-align:right;color:#a2a5a7}
.noj-empty{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:17px 0;color:var(--muted)}
.noj-archive{border-top:1px solid var(--rule);padding:34px 0 48px}
.noj-archive-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:55px}
.noj-archive h2{font-size:1.25rem;max-width:420px;line-height:1.35}
.noj-archive p{max-width:520px;color:var(--muted);font-size:.75rem}
.noj-year-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}
.noj-year-list li{display:flex;justify-content:space-between;gap:15px;padding:7px 0;border-bottom:1px solid var(--rule);font-size:.72rem}
.noj-year-list a{text-decoration:none;color:var(--blue)}
.noj-year-list a:hover{color:var(--orange)}
.noj-footer{border-top:1px solid var(--rule);padding:16px 0}
.noj-footer-inner{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}
.noj-footer p{margin:0;color:var(--muted);font-size:.62rem}
.noj-search-results{padding:34px 0 70px}
.noj-search-results h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.12;letter-spacing:-.055em;font-weight:500;margin:0 0 22px}
.noj-entry{max-width:820px;margin-inline:auto}.noj-entry h1{font-size:clamp(2rem,4.8vw,3.5rem);line-height:1.12;letter-spacing:-.06em;font-weight:500;margin:0 0 18px}.noj-entry-content{font-size:.83rem;line-height:1.9;margin-top:25px}.noj-entry-content img,.noj-featured-image img{max-width:100%;height:auto}.noj-entry-content iframe{max-width:100%}.noj-entry-content h2,.noj-entry-content h3{line-height:1.3;letter-spacing:-.035em;margin-top:2em;color:var(--orange)}.noj-entry-content h2{font-size:1.35rem}.noj-entry-content h3{font-size:1.05rem}.noj-entry-content a{overflow-wrap:anywhere;color:var(--blue);text-decoration:underline;text-decoration-color:#c7d6df}.noj-entry-content a:hover{color:var(--orange);text-decoration-color:var(--orange)}.noj-featured-image{margin-top:24px}.noj-featured-image img{display:block;width:auto;max-height:650px}
.noj-pagination{display:flex;gap:6px;flex-wrap:wrap;margin-top:24px}.noj-pagination a,.noj-pagination span{padding:5px 9px;border:1px solid var(--rule);text-decoration:none;font-size:.7rem}.noj-pagination .current{background:var(--blue);color:#fff;border-color:var(--blue)}
.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}
@media(max-width:900px){.noj-header-inner{grid-template-columns:1fr auto;gap:15px}.noj-nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:16px}.noj-search{grid-column:2;grid-row:1}.noj-archive-grid{gap:28px}}
@media(max-width:600px){.noj-wrap{width:calc(100% - 32px)}.noj-header-inner{grid-template-columns:1fr;gap:10px;padding:18px 0}.noj-nav{grid-column:1;grid-row:auto;gap:12px 16px}.noj-search{grid-column:1;grid-row:auto;width:100%}.noj-header-inner>.noj-search input[type=search]{width:100%;max-width:none;flex:1}.noj-hero{padding:27px 0 24px}.noj-hero h1{font-size:clamp(2rem,10vw,3rem)}.noj-hero-tools{align-items:flex-start;flex-direction:column;gap:12px}.noj-hero-tools .noj-search{width:100%}.noj-hero-tools .noj-search input[type=search]{width:100%;max-width:none;flex:1}.noj-section-head{align-items:flex-start;flex-direction:column;gap:7px}.noj-content-row{grid-template-columns:65px minmax(0,1fr) 12px;gap:10px;padding:13px 0}.noj-row-excerpt{font-size:.69rem}.noj-archive-grid{grid-template-columns:1fr;gap:24px}.noj-footer-inner{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Editable WordPress navigation and homepage widget areas */
.noj-nav .menu, .noj-nav ul{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,25px);flex-wrap:wrap;list-style:none;padding:0;margin:0}
.noj-nav li{margin:0;padding:0}
.noj-nav a{display:inline-block}
.noj-widget-area{margin:20px 0 0}
.noj-widget-area:empty{display:none}
.noj-widget-area .widget{margin:0 0 18px}
.noj-widget-area .widget-title,.noj-widget-area h2,.noj-widget-area h3{font-family:var(--sans);font-size:.78rem;line-height:1.4;letter-spacing:-.02em;font-weight:600;color:var(--orange);margin:0 0 8px}
.noj-widget-area p,.noj-widget-area li,.noj-widget-area .textwidget{font-size:.75rem;line-height:1.8;color:#62676b}
.noj-widget-area ul{padding-left:18px;margin:8px 0}
.noj-widget-area a{color:var(--blue)}
.noj-widget-area a:hover{color:var(--orange)}
.noj-widget-area .wp-block-group,.noj-widget-area .wp-block-columns{margin-block:12px}
.noj-widget-featured{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:20px 0}
.noj-widget-after{border-top:1px solid var(--rule);padding-top:24px}
.noj-footer-widgets{border-top:1px solid var(--rule);padding:24px 0 8px}
.noj-footer-widgets .noj-wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.noj-menu-fallback{display:flex;gap:16px;flex-wrap:wrap}
.noj-menu-fallback a{font-size:.67rem;font-weight:500;color:#3f4245}
@media(max-width:900px){.noj-nav .menu,.noj-nav ul{justify-content:flex-start;gap:16px}}
@media(max-width:600px){.noj-nav .menu,.noj-nav ul{gap:12px 16px}.noj-footer-widgets .noj-wrap{grid-template-columns:1fr;gap:18px}}
