.magazine-shell { --mag-ink:#172b29; --mag-muted:#61706a; --mag-line:#d8d5ca; --mag-paper:#f7f5ef; color:var(--mag-ink); background:var(--mag-paper); min-height:100vh; padding:0 max(24px,calc((100vw - 1240px)/2)); }
.magazine-shell a { color:inherit; }.magazine-shell a:focus-visible,.magazine-admin button:focus-visible { outline:3px solid #ad8140; outline-offset:4px; }
.magazine-masthead { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:28px 0; border-bottom:1px solid var(--mag-line); }
.magazine-wordmark { display:flex; align-items:baseline; gap:16px; font:42px Georgia,serif; text-decoration:none; letter-spacing:-2px; }
.magazine-wordmark span { font:11px system-ui,sans-serif; letter-spacing:3px; text-transform:uppercase; }
.magazine-masthead nav { display:flex; align-items:center; gap:24px; font-size:13px; }
.magazine-masthead nav a:not(.button) { text-decoration:none; }.magazine-masthead nav a:hover { text-decoration:underline; }
.magazine-shell .button { white-space:normal; color:#172b29; }.magazine-shell .button.primary { background:#c8a363; border-color:#c8a363; }
.magazine-hero { display:grid; grid-template-columns:1fr 250px; gap:72px; padding:72px 0 55px; align-items:center; }
.magazine-hero h1 { font:clamp(40px,5.8vw,76px)/1.04 Georgia,serif; max-width:780px; letter-spacing:-2px; margin:18px 0 24px; text-wrap:balance; }
.magazine-shell .eyebrow { font:600 11px/1.6 system-ui,sans-serif; letter-spacing:2px; text-transform:uppercase; color:#7c5c2d; margin:0 0 12px; }
.magazine-lead { font-size:19px; line-height:1.7; color:var(--mag-muted); max-width:740px; }
.magazine-dial { width:230px; height:230px; border:1px solid #a89369; border-radius:50%; position:relative; box-shadow:0 0 0 9px var(--mag-paper),0 0 0 10px var(--mag-line); background:repeating-conic-gradient(from -1deg,#bbaa86 0deg 1deg,transparent 1deg 30deg); }
.magazine-dial:before { content:''; position:absolute; inset:12px; background:var(--mag-paper); border-radius:50%; }
.magazine-dial:after { content:''; position:absolute; top:62px; left:106px; width:72px; height:63px; border-bottom:3px solid #1b3934; border-left:3px solid #1b3934; transform:rotate(24deg); transform-origin:bottom left; }
.magazine-dial span { position:absolute; top:50px; width:100%; text-align:center; font:18px Georgia,serif; letter-spacing:2px; }
.magazine-topics { display:flex; flex-wrap:wrap; gap:28px; padding:20px 0; border-top:1px solid var(--mag-line); border-bottom:1px solid var(--mag-line); font-size:12px; text-transform:uppercase; letter-spacing:1.4px; }
.magazine-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin:38px 0; }
.magazine-card-link { display:block; text-decoration:none; height:100%; }
.magazine-card-art { height:190px; color:#e8dfca; background:#173d37; display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; }
.magazine-card-art>span { font:138px/1 Georgia,serif; opacity:.8; }.magazine-card-art small { position:absolute; bottom:14px; left:18px; font:14px Georgia,serif; letter-spacing:2px; }
.magazine-art-guides { background:#b09160; color:#fff4dc; }.magazine-art-conversations { background:#283947; color:#c6d0d6; }
.magazine-card-copy { padding:24px 0; border-bottom:1px solid var(--mag-line); }.magazine-card h2 { font:29px/1.17 Georgia,serif; margin:10px 0 14px; text-wrap:balance; }
.magazine-card-copy>p:not(.eyebrow) { line-height:1.7; color:var(--mag-muted); }.magazine-card-link:hover h2 { text-decoration:underline; text-underline-offset:4px; }
.magazine-meta { display:flex; flex-wrap:wrap; gap:10px 22px; color:var(--mag-muted); font-size:12px; margin:20px 0; }.magazine-meta time { white-space:nowrap; }
.magazine-empty { padding:66px 0; max-width:670px; }.magazine-empty h2,.magazine-cta h2 { font:36px/1.2 Georgia,serif; margin:12px 0; }.magazine-empty p,.magazine-cta p { line-height:1.7; }
.magazine-cta { display:flex; align-items:center; justify-content:space-between; gap:36px; padding:38px; margin:40px 0 50px; background:#e7ece6; }.magazine-cta>div { max-width:690px; }.magazine-cta .button { flex-shrink:0; }
.magazine-footer { padding:28px 0; border-top:1px solid var(--mag-line); display:flex; flex-wrap:wrap; gap:22px; color:var(--mag-muted); font-size:12px; }.magazine-footer>span { margin-right:auto; }
.magazine-pagination { display:flex; justify-content:center; align-items:center; gap:24px; }.magazine-back { display:inline-block; margin:34px 0; text-decoration:none; font-size:13px; }
.magazine-article { max-width:790px; margin:0 auto 64px; overflow-wrap:break-word; }.magazine-article h1 { font:clamp(35px,5vw,61px)/1.1 Georgia,serif; letter-spacing:-1px; margin:18px 0 24px; text-wrap:balance; }.magazine-article>header { border-bottom:1px solid var(--mag-line); padding-bottom:22px; margin-bottom:38px; }
.magazine-prose { font:19px/1.85 Georgia,serif; }.magazine-prose p { margin:0 0 26px; white-space:pre-line; }.magazine-prose h2 { font:32px/1.3 Georgia,serif; margin:42px 0 18px; }.magazine-prose ul { padding-left:25px; margin:24px 0; }.magazine-prose li { margin:10px 0; }
.magazine-media { background:#e7ece6; padding:26px; margin:36px 0; }.magazine-media h2 { font:28px Georgia,serif; }.magazine-media p { color:#52645d; line-height:1.7; }.magazine-media>a { display:inline-block; font-size:13px; margin:14px; }.magazine-media iframe { border:0; width:100%; display:block; margin-top:20px; }.magazine-video-frame { aspect-ratio:16/9; }.magazine-podcast-frame { height:352px; }
.magazine-sources { margin:40px 0; border-top:1px solid var(--mag-line); padding-top:22px; }.magazine-sources h2 { font:24px Georgia,serif; }.magazine-sources li { margin:12px 0; }
.magazine-shell-link { display:block; padding:12px 20px; font-size:14px; font-weight:600; text-decoration:none; }
.magazine-admin { max-width:1280px; margin:auto; }.magazine-admin-columns { display:grid; grid-template-columns:280px minmax(0,1fr); gap:22px; }.magazine-admin-columns>.panel { min-width:0; align-self:start; }.magazine-admin .form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.magazine-admin textarea { width:100%; }.magazine-body-input { min-height:350px; font:16px/1.6 system-ui,sans-serif; }.magazine-admin-list { margin:22px 0; display:grid; gap:10px; }.magazine-admin-item { display:grid; text-align:left; gap:8px; background:transparent; border:1px solid var(--line,#dedbd2); border-radius:8px; padding:14px; width:100%; color:inherit; }.magazine-admin-item strong { overflow-wrap:anywhere; }.magazine-admin-item small { opacity:.7; }.magazine-publication { border-top:1px solid var(--line,#dedbd2); padding-top:20px; }.magazine-publication .button { margin:0 8px 8px 0; }
.magazine-preview { width:min(920px,94vw); max-height:90dvh; padding:30px; border:1px solid #d8d5ca; border-radius:14px; overflow:auto; background:#f7f5ef; color:#172b29; }.magazine-preview::backdrop { background:#142927aa; }.magazine-preview>header { display:flex; justify-content:space-between; align-items:center; margin-bottom:32px; }
@media(max-width:900px) { .magazine-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.magazine-hero { gap:25px; grid-template-columns:1fr 160px; }.magazine-dial { transform:scale(.65); transform-origin:left center; }.magazine-masthead nav { gap:14px; }.magazine-admin-columns { grid-template-columns:1fr; }.magazine-admin-list { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:330px; overflow:auto; } }
@media(max-width:600px) { .magazine-shell { padding:0 22px; }.magazine-masthead { align-items:flex-start; flex-direction:column; gap:17px; padding:20px 0; }.magazine-masthead nav { width:100%; flex-wrap:wrap; gap:16px; }.magazine-masthead nav .button { margin-left:auto; }.magazine-wordmark { font-size:36px; }.magazine-hero { display:block; padding:40px 0 30px; }.magazine-dial { display:none; }.magazine-hero h1 { letter-spacing:-1px; }.magazine-lead { font-size:17px; }.magazine-topics { gap:14px; font-size:10px; }.magazine-grid { grid-template-columns:1fr; gap:18px; }.magazine-card-art { height:185px; }.magazine-card h2 { font-size:30px; }.magazine-cta { padding:24px; display:block; }.magazine-cta h2 { font-size:30px; }.magazine-cta .button { margin-top:12px; }.magazine-prose { font-size:18px; }.magazine-prose h2 { font-size:27px; }.magazine-media { padding:18px; }.magazine-admin .form-grid { grid-template-columns:1fr; }.magazine-admin-list { grid-template-columns:1fr; }.magazine-preview { padding:22px; } }
