/*
 * Roy editorial preview — aligned to the accepted Don visual system.
 *
 * This is not a separate Meghan brand. It inherits the same museum tokens,
 * dark charcoal hero, blush accents, condensed uppercase display typography,
 * paper/bone sections, and photographic framing as Don.
 *
 * All changes are strictly scoped to the review-only Roy page. Preserve
 * Roy's editorial text, original photograph, images, evidence, and links.
 */
body[data-review="roy"]{
  background:var(--paper,#fcfaf6);
  color:var(--char,#303c3c);
  --roy-char:var(--char,#303c3c);
  --roy-paper:var(--paper,#fcfaf6);
  --roy-bone:var(--bone,#f5eeea);
  --roy-blush:var(--blush,#e0a39a);
  --roy-clay:var(--clay,#ad5144);
  --roy-serif:var(--serif,Georgia,serif);
  --roy-sans:var(--sans,"Avenir Next","Helvetica Neue",Arial,sans-serif);
  --review-accent:var(--clay,#ad5144);
  counter-reset:roy-chapter;
}

/* Don's charcoal editorial hero, preserving Roy & Mary's horizontal portrait. */
body[data-review="roy"] .mb-hero{
  padding:0;
  margin:0;
  background:var(--roy-char);
  color:var(--roy-paper);
}
body[data-review="roy"] .mb-hero>.mb-wrap{
  width:100%;
  max-width:none;
  margin:0;
}
body[data-review="roy"] .mb-hero .mb-grid{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  align-items:stretch;
  gap:0;
  min-height:650px;
}
body[data-review="roy"] .mb-hero .mb-grid>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:clamp(70px,9vw,140px) clamp(28px,4.5vw,84px) 85px max(35px,calc((100vw - 1440px)/2));
}
body[data-review="roy"] .mb-hero .mb-eyebrow{
  margin:0 0 15px;
  color:var(--roy-blush);
  font:800 12px/1.6 var(--roy-sans);
  letter-spacing:.12em;
  text-transform:uppercase;
}
body[data-review="roy"] .mb-hero h1{
  max-width:100%;
  margin:12px 0 25px;
  color:var(--roy-paper);
  font:900 clamp(64px,8.6vw,145px)/.88 "Arial Narrow","Avenir Next Condensed",var(--roy-sans);
  letter-spacing:-.065em;
  text-transform:uppercase;
  overflow-wrap:break-word;
}
body[data-review="roy"] .mb-hero .mb-grid>div>p:not(.mb-eyebrow){
  max-width:650px;
  margin:0 0 30px;
  color:rgba(252,250,246,.88);
  font:clamp(19px,2vw,28px)/1.49 var(--roy-serif);
}
body[data-review="roy"] .mb-hero .mb-grid>div>a{
  color:var(--roy-paper);
  border-bottom:1px solid var(--roy-blush);
  padding:0 0 10px;
  font:800 12px/1.6 var(--roy-sans);
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
}
body[data-review="roy"] .mb-hero .mb-grid>div>a:hover{
  color:var(--roy-blush);
}
body[data-review="roy"] .mb-hero figure{
  position:relative;
  display:flex;
  min-width:0;
  min-height:650px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  margin:0;
  padding:clamp(30px,4.8vw,75px);
  background:#b4c1b8;
}
body[data-review="roy"] .mb-hero figure>img{
  display:block;
  width:min(100%,500px);
  height:auto;
  max-height:490px;
  aspect-ratio:auto;
  object-fit:contain;
  background:var(--roy-paper);
  border:16px solid var(--roy-paper);
  box-shadow:25px 20px 0 rgba(0,0,0,.08);
}
body[data-review="roy"] .mb-hero figcaption{
  width:min(100%,500px);
  max-width:100%;
  margin:21px 0 0;
  padding:0;
  color:var(--roy-char);
  font:800 12px/1.5 var(--roy-sans);
  letter-spacing:.05em;
  text-align:center;
  text-transform:uppercase;
}

/* Don's literary archive chapters, not the rejected light-green template. */
body[data-review="roy"] .mb-story{
  width:min(1320px,calc(100% - 72px));
  max-width:none;
  margin:auto;
  padding:34px 0 100px;
}
body[data-review="roy"] .mb-chapter{
  display:grid;
  grid-template-columns:minmax(190px,.36fr) minmax(0,.64fr);
  column-gap:clamp(30px,5vw,80px);
  padding:clamp(70px,8vw,120px) 0;
  border-bottom:1px solid var(--line,rgba(48,60,60,.18));
  counter-increment:roy-chapter;
}
body[data-review="roy"] .mb-chapter h2{
  grid-column:1;
  align-self:start;
  min-width:0;
  max-width:100%;
  margin:0;
  color:var(--roy-char);
  font:900 clamp(40px,5.1vw,74px)/.97 "Arial Narrow","Avenir Next Condensed",var(--roy-sans);
  letter-spacing:-.045em;
  text-transform:uppercase;
  overflow-wrap:break-word;
}
body[data-review="roy"] .mb-chapter h2::before{
  display:block;
  margin-bottom:19px;
  padding-top:13px;
  border-top:1px solid var(--line,rgba(48,60,60,.18));
  content:counter(roy-chapter,decimal-leading-zero) " / ROY HILLIARD";
  color:var(--roy-clay);
  font:800 12px/1.5 var(--roy-sans);
  letter-spacing:.12em;
}
body[data-review="roy"] .mb-chapter>p,
body[data-review="roy"] .mb-chapter>figure{
  grid-column:2;
  min-width:0;
}
body[data-review="roy"] .mb-chapter>p{
  max-width:750px;
  margin:0 0 26px;
  color:var(--roy-char);
  font:clamp(18px,1.5vw,20px)/1.77 var(--roy-serif);
}
body[data-review="roy"] .mb-story a:not(.mctx-image-link){
  color:var(--roy-clay);
  text-decoration-color:rgba(173,81,68,.65);
  text-underline-offset:4px;
}
body[data-review="roy"] .mb-story strong{font-weight:700}
body[data-review="roy"] .mb-story .mctx-plate{
  width:100%;
  max-width:740px;
  margin:24px 0 40px;
  border:1px solid var(--line,rgba(48,60,60,.18));
  background:var(--roy-bone);
}
body[data-review="roy"] .mb-story .mctx-plate figcaption{
  font:13px/1.7 var(--roy-sans);
  color:var(--roy-char);
}
body[data-review="roy"] .mb-evidence{
  max-width:760px;
  width:min(100%,760px);
  margin:52px auto 10px;
  padding:20px;
  background:var(--roy-bone);
  border:1px solid var(--line,rgba(48,60,60,.18));
}
body[data-review="roy"] .mb-evidence>a{
  background:var(--roy-paper);
}
body[data-review="roy"] .mb-evidence figcaption{
  color:var(--roy-char);
  font:13px/1.7 var(--roy-sans);
}

/* The same dark editorial closing section and understated blush links. */
body[data-review="roy"] .mb-links{
  background:var(--roy-char);
  padding:clamp(66px,8vw,110px) 0;
  color:var(--roy-paper);
}
body[data-review="roy"] .mb-links .mb-wrap{
  width:min(1320px,calc(100% - 72px));
  max-width:none;
}
body[data-review="roy"] .mb-links h2{
  margin:0 0 30px;
  font:900 clamp(46px,6vw,84px)/.95 "Arial Narrow","Avenir Next Condensed",var(--roy-sans);
  letter-spacing:-.04em;
  text-transform:uppercase;
}
body[data-review="roy"] .mb-links p{max-width:850px}
body[data-review="roy"] .mb-links p>a{
  display:inline-block;
  min-height:44px;
  margin:0 23px 10px 0;
  padding:9px 2px;
  color:#f3c9bf;
  font:700 14px/1.55 var(--roy-sans);
  text-underline-offset:5px;
}
body[data-review="roy"] .mb-links .mb-note{
  margin-top:25px;
  color:rgba(252,250,246,.8);
  font:15px/1.72 var(--roy-serif);
}
body[data-review="roy"] :is(.mb-links a,.mb-hero a):focus-visible{
  outline:3px solid #ffe2ae;
  outline-offset:4px;
}

/* Responsive layout follows Don, without cropping the authentic family photo. */
@media(max-width:900px){
  body[data-review="roy"] .mb-hero .mb-grid{
    grid-template-columns:minmax(0,1fr) minmax(230px,.82fr);
  }
  body[data-review="roy"] .mb-hero .mb-grid>div{
    padding:65px 30px;
  }
  body[data-review="roy"] .mb-hero h1{
    font-size:clamp(52px,9vw,100px);
  }
  body[data-review="roy"] .mb-hero figure{
    min-height:0;
    padding:30px;
  }
  body[data-review="roy"] .mb-chapter{
    grid-template-columns:minmax(160px,.36fr) minmax(0,.64fr);
    gap:26px;
  }
}
@media(max-width:700px){
  body[data-review="roy"] .mb-hero .mb-grid{
    grid-template-columns:minmax(0,1fr);
    min-height:0;
  }
  body[data-review="roy"] .mb-hero .mb-grid>div{
    padding:58px 25px 52px;
  }
  body[data-review="roy"] .mb-hero h1{
    font-size:clamp(52px,14vw,90px);
  }
  body[data-review="roy"] .mb-hero figure{
    min-height:0;
    padding:34px 24px;
  }
  body[data-review="roy"] .mb-hero figure>img{
    max-height:370px;
    border-width:12px;
    box-shadow:16px 13px 0 rgba(0,0,0,.08);
  }
  body[data-review="roy"] .mb-story{
    width:calc(100% - 44px);
    padding:10px 0 65px;
  }
  body[data-review="roy"] .mb-chapter{
    display:block;
    padding:65px 0;
  }
  body[data-review="roy"] .mb-chapter h2{
    margin-bottom:30px;
    font-size:clamp(39px,10vw,58px);
  }
  body[data-review="roy"] .mb-links .mb-wrap{
    width:calc(100% - 44px);
  }
}
@media(max-width:360px){
  body[data-review="roy"] .mb-hero h1{
    font-size:clamp(40px,13vw,54px);
  }
  body[data-review="roy"] .mb-hero .mb-grid>div{
    padding:44px 18px;
  }
  body[data-review="roy"] .mb-story,
  body[data-review="roy"] .mb-links .mb-wrap{
    width:calc(100% - 32px);
  }
}
@media(prefers-reduced-motion:reduce){
  body[data-review="roy"] *{transition:none!important;animation:none!important}
}

/* Roy's supporting archive: sources are available without interrupting the life story. */
body[data-review="roy"] .roy-sources{background:var(--roy-bone);padding:clamp(56px,7vw,95px) 0;border-top:1px solid var(--line)}
body[data-review="roy"] .roy-sources .mb-wrap{width:min(1180px,calc(100% - 72px));margin-inline:auto}
body[data-review="roy"] .roy-sources-kicker{margin:0 0 12px;color:#87473f;font:800 11px/1.5 var(--roy-sans);text-transform:uppercase;letter-spacing:.12em}
body[data-review="roy"] .roy-sources h2{max-width:900px;margin:0 0 18px;color:var(--roy-char);font:900 clamp(39px,5.1vw,72px)/.96 "Arial Narrow","Avenir Next Condensed",var(--roy-sans);letter-spacing:-.045em;text-transform:uppercase}
body[data-review="roy"] .roy-sources-intro{margin:0 0 36px;max-width:740px;color:var(--roy-char);font:clamp(17px,1.5vw,20px)/1.65 var(--roy-serif)}
body[data-review="roy"] .roy-source{border-top:1px solid var(--line)}
body[data-review="roy"] .roy-source:last-of-type{border-bottom:1px solid var(--line)}
body[data-review="roy"] .roy-source summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;padding:23px 0;min-height:60px;color:var(--roy-char);font:750 clamp(15px,1.3vw,18px)/1.45 var(--roy-sans)}
body[data-review="roy"] .roy-source summary::-webkit-details-marker{display:none}
body[data-review="roy"] .roy-source summary span{flex:none;color:var(--roy-clay);font:800 24px/1 var(--roy-sans)}
body[data-review="roy"] .roy-source[open] summary span{transform:rotate(45deg)}
body[data-review="roy"] .roy-source summary:focus-visible{outline:3px solid var(--roy-clay);outline-offset:4px}
body[data-review="roy"] .roy-source>div{max-width:800px;padding:0 0 40px}
body[data-review="roy"] .roy-source>div>p{margin:0 0 19px;color:var(--roy-char);font:16px/1.72 var(--roy-serif)}
body[data-review="roy"] .roy-source a{color:#87473f;text-underline-offset:4px}
body[data-review="roy"] .roy-source figure{max-width:740px;margin:24px 0 34px}
body[data-review="roy"] .roy-source figure img{width:100%;max-height:510px;object-fit:contain}
body[data-review="roy"] .roy-source figure figcaption{margin-top:12px;font:13px/1.65 var(--roy-sans);color:var(--roy-char)}
@media(max-width:700px){
 body[data-review="roy"] .roy-sources .mb-wrap{width:calc(100% - 44px)}
 body[data-review="roy"] .roy-source summary{padding:20px 0}
}
