/*
Theme Name: David's XYZ
Theme URI: https://www.davids.xyz/
Author: David's XYZ
Description: Minimal, editorial WordPress block theme for a personal blog. Includes the original David's XYZ banner and native Content Archive templates.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: davids-xyz
Tags: blog, block-patterns, full-site-editing, custom-colors, wide-blocks, one-column
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--dx-ink:#161513;--dx-deep:#0d0f0e;--dx-paper:#f3eee5;--dx-cream:#f4e7d4;--dx-muted:#b8ae9f;--dx-copper:#c18c68;--dx-line:#403a33;--dx-inner:760px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{min-width:300px}
body a{text-underline-offset:.19em;text-decoration-thickness:1px}
body a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--dx-copper);outline-offset:4px}
.wp-site-blocks{min-height:100vh;display:flex;flex-direction:column;overflow-x:clip}
.wp-site-blocks>footer{margin-top:auto}
.dx-site-header{border-bottom:1px solid #342e28;background:var(--dx-deep)}
.dx-site-header .dx-header-inner{min-height:77px;padding-block:16px;gap:16px}
.dx-header-brand{font-size:1rem!important;letter-spacing:.085em;text-transform:uppercase;font-weight:700;line-height:1.2}
.dx-header-brand a{text-decoration:none;color:var(--dx-cream)}
.dx-header-brand a:hover{color:var(--dx-copper)}
.dx-navigation{font-size:.82rem;text-transform:uppercase;letter-spacing:.075em}
.dx-navigation .wp-block-navigation-item__content{color:var(--dx-cream)}
.dx-navigation .wp-block-navigation-item__content:hover{color:var(--dx-copper)}
.dx-main{padding-bottom:90px}
.dx-hero-shell{margin-top:0!important;max-width:1480px!important;margin-left:auto;margin-right:auto;padding:30px clamp(18px,3.5vw,48px) 0}
.dx-hero-art{line-height:0!important;margin:0!important;overflow:hidden;border:1px solid #44372a;background:#0a0d0d}
.dx-hero-art img{width:100%;height:auto;display:block;aspect-ratio:14/5;object-fit:contain}
.dx-home-title{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dx-mobile-hero{display:none}
.dx-feed-section{max-width:1020px!important;margin:0 auto;padding:64px 26px 0}
.dx-feed-head{padding-bottom:22px;border-bottom:1px solid var(--dx-line);gap:20px!important}
.dx-feed-heading{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.6rem,3.2vw,2.2rem)!important;font-weight:400;line-height:1.2;margin:0!important;color:var(--dx-cream)}
.dx-feed-kicker{color:var(--dx-copper);font-size:.73rem;letter-spacing:.15em;text-transform:uppercase;margin-bottom:7px!important}
.dx-feed-query{margin-top:0!important;max-width:100%!important;width:100%}
.dx-feed-section>.dx-feed-head{max-width:100%!important}
.dx-feed-query ul.wp-block-post-template{list-style:none;padding:0;margin:0}
.dx-feed-query .wp-block-post-template>li{padding:37px 0 41px;border-bottom:1px solid var(--dx-line);margin:0}
.dx-entry{max-width:100%!important}
.dx-entry-meta{font-size:.73rem;color:var(--dx-muted);text-transform:uppercase;letter-spacing:.105em;gap:8px 20px!important}
.dx-entry-meta .wp-block-post-date,.dx-entry-meta .wp-block-post-terms{margin:0!important}
.dx-entry-meta a{color:var(--dx-copper);text-decoration:none}
.dx-entry-meta a:hover{text-decoration:underline}
.dx-entry-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.72rem,2.8vw,2.55rem)!important;line-height:1.2;font-weight:400;margin:12px 0!important;letter-spacing:-.02em}
.dx-entry-title a{color:var(--dx-cream);text-decoration:none}
.dx-entry-title a:hover{color:var(--dx-copper)}
.dx-entry-excerpt{font-size:1.035rem;line-height:1.76;color:#d3c9bc;max-width:740px;margin:10px 0 0!important}
.dx-entry-excerpt p{margin:0!important}
.dx-entry-excerpt a{font-size:.82rem;letter-spacing:.035em;color:var(--dx-copper);text-decoration:none;white-space:nowrap}
.dx-entry-excerpt a:hover{text-decoration:underline}
.dx-feed-query .wp-block-query-pagination{padding-top:30px;margin-top:10px;color:var(--dx-cream);font-size:.85rem}
.dx-feed-query .wp-block-query-pagination a{color:var(--dx-copper);text-decoration:none}
.dx-feed-query .wp-block-query-pagination .current{color:var(--dx-cream)}
.dx-feed-query .wp-block-query-pagination a:hover{text-decoration:underline}
.dx-query-empty{padding:32px 0;color:var(--dx-muted)}
.dx-page-main{max-width:900px!important;margin:0 auto;padding:72px clamp(20px,5vw,60px) 110px}
.dx-page-title,.dx-archive-title{font-family:Georgia,'Times New Roman',serif;color:var(--dx-cream);font-weight:400;font-size:clamp(2.25rem,5vw,4rem)!important;line-height:1.14;letter-spacing:-.025em;margin:0 0 36px!important}
.dx-page-content{font-size:1.1rem;line-height:1.83;color:#e0d7cb}
.dx-page-content>p,.dx-article-body>p{margin-block:0 1.5em}
.dx-page-content h2,.dx-article-body h2{margin-top:1.65em;line-height:1.25}
.dx-page-content h3,.dx-article-body h3{margin-top:1.5em;line-height:1.3}
.dx-article-main{max-width:1100px!important;margin:0 auto;padding:72px clamp(20px,5vw,60px) 105px}
.dx-article-shell{max-width:var(--dx-inner)!important;margin-inline:auto}
.dx-article-meta{margin-bottom:17px;color:var(--dx-muted);font-size:.79rem;letter-spacing:.1em;text-transform:uppercase;gap:12px!important}
.dx-article-meta a{color:var(--dx-copper);text-decoration:none}
.dx-article-meta a:hover{text-decoration:underline}
.dx-article-title{font-family:Georgia,'Times New Roman',serif;color:var(--dx-cream);font-size:clamp(2.5rem,6vw,4.4rem)!important;font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0 0 20px!important}
.dx-article-featured{margin:32px 0 35px!important}
.dx-article-featured img{width:100%;height:auto}
.dx-article-body{font-size:clamp(1.05rem,2vw,1.16rem);line-height:1.83;color:#e4dacc}
.dx-article-body a,.dx-page-content a{color:var(--dx-copper)}
.dx-article-body blockquote{padding-left:24px;border-left:3px solid var(--dx-copper);color:var(--dx-cream);font-family:Georgia,'Times New Roman',serif;font-size:1.35rem}
.dx-article-body img{height:auto}
.dx-article-body pre{max-width:100%;overflow-x:auto}
.dx-article-body code{overflow-wrap:anywhere}
.dx-article-bottom{margin-top:44px;padding-top:22px;border-top:1px solid var(--dx-line);font-size:.82rem}
.dx-article-bottom a{color:var(--dx-copper);text-decoration:none}
.dx-post-navigation{margin-top:54px;gap:30px;border-top:1px solid var(--dx-line);padding-top:27px;font-family:Georgia,'Times New Roman',serif;font-size:1.1rem}
.dx-post-navigation a{color:var(--dx-cream);text-decoration:none}
.dx-post-navigation a:hover{color:var(--dx-copper)}
.dx-archive-intro{max-width:1020px!important;margin:0 auto;padding:60px 26px 0}
.dx-archive-title{margin-bottom:12px!important}
.dx-archive-intro .wp-block-term-description{max-width:720px;color:var(--dx-muted)}
.dx-archive-intro+.dx-feed-section{padding-top:12px}
.dx-archive-intro .dx-archive-rule{border-bottom:1px solid var(--dx-line);margin-top:30px}
.dx-404{text-align:center;padding-block:100px!important}
.dx-404 p{color:var(--dx-muted)}
.dx-404 .wp-block-search{max-width:460px;margin:35px auto}
.wp-block-search__input{background:#201e1b;color:var(--dx-cream);border:1px solid var(--dx-line);padding:.7em 1em;min-width:0}
.wp-block-search__button{border:1px solid var(--dx-copper);background:var(--dx-copper);color:var(--dx-deep);cursor:pointer}
.wp-block-search__button:hover{background:var(--dx-cream);border-color:var(--dx-cream)}
.dx-site-footer{border-top:1px solid var(--dx-line);background:var(--dx-deep);color:var(--dx-muted)}
.dx-site-footer .dx-footer-inner{min-height:110px;padding-block:32px;gap:12px!important}
.dx-footer-name{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.dx-footer-name a{color:var(--dx-cream);text-decoration:none}
.dx-footer-link{font-size:.78rem;letter-spacing:.09em}
.dx-footer-link a{color:var(--dx-copper);text-decoration:none}
.dx-footer-link a:hover{text-decoration:underline}
/* Content Archive integration: visual only. The plugin continues to control privacy and visibility. */
.dx-library .content-archive-list{margin-top:28px}
.dx-library .content-archive-grid-list{display:grid;grid-template-columns:1fr;gap:0}
.dx-library .content-archive-card{background:transparent!important;border:0!important;border-bottom:1px solid var(--dx-line)!important;border-radius:0!important;box-shadow:none!important;padding:20px 0!important;display:block!important}
.dx-library .content-archive-card-body{padding:0!important;background:transparent!important}
.dx-library .content-archive-card h3{font-family:Georgia,'Times New Roman',serif;font-size:1.9rem;font-weight:400;line-height:1.25}
.dx-library .content-archive-card h3 a{color:var(--dx-cream);text-decoration:none}
.dx-library .content-archive-card h3 a:hover{color:var(--dx-copper)}
.dx-library .content-archive-card p{color:var(--dx-muted)}
.dx-library .content-archive-card-link a{color:var(--dx-copper)}
.dx-library .content-archive-thumb img{max-width:100%;height:auto}
.dx-library .content-archive-pill-row{font-size:.78rem}
.dx-library .content-archive-pill{background:#332c25!important;color:var(--dx-cream)!important;border-color:var(--dx-line)!important}
/* Keep content usable on smaller screens, where embedded words in the wide artwork would become illegible. */
@media(max-width:700px){
 .dx-site-header .dx-header-inner{min-height:65px;padding:12px 0}
 .dx-header-brand{font-size:.86rem!important}
 .dx-hero-shell{padding:14px 15px 0}
 .dx-home-title{display:none}
 .dx-hero-art{display:none}
 .dx-mobile-hero{display:block;padding:145px 23px 26px!important;position:relative;overflow:hidden;isolation:isolate;min-height:520px;border:1px solid #46392d;background:#0b0d0d}
 .dx-mobile-hero::before{content:'';position:absolute;z-index:-2;inset:0;background-image:url('assets/images/davids-xyz-hero.png');background-position:right top;background-size:1000px auto;background-repeat:no-repeat;opacity:.9}
 .dx-mobile-hero::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(to bottom,rgba(7,8,8,.1) 0%,rgba(7,8,8,.96) 30%,rgba(7,8,8,.97) 100%)}
 .dx-mobile-eyebrow{font-size:.67rem!important;letter-spacing:.12em;color:var(--dx-copper);margin:0 0 13px!important;text-transform:uppercase}
 .dx-mobile-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.5rem,11vw,4.1rem)!important;line-height:1.04;font-weight:400;color:var(--dx-cream);margin:0 0 16px!important}
 .dx-mobile-tagline{font-size:.78rem;letter-spacing:.08em;line-height:1.6;text-transform:uppercase;color:var(--dx-copper);font-weight:700;margin:0 0 16px!important}
 .dx-mobile-intro{font-size:.9rem;line-height:1.6;color:var(--dx-cream);margin:0 0 20px!important}
 .dx-mobile-topics{font-size:.66rem!important;text-transform:uppercase;letter-spacing:.07em;color:var(--dx-muted);border-top:1px solid var(--dx-line);padding-top:16px;margin:0!important}
 .dx-feed-section{padding:42px 23px 0}
 .dx-feed-query .wp-block-post-template>li{padding:29px 0}
 .dx-entry-title{font-size:1.85rem!important}
 .dx-entry-excerpt{font-size:1rem}
 .dx-page-main,.dx-article-main{padding-top:50px}
 .dx-archive-intro{padding-top:40px}
 .dx-site-footer .dx-footer-inner{min-height:90px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
