/* =========================================================
   JIMYBELL.COM — THE.HUMAN INDEX / ROOM PASS V3
   A physical, photorealistic interior built from the approved
   Human Index room photography. Existing copy/routes retained.
   ========================================================= */

:root{
  --hi-bg:#050403;
  --hi-black:#080706;
  --hi-ink:#eee8dc;
  --hi-muted:#b7ab97;
  --hi-gold:#c9a227;
  --hi-gold-hi:#ead27c;
  --hi-gold-deep:#6c4e10;
  --hi-line:rgba(201,162,39,.42);
  --hi-line-soft:rgba(201,162,39,.16);
  --hi-shadow:0 28px 70px rgba(0,0,0,.72);
  --grid-max:1120px;
  --room-photo:url('/assets/brand/human-index/human-index-room-photo.jpg');
  --wall-black:url('/assets/brand/human-index/wall-black.jpg');
  --wall-center:url('/assets/brand/human-index/wall-center.jpg');
  --shelves:url('/assets/brand/human-index/shelves.jpg');
  --desk-photo:url('/assets/brand/human-index/desk-brass.jpg');
  --floor-photo:url('/assets/brand/human-index/floor.jpg');
}

html,body{
  background:#040302;
  color:var(--hi-ink);
}

body{
  min-height:100vh;
  background:
    linear-gradient(rgba(3,3,3,.32),rgba(3,3,3,.58)),
    var(--room-photo) center top / cover fixed no-repeat;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(0,0,0,.75),transparent 13%,transparent 87%,rgba(0,0,0,.75)),
    radial-gradient(ellipse at 50% 12%,transparent 0 32%,rgba(0,0,0,.2) 58%,rgba(0,0,0,.63) 100%);
}

::selection{background:rgba(201,162,39,.3);color:#fff7df;}
.knuckle{color:var(--hi-gold);}
.wrap{width:min(calc(100% - 42px),var(--grid-max));max-width:var(--grid-max);margin-inline:auto;padding:0;}

/* ---------- black lacquer header ---------- */
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:
    linear-gradient(180deg,rgba(12,10,8,.98),rgba(5,5,5,.96)),
    var(--wall-black) center / cover;
  border-bottom:1px solid rgba(201,162,39,.55);
  box-shadow:0 12px 34px rgba(0,0,0,.58),inset 0 -4px 16px rgba(201,162,39,.05);
  backdrop-filter:blur(12px);
}
.site-header::before,.site-header::after{content:"";position:absolute;left:0;right:0;height:1px;pointer-events:none;}
.site-header::before{top:5px;background:rgba(234,210,124,.17);}
.site-header::after{bottom:4px;background:rgba(201,162,39,.13);}
.site-header .wrap{width:min(calc(100% - 42px),var(--grid-max));min-height:54px;padding:8px 0;}
.brand-left,.brand-center,.brand-right{
  font-family:Georgia,"Times New Roman",serif;
  color:#d6c48f;
  opacity:.96;
  text-shadow:0 2px 8px rgba(0,0,0,.85);
}
.brand-left,.brand-right{font-size:13px;letter-spacing:.035em;}
.brand-center{font-size:17px;font-weight:700;}

/* ---------- entrance lands inside the real room ---------- */
.hero.human-index-room{
  display:block;
  min-height:auto;
  padding:26px 0 14px;
  background:transparent!important;
  border:0!important;
  overflow:visible;
}
.human-index-room .wrap{width:min(calc(100% - 28px),1280px);max-width:1280px;}
.human-index-photo-stage{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(234,210,124,.52);
  border-radius:4px;
  background:#060505;
  box-shadow:0 0 0 5px #030303,0 0 0 6px rgba(201,162,39,.18),0 35px 82px rgba(0,0,0,.76);
}
.human-index-photo-stage::before{
  content:"";
  position:absolute;
  z-index:2;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.18),transparent 16%,transparent 84%,rgba(0,0,0,.16));
  box-shadow:inset 0 0 72px rgba(0,0,0,.32),inset 0 0 0 1px rgba(255,248,218,.04);
}
.human-index-room-photo{display:block;width:100%;height:auto;object-fit:cover;}
.human-index-room__intro-strip{
  position:relative;
  width:min(920px,calc(100% - 36px));
  margin:-1px auto 0;
  padding:19px 34px 21px;
  text-align:center;
  border:1px solid rgba(201,162,39,.42);
  border-top-color:rgba(234,210,124,.62);
  border-radius:0 0 4px 4px;
  background:
    linear-gradient(180deg,rgba(24,19,12,.96),rgba(7,6,5,.98)),
    var(--desk-photo) center / cover;
  box-shadow:0 22px 48px rgba(0,0,0,.58),inset 0 0 0 4px rgba(0,0,0,.48),inset 0 0 0 5px rgba(201,162,39,.07);
}
.human-index-room__intro-strip::before{
  content:"";
  position:absolute;
  left:50%;top:-8px;
  width:110px;height:7px;
  transform:translateX(-50%);
  border-radius:999px;
  background:linear-gradient(90deg,#57400d,#f0d77d,#7c5c17,#f0d77d,#57400d);
  box-shadow:0 0 18px rgba(234,210,124,.34);
}
.human-index-room .eyebrow{margin:0 0 8px;color:#c0a15c;font-size:10px;letter-spacing:.21em;}
.human-index-room .lede{margin:0 auto 6px;max-width:790px;color:#c0b5a3;font-size:13px;line-height:1.62;}
.human-index-room .lede-intro{color:#ece3d5;}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}

/* ---------- the page is one continuous gallery room ---------- */
main{position:relative;isolation:isolate;padding-bottom:18px;}
main::after{
  content:"";
  position:absolute;
  z-index:-2;
  left:0;right:0;top:35%;bottom:0;
  background:
    linear-gradient(rgba(4,3,3,.38),rgba(4,3,3,.67)),
    var(--floor-photo) center bottom / cover fixed no-repeat;
  opacity:.5;
  pointer-events:none;
}
.content-section{
  position:relative;
  padding:16px 0!important;
  background:transparent!important;
  border:0!important;
}
.content-section>.wrap{
  position:relative;
  padding:30px clamp(20px,3vw,38px) 34px;
  border:1px solid rgba(201,162,39,.38);
  border-radius:4px;
  background:
    linear-gradient(180deg,rgba(8,7,6,.9),rgba(6,5,5,.95)),
    var(--wall-center) center / cover;
  box-shadow:var(--hi-shadow),inset 0 0 0 4px rgba(0,0,0,.62),inset 0 0 0 5px rgba(201,162,39,.08);
  overflow:hidden;
}
.content-section>.wrap::before{
  content:"";
  position:absolute;
  left:50%;top:0;
  width:126px;height:16px;
  transform:translate(-50%,-50%);
  border-radius:7px 7px 2px 2px;
  background:linear-gradient(#a97f2c 0 16%,#302711 38%,#0d0c08 72%,#f0d77d 75% 100%);
  box-shadow:0 8px 24px rgba(234,210,124,.34),0 5px 15px rgba(0,0,0,.7);
}
.content-section>.wrap::after{
  content:"";
  position:absolute;
  left:50%;top:7px;
  width:320px;height:105px;
  transform:translateX(-50%);
  background:radial-gradient(ellipse at center top,rgba(234,210,124,.13),transparent 72%);
  pointer-events:none;
}

.section-heading-wrap{position:relative;z-index:2;text-align:center;margin:0 auto 24px;max-width:850px;}
.section-title{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  color:#eee5d6;
  font-size:clamp(28px,3.4vw,44px);
  line-height:1.05;
  letter-spacing:.015em;
  text-shadow:0 3px 16px rgba(0,0,0,.85);
}
.section-intro{margin:10px auto 0;max-width:760px;color:#b7ac99;font-size:13px;line-height:1.55;}
.card-kicker{margin:0 0 7px;color:#b79449!important;font-size:9px!important;letter-spacing:.17em!important;text-transform:uppercase;}

/* ---------- framed exhibit cards, not floating web cards ---------- */
.grid{gap:16px!important;}
.framework-grid,.status-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.receipt-timeline{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
.receipt-item-wide{grid-column:1/-1!important;}
.card,.receipt-item{
  position:relative;
  margin:0!important;
  padding:24px 22px 22px!important;
  border:1px solid rgba(201,162,39,.42)!important;
  border-radius:3px!important;
  color:var(--hi-ink)!important;
  background:
    linear-gradient(180deg,rgba(10,9,8,.82),rgba(5,5,5,.93)),
    var(--wall-black) center / cover!important;
  box-shadow:0 15px 34px rgba(0,0,0,.52),inset 0 0 0 5px rgba(0,0,0,.58),inset 0 0 0 6px rgba(201,162,39,.09)!important;
  transform:none!important;
  overflow:hidden;
}
.card::before,.receipt-item::before{
  content:"";
  position:absolute;
  top:0;left:50%;
  width:64px;height:5px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,#5c410b,#e3c66f,#5c410b);
  box-shadow:0 5px 13px rgba(234,210,124,.22);
}
.card::after,.receipt-item::after{
  content:"";
  position:absolute;
  inset:7px;
  pointer-events:none;
  border:1px solid rgba(234,210,124,.08);
}
.card:hover,.card:focus-within,.receipt-item:hover,.receipt-item:focus-within{
  border-color:rgba(234,210,124,.66)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.6),0 0 22px rgba(201,162,39,.08),inset 0 0 0 5px rgba(0,0,0,.58),inset 0 0 0 6px rgba(201,162,39,.13)!important;
}
.card h3,.receipt-item h3{margin:0 0 10px!important;color:#eee5d6!important;font-family:Georgia,"Times New Roman",serif;font-size:18px!important;line-height:1.2;}
.card p,.receipt-item p{color:#b8ae9d!important;font-size:12px!important;line-height:1.58!important;}

/* ---------- the @RJS system is a physical desk exhibit ---------- */
.system-section>.wrap,.point-section>.wrap{
  background:
    linear-gradient(180deg,rgba(7,6,5,.58),rgba(4,4,4,.84)),
    var(--desk-photo) center / cover!important;
}
.system-panel,.point-panel{
  position:relative;
  padding:28px!important;
  border:1px solid rgba(201,162,39,.5)!important;
  border-radius:3px!important;
  background:rgba(4,4,4,.72)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.55),inset 0 0 0 5px rgba(0,0,0,.55),inset 0 0 0 6px rgba(201,162,39,.08)!important;
}
.system-panel{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr)!important;gap:26px!important;align-items:center!important;}
.system-copy .section-title,.point-panel .section-title{text-align:left;}
.system-copy p,.point-panel p{color:#bbb09e!important;font-size:13px;line-height:1.6;}
.system-points{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-end!important;}
.system-points > span{
  padding:8px 11px!important;
  border:1px solid rgba(201,162,39,.34)!important;
  border-radius:2px!important;
  background:linear-gradient(180deg,rgba(25,19,11,.82),rgba(5,5,5,.88))!important;
  color:#d8c79d!important;
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.5)!important;
  font:600 11px/1.1 Georgia,"Times New Roman",serif!important;
}

/* ---------- site directory becomes a wall of illuminated room plaques ---------- */
.destinations-section>.wrap{
  background:
    linear-gradient(180deg,rgba(5,5,5,.72),rgba(5,5,5,.88)),
    var(--shelves) center / cover!important;
}
.directory-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;}
.directory-card{
  min-height:245px;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  padding:30px 22px 22px!important;
  background:
    radial-gradient(circle at 50% 0,rgba(201,162,39,.08),transparent 45%),
    linear-gradient(180deg,rgba(10,9,8,.92),rgba(4,4,4,.97)),
    var(--wall-black) center / cover!important;
}
.directory-card::before{width:88px;height:7px;box-shadow:0 9px 23px rgba(234,210,124,.28);}
.site-domain{margin:0 0 11px!important;color:#b4934c!important;font-size:9px!important;letter-spacing:.15em!important;text-transform:uppercase;}
.directory-card h3{font-size:20px!important;}
.directory-card p:not(.site-domain){flex:1;margin:0 0 18px!important;}
.text-link,.contact-email-pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:9px 13px!important;
  border:1px solid rgba(201,162,39,.48)!important;
  border-radius:2px!important;
  color:#e0cf9e!important;
  background:linear-gradient(180deg,rgba(31,23,10,.85),rgba(6,6,6,.92))!important;
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.52),0 7px 18px rgba(0,0,0,.35)!important;
  text-decoration:none!important;
  font:600 11px/1.1 Georgia,"Times New Roman",serif!important;
}
.text-link:hover,.contact-email-pill:hover{border-color:rgba(234,210,124,.78)!important;color:#fff3cc!important;}

/* ---------- contact is the writing desk ---------- */
.contact-section>.wrap{
  background:
    linear-gradient(180deg,rgba(8,7,6,.56),rgba(5,5,5,.85)),
    var(--desk-photo) center / cover!important;
}
.contact-panel{
  display:grid!important;
  grid-template-columns:minmax(0,1.5fr) minmax(210px,.5fr)!important;
  gap:28px!important;
  align-items:center!important;
  padding:26px 28px!important;
  border:1px solid rgba(201,162,39,.48)!important;
  border-radius:3px!important;
  background:rgba(4,4,4,.76)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.55),inset 0 0 0 5px rgba(0,0,0,.55),inset 0 0 0 6px rgba(201,162,39,.08)!important;
}
.contact-copy h3{margin:0 0 9px;color:#eee5d6;font:700 21px/1.15 Georgia,"Times New Roman",serif;}
.contact-copy p{color:#b7ad9c;font-size:12px;line-height:1.6;}
.contact-actions{text-align:center;}
.contact-note{margin:8px 0 0!important;color:#8e8577!important;font-size:10px!important;}

/* ---------- photorealistic brass base plaque ---------- */
.site-footer{
  margin:0!important;
  padding:18px 0 22px!important;
  background:transparent!important;
  border:0!important;
}
.site-footer .wrap{
  width:min(calc(100% - 42px),var(--grid-max));
  padding:0!important;
}
.human-index-footer-plaque{
  display:block;
  width:52%;
  max-width:600px;
  margin:0 auto;
  background:transparent;
  border:0;
  box-shadow:none;
}
.human-index-footer-plaque__image{
  display:block;
  width:100%;
  height:auto;
  margin:0 auto;
  object-fit:contain;
  filter:drop-shadow(0 22px 34px rgba(0,0,0,.58));
}

@media (max-width:900px){
  .human-index-footer-plaque{
    width:64%;
    max-width:560px;
  }
}

@media (max-width:620px){
  .human-index-footer-plaque{
    width:88%;
    max-width:460px;
  }
}

.footer-row{
  margin-top:18px!important;
  min-height:58px;
  padding:14px 20px!important;
  background:rgba(4,4,4,.86)!important;
  border:1px solid rgba(201,162,39,.24)!important;
  border-radius:3px!important;
  box-shadow:0 12px 28px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.015)!important;
}
.footer-left,.footer-right{
  color:#a99b83!important;
  font-size:11px!important;
  line-height:1.35!important;
}
.footer-center{font-size:11px!important;}
.roxie-approved-pill{
  padding:.48rem 1rem!important;
  font-size:10px!important;
  border-color:rgba(201,162,39,.40)!important;
  color:#c7b17a!important;
  background:rgba(7,6,5,.78)!important;
}

/* Hide the original giant watermark; the room already carries its marks. */
.watermark{display:none!important;}

@media (max-width:900px){
  .framework-grid,.status-grid,.directory-grid{grid-template-columns:1fr 1fr!important;}
  .receipt-timeline{grid-template-columns:1fr!important;}
  .system-panel,.contact-panel{grid-template-columns:1fr!important;}
  .system-points{justify-content:flex-start!important;}
}

@media (max-width:620px){
  .wrap,.site-header .wrap,.site-footer .wrap{width:min(calc(100% - 24px),var(--grid-max));}
  .hero.human-index-room{padding-top:14px;}
  .human-index-room .wrap{width:calc(100% - 16px);}
  .human-index-photo-stage{min-height:360px;}
  .human-index-room-photo{height:360px;object-fit:cover;object-position:48% center;}
  .human-index-room__intro-strip{width:calc(100% - 16px);padding:17px 16px 18px;}
  .content-section{padding:10px 0!important;}
  .content-section>.wrap{padding:28px 14px 24px;}
  .framework-grid,.status-grid,.directory-grid{grid-template-columns:1fr!important;}
  .card,.receipt-item{padding:22px 18px 20px!important;}
  .directory-card{min-height:0;}
  .section-title{font-size:30px;}
  .footer-row{grid-template-columns:1fr!important;text-align:center!important;}
  .footer-left,.footer-right{text-align:center!important;}
}

@media (prefers-reduced-motion:reduce){
  body{background-attachment:scroll;}
  .card:hover,.card:focus-within,.receipt-item:hover,.receipt-item:focus-within{transform:none!important;}
}
