/* Journal uses the existing Revolt palette, font registry and shared chrome. */
/* Home editorial carousel: shared multi-item structure, native scroll/snap variant. */
.home-journal{background:var(--cream);padding:clamp(56px,7vw,104px) 0;color:var(--navy)}
.journal-carousel{--carousel-columns:3;--carousel-gap:32px;overflow:visible}
.journal-heading{max-width:780px;margin-bottom:32px}.journal-eyebrow,.journal-category{font:500 11px/1.6 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;margin:0 0 16px}
.journal-heading h2{font:500 clamp(30px,3.2vw,48px)/1.2 var(--font-heading);letter-spacing:-.03em;margin:0 0 20px}.journal-description{font:300 20px/1.7 var(--font-body);margin:0;max-width:680px}
.journal-controls{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin:0 0 24px}.journal-controls[hidden]{display:none}.journal-controls button{width:46px;height:46px;border:1px solid #2c2d4140;color:var(--navy);background:transparent;font:400 23px var(--font-ui);transition:background .3s,color .3s}.journal-controls button:hover:not(:disabled){color:var(--cream);background:var(--navy)}.journal-controls button:disabled{opacity:.3}.journal-position{font:400 12px var(--font-ui);font-variant-numeric:tabular-nums;min-width:50px;text-align:center}
@media(min-width:992px){.journal-carousel:is([data-count="1"],[data-count="2"],[data-count="3"]) .journal-controls{display:none}}
@media(min-width:768px) and (max-width:991.98px){.journal-carousel:is([data-count="1"],[data-count="2"]) .journal-controls{display:none}}
.journal-track.multi-track{align-items:stretch;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;transform:none;transition:none;padding:6px 4px 10px;margin:0 -4px}.journal-track::-webkit-scrollbar{display:none}.journal-card{scroll-snap-align:start;display:flex;flex-direction:column}.journal-image{display:block;overflow:hidden;aspect-ratio:4/3;background:var(--beige)}.journal-card .journal-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.journal-card:hover .journal-image img{transform:scale(1.02)}
.journal-track:focus-visible{outline:2px solid var(--sage);outline-offset:4px}
.journal-copy{padding:24px 0 0;display:flex;flex-direction:column;flex:1;min-width:0}.journal-category{font-size:10px;margin:0 0 12px;letter-spacing:.1em}.journal-card h3{font:500 clamp(21px,1.7vw,26px)/1.35 var(--font-heading);margin:0 0 16px;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.journal-card h3 a{text-decoration:none;transition:opacity .3s}.journal-card h3 a:hover{opacity:.7}.journal-excerpt{font:300 17px/1.75 var(--font-body);margin:0 0 20px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}.journal-copy time{font:400 11px/1.5 var(--font-ui);opacity:.7;margin-top:auto}.journal-read,.journal-all{font:500 12px/1.6 var(--font-ui);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:6px;transition:text-decoration-color .3s;align-self:flex-start}.journal-read{margin-top:16px}.journal-read span,.journal-all span{display:inline-block;margin-left:8px;transition:transform .3s}.journal-read:hover,.journal-all:hover{text-decoration-color:currentColor}.journal-read:hover span,.journal-all:hover span{transform:translateX(3px)}.journal-all{display:inline-block;margin-top:40px}
@media(max-width:991.98px){.journal-carousel{--carousel-columns:2;--carousel-gap:24px}}
@media(max-width:767.98px){.journal-carousel{--carousel-columns:1;--carousel-gap:20px}.journal-description{font-size:18px}.journal-heading{margin-bottom:24px}.journal-all{margin-top:28px}}
@media(prefers-reduced-motion:reduce){.home-journal *{transition:none}.journal-card:hover .journal-image img,.journal-read:hover span,.journal-all:hover span{transform:none}}
.blog-page{background:var(--cream);min-height:55vh;padding:clamp(44px,7vw,100px) 0}.blog-shell{width:88%;max-width:1440px;margin:auto}.blog-index-header{max-width:860px;margin-bottom:64px}.blog-page h1{font-size:clamp(38px,5vw,68px);line-height:1.13;letter-spacing:-.035em;margin:16px 0 24px}.blog-eyebrow{font:500 11px/1.5 var(--font-ui);text-transform:uppercase;letter-spacing:.14em;color:var(--ink)}.blog-intro{font:300 clamp(18px,2vw,23px)/1.65 var(--font-body)}.blog-card{height:100%;background:#fff}.blog-card img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.blog-card-copy{padding:28px}.blog-card h2{font:500 23px/1.35 var(--font-heading);margin:14px 0 18px}.blog-card h2 a{text-decoration:none}.blog-card h2 a:hover{text-decoration:underline;text-underline-offset:4px}.blog-card time,.blog-meta,.blog-back{font:400 12px/1.6 var(--font-ui);color:var(--ink)}.blog-article{max-width:1000px;margin:auto}.blog-article-header{max-width:860px;margin:36px auto}.blog-article-header h1{overflow-wrap:anywhere}.blog-featured{display:block;width:100%;height:auto;margin:40px auto 56px}.blog-prose{max-width:740px;margin:auto;font:300 19px/1.8 var(--font-body);overflow-wrap:anywhere}.blog-prose h2{font-size:32px;line-height:1.3;margin:44px 0 22px}.blog-prose h3{font-size:24px;line-height:1.4;margin:30px 0 18px}.blog-prose p{margin-bottom:24px}.blog-preview{padding:16px;border:1px solid var(--ink);font:500 12px var(--font-ui)}.blog-pagination{display:flex;flex-wrap:wrap;gap:10px;margin-top:48px}.blog-pagination a{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--navy);text-decoration:none}.blog-pagination a[aria-current]{background:var(--navy);color:var(--cream)}.blog-empty{padding:30px 0 70px}
@media(min-width:992px) and (max-width:1199.98px){.navbar,.site-header.compact .navbar{height:auto;min-height:80px}.nav-container{padding-block:12px}.navbar-collapse{padding:20px 0}.navbar-nav{align-items:stretch;gap:10px}.navbar .nav-link{font-size:16px}.language-switcher--navbar{margin:16px 0 0}.navbar-collapse.show{overflow:visible}.language-switcher--navbar .language-switcher__menu{--bs-position:start;right:auto;left:0}}
@media(max-width:575px){.blog-shell{width:88%}.blog-index-header{margin-bottom:36px}.blog-prose{font-size:18px}.blog-card-copy{padding:24px}.blog-prose h2{font-size:28px}.blog-featured{margin:30px 0}}
.blog-prose img{display:block;max-width:100%;height:auto;margin:32px auto}

/* Editorial blocks extend the established journal, using the original font variables. */
.blog-article-header .blog-eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.blog-article-header .blog-eyebrow time{font:inherit}
.blog-prose :is(h2,h3){font-family:var(--font-heading)}.blog-prose h2{margin-top:clamp(42px,6vw,68px)}.blog-prose :is(ul,ol){padding-left:1.4em;margin:28px 0}.blog-prose li{padding-left:6px;margin-bottom:12px}
.blog-media{margin:44px 0}.blog-media img{display:block;width:100%;height:auto;margin:0}.blog-media figcaption{font:400 12px/1.7 var(--font-ui);color:var(--ink);margin-top:14px;grid-column:1/-1}.blog-media--pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.blog-media--pair img{height:100%;max-height:440px;object-fit:cover;aspect-ratio:4/3}
.blog-media--wide{width:min(1000px,88vw);max-width:none;position:relative;left:50%;transform:translateX(-50%)}.blog-highlight{border-left:2px solid var(--ink);background:#fff;padding:26px 30px;margin:38px 0;font:300 22px/1.65 var(--font-body)}.blog-highlight p{margin:0}.blog-prose blockquote{border-left:2px solid var(--ink);padding-left:26px;margin:36px 0}
.blog-article-footer{max-width:740px;margin:70px auto 0}.blog-cta{border-top:1px solid #2c2d4126;padding:40px 0 10px}.blog-cta h2,.blog-related>h2{font:500 clamp(26px,3vw,38px)/1.25 var(--font-heading)}.blog-cta>p:not(.blog-eyebrow){font:300 20px/1.75 var(--font-body)}.blog-related{margin:80px auto 0;max-width:1200px}.blog-related>h2{margin-bottom:32px}.blog-related h3{font:500 22px/1.4 var(--font-heading)}
@media(max-width:575px){.blog-media--pair{grid-template-columns:1fr}.blog-media--pair img{height:auto}.blog-highlight{padding:22px;font-size:20px}.blog-article-footer{margin-top:48px}.blog-related{margin-top:56px}}

.blog-cta .revolt-button:hover{background:var(--ink);color:#fff}.blog-cta .revolt-button:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
