:root{
    --primary: #f8d7e0;
    --primary-dark: #eebdcb;
    --accent: #d84b77;
    --text: #3d352b;
    --text-muted: #6f655c;
    --surface: #fff;
    --bg: #fff5f8;
  
    --radius: 20px;
    --shadow: 0 20px 40px -20px rgba(216, 75, 119, .2);
    --grad-1: linear-gradient(135deg, #f8d7e0 0%, #eebdcb 100%);
  }
  
  *{box-sizing:border-box}
  html,body{
    margin:0; padding:0; color:var(--text);
    font-family:'Inter', sans-serif; background:var(--bg);
  }
  h1,h2,h3{font-family:'Playfair Display', serif; margin:0 0 16px}
  h1{font-size:56px; line-height:1.1}
  h2{font-size:40px}
  p{line-height:1.7; color:var(--text-muted)}
  
  .container{max-width:1200px; margin:0 auto; padding:0 24px}
  .section{padding:80px 0; background-color: #E4E2DD;}
  .section-title{text-align:center; margin-bottom:48px}
  
  
  .logo{font-weight:600; color:var(--text); text-decoration:none}
  .nav a{margin-left:24px; color:var(--text); text-decoration:none}
  .nav .btn-primary{margin-left:32px}
  
  .hero {
    position: relative;
    overflow: hidden;
    background: #310E10;
  
    display: flex;
    align-items: center;       /* по вертикали */
    justify-content: center;   /* по горизонтали */
    min-height: 80vh;          /* почти весь экран */
    text-align: center;        /* текст по центру */
  }
  
  .hero-grid {
    display: flex;
    flex-direction: column;    /* все элементы друг под другом */
    align-items: center;       /* выравнивание по центру */
    justify-content: center;   /* выравнивание по центру */
    max-width: 800px;          /* чтобы текст не растягивался слишком */
  }
  .hero-text h1{color:#fff}
  .hero-text p{max-width:580px; color:#fff; margin: 0 auto;}
  
  .hero-cta{display:flex; gap:16px; margin-top:24px; justify-content: center;}
  .btn{
    display:inline-block; padding:14px 26px; border-radius:999px; 
    text-decoration:none; font-weight:600; transition:.25s;
  }
  .btn-primary{
    background:#947268; color:#fff; box-shadow:0 10px 24px -12px rgba(216,75,119,.5);
  }
  .btn-primary:hover{transform:translateY(-2px); background:#947268}
  .btn-secondary{
    background:transparent; border:2px solid #947268; color:#947268;
  }
  .btn-secondary:hover{background:#947268; color:#fff}
  .btn-text{color:var(--accent); text-decoration:none; font-weight:600}
  
  .cards{
    display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  }
  .card{
    background:var(--surface); border-radius:var(--radius);
    padding:32px; box-shadow:var(--shadow);
  }
  .card h3{margin-bottom:12px; color: #fff;}
  .card p {padding-bottom: 5px; color: #fff;}
  
  /* --- Адаптив --- */
  @media (max-width:1024px){
    h1{font-size:44px}
    h2{font-size:32px}
    .hero-grid{grid-template-columns:1fr; text-align:center}
    .hero-text p{margin:0 auto}
    .hero-cta{justify-content:center}
    .cards{grid-template-columns:repeat(2,1fr)}
  }
  @media (max-width:768px){
    h1{font-size:36px}
    h2{font-size:28px}
    .section{padding:60px 0}
    .cards{grid-template-columns:1fr; justify-content: center;}
    .sm-hide{display:none}
  }
  