
:root{
  --macp-bg:#120708;
  --macp-red:#7d1820;
  --macp-red-dark:#391014;
  --macp-gold:#cc9d57;
  --macp-card-border:rgba(255,255,255,.42);
  --macp-text:#f7f6f7;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:#100607}
body.macp-standalone{
  min-height:100vh;
  overflow-x:hidden;
  font-family:Georgia,"Times New Roman",serif;
  color:var(--macp-text);
}

.macp-shell{
  min-height:100vh;
  padding:16px 12px;
  background:
    radial-gradient(circle at 50% 0%, rgba(165,80,40,.24), transparent 26%),
    linear-gradient(180deg,#16090a 0%,#0e0506 100%);
}

.macp-poster{
  position:relative;
  max-width:860px;
  margin:0 auto;
  border:2px solid rgba(196,55,61,.85);
  background:linear-gradient(180deg, rgba(54,22,17,.55), rgba(8,6,8,.45));
  box-shadow:0 18px 48px rgba(0,0,0,.45), inset 0 0 0 1px rgba(255,255,255,.06);
  overflow:hidden;
}

.macp-poster::before{
  content:"";
  position:absolute;
  inset:8px;
  border:1px solid rgba(179,34,43,.85);
  pointer-events:none;
}

.macp-corner{
  position:absolute;
  z-index:3;
  width:70px;
  height:70px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 35% 30%, rgba(164,28,39,.95), rgba(55,12,17,.98) 58%, rgba(14,8,10,1) 100%);
  border:1px solid rgba(204,157,87,.75);
  box-shadow:
    0 8px 18px rgba(0,0,0,.32),
    inset 0 0 0 2px rgba(255,255,255,.06),
    0 0 16px rgba(204,40,50,.18);
  pointer-events:none;
}
.macp-corner::after{
  content:"";
  position:absolute;
  inset:6px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
}
.macp-corner span{
  position:relative;
  z-index:1;
  font-size:28px;
  line-height:1;
  color:#f4e9d0;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.35));
}
.macp-corner-tl{top:12px;left:12px;transform:rotate(-18deg)}
.macp-corner-tr{top:12px;right:12px;transform:scaleX(-1) rotate(-18deg)}
.macp-corner-bl{bottom:12px;left:12px;transform:rotate(18deg)}
.macp-corner-br{bottom:12px;right:12px;transform:scaleX(-1) rotate(18deg)}

.macp-inner{
  position:relative;
  z-index:1;
  padding:88px 20px 20px;
}

.macp-hero{
  text-align:center;
  margin-bottom:22px;
}
.macp-hero h1{
  margin:0 0 10px;
  font-size:clamp(42px,7vw,86px);
  line-height:.98;
  font-weight:500;
  letter-spacing:.02em;
  color:#ffffff;
  text-transform:uppercase;
  text-shadow:0 2px 18px rgba(0,0,0,.35);
}
.macp-hero p{
  margin:0;
  font-size:clamp(18px,2.4vw,32px);
  font-style:italic;
  color:#f1eeee;
  text-shadow:0 2px 10px rgba(0,0,0,.45);
}

.macp-contact-stack{
  position:relative;
  z-index:2;
  display:grid;
  gap:16px;
  max-width:540px;
  margin:0 auto -52px;
}

.macp-contact-card{
  position:relative;
  display:flex;
  align-items:center;
  gap:16px;
  padding:18px 22px;
  min-height:92px;
  border-radius:24px;
  border:1px solid var(--macp-card-border);
  background:
    linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.10));
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow:
    inset 0 0 0 2px rgba(255,255,255,.08),
    0 10px 30px rgba(0,0,0,.28);
  text-decoration:none !important;
  color:#fff !important;
}
.macp-contact-card:hover{
  transform:translateY(-1px);
  transition:transform .15s ease;
}
.macp-contact-card::before{
  content:"";
  position:absolute;
  inset:5px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:20px;
  pointer-events:none;
}
.macp-icon{
  position:relative;
  z-index:1;
  flex:0 0 64px;
  height:64px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.96);
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.macp-icon svg{width:34px;height:34px}
.macp-telegram svg{fill:#1e1e1e}
.macp-email svg{
  fill:none;
  stroke:#1c1c1c;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.macp-card-text{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  min-width:0;
}
.macp-label{
  font-size:clamp(16px,2vw,26px);
  color:#f8f8f8;
}
.macp-card-text strong{
  font-size:clamp(22px,2.7vw,38px);
  font-weight:400;
  color:#ffffff;
  overflow-wrap:anywhere;
}

.macp-image-frame{
  position:relative;
  overflow:hidden;
  min-height:900px;
  background:#120a0b;
}
.macp-image-frame::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(48,16,13,.22) 0%, rgba(255,255,255,0) 24%, rgba(0,0,0,.02) 60%, rgba(0,0,0,.10) 100%);
  z-index:1;
  pointer-events:none;
}
.macp-image-frame img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}

@media (max-width: 700px){
  .macp-shell{padding:8px 6px}
  .macp-inner{padding:58px 12px 12px}
  .macp-corner{
    width:42px;
    height:42px;
  }
  .macp-corner span{
    font-size:16px;
  }
  .macp-hero{margin-bottom:14px}
  .macp-hero h1{
    font-size:clamp(28px,8.5vw,52px);
    margin-bottom:6px;
  }
  .macp-hero p{
    font-size:clamp(14px,4vw,20px);
  }
  .macp-contact-stack{
    gap:10px;
    max-width:100%;
    margin:0 auto -34px;
  }
  .macp-contact-card{
    padding:12px 14px;
    min-height:74px;
    border-radius:18px;
    gap:12px;
  }
  .macp-contact-card::before{
    inset:4px;
    border-radius:14px;
  }
  .macp-icon{
    flex-basis:46px;
    height:46px;
  }
  .macp-icon svg{
    width:24px;
    height:24px;
  }
  .macp-label{
    font-size:14px;
  }
  .macp-card-text strong{
    font-size:16px;
  }
  .macp-image-frame{
    min-height:auto;
    aspect-ratio: 4 / 7;
  }
  .macp-image-frame img{
    object-fit:cover;
    object-position:center top;
  }
}
