/* Supersolucan — Global Styles (Türkçe) */
:root {
  --color-primary:#3A7D44; --color-secondary:#78B26A; --color-accent:#F2B961;
  --color-bg:#FAFBF8; --color-text:#1F2933; --color-muted:#6B7280;
  --max-w:1200px; --radius:.75rem; --shadow:0 6px 20px rgba(0,0,0,.08);
}
* {box-sizing:border-box}
html {scroll-behavior:smooth}
body {margin:0; font-family:"Roboto","Noto Sans",system-ui,-apple-system,Segoe UI,Arial,sans-serif; color:var(--color-text); background:var(--color-bg); line-height:1.6}
h1,h2,h3 {font-family:"Inter",system-ui,sans-serif; color:var(--color-text)}
img {max-width:100%; height:auto; border-radius: .5rem}
a {color:var(--color-primary); text-decoration:none}
a:hover {text-decoration:underline}

/* A11y helpers */
.sr-only {position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0}
.skip-link {position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden}
.skip-link:focus {left:1rem; top:1rem; width:auto; height:auto; padding:.5rem .75rem; background:#fff; border:2px solid var(--color-primary); border-radius:.5rem; z-index:1000}
:focus-visible {outline:3px solid var(--color-accent); outline-offset:2px}

/* Layout */
.container {max-width:var(--max-w); margin:0 auto; padding:0 1rem}
.grid {display:grid; gap:1rem}
.grid.two {grid-template-columns:repeat(2,1fr)}
.grid.three {grid-template-columns:repeat(3,1fr)}
@media (max-width: 768px) {.grid.two,.grid.three {grid-template-columns:1fr}}

/* Header / Nav */
.site-header {background:#fff; box-shadow:var(--shadow); position:sticky; top:0; z-index:50}
/* Modern header navigation */
.nav { display:flex; align-items:center; gap:1rem; }
.nav .logo { font-weight:800; font-size:1.25rem; color: var(--color-primary); text-decoration:none; }
.nav-right { margin-left:auto; display:flex; align-items:center; gap:1rem; }
.nav .menu { list-style:none; align-items:center; gap:.75rem; margin:0; padding:0; }
.nav .menu a { text-decoration:none; padding:.5rem .75rem; border-radius:.5rem; color: var(--text-color); }
.nav .menu a:hover { background: rgba(58,125,68,.08); }
.site-search { display:flex; align-items:center; gap:.5rem; flex-wrap:nowrap; }
.site-search input[type="search"] { flex:1; min-width: clamp(160px, 20vw, 280px); }
.site-search .btn.btn-small { white-space:nowrap; }

/* Desktop: menu always visible, toggle hidden (>=1025px) */
@media (min-width: 1025px) {
  .menu-toggle { display:none; }
  .nav .menu { display:flex; }
}

/* Modern header spacing and stronger menu weight */
.nav { padding: .75rem clamp(1rem, 4vw, 2rem); }
.nav .menu a { font-weight: 600; padding: .6rem .9rem; }
.nav .menu a[aria-current="page"] { font-weight: 700; }

/* Polished search styling */
.site-search { position: relative; }
.site-search::before {
  content: '🔎';
  position: absolute;
  left: .6rem;
  top: 50%;
  transform: translateY(-50%);
  opacity: .7;
  pointer-events: none;
}
.site-search input[type="search"] {
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 999px;
  padding: .5rem 1rem .5rem 2rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.04) inset;
}
.site-search input[type="search"]:focus {
  outline: none;
  border-color: rgba(58,125,68,.4);
  box-shadow: 0 0 0 3px rgba(58,125,68,.15);
}
.site-search .btn.btn-small {
  border-radius: 999px;
  padding: .5rem .9rem;
}

/* Cookie banner: desktop bottom-right, mobile full-width centered */
.cookie-banner {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 1000;
  max-width: min(100% - 2rem, 420px);
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow);
  border-radius: .75rem;
  padding: .75rem 1rem;
}
.cookie-banner p { margin: 0 0 .5rem 0; }
.cookie-banner .btn { margin-right: .5rem; }

@media (max-width: 768px) {
  .cookie-banner {
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: 100%;
    border-radius: 0;
    margin: 0;
  }
}
.menu a {padding:.5rem .75rem; border-radius:.5rem}
.menu a[aria-current="page"] {background:rgba(58,125,68,.1)}
.menu-toggle {display:none; background:transparent; border:0; font-size:1.25rem}
.site-search input {border:1px solid #ddd; border-radius:.5rem; padding:.5rem}
@media (max-width: 1024px){
  .menu-toggle {display:block; margin-left:auto}
  .nav { flex-wrap: wrap; }
  .nav-right { width:100%; display:flex; align-items:center; gap:.5rem; }
  .menu {display:none; flex-direction:column; width:100%}
  .menu.open {display:flex}
  .site-search { flex:1; }
  .site-search input[type="search"] { min-width:0; width:100%; }
}

/* Hero */
.page-hero {padding:2rem 0}
.hero-media {margin-top:1rem}

/* Cards */
.card, .product-card, .post-card {background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); padding:1rem}
.product-card .price {font-weight:700; color:var(--color-primary)}
.quote {background:#fff; border-left:6px solid var(--color-primary); border-radius:.5rem; padding:1rem}

/* Buttons */
.btn {display:inline-block; padding:.6rem .9rem; border-radius:.5rem; font-weight:700}
.btn-primary {background:var(--color-accent); color:#1F2933}
.btn-outline {border:2px solid var(--color-primary); color:var(--color-primary); background:transparent}
.btn-small {padding:.4rem .6rem}

/* Footer */
.site-footer {margin-top:2rem; background:#fff; padding:1rem 0; box-shadow:var(--shadow)}
.footer-grid {display:flex; align-items:center; justify-content:space-between; gap:1rem}
@media (max-width:600px){.footer-grid {flex-direction:column; align-items:flex-start}}

/* Cookie banner */
.cookie-banner {position:fixed; left:50%; bottom:1rem; transform:translateX(-50%); background:#fff; box-shadow:var(--shadow); padding:1rem; border-radius:.75rem; display:flex; gap:.5rem; align-items:center}
.cookie-banner[hidden]{display:none}

/* Forms */
input, select, textarea {width:100%; padding:.6rem .7rem; border-radius:.5rem; border:1px solid #ddd; background:#fff}
label {font-weight:600; display:block; margin-bottom:.25rem}
.gdpr {display:flex; gap:.5rem; align-items:flex-start; margin:.75rem 0}
.form-note {color:var(--color-muted); font-size:.9rem}
#formStatus {margin-top:.75rem}

/* Blog post */
.post-header {background:linear-gradient(135deg, #78B26A 0%, #3A7D44 100%); color:#fff; padding:2rem 0}
.post-header h1 {color:#fff}
.post-body {padding:1rem 0}
.share {display:flex; gap:.5rem; flex-wrap:wrap}

/* Utility */
.list {padding-left:1rem}
.unit {color:var(--color-muted)}

/* Print */
@media print{
  .site-header,.site-footer,.cookie-banner,.menu-toggle,.share,.nav .site-search{display:none}
  a::after{content:" (" attr(href) ")"}
}

/* Contact slider */
.contact-slider {padding:2rem 0}
.slider {background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); padding:1rem}
.slider .slides {list-style:none; padding:0; margin:0}
.slider .slide {display:none}
.slider .slide.active {display:block}
.slider .controls {display:flex; gap:.5rem; align-items:center; margin-top:.5rem}
.slider .dots {display:flex; gap:.25rem; margin-top:.5rem}
.slider .dot {border:1px solid #ddd; background:#fff; border-radius:.5rem; padding:.25rem .5rem; cursor:pointer}
.slider .dot[aria-selected="true"] {border-color: var(--color-primary); background: rgba(58,125,68,.08)}

/* Responsive fixes: overflow ve mobil iyileştirmeler */
/* Genel kutu modeli ve medya */
*,*::before,*::after {box-sizing:border-box}
img, video {max-width:100%; height:auto; display:block}
iframe {max-width:100%}

/* Grid sütunlarında minmax ile taşmayı engelle */
.grid {align-items:start}
.grid.two {grid-template-columns:repeat(2, minmax(0,1fr))}
.grid.three {grid-template-columns:repeat(3, minmax(0,1fr))}
@media (max-width: 768px){.grid.two,.grid.three{grid-template-columns:1fr}}

/* Metin ve adres satırlarının kaymasını önle */
address, p, li {overflow-wrap:anywhere; word-break:break-word}

/* Menü ve nav */
.nav .menu {flex-wrap:wrap; max-width:100%}
@media (max-width:768px){
  .menu.open {width:100%}
}

/* Slider taşma koruması */
.contact-slider .slider {overflow:hidden}
.contact-slider .controls {flex-wrap:wrap}

/* Cookie banner mobilde taşma yapmasın */
.cookie-banner {max-width: min(100% - 2rem, 640px); flex-wrap:wrap}

/* Küçük ekran tipografi ayarları */
@media (max-width:480px){
  .page-hero h1 {font-size:1.75rem}
  .site-header .logo {font-size:1.1rem}
}

/* Contact CTA Strip */
.contact-cta-strip {padding:1.25rem 0; background:linear-gradient(135deg, #78B26A 0%, #3A7D44 100%); color:#fff}
.contact-cta-strip .cta-grid {display:grid; gap:.75rem; grid-template-columns:repeat(3, minmax(0,1fr)); align-items:center}
.contact-cta-strip .cta-item .cta-label {color:rgba(255,255,255,.85); font-weight:600; display:block}
.contact-cta-strip .cta-item strong, .contact-cta-strip .cta-link {color:#fff}
.contact-cta-strip .cta-actions {justify-self:end}
@media (max-width:768px){
  .contact-cta-strip .cta-grid {grid-template-columns:1fr}
  .contact-cta-strip .cta-actions {justify-self:start}
}

/* Menü: tablet ve altı toggle görünür, desktopta menü her zaman açık */
@media (min-width:1025px){
  .menu-toggle {display:none}
  .menu {display:flex}
}

/* Home Hero Slider */
.hero-slider { padding: 0; margin: 0 0 1rem 0; }
.hero-slider .container { max-width: 100%; padding: 0; }
.hero-slider .slider { position: relative; overflow: hidden; border-radius: 0; padding: 0; background: transparent; box-shadow: none; }
.hero-slider .slides { list-style: none; padding: 0; margin: 0; }
.hero-slider .slide img { width: 100%; height: clamp(240px, 40vw, 640px); object-fit: cover; border-radius: 0; display: block; }
.hero-slider .controls { position: absolute; bottom: 1rem; right: 1rem; }
.hero-slider .dots { position: absolute; bottom: 1rem; left: 1rem; }

/* Home Gallery */
.home-gallery { padding: 1.5rem 0; }
.home-gallery .grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
.home-gallery img { aspect-ratio: 16/9; object-fit: cover; }
@media (max-width: 768px){
  .home-gallery .grid { grid-template-columns: 1fr 1fr; }
}