/* Hallmark v2.0.0 · theme: custom · idea: Lokot changes with the seasons, its golden horse and sun remain · vibe: local, living, translucent, seasonal · shape: three-column publication · posture: committed seasonal ground, restrained controls */
/* Critique: glass is a readable material over seasonal colour, and sparse edge effects never cover the archive. */
/* Hallmark · waive 49b · archive headlines are original content · full Lokot titles wrap instead of being cut */
/* Hallmark · waive 9 · each archive card is independently interactive · translucent Lokot panels were explicitly requested by the owner */
/* Motion: sparse seasonal particles requested by the owner; pausing, hidden-tab and reduced-motion controls are implemented. */
:root {
  --paper: oklch(97% .018 75); --surface: oklch(99% .009 75); --paper-deep: oklch(93% .028 75);
  --ink: oklch(24% .035 48); --ink-secondary: oklch(37% .025 48); --muted: oklch(47% .025 48);
  --rule: oklch(84% .025 65); --accent: oklch(76% .15 66); --accent-soft: oklch(92% .06 65);
  --accent-ink: oklch(26% .06 42); --focus: oklch(47% .15 45);
  --season-sky: oklch(92% .045 75); --season-ground: oklch(97% .015 50);
  --glass: oklch(99% .008 75 / .77); --glass-strong: oklch(99% .008 75 / .91);
  --glass-edge: oklch(100% 0 0 / .86); --glass-shadow: oklch(24% .06 50 / .08);
  --weather-a: oklch(78% .13 65); --weather-b: oklch(89% .085 88); --weather-ink: oklch(25% .05 45);
  --weather-line: oklch(25% .05 45 / .18); --weather-quiet: oklch(35% .04 45);
  --pine: oklch(39% .10 152); --horse: oklch(83% .16 87); --shield: oklch(98% .01 80);
  --ground: oklch(47% .15 28); --crest-line: oklch(31% .04 150); --snow: oklch(98% .008 235);
  --bud: oklch(77% .12 0); --particle: oklch(57% .14 52); --particle-secondary: oklch(69% .15 85);
  --light-red: oklch(69% .19 25); --light-gold: oklch(86% .15 88); --light-green: oklch(71% .13 150);
  --frost: oklch(97% .02 235 / .65); --shadow-low: 0 8px 32px var(--glass-shadow);
  --font-display: var(--font-body); --radius: 24px; --container: 1480px;
  --duration: 180ms; --ease: cubic-bezier(.2,.7,.2,1);
  --winter-paper:oklch(97% .015 235);
  --winter-surface:oklch(99% .008 235);
  --winter-paper-deep:oklch(92% .035 235);
  --winter-ink:oklch(25% .045 250);
  --winter-ink-secondary:oklch(38% .035 250);
  --winter-muted:oklch(47% .03 250);
  --winter-rule:oklch(83% .03 235);
  --winter-accent:oklch(80% .10 230);
  --winter-accent-soft:oklch(92% .04 230);
  --winter-accent-ink:oklch(26% .07 250);
  --winter-focus:oklch(47% .15 250);
  --winter-season-sky:oklch(90% .06 235);
  --winter-season-ground:oklch(97% .018 235);
  --winter-glass:oklch(99% .008 235 / .77);
  --winter-glass-strong:oklch(99% .008 235 / .92);
  --winter-glass-shadow:oklch(25% .07 240 / .09);
  --winter-weather-a:oklch(73% .12 235);
  --winter-weather-b:oklch(88% .07 220);
  --winter-weather-ink:oklch(24% .06 250);
  --winter-weather-quiet:oklch(34% .045 250);
  --winter-weather-line:oklch(25% .06 250 / .18);
  --winter-particle:oklch(66% .085 230);
  --winter-particle-secondary:oklch(84% .07 235);
  --winter-pine:oklch(37% .07 170);
  --winter-shield:oklch(98% .018 235);
  --spring-paper:oklch(97% .019 145);
  --spring-surface:oklch(99% .009 145);
  --spring-paper-deep:oklch(93% .035 145);
  --spring-ink:oklch(25% .045 155);
  --spring-ink-secondary:oklch(38% .03 155);
  --spring-muted:oklch(46% .03 155);
  --spring-rule:oklch(83% .04 145);
  --spring-accent:oklch(80% .13 145);
  --spring-accent-soft:oklch(93% .055 145);
  --spring-accent-ink:oklch(26% .065 155);
  --spring-focus:oklch(44% .12 155);
  --spring-season-sky:oklch(92% .055 145);
  --spring-season-ground:oklch(97% .025 35);
  --spring-glass:oklch(99% .009 145 / .78);
  --spring-glass-strong:oklch(99% .009 145 / .92);
  --spring-glass-shadow:oklch(25% .06 150 / .08);
  --spring-weather-a:oklch(80% .12 145);
  --spring-weather-b:oklch(91% .085 110);
  --spring-weather-ink:oklch(25% .055 155);
  --spring-weather-quiet:oklch(35% .04 155);
  --spring-weather-line:oklch(25% .06 155 / .18);
  --spring-particle:oklch(66% .11 210);
  --spring-particle-secondary:oklch(78% .12 0);
  --spring-pine:oklch(45% .13 150);
  --summer-paper:oklch(97% .023 110);
  --summer-surface:oklch(99% .01 110);
  --summer-paper-deep:oklch(93% .055 115);
  --summer-ink:oklch(25% .045 150);
  --summer-ink-secondary:oklch(38% .035 150);
  --summer-muted:oklch(46% .03 150);
  --summer-rule:oklch(83% .045 115);
  --summer-accent:oklch(85% .16 100);
  --summer-accent-soft:oklch(94% .07 105);
  --summer-accent-ink:oklch(26% .06 120);
  --summer-focus:oklch(44% .12 145);
  --summer-season-sky:oklch(92% .05 215);
  --summer-season-ground:oklch(96% .065 105);
  --summer-glass:oklch(99% .01 110 / .77);
  --summer-glass-strong:oklch(99% .01 110 / .92);
  --summer-glass-shadow:oklch(25% .06 120 / .08);
  --summer-weather-a:oklch(86% .15 95);
  --summer-weather-b:oklch(94% .085 105);
  --summer-weather-ink:oklch(27% .06 100);
  --summer-weather-quiet:oklch(38% .045 100);
  --summer-weather-line:oklch(25% .06 100 / .18);
  --summer-particle:oklch(69% .16 65);
  --summer-particle-secondary:oklch(65% .12 155);
  --summer-pine:oklch(43% .13 150);
  --newyear-paper:oklch(96% .025 245);
  --newyear-surface:oklch(99% .01 245);
  --newyear-paper-deep:oklch(92% .035 245);
  --newyear-ink:oklch(24% .055 250);
  --newyear-ink-secondary:oklch(37% .035 250);
  --newyear-muted:oklch(46% .03 250);
  --newyear-rule:oklch(82% .035 245);
  --newyear-accent:oklch(84% .135 85);
  --newyear-accent-soft:oklch(94% .055 85);
  --newyear-accent-ink:oklch(27% .06 65);
  --newyear-focus:oklch(46% .12 245);
  --newyear-season-sky:oklch(88% .06 245);
  --newyear-season-ground:oklch(97% .025 85);
  --newyear-glass:oklch(99% .01 245 / .80);
  --newyear-glass-strong:oklch(99% .01 245 / .94);
  --newyear-glass-shadow:oklch(25% .08 245 / .1);
  --newyear-weather-a:oklch(36% .09 250);
  --newyear-weather-b:oklch(48% .12 245);
  --newyear-weather-ink:oklch(98% .012 85);
  --newyear-weather-quiet:oklch(91% .02 235);
  --newyear-weather-line:oklch(96% .02 235 / .23);
  --newyear-particle:oklch(71% .07 235);
  --newyear-particle-secondary:oklch(84% .13 85);
  --newyear-pine:oklch(34% .09 155);
  --newyear-shield:oklch(98% .015 235);
}
:root[data-season="winter"] {
  --paper:var(--winter-paper); --surface:var(--winter-surface); --paper-deep:var(--winter-paper-deep);
  --ink:var(--winter-ink); --ink-secondary:var(--winter-ink-secondary); --muted:var(--winter-muted); --rule:var(--winter-rule);
  --accent:var(--winter-accent); --accent-soft:var(--winter-accent-soft); --accent-ink:var(--winter-accent-ink); --focus:var(--winter-focus);
  --season-sky:var(--winter-season-sky); --season-ground:var(--winter-season-ground);
  --glass:var(--winter-glass); --glass-strong:var(--winter-glass-strong); --glass-shadow:var(--winter-glass-shadow);
  --weather-a:var(--winter-weather-a); --weather-b:var(--winter-weather-b); --weather-ink:var(--winter-weather-ink); --weather-quiet:var(--winter-weather-quiet); --weather-line:var(--winter-weather-line);
  --particle:var(--winter-particle); --particle-secondary:var(--winter-particle-secondary); --pine:var(--winter-pine); --shield:var(--winter-shield);
}
:root[data-season="spring"] {
  --paper:var(--spring-paper); --surface:var(--spring-surface); --paper-deep:var(--spring-paper-deep);
  --ink:var(--spring-ink); --ink-secondary:var(--spring-ink-secondary); --muted:var(--spring-muted); --rule:var(--spring-rule);
  --accent:var(--spring-accent); --accent-soft:var(--spring-accent-soft); --accent-ink:var(--spring-accent-ink); --focus:var(--spring-focus);
  --season-sky:var(--spring-season-sky); --season-ground:var(--spring-season-ground);
  --glass:var(--spring-glass); --glass-strong:var(--spring-glass-strong); --glass-shadow:var(--spring-glass-shadow);
  --weather-a:var(--spring-weather-a); --weather-b:var(--spring-weather-b); --weather-ink:var(--spring-weather-ink); --weather-quiet:var(--spring-weather-quiet); --weather-line:var(--spring-weather-line);
  --particle:var(--spring-particle); --particle-secondary:var(--spring-particle-secondary); --pine:var(--spring-pine);
}
:root[data-season="summer"] {
  --paper:var(--summer-paper); --surface:var(--summer-surface); --paper-deep:var(--summer-paper-deep);
  --ink:var(--summer-ink); --ink-secondary:var(--summer-ink-secondary); --muted:var(--summer-muted); --rule:var(--summer-rule);
  --accent:var(--summer-accent); --accent-soft:var(--summer-accent-soft); --accent-ink:var(--summer-accent-ink); --focus:var(--summer-focus);
  --season-sky:var(--summer-season-sky); --season-ground:var(--summer-season-ground);
  --glass:var(--summer-glass); --glass-strong:var(--summer-glass-strong); --glass-shadow:var(--summer-glass-shadow);
  --weather-a:var(--summer-weather-a); --weather-b:var(--summer-weather-b); --weather-ink:var(--summer-weather-ink); --weather-quiet:var(--summer-weather-quiet); --weather-line:var(--summer-weather-line);
  --particle:var(--summer-particle); --particle-secondary:var(--summer-particle-secondary); --pine:var(--summer-pine);
}
:root[data-season="newyear"] {
  --paper:var(--newyear-paper); --surface:var(--newyear-surface); --paper-deep:var(--newyear-paper-deep);
  --ink:var(--newyear-ink); --ink-secondary:var(--newyear-ink-secondary); --muted:var(--newyear-muted); --rule:var(--newyear-rule);
  --accent:var(--newyear-accent); --accent-soft:var(--newyear-accent-soft); --accent-ink:var(--newyear-accent-ink); --focus:var(--newyear-focus);
  --season-sky:var(--newyear-season-sky); --season-ground:var(--newyear-season-ground);
  --glass:var(--newyear-glass); --glass-strong:var(--newyear-glass-strong); --glass-shadow:var(--newyear-glass-shadow);
  --weather-a:var(--newyear-weather-a); --weather-b:var(--newyear-weather-b); --weather-ink:var(--newyear-weather-ink); --weather-quiet:var(--newyear-weather-quiet); --weather-line:var(--newyear-weather-line);
  --particle:var(--newyear-particle); --particle-secondary:var(--newyear-particle-secondary); --pine:var(--newyear-pine); --shield:var(--newyear-shield);
}
html {scroll-padding-top:160px;scroll-behavior:smooth}
body {background:linear-gradient(135deg,var(--season-sky),var(--season-ground));background-attachment:fixed}
.site-header {background:var(--glass-strong);border-bottom:1px solid var(--glass-edge);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);box-shadow:0 4px 24px var(--glass-shadow)}
.site-header__inner {min-height:100px;gap:var(--space-lg)}
.brand {gap:var(--space-sm);font-size:26px;letter-spacing:-1px;flex-shrink:0}
.brand__crest {width:50px;height:62px;overflow:visible;stroke:none;fill:none;flex-shrink:0}
.brand__shield {fill:var(--shield);stroke:var(--crest-line);stroke-width:2}
.brand__pine {fill:var(--pine)}
.brand__ground {fill:var(--ground)}
.brand__horse {fill:var(--horse);stroke:var(--horse);stroke-width:.7;stroke-linejoin:round}
.brand__snow {fill:var(--snow);display:none}
.brand__buds {fill:var(--bud);display:none}
.brand__star {fill:var(--light-gold);display:none}
[data-season="winter"] .brand__snow,[data-season="newyear"] .brand__snow,[data-season="spring"] .brand__buds,[data-season="newyear"] .brand__star {display:block}
.brand__wordmark {line-height:1.1;font-weight:750}
.brand__wordmark small {display:block;font-size:12px;letter-spacing:0;font-weight:450;color:var(--muted);margin-top:var(--space-xs)}
.brand__domain {font-size:12px}
.site-header__place {font-size:12px}
.site-header__archive {font-size:12px;text-decoration:underline;text-underline-offset:5px}
.search {background:var(--glass);border-color:var(--rule);border-radius:100px;min-height:46px;box-shadow:inset 0 1px 0 var(--glass-edge);max-width:410px}
.search input,.search button {min-height:44px}
.search input {font-size:14px}
.search button {font-size:12px;font-weight:600}
.site-tools {max-width:var(--container);margin:auto;padding:var(--space-sm) var(--space-ll);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:60px;position:relative;z-index:10}
.site-tools__date {font-size:12px;color:var(--muted)}
.season-controls {display:flex;align-items:center;gap:var(--space-sm)}
.season-controls label {font-size:12px;color:var(--muted)}
.season-controls select {font:500 12px var(--font-body);color:var(--ink);border:1px solid var(--glass-edge);border-radius:100px;background:var(--glass);min-height:36px;padding:0 var(--space-sm);cursor:pointer;max-width:150px}
.effects-toggle {display:inline-flex;align-items:center;gap:var(--space-xs);min-height:36px;border-radius:100px;background:var(--glass);border:1px solid var(--glass-edge);padding:0 var(--space-sm);font-size:12px}
.effects-toggle svg {width:16px;height:16px}
.effects-toggle[aria-pressed="false"] {color:var(--muted);background:var(--paper-deep)}
.effects-toggle:hover,.season-controls select:hover {background:var(--surface)}
.site-layout {grid-template-columns:204px minmax(0,1fr) 284px;padding-top:var(--space-sm);gap:var(--space-lg);position:relative;z-index:1}
.navigation {top:124px;padding-right:var(--space-xs);max-height:calc(100dvh - 148px);scrollbar-width:thin}
.navigation__main {gap:var(--space-xs)}
.navigation__link {font-size:14px;padding:var(--space-sm) var(--space-md);border-radius:16px;min-height:50px}
.navigation__link--active {background:var(--glass-strong);box-shadow:var(--shadow-low);color:var(--ink);border:1px solid var(--glass-edge)}
.navigation__link:hover {background:var(--glass);color:var(--ink)}
.navigation__services {margin-top:var(--space-lg);padding-inline:var(--space-md)}
.navigation__services a {font-size:13px}
.navigation__about {padding-top:var(--space-lg);padding-left:var(--space-md)}
.navigation__about a {font-size:12px}
.sidebar {position:sticky;top:124px;max-height:calc(100dvh - 148px);overflow-y:auto;overflow-x:clip;overscroll-behavior:auto;scrollbar-width:thin;scrollbar-gutter:stable;padding:0 var(--space-xs) var(--space-lg) 0;gap:var(--space-lg)}
.sidebar:focus-visible {outline-offset:3px}
.sidebar__intro {border-top:0;padding:var(--space-lg);border-bottom:0;background:var(--glass);border:1px solid var(--glass-edge);border-radius:var(--radius);box-shadow:var(--shadow-low);backdrop-filter:blur(12px)}
.sidebar__intro h2 {font:650 25px/1.12 var(--font-body);letter-spacing:-1px}
.sidebar__intro p {font-size:13px;line-height:1.7}
.sidebar__section {padding-inline:var(--space-sm)}
.sidebar__section h2 {font-size:17px;font-weight:650;letter-spacing:-.4px}
.reading-list a,.service-link {font-size:13px}
.reading-list span,.service-link small {font-size:12px}
.reading-list li::before {font-weight:600;color:var(--focus)}
.sidebar__memory {background:var(--glass);border:1px solid var(--glass-edge);box-shadow:var(--shadow-low);color:var(--ink);backdrop-filter:blur(12px)}
.sidebar__memory h2 {font:650 24px/1.18 var(--font-body);letter-spacing:-.7px}
.sidebar__memory p {font-size:13px}
.sidebar__colophon {font:550 18px/1.4 var(--font-body);padding-inline:var(--space-sm)}
.welcome {background:var(--glass);border:1px solid var(--glass-edge);box-shadow:var(--shadow-low);backdrop-filter:blur(16px);grid-template-columns:minmax(0,1fr) minmax(0,.9fr);min-height:286px;border-radius:var(--radius);margin-bottom:var(--space-ll)}
.welcome__text {padding:var(--space-ll) var(--space-md) var(--space-ll) var(--space-ll)}
.welcome h1 {font:700 clamp(36px,3.7vw,56px)/1.04 var(--font-body);letter-spacing:-2px;max-width:10ch}
.welcome p {font-size:14px;line-height:1.65;max-width:29ch}
.welcome a {gap:var(--space-sm);font-size:12px;min-height:44px;border-radius:100px;background:var(--accent);color:var(--accent-ink);text-decoration:none;padding:0 var(--space-md);font-weight:600}
.welcome a:hover {background:var(--accent-soft)}
.welcome a svg {width:16px;height:16px}
.welcome__scene {position:relative;min-width:0;border-radius:0 var(--radius) var(--radius) 0;overflow:clip}
.welcome__image {border-radius:0;width:100%;height:100%;object-fit:cover;object-position:64% center}
.welcome__caption {background:var(--glass-strong);font-size:12px;border-radius:100px;right:12px;bottom:12px;padding:var(--space-2xs) var(--space-xs)}
.welcome__frost {position:absolute;inset:0;pointer-events:none;display:none;background:linear-gradient(0deg,var(--frost),var(--transparent) 50%)}
[data-season="winter"] .welcome__frost,[data-season="newyear"] .welcome__frost {display:block}
[data-season="winter"] .welcome__image,[data-season="spring"] .welcome__image,[data-season="summer"] .welcome__image,[data-season="newyear"] .welcome__image {filter:none}
.feed-heading__title {font-size:25px;letter-spacing:-.8px;font-weight:650}
.feed-heading span {font-size:12px}
.feed-tabs {border:0;background:var(--glass);border-radius:100px;gap:var(--space-2xs);padding:var(--space-2xs);margin-bottom:var(--space-lg);width:fit-content;max-width:100%;box-shadow:inset 0 1px 0 var(--glass-edge)}
.feed-tabs__link {min-height:36px;border-bottom:0;border-radius:100px;padding:0 var(--space-md);font-size:12px;font-weight:550}
.feed-tabs__link--active {background:var(--glass-strong);color:var(--ink);box-shadow:0 2px 8px var(--glass-shadow)}
.post,.article {background:var(--glass-strong);border:1px solid var(--glass-edge);box-shadow:var(--shadow-low);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius)}
.post {padding:var(--space-lg) var(--space-lm) 0}
.post__meta {font-size:12px;margin-bottom:var(--space-sm);gap:var(--space-sm)}
.post__category {font-size:12px;font-weight:550;color:var(--focus)}
.post__title,.post--lead .post__title {font-size:28px;line-height:1.22;letter-spacing:-1px;font-weight:650}
.post__excerpt {font-size:15px;line-height:1.75}
.bookmark {border-radius:100px;background:var(--glass);border:1px solid var(--rule);width:36px;height:36px;color:var(--ink-secondary)}
.bookmark:hover {background:var(--accent-soft)}
.bookmark[aria-pressed="true"] {color:var(--accent-ink);background:var(--accent)}
.post__image {position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:auto;margin:0 calc(-1 * var(--space-lm));background:var(--paper-deep);min-height:0;cursor:zoom-in}
.post__image img {width:100%;height:auto;max-height:520px;object-fit:cover;aspect-ratio:16/10}
.post__image--compact {padding:var(--space-md)}
.post__image--compact img {width:100%;max-width:var(--image-native-width);height:auto;aspect-ratio:auto;object-fit:contain;max-height:none;border-radius:12px}
.post__photo-count {position:absolute;right:16px;bottom:16px;background:var(--glass-strong);color:var(--ink);border:1px solid var(--glass-edge);border-radius:100px;padding:var(--space-xs) var(--space-sm);display:flex;align-items:center;gap:var(--space-xs);font-size:12px;backdrop-filter:blur(10px)}
.post__photo-count svg {width:16px;height:16px}
.post__bottom {font-size:12px;min-height:64px}
.post__bottom span {font-size:12px}
.post__bottom a {font-weight:550}
.article h1 {font:650 40px/1.12 var(--font-body);letter-spacing:-1.3px}
.article__body {font-size:17px;line-height:1.85}
.article__body .archive-gallery {gap:var(--space-sm)}
.article__body .archive-gallery a {display:flex;align-items:center;justify-content:center;min-height:100%;border-radius:12px;background:var(--paper-deep);cursor:zoom-in}
.article__body .archive-gallery img {width:100%;max-width:var(--image-native-width,100%);height:auto;aspect-ratio:auto;object-fit:contain;border-radius:12px}
.article__body>a {display:block;width:fit-content;max-width:100%;cursor:zoom-in}
.media-note {font-size:13px;color:var(--muted);border-left:2px solid var(--focus);padding-left:var(--space-md)}
.archive-note {border-radius:0;font-size:12px}
.main-footer>span {font:650 30px/1.1 var(--font-body);letter-spacing:-1px}
.weather {border-radius:var(--radius);background:var(--glass-strong);border:1px solid var(--glass-edge);box-shadow:var(--shadow-low);min-width:0}
.weather__current {position:relative;border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 18px 18px;background:linear-gradient(125deg,var(--weather-a),var(--weather-b));padding:var(--space-lg);color:var(--weather-ink)}
.weather__place {display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:550}
.weather__place span:last-child {font-weight:400;font-size:12px}
.weather__reading {display:flex;justify-content:space-between;align-items:center;gap:var(--space-xs);margin-top:var(--space-md)}
.weather__reading strong {font-size:64px;font-weight:550;line-height:1.1;letter-spacing:-4px;font-variant-numeric:tabular-nums}
.weather__reading svg {width:68px;height:68px;stroke-width:1.3}
.weather__condition {font-size:15px;font-weight:550;margin-top:var(--space-xs)}
.weather__details {font-size:12px;line-height:1.7;color:var(--weather-quiet);margin-top:var(--space-sm)}
.weather__forecast {padding:var(--space-md) var(--space-lg) var(--space-xs)}
.weather__day {display:grid;grid-template-columns:minmax(0,1fr) 24px 38px 38px;gap:var(--space-xs);align-items:center;min-height:38px;font-size:12px}
.weather__day-icon {display:flex;align-items:center;justify-content:center}
.weather__day svg {width:20px;height:20px;stroke-width:1.5}
.weather__day strong {font-weight:550;text-align:right;font-variant-numeric:tabular-nums}
.weather__day small {font-size:12px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.weather__source {padding:var(--space-sm) var(--space-lg) var(--space-md);display:flex;justify-content:space-between;gap:var(--space-xs);font-size:12px;color:var(--muted);border-top:1px solid var(--rule);flex-wrap:wrap}
.weather__source a {text-decoration:underline;text-underline-offset:3px}
.weather__unavailable {padding:var(--space-lg)}
.weather__unavailable h2 {font-size:20px;margin-bottom:var(--space-md)}
.weather__unavailable p,.weather__unavailable a {font-size:13px}
.weather__unavailable a {display:inline-block;margin-top:var(--space-md);text-decoration:underline}
.weather-mobile-slot:empty {display:none}
.weather-mobile-slot {margin-bottom:var(--space-lg)}
.season-effects {position:fixed;inset:0;pointer-events:none;z-index:5;overflow:clip}
.season-particle {position:absolute;top:-40px;left:var(--particle-left);color:var(--particle);opacity:0;animation:season-fall var(--particle-duration) linear var(--particle-delay) infinite;will-change:transform,opacity}
.season-particle:nth-child(even) {color:var(--particle-secondary)}
.season-particle svg {width:var(--particle-size);height:var(--particle-size);stroke-width:1.2}
.season-particle--leaf svg,.season-particle--butterfly svg {fill:currentColor;stroke:none}
[data-effects="off"] .season-particle {display:none}
.season-effects--paused .season-particle {animation-play-state:paused}
.season-garland {display:none;position:absolute;top:100px;left:0;right:0;justify-content:space-around;border-top:1px solid var(--pine);height:16px;opacity:.85}
.season-garland i {width:7px;height:11px;border-radius:3px 3px 6px 6px;background:var(--light-gold);transform:translateY(-1px)}
.season-garland i:nth-child(3n) {background:var(--light-red)}
.season-garland i:nth-child(3n + 1) {background:var(--light-green)}
[data-season="newyear"] .season-garland {display:flex}
[data-season="winter"] .site-header::after,[data-season="newyear"] .site-header::after {content:"";position:absolute;left:0;right:0;bottom:-8px;height:10px;background:var(--frost);pointer-events:none;clip-path:polygon(0 0,100% 0,100% 25%,89% 30%,88% 95%,87% 25%,71% 30%,70% 90%,69% 25%,37% 25%,36% 100%,35% 25%,15% 25%,14% 85%,13% 25%,0 30%)}
@keyframes season-fall {0%{transform:translate3d(0,-30px,0) rotate(0);opacity:0}12%{opacity:.6}85%{opacity:.5}100%{transform:translate3d(var(--particle-drift),105dvh,0) rotate(var(--particle-turn));opacity:0}}
@supports not (backdrop-filter:blur(10px)) {.site-header,.post,.article,.sidebar__intro,.sidebar__memory,.welcome {background:var(--surface)}}
@media(min-width:1600px) {.welcome h1 {font-size:56px}}
@media(max-width:1199px) {
 .site-layout {grid-template-columns:180px minmax(0,1fr) 260px;gap:var(--space-ml);padding-inline:var(--space-lg)}
 .site-tools {padding-inline:var(--space-lg)}
 .brand {font-size:23px}.brand__crest {width:44px;height:54px}.brand__wordmark small {font-size:12px}
 .site-header__archive {display:none}.site-header__inner {gap:var(--space-lg)}
 .welcome h1 {font-size:42px}.welcome__text {padding:var(--space-lg)}
 .post {padding-inline:var(--space-lg)}.post__image {margin-inline:calc(-1 * var(--space-lg))}
 .weather__current {padding:var(--space-ml)}.weather__forecast {padding-inline:var(--space-ml)}.weather__source {padding-inline:var(--space-ml)}
 .post__title,.post--lead .post__title {font-size:25px}
}
@media(max-width:1023px) {
 .site-layout {grid-template-columns:180px minmax(0,1fr);max-width:960px}
 .sidebar {position:static;max-height:none;overflow:visible;padding:0;grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr));scrollbar-gutter:auto}
 .sidebar__weather-slot:empty {display:none}.sidebar__weather-slot {grid-column:1/-1}
 .weather-mobile-slot .weather {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr)}
 .weather-mobile-slot .weather__current {grid-row:1/3;border-radius:calc(var(--radius) - 1px) 18px 18px calc(var(--radius) - 1px)}
 .weather-mobile-slot .weather__source {grid-column:2;font-size:12px}
 .welcome h1 {font-size:44px}.weather__reading strong {font-size:56px}.weather__reading svg {width:52px;height:52px}
 .weather__details {font-size:12px;max-width:16ch}
}
@media(max-width:767px) {
 html {scroll-padding-top:150px}.site-header__inner {min-height:0;padding:var(--space-xs) var(--space-md);gap:var(--space-sm)}
 .brand {font-size:25px;gap:var(--space-xs)}.brand__crest {width:38px;height:46px}.brand__wordmark small {display:none}.brand__domain {display:inline;font-size:12px}
 .search {flex-basis:100%;max-width:none;min-height:40px}.search input,.search button {min-height:40px}.search input {font-size:16px}
 .site-tools {padding:var(--space-xs) var(--space-md);min-height:50px;justify-content:flex-end}.site-tools__date {display:none}
 .season-controls {gap:var(--space-xs)}.season-controls label {font-size:12px}.season-controls select {max-width:138px;font-size:12px;min-height:34px}
 .effects-toggle {min-height:34px;font-size:12px;padding-inline:var(--space-xs)}
 .site-layout {display:flex;padding:0 var(--space-md);gap:0}
 .navigation {padding:0;max-height:none;overflow:visible}
 .navigation__main {gap:var(--space-md);border-bottom-color:var(--rule)}
 .navigation__link {background:var(--transparent);box-shadow:none;border:0;border-radius:0;min-height:48px;font-size:12px;padding:var(--space-sm) 0;gap:var(--space-xs)}
 .navigation__link--active {border-bottom:2px solid var(--focus)}
 .navigation__services {padding-inline:0;margin:0}.navigation__services a {font-size:12px}
 .welcome {min-height:245px;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);margin-top:var(--space-xs);margin-bottom:var(--space-lg)}
 .welcome__text {padding:var(--space-lg) var(--space-xs) var(--space-lg) var(--space-ml)}
 .welcome h1 {font-size:36px;letter-spacing:-1.5px;line-height:1.02;max-width:8ch}.welcome p {font-size:12px;line-height:1.65}
 .welcome a {font-size:12px;padding-inline:var(--space-sm);gap:var(--space-xs);margin-top:var(--space-md)}.welcome a svg {width:14px;height:14px}
 .welcome__caption {font-size:12px;right:8px;bottom:8px;max-width:130px;text-align:center}
 .weather-mobile-slot .weather {grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .weather__current {padding:var(--space-md)}.weather__place {font-size:12px}.weather__place span:last-child {font-size:12px}
 .weather__reading {gap:var(--space-2xs)}.weather__reading strong {font-size:48px;letter-spacing:-3px}.weather__reading svg {width:40px;height:40px}
 .weather__condition {font-size:12px}.weather__details {font-size:12px}.weather__forecast {padding:var(--space-sm)}
 .weather__day {grid-template-columns:minmax(0,1fr) 18px 26px 26px;gap:var(--space-2xs);font-size:12px;min-height:34px}.weather__day small {font-size:12px}.weather__day svg {width:17px;height:17px}
 .weather__source {padding:var(--space-xs) var(--space-sm);font-size:12px;line-height:1.5}.weather-mobile-slot .weather__source {font-size:12px}
 .feed-heading__title {font-size:23px}.feed-heading span {font-size:12px}
 .feed-tabs {margin-bottom:var(--space-ml);padding:var(--space-2xs);gap:0;max-width:100%}.feed-tabs__link {font-size:12px;padding-inline:var(--space-sm);min-height:36px}
 .post {padding:var(--space-ml) var(--space-ml) 0;border-radius:20px}
 .post__title,.post--lead .post__title {font-size:25px;letter-spacing:-.8px;line-height:1.23}
 .post__meta {font-size:12px;gap:var(--space-xs)}.post__category {font-size:12px}.post__meta time {font-size:12px}.bookmark {width:32px;height:32px}.bookmark svg {width:16px;height:16px}
 .post__excerpt {font-size:15px;line-height:1.75}.post__image {margin-inline:calc(-1 * var(--space-ml))}.post__image--compact {padding:var(--space-sm)}
 .post__photo-count {right:12px;bottom:12px;font-size:12px;padding:var(--space-2xs) var(--space-xs)}
 .post__bottom {font-size:12px;gap:var(--space-xs);min-height:60px}.post__bottom span {font-size:12px}
 .article {padding:var(--space-lg) var(--space-ml);border-radius:20px}.article h1 {font-size:31px;letter-spacing:-1px}.article__body {font-size:16px}
 .sidebar {max-height:none;overflow:visible;margin-top:var(--space-lg);width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg)}
 .sidebar__intro {padding:var(--space-ml)}.sidebar__intro h2 {font-size:23px}.sidebar__intro p {font-size:12px}.sidebar__section {padding-inline:0}
 .season-particle:nth-child(n+5) {display:none}.season-garland {top:108px}
}
@media(max-width:389px) {
 .brand {font-size:24px}.brand__domain {display:inline}.season-controls label {display:none}
 .welcome h1 {font-size:33px}.welcome__text {padding-left:var(--space-md)}.welcome a {font-size:12px;padding-inline:var(--space-xs)}.welcome a svg {display:none}
 .post__title,.post--lead .post__title {font-size:23px}.post__bottom span {font-size:12px}.post__meta {gap:var(--space-xs)}.post__category,.post__meta time {font-size:12px}
 .sidebar {grid-template-columns:minmax(0,1fr)}.weather__reading strong {font-size:43px}.weather__reading svg {width:34px;height:34px}.weather__day {font-size:12px;grid-template-columns:minmax(0,1fr) 16px 24px 24px;gap:2px}
 .weather__day small {font-size:12px}.weather__forecast {padding-inline:var(--space-xs)}.feed-tabs__link {font-size:12px;padding-inline:var(--space-sm)}
}
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto}.season-particle {display:none!important}.season-effects * {animation:none!important}}

button:active,.button:active{transform:translateY(1px)}
h1,h2,h3{text-wrap:balance}
.season-garland{top:var(--header-height,100px)}

.search,.season-controls select{border-color:var(--muted)}
@media(pointer:coarse){.effects-toggle,.season-controls select{min-height:44px}}

/* Approved horse-and-sun identity: only foliage and lettering follow the season. */
:root {
 --brand-autumn:oklch(46% .12 48); --brand-winter:oklch(43% .10 245);
 --brand-spring:oklch(45% .13 145); --brand-summer:oklch(40% .11 155);
 --brand-holiday:oklch(40% .105 250); --brand-sun:oklch(76% .16 78);
 --brand-leaf-autumn:oklch(58% .15 48); --brand-leaf-winter:oklch(69% .06 225);
 --brand-leaf-spring:oklch(63% .15 140); --brand-leaf-summer:oklch(43% .13 150);
 --brand-red:oklch(53% .21 25); --leaf-vein:oklch(35% .08 55 / .55);
 --leaf-copper:oklch(53% .15 42); --brand-color:var(--brand-autumn); --brand-leaf:var(--brand-leaf-autumn);
}
:root[data-season="winter"] {--brand-color:var(--brand-winter);--brand-leaf:var(--brand-leaf-winter)}
:root[data-season="spring"] {--brand-color:var(--brand-spring);--brand-leaf:var(--brand-leaf-spring)}
:root[data-season="summer"] {--brand-color:var(--brand-summer);--brand-leaf:var(--brand-leaf-summer)}
:root[data-season="newyear"] {--brand-color:var(--brand-holiday);--brand-leaf:var(--brand-leaf-summer)}
.brand {gap:var(--space-xs);letter-spacing:-1.3px}
.brand__emblem {width:82px;height:82px;flex-shrink:0;overflow:visible;fill:none;stroke:none}
.brand__sun {color:var(--brand-sun)}
.brand__foliage {color:var(--brand-leaf)}
.brand__portrait {filter:none}
.brand__first {color:var(--brand-color)}
.brand__name {color:var(--ink)}
.brand__bloom {color:var(--bud);display:none}
.brand__frost {display:none;fill:none;stroke:var(--snow);stroke-width:4;stroke-linecap:round}
.brand__hat {display:none;stroke:none}
.brand__hat-cloth {fill:var(--brand-red)}
.brand__hat-trim {fill:var(--snow)}
[data-season="spring"] .brand__bloom {display:block}
[data-season="winter"] .brand__frost,[data-season="newyear"] .brand__frost,[data-season="newyear"] .brand__hat {display:block}
.brand__wordmark small {font-size:12px;letter-spacing:0}
.season-particle--leaf {animation-name:season-leaf-fall;perspective:160px}
.season-particle--leaf:nth-child(3n) {color:var(--leaf-copper)}
.season-leaf__sway,.season-leaf__flutter {display:block;transform-origin:50% 70%;will-change:transform}
.season-leaf__sway {animation:season-leaf-sway var(--leaf-sway) ease-in-out var(--particle-delay) infinite alternate}
.season-leaf__flutter {animation:season-leaf-flutter var(--leaf-flutter) ease-in-out var(--particle-delay) infinite}
.season-particle--leaf svg {display:block;overflow:visible}
.season-leaf__vein {fill:none;stroke:var(--leaf-vein);stroke-width:.8;stroke-linecap:round}
.season-effects--paused .season-leaf__sway,.season-effects--paused .season-leaf__flutter {animation-play-state:paused}
@keyframes season-leaf-fall {
 0% {transform:translate3d(0,-30px,0);opacity:0}
 9% {opacity:.64} 88% {opacity:.55}
 100% {transform:translate3d(var(--particle-drift),110dvh,0);opacity:0}
}
@keyframes season-leaf-sway {
 0% {transform:translateX(calc(-22px * var(--leaf-direction))) rotate(-28deg)}
 100% {transform:translateX(calc(22px * var(--leaf-direction))) rotate(32deg)}
}
@keyframes season-leaf-flutter {
 0% {transform:rotateY(-35deg) rotateZ(-12deg)}
 35% {transform:rotateY(65deg) rotateZ(20deg)}
 70% {transform:rotateY(150deg) rotateZ(-18deg)}
 100% {transform:rotateY(325deg) rotateZ(-12deg)}
}
@media(max-width:1199px) {.brand__emblem {width:70px;height:70px}}
@media(max-width:767px) {
 .brand {font-size:25px;gap:var(--space-xs)}
 .brand__emblem {width:58px;height:58px}
 .brand__wordmark small {display:block;font-size:12px;margin-top:2px}
}
@media(max-width:360px) {.brand {font-size:23px}.brand__emblem {width:52px;height:52px}}
@media(prefers-reduced-motion:reduce) {.season-leaf__sway,.season-leaf__flutter {animation:none}}
