/*
Theme Name: Kevin Journal
Author: Kevin Hughes
Description: A quiet editorial theme for writing and video journals.
Version: 1.0.1
Requires at least: 6.4
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: kevin-journal
*/

:root{--paper:#f7f6f0;--ink:#232c27;--muted:#676e66;--line:#d8dcd1;--green:#395c42}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--green);outline-offset:6px}.wrap{width:min(1120px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-80px;background:white;padding:10px}.skip:focus{top:5px}header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-weight:700;letter-spacing:-.7px;font-size:22px}.brand span{color:var(--green)}nav{display:flex;gap:32px;font-size:14px}nav a:hover{text-decoration:underline;text-underline-offset:6px}.hero{padding:85px 0 78px;display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:80px}.eyebrow,.meta{font-size:11px;text-transform:uppercase;letter-spacing:1.7px;font-weight:600}.eyebrow{color:var(--green)}.eyebrow:before{content:'';width:6px;height:6px;background:var(--green);border-radius:100%;display:inline-block;vertical-align:middle;margin-right:10px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12;letter-spacing:-1.5px;margin:0}h1{font-size:clamp(48px,6.7vw,82px);margin-top:22px}h1 em{color:var(--green);font-weight:400}.intro{color:var(--muted);max-width:310px;margin:0 0 8px;font-size:17px}.feature{display:grid;grid-template-columns:1.18fr 1fr;border:1px solid var(--line);min-height:360px}.art{background:#e4e8dc;position:relative;overflow:hidden;min-height:330px;display:flex;align-items:center;justify-content:center}.art:before{content:'';width:250px;height:250px;border-radius:50%;background:#c8d2bd;position:absolute;top:36px;left:45px}.paper{width:198px;height:242px;background:#f8f8ee;transform:rotate(-9deg);box-shadow:10px 15px 25px #253b2118;padding:32px;position:relative;font:italic 28px/1.2 Georgia,serif}.paper:after{content:'';display:block;margin-top:32px;width:100%;height:55px;background:repeating-linear-gradient(to bottom,transparent 0 12px,#c8cdbf 12px 13px)}.pencil{position:absolute;width:6px;height:240px;background:#6a7858;transform:rotate(30deg);left:72%;top:60px;border-bottom:12px solid #313c2d}.feature-copy{padding:44px;display:flex;flex-direction:column;align-items:start;justify-content:center}.meta{letter-spacing:1.2px;color:var(--muted);display:flex;gap:14px;align-items:center}.tag{color:var(--green)}h2{font-size:39px;margin:20px 0 14px}.feature-copy p{color:var(--muted);margin:0 0 24px}.textlink{font-size:14px;font-weight:bold;border-bottom:1px solid var(--ink);padding-bottom:5px}.textlink span{margin-left:30px}.journal{padding:76px 0}.section-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.section-top h2{font-size:33px;margin:0}.filters{display:flex;gap:8px}.filter{background:transparent;border:1px solid transparent;border-radius:30px;font-size:13px;padding:7px 18px}.filter[aria-pressed=true]{background:var(--ink);color:var(--paper)}.filter:hover{border-color:var(--line)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.post{border-top:1px solid var(--line);padding-top:23px}.post h3{font-size:27px;letter-spacing:-.5px;margin:18px 0 12px}.post p{color:var(--muted);font-size:14px;margin:0 0 20px}.post button{background:none;border:0;padding:0;text-align:left}.post button:hover h3{text-decoration:underline;text-underline-offset:4px}.post .meta{font-size:10px;gap:10px}.post-foot{font-size:12px;color:var(--muted)}.play{display:inline-flex;width:19px;height:19px;border:1px solid var(--green);border-radius:50%;align-items:center;justify-content:center;font-size:8px;color:var(--green);margin-right:6px}.empty{grid-column:1/-1}.about{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:46px 0;display:grid;grid-template-columns:1fr 1.8fr;gap:60px}.about h2{font-size:32px;margin:0}.about p{margin:0;max-width:600px;color:var(--muted)}footer{padding:30px 0 40px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.demo{font-size:11px;letter-spacing:.3px;color:var(--muted);margin:23px 0 0}dialog{max-width:720px;width:calc(100% - 32px);max-height:85vh;border:1px solid var(--line);padding:48px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#18231c88;backdrop-filter:blur(4px)}dialog h2{margin-top:26px}dialog p{color:var(--muted)}.close{float:right;background:none;border:1px solid var(--line);border-radius:30px;padding:5px 15px;font-size:13px}.video-placeholder{background:#e4e8dc;padding:40px;text-align:center;margin:24px 0}.video-placeholder strong{display:block;color:var(--ink)}[hidden]{display:none!important}@media(max-width:760px){.wrap{width:calc(100% - 40px)}header{height:86px}.brand{font-size:19px}nav{gap:20px}.hero{padding:48px 0;grid-template-columns:1fr;gap:25px}.intro{max-width:430px}.feature{grid-template-columns:1fr}.art{min-height:290px}.feature-copy{padding:30px}h2{font-size:34px}.journal{padding:48px 0}.section-top{align-items:start;gap:20px;flex-direction:column}.grid{grid-template-columns:1fr;gap:28px}.about{grid-template-columns:1fr;gap:20px;padding:35px 0}footer{gap:15px;flex-wrap:wrap}dialog{padding:25px}.post h3{margin-top:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

header nav ul{list-style:none;display:flex;gap:24px;margin:0;padding:0;flex-wrap:wrap}header nav li{position:relative}header nav .sub-menu{display:none;position:absolute;top:100%;right:0;background:var(--paper);padding:15px;min-width:180px;z-index:10;border:1px solid var(--line)}header nav li:hover>.sub-menu,header nav li:focus-within>.sub-menu{display:block}.feature img{width:100%;height:100%;object-fit:cover}.post>a:hover h3{text-decoration:underline}.entry{max-width:740px;margin:60px auto 80px}.entry h1{font-size:clamp(36px,5vw,60px);margin-bottom:30px}.entry h2{font-size:32px}.entry h3{font-size:26px}.entry-content{font-size:18px}.entry-content a,.pagination a,.comment-body a{text-decoration:underline}.entry-content img,.entry-content video,.entry-content iframe{max-width:100%}.entry-content img{height:auto}.entry-content figure{margin:2em 0}.entry-content p{margin:1.4em 0}.entry-content pre{overflow:auto}.entry-content blockquote{border-left:3px solid var(--green);margin-left:0;padding-left:24px;font-family:Georgia,serif;font-size:25px}.pagination{margin:30px 0}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.screen-reader-text:focus{position:static;width:auto;height:auto;clip-path:none}.post-thumbnail{width:100%;height:auto;margin-bottom:18px}.search-form input,.comment-form input,.comment-form textarea{font:inherit;max-width:100%;padding:10px;border:1px solid var(--line);background:white}.search-submit,.submit{cursor:pointer}.comment-list{padding-left:20px}.wp-block-embed__wrapper iframe{max-width:100%}.sticky{border-top:2px solid var(--green)}.gallery{display:flex;flex-wrap:wrap}.gallery-item{max-width:33%}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:13px;color:var(--muted)}.alignright{float:right;margin:0 0 20px 20px}.alignleft{float:left;margin:0 20px 20px 0}.aligncenter{display:block;margin-left:auto;margin-right:auto}.entry-content:after{content:'';display:table;clear:both}.bypostauthor{border-left:2px solid var(--green);padding-left:12px}.post-nav{display:flex;justify-content:space-between;gap:30px;margin-top:40px}.feature .art{height:100%}.feature .art img{position:absolute;inset:0;z-index:1}.filters a{display:inline-block}.filter.active{background:var(--ink);color:var(--paper)}@media(max-width:760px){header{height:auto;min-height:86px;gap:20px;flex-wrap:wrap;padding:20px 0}header nav ul{gap:16px}.entry{margin-top:35px}.entry-content{font-size:17px}}
