/*
Theme Name: Jester Prints
Description: WordPress storefront homepage and article layouts based on the archived Jester Prints design.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: jester-prints
*/
@font-face{font-family:Assistant;src:url("https://nrgjester.myshopify.com/cdn/fonts/assistant/assistant_n4.9120912a469cad1cc292572851508ca49d12e768.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Assistant;src:url("https://nrgjester.myshopify.com/cdn/fonts/assistant/assistant_n7.bf44452348ec8b8efa3aa3068825305886b1c83c.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Titan One";src:url("https://nrgjester.myshopify.com/cdn/fonts/titan_one/titanone_n4.2e4a6fa0d05c961cb1d716f9bf49bdc81603bb0a.woff2") format("woff2");font-weight:400;font-display:swap}
:root{--ink:#121212;--line:#e5e5e5;--heading:"Titan One",system-ui,sans-serif}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 Assistant,system-ui,sans-serif;letter-spacing:.035em}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.23em}
h1,h2,h3{font-family:var(--heading);font-weight:400;line-height:1.2;letter-spacing:.015em}
button,input,textarea{font:inherit}
:focus-visible{outline:2px solid #334fb4;outline-offset:4px}
.shell{max-width:1200px;margin-inline:auto;padding-inline:50px}
.skip-link{position:absolute;top:0;left:12px;padding:8px 16px;background:white;z-index:10;transform:translateY(-120%)}
.skip-link:focus{transform:none}
.announcement{text-align:center;padding:7px 16px;font:13px/1.5 var(--heading);border-bottom:1px solid var(--line)}
.site-header{border-bottom:1px solid var(--line);position:relative;z-index:2}
.header-inner{display:flex;align-items:center;gap:24px;min-height:140px}
.brand{flex:none}
.brand img{width:100px}
.desktop-menu{flex:1}
.desktop-menu ul,.mobile-menu ul{list-style:none;padding:0;margin:0}
.desktop-menu>ul{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.site-header nav a,.site-header summary{text-decoration:none;color:#353535}
.site-header nav a:hover,.site-header summary:hover{text-decoration:underline}
.site-header details{position:relative}
.site-header summary{cursor:pointer}
.desktop-menu details>ul{position:absolute;top:100%;left:0;width:240px;background:#fff;padding:10px 16px;border:1px solid var(--line)}
.desktop-menu details details>ul{position:static;width:auto;border:0;padding:4px 10px}
.site-header nav li{padding-block:4px}
.header-actions{display:flex;gap:18px;align-items:center}
.header-actions svg{display:block;width:22px;height:22px;stroke:currentColor;stroke-width:1.5;fill:none}
.site-search summary{list-style:none}
.site-search form{position:absolute;right:0;top:32px;background:#fff;border:1px solid var(--line);padding:14px;width:min(260px,70vw)}
.site-search input{width:100%;margin-bottom:7px}
.mobile-menu{display:none}
.hero{position:relative;isolation:isolate;display:grid;align-items:end;justify-items:center;text-align:center;min-height:420px;background:#333;color:#fff}
.hero-images{position:absolute;inset:0;z-index:-2;display:grid;grid-template-columns:1fr 1fr}
.hero-images img{width:100%;height:100%;min-height:0;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:#0006}
.hero-copy{padding:32px 16px 42px}
.hero h1{font-size:clamp(27px,4vw,42px);margin:0 0 22px}
.button{display:inline-block;min-width:120px;text-decoration:none;border:1px solid currentColor;padding:10px 24px}
.button:hover{background:#fff;color:var(--ink)}
.collection-section{padding-block:28px 20px}
.collection-section:last-child{padding-bottom:48px}
.collection-section h2{font-size:clamp(25px,3.2vw,39px);margin:0 0 23px}
.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;list-style:none;padding:0;margin:0}
.collection-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.collection-grid-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.collection-grid a{text-decoration:none;display:block}
.collection-grid img,.collection-placeholder{width:100%;height:auto;aspect-ratio:1;object-fit:cover;background:#f3f3f3;display:block}
.collection-grid h3{font-size:16px;margin:12px 0 0}
.collection-grid a:hover h3{text-decoration:underline}
.site-footer{text-align:center;border-top:1px solid var(--line);padding:36px 0 42px}
.site-footer h2{margin:0 0 12px}
.site-footer p a+a{margin-left:16px}
.article{max-width:820px;margin:auto;padding:56px 24px 70px}
.article h1,.listing h1{font-size:clamp(30px,5vw,50px);margin:0 0 16px;overflow-wrap:anywhere}
.article-heading{text-align:center;margin-bottom:28px}
.article-meta{font-size:14px;color:#555}
.article-meta span{margin-left:12px}
.article-image{margin:0 auto 32px}
.article-image img{width:100%}
.article-content{font-size:18px;overflow-wrap:anywhere}
.article-content h2{font-size:clamp(22px,3vw,32px);margin-top:1.4em}
.article-content figure{max-width:100%}
.article-content iframe{max-width:100%}
.post-nav{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:40px}
.comments{margin-top:40px}
.comments textarea{max-width:100%}
.listing{padding-block:45px 60px}
.listing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:30px}
.listing-grid h2{font-size:24px}
@media(max-width:989px){
    .shell{padding-inline:24px}
    .header-inner{justify-content:space-between;min-height:98px}
    .desktop-menu{display:none}
    .mobile-menu{display:block;order:-1}
    .mobile-menu nav{position:absolute;left:0;top:32px;width:min(280px,75vw);max-height:70vh;overflow:auto;background:#fff;border:1px solid var(--line);padding:12px 16px}
    .mobile-menu ul ul{padding-left:12px}
    .brand img{width:76px}
}
@media(max-width:749px){
    .shell{padding-inline:18px}
    .hero{min-height:405px}
    .hero-images{grid-template-columns:1fr;grid-template-rows:1fr 1fr}
    .hero-copy{padding-bottom:28px}
    .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}
    .collection-grid-five,.collection-section:last-child .collection-grid{grid-template-columns:1fr}
    .collection-section h2{margin-bottom:15px}
}

.hero-images{overflow:hidden}.hero-images img{min-width:0;min-height:0}
