/*
Theme Name: SR Barber Premium
Theme URI: https://serdar.kz
Author: Codex
Description: Premium black-gold WordPress theme for SR Barbershop.
Version: 1.0.0
Text Domain: sr-barber-premium
*/

:root {
  --sr-bg: #050505;
  --sr-panel: #111111;
  --sr-text: #f7f2e8;
  --sr-muted: #bcae93;
  --sr-gold: #d4af37;
  --sr-gold-soft: #f3de92;
  --sr-line: rgba(212, 175, 55, 0.15);
  --sr-shadow: 0 40px 120px rgba(0, 0, 0, 0.38);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
  margin: 0;
  color: var(--sr-text);
  background:
    radial-gradient(circle at top, rgba(212, 175, 55, 0.16), transparent 32%),
    linear-gradient(180deg, #0a0a0a 0%, #050505 38%, #0a0908 100%);
  font-family: Georgia, "Times New Roman", serif;
}

a { color: inherit; }
img { max-width: 100%; }
.site-main { padding: 0 1.25rem 4rem; }
.sr-shell { width: min(1240px, 100%); margin: 0 auto; }
.sr-shell--narrow { width: min(840px, 100%); }

.sr-hero, .sr-about, .sr-vip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
  align-items: center;
}

.sr-hero { min-height: 90vh; padding: 3rem 0 2rem; }

.sr-hero__copy h1,
.sr-section-title h2,
.sr-footer-cta h2,
.sr-account h1,
.sr-admin h1 {
  margin: 0;
  font-size: clamp(2.8rem, 6vw, 5.8rem);
  line-height: 0.95;
  letter-spacing: -0.04em;
}

.sr-section-title h2,
.sr-footer-cta h2,
.sr-account h1,
.sr-admin h1 {
  font-size: clamp(2rem, 4vw, 3.4rem);
  margin-top: 0.25rem;
}

.sr-lead, .sr-about__copy p, .sr-card p, .sr-faq__item p, .sr-summary li, .sr-summary span, .sr-summary a, .sr-admin-toolbar span {
  color: var(--sr-muted);
  font-size: 1.02rem;
  line-height: 1.7;
}

.sr-hero__visual { position: relative; }
.sr-hero__visual > img { aspect-ratio: 4 / 5; border-radius: 32px; box-shadow: var(--sr-shadow); }
.sr-contact-card { position: absolute; right: -2rem; bottom: 2rem; width: min(360px, 88%); padding: 1.4rem; backdrop-filter: blur(14px); }

.sr-highlights, .sr-reasons, .sr-catalog, .sr-about, .sr-booking, .sr-faq, .sr-footer-cta, .sr-account, .sr-admin { padding: 2.75rem 0; }

.sr-highlight, .sr-vip {
  padding: 1.4rem 1.7rem;
  border-radius: 26px;
  border: 1px solid var(--sr-line);
  background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));
}

.sr-highlight strong { display: block; font-size: 1.6rem; margin-top: 0.25rem; }
.sr-card, .sr-mini-card, .sr-product-card, .sr-choice, .sr-summary, .sr-contact-card, .sr-admin-login, .sr-booking-card, .sr-highlight, .sr-vip { backdrop-filter: blur(10px); }
.sr-product-card, .sr-mini-card { padding: 1rem; }
.sr-product-card h3, .sr-mini-card strong, .sr-card h3 { margin: 0.35rem 0; font-size: 1.3rem; }
.sr-product-card strong, .sr-vip__side strong, .sr-summary strong, .sr-booking-card strong { color: var(--sr-gold-soft); font-size: 1.4rem; }
.sr-vip { margin-top: 1rem; }
.sr-vip__side { display: grid; gap: 1rem; justify-items: end; }
.sr-about__image img { box-shadow: var(--sr-shadow); }
.sr-faq__list { display: grid; gap: 0.9rem; }
.sr-faq__item { border: 1px solid var(--sr-line); border-radius: 20px; padding: 1rem 1.2rem; background: rgba(255, 255, 255, 0.03); }
.sr-faq__item summary { cursor: pointer; font-size: 1.12rem; font-weight: 700; }
.sr-footer-cta { text-align: center; border-top: 1px solid var(--sr-line); }
.sr-inline-links { justify-content: center; }
.sr-inline-links a, .sr-text-link, .sr-summary__contact a { color: var(--sr-gold-soft); text-decoration: none; }
.sr-admin-form { display: grid; gap: 1.25rem; }
.sr-admin-grid > section { flex: 1 1 320px; }
.sr-booking__layout > *:first-child { flex: 1 1 620px; }

.sr-site-header {
  width: min(1240px, calc(100% - 2rem));
  margin: 1rem auto 0;
  position: sticky;
  top: 1rem;
  z-index: 20;
  padding: 0.75rem 1rem;
  border-radius: 999px;
  border: 1px solid var(--sr-line);
  background: rgba(7, 7, 7, 0.74);
  display: flex;
  justify-content: space-between;
  align-items: center;
  backdrop-filter: blur(14px);
}

.sr-site-header__brand {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
}

.sr-site-header nav { display: flex; gap: 1rem; flex-wrap: wrap; }
.sr-site-header nav a { text-decoration: none; color: var(--sr-muted); }

@media (max-width: 960px) {
  .sr-hero, .sr-about, .sr-vip { grid-template-columns: 1fr; }
  .sr-contact-card { position: static; width: 100%; margin-top: 1rem; }
}

@media (max-width: 720px) {
  .site-main { padding-inline: 0.85rem; }
  .sr-site-header { position: static; border-radius: 24px; flex-direction: column; gap: 0.75rem; }
  .sr-hero { min-height: auto; padding-top: 2rem; }
}
