/* Sütçüler Beyi — shared site styles (resets, keyframes, responsive) */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { background: #FAF7F0; }
img { max-width: 100%; }
::selection { background: #D4A847; color: #2a2521; }

@keyframes floatPulse {
  0%, 100% { box-shadow: 0 8px 24px rgba(37,211,102,0.35); }
  50% { box-shadow: 0 8px 34px rgba(37,211,102,0.55); }
}

/* ---- nav: CSS-only hamburger ---- */
.nav-checkbox { display: none; }
.nav-toggle { display: none; cursor: pointer; }

/* ---- hover utilities (replace design-tool "style-hover" attrs) ---- */
a, button { transition: background-color .2s, color .2s, border-color .2s, box-shadow .2s, transform .2s; }
.btn-gold:hover { background: #e3b95c !important; }
.btn-whatsapp:hover { background: #1ebe5a !important; }
.btn-outline-navy:hover { border-color: #4A6580 !important; background: #f1f3f5 !important; }
.btn-navy:hover { background: #2a3c4d !important; }
.btn-map:hover { background: #387339 !important; }
.nav-link:hover { color: #2C5F2E !important; }
.nav-link-navy:hover { color: #4A6580 !important; }
.text-link-hover-green:hover { color: #2C5F2E !important; }
.text-link-hover-gold:hover { color: #D4A847 !important; }
.text-link-hover-navy:hover { color: #4A6580 !important; }
.text-link-underline-hover:hover { text-decoration: underline !important; }
.hero-link:hover { color: #FAF7F0 !important; }
.b2b-cta:hover { background: #3c5670 !important; }
.card-hover:hover { transform: translateY(-6px); box-shadow: 0 18px 36px rgba(44,60,30,0.13); }
.footer-link:hover { color: #D4A847 !important; }
.social-icon:hover { background: #2C5F2E !important; color: #fff !important; }
.social-icon-wa:hover { background: #25D366 !important; color: #fff !important; }
.field-input:focus { border-color: #4A6580 !important; outline: none; }
.fab-whatsapp:hover { background: #1ebe5a !important; }

/* ---- Tablet (<= 980px) ---- */
@media (max-width: 980px) {
  .nav-toggle {
    display: inline-flex !important; align-items: center; justify-content: center;
    width: 44px; height: 44px; border-radius: 12px; color: #2C5F2E; background: transparent;
  }
  .nav-menu {
    display: none !important; position: absolute !important; top: 78px; left: 0; right: 0;
    flex-direction: column !important; align-items: stretch !important; gap: 2px !important;
    background: #FAF7F0; border-bottom: 1px solid #e7e0d2; padding: 12px 18px 18px !important;
    box-shadow: 0 16px 30px rgba(0,0,0,0.10);
  }
  .nav-checkbox:checked ~ .nav-menu { display: flex !important; }
  .nav-menu > a, .nav-menu > button { width: 100%; justify-content: center !important; text-align: center; margin-left: 0 !important; }
  .nav-menu > a.nav-link, .nav-menu > button.nav-link { padding: 14px 13px !important; font-size: 16px !important; }

  .grid-4 { grid-template-columns: repeat(2, 1fr) !important; }
  .grid-3 { grid-template-columns: repeat(2, 1fr) !important; }
  .grid-5 { grid-template-columns: repeat(3, 1fr) !important; }
  .resp-2col { grid-template-columns: 1fr !important; }
  .resp-hero { grid-template-columns: 1fr !important; gap: 40px !important; padding-top: 56px !important; padding-bottom: 56px !important; }
  .resp-detail { grid-template-columns: 1fr !important; gap: 32px !important; }
  .resp-sticky { position: static !important; }
  .form-grid { grid-template-columns: 1fr 1fr !important; }
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 32px !important; }
}

/* ---- Phone (<= 620px) ---- */
@media (max-width: 620px) {
  .grid-4 { grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; }
  .grid-3 { grid-template-columns: 1fr !important; }
  .grid-5 { grid-template-columns: repeat(2, 1fr) !important; }
  .form-grid { grid-template-columns: 1fr !important; }
  .footer-grid { grid-template-columns: 1fr !important; }
  .resp-h1 { font-size: 38px !important; }
  .resp-h1-lg { font-size: 36px !important; }
  .resp-display { font-size: 23px !important; }
  .resp-pad { padding-left: 20px !important; padding-right: 20px !important; }
  .resp-pad-y { padding-top: 48px !important; padding-bottom: 48px !important; }
  .resp-cta { padding: 40px 22px !important; }
  .resp-signpost { flex-direction: column !important; align-items: flex-start !important; }
  .brand-sub { display: none !important; }
}
