

/* ===== CONTENT ===== */
.container {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
}

.cards { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }

.card { background: #fff; border-radius: 20px; overflow: hidden; flex: 1 1 calc(33.333% - 20px); width:30%; min-width: 280px; min-height: 280px; 
box-shadow: 0 5px 20px rgba(0,0,0,0.08); text-align: center; transition: 0.3s; }

.card:hover { transform: translateY(-5px); }

.card img { width: auto; height: 280px; object-fit: cover; }

.card p { font-size: 22px; font-weight: 600; padding: 20px; }

.card a { text-decoration: none; }

.card-title { color:var(--accent); font-size:21px;}
.card-about1 { color:var(--text-muted); font-size:14px; }
.card-price { color:var(--text); text-align: right; padding-right: 20px; font-size:16px; }



/* Узкая полоска */
.card--row {
    width: 92%;
    flex: 1 1 100%;
    min-height: unset;
    border-radius: 12px;
    text-align: left;
    display: flex;
    align-items: center;
    background: #fff; border-radius: 20px; 
    gap: 10px;
}

.card--row img {
    width: auto;
    height: 100px;
    object-fit: cover;
    flex-shrink: 0;
    border-radius: 12px 0 0 12px;
}

.card-title--row {
    color: var(--accent);
    font-size: 18px;
}

.card-about1--row {
    color: var(--text-muted);
    font-size: 13px;
}

.card-price--row {
    color: var(--text); font-size:16px; margin-left: auto; padding-right: 20px; white-space: nowrap; }

.card--row a {
    display: flex;
    align-items: center;
    gap: 20px;
    width: 100%;
    text-decoration: none;
}


.order {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.08);
    overflow: hidden;
    padding: 10px 20px;
}

.order-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 0;
    border-bottom: 1px solid #f0f0f0;
}

.order-row input[type="checkbox"] {
    width: 22px;
    height: 22px;
    accent-color: var(--accent);
    cursor: pointer;
    flex-shrink: 0;
}

.order-row input[type="checkbox"]:disabled {
    cursor: default;
    opacity: 0.6;
}

.order-img {
    height: 80px;
    width: auto;
    object-fit: cover;
    border-radius: 8px;
    flex-shrink: 0;
}

.order-name {
    flex: 1;
    font-size: 16px;
}

.order-price {
    margin-left: auto;
    font-size: 16px;
    white-space: nowrap;
}

.order-total {
    display: flex;
    justify-content: space-between;
    padding: 16px 0 6px;
    font-size: 18px;
    font-weight: 600;
    color: var(--accent);
}






.order-form {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.08);
    padding: 20px;
    margin-top: 30px;
}

.order-form-top {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 12px;
}

.order-form-top input {
    width:200px;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding: 9px 14px;
    font-size: 14px;
    outline: none;
    transition: border-color 0.2s;
}

.order-form-top input:focus {
    border-color: var(--accent);
}

.order-form-btn {
    background: var(--accent);
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 9px 20px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    transition: opacity 0.2s;
}

.order-form-btn:hover {
    opacity: 0.85;
}

.order-form-check {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.order-form-check input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: var(--accent);
    flex-shrink: 0;
}

.order-form-check label {
    font-size: 11px;
    color: var(--text-muted);
}

.order-form-check a {
    color: var(--accent);
    text-decoration: none;
}

/* Мобильная */
@media (max-width: 600px) {
    .order-form-top {
        flex-direction: column;
        gap: 10px;
    }

    .order-form-top input {
        width: 100%;
    }

    .order-form-btn {
        width: 100%;
        text-align: center;
    }
}





/* ===== FOOTER ===== */
footer {
    background: #000;
    color: #fff;
    text-align: center;
    padding: 30px;
    margin-top: 80px;
    font-size: 14px;
}


  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      --bg: #f5f4f2;
      --surface: #ffffff;
      --border: #e2ddd8;
      --accent: #db5200;
      --accent-dim: rgba(219,82,0,0.08);
      --text: #1a1714;
      --text-muted: #9a948e;
      --font-display: 'Barlow Condensed', sans-serif;
      --font-body: 'Barlow', sans-serif;
    }

    body {
      background: var(--bg);
      color: var(--text);
      font-family: var(--font-body);
      min-height: 100vh;
    }

    /* ── HEADER ── */
    header {
      position: sticky;
      top: 0;
      z-index: 100;
      background: var(--surface);
      border-bottom: 1px solid var(--border);
      box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    }

    /* thin accent line at very top */
    header::before {
      content: '';
      display: block;
      height: 0.7px;
      background: linear-gradient(90deg, var(--accent) 0%, #ff7a30 60%, transparent 100%);
    }

    .header-inner {
      max-width: 1280px;
      margin: 0 auto;
      padding: 0 24px;
      height: 68px;
      display: flex;
      align-items: center;
      gap: 40px;
    }

    /* ── LOGO ── */
    .logo {
      display: flex;
      align-items: center;
      gap: 12px;
      text-decoration: none;
      flex-shrink: 0;
    }

    .logo-icon {
      width: 38px;
      height: 38px;
      flex-shrink: 0;
    }

    .logo-text {
      display: flex;
      flex-direction: column;
      line-height: 1;
    }

    .logo-name {
      font-family: var(--font-display);
      font-weight: 700;
      font-size: 22px;
      letter-spacing: 0.02em;
      color: var(--text);
      text-transform: lowercase;
    }

    .logo-name span {
      color: var(--accent);
    }

    .logo-sub {
      font-family: var(--font-body);
      font-size: 10px;
      font-weight: 400;
      letter-spacing: 0.12em;
      color: var(--text-muted);
      margin-top: 3px;
    }

    /* ── NAV ── */
    nav {
      display: flex;
      align-items: center;
      gap: 4px;
      margin-left: auto;
    }

	.navi { font-size:12px; color:#9a948e; }
	.nave a { color:#9a948e; }

	
    nav a {
      font-family: var(--font-display);
      font-size: 13px;
      font-weight: 300;
      letter-spacing: 0.06em;
      color: var(--text-muted);
      text-decoration: none;
      padding: 8px 14px;
      border-radius: 4px;
      transition: color 0.2s, background 0.2s;
      position: relative;
    }

    nav a::after {
      content: '';
      position: absolute;
      bottom: 4px;
      left: 14px;
      right: 14px;
      height: 2px;
      background: var(--accent);
      transform: scaleX(0);
      transform-origin: left;
      transition: transform 0.25s cubic-bezier(.4,0,.2,1);
    }

    nav a:hover {
      color: var(--text);
      background: var(--accent-dim);
    }

    nav a:hover::after,
    nav a.active::after {
      transform: scaleX(1);
    }

    nav a.active {
      color: var(--text);
    }
    
    
    
    
    	.navi_bl {
    display: flex;
    justify-content: space-between;
    margin: 20px 0 10px 0;
    width:100%;
}

.navi_button {
    display: inline-block;
    color: white;
    background-color: lightgray;
    border-radius: 10px;
    padding: 8px 16px;
    cursor: pointer;
    padding:5px; margin:0px 0px 10px 0px;
}

.navi_button--accent {
    background-color: #db5200;
}
    
    

    /* ── PHONE ── */
    .phone-block {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-shrink: 0;
      margin-left: 8px;
    }

    .phone-icon {
      width: 32px;
      height: 32px;
      background: var(--accent-dim);
      border: 1px solid rgba(219,82,0,0.3);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .phone-icon svg {
      width: 15px;
      height: 15px;
      fill: var(--accent);
    }

    .phone-info {
      display: flex;
      flex-direction: column;
      line-height: 1;
    }

    .phone-number {
      font-family: var(--font-display);
      font-weight: 700;
      font-size: 17px;
      letter-spacing: 0.03em;
      color: var(--text);
      text-decoration: none;
      white-space: nowrap;
      transition: color 0.2s;
    }

    .phone-number:hover { color: var(--accent); }

    .phone-hint {
      font-size: 10px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--text-muted);
      margin-top: 3px;
    }

    /* ── BURGER ── */
    .burger {
      display: none;
      margin-left: auto;
      background: none;
      border: 0px solid var(--border);
      border-radius: 6px;
      width: 40px;
      height: 40px;
      cursor: pointer;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 5px;
      transition: border-color 0.2s;
    }

    .burger:hover { border-color: var(--accent); }

    .burger span {
      display: block;
      width: 20px;
      height: 2px;
      background: var(--text);
      border-radius: 2px;
      transition: transform 0.3s, opacity 0.3s;
    }

    .burger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .burger.open span:nth-child(2) { opacity: 0; }
    .burger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

    /* ── MOBILE MENU ── */
    .mobile-menu {
      display: none;
      flex-direction: column;
      background: var(--surface);
      border-top: 1px solid var(--border);
      overflow: hidden;
      max-height: 0;
      transition: max-height 0.35s cubic-bezier(.4,0,.2,1);
    }

    .mobile-menu.open {
      max-height: 300px;
    }

    .mobile-menu a {
      font-family: var(--font-display);
      font-size: 16px;
      font-weight: 300;
      letter-spacing: 0.08em;
      color: var(--text-muted);
      text-decoration: none;
      padding: 14px 24px;
      border-bottom: 1px solid var(--border);
      transition: color 0.2s, background 0.2s;
    }

    .mobile-menu a:hover {
      color: var(--text);
      background: var(--accent-dim);
    }

    .mobile-menu .phone-mobile {
      padding: 14px 24px;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .mobile-menu .phone-mobile a {
      padding: 0;
      border: none;
      font-size: 18px;
      color: var(--accent);
    }
    h1 { font-weight:300; margin:25px 0px 25px 0px;  }

    /* ── RESPONSIVE ── */
    @media (max-width: 768px) {
      nav, .phone-block { display: none; }
      .burger { display: flex; }
      .mobile-menu { display: flex; }
      .navi {line-height:2;}
    }

    /* ── DEMO CONTENT BELOW HEADER ── */
    .demo-body {
      max-width: 1280px;
      margin: 80px auto;
      padding: 0 24px;
      text-align: center;
    }
    .demo-body p {
      color: var(--text-muted);
      font-size: 14px;
      letter-spacing: 0.06em;
    }

