/* Journal refinements extend the accepted GWIND tokens; no new visual theme. */
.journal-page{--gutter:clamp(24px,4.5vw,86px);--journal-soft-shadow:0 0 0 1px rgb(21 28 25 / .045),0 2px 3px -2px rgb(21 28 25 / .08),0 16px 28px -22px rgb(21 28 25 / .24);font-size:17px}
.journal-page .site-nav{font-size:15px;gap:24px}
.journal-page .button,.journal-page .text-button{font-size:16px;line-height:1.4;min-height:50px;padding:13px 22px}
.journal-page .header-quote{font-size:14px;min-height:46px;white-space:nowrap}
.journal-page .button:active,.journal-page .text-button:active{background:var(--control-active);color:#fff;border-color:var(--control-active)}
.journal-page .footer-bottom p,.journal-page .footer-bottom nav{font-size:15px;line-height:1.6}
.journal-page .footer-bottom nav{flex-wrap:wrap;gap:16px 24px}
.journal-page .enquiry-footer{margin-top:72px}
.journal-page main:focus{outline:none}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.brand-yellow{color:var(--yellow)}
.journal-hero,.journal-content{max-width:1520px}
/* List-only breathing room before the shared closing CTA, including filters
   and the fully loaded state; article pages keep their existing spacing. */
.journal-content:has(.journal-library){padding-bottom:clamp(48px,5vw,72px)}
.journal-hero{padding-block:40px 30px}
.journal-hero h1{margin:0;font:900 italic clamp(76px,7.8vw,116px)/.95 var(--display);letter-spacing:-.025em}
.journal-hero h1>span{display:inline-block;padding:.05em .04em .08em 0}
.journal-hero p{font-size:19px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.journal-filters{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px;scroll-margin-top:12px}
.journal-filters fieldset{border:0;padding:0;margin:0;min-width:0}
.category-scroll{min-width:0}
.journal-filters .choices{display:flex;flex-wrap:wrap;gap:8px}
.journal-filters .choice>span{font-size:16px;min-height:48px;padding:12px 17px;white-space:nowrap}
.journal-filters .choice input:focus-visible+span{outline:2px solid #947000;outline-offset:4px}
.journal-search{width:230px;flex-shrink:0;position:relative}
.journal-search input{width:100%;padding:12px 48px 12px 17px;border:1px solid var(--control-edge);border-radius:25px;background:#fff;color:var(--ink);font:500 16px/1.5 var(--copy);min-height:48px}
.journal-search-icon{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--muted);pointer-events:none}
.journal-search input::placeholder{color:var(--muted);opacity:1}
.journal-search input:focus{border-color:var(--ink);outline:2px solid rgb(255 194 0 / .2);outline-offset:2px}
.featured-article{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(28px,3.3vw,48px);padding:20px;background:#fff;border-radius:22px;box-shadow:var(--journal-soft-shadow);align-items:center}
.featured-image{display:block;background:#111914;border-radius:16px;overflow:hidden;min-width:0;aspect-ratio:2.1}
.featured-image img{display:block;width:100%;height:100%;object-fit:contain;padding:18px}
.featured-copy{padding:12px 20px 12px 0;min-width:0}
.article-category{font-size:16px;line-height:1.5;color:var(--muted);margin:0 0 12px;font-weight:600}
.featured-copy h2{font:750 clamp(30px,2.6vw,40px)/1.18 var(--copy);letter-spacing:-.035em;text-wrap:balance;margin:0 0 18px;max-width:23ch}
.featured-copy>p:not(.article-category){font-size:18px;line-height:1.65;color:var(--muted);max-width:44ch;margin:0 0 24px}
.featured-copy .button{justify-content:center}
.featured-copy h2 a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:5px;text-decoration-thickness:2px}
.journal-library{margin-top:48px}
.featured-article[hidden]+.journal-library{margin-top:34px}
.library-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}
.library-heading h2{font:750 clamp(28px,2.3vw,34px)/1.25 var(--copy);letter-spacing:-.035em;margin:0}
.library-heading>p{font-size:16px;line-height:1.5;color:var(--muted);margin:0}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 28px}
.article-card{min-width:0}
/* Journal list only: spaced cards with a softer, wider hover shadow. */
.journal-library .article-grid{gap:60px 40px}
.journal-library .article-card-link{padding:12px}
.journal-library .article-card-link::before{inset:0;box-shadow:0 22px 60px -22px rgb(21 28 25 / .16),0 6px 24px -12px rgb(21 28 25 / .06)}
.journal-library .article-card[data-journal-enter='pending']{opacity:0;transform:translateY(22px)}
.journal-library .article-card[data-journal-enter='revealing']{animation:journal-card-enter 620ms cubic-bezier(.22,.61,.36,1) var(--journal-card-delay,0ms) both}
@keyframes journal-card-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.journal-library .article-grid{gap:40px}.journal-library .article-card-link{padding:10px}}
@media(prefers-reduced-motion:reduce){.journal-library .article-card[data-journal-enter]{opacity:1;transform:none;animation:none}}
.article-card-link{position:relative;isolation:isolate;display:block;height:100%;border-radius:22px;scroll-margin-top:12px;background:transparent;transition:background-color 220ms ease}
.article-card-link::before{content:"";position:absolute;inset:-12px;z-index:-1;border-radius:22px;background:#fff;box-shadow:var(--enquiry-card-shadow);opacity:0;pointer-events:none;transition:opacity 220ms ease}
.article-card-link:focus-visible,.article-card-link:active{background:#fff}
.article-card-link:focus-visible::before,.article-card-link:active::before{opacity:1}
@media(hover:hover) and (pointer:fine){.article-card-link:hover{background:#fff}.article-card-link:hover::before{opacity:1}}
.article-card-link:focus-visible{outline:2px solid #947000;outline-offset:7px}
.article-image{display:block;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:#eaf0eb;box-shadow:inset 0 0 0 1px rgb(21 28 25 / .035)}
.article-image img{display:block;width:100%;height:100%;object-fit:cover}
.article-image img.fit-contain{object-fit:contain;padding:16px;background:#fff}
.article-image:has(img[src*="factory-product"]),.article-image img.fit-contain[src*="factory-product"]{background:#111914}
.card-copy{padding:20px 2px 0}
.card-copy .article-category{margin-bottom:10px}
.article-card h3{font:750 clamp(24px,1.85vw,28px)/1.28 var(--copy);letter-spacing:-.025em;text-wrap:balance;margin:0 0 12px;min-height:2.56em;max-width:30ch}
.card-excerpt{font-size:17px;line-height:1.65;color:var(--muted);margin:0;max-width:44ch;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.95em}
.article-card-link h3{color:var(--ink)}
.load-more-row{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:38px}
.load-more-row:has(button[hidden]){margin-top:0}
.load-more-row>p{font-size:16px;line-height:1.5;color:var(--muted);margin:0}
.journal-empty{padding:44px 24px;background:#fff;border:1px solid var(--line);border-radius:22px;text-align:center}
.journal-empty h3{font-size:28px;line-height:1.3;margin:0 0 12px;letter-spacing:-.025em}
.journal-empty p{font-size:18px;line-height:1.6;color:var(--muted);margin:0 0 24px}
.journal-cta{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:64px;padding:36px 40px;border:1px solid var(--line);border-radius:22px;background:#fff}
.journal-cta h2{font:900 italic clamp(40px,3.6vw,56px)/1.02 var(--display);letter-spacing:-.02em;margin:0 0 16px}
.journal-cta p{font-size:18px;line-height:1.6;color:var(--muted);margin:0}
.cta-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end}
.journal-article,.journal-content:has(.related-articles){max-width:1800px}
.journal-article{padding-top:36px}
.article-header{margin:0 0 32px}
.back-to-journal{display:inline-flex;margin-bottom:26px;min-height:46px}
.article-meta{display:flex;flex-wrap:wrap;gap:10px 26px;font-size:16px;line-height:1.6;color:var(--muted);margin-bottom:18px}
.article-meta a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}
.article-meta a:hover{text-decoration-color:var(--yellow);color:var(--ink)}
.article-header h1{font:900 italic clamp(48px,5.2vw,72px)/1.04 var(--display);letter-spacing:-.02em;text-wrap:balance;max-width:27ch;margin:0 0 20px}
.article-lead{font-size:21px;line-height:1.65;color:var(--muted);max-width:65ch;margin:0}
.article-cover{margin:0 0 46px;aspect-ratio:2.5;border-radius:22px;overflow:hidden;background:#111914}
.article-cover img{display:block;width:100%;height:100%;object-fit:cover}
.article-cover.contain{aspect-ratio:3}
.article-cover.contain img{object-fit:contain;padding:24px}
.article-cover:has(img[src*="unfolded"]){aspect-ratio:2.15;background:#fff}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:clamp(40px,4vw,72px);align-items:start}
.article-body{min-width:0;font-size:18px;line-height:1.8}
.article-section{scroll-margin-top:12px;margin-bottom:44px}
.article-section:focus{outline:none}
.article-section:last-child{margin-bottom:0}
.article-section h2{font:750 clamp(28px,2.2vw,33px)/1.3 var(--copy);letter-spacing:-.025em;margin:0 0 20px;max-width:30ch}
.article-section p{margin:0 0 22px;max-width:90ch}
.article-section p:last-child{margin-bottom:0}
.body-link{font-weight:650;text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:2px;text-underline-offset:5px}
.body-link:hover{text-decoration-color:var(--ink)}
.article-table-wrap{margin:28px 0;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#fff;overscroll-behavior-inline:contain}
.article-table-wrap table{width:100%;border-collapse:collapse;min-width:440px;font-size:17px;line-height:1.6}
.article-table-wrap th,.article-table-wrap td{padding:17px 20px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.article-table-wrap thead{background:#eef2ee}
.article-table-wrap th{font-weight:700}
.article-table-wrap tbody tr:last-child th,.article-table-wrap tbody tr:last-child td{border-bottom:0}
.article-table-wrap thead th:first-child{width:30%}
.article-figure{margin:30px 0}
.article-figure img{display:block;width:100%;max-height:460px;object-fit:contain;background:#fff;border-radius:18px}
.article-figure figcaption{font-size:16px;line-height:1.7;color:var(--muted);margin-top:12px}
.article-body blockquote{margin:30px 0;padding:4px 0 4px 22px;border-left:3px solid var(--yellow);font-size:22px;line-height:1.6;font-weight:600;letter-spacing:-.02em}
.article-sidebar{position:sticky;top:112px;min-width:0;display:grid;gap:18px;max-height:calc(100dvh - 128px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;padding:2px 2px 8px;margin:-2px -2px -8px;overscroll-behavior-y:contain}
.article-toc{min-width:0;background:#fff;border-radius:22px;padding:24px;box-shadow:var(--journal-soft-shadow)}
.article-toc summary{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:19px;line-height:1.5;font-weight:750;list-style:none;cursor:pointer;min-height:32px}
.article-toc summary::-webkit-details-marker{display:none}
.toc-toggle-label{font-size:16px;font-weight:600;color:var(--muted)}
.article-toc nav{display:grid;gap:4px;margin-top:14px}
.article-toc nav a{font-size:16px;line-height:1.6;padding:10px 0 10px 14px;border-left:2px solid transparent;color:var(--muted);transition:color 220ms ease,border-color 220ms ease}
.article-toc nav a:hover{color:var(--ink)}
.article-toc nav a[aria-current]{border-left-color:var(--yellow);color:var(--ink);font-weight:650}
.studio-ad{background:var(--ink);color:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--journal-soft-shadow)}
.studio-ad-image{display:block;aspect-ratio:3/2;background:var(--ink);overflow:hidden}
.studio-ad-image img{display:block;width:100%;height:100%;object-fit:cover}
.studio-ad-copy{padding:18px}
.studio-ad h2{font:900 italic 34px/1.02 var(--display);letter-spacing:-.015em;margin:0 0 16px}
.studio-ad h2 span{color:var(--yellow)}
.journal-page .studio-ad-button{background:#fff;color:var(--ink);border-color:#fff;width:100%;justify-content:center;min-height:48px;padding:12px 10px;font-size:16px}
.related-articles{margin-top:56px}
.journal-page[data-blog="article"] .journal-content:has(.related-articles){padding-bottom:60px}
@media(max-width:1200px){
 .journal-page .site-nav{gap:16px;font-size:14px}.journal-page .header-inner{gap:20px}
 .journal-filters{flex-direction:column;align-items:stretch;gap:16px}
 .journal-search{width:100%;max-width:360px}
 .featured-copy{padding-right:8px}.featured-copy h2{font-size:32px}.featured-copy>p:not(.article-category){font-size:17px}
 .article-layout{gap:40px;grid-template-columns:minmax(0,1fr) 244px}.article-toc{padding:22px}
 .cta-actions{flex-direction:column;align-items:stretch}
}
@media(max-width:1100px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){
 .article-layout{grid-template-columns:1fr;gap:30px}.article-sidebar{display:contents;position:static;max-height:none;overflow:visible;padding:0;margin:0}.article-toc{grid-row:1;padding:20px 24px}.studio-ad{grid-row:3;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}.studio-ad-image{aspect-ratio:3/2}.studio-ad-copy{padding:24px}.studio-ad h2{font-size:42px}
 .article-toc summary{font-size:18px}.article-toc nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 20px}
 .featured-article{grid-template-columns:1fr 1fr;gap:24px}.featured-image{aspect-ratio:1.6}.featured-copy h2{font-size:30px}
 .journal-cta{align-items:flex-start;padding:32px;gap:28px}
 .journal-page .site-nav{display:none;position:absolute;left:0;right:0;top:83px;padding:16px var(--gutter) 24px;background:var(--paper);border-bottom:1px solid var(--line);font-size:16px;gap:4px}
 .journal-page .site-nav.is-open{display:grid}.journal-page .menu-toggle{display:block;flex-shrink:0}.journal-page .header-quote{margin-left:auto}
 .journal-page .site-nav a[aria-current]::after{width:35px;right:auto}
}
@media(max-width:700px){
 .journal-page .header-inner{gap:9px}.journal-page .header-quote{font-size:13px;min-height:44px;padding:11px 12px}
 .journal-page .brand{width:108px;flex-shrink:0}.journal-page .site-nav{top:71px}
 .journal-hero{padding-block:30px 24px}.journal-hero h1{font-size:clamp(64px,16.6vw,94px)}.journal-hero p{font-size:18px;max-width:28ch;margin-top:8px}
 .journal-filters{gap:16px;margin-bottom:24px}.category-scroll{overflow-x:auto;padding:4px 0;scrollbar-width:none;overscroll-behavior-inline:contain}.category-scroll::-webkit-scrollbar{display:none}.journal-filters .choices{width:max-content;flex-wrap:nowrap}.journal-filters .choice>span{font-size:16px;padding:11px 15px;min-height:46px}
 .journal-search{max-width:none}.journal-search input{min-height:48px}
 .featured-article{grid-template-columns:1fr;padding:16px;gap:22px}.featured-image{aspect-ratio:1.85;border-radius:16px}.featured-image img{padding:12px}
 .featured-copy{padding:0 6px 8px}.featured-copy h2{font-size:28px;max-width:24ch;margin-bottom:16px}
 .featured-copy>p:not(.article-category){font-size:17px;margin-bottom:22px}.article-category{font-size:16px}
 .journal-library{margin-top:36px}.featured-article[hidden]+.journal-library{margin-top:28px}
 .library-heading{align-items:flex-start;gap:12px;margin-bottom:22px}.library-heading h2{font-size:27px}.library-heading>p{font-size:16px;padding-top:4px;white-space:nowrap}
 .article-grid{grid-template-columns:1fr;gap:34px}.article-image{aspect-ratio:16/9;border-radius:18px}.article-card-link{border-radius:18px}
 .card-copy{padding-top:18px}.article-card h3{font-size:26px;min-height:0;max-width:27ch;margin-bottom:12px}.card-excerpt{font-size:17px;min-height:0;-webkit-line-clamp:3}
 .load-more-row{margin-top:30px}
 .journal-cta{flex-direction:column;gap:24px;padding:26px 24px;margin-top:46px}.journal-cta h2{font-size:43px}.journal-cta p{font-size:17px}.cta-actions{width:100%;gap:12px}
 .journal-article{padding-top:26px}.article-header{margin-bottom:26px}.back-to-journal{margin-bottom:24px}
 .article-meta{font-size:16px;gap:8px 20px;margin-bottom:16px}
 .article-header h1{font-size:clamp(43px,11.5vw,62px);max-width:25ch;margin-bottom:18px}
 .article-lead{font-size:19px;line-height:1.65}.article-cover,.article-cover.contain{aspect-ratio:1.85;margin-bottom:28px;border-radius:18px}
 .article-cover.contain img{padding:12px}.article-cover:has(img[src*="unfolded"]){aspect-ratio:1.7}
 .article-layout{gap:28px}.article-body{font-size:17px;line-height:1.8}.article-section{margin-bottom:36px;scroll-margin-top:12px}
 .article-section h2{font-size:28px;margin-bottom:18px}.article-section p{margin-bottom:20px}
 .article-toc{padding:18px 20px;border-radius:18px}.studio-ad{grid-template-columns:1fr;border-radius:18px}.studio-ad-copy{padding:24px}.studio-ad h2{font-size:42px}.article-toc nav{grid-template-columns:1fr}
 .article-body blockquote{font-size:21px;padding-left:20px}.article-table-wrap table{font-size:16px;min-width:0;table-layout:fixed}.article-table-wrap thead th:first-child{width:34%}.article-table-wrap th,.article-table-wrap td{padding:14px 10px;overflow-wrap:break-word}
 .article-figure figcaption{font-size:16px}.related-articles{margin-top:44px}.journal-page .enquiry-footer{margin-top:48px}
 .journal-page .footer-title{font-size:clamp(54px,13.5vw,90px)}.journal-page .footer-bottom{align-items:flex-start;gap:18px}.journal-page .footer-bottom nav{gap:14px 20px}.journal-page .footer-bottom p{margin:0}
}
@media(max-width:360px){
 .journal-page .header-inner{gap:8px}.journal-page .brand{width:86px}.journal-page .header-quote{font-size:12px;padding-inline:10px}
 .journal-page .menu-toggle{width:42px;height:42px}.journal-page .footer-title{font-size:clamp(46px,13.5vw,54px)}
 .library-heading{flex-wrap:wrap}.library-heading>p{padding-top:0}
}
@media(prefers-reduced-motion:no-preference){.journal-hero h1,.article-header h1{animation:journal-title .55s cubic-bezier(.2,.65,.2,1) both}.journal-hero>p,.article-lead{animation:journal-copy .45s .1s ease both}}
@keyframes journal-title{from{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(10px)}to{opacity:1;clip-path:inset(-8% -8% -8% -8%);transform:translateY(0)}}
@keyframes journal-copy{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.article-toc nav a,.article-card-link,.article-card-link::before{transition:none}}

/* A centered reading feed owns the page axis; the unchanged rail sits outside it. */
@media(min-width:1001px){
 .journal-page[data-blog="article"]{--article-reading-width:900px;--article-sidebar-width:264px;--article-column-gap:24px}
 .journal-page[data-blog="article"] .journal-article,
 .journal-page[data-blog="article"] .journal-content:has(.related-articles){width:calc(100% - 2 * (var(--article-sidebar-width) + var(--article-column-gap) + 24px));max-width:var(--article-reading-width);padding-inline:0}
 .journal-page[data-blog="article"] .article-header,
 .journal-page[data-blog="article"] .article-cover,
 .journal-page[data-blog="article"] .related-articles{width:100%;max-width:var(--article-reading-width)}
 .journal-page[data-blog="article"] .journal-article{padding-top:44px}
 .journal-page[data-blog="article"] .article-meta{justify-content:center;align-items:center;gap:16px;font-size:14px;margin-bottom:20px}
 .journal-page[data-blog="article"] .article-meta a{padding:6px 13px;border:1px solid #dce3dc;border-radius:999px;background:#fff;color:#151c19;text-decoration:none}
 .journal-page[data-blog="article"] .article-header h1{text-align:center;font-size:clamp(48px,4.5vw,64px);line-height:1.08;margin-inline:auto}
 .journal-page[data-blog="article"] .article-lead{text-align:center;font-size:20px;margin-inline:auto}
 .journal-page[data-blog="article"] .article-layout{grid-template-columns:minmax(0,1fr) 0;gap:0}
 .journal-page[data-blog="article"] .article-sidebar{width:calc(var(--article-sidebar-width) + 4px);margin-left:calc(var(--article-column-gap) - 2px)}
}
@media(min-width:1001px) and (max-width:1200px){.journal-page[data-blog="article"]{--article-sidebar-width:244px}}
