/*
Theme Name: Widmanniana Classic
Description: Classic (PHP) theme for Widmanniana. Works with the Classic Editor. Young Serif and Bricolage Grotesque on butter paper. Front-page boxes are set in Appearance > Customize.
Version: 1.0.0
Requires at least: 5.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: widmanniana
*/
:root{--paper:#f7f4e6;--walnut:#2d1e14;--red:#a83634;--saffron:#e1b75c;--dill:#2f6d34;--plum:#5d2748;--fjord:#25526f;--rye:#c49c76;--sage:#c6d7bd;--tint:#ece4cf;--serif:"Young Serif",Georgia,serif;--sans:"Bricolage Grotesque",system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--walnut);font:400 1.0625rem/1.55 var(--sans)}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:clamp(2rem,4vw,2.6rem)}h2{font-size:clamp(1.6rem,3vw,2rem)}h3{font-size:1.4rem}h4{font-size:1.1rem}
p{text-wrap:pretty}
a{color:var(--walnut)}a:hover{color:var(--red)}
img{max-width:100%;height:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip-link:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;clip:auto;z-index:99;background:var(--walnut);color:var(--paper);padding:.6em 1em;border-radius:999px}
.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(1.25rem,3vw,1.75rem)}
.narrow{max-width:720px}

/* Header / footer */
.site-header .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.1rem;padding-bottom:1.1rem}
.site-title{margin:0;font:400 1.5rem/1 var(--serif)}
.site-title a{text-decoration:none;color:inherit}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.main-nav a{display:block;padding:.55rem .9rem;border-radius:999px;background:var(--tint);font:600 .875rem/1 var(--sans);text-decoration:none;color:var(--walnut)}
.main-nav a:hover,.main-nav .current-menu-item>a,.main-nav .current_page_item>a{background:var(--walnut);color:var(--paper)}
.main-nav ul ul{display:none}
.site-footer{margin-top:clamp(2.5rem,8vw,5rem)}
.site-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:2rem;padding-bottom:2.5rem;border-top:1px solid var(--tint);font-size:.875rem}
.site-footer .site-title{font-size:1.2rem}
.site-footer ul{list-style:none;margin:0;padding:0;display:flex;gap:1.2rem}

/* Boxes */
.site-main{padding-top:.5rem}
.front{display:flex;flex-direction:column;gap:clamp(1rem,2.5vw,1.5rem)}
.panel{position:relative;display:block;border-radius:16px;padding:clamp(1.25rem,3vw,2rem) clamp(1.25rem,3.5vw,2.25rem);text-decoration:none;color:inherit}
a.panel,a.cover{transition:transform .15s ease,filter .15s ease}
a.panel:hover,a.cover:hover{color:inherit;transform:translateY(-3px)}
.panel>*{margin:0}
.panel--red{background:var(--red);color:var(--paper)}
.panel--walnut{background:var(--walnut);color:var(--paper)}
.panel--tint{background:var(--tint)}
.hero h1{max-width:820px;font-size:clamp(2rem,4.2vw,2.75rem);line-height:1.05;margin:0}
.covers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,2vw,1.25rem)}
.cover{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:.4rem;height:clamp(180px,30vh,280px);border-radius:12px;padding:1.25rem;text-decoration:none}
.cover h2,.cover h3{margin:0;font-size:clamp(1.25rem,2.4vw,1.6rem);line-height:1.05}
.cover p{margin:0;font:600 .875rem/1.2 var(--sans)}
.cover--walnut{background:var(--walnut);color:var(--paper)}
.cover--saffron{background:var(--saffron);color:var(--walnut)}
.cover--tint{background:var(--tint);color:var(--walnut)}
.cover--red{background:var(--red);color:var(--paper)}
.cover--dill{background:var(--dill);color:var(--paper)}
.cover--plum{background:var(--plum);color:var(--paper)}
.cover--fjord{background:var(--fjord);color:var(--paper)}
.cover--rye{background:var(--rye);color:var(--walnut)}
.cover--sage{background:var(--sage);color:var(--walnut)}
a.cover--walnut:hover,a.cover--red:hover,a.cover--dill:hover,a.cover--plum:hover,a.cover--fjord:hover{color:var(--paper)}
.app-banner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem}
.app-banner .label{margin:0 0 .35rem;font:600 .875rem/1 var(--sans);color:var(--saffron)}
.app-banner h2{margin:0;font-size:clamp(1.3rem,2.4vw,1.6rem)}
.numeral{margin:0;font:400 clamp(2.2rem,4.5vw,3rem)/1 var(--serif);font-variant-numeric:tabular-nums}
@media (max-width:600px){.covers{grid-template-columns:1fr}.cover{height:150px}}

/* Pages & posts */
.page-head{margin-bottom:clamp(1.5rem,4vw,2.25rem)}
.page-head h1{margin:0;max-width:820px}
.page-head .meta{margin:0 0 .6rem;font:600 .875rem/1 var(--sans)}
.panel--tint .meta{color:var(--red)}
.panel--red .meta{color:var(--saffron)}
.post-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem}
.post-card{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem;border-radius:12px;background:var(--tint)}
.post-card>*{margin:0}
.post-card .meta{font:600 .8rem/1 var(--sans);color:var(--red)}
.post-card h2{font-size:1.35rem}
.post-card h2 a{text-decoration:none}
.pagination,.post-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--tint);font-weight:600}
.pagination a,.post-nav a{text-decoration:none}

/* Buttons & forms */
.button,button,input[type=submit]{display:inline-block;border:0;cursor:pointer;background:var(--red);color:var(--paper);font:600 .875rem/1 var(--sans);padding:.85rem 1.35rem;border-radius:999px;text-decoration:none}
.button:hover,button:hover,input[type=submit]:hover{background:var(--walnut);color:var(--paper)}
input[type=text],input[type=search],input[type=email],input[type=url],textarea{font:inherit;color:inherit;background:#fff;border:1px solid var(--tint);border-radius:10px;padding:.7rem .9rem;max-width:100%}
.search-form{display:flex;gap:.5rem;flex-wrap:wrap}

/* Comments */
.comments-area{margin-top:3rem}
.comment-list{list-style:none;padding:0}
.comment-list .comment{padding:1rem 0;border-bottom:1px solid var(--tint)}
.comment-meta{font-size:.85rem}

/* Content */
.entry-content>*{margin:0 0 1.1em}
.entry-content h2,.entry-content h3,.entry-content h4{margin:2.2em 0 .6em}
.entry-content a{color:var(--walnut);text-decoration:underline;text-underline-offset:2px}
.entry-content a:hover{color:var(--red)}
.entry-content ul,.entry-content ol{padding-left:1.25rem}
.entry-content li{margin:.3em 0}
.entry-content blockquote{margin:1.6em 0;padding:0 0 0 1.25rem;border-left:3px solid var(--red);font-family:var(--serif);font-size:1.3rem;line-height:1.35}
.entry-content img{max-width:100%;height:auto;border-radius:12px}
.entry-content table{width:100%;border-collapse:collapse;font-size:.9rem}
.entry-content th,.entry-content td{text-align:left;padding:.55em .6em;border-bottom:1px solid var(--tint)}
.entry-content th{font-weight:600}
.entry-content hr{border:0;border-top:1px solid var(--tint);margin:2.5em 0}
.entry-content code,.entry-content pre{background:var(--tint);border-radius:6px;font-size:.9em}
.entry-content code{padding:.1em .35em}.entry-content pre{padding:1em;overflow:auto}
.alignleft{float:left;margin:.3em 1.5em 1em 0}.alignright{float:right;margin:.3em 0 1em 1.5em}.aligncenter{display:block;margin-left:auto;margin-right:auto}
.wp-caption{max-width:100%}.wp-caption-text{font-size:.85rem;margin-top:.4em}
