/*
 * Civic Pavilion — visual layer only.
 * Commerce, reader, slideshow and navigation behavior remain in the base theme.
 */
:root{
  --civic-green:#143a2f;
  --civic-green-deep:#0c2820;
  --civic-green-soft:#245848;
  --civic-gold:#d8b34f;
  --civic-gold-deep:#ad8527;
  --civic-cream:#ffffff;
  --civic-paper:#fffdf7;
  --civic-ink:#17201c;
  --civic-muted:#65716c;
  --charcoal:var(--civic-green-deep);
  --red:var(--civic-gold-deep);
  --ivory:var(--civic-cream);
  --paper:var(--civic-paper);
  --stone:#d9d1bd;
  --muted:var(--civic-muted);
  --gold:var(--civic-gold);
  --line:rgba(20,58,47,.18);
}

body{background:var(--civic-cream);color:var(--civic-ink)}

.search-prophecy{margin:0 0 28px;padding:clamp(24px,4vw,42px);border:1px solid rgba(216,179,79,.55);border-left:5px solid var(--civic-gold-deep);background:linear-gradient(145deg,var(--civic-green-deep),var(--civic-green));color:white;text-align:center}.search-prophecy strong,.search-prophecy>span{display:block;font-family:Georgia,"Times New Roman",serif}.search-prophecy strong{color:var(--civic-gold);font-size:clamp(28px,3.5vw,48px);line-height:1}.search-prophecy>span{margin:10px 0 28px;font-size:clamp(20px,2.5vw,34px);line-height:1.1}.search-prophecy p{margin:16px auto;max-width:780px;color:#fff;font-size:clamp(13px,1.3vw,17px);font-weight:800;line-height:1.55;letter-spacing:.055em}.search-prophecy .prophecy-equation{overflow-wrap:anywhere;color:#e9d99f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(10px,1.05vw,14px);letter-spacing:0}.search-prophecy>b{display:block;margin:12px 0;color:var(--civic-gold);font:700 clamp(62px,8vw,106px)/.9 Georgia,"Times New Roman",serif}

/* Preserve crisp contrast where small brass text now sits on pure white. */
.room-index article:not(:first-child)>span,
.intro-placeholder>span,
.entry-rule>span{
  -webkit-text-stroke:.2px rgba(12,40,32,.65);
  text-shadow:0 1px 0 rgba(12,40,32,.28);
}

/* Pavilion masthead */
.room-nav{height:78px;padding-inline:clamp(18px,4.5vw,72px);border-bottom:1px solid rgba(216,179,79,.32);background:rgba(12,40,32,.98);color:var(--civic-paper);box-shadow:0 12px 30px rgba(12,40,32,.18)}
.room-brand{align-items:center;gap:12px}
.civic-brand-mark{width:42px;height:42px;flex:0 0 42px;border-radius:10px;box-shadow:0 0 0 1px rgba(216,179,79,.32)}
.civic-brand-copy{display:grid!important;gap:4px;color:var(--civic-paper)!important}
.civic-brand-copy strong{font-size:15px;letter-spacing:.055em;color:var(--civic-paper)}
.civic-brand-copy small{font-size:9px;font-weight:700;letter-spacing:.19em;color:var(--civic-gold)}
.room-nav nav{font-size:11px;font-weight:700}
.room-nav nav a{border-color:transparent;color:var(--civic-paper)}
.room-nav nav a:hover,.room-nav nav a:focus-visible{border-color:var(--civic-gold);color:var(--civic-gold)}
.room-nav .library-link{color:var(--civic-paper);font-size:10px}
.room-nav .library-link b{background:var(--civic-gold);color:var(--civic-green-deep)}
.room-nav .menu-link{color:var(--civic-paper);font-size:10px;font-weight:800}

/* Cinematic civic slideshow */
.top-slideshow{background:var(--civic-green-deep)}
.slide-shade{background:linear-gradient(90deg,rgba(6,30,23,.88),rgba(9,39,30,.44) 56%,rgba(216,179,79,.12)),linear-gradient(0deg,rgba(6,30,23,.64),transparent 62%)}
.slide figcaption span{color:var(--civic-gold);font-size:10px}
.slide figcaption strong{text-shadow:0 5px 24px rgba(0,0,0,.34)}
.slide-controls>button{border-color:rgba(216,179,79,.7);background:rgba(12,40,32,.62)}
.slide-controls>button:hover,.slide-controls>button:focus-visible{background:var(--civic-gold);color:var(--civic-green-deep)}
.slide-dots button.is-active{background:var(--civic-gold)}

/* Civic proclamation */
.room-hero{min-height:410px;padding:clamp(76px,9vw,125px) clamp(22px,8vw,130px);position:relative;overflow:hidden;text-align:left;background:linear-gradient(132deg,var(--civic-cream) 0 72%,var(--civic-gold) 72%);color:var(--civic-green-deep)}
.room-hero:before{content:"";position:absolute;right:-9vw;top:-13vw;width:42vw;min-width:360px;aspect-ratio:1;border:clamp(28px,5vw,76px) solid rgba(20,58,47,.11);border-radius:50%}
.room-hero:after{content:"";position:absolute;left:clamp(22px,8vw,130px);bottom:44px;width:min(380px,45vw);height:3px;background:var(--civic-gold-deep)}
.room-hero>*{position:relative;z-index:1}
.room-hero>span{color:var(--civic-green);font-size:11px}
.room-hero h1{max-width:980px;margin:21px 0 27px;color:var(--civic-green-deep);font-size:clamp(62px,8vw,118px)}
.room-hero h1 em{color:var(--civic-gold-deep)}
.room-hero p{color:var(--civic-green);font-size:clamp(19px,2vw,28px)}
.read-counts{max-width:920px;margin:24px 0 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.read-counts span,.read-counts strong{padding:7px 10px;border:1px solid rgba(20,58,47,.18);border-radius:999px;background:rgba(255,255,255,.76);color:var(--civic-green);font:600 10px/1.2 var(--sans);letter-spacing:.035em}.read-counts b{color:var(--civic-green-deep);font-size:12px}.read-counts strong{background:var(--civic-green-deep);color:white}.read-counts strong b{color:var(--civic-gold)}

/* Four-title pavilion */
.room-index{width:100%;margin:0;padding:clamp(28px,4vw,58px) clamp(14px,5vw,74px);gap:16px;background:var(--civic-green)}
.room-index article{padding:18px;border:0;border-top:5px solid var(--civic-gold);border-radius:5px;background:var(--civic-paper);box-shadow:0 14px 32px rgba(5,25,19,.16)}
.room-index article:first-child{background:var(--civic-gold);border-top-color:var(--civic-green-deep)}
.room-index article:hover{transform:translateY(-7px);box-shadow:0 20px 38px rgba(5,25,19,.24)}
.room-index article:focus-visible{outline-color:var(--civic-gold)}
.room-index article>span{color:var(--civic-gold-deep);font-size:10px}
.room-index article:first-child>span,.room-index article:first-child small{color:var(--civic-green)}
.room-index small{font-size:9px;font-weight:800;color:var(--civic-green-soft)}
.room-index h2{font-size:25px;color:var(--civic-green-deep)}
.room-index p{font-size:12px;line-height:1.45}
.room-index button{min-height:42px;border-bottom-color:var(--civic-green);color:var(--civic-green);font-size:10px}

/* Reading hall */
.collection-section{padding-bottom:clamp(80px,10vw,140px);background:var(--civic-cream)}
.collection-heading.video-heading{border-bottom:8px solid var(--civic-gold)}
.video-heading-shade{background:linear-gradient(90deg,rgba(7,36,27,.92),rgba(10,46,35,.7) 54%,rgba(177,133,34,.28)),linear-gradient(0deg,rgba(7,36,27,.55),transparent 65%)}
.video-heading span{color:var(--civic-gold);font-size:10px}
.video-heading h2{text-shadow:0 6px 30px rgba(0,0,0,.32)}
.video-heading p{font-size:18px}
.book-sections{max-width:1380px;margin:auto}
.book-feature{margin-bottom:34px;padding:clamp(34px,5vw,70px);border-radius:12px;border-top:7px solid var(--civic-gold);background:var(--civic-paper);box-shadow:0 22px 55px rgba(20,58,47,.1)}
.book-feature:nth-child(even){background:#f0eadb}
.entry-rule{border-top-color:var(--civic-green);color:var(--civic-gold-deep)}
.entry-rule span{font-size:10px;font-weight:800}
.entry-rule b{font-size:9px;color:var(--civic-green)}
.feature-copy h3{color:var(--civic-green-deep)}
.intro-placeholder{padding-left:20px;border-left:4px solid var(--civic-gold);color:var(--civic-ink)}
.intro-placeholder>span{color:var(--civic-gold-deep);font-size:10px;font-weight:800;letter-spacing:.18em}
.primer p{color:#3f4c46}
.read-button{border:2px solid var(--civic-green);background:transparent;color:var(--civic-green);font-size:10px;font-weight:800}
.read-button:hover,.read-button:focus-visible{background:var(--civic-green);border-color:var(--civic-green);color:var(--civic-paper)}
.purchase-action{border-left-color:rgba(20,58,47,.2)}
.purchase-action>strong{color:var(--civic-green-deep)}
.purchase-action .buy-button{background:var(--civic-gold);color:var(--civic-green-deep);font-size:10px;font-weight:900}
.purchase-action .buy-button:hover,.purchase-action .buy-button:focus-visible{background:var(--civic-green);color:var(--civic-paper)}
.feature-store .entry-cover{border:1px solid rgba(20,58,47,.16);box-shadow:16px 18px 0 rgba(216,179,79,.48),0 24px 55px rgba(12,40,32,.2)}
.book-feature#book-gunsvotes .guns-votes-full-cover{box-shadow:16px 18px 0 rgba(216,179,79,.48),0 24px 55px rgba(12,40,32,.2)}

/* Author pavilion and footer */
.author-section{border-top:8px solid var(--civic-gold);background:var(--civic-green-deep)}
.author-profile{background:var(--civic-green-deep)}
.author-profile>span,.reading-note>span{color:var(--civic-gold);font-size:10px}
.author-profile p{font-size:16px;color:#d3ddd8}
.author-profile small{font-size:11px;color:#aebdb6;border-left-color:var(--civic-gold)}
.reading-note{background:var(--civic-green)}
.reading-note li>b{color:var(--civic-gold)}
.reading-note li p{font-size:12px;color:#d3ddd8}
.reading-note li strong{font-size:19px}
.cream-button{border:0;border-radius:999px;background:var(--civic-gold);color:var(--civic-green-deep);font-size:10px;font-weight:850}
footer{min-height:124px;border:0;background:var(--civic-gold);color:var(--civic-green-deep)}
footer .masthead-brand strong,footer .masthead-brand span,footer p,footer a{color:var(--civic-green-deep)}
footer>button{min-height:44px;border-bottom:1px solid var(--civic-green-deep);font-weight:800}

/* Commerce and policies follow the same visual system */
.woocommerce-shell,.wp-fallback,.policy-page{background:var(--civic-paper)}
.woocommerce-shell .button,.woocommerce-shell button,.woocommerce-shell input[type=submit],.wc-block-components-button{border-radius:999px!important;background:var(--civic-green)!important;color:var(--civic-paper)!important}
.woocommerce-shell a,.policy-page a{color:var(--civic-green)}
.jdb-commerce-brand,.jdb-cart-collection{background:linear-gradient(135deg,var(--civic-green-deep),var(--civic-green))}
.jdb-cart-collection-grid a{background:var(--civic-gold);color:var(--civic-green-deep)}

/* Mobile pavilion */
@media(max-width:1050px){
  .room-index{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:760px){
  .room-nav{height:68px}
  .civic-brand-mark{width:36px;height:36px;flex-basis:36px}
  .civic-brand-copy{display:grid!important}
  .civic-brand-copy strong{font-size:13px}
  .civic-brand-copy small{display:none}
  .room-nav nav{top:68px;padding:20px;background:var(--civic-green-deep);border-color:rgba(216,179,79,.35)}
  .room-nav nav.open{gap:0}
  .room-nav nav a{min-height:46px;display:flex;align-items:center;border-bottom:1px solid rgba(216,179,79,.2)}
  .room-hero{min-height:340px;padding:62px 20px 76px;background:linear-gradient(144deg,var(--civic-cream) 0 82%,var(--civic-gold) 82%)}
  .room-hero:after{left:20px;bottom:42px}
  .room-hero h1{font-size:clamp(52px,15vw,78px)}
  .room-index{width:100%;padding:22px 14px;grid-template-columns:1fr 1fr;gap:10px}
  .room-index article{grid-template-columns:22px 56px minmax(0,1fr);padding:13px 10px}
  .room-index img{width:56px}
  .room-index h2{font-size:21px}
  .room-index article>button{grid-column:3}
  .book-feature{border-radius:8px}
}

@media(max-width:600px){
  .room-nav .library-link{font-size:0;gap:0}
  .room-nav .library-link b{font-size:9px}
  .room-hero{min-height:320px}
  .room-index{grid-template-columns:1fr}
  .room-index article{grid-template-columns:24px 70px minmax(0,1fr);padding:15px}
  .room-index img{width:70px}
  .room-index h2{font-size:26px}
  .book-feature{padding:30px 18px 40px;border-top-width:6px}
  .intro-placeholder{padding-left:15px}
  .feature-store .entry-cover,.book-feature#book-gunsvotes .guns-votes-full-cover{box-shadow:10px 12px 0 rgba(216,179,79,.48),0 18px 38px rgba(12,40,32,.18)}
  .author-profile p{font-size:16px}
  footer{padding:30px 20px}
}

@media(max-width:390px){
  .civic-brand-copy strong{font-size:11px}
  .room-nav{padding-inline:11px}
  .room-nav .menu-link{font-size:9px}
}

@media(prefers-reduced-motion:reduce){
  .room-index article,.feature-store .entry-cover{transition:none}
}
