/* Editorial templates and native blocks. Keep author-selected block styles authoritative. */
.inner-page{padding-block:clamp(40px,5.5vw,80px) clamp(64px,7vw,104px);background:linear-gradient(180deg,#faf8f5,#fff 240px)}
.inner-page__header{max-width:820px;margin:0 auto 40px;text-align:center}
.inner-page__header h1{margin:.35em 0 .65em;font-family:var(--serif);font-size:clamp(30px,3.5vw,46px);line-height:1.55;letter-spacing:.015em;color:var(--navy-900);text-wrap:balance;line-break:strict;word-break:normal;overflow-wrap:anywhere}
.inner-page__header>p:not(.eyebrow),.archive-description{max-width:42em;margin-inline:auto;color:var(--muted);line-height:1.9;text-align:left}
.archive-description p{margin-block:1em}
.entry__hero{margin-block:0 36px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--warm)}
.entry__hero img{display:block;width:100%;height:auto}
.entry-content{min-width:0;font-size:clamp(16px,1.3vw,17px);line-height:1.95;line-break:strict;word-break:normal;overflow-wrap:break-word}
:where(.entry-content)>:first-child{margin-top:0}
:where(.entry-content)>:last-child{margin-bottom:0}
:where(.entry-content) p{margin-block:1.25em}
:where(.entry-content) :is(h2,h3,h4,h5,h6){scroll-margin-top:calc(var(--header-height,88px) + 24px);font-family:var(--serif);line-height:1.6;letter-spacing:.01em;text-wrap:balance;line-break:strict;word-break:normal;overflow-wrap:break-word}
:where(.entry-content) h2{margin:2em 0 .85em;font-size:clamp(26px,2.7vw,34px);color:var(--navy-900)}
:where(.entry-content) h3{margin:1.7em 0 .75em;font-size:clamp(22px,2.2vw,28px);color:var(--navy-800)}
:where(.entry-content) h4{margin:1.5em 0 .7em;font-size:20px;color:var(--navy-800)}
:where(.entry-content) :is(ul,ol){margin-block:1.4em;padding-inline-start:1.5em}
:where(.entry-content) li+li{margin-top:.65em}
:where(.entry-content) li>p{margin-block:.65em}
:where(.entry-content) :is(ul,ol) :is(ul,ol){margin-block:.7em}
:where(.entry-content) a:where(:not(.wp-block-button__link)){color:var(--rose-600);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
:where(.entry-content) a:hover{text-decoration-thickness:2px}
.entry-content a:focus-visible,.sashi-search :focus-visible,.post-card a:focus-visible,.page-numbers:focus-visible,.sashi-related a:focus-visible{outline:3px solid var(--rose-600);outline-offset:4px}
:where(.entry-content) :is(img,video,iframe){max-width:100%}
:where(.entry-content .wp-block-image) img{height:auto;margin-inline:auto}
:where(.entry-content) figcaption{margin-top:12px;font-size:13px;line-height:1.8;color:var(--muted);text-align:center}
:where(.entry-content .wp-block-table){overflow-x:auto;scrollbar-width:thin;margin-block:28px}
:where(.entry-content) table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.8}
:where(.entry-content)>table{display:block;overflow-x:auto;max-width:100%;scrollbar-width:thin}
:where(.entry-content .wp-block-table) table:has(tr>:nth-child(4)){min-width:600px}
:where(.entry-content) :is(th,td){min-width:120px;padding:16px;border:1px solid var(--line);text-align:start;vertical-align:top;overflow-wrap:anywhere}
:where(.entry-content) th{background:var(--greige-100);font-weight:700}
:where(.entry-content) blockquote{margin:1.8em 0;padding:20px 24px;border-inline-start:3px solid var(--rose-600);background:var(--warm)}
:where(.entry-content blockquote)>:first-child{margin-top:0}
:where(.entry-content blockquote)>:last-child{margin-bottom:0}
:where(.entry-content) cite{font-size:14px;line-height:1.8;color:var(--muted)}
:where(.entry-content) pre{overflow-x:auto;max-width:100%;padding:20px;border-radius:12px;background:var(--greige-100);font-size:14px;line-height:1.7;white-space:pre}
:where(.entry-content) code{overflow-wrap:anywhere}
:where(.entry-content) .wp-block-buttons{gap:14px;margin-block:28px;max-width:100%}
:where(.entry-content) .wp-block-button{max-width:100%}
:where(.entry-content .wp-block-button__link){display:inline-flex;justify-content:center;align-items:center;min-height:48px;max-width:100%;text-decoration:none;border-radius:999px;padding:14px 24px;font-weight:700;line-height:1.65;white-space:normal;word-break:normal;overflow-wrap:break-word;text-wrap:balance}
:where(.entry-content) .wp-block-button__link:not(.has-background){background:var(--rose-600)}
:where(.entry-content) .wp-block-button__link:not(.has-text-color){color:#fff}
:where(.entry-content) .is-style-outline .wp-block-button__link:not(.has-background){background:transparent}
:where(.entry-content) .is-style-outline .wp-block-button__link:not(.has-text-color){color:var(--navy-900)}
:where(.entry-content .is-style-outline .wp-block-button__link){border:1px solid currentColor}
:where(.entry-content) .wp-block-details{border:1px solid var(--line);border-radius:14px;padding:20px 24px;margin-block:18px;background:#fff}
:where(.entry-content .wp-block-details) summary{min-height:32px;cursor:pointer;font-weight:700;color:var(--navy-900);list-style:revert;line-height:1.8}
:where(.entry-content .wp-block-details) summary:focus-visible{outline:3px solid var(--rose-600);outline-offset:4px}
:where(.entry-content .wp-block-details) p:last-child{margin-bottom:0}
:where(.entry-content) .sashi-panel{margin-block:36px;padding:32px;background:var(--warm);border:1px solid var(--line);border-radius:20px}
:where(.entry-content .sashi-panel) h2{margin-top:0}
:where(.entry-content) .sashi-panel--cta{text-align:center;background:var(--greige-100)}
:where(.entry-content .sashi-panel--cta) .wp-block-buttons{justify-content:center}
.sashi-flexible__content>*{max-width:820px;margin-inline:auto}
.sashi-flexible__content>.alignwide,.sashi-flexible__content>.alignfull{max-width:100%}
.sashi-entry-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-block:20px;font-size:13px;line-height:1.8;color:var(--muted)}
.sashi-entry-meta>span{display:inline-block}
.sashi-entry-meta a,.sashi-entry-categories a{color:var(--rose-600);text-decoration:underline;text-underline-offset:4px}
.sashi-entry-categories{font-size:13px;line-height:1.8;margin-block:16px}
.sashi-author,.sashi-related{margin-block:40px;padding:30px;border:1px solid var(--line);border-radius:18px;background:var(--warm)}
.sashi-author h2,.sashi-related h2{font-size:22px;font-family:var(--serif);line-height:1.6;color:var(--navy-900);margin:0 0 18px;text-wrap:balance}
.sashi-author p{margin-block:12px;line-height:1.9}
.sashi-related ul{margin:0;padding-inline-start:1.3em}
.sashi-related li+li{margin-top:14px}
.sashi-related a{display:inline-block;padding-block:5px;text-decoration:underline;text-underline-offset:4px;line-height:1.85}

/* Main-query cards support posts, pages, missing images and arbitrary titles. */
.post-list{display:grid;gap:24px}
.post-card{min-width:0}
.post-card>a{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:stretch;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-sm);color:var(--ink)}
.post-card__thumb{min-width:0;overflow:hidden;border-radius:17px 0 0 17px;background:var(--greige-100)}
.post-card__thumb img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;object-position:center}
.post-card__body{min-width:0;padding:26px;overflow-wrap:anywhere}
.post-card__body time{font-size:12px;color:var(--muted)}
.post-card__body h2{margin:8px 0 12px;font-family:var(--serif);font-size:22px;line-height:1.6;color:var(--navy-900);text-wrap:balance;word-break:normal}
.post-card__body p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;margin:0;color:var(--muted);font-size:15px;line-height:1.85}
.post-card>a:hover h2{text-decoration:underline;text-underline-offset:4px}
.post-card--no-image>a{grid-template-columns:1fr}
.pagination,.post-navigation,.page-links{margin-block:36px}
.nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.pagination .page-numbers,.page-links .post-page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;font-size:14px;line-height:1.5}
.pagination .page-numbers.current,.page-links .current{background:var(--navy-900);color:#fff}
.post-navigation{padding-top:24px;border-top:1px solid var(--line)}
.post-navigation .nav-links{justify-content:space-between;gap:24px}
.post-navigation .nav-previous,.post-navigation .nav-next{flex:1;min-width:min(240px,100%);overflow-wrap:anywhere}
.post-navigation .nav-next{text-align:right}
.post-navigation a{display:block;min-height:44px;color:var(--navy-900);text-decoration:underline;text-underline-offset:4px;line-height:1.85}
.post-navigation a span{display:block;margin-bottom:8px;color:var(--muted);font-size:12px}
.page-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:14px}
.sashi-search{display:flex;gap:10px;max-width:640px;margin:28px auto}
.sashi-search input{min-width:0;flex:1;min-height:48px;border:1px solid #82919f;border-radius:10px;padding:12px 16px;background:#fff;font:inherit;font-size:16px;line-height:1.5;color:var(--ink)}
.sashi-search input::placeholder{color:var(--muted);opacity:1}
.sashi-search button{flex-shrink:0;min-height:48px;padding:12px 22px;white-space:nowrap;font-size:15px}
.sashi-empty{padding:24px 0;text-align:center}
.sashi-empty p{color:var(--muted);line-height:1.9}
.sashi-editor-content{overflow:visible}
.post-password-form p{display:flex;flex-wrap:wrap;align-items:end;gap:12px;line-height:1.9}
.post-password-form label{display:grid;gap:8px;min-width:0;max-width:100%}
.post-password-form input[type=password]{width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid #82919f;border-radius:10px;font-size:16px}
.post-password-form input[type=submit]{min-height:48px;padding:12px 24px;border:0;border-radius:999px;background:var(--rose-600);color:#fff;font-size:15px;font-weight:700;cursor:pointer}
@media(max-width:767px){
 .post-card>a{grid-template-columns:minmax(160px,.35fr) minmax(0,.65fr)}
 .post-card__body{padding:22px}
 .post-card--no-image>a{grid-template-columns:1fr}
}
@media(max-width:599px){
 .inner-page__header{margin-bottom:32px}
 .inner-page__header h1{font-size:clamp(30px,7.5vw,38px)}
 .entry__hero{margin-bottom:28px;border-radius:16px}
 :where(.entry-content) .sashi-panel,.sashi-author,.sashi-related{padding:24px 20px;border-radius:16px}
 :where(.entry-content) :is(th,td){padding:12px;min-width:110px}
 :where(.entry-content) blockquote{padding:20px}
 :where(.entry-content) .wp-block-details{padding:20px}
 :where(.entry-content .wp-block-button__link){padding:13px 20px}
 .post-card>a{grid-template-columns:1fr}
 .post-card__thumb{aspect-ratio:16/9;border-radius:17px 17px 0 0}
 .post-card__thumb img{aspect-ratio:16/9}
 .post-card__body{padding:24px 22px}
 .post-card__body h2{font-size:21px}
 .sashi-search{gap:8px}
 .sashi-search input{padding:12px;max-width:100%}
 .sashi-search button{padding:12px 18px}
 .sashi-entry-meta{gap:8px 12px;font-size:12px}
 .post-navigation .nav-next{text-align:left}
}
