/* ===== HOME ===== */
.hero-bottom{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap: 14px;
  min-height: calc(var(--vh, 1vh) * 62);
  padding-bottom: clamp(18px, 5vh, 54px);
}

.hero-title span{
  color: var(--accent);
  text-shadow: 0 0 22px rgba(0,229,255,.16);
}

.hero-kicker{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: 14px;
}

.manifesto{
  display:grid;
  gap: 18px;
  max-width: 1100px;
}
.manifesto .bigmark{
  position:absolute;
  inset:auto;
  left:-2%;
  top: 8%;
  font-weight:900;
  letter-spacing:-.04em;
  font-size: clamp(4.5rem, 18vw, 12rem);
  color: rgba(10,10,10,.05);
  pointer-events:none;
  user-select:none;
  z-index:0;
}
.manifesto .content{
  position:relative;
  z-index:1;
  display:grid;
  gap: 16px;
}

.grid-2{
  display:grid;
  grid-template-columns: 1fr;
  gap: 18px;
  align-items:start;
}
@media (min-width: 980px){
  .grid-2{ grid-template-columns: 1.1fr .9fr; gap: 26px; }
}

.factcard{
  border-radius: calc(var(--radius) + 10px);
  border:1px solid rgba(10,10,10,.12);
  background: rgba(255,255,255,.88);
  box-shadow: 0 20px 70px rgba(0,0,0,.10);
  padding: 18px;
  display:grid;
  gap: 10px;
}
.fact{
  display:flex;
  justify-content:space-between;
  gap: 14px;
  padding: 10px 12px;
  border-radius: 14px;
  border:1px solid rgba(10,10,10,.08);
  background: rgba(255,255,255,.92);
}
.fact span{ color: rgba(10,10,10,.68); font-weight:700; }
.fact strong{ color:#0b0b0b; font-weight:850; }

.panel.wood .panel-bg{
  background:
    radial-gradient(900px 520px at 25% 25%, rgba(0,229,255,.14), transparent 58%),
    linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.85)),
    url(var(--panel-bg));
  position: center;
  ;
}

.quotes{
  display:grid;
  gap: 14px;
}
@media (min-width: 980px){
  .quotes{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.quote{
  border-radius: calc(var(--radius) + 10px);
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.34);
  box-shadow: var(--shadow);
  padding: 18px;
  display:grid;
  gap: 10px;
}
.quote p{ margin:0; color: rgba(255,255,255,.92); }
.quote .who{ color: rgba(255,255,255,.72); font-weight:800; }

.contact-wide{
  border-radius: calc(var(--radius) + 12px);
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.34);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.contact-wide .head{
  padding: 16px 16px;
  border-bottom:1px solid rgba(255,255,255,.12);
  display:flex;
  flex-wrap:wrap;
  gap: 12px;
  align-items:end;
  justify-content:space-between;
}
.contact-wide .body{
  display:grid;
  grid-template-columns: 1fr;
}
@media (min-width: 980px){
  .contact-wide .body{ grid-template-columns: 1.1fr .9fr; }
}
.lines{
  padding: 14px 16px;
  display:grid;
  gap: 10px;
}
.line{
  display:flex;
  justify-content:space-between;
  gap: 16px;
  padding: 12px 12px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
}
.line span{ color: rgba(255,255,255,.70); font-weight:750; }
.line strong{ color: rgba(255,255,255,.92); font-weight:900; }

.mapbox{
  position:relative;
  min-height: 320px;
  border-top:1px solid rgba(255,255,255,.12);
}
@media (min-width:980px){
  .mapbox{ border-top:none; border-left:1px solid rgba(255,255,255,.12); }
}
.mapbox iframe{
  width:100%;
  height:100%;
  min-height: 320px;
  border:0;
  filter: saturate(1.05) contrast(1.02);
}
.map-guard{
  position:absolute;
  inset:0;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  padding: 12px;
  background: linear-gradient(180deg, transparent, rgba(0,0,0,.28));
}
.map-guard button{ backdrop-filter: blur(10px); }
