/* =========================================
   EMIN FIRIN — MAIN STYLESHEET
   Palet: Warm White (#FAFAF6) · Deep Espresso (#3D2010) · Antique Gold (#C49A3C)
   ========================================= */

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

:root {
  /* ── Arka plan katmanları ── */
  --dark:    #FAFAF6;              /* warm white — ana zemin      */
  --dark-2:  #F4EEE2;              /* warm parchment — ara        */
  --dark-3:  #EDE4D4;              /* warm sand — değerler        */

  /* ── Aksent ── */
  --gold:     #3D2010;             /* deep espresso — ana aksent  */
  --gold-lt:  #6B3A1F;             /* mahogany — hover            */
  --gold-dim: rgba(61,32,16,0.09); /* şeffaf tint                 */

  /* ── Metin ── */
  --white:   #1E1009;              /* near-black warm — ana metin */
  --muted:   rgba(30,16,9,0.44);   /* ikincil metin               */

  /* ── Dekoratif ── */
  --amber:   #C49A3C;              /* antique gold                */
  --cream:   #FAFAF6;              /* metin — foto sectionları    */

  --serif:  'Georgia', 'Times New Roman', serif;
  --sans:   'Helvetica Neue', Arial, sans-serif;
  --nav-h:  72px;
  --pad-x:  clamp(28px, 7vw, 96px);
  --ease:   cubic-bezier(0.22, 1, 0.36, 1);
}

html { scroll-behavior: smooth; }

body {
  background: var(--dark);
  color: var(--white);
  font-family: var(--sans);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

/* ══════════════════════════════════════════
   NAV
══════════════════════════════════════════ */
.nav {
  position: fixed;
  top: 0; left: 0;
  width: 100%;
  height: var(--nav-h);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--pad-x);
  z-index: 200;
  transition: background 0.5s var(--ease), backdrop-filter 0.5s, box-shadow 0.5s;
}

.nav:not(.scrolled) .nav__links a {
  color: rgba(250,250,246,0.88);
}
.nav:not(.scrolled) .nav__links a:hover {
  color: #fff;
}
.nav:not(.scrolled) .nav__menu span {
  background: rgba(250,250,246,0.9);
}

.nav.scrolled {
  background: rgba(250,250,246,0.97);
  box-shadow: 0 1px 0 rgba(61,32,16,0.08);
}

.nav.scrolled::before {
  content: '';
  position: absolute;
  inset: 0;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  pointer-events: none;
}

.nav__logo {
  display: flex;
  align-items: center;
  line-height: 0;
  text-decoration: none;
}
.nav__logo img { height: 50px; width: auto; display: block; }

.nav__links {
  list-style: none;
  display: flex;
  gap: 36px;
}

.nav__links a {
  color: var(--white);
  text-decoration: none;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  opacity: 0.65;
  transition: opacity 0.25s, color 0.25s;
}
.nav__links a:hover { opacity: 1; color: var(--gold); }

.nav__menu {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
}
.nav__menu span {
  display: block;
  width: 24px; height: 1.5px;
  background: var(--white);
  transition: transform 0.3s, opacity 0.3s;
}

/* ══════════════════════════════════════════
   FOTO SECTIONLAR
══════════════════════════════════════════ */
.bg-section {
  position: relative;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  color: var(--cream);
}

.bg-section--1 { background-image: url('../images/bg/a1.jpg'); }
.bg-section--2 { background-image: url('../images/bg/a2.jpg'); }
.bg-section--3 { background-image: url('../images/bg/a3.jpg'); }

.bg-section__overlay { position: absolute; inset: 0; pointer-events: none; }

.bg-section--1 .bg-section__overlay {
  background: linear-gradient(155deg,
    rgba(10,6,3,0.72) 0%,
    rgba(10,6,3,0.28) 55%,
    rgba(10,6,3,0.55) 100%);
}
.bg-section--2 .bg-section__overlay {
  background: rgba(8,5,2,0.56);
}
.bg-section--3 .bg-section__overlay {
  background: linear-gradient(to top,
    rgba(8,5,2,0.85) 0%,
    rgba(8,5,2,0.44) 55%,
    rgba(8,5,2,0.20) 100%);
}

/* ══════════════════════════════════════════
   HERO
══════════════════════════════════════════ */
.hero-content {
  position: relative;
  z-index: 2;
  padding: var(--nav-h) var(--pad-x) 0;
  max-width: 760px;
}

.eyebrow {
  display: block;
  font-size: 0.7rem;
  letter-spacing: 0.38em;
  text-transform: uppercase;
  color: var(--amber);
  margin-bottom: 24px;
}

.hero-headline {
  font-family: var(--serif);
  font-size: clamp(3.4rem, 8vw, 7.2rem);
  font-weight: 400;
  line-height: 1.0;
  color: var(--cream);
  letter-spacing: -0.01em;
  margin-bottom: 32px;
}

.hero-rule {
  width: 48px;
  height: 1px;
  background: var(--amber);
  margin-bottom: 28px;
}

.hero-sub {
  font-size: 0.88rem;
  letter-spacing: 0.16em;
  color: rgba(250,250,246,0.68);
  text-transform: uppercase;
}

.scroll-hint {
  position: absolute;
  bottom: 48px; left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  display: flex; flex-direction: column; align-items: center;
}

.scroll-hint__line {
  display: block;
  width: 1px; height: 60px;
  background: linear-gradient(to bottom, var(--amber) 0%, transparent 100%);
  animation: scrollPulse 2s ease-in-out infinite;
}

@keyframes scrollPulse {
  0%   { transform: scaleY(0); transform-origin: top; opacity: 1; }
  50%  { transform: scaleY(1); transform-origin: top; opacity: 1; }
  100% { transform: scaleY(1); transform-origin: top; opacity: 0; }
}

/* ══════════════════════════════════════════
   İÇERİK SECTIONLARı
══════════════════════════════════════════ */
.content-section {
  background: var(--dark-2);
  padding: 120px var(--pad-x);
}

.content-section--split {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: 80px;
  align-items: start;
}

.split__col--left {
  position: sticky;
  top: calc(var(--nav-h) + 40px);
}

.section-tag {
  display: inline-block;
  font-size: 0.68rem;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 20px;
  border-bottom: 1px solid rgba(61,32,16,0.18);
  padding-bottom: 10px;
}

.section-heading {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 4vw, 3.8rem);
  font-weight: 400;
  line-height: 1.1;
  color: var(--white);
  letter-spacing: -0.01em;
}

.mission-text {
  font-size: 1.05rem;
  line-height: 1.85;
  color: var(--white);
  opacity: 0.72;
  max-width: 540px;
}

.divider {
  width: 100%;
  height: 1px;
  background: rgba(61,32,16,0.12);
  margin: 48px 0;
}

.bridge-content {
  position: relative;
  z-index: 2;
  padding: 0 var(--pad-x);
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.bridge-quote {
  font-family: var(--serif);
  font-size: clamp(1.5rem, 3.2vw, 2.8rem);
  font-weight: 400;
  font-style: italic;
  line-height: 1.5;
  color: var(--cream);
  letter-spacing: 0.01em;
  border: none;
}

.bridge-quote::before {
  content: '\201C';
  display: block;
  font-size: 4rem;
  line-height: 0.6;
  color: var(--amber);
  margin-bottom: 24px;
  font-style: normal;
}

/* Değerler */
.content-section--values { background: var(--dark-3); }

.manifesto-header {
  margin-bottom: 64px;
  border-bottom: 1px solid rgba(61,32,16,0.14);
  padding-bottom: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.manifesto-header::after {
  content: 'Emin Fırın — İlkeler';
  font-size: 0.65rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--white);
  opacity: 0.18;
}

.manifesto-list { display: flex; flex-direction: column; }

.manifesto-item {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 0 48px;
  align-items: start;
  padding: 48px 0;
  border-bottom: 1px solid rgba(61,32,16,0.10);
  cursor: default;
  position: relative;
}

.manifesto-item::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(61,32,16,0.03);
  opacity: 0;
  transition: opacity 0.35s;
  pointer-events: none;
}

.manifesto-item:hover::before { opacity: 1; }
.manifesto-item:hover .manifesto-item__title { color: var(--gold); }

.manifesto-item__num {
  font-size: 0.65rem;
  letter-spacing: 0.28em;
  color: var(--amber);
  padding-top: 10px;
  opacity: 0.70;
}

.manifesto-item__body {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 0 64px;
  align-items: start;
}

.manifesto-item__title {
  font-family: var(--serif);
  font-size: clamp(1.8rem, 3.2vw, 3rem);
  font-weight: 400;
  color: var(--white);
  line-height: 1.1;
  letter-spacing: -0.01em;
  transition: color 0.35s;
  padding-right: 16px;
}

.manifesto-item__text {
  font-size: 0.88rem;
  line-height: 1.80;
  color: var(--white);
  opacity: 0.50;
  padding-top: 8px;
  max-width: 380px;
}

/* ══════════════════════════════════════════
   İLETİŞİM
══════════════════════════════════════════ */
.contact-wrap {
  position: relative;
  z-index: 2;
  width: 100%;
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  align-items: center;
  gap: 0 64px;
  padding: 0 var(--pad-x);
}

.contact-content { width: 100%; max-width: 620px; }

.contact-map {
  width: 100%;
  height: 420px;
  border: 1px solid rgba(250,250,246,0.22);
  padding: 6px;
  background: rgba(8,5,2,0.35);
  backdrop-filter: blur(4px);
}

.contact-map #map {
  width: 100%;
  height: 100%;
  filter: sepia(0.3) contrast(0.93) brightness(0.88);
}

.contact-map .leaflet-control-attribution {
  background: rgba(8,5,2,0.55) !important;
  color: rgba(250,250,246,0.55) !important;
  font-size: 0.6rem !important;
}
.contact-map .leaflet-control-attribution a { color: var(--amber) !important; }
.contact-map .leaflet-popup-content-wrapper,
.contact-map .leaflet-popup-tip { filter: none; }

.contact-headline {
  font-family: var(--serif);
  font-size: clamp(2.6rem, 5vw, 4.8rem);
  font-weight: 400;
  color: var(--cream);
  margin: 20px 0 52px;
  line-height: 1.08;
}

.contact-list {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(250,250,246,0.18);
}

.contact-line {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 22px 0;
  border-bottom: 1px solid rgba(250,250,246,0.09);
  text-decoration: none;
  color: var(--cream);
  transition: padding-left 0.3s var(--ease);
  gap: 24px;
}

a.contact-line:hover { padding-left: 10px; }

.contact-line__label {
  font-size: 0.68rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--amber);
  flex-shrink: 0;
  width: 90px;
}

.contact-line__val {
  font-size: 1rem;
  letter-spacing: 0.04em;
  opacity: 0.80;
}

/* ══════════════════════════════════════════
   ÜRÜNLERİMİZ
══════════════════════════════════════════ */
.content-section--products { background: var(--dark); }

.products-header {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 64px;
  align-items: end;
  margin-bottom: 72px;
  padding-bottom: 48px;
  border-bottom: 1px solid rgba(61,32,16,0.12);
}

.products-header .section-heading { margin-top: 16px; }

.products-header__sub {
  font-size: 0.92rem;
  line-height: 1.85;
  color: var(--white);
  opacity: 0.50;
  padding-bottom: 4px;
}

.products-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(61,32,16,0.10);
}

.product-cat {
  background: var(--dark);
  padding: 0 40px 44px;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
  transition: background 0.35s;
}

.product-cat:hover { background: rgba(61,32,16,0.04); }

.product-cat__img {
  width: calc(100% + 80px);
  margin: 0 -40px 32px;
  height: 200px;
  background-size: cover;
  background-position: center;
  filter: sepia(0.10) contrast(1.04) brightness(0.94);
  transition: filter 0.4s, transform 0.6s var(--ease);
}

.product-cat:hover .product-cat__img {
  filter: sepia(0) contrast(1.05) brightness(1.01);
  transform: scale(1.03);
}

.product-cat__top {
  padding-top: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.product-cat:has(.product-cat__img) .product-cat__top { padding-top: 0; }

.product-cat--accent { background: rgba(61,32,16,0.04); }
.product-cat--accent:hover { background: rgba(61,32,16,0.08); }

.product-cat__num {
  font-size: 0.62rem;
  letter-spacing: 0.3em;
  color: var(--amber);
  opacity: 0.65;
}

.product-cat__tag {
  font-size: 0.6rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--white);
  opacity: 0.30;
  border: 1px solid rgba(61,32,16,0.14);
  padding: 4px 10px;
}

.product-cat__title {
  font-family: var(--serif);
  font-size: clamp(1.5rem, 2.2vw, 2.1rem);
  font-weight: 400;
  color: var(--white);
  line-height: 1.15;
  margin-bottom: 16px;
  letter-spacing: -0.01em;
}

.product-cat__text {
  font-size: 0.84rem;
  line-height: 1.75;
  color: var(--white);
  opacity: 0.50;
  margin-bottom: 24px;
}

.product-cat__list {
  list-style: none;
  margin-top: auto;
  border-top: 1px solid rgba(61,32,16,0.10);
  padding-top: 20px;
  display: flex;
  flex-direction: column;
}

.product-cat__list li {
  font-size: 0.80rem;
  letter-spacing: 0.06em;
  color: var(--white);
  opacity: 0.44;
  padding: 7px 0;
  border-bottom: 1px solid rgba(61,32,16,0.07);
  transition: opacity 0.2s;
}

.product-cat:hover .product-cat__list li { opacity: 0.68; }

.product-cat__cta {
  display: inline-block;
  margin-top: auto;
  padding: 14px 28px;
  border: 1px solid var(--gold);
  color: var(--gold);
  text-decoration: none;
  font-size: 0.72rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  transition: background 0.3s, color 0.3s;
  width: fit-content;
}

.product-cat__cta:hover {
  background: var(--gold);
  color: var(--cream);
}

.product-cat[data-reveal]:nth-child(1) { transition-delay: 0.00s; }
.product-cat[data-reveal]:nth-child(2) { transition-delay: 0.07s; }
.product-cat[data-reveal]:nth-child(3) { transition-delay: 0.14s; }
.product-cat[data-reveal]:nth-child(4) { transition-delay: 0.21s; }
.product-cat[data-reveal]:nth-child(5) { transition-delay: 0.28s; }
.product-cat[data-reveal]:nth-child(6) { transition-delay: 0.35s; }

/* ══════════════════════════════════════════
   FOOTER
══════════════════════════════════════════ */
.footer {
  background: #1A0F08;
  padding: 80px var(--pad-x) 0;
}

.footer__inner {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 48px;
  padding-bottom: 64px;
  border-bottom: 1px solid rgba(250,250,246,0.09);
}

.footer__logo { display: inline-flex; margin-bottom: 16px; line-height: 0; }
.footer__logo img { height: 68px; width: auto; display: block; }

.footer__tagline {
  font-size: 0.7rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--amber);
  margin-bottom: 20px;
}

.footer__desc {
  font-size: 0.84rem;
  line-height: 1.75;
  color: rgba(250,250,246,0.40);
  max-width: 280px;
  margin-bottom: 28px;
}

.footer__social { display: flex; gap: 20px; }

.footer__social-link {
  font-size: 0.68rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(250,250,246,0.36);
  text-decoration: none;
  transition: color 0.25s;
}
.footer__social-link:hover { color: rgba(250,250,246,0.80); }

.footer__nav-title {
  display: block;
  font-size: 0.65rem;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--amber);
  margin-bottom: 20px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(250,250,246,0.09);
}

.footer__nav ul { list-style: none; display: flex; flex-direction: column; gap: 10px; }

.footer__nav a {
  font-size: 0.84rem;
  color: rgba(250,250,246,0.40);
  text-decoration: none;
  letter-spacing: 0.04em;
  transition: color 0.2s;
}
.footer__nav a:hover { color: rgba(250,250,246,0.80); }

.footer__contact-col { display: flex; flex-direction: column; gap: 10px; }

.footer__contact-col p {
  font-size: 0.84rem;
  color: rgba(250,250,246,0.40);
  line-height: 1.5;
}

.footer__contact-col p a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s;
}
.footer__contact-col p a:hover { color: rgba(250,250,246,0.80); }

.footer__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 0;
  font-size: 0.65rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(250,250,246,0.20);
}

/* ══════════════════════════════════════════
   SAYFA BAŞLIĞI (SSS)
══════════════════════════════════════════ */
.page-header {
  position: relative;
  min-height: 48vh;
  display: flex;
  align-items: center;
  background-image: url('../images/bg/a2.jpg');
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  overflow: hidden;
  color: var(--cream);
}

.page-header__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
    rgba(8,5,2,0.50) 0%,
    rgba(8,5,2,0.88) 100%);
  pointer-events: none;
}

.page-header__content {
  position: relative;
  z-index: 2;
  padding: calc(var(--nav-h) + 56px) var(--pad-x) 56px;
  max-width: 900px;
}

.page-header__title {
  font-family: var(--serif);
  font-size: clamp(2.6rem, 6vw, 4.6rem);
  font-weight: 400;
  color: var(--cream);
  line-height: 1.05;
  margin-top: 18px;
  letter-spacing: -0.01em;
}

.page-header__sub {
  font-size: 0.95rem;
  line-height: 1.8;
  color: rgba(250,250,246,0.58);
  max-width: 560px;
  margin-top: 24px;
}

.page-header__breadcrumb {
  margin-top: 28px;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  color: rgba(250,250,246,0.40);
}

.page-header__breadcrumb a { color: var(--amber); text-decoration: none; }
.page-header__breadcrumb a:hover { opacity: 0.8; }

/* ══════════════════════════════════════════
   SSS / FAQ
══════════════════════════════════════════ */
.faq-jump {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 80px;
  padding-bottom: 40px;
  border-bottom: 1px solid rgba(61,32,16,0.12);
}

.faq-jump a {
  font-size: 0.7rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--white);
  opacity: 0.58;
  text-decoration: none;
  border: 1px solid rgba(61,32,16,0.18);
  padding: 10px 18px;
  transition: opacity 0.25s, border-color 0.25s, color 0.25s;
}

.faq-jump a:hover {
  opacity: 1;
  color: var(--gold);
  border-color: rgba(61,32,16,0.42);
}

.faq-cat-header { margin-bottom: 40px; }
.faq-cat-header .section-tag { margin-bottom: 0; }

.faq-list { display: flex; flex-direction: column; }

.faq-item { border-bottom: 1px solid rgba(61,32,16,0.12); }

.faq-item__q {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 28px 0;
  text-align: left;
  color: var(--white);
  font-family: var(--serif);
  font-size: clamp(1.05rem, 1.7vw, 1.4rem);
  transition: color 0.25s;
}

.faq-item__q:hover { color: var(--gold); }

.faq-item__icon {
  flex-shrink: 0;
  width: 30px; height: 30px;
  border: 1px solid rgba(61,32,16,0.22);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: 1.2rem;
  transition: transform 0.35s var(--ease), background 0.35s;
}

.faq-item.open .faq-item__icon {
  transform: rotate(45deg);
  background: rgba(61,32,16,0.08);
}

.faq-item__a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s var(--ease);
}

.faq-item__a p {
  padding: 0 0 30px;
  max-width: 760px;
  font-size: 0.92rem;
  line-height: 1.85;
  color: var(--white);
  opacity: 0.58;
}

.faq-item__a a { color: var(--gold); text-decoration: underline; }

/* ══════════════════════════════════════════
   REVEAL ANİMASYON
══════════════════════════════════════════ */
[data-reveal] {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);
}
[data-reveal].is-visible { opacity: 1; transform: translateY(0); }

[data-reveal]:nth-child(2) { transition-delay: 0.12s; }
[data-reveal]:nth-child(3) { transition-delay: 0.22s; }
[data-reveal]:nth-child(4) { transition-delay: 0.32s; }

.manifesto-item[data-reveal]:nth-child(1) { transition-delay: 0.00s; }
.manifesto-item[data-reveal]:nth-child(2) { transition-delay: 0.06s; }
.manifesto-item[data-reveal]:nth-child(3) { transition-delay: 0.12s; }
.manifesto-item[data-reveal]:nth-child(4) { transition-delay: 0.18s; }
.manifesto-item[data-reveal]:nth-child(5) { transition-delay: 0.24s; }
.manifesto-item[data-reveal]:nth-child(6) { transition-delay: 0.30s; }
.manifesto-item[data-reveal]:nth-child(7) { transition-delay: 0.36s; }

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media (max-width: 900px) {
  .nav__links { display: none; }
  .nav__menu  { display: flex; }

  .nav__links.open {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: var(--nav-h);
    left: 0; right: 0; bottom: 0;
    background: rgba(250,250,246,0.97);
    padding: 48px var(--pad-x);
    gap: 28px;
    align-items: flex-start;
    backdrop-filter: blur(12px);
  }

  .nav .nav__links.open a {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    color: var(--white);
    opacity: 0.88;
  }

  .content-section--split { grid-template-columns: 1fr; gap: 40px; }
  .split__col--left { position: static; }

  .manifesto-item { grid-template-columns: 40px 1fr; gap: 0 24px; padding: 36px 0; }
  .manifesto-item__body { grid-template-columns: 1fr; gap: 12px 0; }
  .manifesto-item__text { max-width: 100%; }

  .page-header { background-attachment: scroll; min-height: 38vh; }
  .faq-jump { margin-bottom: 56px; padding-bottom: 28px; }
  .faq-item__q { padding: 22px 0; }

  .bg-section {
    background-attachment: scroll;
    height: auto;
    min-height: 100vh;
    overflow: visible;
    padding: 0;
  }

  .contact-wrap { grid-template-columns: 1fr; gap: 40px 0; padding: 100px var(--pad-x) 60px; }
  .contact-map  { height: 280px; order: -1; }

  .products-header { grid-template-columns: 1fr; gap: 24px 0; }
  .products-grid   { grid-template-columns: 1fr; }

  .footer__inner  { grid-template-columns: 1fr 1fr; gap: 40px 32px; }
  .footer__brand  { grid-column: span 2; }
  .footer__bottom { flex-direction: column; gap: 8px; text-align: center; }
}

@media (max-width: 560px) {
  .nav__logo img { height: 38px; }

  .hero-headline { font-size: clamp(2.8rem, 13vw, 4.8rem); }
  .content-section { padding: 80px var(--pad-x); }
  .manifesto-item { padding: 28px 0; }
  .manifesto-item__title { font-size: clamp(1.5rem, 7vw, 2rem); }

  .products-grid    { grid-template-columns: 1fr; }
  .product-cat      { padding: 0 28px 36px; }
  .product-cat__img { width: calc(100% + 56px); margin: 0 -28px 24px; height: 160px; }

  .contact-map { height: 220px; }

  .footer__inner { grid-template-columns: 1fr; }
  .footer__brand { grid-column: span 1; }

  .page-header__content { padding: calc(var(--nav-h) + 36px) var(--pad-x) 40px; }
  .faq-item__q { font-size: 1.05rem; }
}
