/* Approved journal mockups: shared rails/type/materials, editorial reading rhythm. */
.gp-page-blog{--journal-rule:#34342d;--journal-muted:#b0aaa0;--journal-copper:#c4a178;background:#000;color:#f1e9dc}
.gp-page-blog .gp-pages-hero{padding:96px 0 64px}
.gp-page-blog .gp-pages-hero h1{max-width:900px;font-size:clamp(40px,5vw,72px);line-height:1.08;letter-spacing:-.045em}
.gp-page-blog .gp-pages-hero .gp-lead{max-width:620px}
.gp-page-blog .gp-journal-card{min-width:0;border:0;background:transparent}
.gp-page-blog .gp-journal-photo{display:block;overflow:hidden;background:#10110f;aspect-ratio:3/2;border:1px solid var(--journal-rule)}
.gp-page-blog .gp-journal-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:filter .18s}
.gp-page-blog .gp-journal-photo:hover img,.gp-page-blog .gp-journal-card:has(h2 a:focus-visible) .gp-journal-photo img{filter:brightness(1.1)}
.gp-page-blog .gp-journal-noimage{display:grid;place-items:center;height:100%;font-size:64px;letter-spacing:-.08em;color:var(--journal-copper)}
.gp-page-blog .gp-journal-card-copy{padding-top:24px}
.gp-page-blog .gp-journal-card .gp-eyebrow{color:var(--journal-copper);font-size:11px;letter-spacing:.15em;margin:0 0 16px}
.gp-page-blog .gp-journal-card h2{font-size:26px;font-weight:500;line-height:1.2;letter-spacing:-.025em;margin:0 0 16px}
.gp-page-blog .gp-journal-card h2 a{text-decoration:none;color:inherit}
.gp-page-blog .gp-journal-card h2 a:hover{color:#e7c394}
.gp-page-blog .gp-journal-card-copy>p:not(.gp-eyebrow){font-size:15px;line-height:1.65;color:var(--journal-muted);margin:0 0 24px}
.gp-page-blog .gp-journal-feature{display:grid;grid-template-columns:1.12fr 1fr;gap:64px;align-items:center;padding-bottom:64px;border-bottom:1px solid var(--journal-rule)}
.gp-page-blog .gp-journal-feature .gp-journal-photo{aspect-ratio:1.4;max-height:440px}
.gp-page-blog .gp-journal-feature .gp-journal-card-copy{padding:0}
.gp-page-blog .gp-journal-feature h2{font-size:clamp(32px,3.6vw,52px);max-width:13ch;line-height:1.08}
.gp-page-blog .gp-journal-feature .gp-hifi{margin-top:32px}
.gp-page-blog .gp-journal-meta{display:flex;flex-wrap:wrap;gap:8px 24px;color:var(--journal-muted);font-size:12px;line-height:1.5}
.gp-page-blog .gp-journal-library{padding:64px 0 96px}
.gp-page-blog .gp-journal-library-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}
.gp-page-blog .gp-journal-library-head h2,.gp-page-blog .gp-journal-related>h2{font-size:40px;line-height:1.15;font-weight:500;letter-spacing:-.035em;margin:16px 0 0}
.gp-page-blog .gp-journal-back{font-size:13px;color:var(--journal-copper);text-decoration:none;padding:12px 0;display:inline-block}
.gp-page-blog .gp-journal-filter{display:grid;grid-template-columns:1fr 1.6fr auto;align-items:end;gap:24px;padding:24px;background:#111210;border:1px solid var(--journal-rule);margin-bottom:40px}
.gp-page-blog .gp-journal-filter label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;color:#ccc4b7}
.gp-page-blog .gp-journal-filter input,.gp-page-blog .gp-journal-filter select{width:100%;height:48px;min-width:0;box-sizing:border-box;border:1px solid #666050;border-radius:0;background:#080907;color:#f1e9dc;padding:12px;font:inherit;font-size:14px;color-scheme:dark}
.gp-page-blog .gp-journal-filter input::placeholder{color:#aaa399}
.gp-page-blog .gp-journal-filter :is(input,select):focus-visible{outline:2px solid #ffc36a;outline-offset:3px}
.gp-page-blog .gp-journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}
.gp-page-blog .gp-journal-results{color:var(--journal-muted);margin-bottom:32px}
.gp-page-blog .gp-journal-results a,.gp-page-blog .gp-journal-empty a{color:#e7c394;text-decoration:underline;text-underline-offset:4px}
.gp-page-blog .gp-journal-empty{padding:40px;border:1px solid var(--journal-rule)}
.gp-page-blog .navigation.pagination{margin-top:48px}
.gp-page-blog .nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.gp-page-blog .page-numbers{display:grid;place-items:center;min-width:44px;min-height:44px;padding:8px;border:1px solid #827b6b;color:#f1e9dc;text-decoration:none}
.gp-page-blog .page-numbers.current{background:#d1b185;color:#10110f}
.gp-page-blog .gp-journal-article-head{padding-top:40px}
.gp-page-blog .gp-journal-breadcrumb{display:flex;gap:16px;flex-wrap:wrap;color:var(--journal-muted);font-size:12px;margin-bottom:64px}
.gp-page-blog .gp-journal-breadcrumb a{color:inherit;text-decoration:none}
.gp-page-blog .gp-journal-article-head>h1{max-width:1050px;margin:24px 0;font-size:clamp(40px,5.4vw,76px);line-height:1.06;letter-spacing:-.045em;font-weight:500}
.gp-page-blog .gp-journal-deck{max-width:780px;color:#c3bbb0;font-size:19px;line-height:1.65;margin:0 0 24px}
.gp-page-blog .gp-journal-hero-photo{margin:40px 0 0;height:440px;border:1px solid var(--journal-rule);overflow:hidden}
.gp-page-blog .gp-journal-hero-photo img{width:100%;height:100%;object-fit:cover}
.gp-page-blog .gp-journal-reading{display:grid;grid-template-columns:240px minmax(0,740px);gap:80px;justify-content:start;padding-top:64px;padding-bottom:96px}
.gp-page-blog .gp-journal-aside nav{border-top:1px solid #71654f;padding-top:24px}
.gp-page-blog .gp-journal-aside ol{list-style:none;margin:24px 0;padding:0}
.gp-page-blog .gp-journal-aside li{margin:0 0 8px}
.gp-page-blog .gp-journal-aside li a{display:block;padding:8px 0;color:#bcb4a8;font-size:13px;line-height:1.4;text-decoration:none}
.gp-page-blog .gp-journal-aside li a:hover{color:#e7c394}
.gp-page-blog .gp-journal-aside .gp-toc-level-3{padding-left:16px}
.gp-page-blog .gp-journal-body{min-width:0;font-size:17px;line-height:1.85;color:#c6beb2;overflow-wrap:anywhere}
.gp-page-blog .gp-journal-body>:first-child{margin-top:0}
.gp-page-blog .gp-journal-body p{font-size:inherit;line-height:inherit;margin:0 0 24px;color:inherit}
.gp-page-blog .gp-journal-body :is(h2,h3){color:#f1e9dc;line-height:1.25;letter-spacing:-.025em;font-weight:500;scroll-margin-top:120px}
.gp-page-blog .gp-journal-body h2{font-size:32px;margin:48px 0 24px}
.gp-page-blog .gp-journal-body h3{font-size:25px;margin:32px 0 16px}
.gp-page-blog .gp-journal-body a{color:#e7c394;text-decoration:underline;text-underline-offset:4px}
.gp-page-blog .gp-journal-body :is(ul,ol){padding-left:24px;margin:0 0 24px}
.gp-page-blog .gp-journal-body li{margin-bottom:12px}
.gp-page-blog .gp-journal-body :is(img,video,iframe){max-width:100%;height:auto}
.gp-page-blog .gp-journal-body figure{margin:32px 0}
.gp-page-blog .gp-journal-body .gp-cartridge-loading-image{display:block;position:relative;width:100%;aspect-ratio:1651/1213;overflow:hidden;background:#000}
.gp-page-blog .gp-journal-body .gp-cartridge-loading-image img{position:absolute;left:50%;top:50%;display:block;width:calc(100% * 1213 / 1651);max-width:none;height:auto;transform:translate(-50%,-50%) rotate(-90deg)}
.gp-page-blog .gp-journal-body .gp-cartridge-loading figcaption{margin-top:16px;font-size:13px;line-height:1.65;color:var(--journal-muted)}
.gp-page-blog .gp-journal-body .gp-cartridge-loading-image:focus-visible{outline:3px solid var(--journal-copper);outline-offset:4px}
.gp-page-blog .gp-journal-body blockquote{margin:32px 0;padding:24px 32px;border-left:2px solid #c4a178;background:#111210;color:#e1d5c1}
.gp-page-blog .gp-journal-body .gp-journal-signal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:24px 0;gap:8px;margin:24px 0;border-block:1px solid #625442}
.gp-page-blog .gp-journal-signal li{position:relative;display:flex;flex-direction:column;justify-content:center;gap:8px;margin:0;padding:16px 12px;border:1px solid #73634b;background:#12130f;font-size:12px;line-height:1.5;text-align:center;color:#bfb5a5}
.gp-page-blog .gp-journal-signal strong{color:#ecd5b4;font-size:14px;font-weight:500}
.gp-page-blog .gp-journal-signal li+li:before{content:'→';position:absolute;left:-12px;top:calc(50% - 12px);color:#e4bc82;background:#000;line-height:24px}
@media(max-width:700px){.gp-page-blog .gp-journal-body .gp-journal-signal{grid-template-columns:1fr;gap:16px}.gp-page-blog .gp-journal-signal li+li:before{content:'↓';left:calc(50% - 12px);top:-22px;width:24px}.gp-page-blog .gp-journal-signal li{padding:16px}}
.gp-page-blog .gp-journal-body table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse}
.gp-page-blog .gp-journal-body :is(th,td){padding:16px;border:1px solid #4c493f;text-align:left}
.gp-page-blog .gp-journal-related{padding-bottom:96px;border-top:1px solid var(--journal-rule);padding-top:64px}
.gp-page-blog .gp-journal-related>.gp-journal-grid{margin-top:40px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.gp-page-blog .gp-journal-feature{gap:40px}.gp-page-blog .gp-journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-page-blog .gp-journal-reading{grid-template-columns:180px minmax(0,1fr);gap:40px}.gp-page-blog .gp-journal-filter{grid-template-columns:1fr 1.3fr}.gp-page-blog .gp-journal-filter button{grid-column:2;justify-self:end}}
@media(max-width:700px){.gp-page-blog .gp-pages-hero{padding:64px 0 40px}.gp-page-blog .gp-journal-feature{grid-template-columns:1fr;gap:32px;padding-bottom:40px}.gp-page-blog .gp-journal-feature .gp-journal-photo{aspect-ratio:3/2}.gp-page-blog .gp-journal-feature h2{max-width:17ch}.gp-page-blog .gp-journal-grid,.gp-page-blog .gp-journal-related>.gp-journal-grid{grid-template-columns:1fr;gap:40px}.gp-page-blog .gp-journal-library{padding:40px 0 64px}.gp-page-blog .gp-journal-library-head h2,.gp-page-blog .gp-journal-related>h2{font-size:32px}.gp-page-blog .gp-journal-filter{grid-template-columns:1fr;padding:16px;gap:16px}.gp-page-blog .gp-journal-filter button{grid-column:auto;justify-self:stretch}.gp-page-blog .gp-journal-library-head{align-items:start}.gp-page-blog .gp-journal-library-head>.gp-journal-back{max-width:80px;text-align:right}.gp-page-blog .gp-journal-breadcrumb{margin-bottom:40px}.gp-page-blog .gp-journal-article-head>h1{font-size:42px}.gp-page-blog .gp-journal-deck{font-size:17px}.gp-page-blog .gp-journal-hero-photo{height:240px;margin-top:32px}.gp-page-blog .gp-journal-reading{grid-template-columns:1fr;gap:40px;padding:40px 24px 64px}.gp-page-blog .gp-journal-aside ol{columns:2;column-gap:24px}.gp-page-blog .gp-journal-aside li{break-inside:avoid}.gp-page-blog .gp-journal-body{font-size:16px}.gp-page-blog .gp-journal-body h2{font-size:28px}.gp-page-blog .gp-journal-body h3{font-size:23px}.gp-page-blog .gp-journal-related{padding-top:40px;padding-bottom:64px}}
@media(prefers-reduced-motion:reduce){.gp-page-blog .gp-journal-photo img{transition:none}}
