/* Prototype brief 2: photo heroes, next-room strip, detail list.
   Loaded after polish.css and proto.css. No new fonts or requests. */

/* —— 1. Photo heroes (Promenade, Harmony Hall, Weddings) —— */
.pagehero.proto2-hero{
  display:flex;
  align-items:flex-end;
  min-height:70vh;
  padding:0;
  background:#08090a;
}
.pagehero.proto2-hero.lacquer{
  background:#08090a;
}
.proto2-hero-photo{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 42%;
  transform-origin:36% 46%;
  animation:proto2-drift 20s ease-in-out infinite alternate;
  pointer-events:none;
}
.pagehero.proto2-hero-alt .proto2-hero-photo{
  transform-origin:66% 40%;
  animation-direction:alternate-reverse;
}
.pagehero.proto2-hero-wed .proto2-hero-photo{
  transform-origin:50% 64%;
}
@keyframes proto2-drift{
  from{transform:scale(1)}
  to{transform:scale(1.06)}
}
/* Left-weighted scrim so the existing type stays readable. The sheen stays off. */
.pagehero.proto2-hero.lacquer:before{
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  left:0;
  top:0;
  opacity:1;
  transform:none;
  filter:none;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(8,9,10,.94) 0%,rgba(8,9,10,.86) 34%,rgba(8,9,10,.58) 62%,rgba(8,9,10,.28) 100%),
    linear-gradient(180deg,rgba(8,9,10,.1) 0%,rgba(8,9,10,0) 30%,rgba(8,9,10,.38) 100%);
}
.pagehero.proto2-hero.lacquer:after{z-index:1}
.pagehero.proto2-hero .wrap{
  position:relative;
  z-index:2;
  width:100%;
  padding-top:64px;
  padding-bottom:68px;
}
.pagehero.proto2-hero .lead{max-width:34rem}

/* —— 2. Next room —— */
.proto2-next{
  background:
    linear-gradient(90deg,rgba(194,162,96,.12),transparent 46%),
    #08090a;
  border-top:1px solid rgba(194,162,96,.45);
}
.proto2-next-link{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto auto;
  align-items:center;
  column-gap:40px;
  row-gap:10px;
  width:100%;
  max-width:1440px;
  margin:0 auto;
  padding:52px 7% 56px;
  color:inherit;
}
.proto2-next-kicker{
  grid-column:1;
  grid-row:1;
  display:inline-flex;
  align-items:center;
  gap:14px;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:10px;
  font-weight:600;
  color:var(--gold);
}
.proto2-next-kicker:before{
  content:'';
  width:34px;
  height:1px;
  background:currentColor;
  opacity:.7;
}
.proto2-next-name{
  grid-column:1;
  grid-row:2;
  font-family:Bodoni,Georgia,serif;
  font-weight:400;
  font-size:clamp(40px,4.4vw,64px);
  line-height:1.02;
  letter-spacing:-.03em;
  color:var(--ivory);
}
.proto2-next-line{
  grid-column:1;
  grid-row:3;
  max-width:38rem;
  color:#c4c0b7;
  font-size:16px;
  line-height:1.6;
}
.proto2-next-arrow{
  grid-column:2;
  grid-row:1 / span 3;
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  border:1px solid #c2a260;
  color:#e3c786;
}
.proto2-next-arrow:after{
  content:'';
  width:28px;
  height:10px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 10'%3E%3Cpath d='M0 5h26M22 1l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.2'/%3E%3C/svg%3E") center/28px 10px no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 10'%3E%3Cpath d='M0 5h26M22 1l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.2'/%3E%3C/svg%3E") center/28px 10px no-repeat;
}
.proto2-next-link:hover .proto2-next-name{color:#e3c786}
.proto2-next-link:hover .proto2-next-arrow{
  background:#c2a260;
  border-color:#c2a260;
  color:#15140f;
}

/* —— 3. Detail lines (room pages only; visit keeps .facts) —— */
.proto2-facts{
  grid-template-columns:1fr 1fr;
  gap:0;
  margin:48px 0 8px;
  padding:0;
  border-top:0;
  border-bottom:1px solid #c2a260;
}
.proto2-facts > div{
  padding:30px 36px 32px 0;
  border-top:1px solid #c2a260;
}
.proto2-facts > div:nth-child(even){padding:30px 0 32px 36px}
.proto2-facts > div:last-child:nth-child(odd){
  grid-column:1 / -1;
  padding-right:0;
}
.proto2-facts b{
  margin:0 0 12px;
  font-family:Archivo,Arial,sans-serif;
  font-variant-caps:all-small-caps;
  font-weight:600;
  font-size:16px;
  letter-spacing:.16em;
  color:#79602d;
}
.proto2-facts p{
  margin:0;
  max-width:36rem;
  font-size:17px;
  line-height:1.65;
  color:#3c3933;
}

@media(max-width:700px){
  .pagehero.proto2-hero{min-height:60vh}
  .pagehero.proto2-hero .wrap{padding-top:32px;padding-bottom:36px}
  .pagehero.proto2-hero.lacquer:before{
    background:
      linear-gradient(90deg,rgba(8,9,10,.94) 0%,rgba(8,9,10,.86) 46%,rgba(8,9,10,.66) 100%),
      linear-gradient(180deg,rgba(8,9,10,.08) 0%,rgba(8,9,10,0) 24%,rgba(8,9,10,.45) 100%);
  }
  .proto2-next-link{column-gap:18px;row-gap:8px;padding:36px 7% 40px}
  .proto2-next-name{font-size:36px}
  .proto2-next-arrow{width:52px;height:52px}
  .proto2-facts{
    grid-template-columns:1fr;
    margin:36px 0 28px;
    padding:0;
    border-bottom:0;
  }
  .proto2-facts > div,
  .proto2-facts > div:nth-child(even),
  .proto2-facts > div:last-child:nth-child(odd){
    grid-column:auto;
    padding:22px 0 24px;
  }
}

@media(prefers-reduced-motion:reduce){
  .pagehero.proto2-hero .proto2-hero-photo,
  .pagehero.proto2-hero-alt .proto2-hero-photo,
  .pagehero.proto2-hero-wed .proto2-hero-photo{
    animation:none;
    transform:none;
  }
  .proto2-next-arrow:after{transition:none}
}
