/* The approved regio.demo visual system, adapted to real WordPress markup.
   Only the masthead uses the supplied reference artwork. Articles, thumbnails,
   author data and magazine pages remain real content, never screenshot sprites. */
:root{--navy:#082654;--gold:#ffcd28;--ink:#081f62;--paper:#fff;--serif:'Times New Roman',Georgia,serif}
body{background:linear-gradient(120deg,#fff 35%,#fafbfc);color:var(--ink)}
.edition-line{display:none}
@media(min-width:801px){
  .masthead{height:clamp(78px,9.83vw,177px);padding:0;background:#fff url('masthead-reference.png') center top/100% auto no-repeat}
  .masthead::before,.masthead::after{display:none}
  .masthead .brand{position:absolute;left:11%;top:4%;width:37%;height:86%;opacity:0}
  .masthead .header-topics{left:52.7%;right:21%;top:23%;margin:0;padding:0;border:0;justify-content:space-between;opacity:0}
  .masthead .header-topics a{padding:0;min-height:30px;width:25%;border:0}
  .desktop-search{right:2.2%;top:12%;width:34px;height:34px;opacity:0}
  .masthead .brand:focus-visible,.masthead .header-topics:focus-within,.desktop-search:focus-visible{opacity:1;background:#fff}
}
.navigation{min-height:48px;padding:0 3.4%;background:#06265e}
.navigation>a{font:13px var(--serif);letter-spacing:1.05px;text-transform:uppercase;padding:12px 25px;min-height:48px}
.navigation>a.home{width:59px;min-width:59px;padding:10px 17px;background:#15396b;color:#ffdd76}
.navigation>a.home svg{width:23px;height:23px}
.navigation>a.active,.navigation>a.active:hover{background:linear-gradient(180deg,#ffffff17,#ffffff09);color:#ffdd76;box-shadow:inset 0 0 0 1px #ffffff13}
.navigation>a.home.active{background:#f4c431;color:#082654;box-shadow:none}
.navigation>a:hover{background:#ffffff0c;color:#fff0bd}
.navigation>a::after{content:none}
.portal{padding:15px 3.3% 26px;gap:28px;grid-template-columns:minmax(235px,.83fr) minmax(470px,2.26fr) minmax(290px,1.1fr)}
.left-rail{padding:0 10px 7px;border-color:#e2e6ec;box-shadow:0 3px 15px #10264d0c}
.left-rail>.section-title{display:none}
.rail-arrow{height:32px}
.rail-scroll{max-height:720px}
.story-card{grid-template-columns:106px minmax(0,1fr) 18px;gap:11px;padding:11px 3px 11px 0}
.story-card:hover{background:#fff9e8}
.story-card>.chevron{width:18px;height:24px;color:#9d1231}
.story-media{display:block;position:relative;aspect-ratio:1.33;overflow:hidden;background:#eef2f7;border-radius:2px}
.story-media .story-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0}
.story-media.portrait-media .story-image{object-fit:contain}
.listing>.story-card .story-media .story-image{height:100%}
.story-meta{display:flex;flex-wrap:wrap;gap:5px 7px;align-items:baseline;margin:3px 0 5px}
.story-meta .eyebrow{font:10px/1.4 var(--serif);color:#bb7404}
.story-meta time{font:10px/1.4 var(--serif);padding-left:7px;border-left:1px solid #d9dfeb}
.story-text strong{font:italic 18px/1.12 var(--serif);margin:0;overflow-wrap:break-word;transition:color .2s}
.story-card:hover strong{color:#94132c}
.large-card{display:block;padding:0;margin:0 0 12px;border-bottom:1px solid #dfe5ee;transition:box-shadow .25s,transform .25s}
.large-card .story-media{aspect-ratio:2.1}
.large-card .story-media .story-image{height:100%;aspect-ratio:auto}
.large-card .story-text{margin:10px 0 12px 4px;padding-left:12px;border-left:3px solid #ffc900}
.large-card .story-meta{margin:0 0 5px}
.large-card .story-meta .eyebrow{font-size:11px}
.large-card .story-meta time{display:none}
.large-card .story-text strong{font:20px/1.12 var(--serif)}
.large-card:hover{box-shadow:0 6px 16px #16345e12;transform:translateY(-2px);background:#fff}
.right-rail{border-left:1px solid #dfe5ee;padding-left:16px}
.right-rail>section{margin-bottom:19px}
.section-title{font:700 14px/1.2 var(--serif);padding:5px 8px;margin:0 0 3px}
.right-rail .section-title::after{display:none}
.breadcrumbs{font:11px/1.4 var(--serif);color:#08205c;margin:0 0 18px;gap:8px}
h1{font:700 clamp(30px,2.9vw,49px)/1.06 var(--serif);letter-spacing:-.4px;margin:0 0 14px}
.deck{font:clamp(17px,1.36vw,23px)/1.3 var(--serif);color:#283568;border-left-color:#ffce23;margin-bottom:12px}
.byline{margin:12px 0 10px}
.author-inline strong{font:14px var(--serif)}
.author-inline time{font:12px var(--serif);margin-top:2px}
.author-inline img,.author-monogram{width:44px;height:44px}
.share{gap:8px}
.share svg{width:23px;height:23px}
.share-divider{height:22px;border-left:1px solid #45537f;margin:0 4px}
.share-circle{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;color:#fff;font:bold 20px Arial,sans-serif;transition:transform .25s,box-shadow .25s}
.share-circle:hover{transform:translateY(-3px);box-shadow:0 5px 11px #143d7629}
.share-circle.facebook{background:#315496}.share-circle.linkedin{background:#1970a2;font-size:13px}
.share button{border:0;border-radius:50%;height:32px;min-width:32px;padding:5px;transition:transform .25s,box-shadow .25s}
.share button:hover{transform:translateY(-3px);box-shadow:0 5px 11px #143d7629}
.share [data-copy]{background:#a81133;color:#fff;font:11px var(--sans);padding:6px 9px}
.main-photo{border:1px solid #dee4ea;border-radius:2px;overflow:hidden;background:#f2f4f7}
.photo-open{padding:0;display:block;width:100%}
.photo-open img{width:100%;height:clamp(230px,23vw,370px);object-fit:contain;margin:0 auto;background:#f2f4f7}
.photo-caption{background:#082654d9;padding:7px 14px;font:11px/1.3 var(--sans)}
.circle{border:2px solid #fff;box-shadow:0 3px 9px #081b4b55;background:linear-gradient(130deg,#1f5491,#041e50)}
.thumbs{gap:6px;margin:9px 0 17px}
.thumbs button{padding:1px;border-radius:2px;overflow:hidden;transition:border-color .22s,transform .22s,box-shadow .22s}
.thumbs img{height:64px;width:100%;object-fit:contain;background:#eef2f7}
.thumbs button:hover{transform:translateY(-2px);box-shadow:0 5px 10px #15325d20}
.article-body{font:18px/1.4 var(--serif);margin-top:17px}
.article-body p{margin:0 0 16px}
.article-body h2{font-size:23px;border-left:3px solid #ffc900;padding-left:15px;margin:22px 0 9px}
.article-body .wp-block-image img{width:auto;max-width:100%;height:auto;object-fit:contain}
.tags{gap:7px;padding:7px 2px;margin:0}
.tags a{font:12px var(--serif);padding:5px 13px;transition:background .2s,color .2s,transform .2s}
.tags a:hover{transform:translateY(-2px)}
.author-card{overflow:hidden}
.author-card>.section-title{background:linear-gradient(90deg,#fff0c5,#fff9e9)}
.author-card-body{padding:13px 12px;font-size:14px;line-height:1.3}
.author-card-body .author-inline{display:grid;grid-template-columns:70px 1fr;gap:14px;align-items:center}
.author-card-body .author-inline img,.author-card-body .author-monogram{width:70px;height:70px}
.author-card-body .author-inline strong{font-weight:700}
.author-card-body .author-inline time{display:none}
.author-card-body p,.author-card-body>a{margin-left:84px}
.author-card-body p{margin-top:6px;margin-bottom:8px}
.newsletter-card{grid-template-columns:75px minmax(0,1fr);gap:16px;margin-top:24px;border-radius:3px;box-shadow:0 5px 14px #1236640a}
.newsletter-card>div:last-child{padding:12px 12px 12px 0}
.envelope{overflow:hidden;background:#0b2856}
.envelope svg{width:100%;height:100%;min-height:120px;object-fit:cover}
.newsletter-card h3{font:700 16px var(--serif)}
.newsletter-card p{font:13px/1.35 var(--serif);margin-bottom:8px;color:#52648c}
.newsletter-card .gold-button{font:700 13px var(--serif);padding:8px 12px;background:linear-gradient(100deg,#ffcf28,#ffd845)}
.site-footer{background:none;border-top:1px solid #e0e6ee;margin-top:20px;font-size:10px}
.archive-shell,.issue-shell{padding-top:20px}
.archive-grid{gap:30px}
.issue-card .cover-stage{display:block;padding:0;aspect-ratio:3/4;border-color:#d8e0ec;background:#edf1f6;box-shadow:0 8px 28px #172a5310}
.cover-stage>.issue-cover{position:absolute;inset:20px;width:calc(100% - 40px);height:calc(100% - 40px);object-fit:contain;max-width:none}
.issue-strip img,.cover-stage>.issue-cover{object-fit:contain;object-position:center!important}
#mobile-drawer{border-radius:24px 0 0 24px;width:min(89vw,380px);box-shadow:-20px 0 80px #031a3a38}
.drawer-head{padding:26px 26px 22px;border-bottom:3px solid #ffce31}
.drawer-head>span{font:10px/1.4 var(--sans);letter-spacing:2px;color:#ffdb76}
.drawer-head h2{font:700 28px/1.1 Georgia,serif;margin:13px 40px 8px 0;letter-spacing:-1px}
.drawer-head p{font:12px/1.5 var(--sans);color:#c9d7e9}
.drawer-head button{width:44px;height:44px;right:16px;top:18px;border-radius:50%;background:#ffffff12;border:1px solid #ffffff20}
#mobile-drawer nav{padding:18px 16px 10px}
#mobile-drawer nav a{border:0;border-radius:11px;padding:12px 13px;min-height:48px;align-items:center;font:20px/1.15 Georgia,serif;transition:background .2s,transform .2s}
#mobile-drawer nav a:hover{background:#edf1f7;transform:translateX(2px)}
#mobile-drawer nav a[aria-current]{background:#082654;color:#fff}
#mobile-drawer nav a .chevron{width:16px;color:#6a80a0}
.drawer-topics{padding:12px 28px 20px}
.drawer-topics h3{font:10px var(--sans);letter-spacing:1.7px;color:#75859d;text-transform:uppercase}
.drawer-topics>div{display:flex;flex-wrap:wrap;gap:8px}
.drawer-topics a{padding:10px 12px;border:1px solid #dbe3ef;border-radius:24px;background:#fff;font:12px var(--sans);min-height:40px}
.drawer-bottom{margin-top:auto;padding:16px 27px calc(18px + env(safe-area-inset-bottom));background:#f0f3f8;border-top:1px solid #e0e7f0}
.drawer-bottom>span{font:italic 20px Georgia,serif;display:block;margin-bottom:6px;color:var(--ink)}
.drawer-bottom p{font:12px/1.5 var(--sans);color:#657794;margin:0 0 14px}
.drawer-bottom button{width:100%;display:flex;justify-content:space-between;align-items:center;min-height:46px;padding:12px 16px;border-radius:8px;background:#ffcf35;font:600 13px var(--sans)}
#mobile-drawer[open]{display:flex;flex-direction:column}
@media(min-width:1650px){.portal{gap:32px}.rail-scroll{max-height:860px}.article-body{font-size:20px}.story-card{padding-block:14px}}
@media(min-width:801px) and (max-width:1150px){.portal{grid-template-columns:200px minmax(370px,1fr);gap:22px}.right-rail{grid-column:2;display:block;padding:0;border:0}.navigation>a{padding-inline:18px;font-size:12px}.right-rail .story-card{grid-template-columns:90px 1fr 18px}.right-rail .story-text strong{font-size:18px}.newsletter-card{max-width:470px}}
@media(max-width:800px){
  .masthead{height:92px;padding:4px 16px 8px;justify-content:center;align-items:center;background:linear-gradient(40deg,#ffe89b 0 4%,#fff7df 4% 15%,#fff 15% 75%,#f4f7fb 75%)}
  .masthead::before,.masthead::after{display:none}
  .brand strong{font-size:clamp(29px,8.7vw,39px);letter-spacing:-1.7px;line-height:1}
  .brand .crown{width:58px;height:23px;margin-bottom:3px}
  .brand>span{font-size:7px;letter-spacing:2px;margin-top:7px}
  .header-topics,.desktop-search,.navigation{display:none}
  .mobile-bar{position:sticky;top:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;background:#082654;color:#fff;min-height:60px;box-shadow:0 5px 18px #06265413}
  .admin-bar .mobile-bar{top:46px}
  .mobile-bar>a,.mobile-bar>button{width:44px;height:44px;border-radius:9px;border:1px solid #ffffff25;background:#ffffff09;padding:10px;color:#fff;flex-shrink:0}
  .mobile-bar>button{color:#ffdc79}
  .mobile-bar svg{width:22px;height:22px}
  .mobile-location{font:18px/1.1 Georgia,serif;text-align:center;flex:1}
  .mobile-location small{display:block;font:8px/1.5 var(--sans);letter-spacing:1.8px;text-transform:uppercase;color:#ffdb7c;margin-bottom:2px}
  .mobile-location strong{font-weight:400}
  .portal{display:flex;flex-direction:column;padding:24px 20px 28px;gap:30px}
  .center-content{width:100%;order:1;scroll-margin-top:80px}
  .left-rail{order:2;width:100%;border:0;background:none;box-shadow:none;padding:0}
  .left-rail>.section-title{display:block;font:700 21px Georgia,serif;border:0;margin-bottom:10px;padding-left:0}
  .left-rail>.section-title::before,.left-rail>.section-title::after{display:none}
  .left-rail .rail-arrow{display:none}
  .left-rail .rail-scroll{display:flex;gap:14px;padding:0 0 12px;max-height:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory}
  .left-rail .large-card{flex:0 0 72%;margin:0;border:1px solid #e2e7ef;border-radius:9px;background:#fff;overflow:hidden;scroll-snap-align:start}
  .large-card .story-text{margin:13px;padding-left:11px}
  .large-card .story-text strong{font-size:20px}
  .right-rail{order:3;width:100%;display:block;padding:0;border:0}
  .right-rail .story-card{grid-template-columns:88px minmax(0,1fr) 18px;gap:12px;padding:16px 2px}
  .right-rail .story-text strong{font-size:19px;line-height:1.2}
  .breadcrumbs{font-size:11px;margin-bottom:17px}
  h1{font-size:clamp(30px,8.4vw,40px);line-height:1.06;letter-spacing:-.6px;margin-bottom:18px}
  .deck{font-size:19px;line-height:1.4;border-left-width:2px;padding-left:13px;margin-bottom:19px}
  .byline{gap:14px;flex-wrap:wrap;margin-bottom:18px}
  .author-inline{gap:9px}
  .author-inline strong{font-size:14px}.author-inline time{font-size:11px}
  .main-photo{border:0;border-radius:9px}
  .photo-open img{height:290px}
  .circle{width:40px;height:40px}
  .photo-caption{padding:9px 11px;font-size:10px}
  .thumbs{margin:10px 0 24px;gap:7px}
  .thumbs button{flex-basis:65px;border-radius:5px}
  .thumbs img{height:50px}
  .article-body{font-size:18px;line-height:1.5}
  .article-body h2{font-size:24px;line-height:1.15;margin-top:24px}
  .tags a{min-height:40px;padding:9px 14px;font-size:13px}
  .author-card{border-radius:8px;margin-top:20px}
  .author-card-body{padding:16px}
  .newsletter-card{border-radius:9px;grid-template-columns:65px minmax(0,1fr);gap:14px;max-width:none}
  .newsletter-card h3{font-size:19px}.newsletter-card p{font-size:14px;line-height:1.4}
  .newsletter-card .gold-button{min-height:44px}
  .archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}
  .cover-stage>.issue-cover{inset:12px;width:calc(100% - 24px);height:calc(100% - 24px)}
  .archive-shell,.issue-shell{padding:24px 20px 28px}
  .issue-heading{display:block}.issue-heading h1{font-size:29px;margin-bottom:18px}
  .issue-articles>div{grid-template-columns:1fr}
  .site-footer{flex-direction:column;align-items:flex-start;padding:23px 20px;font-size:11px}
}
@media(max-width:600px){.admin-bar .mobile-bar{top:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.mobile-bar,.masthead,.navigation,.left-rail,.right-rail{display:none!important}.portal{display:block;padding:0}.article-body{font-size:12pt}}
