/*
Theme Name: The Herb Thymes Editorial
Theme URI: https://theherbthymes.eu
Author: The Herb Thymes
Description: Multilingual newspaper shell and locked article layouts for The Herb Thymes.
Version: 0.7.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: tht-editorial
*/
:root{--tht-ink:#252824;--tht-paper:#F6F1E5;--tht-raised:#FBF8EF;--tht-green:#4A6412;--tht-green-dark:#35480D;--tht-lemon:#E8B53E;--tht-custard:#E4C171;--tht-mustard:#BE7B21;--tht-mocha:#562909;--tht-rule:rgba(37,40,36,.42);--tht-soft-rule:rgba(37,40,36,.18);--tht-max:1280px;--tht-text:760px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#d9d4c7;color:var(--tht-ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}.screen-reader-text{position:absolute;left:-9999px}.screen-reader-text:focus{left:10px;top:10px;z-index:9999;background:#fff;padding:10px}.tht-site-header,.tht-paper,.tht-site-footer{width:min(100%,var(--tht-max));margin-inline:auto}.tht-site-header{background:var(--tht-paper);padding:18px clamp(18px,4vw,54px) 0;border-bottom:4px double var(--tht-ink)}.tht-topline{display:flex;justify-content:space-between;gap:20px;border-block:1px solid var(--tht-ink);padding:7px 0;font:700 9px/1.2 Georgia,serif;text-transform:uppercase;letter-spacing:.14em}.tht-masthead{text-align:center;padding:11px 0}.tht-masthead>a{display:block;text-decoration:none;font:700 clamp(48px,8.7vw,118px)/.9 Georgia,serif;letter-spacing:-.065em}.tht-masthead p{margin:9px auto 0;max-width:700px;font:italic clamp(12px,1.25vw,16px)/1.4 Georgia,serif;color:#5e584e}.tht-primary-nav{display:flex;justify-content:center;gap:clamp(12px,3vw,40px);padding:10px 0;border-top:1px solid var(--tht-ink);font:700 clamp(9px,1vw,12px)/1 Georgia,serif;text-transform:uppercase;letter-spacing:.1em}.tht-primary-nav a{text-decoration:none}.tht-primary-nav a:hover,.tht-primary-nav a:focus{text-decoration:underline;text-underline-offset:4px}.tht-paper{position:relative;background:var(--tht-paper);min-height:80vh;padding:clamp(20px,4vw,54px)}.tht-site-footer{display:flex;justify-content:space-between;gap:30px;padding:28px clamp(20px,4vw,54px);background:#292e26;color:#fff;border-top:6px double var(--tht-custard)}.tht-site-footer>div{display:grid;gap:5px}.tht-site-footer strong{font:700 24px Georgia,serif}.tht-site-footer span{font:11px/1.45 Georgia,serif;color:rgba(255,255,255,.72)}
.tht-article-language,.tht-archive-language{display:flex;justify-content:flex-end;margin-bottom:20px}.tht-language-switcher{display:flex;gap:5px}.tht-language-switcher a{display:flex;align-items:center;gap:5px;text-decoration:none;padding:5px 8px;border:1px solid var(--tht-soft-rule);background:rgba(255,255,255,.25);font-size:9px}.tht-language-switcher a[aria-current=page]{background:var(--tht-green-dark);color:#fff}.tht-flag{width:18px;height:12px;border:1px solid rgba(0,0,0,.17)}.tht-article-tools{position:fixed;z-index:20;right:max(12px,calc((100vw - var(--tht-max))/2 + 14px));top:50%;transform:translateY(-50%);display:grid;background:rgba(255,249,234,.94);border:1px solid var(--tht-rule);box-shadow:0 12px 32px rgba(38,34,28,.13);backdrop-filter:blur(12px)}.tht-article-tools a,.tht-article-tools button,.tht-back-top{display:flex;align-items:center;gap:7px;border:0;border-bottom:1px solid var(--tht-soft-rule);background:transparent;padding:10px;color:var(--tht-ink);font:700 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;cursor:pointer}.tht-article-tools a:last-child,.tht-article-tools button:last-child{border-bottom:0}.tht-tool-icon{width:18px;height:18px;flex:0 0 auto}.tht-article-tools span{display:none}.tht-article-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(25px,5vw,70px);align-items:stretch;padding-bottom:clamp(28px,5vw,62px);border-bottom:1px solid var(--tht-ink)}.tht-article-hero.is-feature{grid-template-columns:.82fr 1.18fr}.tht-article-heading{display:flex;flex-direction:column;justify-content:center;min-width:0}.tht-kicker{font:800 clamp(9px,.95vw,12px)/1 Arial,sans-serif;color:var(--tht-green-dark);text-transform:uppercase;letter-spacing:.19em}.tht-article-heading h1{margin:11px 0 17px;font:600 clamp(43px,6.1vw,86px)/.94 Georgia,serif;letter-spacing:-.048em;text-wrap:balance}.tht-intro{font:italic clamp(15px,1.45vw,20px)/1.55 Georgia,serif;color:#554f45}.tht-intro p{margin:0}.tht-hero-image{position:relative;margin:0;min-height:420px;background:#d9d2c1;overflow:hidden}.tht-hero-image img{width:100%;height:100%;object-fit:cover;display:block}.tht-hero-image>span:not(.tht-access-badge){display:grid;place-items:center;height:100%;padding:20px;color:#746d61}.tht-access-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:35px;padding:6px 10px;border:1px solid var(--tht-ink);font:800 clamp(8px,.8vw,10px)/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.tht-access-badge svg{width:16px;height:16px}.tht-access-badge.is-premium{background:var(--tht-lemon)}.tht-access-badge.is-free{background:#cad3be}.tht-access-badge.is-compact{position:absolute;bottom:13px;left:13px;min-height:31px}.tht-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:6px;margin-top:24px}.tht-meta-badge{display:grid;align-content:center;justify-items:center;min-height:48px;padding:6px;border:1px solid var(--tht-rule);text-align:center;word-break:normal;overflow-wrap:normal}.tht-meta-badge small{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#70685e}.tht-meta-badge strong{font:700 clamp(9px,.95vw,12px)/1.2 Georgia,serif}.tht-editorial-lead{width:min(100%,var(--tht-text));margin:clamp(32px,6vw,72px) auto}.tht-copy-block{font:clamp(16px,1.45vw,20px)/1.72 Georgia,serif}.tht-copy-block p:first-child:first-letter{float:left;padding:8px 9px 0 0;font:700 4.3em/.72 Georgia,serif;color:var(--tht-green-dark)}.tht-feature-story blockquote{margin:35px 0;padding:22px 0;border-block:3px double var(--tht-ink);font:italic clamp(24px,3vw,40px)/1.22 Georgia,serif;text-align:center}.tht-feature-story aside{padding:22px;background:#e8e0ce;border-left:6px solid var(--tht-mustard)}.tht-feature-story aside h3{font:700 23px Georgia,serif;margin:0 0 8px}.tht-feature-story aside p{margin:0}.tht-serving-bar{display:flex;justify-content:center;align-items:center;gap:11px;width:min(100%,var(--tht-text));margin:0 auto 38px;padding:11px;border-block:1px solid var(--tht-ink);font:700 12px Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}.tht-serving-bar button{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--tht-ink);background:transparent;cursor:pointer}.tht-serving-bar strong{font:700 20px Georgia,serif}.tht-article-modules{display:grid;gap:clamp(38px,6vw,78px)}.tht-content-section{width:min(100%,930px);margin-inline:auto}.tht-section-title{display:flex;align-items:center;gap:15px;margin:0 0 25px;font:600 clamp(30px,4vw,52px)/1 Georgia,serif}.tht-section-title:before,.tht-section-title:after{content:"";height:1px;background:var(--tht-ink);flex:1}.tht-ingredients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}.tht-ingredient-group h3{font:700 23px Georgia,serif;margin:0 0 10px}.tht-ingredient-group ul{list-style:none;padding:0;margin:0}.tht-ingredient-group li{border-bottom:1px dotted #8e8577}.tht-ingredient-group li input,.tht-method li input,.tht-care li input{position:absolute;opacity:0}.tht-ingredient-group li label{display:flex;align-items:flex-start;gap:10px;padding:11px 0;font:16px/1.4 Georgia,serif;cursor:pointer}.tht-check-circle{width:18px;height:18px;border:1px solid var(--tht-ink);border-radius:50%;flex:0 0 auto;margin-top:2px}.tht-ingredient-group li input:checked+label,.tht-method li input:checked+label,.tht-care li input:checked+label{opacity:.5;text-decoration:line-through}.tht-ingredient-group li input:checked+label .tht-check-circle,.tht-care li input:checked+label .tht-check-circle{background:var(--tht-green);box-shadow:inset 0 0 0 4px var(--tht-paper)}.tht-ingredient-group b{min-width:77px}.tht-ingredient-group small{display:block;color:#756e64;font-style:italic}.tht-method ol{list-style:none;padding:0;margin:0;display:grid;gap:16px}.tht-method li label{display:grid;grid-template-columns:46px 1fr;gap:16px;cursor:pointer}.tht-step-number{display:grid;place-items:center;width:43px;height:43px;background:var(--tht-green-dark);color:#fff;border-radius:50%;font:700 18px Georgia,serif}.tht-method li strong{display:block;font:700 21px Georgia,serif}.tht-method li p{margin:6px 0 0;font:16px/1.55 Georgia,serif}.tht-card-grid,.tht-calendar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px}.tht-card-grid article,.tht-calendar-grid article{padding:20px;border:1px solid var(--tht-rule);background:var(--tht-raised)}.tht-card-grid article>span,.tht-calendar-grid article>span,.tht-profile-card>span,.tht-route>span,.tht-related>span{font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:var(--tht-green-dark)}.tht-card-grid h3,.tht-calendar-grid h3{font:700 23px/1.1 Georgia,serif;margin:8px 0}.tht-card-grid p,.tht-calendar-grid p{font:15px/1.5 Georgia,serif}.tht-card-grid a,.tht-module-link-label{display:inline-block;margin-top:8px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.tht-module-link-label{font-weight:700;text-decoration:underline;text-underline-offset:3px}.tht-disclosure,.tht-source-section{width:min(100%,930px);margin-inline:auto;padding:18px 0;border-block:1px solid var(--tht-ink)}.tht-disclosure summary,.tht-source-section summary{cursor:pointer;font:700 clamp(24px,3vw,36px) Georgia,serif}.tht-nutrition-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px}.tht-nutrition-grid span{display:grid;place-items:center;min-height:80px;border:1px solid var(--tht-rule);font-size:10px;text-align:center}.tht-nutrition-grid b{display:block;font:700 25px Georgia,serif}.tht-profile-card{float:right;width:min(360px,45%);margin:0 0 20px 30px;padding:20px;background:#e5ddcc;border:1px solid #918877}.tht-profile-card h3,.tht-route h3{font:700 27px Georgia,serif;margin:8px 0 12px}.tht-profile-card p{display:flex;justify-content:space-between;gap:15px;padding:8px 0;margin:0;border-bottom:1px dotted #8d8476;font:13px Georgia,serif}.tht-route{clear:both;margin-top:25px;padding:20px;border-left:7px solid var(--tht-green);background:#eee6d4}.tht-route p{display:flex;gap:10px;font:15px/1.5 Georgia,serif}.tht-route p b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--tht-green-dark);color:#fff;flex:0 0 auto}.tht-care ol{list-style:none;padding:0;display:grid;gap:15px}.tht-care li label{display:flex;gap:13px;cursor:pointer}.tht-care li strong{display:block;font:700 21px Georgia,serif}.tht-care li p{font:15px/1.5 Georgia,serif;margin:6px 0}.tht-care aside{padding:20px;background:#e5ddcc}.tht-care aside h3{font:700 25px Georgia,serif;margin:7px 0}.tht-care aside p{display:inline-block;margin:5px 8px 5px 0;padding:6px 9px;background:var(--tht-raised);border:1px solid var(--tht-rule);font-size:11px}.tht-local-note{padding-left:15px;border-left:4px solid var(--tht-mustard);font:italic 16px/1.5 Georgia,serif}.tht-related{text-align:center;padding:35px;border-block:4px double var(--tht-ink)}.tht-related h2{font:700 clamp(34px,5vw,62px)/.98 Georgia,serif;margin:9px 0}.tht-related p{max-width:650px;margin:10px auto 20px;font:17px/1.55 Georgia,serif}.tht-related a,.tht-premium-gate a{display:inline-block;padding:11px 17px;background:var(--tht-green-dark);color:#fff;text-decoration:none;font:800 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}.tht-premium-gate{width:min(100%,700px);margin:50px auto;text-align:center;padding:45px 30px;background:#ece1c5;border:5px double var(--tht-ink)}.tht-premium-gate svg{width:43px;height:43px}.tht-premium-gate>span{display:block;margin-top:10px;font:800 10px Arial,sans-serif;letter-spacing:.18em}.tht-premium-gate h2{font:700 clamp(39px,5vw,62px)/1 Georgia,serif;margin:10px}.tht-premium-gate p{font:italic 19px/1.5 Georgia,serif}.tht-source-section{margin-top:clamp(45px,7vw,90px)}.tht-source-section ul{list-style:none;padding:0}.tht-source-section li{padding:10px 0;border-bottom:1px dotted #938a7d}.tht-source-section strong,.tht-source-section small{display:block}.tht-source-section small{margin-top:4px;color:#6d665d}.tht-signoff{text-align:center;margin:60px 0 20px;font:italic 36px/1 Georgia,serif}.tht-back-top{position:fixed;right:max(12px,calc((100vw - var(--tht-max))/2 + 14px));bottom:20px;background:var(--tht-green-dark);color:#fff;border:0;border-radius:50%;width:42px;height:42px;padding:0;justify-content:center}.tht-back-top span{display:none}
.tht-archive-header{text-align:center;padding:20px 0 45px;border-bottom:4px double var(--tht-ink)}.tht-archive-header>span{font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.2em}.tht-archive-header h1{font:700 clamp(55px,9vw,120px)/.9 Georgia,serif;letter-spacing:-.055em;margin:10px}.tht-archive-header p{font:italic 18px Georgia,serif}.tht-archive-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:25px;margin-top:45px}.tht-archive-card{grid-column:span 4;border-top:5px solid var(--tht-ink);padding-top:10px}.tht-archive-card:nth-child(5n+1){grid-column:span 7}.tht-archive-card:nth-child(5n+2){grid-column:span 5}.tht-card-image{position:relative;display:block;aspect-ratio:4/3;background:#d6cfbe;overflow:hidden}.tht-card-image img{width:100%;height:100%;object-fit:cover}.tht-archive-card>div>span{display:block;margin-top:13px;font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:var(--tht-green-dark)}.tht-archive-card h2{font:700 clamp(27px,3vw,44px)/1 Georgia,serif;margin:8px 0}.tht-archive-card h2 a{text-decoration:none}.tht-archive-card p{font:15px/1.5 Georgia,serif}.tht-card-link{font:800 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.11em;text-underline-offset:4px}.tht-empty-archive{text-align:center;padding:70px;font:italic 23px Georgia,serif}.navigation.pagination{margin-top:50px}.nav-links{display:flex;justify-content:center;gap:7px}.page-numbers{display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--tht-ink);text-decoration:none}.page-numbers.current{background:var(--tht-green-dark);color:#fff}
@media(max-width:1100px){.tht-article-tools{position:sticky;top:0;transform:none;right:auto;display:flex;justify-content:center;margin:-10px auto 20px;width:max-content;max-width:100%;overflow:auto}.tht-article-tools a,.tht-article-tools button{border-bottom:0;border-right:1px solid var(--tht-soft-rule)}.tht-article-tools span{display:inline}.tht-back-top{right:16px}.tht-article-hero,.tht-article-hero.is-feature{grid-template-columns:1fr 1fr;gap:30px}.tht-article-heading h1{font-size:clamp(43px,6.5vw,70px)}}
@media(max-width:780px){.tht-site-header,.tht-paper,.tht-site-footer{width:100%}.tht-topline span:last-child{display:none}.tht-masthead>a{font-size:clamp(43px,13vw,76px)}.tht-primary-nav{justify-content:flex-start;overflow-x:auto}.tht-primary-nav a{white-space:nowrap}.tht-paper{padding:20px 16px 45px}.tht-article-language,.tht-archive-language{justify-content:flex-start;overflow-x:auto}.tht-language-switcher a span{display:none}.tht-article-hero,.tht-article-hero.is-feature{grid-template-columns:1fr}.tht-hero-image{order:-1;min-height:330px}.tht-article-heading h1{font-size:clamp(42px,12vw,68px)}.tht-meta-grid{grid-template-columns:repeat(2,1fr)}.tht-meta-grid>:last-child:nth-child(odd){grid-column:1/-1}.tht-profile-card{float:none;width:100%;margin:20px 0}.tht-nutrition-grid{grid-template-columns:repeat(2,1fr)}.tht-archive-grid{display:grid;grid-template-columns:1fr}.tht-archive-card,.tht-archive-card:nth-child(5n+1),.tht-archive-card:nth-child(5n+2){grid-column:auto}.tht-site-footer{display:grid}.tht-article-tools{width:100%;justify-content:flex-start}.tht-article-tools span{display:none}.tht-section-title{font-size:34px}.tht-section-title:before{display:none}.tht-section-title:after{max-width:65px}.tht-ingredients-grid{grid-template-columns:1fr}}
@media(max-width:450px){.tht-topline{font-size:8px}.tht-masthead p{font-size:12px}.tht-hero-image{min-height:250px}.tht-article-heading h1{font-size:42px}.tht-intro{font-size:16px}.tht-meta-badge{min-height:44px}.tht-editorial-lead{margin-top:35px}.tht-copy-block{font-size:17px}.tht-method li label{grid-template-columns:37px 1fr}.tht-step-number{width:35px;height:35px}.tht-premium-gate{padding:30px 17px}.tht-premium-gate h2{font-size:38px}.tht-card-grid,.tht-calendar-grid{grid-template-columns:1fr}.tht-serving-bar{flex-wrap:wrap}.tht-site-footer strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Public website shell v0.3.0 */
:root{
  --tht-paper-deep:#ebe3d0;
  --tht-sage:#cad3be;
  --tht-sage-light:#dde4d4;
  --tht-cream:#f8f3e6;
  --tht-shadow:0 18px 50px rgba(40,38,31,.12);
  --tht-shell-gap:clamp(28px,5vw,72px);
}
[hidden]{display:none!important}
body{overflow-x:hidden;background:linear-gradient(90deg,#d6d1c4,#e4dfd3 50%,#d6d1c4)}
button,input,select{font:inherit}
a,button,input,select,summary{outline-offset:4px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--tht-mustard);outline-offset:3px}
.tht-site-header,.tht-paper,.tht-site-footer{width:min(100%,var(--tht-max));margin-inline:auto}
.tht-site-header{position:relative;background:var(--tht-paper);padding:clamp(12px,2.2vw,24px) clamp(16px,4vw,54px) 0;border-bottom:5px double var(--tht-ink);box-shadow:0 1px 0 rgba(255,255,255,.65)}
.tht-issue-line{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;border-block:1px solid var(--tht-ink);padding:7px 0;font:700 clamp(8px,.72vw,10px)/1.25 Georgia,serif;text-transform:uppercase;letter-spacing:.14em}
.tht-issue-line span:nth-child(2){text-align:center;color:var(--tht-green-dark)}
.tht-issue-line time{text-align:right}
.tht-masthead-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,4fr) minmax(100px,1fr);align-items:center;gap:18px;padding:12px 0 10px}
.tht-masthead{padding:0;text-align:center;min-width:0}
.tht-masthead>a{font-size:clamp(48px,8.1vw,110px);line-height:.84;white-space:nowrap}
.tht-masthead p{max-width:720px;margin-top:10px;font-size:clamp(11px,1.15vw,15px)}
.tht-header-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;min-width:0}
.tht-header-button{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--tht-soft-rule);background:rgba(255,255,255,.24);padding:8px 10px;color:var(--tht-ink);font:800 9px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}
.tht-header-button:hover{background:var(--tht-raised)}
.tht-header-icon{width:18px;height:18px;flex:0 0 auto}
.tht-menu-toggle{visibility:hidden;justify-self:start}
.tht-header-languages .tht-language-switcher{justify-content:flex-end}
.tht-header-languages .tht-language-switcher a{padding:6px;border-color:transparent;background:transparent}
.tht-header-languages .tht-language-switcher a span{display:none}
.tht-header-languages .tht-language-switcher a[aria-current=page]{background:var(--tht-green-dark);color:#fff}
.tht-desktop-navigation{border-top:1px solid var(--tht-ink)}
.tht-primary-nav{padding:11px 0 12px;border-top:0;gap:clamp(16px,3vw,42px)}
.tht-primary-nav a{position:relative;padding:4px 0}
.tht-primary-nav a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--tht-green-dark)}
.tht-mobile-panel{position:absolute;z-index:80;top:100%;left:clamp(10px,3vw,36px);right:clamp(10px,3vw,36px);padding:18px;background:var(--tht-raised);border:1px solid var(--tht-ink);box-shadow:var(--tht-shadow)}
.tht-mobile-panel__top{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--tht-ink);font:800 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}
.tht-mobile-panel__top button{display:grid;place-items:center;border:0;background:transparent;padding:5px;cursor:pointer}
.tht-mobile-nav{display:grid;margin:12px 0}
.tht-mobile-nav a{padding:11px 2px;border-bottom:1px dotted var(--tht-rule);text-decoration:none;font:600 clamp(26px,8vw,38px)/1 Georgia,serif}
.tht-mobile-nav a[aria-current=page]{color:var(--tht-green);padding-left:12px;border-left:5px solid var(--tht-green)}
.tht-mobile-search-link{display:flex;align-items:center;gap:10px;padding:12px;background:var(--tht-green-dark);color:#fff;text-decoration:none;font:800 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}
.tht-mobile-language-block{display:grid;gap:8px;margin-top:18px}
.tht-mobile-language-block>span{font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}
.tht-mobile-language-block .tht-language-switcher{flex-wrap:wrap}
.tht-mobile-language-block .tht-language-switcher a{flex:1;justify-content:center;min-width:90px}
.tht-search-panel{position:absolute;z-index:85;left:clamp(16px,4vw,54px);right:clamp(16px,4vw,54px);top:100%;display:grid;grid-template-columns:1fr auto;gap:16px;padding:22px;background:var(--tht-raised);border:1px solid var(--tht-ink);box-shadow:var(--tht-shadow)}
.tht-search-panel form label{display:block;margin-bottom:8px;font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}
.tht-search-panel form>div{display:grid;grid-template-columns:1fr auto}
.tht-search-panel input,.tht-search-form-large input{min-width:0;border:1px solid var(--tht-ink);background:var(--tht-paper);padding:13px 14px;color:var(--tht-ink);font:18px Georgia,serif}
.tht-search-panel form button,.tht-search-form-large button{border:1px solid var(--tht-green-dark);background:var(--tht-green-dark);color:#fff;padding:13px 18px;font:800 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}
.tht-search-close{align-self:start;display:grid;place-items:center;border:0;background:transparent;padding:6px;cursor:pointer}

.tht-paper{padding:clamp(24px,4vw,54px);background-color:var(--tht-paper);background-image:radial-gradient(rgba(40,38,31,.035) .7px,transparent .7px);background-size:5px 5px}
.tht-preview-notice,.tht-preview-entry{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:11px 14px;border:1px solid var(--tht-mustard);background:#f6e6b5;font:12px/1.45 Arial,sans-serif}
.tht-preview-notice p{margin:0}.tht-preview-notice a,.tht-preview-entry a{font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.tht-preview-entry{justify-content:center;background:var(--tht-raised);border-color:var(--tht-soft-rule)}
.tht-fixture-label{position:absolute;top:12px;right:12px;padding:6px 8px;background:var(--tht-ink);color:#fff;font:800 8px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}

.tht-homepage{display:grid;gap:clamp(54px,8vw,110px)}
.tht-home-lead{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:stretch;padding-bottom:var(--tht-shell-gap);border-bottom:5px double var(--tht-ink)}
.tht-home-lead__copy{align-self:center;min-width:0}
.tht-home-lead__copy h1,.tht-home-lead__empty h1{margin:11px 0 18px;font:600 clamp(48px,6.6vw,92px)/.92 Georgia,serif;letter-spacing:-.052em;text-wrap:balance}
.tht-home-lead__intro{font:italic clamp(16px,1.55vw,21px)/1.55 Georgia,serif;color:#554f45}
.tht-home-lead__intro p{margin:0}
.tht-home-lead__meta{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin:24px 0}
.tht-home-lead__meta>span:not(.tht-access-badge){font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}
.tht-primary-link,.tht-text-link{display:inline-flex;align-items:center;gap:8px;text-underline-offset:4px;font:800 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}
.tht-primary-link{padding:12px 16px;background:var(--tht-green-dark);color:#fff;text-decoration:none}
.tht-inline-icon{width:17px;height:17px;flex:0 0 auto}
.tht-home-lead__image{position:relative;margin:0;min-height:460px;overflow:hidden;background:var(--tht-paper-deep)}
.tht-home-lead__image img{width:100%;height:100%;display:block;object-fit:cover;transform:scale(1.012)}
.tht-home-lead__image figcaption{position:absolute;left:0;right:0;bottom:0;padding:10px 13px;background:linear-gradient(transparent,rgba(29,30,24,.7));color:#fff;font:italic 11px Georgia,serif;text-align:right}
.tht-living-frame.is-visible img{animation:tht-gentle-drift 16s ease-in-out infinite alternate}
.tht-living-frame:hover img{animation-play-state:paused}
@keyframes tht-gentle-drift{from{transform:scale(1.012) translate3d(0,0,0)}to{transform:scale(1.055) translate3d(-.6%,.4%,0)}}
.tht-home-lead__empty{grid-column:1/-1;text-align:center;padding:clamp(35px,7vw,80px)}
.tht-home-lead__empty>p{font:italic 20px Georgia,serif}

.tht-home-desk,.tht-selected-desk{display:grid;grid-template-columns:minmax(210px,.28fr) minmax(0,.72fr);gap:clamp(28px,4vw,54px);align-items:start}
.tht-desk-heading{position:sticky;top:18px}
.tht-desk-heading>span,.tht-editor-note>span,.tht-page-newsletter>span{display:block;font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.18em;color:var(--tht-green-dark)}
.tht-desk-heading h2,.tht-editor-note h2,.tht-page-newsletter h2{margin:10px 0 13px;font:600 clamp(34px,4.6vw,64px)/.98 Georgia,serif;letter-spacing:-.035em;text-wrap:balance}
.tht-desk-heading p{font:16px/1.55 Georgia,serif}
.tht-desk-heading>a{display:inline-block;margin-top:10px;font:800 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;text-underline-offset:4px}
.tht-home-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,38px)}
.tht-story-card{min-width:0;border-top:4px solid var(--tht-ink);padding-top:9px}
.tht-story-card.is-feature{grid-row:span 2}
.tht-story-card__image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--tht-paper-deep)}
.tht-story-card.is-feature .tht-story-card__image{aspect-ratio:4/5}
.tht-story-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.tht-story-card__image:hover img{transform:scale(1.025)}
.tht-image-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:180px;padding:20px;color:#756d60;text-align:center;font:italic 14px Georgia,serif}
.tht-story-card__copy{padding-top:12px}
.tht-story-card__meta{display:flex;justify-content:space-between;gap:10px;color:var(--tht-green-dark);font:800 8px Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}
.tht-story-card__copy h3{margin:8px 0;font:600 clamp(25px,2.7vw,40px)/1 Georgia,serif;letter-spacing:-.025em;text-wrap:balance}
.tht-story-card__copy h3 a{text-decoration:none}
.tht-story-card__copy p{margin:9px 0 14px;font:15px/1.5 Georgia,serif;color:#4e493f}
.tht-empty-desk{grid-column:1/-1;padding:30px;border:1px dashed var(--tht-rule);background:rgba(255,249,234,.48);text-align:center;font:italic 17px Georgia,serif}

.tht-home-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:clamp(32px,5vw,70px);align-items:start;padding-block:clamp(36px,6vw,70px);border-block:1px solid var(--tht-ink)}
.tht-pantry-desk{display:grid;grid-template-columns:minmax(190px,.36fr) minmax(0,.64fr);gap:30px}
.tht-pantry-desk .tht-desk-heading{position:static}
.tht-pantry-list{display:grid;gap:22px}
.tht-story-card.is-compact{display:grid;grid-template-columns:145px minmax(0,1fr);gap:16px;border-top-width:1px;padding-top:12px}
.tht-story-card.is-compact .tht-story-card__image{aspect-ratio:1}
.tht-story-card.is-compact .tht-story-card__copy{padding:0}
.tht-story-card.is-compact h3{font-size:clamp(22px,2.4vw,31px)}
.tht-story-card.is-compact p{display:none}
.tht-editor-note{padding:clamp(24px,4vw,42px);background:var(--tht-custard);border:5px double var(--tht-ink);transform:rotate(.3deg)}
.tht-editor-note h2{font-size:clamp(34px,4.1vw,56px)}
.tht-editor-note p{font:italic clamp(17px,1.6vw,21px)/1.55 Georgia,serif}
.tht-editor-note small{display:block;margin-top:25px;padding-top:12px;border-top:1px solid var(--tht-ink);font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}

.tht-garden-desk{margin-inline:calc(clamp(24px,4vw,54px) * -1);padding:clamp(38px,6vw,76px) clamp(24px,4vw,54px);background:var(--tht-green-dark);color:#f9f4e8;display:grid;grid-template-columns:minmax(210px,.28fr) minmax(0,.72fr);gap:clamp(28px,4vw,54px)}
.tht-desk-heading.is-inverse>span{color:var(--tht-lemon)}
.tht-desk-heading.is-inverse p{color:rgba(255,255,255,.76)}
.tht-garden-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tht-garden-grid .tht-story-card{border-color:rgba(255,255,255,.7)}
.tht-story-card.is-garden-feature{grid-column:1/-1;display:grid;grid-template-columns:1.15fr .85fr;gap:25px}
.tht-story-card.is-garden-feature .tht-story-card__image{aspect-ratio:16/9}
.tht-garden-grid .tht-story-card__meta{color:var(--tht-lemon)}
.tht-garden-grid .tht-story-card__copy p{color:rgba(255,255,255,.72)}
.tht-garden-grid .tht-text-link{color:#fff}

.tht-selected-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,35px)}
.tht-story-card.is-selected:nth-child(2){margin-top:42px}
.tht-story-card.is-selected:nth-child(3){margin-top:84px}

.tht-site-footer{display:block;padding:0;background:#292e26;color:#fff;border-top:7px double var(--tht-custard)}
.tht-footer-newsletter{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,70px);align-items:center;padding:clamp(32px,5vw,60px) clamp(20px,4vw,54px);background:#3b4736;border-bottom:1px solid rgba(255,255,255,.22)}
.tht-footer-newsletter>div>span{font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.17em;color:var(--tht-lemon)}
.tht-footer-newsletter h2{margin:8px 0;font:600 clamp(31px,4.4vw,57px)/1 Georgia,serif;letter-spacing:-.035em}
.tht-footer-newsletter p{max-width:620px;color:rgba(255,255,255,.74);font:15px/1.5 Georgia,serif}
.tht-newsletter-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}
.tht-newsletter-form label{display:grid;gap:7px}
.tht-newsletter-form label span{font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}
.tht-newsletter-form input{width:100%;border:1px solid currentColor;background:var(--tht-paper);color:var(--tht-ink);padding:13px;font:17px Georgia,serif}
.tht-newsletter-form button{display:flex;align-items:center;gap:7px;border:1px solid var(--tht-lemon);background:var(--tht-lemon);color:var(--tht-ink);padding:13px 16px;font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.11em;cursor:pointer}
.tht-form-status{grid-column:1/-1;min-height:1.3em;margin:0;color:var(--tht-custard);font:italic 12px Georgia,serif}
.tht-footer-grid{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:clamp(25px,4vw,55px);padding:clamp(32px,5vw,58px) clamp(20px,4vw,54px)}
.tht-footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.tht-footer-grid h3{margin:0 0 8px;color:var(--tht-custard);font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em}
.tht-footer-grid a{color:rgba(255,255,255,.78);font:13px/1.4 Georgia,serif;text-underline-offset:4px}
.tht-footer-grid .tht-mobile-nav{margin:0;display:flex;flex-direction:column;gap:9px}
.tht-footer-grid .tht-mobile-nav a{padding:0;border:0;color:rgba(255,255,255,.78);font:13px/1.4 Georgia,serif}
.tht-footer-grid .tht-mobile-nav a[aria-current=page]{padding:0;border:0;color:#fff}
.tht-footer-brand strong{font:600 clamp(27px,3vw,40px)/1 Georgia,serif}
.tht-footer-brand p{margin:4px 0;max-width:300px;color:rgba(255,255,255,.72);font:italic 14px/1.45 Georgia,serif}
.tht-footer-brand span{color:rgba(255,255,255,.55);font:11px/1.45 Arial,sans-serif}
.tht-footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:14px clamp(20px,4vw,54px);border-top:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.58);font:9px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}

.tht-archive-header{padding-top:clamp(12px,3vw,35px)}
.tht-archive-header h1{font-size:clamp(58px,9vw,118px)}
.tht-filter-bar{display:flex;align-items:end;flex-wrap:wrap;gap:13px;margin:32px 0 38px;padding:15px;border-block:1px solid var(--tht-ink);background:rgba(255,249,234,.4)}
.tht-filter-bar label{display:grid;gap:5px;min-width:160px}
.tht-filter-bar label span{font:800 8px Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em}
.tht-filter-bar select{border:1px solid var(--tht-ink);background:var(--tht-paper);padding:9px 28px 9px 10px;color:var(--tht-ink)}
.tht-filter-bar button{border:1px solid var(--tht-ink);background:transparent;padding:10px 12px;cursor:pointer;font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}
.tht-filter-bar p{margin:0 0 9px auto;font:italic 12px Georgia,serif}
.tht-archive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(25px,3vw,40px)}
.tht-archive-grid .tht-story-card{grid-column:auto!important}
.tht-archive-grid .tht-story-card:nth-child(7n+1){grid-column:span 2!important}
.tht-archive-grid .tht-story-card:nth-child(7n+1) .tht-story-card__image{aspect-ratio:16/9}
.tht-filter-empty{text-align:center;padding:45px;font:italic 19px Georgia,serif}

.tht-search-form-large{width:min(100%,850px);margin:35px auto 55px}
.tht-search-form-large>label{display:block;margin-bottom:8px;font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}
.tht-search-form-large>div{display:grid;grid-template-columns:1fr auto}
.tht-search-results{display:grid;gap:28px}
.tht-search-results .tht-desk-heading{position:static;text-align:center}
.tht-search-results .tht-desk-heading h2{font-size:clamp(38px,5vw,65px)}

.tht-static-page{display:grid;grid-template-columns:minmax(0,.72fr) minmax(280px,.28fr);gap:clamp(35px,6vw,90px);align-items:start}
.tht-static-hero{position:sticky;top:20px;padding:clamp(25px,5vw,56px) 0;border-block:4px double var(--tht-ink)}
.tht-static-hero>span{font:800 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.17em;color:var(--tht-green-dark)}
.tht-static-hero h1{margin:11px 0 18px;font:600 clamp(52px,7vw,94px)/.92 Georgia,serif;letter-spacing:-.05em;text-wrap:balance}
.tht-static-hero p{font:italic clamp(17px,1.8vw,22px)/1.55 Georgia,serif;color:#514c42}
.tht-static-sections{display:grid;gap:18px;padding-top:clamp(25px,5vw,56px)}
.tht-static-sections section{padding:22px;background:var(--tht-raised);border-top:5px solid var(--tht-green-dark)}
.tht-static-sections h2{margin:0 0 9px;font:600 clamp(25px,3vw,38px)/1 Georgia,serif}
.tht-static-sections p{margin:0;font:15px/1.65 Georgia,serif}
.tht-page-newsletter{grid-column:1/-1;padding:clamp(28px,5vw,55px);background:var(--tht-green-dark);color:#fff;border:5px double var(--tht-custard)}
.tht-page-newsletter .tht-newsletter-form{margin-top:25px}

.tht-not-found{width:min(100%,760px);margin:35px auto;text-align:center;padding:clamp(35px,7vw,75px);border:5px double var(--tht-ink);background:var(--tht-raised)}
.tht-not-found>span{font:800 10px Arial,sans-serif;letter-spacing:.2em;color:var(--tht-green-dark)}
.tht-not-found h1{margin:10px 0;font:600 clamp(45px,7vw,82px)/.95 Georgia,serif;letter-spacing:-.045em}
.tht-not-found>p{font:italic 19px/1.5 Georgia,serif}
.tht-not-found .tht-search-form-large{margin:28px auto}

/* Integrate locked article layouts with the shell. */
.tht-article-language,.tht-archive-language{display:none}
.tht-article-tools{z-index:50}
.tht-article-heading h1{text-wrap:balance}

@media(max-width:1050px){
  .tht-masthead-row{grid-template-columns:auto minmax(0,1fr) auto}
  .tht-menu-toggle{visibility:visible}
  .tht-desktop-navigation{display:none}
  .tht-header-languages{display:none}
  .tht-home-desk,.tht-selected-desk,.tht-garden-desk{grid-template-columns:1fr}
  .tht-desk-heading{position:static;max-width:720px}
  .tht-garden-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tht-story-card.is-garden-feature{grid-template-columns:1fr;grid-column:1/-1}
  .tht-home-split{grid-template-columns:1fr}
  .tht-pantry-desk{grid-template-columns:minmax(190px,.32fr) minmax(0,.68fr)}
  .tht-footer-grid{grid-template-columns:1.4fr repeat(2,1fr)}
  .tht-footer-grid>div:last-child{grid-column:2}
}
@media(max-width:780px){
  .tht-site-header,.tht-paper,.tht-site-footer{width:100%}
  .tht-site-header{padding-inline:16px}
  .tht-issue-line{grid-template-columns:1fr auto}
  .tht-issue-line span:nth-child(2){display:none}
  .tht-issue-line time{display:block}
  .tht-masthead-row{gap:8px;padding:10px 0}
  .tht-masthead>a{font-size:clamp(42px,12vw,68px);white-space:normal}
  .tht-masthead p{font-size:11px}
  .tht-header-button span{display:none}
  .tht-header-button{padding:8px}
  .tht-mobile-panel{left:8px;right:8px}
  .tht-search-panel{left:8px;right:8px;grid-template-columns:1fr auto;padding:15px}
  .tht-search-panel form>div,.tht-search-form-large>div{grid-template-columns:1fr}
  .tht-search-panel form button,.tht-search-form-large button{width:100%}
  .tht-paper{padding:24px 16px 45px}
  .tht-homepage{gap:65px}
  .tht-home-lead{grid-template-columns:1fr;gap:25px}
  .tht-home-lead__image{order:-1;min-height:330px}
  .tht-home-lead__copy h1,.tht-home-lead__empty h1{font-size:clamp(43px,12vw,66px)}
  .tht-home-card-grid{grid-template-columns:1fr}
  .tht-story-card.is-feature{grid-row:auto}
  .tht-story-card.is-feature .tht-story-card__image{aspect-ratio:4/3}
  .tht-home-split,.tht-pantry-desk{grid-template-columns:1fr}
  .tht-story-card.is-compact{grid-template-columns:110px minmax(0,1fr)}
  .tht-garden-desk{margin-inline:-16px;padding-inline:16px}
  .tht-garden-grid{grid-template-columns:1fr}
  .tht-selected-grid{grid-template-columns:1fr}
  .tht-story-card.is-selected:nth-child(2),.tht-story-card.is-selected:nth-child(3){margin-top:0}
  .tht-footer-newsletter{grid-template-columns:1fr}
  .tht-newsletter-form{grid-template-columns:1fr}
  .tht-newsletter-form button{justify-content:center}
  .tht-footer-grid{grid-template-columns:1fr 1fr}
  .tht-footer-grid>div:last-child{grid-column:auto}
  .tht-footer-brand{grid-column:1/-1}
  .tht-footer-bottom{display:grid}
  .tht-filter-bar{align-items:stretch}
  .tht-filter-bar label{flex:1;min-width:130px}
  .tht-filter-bar p{width:100%;margin:4px 0 0}
  .tht-archive-grid{grid-template-columns:1fr}
  .tht-archive-grid .tht-story-card:nth-child(7n+1){grid-column:auto!important}
  .tht-static-page{grid-template-columns:1fr}
  .tht-static-hero{position:static}
}
@media(max-width:460px){
  .tht-issue-line{font-size:7.5px;letter-spacing:.08em}
  .tht-masthead-row{grid-template-columns:36px minmax(0,1fr) 36px}
  .tht-masthead>a{font-size:39px}
  .tht-masthead p{display:none}
  .tht-header-actions{justify-content:end}
  .tht-search-panel{grid-template-columns:1fr}
  .tht-search-close{position:absolute;right:8px;top:8px}
  .tht-search-panel form{padding-top:20px}
  .tht-home-lead__image{min-height:260px}
  .tht-story-card.is-compact{grid-template-columns:1fr}
  .tht-story-card.is-compact .tht-story-card__image{aspect-ratio:16/9}
  .tht-footer-grid{grid-template-columns:1fr}
  .tht-footer-brand{grid-column:auto}
  .tht-filter-bar label{width:100%}
  .tht-preview-notice{display:grid}
}
@media(prefers-reduced-motion:reduce){
  .tht-living-frame.is-visible img,.tht-living-frame img{animation:none!important;transform:none!important}
  .tht-story-card__image img{transition:none}
}

.tht-related .tht-module-link-label{display:inline-block;margin-top:8px;font:800 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:var(--tht-green-dark);text-decoration:underline;text-underline-offset:4px}


/* Roy-locked homepage and utility system v0.4.0 */

    :root{
      /* Locked newspaper surfaces from the original demos */
      --paper:#F6F1E5;
      --paper-deep:#EDE6D5;
      --paper-light:#FBF8EF;
      --preview:#D7D2C7;
      --rule:#BDB7A8;

      /* Approved THT palette v2 */
      --lemon:#E8B53E;
      --mocha:#562909;
      --green:#4A6412;
      --custard:#E4C171;
      --mustard:#BE7B21;

      /* Requested homepage ink override */
      --ink:#252824;
      --muted:#62635C;
      --green-soft:#E5E9D8;
      --red:#8E4538;
      --serif:"Libre Caslon Text",Georgia,serif;
      --display:"Libre Caslon Display",Georgia,serif;
      --sans:"DM Sans",Arial,sans-serif;
      --mono:"Roboto Mono",monospace;
      --max:1240px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      color:var(--ink);
      background:
        radial-gradient(circle at 30% 20%,rgba(255,255,255,.45),transparent 28rem),
        linear-gradient(rgba(29,36,27,.018) 1px,transparent 1px),
        var(--paper);
      background-size:auto,100% 4px,auto;
      font-family:var(--serif);
    }
    button,input{font:inherit}
    a{color:inherit}
    img{display:block;width:100%}
    .site-shell{min-height:100vh}
    .section-wrap{width:min(calc(100% - 40px),var(--max));margin:auto}
    .eyebrow,.meta,.topbar,.filters,.caption,.card-meta,.footer-small{
      font-family:var(--mono);
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:.72rem;
    }
    .topbar{
      border-bottom:1px solid var(--rule);
      background:rgba(245,240,228,.96);
      position:sticky;
      top:0;
      z-index:30;
      backdrop-filter:blur(8px);
    }
    .topbar-inner{
      width:min(calc(100% - 40px),var(--max));
      margin:auto;
      min-height:70px;
      display:grid;
      grid-template-columns:minmax(max-content,1fr) minmax(260px,520px) auto;
      align-items:center;
      gap:clamp(18px,2.4vw,38px);
    }
    .menu-button{display:none}
    .nav{display:flex;gap:clamp(20px,2.1vw,38px);justify-content:flex-start;white-space:nowrap}
    .nav a{
      text-decoration:none;
      font-weight:700;
    }
    .nav a:hover{text-decoration:underline;text-underline-offset:4px}
    .top-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;white-space:nowrap}

    .header-search{
      width:100%;
      display:grid;
      grid-template-columns:20px minmax(0,1fr) auto;
      align-items:center;
      gap:10px;
      min-height:42px;
      padding:0 12px;
      border-bottom:1px solid var(--ink);
      background:rgba(251,248,239,.45);
    }
    .header-search svg{width:17px;height:17px;stroke:currentColor}
    .header-search input{
      min-width:0;
      border:0;
      outline:0;
      background:transparent;
      color:var(--ink);
      font-family:var(--mono);
      font-size:.72rem;
      letter-spacing:.08em;
      text-transform:uppercase;
      padding:10px 0;
    }
    .header-search input::placeholder{color:var(--muted);opacity:1}
    .header-search button{
      border:0;
      background:transparent;
      color:var(--ink);
      padding:7px 0 7px 10px;
      cursor:pointer;
      font-family:var(--mono);
      font-size:.68rem;
      letter-spacing:.08em;
      text-transform:uppercase;
    }
    .header-search:focus-within{
      box-shadow:inset 0 -3px 0 var(--lemon);
    }

    .language-switch{
      display:flex;
      align-items:center;
      gap:14px;
      background:transparent;
    }
    .language-switch a{
      position:relative;
      border:0;
      background:transparent;
      min-height:42px;
      padding:7px 0;
      cursor:pointer;
      font-family:var(--mono);
      font-size:.68rem;
      display:inline-flex;
      align-items:center;
      gap:7px;
      color:var(--ink);
    }
    .language-switch .flag{
      width:20px;
      height:13px;
      display:inline-flex;
      overflow:hidden;
      border:0;
      background:transparent;
      box-shadow:none;
      flex:0 0 auto;
    }
    .language-switch .flag svg,
    .language-switch .flag .tht-flag{
      display:block;
      width:100%;
      height:100%;
      border:0;
      background:transparent;
      box-shadow:none;
    }
    .language-switch a::after{
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:4px;
      height:2px;
      background:transparent;
    }
    .language-switch a.active{
      background:transparent;
      color:var(--ink);
    }
    .language-switch a.active::after{
      background:var(--ink);
    }
    .subscribe-link{
      text-decoration:none;
      background:var(--lemon);
      padding:9px 13px;
      font-family:var(--sans);
      font-weight:600;
      font-size:.78rem;
    }


    .almanac-strip{
      width:100%;
      display:grid;
      grid-template-columns:auto minmax(0,1fr) auto;
      align-items:center;
      gap:18px;
      border:0;
      border-bottom:1px solid var(--rule);
      background:transparent;
      color:var(--ink);
      padding:9px 0 10px;
      cursor:pointer;
      text-align:left;
    }
    .almanac-strip:hover .almanac-strip-copy,
    .almanac-strip:focus-visible .almanac-strip-copy{
      text-decoration:underline;
      text-underline-offset:4px;
    }
    .almanac-strip-label{
      font-weight:500;
      white-space:nowrap;
    }
    .almanac-strip-copy{
      min-width:0;
      overflow:hidden;
      white-space:nowrap;
      text-overflow:ellipsis;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      text-align:center;
    }
    .almanac-ticker-moon{
      min-width:0;
      display:inline-flex;
      align-items:center;
      gap:6px;
    }
    .almanac-ticker-moon-icon{
      width:19px;
      height:19px;
      display:inline-flex;
      flex:0 0 auto;
      color:var(--ink);
    }
    .almanac-ticker-moon-icon svg{
      width:100%;
      height:100%;
      display:block;
      fill:none;
      stroke:currentColor;
      stroke-width:1.45;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    .almanac-strip-arrow{
      font-size:1rem;
      transition:transform .2s ease;
    }
    .almanac-strip[aria-expanded="true"] .almanac-strip-arrow{transform:rotate(180deg)}
    .almanac-panel{
      position:absolute;
      top:118px;
      left:0;
      z-index:61;
      width:min(760px,calc(100vw - 40px));
      max-height:min(690px,calc(100vh - 142px));
      overflow:auto;
      overscroll-behavior:contain;
      border:1px solid var(--ink);
      border-top:3px double var(--ink);
      background:var(--paper-light);
      padding:22px 24px 24px;
      box-shadow:0 20px 55px rgba(37,40,36,.18);
    }
    .almanac-panel[hidden]{display:none}
    .almanac-panel-head{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:22px;
    }
    .almanac-panel-head h2{
      margin:5px 0 8px;
      font-family:var(--display);
      font-size:clamp(1.9rem,2.6vw,3rem);
      line-height:1;
      font-weight:400;
    }
    .almanac-panel-head p{margin:0}
    .almanac-close{
      border:1px solid var(--ink);
      background:transparent;
      color:var(--ink);
      padding:9px 12px;
      cursor:pointer;
      font-family:var(--mono);
      text-transform:uppercase;
      letter-spacing:.06em;
      font-size:.68rem;
    }
    .almanac-date-line{
      display:flex;
      justify-content:space-between;
      gap:20px;
      margin:18px 0 0;
      padding:10px 0;
      border-top:1px solid var(--ink);
      border-bottom:1px solid var(--rule);
      font-family:var(--mono);
      font-size:.68rem;
      letter-spacing:.06em;
      text-transform:uppercase;
    }
    .almanac-metrics{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      border-left:1px solid var(--rule);
      border-top:1px solid var(--rule);
      margin-top:18px;
    }
    .almanac-metric{
      min-width:0;
      display:grid;
      justify-items:center;
      align-content:start;
      gap:7px;
      text-align:center;
      padding:15px 10px;
      border-right:1px solid var(--rule);
      border-bottom:1px solid var(--rule);
    }
    .almanac-metric strong{
      font-family:var(--display);
      font-size:1.35rem;
      line-height:1.1;
      font-weight:400;
    }
    .almanac-line-icon{
      width:40px;
      height:31px;
      color:var(--ink);
    }
    .almanac-line-icon svg{
      width:100%;
      height:100%;
      fill:none;
      stroke:currentColor;
      stroke-width:1.5;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    .almanac-notes{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:0;
      margin-top:20px;
      border-top:1px solid var(--ink);
      border-left:1px solid var(--rule);
    }
    .almanac-notes article{
      padding:18px;
      border-right:1px solid var(--rule);
      border-bottom:1px solid var(--rule);
    }
    .almanac-notes h3{
      margin:7px 0 8px;
      font-family:var(--display);
      font-size:1.55rem;
      font-weight:400;
      line-height:1.05;
    }
    .almanac-notes p:last-child{
      margin:0;
      line-height:1.55;
    }
    .czech-calendar{
      margin-top:20px;
      border:1px solid var(--ink);
      border-left:5px solid var(--lemon);
      background:
        linear-gradient(rgba(232,181,62,.07),rgba(232,181,62,.07)),
        var(--paper);
      padding:18px;
    }
    .czech-calendar[hidden]{display:none}
    .czech-calendar-head{
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      gap:18px;
    }
    .czech-calendar h3{
      margin:5px 0 0;
      font-family:var(--display);
      font-size:1.75rem;
      font-weight:400;
      line-height:1.05;
    }
    .calendar-stamp{
      border:1px solid var(--ink);
      padding:8px 10px;
      font-family:var(--mono);
      font-size:.72rem;
      letter-spacing:.05em;
      white-space:nowrap;
    }
    .czech-calendar > p{
      margin:12px 0 0;
      line-height:1.5;
    }
    .czech-next-holiday{
      padding-top:11px;
      border-top:1px solid var(--rule);
    }
    .almanac-source-note{
      color:var(--muted);
      font-size:.76rem;
    }
    .almanac-status{
      min-height:1.2em;
      margin:12px 0 0;
      font-family:var(--mono);
      font-size:.65rem;
      letter-spacing:.04em;
      text-transform:uppercase;
    }

    .weather-trigger{
      justify-self:end;
      border:0;
      background:transparent;
      padding:4px 0;
      color:var(--ink);
      display:inline-flex;
      align-items:center;
      gap:8px;
      cursor:pointer;
      font:inherit;
      text-transform:inherit;
      letter-spacing:inherit;
    }
    .weather-trigger:hover .weather-trigger-current,
    .weather-trigger:focus-visible .weather-trigger-current{
      text-decoration:underline;
      text-underline-offset:4px;
    }
    .weather-trigger-current{
      display:inline-flex;
      align-items:center;
      justify-content:flex-end;
      gap:8px;
      min-width:0;
    }
    .weather-trigger-mini-icon{
      display:inline-flex;
      width:25px;
      height:19px;
      flex:0 0 auto;
      color:var(--ink);
    }
    .weather-trigger-mini-icon svg{
      width:100%;
      height:100%;
      display:block;
      fill:none;
      stroke:currentColor;
      stroke-width:1.7;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    .weather-trigger-icon{
      font-size:1rem;
      transition:transform .2s ease;
    }
    .weather-trigger[aria-expanded="true"] .weather-trigger-icon{transform:rotate(180deg)}
    .weather-panel{
      position:absolute;
      top:118px;
      right:0;
      z-index:60;
      width:min(780px,calc(100vw - 40px));
      max-height:min(690px,calc(100vh - 118px));
      overflow:auto;
      overscroll-behavior:contain;
      border:1px solid var(--ink);
      border-top:3px double var(--ink);
      background:var(--paper-light);
      padding:22px 24px 24px;
      box-shadow:0 20px 55px rgba(37,40,36,.18);
    }
    .weather-panel[hidden]{display:none}
    .weather-panel-head,
    .weather-section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:20px;
    }
    .weather-panel-head h2{
      font-family:var(--display);
      font-size:clamp(1.8rem,2.5vw,2.8rem);
      line-height:1;
      font-weight:400;
      margin:5px 0 7px;
    }
    .weather-panel-head p,
    .weather-section-head p{margin:0}
    .weather-actions{display:flex;gap:10px;align-items:center}
    .weather-location-button,
    .weather-close{
      border:1px solid var(--ink);
      background:transparent;
      color:var(--ink);
      padding:9px 12px;
      cursor:pointer;
      font-family:var(--mono);
      text-transform:uppercase;
      letter-spacing:.06em;
      font-size:.68rem;
    }
    .weather-location-button{background:var(--lemon);border-color:var(--lemon)}
    .weather-location-picker{
      margin-top:16px;
      border-top:1px solid var(--ink);
      border-bottom:1px solid var(--ink);
      background:var(--paper);
      padding:18px;
    }
    .weather-location-picker[hidden]{display:none}
    .location-picker-head{
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      gap:18px;
    }
    .location-picker-head h3{
      margin:5px 0 7px;
      font-family:var(--display);
      font-size:1.65rem;
      font-weight:400;
      line-height:1.05;
    }
    .location-picker-head p{margin:0}
    .location-picker-cancel{
      border:0;
      border-bottom:1px solid var(--ink);
      background:transparent;
      color:var(--ink);
      padding:3px 0;
      cursor:pointer;
      font-family:var(--mono);
      font-size:.64rem;
      letter-spacing:.06em;
      text-transform:uppercase;
    }
    .location-picker-options{
      display:grid;
      grid-template-columns:auto minmax(0,1fr);
      gap:18px;
      align-items:end;
      margin-top:16px;
    }
    .location-current-button{
      min-height:42px;
      border:1px solid var(--ink);
      background:transparent;
      color:var(--ink);
      padding:9px 12px;
      cursor:pointer;
      font-family:var(--mono);
      font-size:.66rem;
      letter-spacing:.05em;
      text-transform:uppercase;
    }
    .location-search-form label{
      display:block;
      margin-bottom:6px;
      font-family:var(--mono);
      font-size:.62rem;
      letter-spacing:.05em;
      text-transform:uppercase;
    }
    .location-search-row{
      display:grid;
      grid-template-columns:minmax(0,1fr) auto;
      border-bottom:1px solid var(--ink);
    }
    .location-search-row:focus-within{
      box-shadow:inset 0 -3px 0 var(--lemon);
    }
    .location-search-row input{
      min-width:0;
      border:0;
      outline:0;
      background:transparent;
      color:var(--ink);
      padding:10px 4px;
      font-family:var(--serif);
      font-size:.95rem;
    }
    .location-search-row button{
      border:0;
      background:transparent;
      color:var(--ink);
      padding:9px 4px 9px 14px;
      cursor:pointer;
      font-family:var(--mono);
      font-size:.64rem;
      letter-spacing:.05em;
      text-transform:uppercase;
    }
    .location-results{
      display:grid;
      gap:0;
      margin-top:14px;
      border-top:1px solid var(--rule);
    }
    .location-result{
      width:100%;
      display:grid;
      grid-template-columns:minmax(0,1fr) auto;
      gap:14px;
      align-items:center;
      border:0;
      border-bottom:1px solid var(--rule);
      background:transparent;
      color:var(--ink);
      text-align:left;
      padding:11px 4px;
      cursor:pointer;
    }
    .location-result:hover,
    .location-result:focus-visible{
      background:var(--green-soft);
      outline:none;
    }
    .location-result strong{
      display:block;
      font-family:var(--serif);
      font-size:.98rem;
    }
    .location-result span{
      display:block;
      margin-top:2px;
      color:var(--muted);
      font-family:var(--mono);
      font-size:.59rem;
      letter-spacing:.03em;
      text-transform:uppercase;
    }
    .location-result::after{
      content:"→";
      font-family:var(--mono);
    }
    .location-helper{
      margin:12px 0 0;
      color:var(--muted);
      font-size:.75rem;
      line-height:1.45;
    }
    .weather-summary{
      display:grid;
      grid-template-columns:78px 1fr;
      gap:18px;
      align-items:center;
      padding:16px 0;
      margin:16px 0 18px;
      border-top:1px solid var(--rule);
      border-bottom:1px solid var(--rule);
    }
    .weather-main-icon{
      width:70px;
      height:56px;
      color:var(--ink);
    }
    .weather-main-icon svg,
    .weather-icon svg{
      width:100%;
      height:100%;
      fill:none;
      stroke:currentColor;
      stroke-width:1.55;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    .weather-temp-line{
      display:flex;
      align-items:baseline;
      gap:20px;
      flex-wrap:wrap;
    }
    .weather-temp-line strong{
      font-family:var(--display);
      font-weight:400;
      font-size:clamp(2.8rem,4vw,4.5rem);
      line-height:.8;
    }
    .weather-temp-line span{
      font-family:var(--sans);
      font-weight:600;
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:.82rem;
    }
    .weather-editorial{
      max-width:760px;
      margin:14px 0 0;
      font-size:.98rem;
      line-height:1.55;
    }
    .weather-section-head{margin:0 0 12px}
    .weather-scroll-buttons{display:flex;gap:8px}
    .weather-scroll-buttons button{
      width:38px;
      height:38px;
      border:1px solid var(--ink);
      background:transparent;
      color:var(--ink);
      cursor:pointer;
      font-size:1rem;
    }
    .hourly-carousel{
      display:grid;
      grid-auto-flow:column;
      grid-auto-columns:92px;
      gap:0;
      overflow-x:auto;
      overscroll-behavior-inline:contain;
      scroll-snap-type:inline mandatory;
      border-top:1px solid var(--ink);
      border-left:1px solid var(--rule);
      scrollbar-width:thin;
      scrollbar-color:var(--ink) transparent;
    }
    .hour-card{
      scroll-snap-align:start;
      min-height:132px;
      padding:12px 10px 10px;
      border-right:1px solid var(--rule);
      border-bottom:1px solid var(--rule);
      text-align:center;
      background:rgba(246,241,229,.55);
    }
    .hour-card.is-now{background:var(--green-soft)}
    .hour-time,
    .hour-detail,
    .day-name{
      font-family:var(--mono);
      text-transform:uppercase;
      letter-spacing:.06em;
      font-size:.66rem;
    }
    .weather-icon{
      width:42px;
      height:34px;
      margin:12px auto 8px;
      color:var(--ink);
    }
    .hour-temp{
      font-family:var(--display);
      font-size:1.85rem;
      line-height:1;
    }
    .hour-detail{margin-top:8px;color:var(--muted)}
    .weekly-block{margin-top:28px}
    .weekly-heading{margin-bottom:12px}
    .weekly-grid{
      display:grid;
      grid-auto-flow:column;
      grid-auto-columns:112px;
      overflow-x:auto;
      overscroll-behavior-inline:contain;
      scroll-snap-type:inline mandatory;
      border-top:1px solid var(--ink);
      border-left:1px solid var(--rule);
      scrollbar-width:thin;
      scrollbar-color:var(--ink) transparent;
    }
    .day-card{
      min-width:0;
      padding:14px 9px;
      text-align:center;
      scroll-snap-align:start;
      border-right:1px solid var(--rule);
      border-bottom:1px solid var(--rule);
      background:rgba(246,241,229,.55);
    }
    .day-card.is-weekend{
      background:
        linear-gradient(rgba(232,181,62,.10),rgba(232,181,62,.10)),
        rgba(246,241,229,.65);
    }
    .day-card.is-today{background:var(--green-soft)}
    .day-note{
      margin-top:4px;
      font-family:var(--mono);
      font-size:.55rem;
      letter-spacing:.05em;
      text-transform:uppercase;
      color:var(--muted);
    }
    .day-card .weather-icon{width:46px;height:38px}
    .day-range{
      font-family:var(--display);
      font-size:1.35rem;
      margin-top:4px;
    }
    .day-detail{
      margin-top:7px;
      font-family:var(--mono);
      font-size:.62rem;
      letter-spacing:.04em;
      color:var(--muted);
    }
    .weather-status{min-height:1.4em;margin:14px 0 0;font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}
    .weather-source-note{margin:8px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}

    .masthead{position:relative;padding:30px 0 20px}
    .edition-line{
      display:grid;
      grid-template-columns:1fr auto 1fr;
      gap:20px;
      align-items:center;
      padding-bottom:13px;
      border-bottom:1px solid var(--ink);
    }
    .edition-line span:last-child{text-align:right}
    .brand{text-align:center;padding:18px 0 14px}
    .brand h1{
      margin:0;
      font-family:var(--display);
      font-weight:400;
      text-transform:uppercase;
      letter-spacing:.025em;
      font-size:clamp(3rem,8vw,7.7rem);
      line-height:.82;
    }
    .brand-tagline{
      margin:14px 0 3px;
      font-family:var(--sans);
      font-weight:600;
      letter-spacing:.08em;
      text-transform:uppercase;
      font-size:.8rem;
    }
    .brand-strapline{margin:8px auto 0;max-width:660px;font-style:italic}
    .double-rule{height:6px;border-top:1px solid var(--ink);border-bottom:2px solid var(--ink)}
    .hero{
      display:grid;
      grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);
      gap:32px;
      padding:28px 0 34px;
      border-bottom:1px solid var(--ink);
    }
    .hero-photo{
      position:relative;
      overflow:hidden;
      min-height:560px;
      background:var(--paper-deep);
    }
    .hero-photo img{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      transition:transform 8s ease;
      animation:slowdrift 16s ease-in-out infinite alternate;
    }
    .hero-photo:hover img{animation-play-state:paused}
    .hero-photo .photo-label{
      position:absolute;left:12px;bottom:12px;
      background:rgba(245,240,228,.94);
      padding:8px 10px;
      font-family:var(--mono);
      font-size:.65rem;
      letter-spacing:.06em;
      text-transform:uppercase;
    }
    @keyframes slowdrift{from{transform:scale(1.02) translateY(0)}to{transform:scale(1.08) translateY(-1.5%)}}
    .hero-copy{
      display:flex;
      flex-direction:column;
      justify-content:center;
      border-top:5px solid var(--green);
      padding-top:18px;
    }
    .hero-copy h1,.hero-copy h2{
      font-family:var(--display);
      font-weight:400;
      font-size:clamp(2.5rem,4.8vw,5.2rem);
      line-height:.98;
      margin:8px 0 18px;
    }
    .hero-copy .intro{font-size:1.12rem;line-height:1.65;margin:0 0 18px}
    .lead-meta{display:flex;gap:16px;flex-wrap:wrap;padding:13px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
    .primary-button{
      align-self:flex-start;
      margin-top:22px;
      border:0;
      background:var(--green);
      color:white;
      padding:13px 18px;
      font-family:var(--sans);
      font-weight:600;
      cursor:pointer;
    }
    .caption{margin:9px 0 0;color:var(--muted);line-height:1.5;text-transform:none;letter-spacing:.02em}
    .desk{padding:36px 0;border-bottom:1px solid var(--ink)}
    .desk-head{
      display:grid;
      grid-template-columns:1fr auto;
      align-items:end;
      gap:20px;
      margin-bottom:20px;
    }
    .section-title{
      font-family:var(--display);
      font-size:clamp(2.2rem,4vw,4.2rem);
      font-weight:400;
      line-height:1;
      margin:4px 0 0;
    }
    .filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
    .filters button{
      border:1px solid var(--rule);
      background:var(--paper-light);
      padding:8px 11px;
      cursor:pointer;
    }
    .filters button.active{background:var(--green);color:white;border-color:var(--green)}
    .recipe-grid{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:22px;
    }
    .recipe-card{
      border-top:2px solid var(--ink);
      padding-top:10px;
      transition:transform .2s ease;
    }
    .recipe-card:hover{transform:translateY(-3px)}
    .recipe-card.hidden{display:none}
    .recipe-card img{aspect-ratio:4/3;object-fit:cover;filter:saturate(.86) contrast(.98)}
    .recipe-card h3{font-size:1.45rem;line-height:1.1;margin:10px 0 8px}
    .recipe-card p{line-height:1.5;margin:0 0 10px;color:#33372f}
    .card-meta{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--rule);padding-top:9px}
    .split-desk{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:32px;
      padding:38px 0;
      border-bottom:1px solid var(--ink);
    }
    .pantry{
      background:var(--paper-deep);
      padding:26px;
      border:1px solid var(--rule);
    }
    .pantry-list{margin-top:22px;border-top:1px solid var(--ink)}
    .pantry-item{
      display:grid;
      grid-template-columns:42px 1fr;
      gap:14px;
      padding:17px 0;
      border-bottom:1px solid var(--rule);
    }
    .pantry-item b{font-family:var(--display);font-size:1.4rem;font-weight:400}
    .garden-report{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}
    .garden-copy{border-top:5px solid var(--green);padding-top:18px}
    .garden-copy p{font-size:1.1rem;line-height:1.65}
    .living-frame{position:relative;overflow:hidden;min-height:360px;background:#CDD3B9}
    .living-frame img{height:100%;object-fit:cover;animation:leafdrift 14s ease-in-out infinite alternate}
    .living-frame:hover img{animation-play-state:paused}
    @keyframes leafdrift{from{transform:scale(1.04) translateX(-1%)}to{transform:scale(1.1) translateX(1%)}}
    .living-label{position:absolute;bottom:10px;left:10px;background:rgba(245,240,228,.92);padding:7px 9px}
    .garden-desk{padding:38px 0;border-bottom:1px solid var(--ink)}
    .jobs{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      margin-top:23px;
      border-top:1px solid var(--ink);
      border-left:1px solid var(--rule);
    }
    .job{padding:20px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}
    .job-number{font-family:var(--display);font-size:2.2rem;color:var(--green)}
    .job h3{font-size:1.25rem;margin:12px 0 8px}
    .job p{line-height:1.55;margin:0}
    .editor-note{
      display:grid;
      grid-template-columns:.75fr 1.25fr;
      gap:32px;
      padding:42px 0;
      border-bottom:1px solid var(--ink);
    }
    .editor-note .portrait{
      min-height:320px;
      background:
        linear-gradient(135deg,rgba(52,77,53,.82),rgba(29,36,27,.82)),
        url("https://images.unsplash.com/photo-1416879595882-3373a0480b5b?w=1000&fit=crop&auto=format") center/cover;
      display:flex;align-items:flex-end;padding:22px;color:white;
    }
    .editor-copy{display:flex;flex-direction:column;justify-content:center}
    .editor-copy blockquote{font-family:var(--display);font-size:clamp(2rem,3.3vw,3.8rem);line-height:1.08;margin:8px 0 18px}
    .editor-copy p{font-size:1.08rem;line-height:1.7}
    .newsletter{
      background:var(--green);
      color:white;
      padding:44px 0;
    }
    .newsletter-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center}
    .newsletter h2{font-family:var(--display);font-weight:400;font-size:clamp(2.5rem,4vw,4.7rem);line-height:1;margin:8px 0 15px}
    .newsletter p{line-height:1.65}
    .signup{display:grid;grid-template-columns:1fr auto;border:1px solid rgba(255,255,255,.6);background:white}
    .signup input{border:0;padding:15px;color:var(--ink);min-width:0}
    .signup button{border:0;background:var(--lemon);padding:0 20px;font-family:var(--sans);font-weight:600;cursor:pointer}
    .signup-message{min-height:24px;margin:10px 0 0}
    footer{background:#252824;color:#f6f0e5;padding:34px 0}
    .footer-grid{display:grid;grid-template-columns:1.2fr .6fr 1fr;gap:28px;align-items:start}
    .footer-logo{font-family:var(--display);font-size:2.3rem}
    .footer-links{display:grid;gap:8px}
    .footer-small{line-height:1.6;text-transform:none;letter-spacing:.02em}
    .modal-backdrop{
      position:fixed;inset:0;background:rgba(15,18,14,.74);z-index:100;
      display:none;place-items:center;padding:20px;
    }
    .modal-backdrop.open{display:grid}
    .recipe-modal{width:min(900px,100%);max-height:90vh;overflow:auto;background:var(--paper-light);position:relative;display:grid;grid-template-columns:1fr 1fr}
    .recipe-modal img{height:100%;object-fit:cover;min-height:520px}
    .modal-copy{padding:32px}
    .modal-copy h2{font-family:var(--display);font-weight:400;font-size:3rem;line-height:1;margin:10px 0 18px}
    .modal-columns{display:grid;gap:16px;margin-top:24px}
    .modal-columns div{border-top:1px solid var(--rule);padding-top:10px}
    .modal-close{position:absolute;right:10px;top:10px;width:38px;height:38px;border:1px solid var(--ink);background:var(--paper);font-size:1.5rem;cursor:pointer}
    .mobile-panel{display:none}
    @media (max-width:980px){
      .nav{display:none}
      .menu-button{display:inline-flex;border:1px solid var(--rule);background:var(--paper-light);padding:7px 10px;font-family:var(--mono);text-transform:uppercase;font-size:.68rem;cursor:pointer}
      .topbar-inner{grid-template-columns:auto 1fr auto;min-height:58px}
      .header-search{display:none}
      .mobile-panel{
        position:fixed;top:46px;left:0;right:0;z-index:29;background:var(--paper-light);
        border-bottom:1px solid var(--ink);padding:20px;display:none;
      }
      .mobile-panel.open{display:grid;gap:14px}
      .mobile-search{
        display:grid;
        grid-template-columns:20px 1fr auto;
        align-items:center;
        gap:10px;
        border-bottom:1px solid var(--ink);
        padding:6px 0;
      }
      .mobile-search svg{width:17px;height:17px;stroke:currentColor}
      .mobile-search input{min-width:0;border:0;background:transparent;padding:10px 0;color:var(--ink);font-family:var(--mono);font-size:.72rem;text-transform:uppercase;outline:0}
      .mobile-search button{border:0;background:transparent;font-family:var(--mono);font-size:.68rem;text-transform:uppercase;cursor:pointer}
      .mobile-panel a{text-decoration:none;font-size:1.25rem}
      .weather-panel-head{align-items:flex-start}
      .hero{grid-template-columns:1fr}
      .hero-photo{min-height:500px}
      .recipe-grid{grid-template-columns:repeat(2,1fr)}
      .split-desk,.editor-note{grid-template-columns:1fr}
      .jobs{grid-template-columns:repeat(2,1fr)}
      .newsletter-grid{grid-template-columns:1fr}
    }
    @media (max-width:620px){
      .section-wrap,.topbar-inner{width:min(calc(100% - 24px),var(--max))}
      .subscribe-link{display:none}
      .edition-line{grid-template-columns:1fr auto}
      .weather-trigger{font-size:.62rem;max-width:100%}
      .weather-trigger-current{gap:5px;white-space:nowrap;overflow:hidden}
      #weatherTriggerLocation,#weatherTriggerEditorial{overflow:hidden;text-overflow:ellipsis}
      .weather-trigger-mini-icon{width:21px;height:16px}
      .almanac-strip{
        grid-template-columns:auto minmax(0,1fr) auto;
        gap:9px;
        padding:8px 0 9px;
        font-size:.6rem;
      }
      .almanac-strip-label{display:none}
      .almanac-strip-copy{justify-content:flex-start;gap:5px}
      .almanac-ticker-moon{gap:4px}
      .almanac-ticker-moon-icon{width:17px;height:17px}
      .almanac-panel{
        position:fixed;
        top:70px;
        left:12px;
        right:12px;
        width:auto;
        max-height:calc(100vh - 88px);
        padding:18px 16px 20px;
      }
      .almanac-panel-head{gap:12px}
      .almanac-metrics{grid-template-columns:repeat(2,1fr)}
      .almanac-notes{grid-template-columns:1fr}
      .almanac-date-line{align-items:flex-start;flex-direction:column;gap:5px}
      .weather-panel{
        position:fixed;
        top:70px;
        left:12px;
        right:12px;
        width:auto;
        max-height:calc(100vh - 88px);
        padding:18px 16px 20px;
      }
      .weather-panel-head,.weather-section-head{align-items:flex-start;flex-direction:column}
      .weather-actions{width:100%;justify-content:space-between}
      .location-picker-head{gap:12px}
      .location-picker-options{grid-template-columns:1fr}
      .location-current-button{width:100%}
      .location-search-row{grid-template-columns:1fr}
      .location-search-row button{padding:10px 4px;text-align:left}
      .weather-summary{grid-template-columns:64px 1fr}
      .weather-main-icon{width:58px;height:48px}
      .hourly-carousel{grid-auto-columns:88px}
      .weekly-grid{grid-auto-columns:104px}
      .edition-line span:nth-child(2){display:none}
      .brand h1{font-size:3.7rem}
      .hero-photo{min-height:330px}
      .hero{gap:20px}
      .desk-head{grid-template-columns:1fr}
      .filters{justify-content:flex-start}
      .recipe-grid{grid-template-columns:1fr}
      .garden-report{grid-template-columns:1fr}
      .jobs{grid-template-columns:1fr}
      .newsletter{padding:34px 0}
      .signup{grid-template-columns:1fr}
      .signup button{padding:13px}
      .footer-grid{grid-template-columns:1fr}
      .recipe-modal{grid-template-columns:1fr}
      .recipe-modal img{min-height:260px;max-height:300px}
      .modal-copy h2{font-size:2.3rem}
    }
    @media (prefers-reduced-motion:reduce){
      *{scroll-behavior:auto!important}
      .hero-photo img,.living-frame img{animation:none!important}
      .recipe-card{transition:none}
    }
  

/* WordPress integration for Roy-locked homepage v0.4.0 */
.language-switch a{text-decoration:none}
.brand-link{text-decoration:none;color:inherit}
.primary-button{text-decoration:none}
.card-image-link{display:block;text-decoration:none}
.recipe-card h3 a,.pantry-item,.job{text-decoration:none;color:inherit}
.pantry-item:hover b,.job:hover h3,.recipe-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.starter-preview-notice{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:10px 0;border-block:1px solid var(--mustard);font-family:var(--mono);font-size:.68rem;line-height:1.45;letter-spacing:.03em;text-transform:uppercase}
.starter-preview-notice strong{white-space:nowrap}
.tht-paper{width:min(calc(100% - 40px),var(--max));margin:0 auto 40px;background:var(--paper);color:var(--ink);box-shadow:none}
.tht-paper .tht-article-language .tht-language-switcher{display:none}
.tht-hero-image img,.tht-story-card__image img{width:100%;height:100%;object-fit:cover;display:block}
.tht-fixture-label{background:var(--ink)}
@media(max-width:620px){.starter-preview-notice{align-items:flex-start;flex-direction:column}.tht-paper{width:min(calc(100% - 24px),var(--max));padding-inline:16px}}
.signup .signup-message{grid-column:1/-1;width:100%;padding:0 12px;margin:8px 0 10px}

/* The Herb Thymes Editorial 0.6.0: Out and About modular features */
.tht-article-hero.is-editorial{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
.tht-article-modules.is-editorial{gap:clamp(34px,5.5vw,72px)}
.tht-article-modules.is-editorial>.tht-copy-block,.tht-article-modules.is-editorial>.tht-editorial-heading{width:min(100%,var(--tht-text));margin-inline:auto}
.tht-out-lead .tht-block-kicker,.tht-block-kicker{display:block;margin-bottom:10px;color:var(--tht-green-dark);font:800 9px/1 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.tht-out-lead p:first-of-type{margin-top:0}
.tht-editorial-heading{scroll-margin-top:95px}
.tht-editorial-heading h2,.tht-editorial-heading h3{margin:0;font:600 clamp(34px,4.8vw,62px)/1 Georgia,serif;letter-spacing:-.035em;text-wrap:balance}
.tht-editorial-heading h3{font-size:clamp(27px,3.6vw,44px)}
.tht-out-text .tht-section-title{margin-bottom:18px}
.tht-article-contents{width:min(100%,var(--tht-text));margin:0 auto clamp(34px,5vw,60px);padding:18px 0;border-block:3px double var(--tht-ink)}
.tht-article-contents>span{display:block;margin-bottom:10px;color:var(--tht-green-dark);font:800 9px/1 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.tht-article-contents ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 24px;margin:0;padding:0;counter-reset:tht-contents;list-style:none}
.tht-article-contents li{counter-increment:tht-contents}
.tht-article-contents a{display:flex;gap:9px;text-decoration:none;font:600 14px/1.35 Georgia,serif}
.tht-article-contents a:before{content:counter(tht-contents,decimal-leading-zero);color:var(--tht-mustard);font:700 9px/1.8 Arial,sans-serif;letter-spacing:.08em}
.tht-article-contents a:hover{text-decoration:underline;text-underline-offset:4px}
.tht-out-quote{width:min(100%,960px);margin-inline:auto;padding:clamp(25px,4vw,48px) clamp(20px,5vw,70px);border-block:4px double var(--tht-ink);text-align:center}
.tht-out-quote blockquote{margin:0;font:italic 600 clamp(27px,4vw,52px)/1.18 Georgia,serif;letter-spacing:-.025em;text-wrap:balance}
.tht-out-quote figcaption{margin-top:15px;color:#696156;font:800 9px/1.4 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.tht-out-interview{display:grid;gap:0}
.tht-out-interview>article{width:min(100%,var(--tht-text));margin-inline:auto;padding:26px 0;border-top:1px solid var(--tht-soft-rule)}
.tht-out-interview>article:last-child{border-bottom:1px solid var(--tht-soft-rule)}
.tht-out-interview>article>span{color:var(--tht-green-dark);font:800 9px/1 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}
.tht-out-interview h3{margin:8px 0 11px;font:600 clamp(22px,3vw,35px)/1.15 Georgia,serif}
.tht-out-interview p{margin:0 0 .85em;font:16px/1.65 Georgia,serif}
.tht-out-fact,.tht-out-note,.tht-out-venue,.tht-out-disclosure{width:min(100%,900px);margin-inline:auto;padding:clamp(22px,4vw,38px);background:var(--tht-raised);border:1px solid var(--tht-rule)}
.tht-out-fact{border-top:6px solid var(--tht-green-dark)}
.tht-out-fact h2,.tht-out-note h2,.tht-out-venue h2,.tht-out-disclosure h2{margin:5px 0 12px;font:600 clamp(27px,3.6vw,43px)/1.05 Georgia,serif}
.tht-out-fact p,.tht-out-note p,.tht-out-disclosure p{font:15px/1.6 Georgia,serif}
.tht-out-fact dl,.tht-out-hours dl{margin:20px 0 0;border-top:1px solid var(--tht-soft-rule)}
.tht-out-fact dl>div,.tht-out-hours dl>div{display:grid;grid-template-columns:minmax(120px,.42fr) minmax(0,1fr);gap:18px;padding:10px 0;border-bottom:1px dotted var(--tht-rule)}
.tht-out-fact dt,.tht-out-hours dt{font:800 9px/1.45 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.tht-out-fact dd,.tht-out-hours dd{margin:0;font:15px/1.45 Georgia,serif}
.tht-out-note{background:#eee6d1;border:0;border-left:7px solid var(--tht-mustard)}
.tht-out-note.is-editor_note{background:#e4eadf;border-left-color:var(--tht-green-dark)}
.tht-out-image{width:min(100%,1050px);margin:0 auto}
.tht-out-image.is-full_bleed{width:100%}
.tht-out-image.is-narrow{width:min(100%,var(--tht-text))}
.tht-out-image img,.tht-out-image-text img,.tht-out-gallery img{display:block;width:100%;height:auto}
.tht-out-image figcaption,.tht-out-image-text figcaption,.tht-out-gallery figcaption{margin-top:7px;color:#6c655b;font:italic 11px/1.45 Georgia,serif}
.tht-out-image-text{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(24px,5vw,65px);align-items:center;width:min(100%,1050px);margin-inline:auto}
.tht-out-image-text.is-image-right>figure{order:2}
.tht-out-image-text figure{margin:0}
.tht-out-image-text p{font:16px/1.65 Georgia,serif}
.tht-out-gallery>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,2vw,22px)}
.tht-out-gallery figure{margin:0}
.tht-out-gallery figure:nth-child(3n){grid-column:1/-1}
.tht-out-gallery img{aspect-ratio:4/3;object-fit:cover}
.tht-out-gallery figure:nth-child(3n) img{aspect-ratio:16/8}
.tht-out-venue{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.72fr);gap:8px 35px;background:#e4eadf;border-color:var(--tht-green-dark)}
.tht-out-venue>.tht-block-kicker,.tht-out-venue>h2,.tht-out-venue>.tht-venue-type{grid-column:1}
.tht-out-venue dl{grid-column:2;grid-row:1/5;margin:0}
.tht-out-venue dl>div{padding:7px 0;border-bottom:1px dotted rgba(37,40,36,.35)}
.tht-out-venue dd{margin:0;font:14px/1.45 Georgia,serif}
.tht-venue-type{margin:0;color:#5d6557;font:italic 14px/1.4 Georgia,serif}
.tht-venue-actions{grid-column:1;display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}
.tht-venue-actions a,.tht-map-actions a,.tht-map-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border:1px solid var(--tht-ink);background:transparent;color:var(--tht-ink);font:800 9px/1.2 Arial,sans-serif;letter-spacing:.09em;text-decoration:none;text-transform:uppercase;cursor:pointer}
.tht-venue-actions a:first-child,.tht-map-actions button{background:var(--tht-green-dark);border-color:var(--tht-green-dark);color:#fff}
.tht-out-hours{width:min(100%,var(--tht-text))}
.tht-out-hours>p{font:15px/1.55 Georgia,serif}
.tht-out-hours>small{display:block;margin-top:11px;color:#6d665c;font:italic 10px/1.4 Georgia,serif}
.tht-map-shell{display:grid;align-content:center;min-height:var(--tht-map-height,360px);padding:clamp(20px,4vw,42px);background:#e4dfd2;border:1px solid var(--tht-rule);text-align:center;overflow:hidden}
.tht-map-shell address{font:600 clamp(19px,2.8vw,30px)/1.25 Georgia,serif;font-style:normal}
.tht-map-shell>p{max-width:620px;margin:10px auto 18px;color:#625b51;font:14px/1.5 Georgia,serif}
.tht-map-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.tht-map-shell.is-loaded{padding:0;text-align:left}
.tht-map-shell.is-loaded>address,.tht-map-shell.is-loaded>p{display:none}
.tht-map-frame{display:block;width:100%;height:var(--tht-map-height,360px);border:0}
.tht-map-shell.is-loaded .tht-map-actions{padding:10px;background:var(--tht-raised)}
.tht-out-disclosure{padding:18px 22px;background:#f0eadb;border-left:5px solid var(--tht-mocha)}
.tht-out-disclosure h2{font-size:23px}
.tht-out-disclosure p:last-child{margin-bottom:0}
.tht-out-related .tht-text-link{margin-top:12px}
.tht-preset-editorial_article .tht-source-section{margin-top:clamp(38px,6vw,75px)}
@media(max-width:760px){
  .tht-article-hero.is-editorial{grid-template-columns:1fr}
  .tht-article-contents ol{grid-template-columns:1fr}
  .tht-out-image-text{grid-template-columns:1fr}
  .tht-out-image-text.is-image-right>figure{order:0}
  .tht-out-gallery>div{grid-template-columns:1fr}
  .tht-out-gallery figure:nth-child(3n){grid-column:auto}
  .tht-out-gallery figure:nth-child(3n) img{aspect-ratio:4/3}
  .tht-out-venue{grid-template-columns:1fr}
  .tht-out-venue dl{grid-column:1;grid-row:auto}
  .tht-out-fact dl>div,.tht-out-hours dl>div{grid-template-columns:1fr;gap:3px}
}

/* The Herb Thymes Editorial 0.7.0: carousel, newest-first placement and recommendations */
.tht-hero-carousel{position:relative;padding-top:0;padding-bottom:34px;border-bottom:1px solid var(--ink)}
.tht-hero-carousel .hero{border-bottom:0;padding-bottom:20px}
.tht-hero-carousel-viewport{position:relative;min-width:0}
.tht-hero-slide[hidden]{display:none!important}
.tht-hero-slide.is-active{animation:thtHeroReveal .42s ease both}
@keyframes thtHeroReveal{from{opacity:.15;transform:translateY(5px)}to{opacity:1;transform:none}}
.tht-hero-carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:4px}
.tht-hero-carousel-controls>button,.tht-hero-carousel-dots button{display:grid;place-items:center;border:1px solid var(--rule);background:var(--paper-light);color:var(--ink);cursor:pointer}
.tht-hero-carousel-controls>button{width:36px;height:36px;font:700 16px/1 var(--mono)}
.tht-hero-carousel-controls>button:hover,.tht-hero-carousel-controls>button:focus-visible,.tht-hero-carousel-dots button:hover,.tht-hero-carousel-dots button:focus-visible{background:var(--green);color:#fff;border-color:var(--green);outline:2px solid transparent}
.tht-hero-carousel-dots{display:flex;align-items:center;gap:6px;padding:0 6px}
.tht-hero-carousel-dots button{width:10px;height:10px;padding:0;border-radius:50%;background:transparent}
.tht-hero-carousel-dots button[aria-selected=true]{background:var(--green);border-color:var(--green)}
.tht-hero-empty{min-height:360px;grid-template-columns:1fr}
.tht-recommendations{width:min(100%,1120px);margin:clamp(52px,8vw,100px) auto 0;padding:clamp(28px,4vw,50px) 0;border-block:4px double var(--tht-ink)}
.tht-recommendations>span{display:block;color:var(--tht-green-dark);font:800 9px/1 Arial,sans-serif;letter-spacing:.18em;text-align:center;text-transform:uppercase}
.tht-recommendations>h2{margin:10px auto 30px;font:600 clamp(34px,5vw,60px)/.98 Georgia,serif;letter-spacing:-.035em;text-align:center;text-wrap:balance}
.tht-recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tht-recommendation-grid .tht-story-card{border-top:3px solid var(--tht-ink);padding-top:9px}
.tht-recommendation-grid .tht-story-card__image{display:block;aspect-ratio:4/3;overflow:hidden;background:#d8d0bf}
.tht-recommendation-grid .tht-story-card__image img{width:100%;height:100%;object-fit:cover}
.tht-recommendation-grid .tht-story-card__copy h3{margin:10px 0 7px;font:600 clamp(22px,2.5vw,31px)/1.02 Georgia,serif}
.tht-recommendation-grid .tht-story-card__copy h3 a{text-decoration:none}
.tht-recommendation-grid .tht-story-card__copy p{font:15px/1.5 Georgia,serif}
.tht-recommendation-grid .tht-story-card__meta{display:flex;justify-content:space-between;gap:8px;margin-top:9px;font:800 8px/1.3 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--tht-green-dark)}
.tht-recommendation-grid .tht-text-link{display:inline-flex;align-items:center;gap:5px;font:800 9px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:980px){.tht-recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tht-recommendation-grid>*:last-child:nth-child(odd){grid-column:1/-1;max-width:520px}}
@media(max-width:620px){.tht-hero-carousel{padding-bottom:25px}.tht-hero-carousel-controls{justify-content:center}.tht-recommendation-grid{grid-template-columns:1fr}.tht-recommendation-grid>*:last-child:nth-child(odd){grid-column:auto;max-width:none}}
@media(prefers-reduced-motion:reduce){.tht-hero-slide.is-active{animation:none}}
