@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&family=Playfair+Display:wght@500;700;800;900&display=swap');
:root{--ink:#252015;--faded:#65543a;--rule:#51402a;--paper:#e8d5a7;--paperlight:#f4e7c9;--accent:#8b3426}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#8c7b5f;color:var(--ink);font-family:'Libre Baskerville',Georgia,serif;line-height:1.55;background-image:repeating-linear-gradient(100deg,transparent 0 7px,#ffffff09 7px 8px)}a{color:inherit}.paper-shell{max-width:1190px;min-height:100vh;margin:auto;background:var(--paper);box-shadow:0 0 0 1px #4b3c2b,0 10px 45px #251b0d77;position:relative;padding:0 34px 24px;background-image:radial-gradient(ellipse at 10% 20%,#ad8c4730,transparent 50%),radial-gradient(ellipse at 95% 70%,#9e773124,transparent 55%),repeating-linear-gradient(0deg,#2a170b03 0 2px,transparent 2px 5px)}.masthead{text-align:center;padding-top:20px}.microtop{display:flex;justify-content:space-between;font:700 10px 'DM Sans',sans-serif;letter-spacing:1.7px;border-bottom:2px solid var(--rule);padding:0 2px 8px}.brand{display:block;text-decoration:none;font-family:'Playfair Display',Georgia,serif;font-weight:900;font-size:clamp(34px,6.1vw,83px);line-height:.95;letter-spacing:-2.5px;margin:21px 0 10px;text-shadow:1px 1px #826c49}.brand span{font-style:italic;font-size:.75em}.brand em{font-style:normal;letter-spacing:5px}.motto{font:800 12px 'DM Sans',sans-serif;letter-spacing:3px;margin:10px 0 3px}.submotto{font-size:13px;font-style:italic;margin:0 0 17px}.edition{display:flex;justify-content:space-between;gap:10px;border-top:4px double var(--ink);border-bottom:4px double var(--ink);padding:8px 3px;font:700 11px 'DM Sans',sans-serif;letter-spacing:.7px}.nav{display:flex;justify-content:center;flex-wrap:wrap;gap:0;border-bottom:2px solid var(--rule);padding:9px 0}.nav a{font:700 11px 'DM Sans',sans-serif;text-transform:uppercase;text-decoration:none;letter-spacing:.7px;padding:8px 12px}.nav a:hover,.nav a.active{background:var(--ink);color:var(--paperlight)}main{padding-top:23px}.kicker{font:800 11px 'DM Sans',sans-serif;letter-spacing:2.5px;color:var(--accent);text-transform:uppercase}.section-title{font:900 clamp(28px,4vw,47px) 'Playfair Display',Georgia,serif;line-height:1.07;margin:8px 0 11px}.section-intro{max-width:720px;color:var(--faded);font-style:italic}.front-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(230px,1fr);gap:25px}.lead-headline{font:900 clamp(37px,5vw,66px)/1.01 'Playfair Display',Georgia,serif;letter-spacing:-1.5px;margin:9px 0}.deck{font-size:17px;line-height:1.4;color:#44392a;margin:10px 0}.byline{font:700 10px 'DM Sans',sans-serif;letter-spacing:1.1px;text-transform:uppercase;color:#6b5438}.hero-art{height:285px;position:relative;overflow:hidden;border:1px solid #6c5a3b;background:#b8a17b;filter:grayscale(1) sepia(.38);margin:16px 0 6px}.hero-art:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,#00000013 0 1px,transparent 1px 4px),radial-gradient(ellipse at center,#ffffff00 25%,#2e241c90 100%)}.hero-art .bowler{position:absolute;bottom:-32px;left:13%;font-size:205px;filter:grayscale(1);opacity:.7;transform:rotate(-10deg)}.hero-art .pins{position:absolute;bottom:30px;right:12%;font-size:115px;filter:grayscale(1);opacity:.75}.photo-caption{font:italic 11px Georgia,serif;color:#66563e}.article-tease{font-size:14px}.readmore{display:inline-block;margin-top:9px;font:800 11px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:1.2px;text-decoration:none;border-bottom:2px solid var(--ink)}.sidebar{border-left:1px solid #756345;padding-left:24px}.ad{border:5px double #392c1b;padding:12px 10px;background:#eddbb3;text-align:center;box-shadow:inset 0 0 0 3px #eddbb3,inset 0 0 0 4px #756243}.ad-eyebrow{font:900 11px 'DM Sans',sans-serif;letter-spacing:1.2px}.ad-title{font:900 clamp(25px,3vw,40px)/1 'Playfair Display',serif;margin:8px 0}.ad-subtitle{font:800 14px 'DM Sans',sans-serif;letter-spacing:1px}.ad-illustration{display:flex;align-items:center;justify-content:center;gap:10px;height:145px;border-top:1px solid #665034;border-bottom:1px solid #665034;margin:12px 0;filter:grayscale(1)}.ad-illustration .person{font-size:80px;transform:rotate(-7deg)}.tin{width:100px;height:77px;border:5px double #352d24;border-radius:49%;display:flex;align-items:center;justify-content:center;transform:rotate(-9deg);font:900 15px/1 'Playfair Display',serif;background:#d6c298}.ad-quote{font:800 18px/1.25 'Playfair Display',serif}.ad-price{font:900 29px 'Playfair Display',serif;margin:8px}.disclaimer{font:10px/1.4 'DM Sans',sans-serif;color:#635138}.side-heading,.mini-heading{font:900 18px 'Playfair Display',serif;border-bottom:3px double var(--rule);padding-bottom:7px;margin:25px 0 12px}.side-story{border-bottom:1px solid #a39170;padding:0 0 12px;margin:0 0 12px}.side-story a{text-decoration:none;font:800 18px/1.2 'Playfair Display',serif}.side-story p{font-size:12px;margin:6px 0}.bottom-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border-top:4px double var(--rule);margin-top:24px;padding-top:18px}.news-tile{border-right:1px solid #8a795b;padding-right:16px}.news-tile:last-child{border-right:0}.news-tile h3{font:800 23px/1.1 'Playfair Display',serif;margin:6px 0}.news-tile p{font-size:12px}.news-tile a{text-decoration:none}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:25px 0}.feature{padding:18px;border:1px solid #8a7654;background:#f0e0bd88}.feature h3{font:800 23px/1.15 'Playfair Display',serif;margin:4px 0}.feature p{font-size:13px}.feature a{font-weight:bold}.banner{border-top:5px solid var(--ink);border-bottom:5px solid var(--ink);padding:11px 0;margin:0 0 20px;text-align:center;font:900 26px 'Playfair Display',serif}.archive-list{margin:24px 0}.archive-item{display:block;text-decoration:none;border-top:1px solid #897453;padding:18px 0}.archive-item h3{font:800 26px 'Playfair Display',serif;margin:4px 0}.archive-item p{margin:5px 0;font-size:13px}.article-wrap{max-width:790px;margin:auto;padding-bottom:50px}.article-wrap h1{font:900 clamp(38px,5vw,65px)/1.05 'Playfair Display',serif;margin:13px 0}.article-wrap .article-body{background:#f6ebd4;padding:clamp(18px,4vw,45px);border:1px solid #c8b28c;margin-top:24px;font-size:17px;line-height:1.85}.article-body p:first-child:first-letter{float:left;font:900 64px/.85 'Playfair Display',serif;padding-right:8px}.article-body p{margin:0 0 23px}.article-body p:last-child{margin-bottom:0}.article-note{font:12px 'DM Sans',sans-serif;color:#6e583d}.button-link,button{display:inline-block;background:var(--ink);color:#f7e6c2;border:0;padding:12px 16px;text-decoration:none;font:800 12px 'DM Sans',sans-serif;letter-spacing:.8px;cursor:pointer}.button-link:hover,button:hover{background:#65402a}.footer{border-top:4px double var(--rule);margin-top:35px;padding:16px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font:10px 'DM Sans',sans-serif;color:#64533a}.footer a{color:inherit}.mini-ad{border:3px double #57452c;padding:15px;text-align:center;margin:22px 0}.mini-ad h3{font:900 24px 'Playfair Display',serif;margin:4px 0}.mini-ad p{font-size:13px;margin:6px 0}.notice{background:#f3e4c3;border-left:4px solid var(--accent);padding:14px 17px;font-size:13px}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.editor-panel{background:#f2e4c7;padding:20px;border:1px solid #9a825b}.editor-panel label{display:block;font:700 12px 'DM Sans',sans-serif;margin:12px 0 4px}.editor-panel input,.editor-panel textarea,.editor-panel select{display:block;width:100%;padding:10px;border:1px solid #9c8766;background:#fffaf0;font:14px Georgia,serif}.editor-panel textarea{min-height:170px;resize:vertical}.editor-panel button{margin:7px 6px 0 0}.editor-preview{padding:15px;border:1px solid #9a825b}.editor-preview h2{font:900 30px 'Playfair Display',serif}.editor-preview p{font-size:14px}.loading{padding:50px;text-align:center;font-style:italic}@media(max-width:760px){.paper-shell{padding:0 18px 18px}.microtop{font-size:8px;letter-spacing:.4px}.microtop span:last-child{display:none}.brand{font-size:clamp(35px,9vw,65px);letter-spacing:-1px}.brand em{letter-spacing:2px}.motto{font-size:10px;letter-spacing:1.5px}.submotto{font-size:12px}.edition{font-size:9px;flex-wrap:wrap;justify-content:center}.nav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.nav a{flex-shrink:0;font-size:10px;padding:8px 10px}.front-layout{grid-template-columns:1fr}.sidebar{border-left:0;border-top:4px double var(--rule);padding:20px 0 0}.ad{max-width:390px;margin:auto}.lead-headline{font-size:clamp(38px,9vw,57px)}.hero-art{height:235px}.bottom-grid{grid-template-columns:1fr}.news-tile{border-right:0;border-bottom:1px solid #9c8867;padding-bottom:10px}.feature-grid,.editor-grid{grid-template-columns:1fr}.footer{display:block}.footer span,.footer a{display:block;margin:7px 0}.article-wrap .article-body{font-size:16px;line-height:1.75}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Phase 2 additions */
.ad-image,.tip-promo img,.tip-hero img{display:block;width:100%;height:auto;filter:grayscale(1) sepia(.18);border:1px solid #756243}.illustrated-ad .ad-image{margin:14px auto 8px}.illustrated-ad .ad-title{margin:8px 0 0}.illustrated-ad small,.mini-ad small{font:9px 'DM Sans',sans-serif;color:#64533a}.ad-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px}.ad-controls button{padding:9px 12px;font-size:10px}.ad-controls span{font:10px 'DM Sans',sans-serif}.tip-promo{text-align:center;margin:12px 0 22px}.tip-promo a:first-child{display:block}.tip-promo .button-link{display:block;margin-top:9px}.tip-promo img:hover{outline:3px solid #7b5e34}.fineprint{font:11px 'DM Sans',sans-serif;color:#66553a}.tip-hero{max-width:900px;margin:20px auto}.tip-hero img{max-height:430px;object-fit:contain}.feature .button-link{font-size:11px;margin-top:8px}.lead-graphic{display:flex;align-items:center;justify-content:center;gap:20px;min-height:270px;margin:18px 0 5px;border:4px double #433322;background:radial-gradient(ellipse at center,#ead8ae,#b9a071);text-align:center;padding:20px}.giant-number{font:900 clamp(85px,13vw,155px)/1 'Playfair Display',Georgia,serif;letter-spacing:-8px;text-shadow:3px 4px #8a785d}.lead-graphic div{font:900 clamp(16px,2vw,24px)/1.4 'Playfair Display',serif}.lead-graphic small{font-size:13px}.weekly-strip{border-top:5px double var(--rule);border-bottom:5px double var(--rule);margin:28px 0 10px;padding:20px 4px}.weekly-strip h2{font:900 30px/1.1 'Playfair Display',serif;margin:8px 0}.weekly-strip p{font-size:14px}.tip-promo img{aspect-ratio:1.5;object-fit:cover}.feature .button-link{color:#f7e6c2}.feature a:not(.button-link){font-weight:bold}.feature h3{overflow-wrap:anywhere}@media(max-width:760px){.lead-graphic{min-height:210px;gap:8px}.giant-number{font-size:75px;letter-spacing:-5px}.lead-graphic div{font-size:14px}.lead-graphic small{font-size:10px}.weekly-strip h2{font-size:25px}}

/* Frank Haggerty's Desk */
.frank-intro{max-width:790px;margin:24px auto 36px}.frank-photo{margin:0 0 23px}.frank-portrait{display:block;width:100%;max-height:680px;object-fit:cover;object-position:center 35%;filter:grayscale(1) sepia(.15);border:5px double #51412b}.frank-photo .photo-caption{border-bottom:3px double #746044;padding:9px 0;text-align:center;letter-spacing:1px}.frank-name{font:900 clamp(32px,5vw,55px)/1.05 'Playfair Display',Georgia,serif;margin:8px 0}.frank-subtitle{font-size:17px;font-style:italic;border-bottom:1px solid #8c7655;padding-bottom:18px}.frank-opening{font-size:23px;font-weight:bold}.frank-intro>p:not(.frank-subtitle){max-width:650px;line-height:1.7}.frank-quote{border-top:4px double #59452d;border-bottom:4px double #59452d;margin:30px 0;padding:24px 15px;text-align:center;font:italic 700 clamp(21px,3vw,30px)/1.3 Georgia,serif}.frank-quote cite{display:block;font:700 11px 'DM Sans',sans-serif;margin-top:13px;letter-spacing:1px}.frank-bio{max-width:750px;margin:25px auto}.frank-bio .frank-photo{max-width:750px}.frank-bio-body{max-width:620px;margin:auto;font:17px/1.8 Georgia,serif}.frank-bio-body p{margin:0 0 20px}.frank-bio-body p:first-child:first-letter{float:left;font:900 65px/.9 Georgia,serif;padding-right:7px}.frank-bio-body strong{font-weight:900}.frank-disclaimer{border-top:2px solid #6c573c;margin-top:28px;padding-top:15px;font:italic 13px/1.6 Georgia,serif}@media(max-width:760px){.frank-portrait{max-height:470px}.frank-bio-body{font-size:16px}}

/* First published investigations */
.article-body h2{font:900 clamp(22px,3vw,29px)/1.15 'Playfair Display',Georgia,serif;border-top:3px double #80694b;padding-top:18px;margin:32px 0 14px}.article-body h2:first-child{margin-top:0}.bulletin-lead{border-top:5px double var(--ink);border-bottom:5px double var(--ink);padding:22px 5px;margin:24px 0 30px}.bulletin-lead h2{font:900 clamp(31px,4.5vw,48px)/1.08 'Playfair Display',Georgia,serif;margin:10px 0}.bulletin-lead p{max-width:730px}.tip-small{max-width:450px;margin:12px auto}.tip-small .tip-promo img{max-height:245px;object-fit:cover}.article-body p{overflow-wrap:break-word}

/* First-edition front page: Frank and the two investigations */
.front-investigations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0 8px}.front-case{display:block;border-top:2px solid var(--rule);border-bottom:1px solid #9b8967;padding:14px 2px;text-decoration:none}.front-case h3{font:900 clamp(19px,2.1vw,25px)/1.12 'Playfair Display',Georgia,serif;margin:8px 0}.front-case p{font-size:12px;line-height:1.6;margin:6px 0 12px}.front-case:hover h3{text-decoration:underline}.front-frank{border-top:4px double var(--rule);padding-top:16px;margin:26px 0}.front-frank h2{font:900 23px/1.15 'Playfair Display',Georgia,serif;margin:9px 0 13px}.front-frank-photo{width:100%;height:auto;max-height:265px;object-fit:cover;object-position:center 30%;filter:grayscale(1) sepia(.15);border:3px double #51412b}.front-frank p{font-size:13px;line-height:1.65;margin:10px 0}.front-frank .readmore{margin-top:6px}@media(max-width:600px){.front-investigations{grid-template-columns:1fr;gap:6px}.front-frank-photo{max-height:350px}}

/* Frank's Desk: permanent profile, changing editorial docket */
.frank-desk-intro{display:grid;grid-template-columns:minmax(180px,0.9fr) minmax(240px,1.1fr);gap:26px;align-items:start;margin:20px 0}.frank-desk-intro .frank-photo{margin:0}.frank-desk-intro .frank-portrait{width:100%;height:auto}.frank-columns{margin:36px 0;border-top:double 5px #302b23;padding-top:24px}.frank-rule{margin:32px 0;padding:22px 24px;border:2px solid #514635;background:rgba(90,66,35,.06)}.frank-rule h2{font-family:Georgia,serif;font-size:clamp(20px,3vw,29px);line-height:1.15;margin:12px 0}.frank-rule p{font-family:Georgia,serif;font-size:19px;line-height:1.5}.frank-rule .photo-caption{font-size:11px}@media(max-width:640px){.frank-desk-intro{grid-template-columns:1fr}.frank-desk-intro .frank-photo{max-width:420px}}

/* Tip Line — local preview */
.tip-status{border:2px double #6c4c32;background:#e8d2a2;padding:15px 20px;margin:20px 0}.tip-status strong{font:800 12px 'DM Sans',sans-serif;letter-spacing:1px}.tip-status p{font-size:13px;margin:6px 0 0}.tip-form-wrap{max-width:850px;margin:25px auto;border-top:5px double var(--ink);padding:20px 0}.tip-form-wrap h2{font:900 36px 'Playfair Display',Georgia,serif;margin:7px 0}.tip-form-wrap>p{font-style:italic}.tip-form-wrap form{padding:24px;background:#f0dfbc;border:1px solid #a48a62}.tip-form-wrap fieldset{border:1px solid #a48a62;margin:0 0 18px;padding:13px 16px}.tip-form-wrap legend,.tip-form-wrap .tip-label,.tip-fields label{font:800 12px 'DM Sans',sans-serif;letter-spacing:.5px}.tip-radio label{display:block;margin:10px 0;font:700 13px Georgia,serif}.tip-radio input{accent-color:#6b3327;margin-right:9px}.tip-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tip-fields label,.tip-label{display:block;margin:0 0 19px}.tip-fields span,.tip-label span{color:#8b3426}.tip-fields input,.tip-label input:not([type=file]),.tip-label textarea{display:block;width:100%;padding:12px;margin-top:7px;border:1px solid #8b7858;background:#fff9e9;color:#252015;font:15px Georgia,serif}.tip-label textarea{resize:vertical;min-height:130px}.tip-label input[type=file]{display:block;width:100%;margin-top:9px;padding:11px;background:#fff9e9;border:1px dashed #8b7858;font:13px Georgia,serif}.tip-label small{display:block;font:12px/1.6 Georgia,serif;letter-spacing:0;margin-top:6px}.tip-file-summary{font:12px Georgia,serif;margin:-10px 0 20px;overflow-wrap:anywhere}.tip-privacy{border-left:4px solid #55412c;padding:14px 18px;background:#e7d4ad;font:13px/1.6 Georgia,serif}.tip-privacy strong,.tip-editor strong{font:800 13px 'DM Sans',sans-serif;letter-spacing:.6px}.tip-privacy p{margin:8px 0}.tip-privacy em{display:block}.tip-editor{margin:20px 0;padding:18px;border:4px double #55412c;text-align:center}.tip-editor p{font:13px/1.6 Georgia,serif}.tip-result{margin-top:16px;border:2px solid #51402a;background:#e8d2a2;padding:15px;font-size:13px}.tip-result:empty{display:none}.tip-error{border-color:#8b3426}.tip-result p{margin:8px 0}.tip-form-wrap button{margin-top:3px}@media(max-width:760px){.tip-fields{grid-template-columns:1fr}.tip-form-wrap form{padding:15px}.tip-form-wrap h2{font-size:30px}}
/* Private Editor's Office */
.office-main{max-width:900px;margin:0 auto;min-height:500px}.office-panel{max-width:600px;margin:28px auto;padding:28px;border:5px double var(--rule);background:#f0dfbc}.office-panel h2,.office-actions h2{font:900 28px 'Playfair Display',Georgia,serif;margin:0 0 10px}.office-panel label,.office-case label,.office-filter label{display:block;font:800 11px 'DM Sans',sans-serif;letter-spacing:1px;margin:12px 0 6px}.office-panel input,.office-case input,.office-case select,.office-filter select{display:block;width:100%;padding:12px;background:#fff9e9;border:1px solid #8b7858;font:15px Georgia,serif}.office-panel button,.office-case button,.office-actions button{margin-top:15px;padding:11px 16px;background:#30281e;color:#f6e6c5;border:0;font:800 11px 'DM Sans',sans-serif;letter-spacing:.6px;cursor:pointer}.office-panel button:disabled,.office-case button:disabled{opacity:.5}.office-back{text-align:center;margin:36px 0;font-size:12px}.office-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.office-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.office-stats div{padding:15px;border:1px solid #88724e;background:#f0dfbc}.office-stats strong{display:block;font:900 29px 'Playfair Display',Georgia,serif}.office-stats span{font:700 11px 'DM Sans',sans-serif}.office-filter{max-width:350px;margin:20px 0}.office-case{border-top:4px double var(--rule);padding:20px 4px}.office-case h3{font:900 27px 'Playfair Display',Georgia,serif;margin:10px 0}.office-case p{overflow-wrap:anywhere;white-space:pre-wrap}.office-meta{font:12px/1.5 'DM Sans',sans-serif;color:#594b37}.office-empty{border:1px solid #8b7858;padding:22px;background:#f0dfbc}@media(max-width:600px){.office-stats{grid-template-columns:repeat(2,1fr)}.office-panel{padding:16px}.office-actions{align-items:flex-start;flex-direction:column}}

/* Editor's Office: modest portrait reminder */
.office-frank-portrait { margin: 18px auto 24px; width: 132px; text-align: center; }
.office-frank-portrait img { display: block; width: 112px; height: 132px; object-fit: cover; object-position: center 20%; filter: grayscale(100%); border: 3px double #4b4033; padding: 3px; background: #e8dfca; margin: 0 auto 8px; }
.office-frank-portrait figcaption { font-family: Georgia, serif; font-weight: bold; font-size: 10px; letter-spacing: .05em; line-height: 1.35; color: #29251f; }
.office-frank-portrait figcaption span { font-weight: normal; font-size: 9px; }

.tip-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.office-evidence-list{margin:12px 0;padding-left:20px}.office-evidence-list button{margin:3px 0}
