/**
 * Britehouse — Phase 3 global imagery (final cascade layer)
 * Architectural geometry only · no photography · edge bleed · type-secondary
 * Load after spacing-global.css · structure and copy unchanged
 */

/* -------------------------------------------------------------------------
   Deprecate photographic env layers
   ------------------------------------------------------------------------- */
.bh-env__photo,
img[src*="assets/home/"]{
  display:none!important;
}

/* -------------------------------------------------------------------------
   Unified architectural figure — home + shared placements
   ------------------------------------------------------------------------- */
.bh-arch{
  display:block;
  margin:0;
  width:100%;
}

.bh-arch__crop{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(110% 85% at 88% 10%, rgba(247,247,247,0.1) 0%, transparent 52%),
    var(--bh-arch-surface);
  border:var(--bh-hairline) solid rgba(17,17,17,0.1);
  clip-path:polygon(0 9%, 100% 0, 100% 91%, 0 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.55),
    inset 0 -1px 0 rgba(17,17,17,0.06);
}

.bh-arch__mesh{
  position:absolute;
  inset:0;
  opacity:0.54;
  background-image:
    repeating-linear-gradient(-24deg, transparent 0, transparent 21px, rgba(17,17,17,0.045) 21px, rgba(17,17,17,0.045) 22px),
    repeating-linear-gradient(90deg, rgba(17,17,17,0.035) 0, rgba(17,17,17,0.035) 1px, transparent 1px, transparent 40px);
  mix-blend-mode:multiply;
  pointer-events:none;
}

.bh-arch__engineered{
  position:absolute;
  inset:0;
  opacity:0.38;
  background-image:repeating-linear-gradient(0deg, transparent, transparent 6px, rgba(34,162,159,0.08) 6px, rgba(34,162,159,0.08) 7px);
  mask-image:linear-gradient(90deg, transparent 0%, black 36%, black 74%, transparent 100%);
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, black 36%, black 74%, transparent 100%);
  pointer-events:none;
}

.bh-arch__facets{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.bh-arch__facet{
  position:absolute;
  display:block;
  border:var(--bh-hairline) solid rgba(17,17,17,0.08);
}

.bh-arch__facet--1{
  width:56%;
  height:40%;
  top:-5%;
  right:-11%;
  clip-path:polygon(12% 0,100% 0,100% 78%,0 100%);
  background:linear-gradient(198deg,#ececec 0%,#656565 100%);
}

.bh-arch__facet--2{
  width:46%;
  height:36%;
  bottom:6%;
  left:-13%;
  clip-path:polygon(0 18%,72% 0,100% 62%,26% 100%);
  background:linear-gradient(22deg,#D0CDC8 0%,#E8E5E0 100%);
}

.bh-arch__facet--3{
  width:42%;
  height:34%;
  top:38%;
  left:21%;
  clip-path:polygon(50% 0,100% 42%,62% 100%,0 74%);
  background:linear-gradient(135deg,rgba(34,162,159,0.24) 0%,#2a2a2a 88%);
  border-color:rgba(34,162,159,0.28);
}

.bh-arch__ribs{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, transparent 58%, rgba(34,162,159,0.12) 58%, rgba(34,162,159,0.12) 58.25%, transparent 58.25%);
  opacity:0.88;
  pointer-events:none;
}

.bh-arch__datum{
  position:absolute;
  top:11%;
  bottom:15%;
  left:54%;
  width:2px;
  margin-left:-1px;
  background:linear-gradient(180deg,transparent 0,var(--bh-accent) 12%,var(--bh-accent) 70%,transparent 100%);
  opacity:0.58;
  pointer-events:none;
}

.bh-arch__reflect{
  position:absolute;
  inset:0;
  background:
    linear-gradient(128deg, transparent 42%, rgba(255,255,255,0.14) 49%, transparent 56%),
    linear-gradient(198deg, rgba(255,255,255,0.07) 0%, transparent 38%);
  opacity:0.72;
  pointer-events:none;
}

.bh-arch__veil{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
}

.bh-arch--edge-right .bh-arch__crop{
  margin-right:calc(-1 * clamp(12px,6vw,76px));
  margin-left:auto;
}

.bh-arch--edge-left .bh-arch__crop{
  margin-left:calc(-1 * clamp(12px,6vw,76px));
  margin-right:auto;
}

.bh-arch--hero .bh-arch__crop{
  min-height:clamp(180px,24vw,300px);
  width:calc(100% + clamp(12px,6vw,76px));
  max-width:none;
}

.bh-arch--panel .bh-arch__crop{
  min-height:clamp(140px,22vw,240px);
}

.bh-arch--tall .bh-arch__crop{
  min-height:clamp(200px,28vw,340px);
}

.bh-arch--texture .bh-arch__mesh{
  opacity:0.62;
}

.bh-arch--edge-right .bh-arch__veil{
  background:linear-gradient(
    90deg,
    var(--bh-bg) 0%,
    var(--bh-bg) 28%,
    rgba(255,255,255,0.72) 48%,
    rgba(255,255,255,0.18) 68%,
    transparent 90%
  );
}

/* -------------------------------------------------------------------------
   Section edge geometry — replace photographic pseudo backgrounds
   ------------------------------------------------------------------------- */
body.home .contrast-section--matrix::after,
body.home .system-section::before,
body.home .how-section::after{
  background:
    radial-gradient(ellipse 70% 55% at 100% 100%, rgba(34,162,159,0.09) 0%, transparent 58%),
    repeating-linear-gradient(-16deg, transparent 0, transparent 28px, rgba(17,17,17,0.04) 28px, rgba(17,17,17,0.04) 29px),
    linear-gradient(118deg, transparent 52%, rgba(34,162,159,0.06) 52.2%, transparent 52.4%);
  filter:none;
  opacity:0.72;
}

body.home .system-section::before{
  background:
    radial-gradient(ellipse 65% 50% at 0% 42%, rgba(34,162,159,0.08) 0%, transparent 55%),
    repeating-linear-gradient(90deg, rgba(17,17,17,0.04) 0, rgba(17,17,17,0.04) 1px, transparent 1px, transparent 36px),
    linear-gradient(168deg, var(--bh-arch-base) 0%, var(--bh-arch-mid) 100%);
}

body.home .how-section::after{
  background:
    radial-gradient(ellipse 68% 52% at 100% 38%, rgba(34,162,159,0.07) 0%, transparent 54%),
    repeating-linear-gradient(-12deg, transparent 0, transparent 24px, rgba(17,17,17,0.038) 24px, rgba(17,17,17,0.038) 25px);
}

body.home .final-section__texture{
  background:
    linear-gradient(100deg, rgba(28,26,24,0.88) 0%, rgba(28,26,24,0.62) 42%, transparent 72%),
    radial-gradient(ellipse 58% 48% at 92% 40%, rgba(255,255,255,0.07) 0%, transparent 62%),
    repeating-linear-gradient(-14deg, transparent 0, transparent 30px, rgba(255,255,255,0.045) 30px, rgba(255,255,255,0.045) 31px),
    linear-gradient(90deg, rgba(34,162,159,0.06) 1px, transparent 1px);
  background-size:100% 100%,100% 100%,auto,48px 100%;
  filter:none;
}

body.home .system-section::before{
  background:
    radial-gradient(ellipse 65% 50% at 0% 42%, rgba(34,162,159,0.08) 0%, transparent 55%),
    repeating-linear-gradient(90deg, rgba(17,17,17,0.04) 0, rgba(17,17,17,0.04) 1px, transparent 1px, transparent 36px),
    linear-gradient(168deg, var(--bh-arch-base) 0%, var(--bh-arch-mid) 100%);
}

/* -------------------------------------------------------------------------
   Dark anchor bands — structural bleed (no photography)
   ------------------------------------------------------------------------- */
body.approach .ap-anchor__texture::after,
body.insights-page .ins-anchor__texture::after,
body.strategic-page .sr-anchor-dark__texture::after{
  background:
    radial-gradient(ellipse 72% 58% at 94% 36%, rgba(255,255,255,0.09) 0%, transparent 56%),
    linear-gradient(118deg, transparent 48%, rgba(34,162,159,0.08) 48.4%, transparent 48.8%),
    repeating-linear-gradient(-14deg, transparent 0, transparent 32px, rgba(255,255,255,0.042) 32px, rgba(255,255,255,0.042) 33px),
    linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size:100% 100%,100% 100%,auto,52px 100%;
  background-position:right center;
  opacity:0.58;
  filter:none;
}
