
:root {
  --bg: #1b0c17;
  --card: #2a1423;
  --text: #fdf2f8;
  --muted: #f9a8d4;
  --accent: #e11d48;
  --accent-2: #fb7185;
  --shadow: 0 10px 30px rgba(0,0,0,.35);
}
* {box-sizing:border-box;}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:'Segoe UI',Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block;border-radius:16px}
.ftd-0ppwb-wrap{min-height:100vh;display:flex;flex-direction:column}
.ftd-0ppwb-container{width:min(1080px,92vw);margin:0 auto;padding:20px}
.ftd-0ppwb-header{display:flex;justify-content:space-between;align-items:center;padding:20px 0}
.ftd-0ppwb-brand{font-weight:800;font-size:1.3rem;color:var(--accent)}
.ftd-0ppwb-nav a{margin-left:20px;color:var(--muted);font-weight:600}
.ftd-0ppwb-nav a:hover{color:var(--text)}
.ftd-0ppwb-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:60px 0}
@media(max-width:800px){.ftd-0ppwb-hero{grid-template-columns:1fr;}}
.ftd-0ppwb-cta{
  display:inline-block;
  margin-top:20px;
  padding:16px 24px;
  background:#e53935;        /* красный оттенок */
  border:none;
  border-radius:14px;
  color:#ffffff;              /* контрастный текст */
  font-weight:800;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  position:relative;
  text-align:center;
  transition:transform .2s ease, box-shadow .2s ease, background-color .2s ease;
  animation: ftd-pulse 2s infinite;
}
.ftd-0ppwb-cta:hover{transform:scale(1.08); background:#d32f2f;}
.ftd-0ppwb-section{padding:60px 0}
.ftd-0ppwb-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.ftd-0ppwb-feature{background:var(--card);padding:24px;border-radius:18px;box-shadow:var(--shadow)}
.ftd-0ppwb-feature h3{margin-top:0;color:var(--accent-2)}
.ftd-0ppwb-footer{text-align:center;color:var(--muted);padding:40px 0;font-size:0.9rem}

/* --- Hard limits for hero image size --- */
.ftd-0ppwb-hero figure{
  margin: 0 auto;
  max-width: 400px;           /* ширина не больше 400px */
}
.ftd-0ppwb-hero figure img{
  width: 100%;
  height: auto;
  max-height: 300px;          /* высота не больше 300px */
  object-fit: contain;
  display: block;
}
@media (max-width: 800px){
  .ftd-0ppwb-hero figure img{
    max-height: 250px;
  }
}

@keyframes ftd-pulse{
  0%   { transform: scale(1);    box-shadow: 0 0 0 0 rgba(229,57,53, .50); }
  60%  { transform: scale(1.06); box-shadow: 0 0 0 16px rgba(229,57,53, 0); }
  100% { transform: scale(1);    box-shadow: 0 0 0 0 rgba(229,57,53, 0); }
}
