/* EasyBassMaster / the foyer: the real homepage is the room.
   Applied only to pre-existing routes, never to index.html.
   All original H1, article text, routes, source links and contacts remain intact. */
body.foyer-page {
  --paper:#f1e2ca;
  --muted:#c0a68a;
  --line:rgba(233,200,161,.29);
  --signal:#d9a06c;
  color:var(--paper);
  background:radial-gradient(circle at 75% 0%,rgba(182,108,51,.18),transparent 38%),
             linear-gradient(150deg,#312116,#1b130e 50%,#120d0a);
  min-height:100vh;
}
body.foyer-page a {text-underline-offset:4px;}
.foyer-page .rule {border-color:var(--line);}
.foyer-page .meta {color:var(--muted);}
.foyer-page .meta a {text-decoration:none;letter-spacing:.11em;}
.foyer-page .meta a:hover {color:#ffe2bc;}
.foyer-page .mast {border-color:var(--paper) var(--line) var(--line);}
.foyer-page .issue-kicker {color:#e9b27b;}
.foyer-page .deck,
.foyer-page .master-text p,
.foyer-page .knowledge-text p {color:#ddc6a8;}
.foyer-page .knowledge-text h2 {color:#f3dfc0;}
.foyer-page .master-links,
.foyer-page .master-footer,
.foyer-page .contact-block {border-color:var(--line);}
.foyer-page .master-links a:hover {color:#ffe2b6;}
.foyer-page .contact-phone {color:var(--paper);}
.foyer-page .contact-icons a:hover {opacity:.66;}

/* Brief search landing: a meaningful door, not a second long commercial page. */
.foyer-page.entry-router .master-lead {
  background-image:linear-gradient(90deg,rgba(25,14,8,.94),rgba(25,14,8,.85) 60%,rgba(25,14,8,.66)),
                   url('../photography/row-amber.webp');
  background-position:center,center 43%;
  background-size:cover;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin-top:16px;
  padding:25px clamp(18px,3.5vw,34px) 23px;
}
.foyer-page.entry-router .master-lead h1 {color:#f6e8d2;text-wrap:balance;}
.foyer-page.entry-router .contact-block {margin-top:20px;margin-bottom:20px;}

/* Same room, three forms of invitation. Only content emphasis changes by role. */
.foyer-door {
  margin:35px 0 40px;
  display:grid;
  grid-template-columns:minmax(0, .95fr) minmax(0,1.05fr);
  border:1px solid rgba(235,201,158,.38);
  background:linear-gradient(155deg,#261810,#120d09);
  box-shadow:0 17px 44px rgba(0,0,0,.2);
  max-width:100%;
  overflow:hidden;
  min-width:0;
}
.foyer-door-image {overflow:hidden;min-width:0;background:#2f1c10;}
.foyer-door-image img {
  display:block;width:100%;height:100%;min-height:265px;max-height:410px;
  object-fit:cover;object-position:center;filter:contrast(1.04) saturate(1.05);
}
.foyer-door-copy {
  min-width:0;display:flex;align-items:flex-start;flex-direction:column;
  justify-content:center;gap:14px;
  padding:clamp(23px,3.9vw,48px);
}
.foyer-door-kicker {
  color:#e6ad75!important;font:700 10px/1.3 Arial,sans-serif!important;
  text-transform:uppercase;letter-spacing:.17em;margin:0!important;
}
.foyer-door h2 {
  font:400 clamp(25px,3.4vw,43px)/1.03 Georgia,serif!important;
  letter-spacing:-.02em;color:#f7e8d0;margin:0!important;
}
.foyer-door-copy>p:not(.foyer-door-kicker) {
  font:400 clamp(16px,1.65vw,19px)/1.5 Georgia,serif!important;
  color:#dcc4a5!important;max-width:550px;margin:0!important;
}
.foyer-door-enter {
  display:inline-flex;align-items:center;justify-content:space-between;gap:23px;
  margin-top:12px;padding:13px 17px;border:1px solid #cd9e6e;
  background:rgba(176,111,52,.15);color:#ffe6c6!important;
  text-decoration:none!important;
  font:700 11px/1.3 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;
  transition:background .2s,color .2s;
}
.foyer-door-enter:hover,.foyer-door-enter:focus-visible {
  background:rgba(206,141,83,.28);outline-color:#fff0cb;
}
.foyer-door-enter span {font-size:18px;font-weight:400;}
.foyer-door-search {
  margin-top:18px;margin-bottom:25px;
  grid-template-columns:minmax(0, .40fr) minmax(0,.60fr);
}
.foyer-door-search .foyer-door-image img {min-height:200px;max-height:310px;}
.foyer-door-search .foyer-door-copy {padding:clamp(19px,2.5vw,31px);gap:10px;}
.foyer-door-search h2 {font-size:clamp(24px,3vw,35px)!important;}
.foyer-door-search .foyer-door-enter {margin-top:6px;}

/* The door is a link, not a gate: editorial sources and 4+4 links stay visible. */
.foyer-page .knowledge-text {max-width:900px;}
.foyer-page .knowledge-sources {color:var(--muted);}
.foyer-page .master-footer {margin-top:25px;}
.foyer-page .collection-range {border-color:var(--line);}

@media(max-width:760px){
  .foyer-page .mast h1 {font-size:clamp(27px,7vw,46px);letter-spacing:-.07em;overflow-wrap:anywhere;}
  .foyer-page .mast .mastline{min-width:0;}
  .foyer-page.entry-router .master-lead {padding:19px 13px;}
  .foyer-door,.foyer-door-search {grid-template-columns:1fr;margin:22px 0 27px;}
  .foyer-door-image img,.foyer-door-search .foyer-door-image img {height:195px;min-height:0;max-height:195px;}
  .foyer-door-copy,.foyer-door-search .foyer-door-copy {padding:22px 19px;gap:11px;}
  .foyer-door h2,.foyer-door-search h2 {font-size:clamp(25px,7vw,36px)!important;}
  .foyer-door-enter {min-height:43px;}
  .foyer-page.entry-router .contact-block {margin-bottom:13px;}
}
@media(prefers-reduced-motion:reduce){.foyer-page *, .foyer-page *:before,.foyer-page *:after{transition:none!important;animation:none!important;}}