/* Fireplace Gallery 8.7: shared editorial design rhythm for regular pages,
   Services, Privacy, WordPress Posts, Journal archives and fullscreen readers.
   Presentation only. No markup rewriting, no HTML filters and no content writes.
   Toggle classes are supplied from Site Manager > Site Visual Design.
*/
body.fg87-page-design,
body.fg87-post-design,
body.fg87-archive-design{
  --fg87-gold:#b79a6d;
  --fg87-ink:#28312b;
  --fg87-line:#dedbd2;
  --fg87-cream:#f7f5ef;
  --fg87-soft:#f1eee6;
}
/* Base guardrails: every visual accent stays behind text and never changes column width. */
body.fg87-page-design :is(.page-shell,.fg60-page,.fg67-page,.fg70-single-wrap,.fg77-legal-page,.fg58-page),
body.fg87-post-design .fg84-article,
body.fg87-archive-design :is(.fg84-archive-body,.fg84-archive-hero){min-width:0}

body.fg87-page-design .fg67-page .fg67-hero,
body.fg87-page-design .fg60-page .fg60-hero,
body.fg87-page-design .fg77-legal-page .fg77-legal-hero,
body.fg87-post-design .fg84-article-hero{border-bottom:3px solid var(--fg87-gold)}
/* Standard WordPress Pages: original blocks remain directly editable via Gutenberg. */
body.fg87-page-design .page-shell{padding-block:clamp(38px,5vw,78px) clamp(55px,7vw,95px)}
body.fg87-page-design .page-shell>h1{position:relative;padding-bottom:clamp(21px,3vw,33px);margin-bottom:clamp(27px,4vw,49px);border-bottom:1px solid var(--fg87-line)}
body.fg87-page-design .page-shell>h1::after{content:"";position:absolute;bottom:-2px;left:0;width:clamp(65px,9vw,114px);height:3px;background:var(--fg87-gold)}
body.fg87-page-design .page-shell .richtext> :is(h2,h3),
body.fg87-page-design .page-shell .entry-content> :is(h2,h3){scroll-margin-top:105px}
body.fg87-page-design .page-shell .richtext>h2,
body.fg87-page-design .page-shell .entry-content>h2{border-top:1px solid var(--fg87-line);padding-top:clamp(23px,3vw,36px);margin-top:clamp(36px,5vw,62px)}
body.fg87-page-design .page-shell .richtext>.wp-block-group,
body.fg87-page-design .page-shell .entry-content>.wp-block-group{position:relative;border-top:2px solid var(--fg87-gold);padding-top:clamp(21px,3vw,37px);margin-top:clamp(22px,3vw,43px)}
/* Explicit Gutenberg backgrounds and full-width covers are respected. */
body.fg87-page-design .page-shell .wp-block-cover,
body.fg87-page-design .page-shell .wp-block-image{max-width:100%}

/* About Us and Showroom: subtle alternating paper surfaces and a clear section edge. */
body.fg87-page-design .fg60-page .fg60-body>.wp-block-group:not(.fg60-intro){position:relative;isolation:isolate;border-top:3px solid var(--fg87-gold);border-bottom:1px solid var(--fg87-line);margin-block:clamp(16px,3vw,36px)}
body.fg87-page-design .fg60-page .fg60-body>.wp-block-group:not(.fg60-dark):not(.has-background):nth-of-type(even){background:var(--fg87-cream)}
body.fg87-page-design .fg60-page .fg60-body>.wp-block-group.fg60-dark{border-top-color:#c8ad80}
body.fg87-page-design .fg60-page .fg60-body>.wp-block-group:not(.fg60-intro)>h2:first-child{margin-top:0}
/* Services landing: preserve full content width established in 7.3. */
body.fg87-page-design .fg67-page .fg67-body>.wp-block-group{position:relative;border-top:3px solid var(--fg87-gold);border-bottom:1px solid var(--fg87-line);margin-block:clamp(24px,3vw,42px);padding-top:clamp(18px,3vw,42px)}
body.fg87-page-design .fg67-page .fg67-body .fg70-landing-intro{border-bottom:1px solid var(--fg87-line);padding-bottom:clamp(24px,3vw,39px);margin-bottom:clamp(24px,3vw,39px)}
body.fg87-page-design .fg67-page .fg70-service-tile{border-top:3px solid var(--fg87-gold)}
/* Dedicated published services (including service content in fullscreen reader). */
body.fg87-page-design .fg70-single-wrap .fg70-single-hero{border-bottom:1px solid var(--fg87-line);padding-bottom:clamp(29px,4vw,57px)}
body.fg87-page-design .fg70-single-wrap .fg70-single-text>:is(h2,h3),
body.fg87-page-design .fg70-single-wrap .fg70-single-text>.wp-block-group,
body.fg87-page-design .fg70-service-modal .fg70-modal-editorial>:is(h2,h3),
body.fg87-page-design .fg70-service-modal .fg70-modal-editorial>.wp-block-group{border-top:1px solid var(--fg87-line);padding-top:clamp(18px,2.5vw,33px);margin-top:clamp(28px,3vw,43px)}
body.fg87-page-design .fg70-single-wrap .fg70-single-text>h2,
body.fg87-page-design .fg70-service-modal .fg70-modal-editorial>h2{border-top:3px solid var(--fg87-gold)}
body.fg87-page-design .fg70-service-modal .fg70-modal-feature{border-bottom:1px solid var(--fg87-line);padding-bottom:clamp(24px,3vw,46px)}
body.fg87-page-design .fg70-service-modal .fg70-modal-actions{border-top:3px solid var(--fg87-gold)}
/* Contact and policy: retain form layout and legal sidebar sticky behavior. */
body.fg87-page-design .fg58-page .fg58-page-form{border-top:3px solid var(--fg87-gold)}
body.fg87-page-design .fg58-page .fg58-page-head{border-bottom:1px solid var(--fg87-line)}
body.fg87-page-design .fg77-legal-page .fg77-legal-sidebar{border-top:3px solid var(--fg87-gold)}
body.fg87-page-design .fg77-legal-page .fg77-legal-rich>h2{padding-top:clamp(19px,3vw,31px);border-top:1px solid var(--fg87-line)}
body.fg87-page-design .fg77-legal-page .fg77-legal-rich>h2:first-child{border-top:0;padding-top:0}

/* Journal: published article pages AND the same content mounted in the fullscreen reader. */
body.fg87-post-design .fg84-article-body{position:relative;isolation:isolate}
body.fg87-post-design .fg84-article-prose>h2{position:relative;padding-top:clamp(22px,3vw,41px);border-top:1px solid var(--fg87-line);margin-top:clamp(40px,5vw,70px)}
body.fg87-post-design .fg84-article-prose>h2::before{content:"";position:absolute;top:-2px;left:0;width:clamp(58px,7vw,96px);height:3px;background:var(--fg87-gold)}
body.fg87-post-design .fg84-article-prose>.wp-block-group{position:relative;border-top:2px solid var(--fg87-gold);margin-block:clamp(23px,3vw,43px);padding:clamp(22px,3.2vw,42px)}
body.fg87-post-design .fg84-article-prose>.wp-block-group:not(.has-background){background:var(--fg87-cream)}
body.fg87-post-design .fg84-article-prose>blockquote,
body.fg87-post-design .fg84-article-prose>.wp-block-quote{border-inline-start:3px solid var(--fg87-gold);background:var(--fg87-soft);padding:clamp(16px,2.5vw,30px);margin-block:clamp(22px,3vw,40px)}
body.fg87-post-design .fg84-tags-divider{position:relative;height:1px;background:var(--fg87-line)}
body.fg87-post-design .fg84-tags-divider::before{content:"";position:absolute;left:0;top:-1px;width:96px;height:3px;background:var(--fg87-gold)}
body.fg87-post-design .fg84-related-section{border-top:1px solid var(--fg87-line);background:var(--fg87-cream)}
body.fg87-post-design .fg84-related-section .fg84-related-title{border-left:3px solid var(--fg87-gold);padding-left:clamp(15px,2vw,25px)}
/* Modal has own scroll container; preserve its width, buttons, positioning and focus handling. */
body.fg87-post-design .fg84-reader .fg84-reader-toolbar{border-bottom:3px solid var(--fg87-gold)}

/* All WordPress journal indexes: blog, tags, category, date, author, search. */
body.fg87-archive-design .fg84-archive-hero{position:relative;isolation:isolate;overflow:hidden;border-bottom:3px solid var(--fg87-gold)}
body.fg87-archive-design .fg84-archive-hero>.fg84-shell{position:relative;z-index:1}
body.fg87-archive-design .fg84-archive-body{border-top:1px solid #e8e1d4}
body.fg87-archive-design .fg84-post-tile{border-top:3px solid var(--fg87-gold)}
body.fg87-archive-design .fg84-pagination{border-top:1px solid var(--fg87-line);padding-top:clamp(22px,3vw,36px)}

/* Optional NYC line art belongs only in empty decoration layers. */
body.fg86-nyc-art.fg87-page-design .fg60-page .fg60-body>.wp-block-group:not(.fg60-intro):not(.fg60-dark)::after,
body.fg86-nyc-art.fg87-page-design .fg67-page .fg67-body>.wp-block-group:not(.has-background)::after{
  content:"";position:absolute;right:0;bottom:0;width:min(38%,390px);height:clamp(75px,9vw,130px);
  background:url('nyc-skyline-v85.svg') right bottom/contain no-repeat;
  opacity:.065;pointer-events:none;z-index:0;
}
body.fg86-nyc-art.fg87-post-design .fg84-related-section{position:relative;isolation:isolate}
body.fg86-nyc-art.fg87-post-design .fg84-related-section::before,
body.fg86-nyc-art.fg87-archive-design .fg84-archive-hero::after{
  content:"";position:absolute;right:0;bottom:0;width:min(47%,540px);height:clamp(90px,13vw,190px);
  background:url('nyc-bridge-v85.svg') right bottom/contain no-repeat;
  opacity:.12;pointer-events:none;z-index:0;
}
body.fg86-nyc-art.fg87-post-design .fg84-related-section > *,
body.fg86-nyc-art.fg87-page-design .fg60-body>.wp-block-group>*{position:relative;z-index:1}
@media(max-width:767px), (min-width:768px) and (max-width:1100px) and (orientation:portrait){
  body.fg87-page-design .page-shell{padding-block:28px 52px}
  body.fg87-page-design .fg60-page .fg60-body>.wp-block-group:not(.fg60-intro){margin-block:17px}
  body.fg87-post-design .fg84-article-prose>.wp-block-group{padding:clamp(17px,4vw,24px)}
  body.fg87-post-design .fg84-article-prose>h2{margin-top:32px;padding-top:24px}
  body.fg87-post-design .fg84-related-section{padding-block:34px}
  body.fg87-archive-design .fg84-post-tile{border-top-width:2px}
}
@media(max-width:580px){
 body.fg86-nyc-art.fg87-page-design .fg60-page .fg60-body>.wp-block-group::after,
 body.fg86-nyc-art.fg87-page-design .fg67-page .fg67-body>.wp-block-group::after,
 body.fg86-nyc-art.fg87-post-design .fg84-related-section::before,
 body.fg86-nyc-art.fg87-archive-design .fg84-archive-hero::after{opacity:.045;width:65%}
}
@media(prefers-reduced-motion:reduce){
 body.fg87-post-design .fg84-post-tile{transition:none}
}
