/*
Theme Name: Countertops Near Me
Theme URI: https://countertopsnearme.com
Author: Countertops Near Me
Author URI: https://countertopsnearme.com
Description: Lightweight directory theme for Countertops Near Me. No page builder and no ListingPro dependency. Post type, taxonomies and meta fields come from the Countertops Near Me Core plugin, this theme only handles presentation. Listing pages include an identity header, sticky action card with open status and phone buttons, feature grid, free Leaflet map, gallery, FAQ accordion with FAQPage JSON-LD, nearby businesses and a view counter.
Version: 1.10.3
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cnm-theme
Tags: business-directory, custom-colors, custom-logo, custom-menu, featured-images, translation-ready
*/

/* ============================================================
 * Değişkenler (onaylı tasarım yönü)
 * ========================================================== */
:root{
  --paper:#FAF7F1; --paper-2:#F1ECE0; --ink:#15233D; --ink-soft:#42506B;
  --line:#E3DCCD; --accent:#A65A2E; --accent-2:#B8683C; --accent-deep:#8A4823;
  --verified:#0E7C5B; --wa:#1FAF54; --card:#FFFFFF; --radius:18px;
  --brand:#A65A2E; --brand-deep:#8A4823;
  --shadow:0 1px 2px rgba(21,35,61,.04),0 12px 30px -16px rgba(21,35,61,.18);
  --maxw:1160px;
  --cnm-line:var(--line); --cnm-accent:var(--accent); --cnm-ink:var(--ink);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--paper);color:var(--ink);
  font-family:'Hanken Grotesk',system-ui,-apple-system,Segoe UI,sans-serif;
  line-height:1.6;-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(circle at 1px 1px,rgba(21,35,61,.05) 1px,transparent 0);
  background-size:26px 26px;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button{font-family:inherit}
.cnm-wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.cnm-skip{position:absolute;left:-9999px}
.cnm-skip:focus{left:12px;top:12px;z-index:200;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:8px}

/* ============================================================
 * Üst bar
 * ========================================================== */
header.cnm-top{position:sticky;top:0;z-index:40;background:rgba(250,247,241,.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.cnm-top-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px}
.cnm-brand{display:flex;align-items:center;gap:10px;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:21px;letter-spacing:-.02em;color:var(--ink)}
.cnm-brand .cnm-pin{width:30px;height:30px;border-radius:9px;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-size:15px}
.cnm-brand img{max-height:38px;width:auto}
.cnm-nav{display:flex;align-items:center;gap:18px}
.cnm-brand .cnm-pinico{display:block;flex:none}
.cnm-burger{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1.5px solid var(--line);border-radius:11px;background:var(--card);color:var(--ink);cursor:pointer}
.cnm-burger:hover{border-color:var(--brand);color:var(--brand)}
.cnm-mobile-menu{display:none;flex-direction:column;border-top:1px solid var(--line);background:var(--card)}
.cnm-mobile-menu a{padding:14px 20px;border-bottom:1px solid var(--line);color:var(--ink);font-weight:600;font-size:16px}
.cnm-mobile-menu a:hover{background:var(--paper-2);color:var(--brand)}
.cnm-mobile-menu a.cnm-mm-cta{color:var(--brand)}
.cnm-top.is-open .cnm-mobile-menu{display:flex}
.cnm-nav ul{display:flex;gap:18px;list-style:none}
.cnm-nav a{font-size:14.5px;font-weight:600;color:var(--ink-soft)}
.cnm-nav a:hover{color:var(--accent-deep)}
.cnm-links{display:flex;align-items:center;gap:18px;list-style:none}
.cnm-links a{color:var(--ink-soft);font-weight:600;font-size:15px}
.cnm-links a:hover{color:var(--brand)}
.cnm-nav a.cnm-cta{font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:13.5px;background:transparent;color:var(--brand);border:1.5px solid var(--brand);padding:8px 15px;border-radius:999px;white-space:nowrap}
.cnm-nav a.cnm-cta:hover{background:var(--brand);color:#fff}

/* ============================================================
 * Breadcrumb
 * ========================================================== */
.cnm-crumb{font-size:13.5px;color:var(--ink-soft);padding:16px 0 0;display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.cnm-crumb a:hover{color:var(--accent-deep)}
.cnm-crumb span{opacity:.5}
.cnm-crumb .cnm-crumb-cur{color:var(--ink);font-weight:600;opacity:1}

/* ============================================================
 * Kimlik başlığı (görsel oranından bağımsız sabit)
 * ========================================================== */
.cnm-identity{padding:18px 0 6px}
.cnm-id-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.cnm-logo-badge{width:46px;height:46px;border-radius:12px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:var(--shadow)}
.cnm-logo-badge img{width:100%;height:100%;object-fit:contain;padding:4px}
.cnm-verified{display:inline-flex;align-items:center;gap:6px;background:rgba(14,124,91,.1);color:var(--verified);font-weight:700;font-size:12.5px;padding:5px 11px;border-radius:999px}
.cnm-verified .cnm-dot{width:7px;height:7px;border-radius:50%;background:var(--verified)}
.cnm-views{font-size:12.5px;color:var(--ink-soft)}
.cnm-views b{color:var(--ink)}
h1.cnm-name{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:38px;line-height:1.05;letter-spacing:-.025em;margin-bottom:6px}
.cnm-tagline{font-size:16px;color:var(--ink-soft);margin-bottom:12px;max-width:60ch}
.cnm-cat-row{display:flex;flex-wrap:wrap;gap:7px}
.cnm-chip{font-size:12.5px;font-weight:600;color:var(--ink-soft);background:var(--paper-2);padding:5px 11px;border-radius:8px;transition:.15s}
.cnm-chip:hover{background:var(--ink);color:var(--paper)}
.cnm-chip.cnm-loc{background:var(--ink);color:var(--paper)}

/* ============================================================
 * İki kolon
 * ========================================================== */
.cnm-cols{display:grid;grid-template-columns:1fr 360px;gap:26px;margin-top:22px;align-items:start}

/* Adaptif poster çerçevesi */
.cnm-designframe{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);display:grid;place-items:center;padding:18px;min-height:260px}
.cnm-designframe img{max-width:100%;max-height:560px;width:auto;object-fit:contain;border-radius:12px;box-shadow:0 10px 30px -12px rgba(0,0,0,.5)}
.cnm-poster-fallback{border-radius:12px;background:linear-gradient(135deg,#1f3358,var(--ink) 60%);color:#cdd6e6;display:grid;place-items:center;text-align:center;padding:42px 26px;width:100%;min-height:260px}
.cnm-poster-fallback .cnm-big{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:26px;color:#fff;margin-bottom:6px}
.cnm-poster-fallback small{opacity:.7;font-size:12px}

/* ============================================================
 * Bölüm başlıkları
 * ========================================================== */
section.cnm-block{margin:38px 0 0}
.cnm-kicker{font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:8px;display:flex;align-items:center;gap:8px}
h2.cnm-htitle{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:24px;letter-spacing:-.02em;margin-bottom:16px}

/* ============================================================
 * Video gömme
 * ========================================================== */
.cnm-video{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#000}
.cnm-video iframe,.cnm-video video{display:block;width:100%;aspect-ratio:16/9;border:0}

/* ============================================================
 * Galeri
 * ========================================================== */
.cnm-gal-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none}
.cnm-gal-track::-webkit-scrollbar{display:none}
.cnm-slide{scroll-snap-align:center;flex:0 0 70%;max-width:460px;border-radius:14px;border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow);background:var(--paper-2)}
.cnm-slide img{width:100%;height:280px;object-fit:cover}
.cnm-gal-nav{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}
.cnm-gal-nav button{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;font-size:17px;line-height:1;transition:.15s}
.cnm-gal-nav button:hover{background:var(--ink);color:var(--paper)}

/* ============================================================
 * Özellikler / Hizmetler grid'i (features taksonomisi)
 * ========================================================== */
.cnm-features{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.cnm-feature{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 15px;box-shadow:var(--shadow);font-size:14.5px;font-weight:500;transition:.15s}
.cnm-feature:hover{border-color:var(--accent)}
.cnm-feature .cnm-fi{flex:0 0 24px;width:24px;height:24px;border-radius:7px;background:rgba(14,124,91,.12);color:var(--verified);display:grid;place-items:center}
.cnm-feature .cnm-fi svg{width:15px;height:15px}

/* ============================================================
 * Zengin içerik
 * ========================================================== */
.cnm-rich{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;box-shadow:var(--shadow)}
.cnm-rich p{margin-bottom:13px;font-size:15.5px;color:#23314d}
.cnm-rich h2,.cnm-rich h3{font-family:'Bricolage Grotesque',sans-serif;color:var(--ink)}
.cnm-rich h2{font-size:21px;font-weight:800;margin:24px 0 10px}
.cnm-rich h3{font-weight:700;font-size:18px;margin:22px 0 9px}
.cnm-rich a{color:var(--brand);font-weight:600;border-bottom:1.5px solid var(--brand)}
.cnm-rich a:hover{background:rgba(36,88,255,.10)}
.cnm-rich ul,.cnm-rich ol{margin:0 0 13px 0;padding-left:0;list-style:none}
.cnm-rich ul li{position:relative;padding-left:20px;margin-bottom:7px;font-size:15px;color:#23314d}
.cnm-rich ul li::before{content:"";position:absolute;left:2px;top:10px;width:6px;height:6px;background:var(--accent);border-radius:2px;transform:rotate(45deg)}
.cnm-rich ol{list-style:decimal;padding-left:20px}
.cnm-rich ol li{margin-bottom:7px;font-size:15px;color:#23314d}
.cnm-rich img{border-radius:12px;margin:12px 0}
.cnm-rich blockquote{border-left:3px solid var(--accent);padding:6px 0 6px 16px;margin:14px 0;color:var(--ink-soft);font-style:italic}

/* SSS akordeon */
.cnm-faq{margin-top:6px}
.cnm-faq details{border-top:1px solid var(--line);padding:13px 0}
.cnm-faq details summary{font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:15.5px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.cnm-faq details summary::-webkit-details-marker{display:none}
.cnm-faq details summary::after{content:"+";color:var(--accent-deep);font-size:21px;line-height:1}
.cnm-faq details[open] summary::after{content:"–"}
.cnm-faq details p{margin:9px 0 0;font-size:14.5px;color:var(--ink-soft)}

/* Benzer aramalar chip satırı */
.cnm-searches{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;align-items:center}
.cnm-searches .cnm-sl{font-size:13px;color:var(--ink-soft);font-weight:600}
.cnm-searches a{font-size:13px;font-weight:600;border:1px solid var(--line);padding:7px 13px;border-radius:999px;color:var(--ink-soft);transition:.15s}
.cnm-searches a:hover{border-color:var(--accent);color:var(--accent-deep)}

/* ============================================================
 * SAĞ aksiyon kartı
 * ========================================================== */
.cnm-side{position:sticky;top:80px;display:flex;flex-direction:column;gap:14px}
.cnm-acard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}
.cnm-open-now{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;margin-bottom:4px}
.cnm-open-now.cnm-open{color:var(--verified)}
.cnm-open-now.cnm-closed{color:var(--ink-soft)}
.cnm-open-now .cnm-g{width:9px;height:9px;border-radius:50%;background:currentColor;flex:0 0 9px}
.cnm-open .cnm-g{background:var(--verified);animation:tdPulse 1.8s infinite}
@keyframes tdPulse{0%,100%{box-shadow:0 0 0 0 rgba(14,124,91,.5)}70%{box-shadow:0 0 0 7px rgba(14,124,91,0)}}
.cnm-hours-line{font-size:13px;color:var(--ink-soft);margin-bottom:6px}
.cnm-hours-toggle{background:none;border:0;color:var(--accent-deep);font-size:12.5px;font-weight:600;cursor:pointer;padding:0 0 12px;text-align:left}
.cnm-week{margin:0 0 12px;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.cnm-week .cnm-wrow{display:flex;justify-content:space-between;padding:7px 11px;font-size:12.5px;border-bottom:1px solid var(--line)}
.cnm-week .cnm-wrow:last-child{border-bottom:0}
.cnm-week .cnm-wrow.cnm-wtoday{background:rgba(229,130,31,.08);font-weight:700;color:var(--ink)}
.cnm-week .cnm-wd{color:var(--ink-soft)}

.cnm-btn{display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:12px;font-weight:600;font-size:14.5px;border:1.5px solid var(--ink);color:var(--ink);background:transparent;transition:.16s;margin-bottom:8px;width:100%}
.cnm-btn:hover{background:var(--ink);color:var(--paper);transform:translateY(-1px)}
.cnm-btn .cnm-lbl{display:flex;flex-direction:column}
.cnm-btn .cnm-lbl small{font-weight:500;font-size:11px;opacity:.6;line-height:1.2}
.cnm-btn svg{flex:0 0 18px}
.cnm-btn.cnm-wa{border-color:var(--wa);color:#0c7a38}
.cnm-btn.cnm-wa:hover{background:var(--wa);color:#fff}
.cnm-btn.cnm-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.cnm-btn.cnm-primary:hover{background:var(--accent-deep)}
.cnm-divider{height:1px;background:var(--line);margin:10px 0 12px}
.cnm-grp-lbl{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin:6px 0 8px}

/* Leaflet harita */
#cnm-map{height:180px;border-radius:12px;overflow:hidden;border:1px solid var(--line);margin-top:8px;z-index:0}
.cnm-map-note{font-size:11px;color:var(--ink-soft);margin-top:6px;text-align:center}

/* Sosyal */
.cnm-social{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.cnm-social a{flex:1 0 38px;height:38px;border-radius:10px;border:1px solid var(--line);display:grid;place-items:center;color:var(--ink-soft);transition:.16s}
.cnm-social a:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* ============================================================
 * Yakın firmalar + arşiv kartları
 * ========================================================== */
.cnm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cnm-rcard{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.16s;box-shadow:var(--shadow);display:flex;flex-direction:column}
.cnm-rcard:hover{transform:translateY(-3px);border-color:var(--accent)}
.cnm-rcard-media{aspect-ratio:4/3;overflow:hidden;background:var(--paper-2)}
.cnm-rcard-media img{width:100%;height:100%;object-fit:cover}
.cnm-rcard-body{padding:15px 16px}
.cnm-rv{font-size:11px;font-weight:700;color:var(--verified);margin-bottom:7px;display:flex;align-items:center;gap:5px}
.cnm-rv-dot{width:7px;height:7px;border-radius:50%;background:var(--verified)}
.cnm-rcard h3,.cnm-rcard h4{font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:15.5px;margin-bottom:3px;color:var(--ink)}
.cnm-rcard span{font-size:12.5px;color:var(--ink-soft)}

/* ============================================================
 * Sayfa / yazı (page.php, single.php)
 * ========================================================== */
.cnm-page{padding:28px 0 10px;max-width:820px}
.cnm-page .cnm-rich{margin-top:6px}
.cnm-page-media{margin:14px 0 22px;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.cnm-page-media img{display:block;width:100%;height:auto}
.cnm-post-meta{color:var(--ink-soft);font-size:14px;margin-top:8px}
.cnm-post-meta a{color:var(--accent-deep);font-weight:600}
.cnm-post-tags{margin:26px 0 4px;display:flex;flex-wrap:wrap;gap:8px}
.cnm-post-tags a{font-size:12.5px;font-weight:600;color:var(--ink-soft);border:1px solid var(--line);border-radius:999px;padding:5px 12px}
.cnm-post-tags a:hover{border-color:var(--accent);color:var(--accent-deep)}

/* Şehir / kategori hub kartları (page-sehirler.php, page-kategoriler.php) */
.cnm-term-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin:18px 0 36px}
.cnm-term-card{display:flex;flex-direction:column;gap:4px;padding:16px 18px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);transition:transform .15s ease,border-color .15s ease}
.cnm-term-card:hover{transform:translateY(-2px);border-color:var(--accent)}
.cnm-term-name{font-family:"Bricolage Grotesque",Georgia,serif;font-weight:700;font-size:17px;color:var(--ink);line-height:1.25}
.cnm-term-count{font-size:13px;font-weight:600;color:var(--accent-deep)}
.cnm-term-grid--img{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.cnm-term-card.has-thumb{padding:0;gap:0;overflow:hidden}
.cnm-term-thumb{display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:var(--paper-2)}
.cnm-term-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.cnm-term-card.has-thumb:hover .cnm-term-thumb img{transform:scale(1.05)}
.cnm-term-thumb--ph{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1f3358,var(--ink) 70%)}
.cnm-term-thumb--ph span{font-family:"Bricolage Grotesque",Georgia,serif;font-weight:700;font-size:34px;color:#fff;opacity:.92}
.cnm-term-card.has-thumb .cnm-term-name{padding:11px 13px;font-size:15.5px}

/* ============================================================
 * Ana sayfa (front-page.php)
 * ========================================================== */
.cnm-hero{text-align:center;padding:48px 0 18px;max-width:760px;margin:0 auto}
.cnm-hero h1{font-family:"Bricolage Grotesque",Georgia,serif;font-weight:700;color:var(--ink);font-size:clamp(30px,5vw,46px);line-height:1.1;margin:0 0 12px}
.cnm-hero p{color:var(--ink-soft);font-size:17px;line-height:1.55;margin:0 auto 22px;max-width:620px}
.cnm-hero--bg{max-width:none;margin:18px 0 8px;padding:60px 24px 64px;border-radius:var(--radius);background-size:cover;background-position:center;box-shadow:var(--shadow)}
.cnm-hero--bg h1{color:#fff}
.cnm-hero--bg p{color:#e7ecf5}
.cnm-hero-search{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:760px;margin:0 auto}
.cnm-hero-search input[type=search]{flex:1 1 220px;min-width:0;padding:13px 15px;border:1.5px solid var(--line);border-radius:11px;font:inherit;background:#fff}
.cnm-hero-search select{flex:0 1 175px;min-width:0;max-width:100%;padding:13px 12px;border:1.5px solid var(--line);border-radius:11px;font:inherit;background:#fff;color:var(--ink);cursor:pointer}
.cnm-hero-search button{padding:13px 26px;border:0;border-radius:11px;background:var(--brand);color:#fff;font-family:"Bricolage Grotesque",sans-serif;font-weight:600;font-size:15px;cursor:pointer}
.cnm-hero-search button:hover{background:var(--brand-deep)}
.cnm-home-sec{margin:34px 0}
.cnm-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:0 0 14px;flex-wrap:wrap}
.cnm-sec-head h2{font-family:"Bricolage Grotesque",Georgia,serif;font-weight:700;color:var(--ink);font-size:24px;margin:0}
.cnm-sec-link{font-weight:600;color:var(--brand);font-size:14px;white-space:nowrap}
.cnm-sec-link:hover{text-decoration:underline}
.cnm-sort{display:flex;gap:8px;margin:0 0 14px;flex-wrap:wrap}
.cnm-sort-btn{font-family:"Hanken Grotesk",sans-serif;font-size:13px;font-weight:600;color:var(--ink-soft);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:7px 14px;cursor:pointer;transition:all .15s ease}
.cnm-sort-btn:hover{border-color:var(--accent)}
.cnm-sort-btn.is-active{background:var(--brand);color:#fff;border-color:var(--brand)}
.cnm-cta-band{margin:40px 0 8px;padding:34px 28px;text-align:center;background:#15233D;border-radius:var(--radius);color:#fff}
.cnm-cta-band h2{font-family:"Bricolage Grotesque",Georgia,serif;font-weight:700;font-size:24px;margin:0 0 10px;color:#fff}
.cnm-cta-band p{color:#cfd6e4;font-size:15px;line-height:1.55;max-width:620px;margin:0 auto 18px}
.cnm-cta-btn{display:inline-block;font-family:"Bricolage Grotesque",sans-serif;font-weight:600;background:var(--brand);color:#fff;padding:12px 26px;border-radius:999px;font-size:15px}
.cnm-cta-btn:hover{background:var(--brand-deep);color:#fff}
@media(max-width:560px){.cnm-hero--bg{padding:40px 16px 44px}.cnm-cta-band{padding:26px 18px}.cnm-hero-search input[type=search],.cnm-hero-search select,.cnm-hero-search button{flex:1 1 100%}}

/* ============================================================
 * Arşiv / arama / 404
 * ========================================================== */
.cnm-archive-head{padding:28px 0 6px}
.cnm-archive-head h1{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:32px;letter-spacing:-.02em}
.cnm-archive-head p{color:var(--ink-soft);margin-top:6px}
.cnm-archive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;margin:22px 0 10px}
.cnm-pagination{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 0}
.cnm-pagination .page-numbers{padding:8px 13px;border:1px solid var(--line);border-radius:9px;font-weight:600;font-size:14px;color:var(--ink-soft)}
.cnm-pagination .page-numbers.current,.cnm-pagination .page-numbers:hover{background:var(--brand);color:#fff;border-color:var(--brand)}
.cnm-empty{background:var(--card);border:1px dashed var(--line);border-radius:var(--radius);padding:40px;text-align:center;color:var(--ink-soft);margin:24px 0}
.cnm-searchform{display:flex;gap:8px;margin-top:18px;max-width:420px}
.cnm-searchform input[type=search]{flex:1;padding:11px 14px;border:1.5px solid var(--line);border-radius:10px;font:inherit;background:#fff}
.cnm-searchform button{padding:11px 18px;border:0;border-radius:10px;background:var(--brand);color:#fff;font-weight:600;cursor:pointer}
.cnm-404{padding:60px 0;text-align:center}
.cnm-404 h1{font-family:'Bricolage Grotesque',sans-serif;font-size:84px;font-weight:800;color:var(--accent)}

/* ============================================================
 * Not kutusu (curated uyarı)
 * ========================================================== */
.cnm-note{margin:20px auto 0;padding:11px 16px;border:1px dashed var(--accent);border-radius:12px;background:rgba(229,130,31,.06);font-size:13px;color:var(--accent-deep)}

/* ============================================================
 * Mobil yapışkan alt iletişim çubuğu
 * ========================================================== */
.cnm-mobilebar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;gap:1px;background:var(--line);border-top:1px solid var(--line);box-shadow:0 -8px 24px -16px rgba(21,35,61,.4)}
.cnm-mobilebar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px 6px;background:var(--card);color:var(--ink);font-size:11px;font-weight:600}
.cnm-mobilebar a.cnm-mb-call{color:var(--accent-deep)}
.cnm-mobilebar a.cnm-mb-wa{color:#0c7a38}
.cnm-mobilebar svg{width:20px;height:20px}

/* ============================================================
 * Footer
 * ========================================================== */
footer.cnm-footer{border-top:1px solid var(--line);margin-top:54px;background:#15233D;color:#c9d2e2}
.cnm-f-in{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding:40px 0 26px}
.cnm-f-brand .cnm-bb{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:20px;color:#fff;margin-bottom:10px;display:flex;align-items:center;gap:8px;text-decoration:none}
.cnm-f-brand a.cnm-bb:hover{opacity:.85}
.cnm-f-brand p{font-size:13px;line-height:1.6;color:#9aa6bd;max-width:300px}
.cnm-f-col h3,.cnm-f-col h5{font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:13px;color:#fff;letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px}
.cnm-f-col a{display:block;font-size:13.5px;color:#aeb8cd;margin-bottom:8px}
.cnm-f-col a:hover{color:#fff}
.cnm-f-col ul{list-style:none}
.cnm-disclaimer{border-top:1px solid rgba(255,255,255,.12);padding:18px 0 30px;font-size:12px;line-height:1.7;color:#8794ad;max-width:1000px;margin:0 auto;text-align:center}
.cnm-copy{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:14px 0;border-top:1px solid rgba(255,255,255,.12);font-size:12px;color:#8794ad}

/* ============================================================
 * Duyarlı
 * ========================================================== */
@media(max-width:880px){
  .cnm-cols{grid-template-columns:1fr}
  .cnm-side{position:static}
  h1.cnm-name{font-size:30px}
  .cnm-grid{grid-template-columns:1fr 1fr}
  .cnm-slide{flex:0 0 86%}
  .cnm-f-in{grid-template-columns:1fr 1fr}
  .cnm-nav ul{display:none}
  .cnm-links{display:none}
  .cnm-nav .cnm-cta{display:none}
  .cnm-burger{display:inline-flex}
  .cnm-designframe{padding:8px;min-height:auto}
  .cnm-designframe img{width:100%;max-height:none}
  body.cnm-single-listing{padding-bottom:64px}
  body.cnm-single-listing .cnm-mobilebar{display:flex}
}
@media(max-width:560px){
  .cnm-grid{grid-template-columns:1fr}
  .cnm-f-in{grid-template-columns:1fr}
  h1.cnm-name{font-size:26px}
}

@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
  .cnm-open .cnm-g{animation:none}
  .cnm-btn:hover,.cnm-rcard:hover{transform:none}
}

/* ---- Şehir (location) sayfası ---- */
.cnm-cityhead{margin:8px 0 18px;padding:30px 26px;border-radius:var(--radius);background:var(--paper-2);box-shadow:var(--shadow)}
.cnm-cityhead.has-img{background-size:cover;background-position:center;padding:46px 28px}
.cnm-cityhead-in{max-width:760px}
.cnm-city-tag{display:inline-block;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;color:var(--accent-deep);margin-bottom:8px}
.cnm-cityhead h1{font-family:'Bricolage Grotesque',Georgia,serif;font-weight:700;font-size:clamp(26px,4vw,40px);line-height:1.1;color:var(--ink);margin:0 0 8px}
.cnm-cityhead p{color:var(--ink-soft);font-size:15.5px;line-height:1.55;margin:0;max-width:620px}
.cnm-cityhead.has-img .cnm-city-tag{color:#ffd9a8}
.cnm-cityhead.has-img h1{color:#fff}
.cnm-cityhead.has-img p{color:#e7ecf5}
.cnm-wx{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:var(--shadow);font-size:14px;color:var(--ink)}
.cnm-wx-ico{font-size:18px;line-height:1}
.cnm-wx strong{font-family:'Bricolage Grotesque',sans-serif;font-size:16px}
.cnm-wx-desc{color:var(--ink-soft)}
.cnm-empty{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px;text-align:center;color:var(--ink-soft);box-shadow:var(--shadow)}
.cnm-citynews{margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}
@media(max-width:560px){.cnm-cityhead.has-img{padding:34px 18px}.cnm-cityhead,.cnm-cityhead{padding:24px 18px}}

/* ===== Premium pass: şerit / tarih / gece-gündüz / carousel / haberdar / koyu tema ===== */
body{transition:background-color .2s ease,color .2s ease}
.cnm-logo{display:block;flex:none}

/* Üst kayan şerit */
.cnm-ticker{display:flex;align-items:center;background:#15233D;color:#fff;height:38px;overflow:hidden}
.cnm-ticker-label{flex:none;background:var(--accent);color:#fff;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:11px;letter-spacing:.09em;padding:0 14px;height:100%;display:flex;align-items:center}
.cnm-ticker-vp{flex:1;overflow:hidden;position:relative}
.cnm-ticker-track{display:inline-flex;align-items:center;white-space:nowrap;animation:cnm-marquee 45s linear infinite;will-change:transform}
.cnm-ticker:hover .cnm-ticker-track{animation-play-state:paused}
.cnm-ticker-item{color:#d6e0f3;padding:0 16px 0 28px;position:relative;font-size:13px;font-weight:500}
.cnm-ticker-item::before{content:"";position:absolute;left:14px;top:50%;width:4px;height:4px;border-radius:50%;background:var(--accent);transform:translateY(-50%)}
.cnm-ticker-item:hover{color:#fff}
@keyframes cnm-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Header araçları */
.cnm-nav{display:flex;align-items:center;gap:22px}
.cnm-tools{display:flex;align-items:center;gap:10px}
.cnm-date{font-size:13px;color:var(--ink-soft);white-space:nowrap;font-variant-numeric:tabular-nums}
.cnm-theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;transition:.15s}
.cnm-theme-toggle:hover{border-color:var(--brand);color:var(--brand)}
.cnm-theme-toggle .ic-sun{display:none}
html[data-theme="dark"] .cnm-theme-toggle .ic-moon{display:none}
html[data-theme="dark"] .cnm-theme-toggle .ic-sun{display:block}

/* Carousel (tek satır kaydırmalı) */
.cnm-carousel{position:relative}
.cnm-carousel-track{display:flex;gap:14px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x proximity;padding:4px 2px 12px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.cnm-carousel-track::-webkit-scrollbar{height:7px}
.cnm-carousel-track::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}
.cnm-carousel-track::-webkit-scrollbar-track{background:transparent}
.cnm-carousel-track>*{flex:0 0 auto;scroll-snap-align:start}
.cnm-term-row>.cnm-term-card{width:152px}
.cnm-listing-row>.cnm-rcard{width:270px}
.cnm-cnav{position:absolute;top:46%;transform:translateY(-50%);z-index:3;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:22px;line-height:1;cursor:pointer;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center}
.cnm-cnav:hover{color:var(--brand);border-color:var(--brand)}
.cnm-cnav[disabled]{opacity:.32;cursor:default;pointer-events:none}
.cnm-cprev{left:-12px}.cnm-cnext{right:-12px}

/* Footer: Firma Öner + Haberdar Ol */
.cnm-f-cta{display:inline-block;margin-top:14px;background:var(--brand);color:#fff;font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:14px;padding:10px 22px;border-radius:999px}
.cnm-f-cta:hover{background:var(--brand-deep);color:#fff}
.cnm-hab{display:flex;flex-wrap:wrap;align-items:center;gap:16px 30px;justify-content:space-between;padding:34px 0 26px;margin-bottom:26px;border-bottom:1px solid rgba(255,255,255,.12)}
.cnm-hab-text .cnm-hab-h{font-family:'Bricolage Grotesque',sans-serif;font-weight:700;color:#fff;font-size:20px;line-height:1.25;margin:0 0 4px}
.cnm-hab-text p{color:#9fb0c8;font-size:14px;margin:0;max-width:430px}
.cnm-hab-form{flex:1 1 360px;max-width:470px}
.cnm-hab-row{display:flex;gap:8px;flex-wrap:wrap}
.cnm-hab-row select,.cnm-hab-row input{padding:11px 12px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:#16202e;color:#fff;font:inherit}
.cnm-hab-row select{flex:0 0 128px}
.cnm-hab-row input{flex:1 1 160px;min-width:0}
.cnm-hab-row button{flex:0 0 auto;padding:11px 20px;border:0;border-radius:10px;background:var(--wa);color:#fff;font-family:'Bricolage Grotesque',sans-serif;font-weight:600;cursor:pointer}
.cnm-hab-row button:hover{filter:brightness(1.06)}
.cnm-hab-kvkk{display:block;margin-top:9px;color:#8794ad;font-size:12px}
.cnm-hab-kvkk a{color:#cdd8ec;text-decoration:underline}
.cnm-hab-ok{color:#bfe9cf;background:rgba(31,175,84,.14);border:1px solid rgba(31,175,84,.4);padding:13px 16px;border-radius:10px;font-size:14px}
.cnm-hab-err{color:#f3b6b6;font-size:13px;margin-top:6px}

/* Telif: ortalı (mobil + masaüstü) */
.cnm-copy{text-align:center;justify-content:center}

/* Koyu tema paleti */
html[data-theme="dark"]{
  --paper:#0f1622; --paper-2:#162130; --ink:#e8edf6; --ink-soft:#9fb0c8;
  --line:#26313f; --card:#161f2b;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 14px 30px -16px rgba(0,0,0,.6);
}
html[data-theme="dark"] body{background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.04) 1px,transparent 0)}

@media(max-width:880px){
  .cnm-date{display:none}
  .cnm-cnav{display:none}
  .cnm-hab{flex-direction:column;align-items:stretch;text-align:center;justify-content:flex-start}
  .cnm-hab-text p{max-width:none}
  .cnm-hab-form{flex:0 0 auto;max-width:none}
  .cnm-hab-row select{flex:1 1 100%}
}

/* ===== v0.1.9 düzeltmeleri: gece modu header + mobil carousel + footer boşluk ===== */
/* Gece modunda header (sabit açık zemin ters dönmesin) */
html[data-theme="dark"] header.cnm-top{background:rgba(15,22,34,.86);border-bottom-color:var(--line)}
html[data-theme="dark"] .cnm-cityhead{background:var(--paper-2)}

/* Carousel tek satır garanti (mobil dahil) */
.cnm-carousel-track{flex-wrap:nowrap}
@media(max-width:560px){
  .cnm-term-row>.cnm-term-card{width:140px}
  .cnm-listing-row>.cnm-rcard{width:236px}
  .cnm-carousel-track{scroll-snap-type:x mandatory}
}

/* Footer Haberdar bandı: mobilde sıkı, gereksiz boşluk yok */
@media(max-width:880px){
  .cnm-hab{padding:26px 0 20px;margin-bottom:16px}
  .cnm-footer .cnm-f-in{padding-top:20px}
}

/* ===== Şehir sayfası açılır rehber bloğu ===== */
.cnm-cityinfo{background:var(--card);border:1px solid var(--line);border-radius:14px;margin:0 0 22px;box-shadow:var(--shadow);overflow:hidden}
.cnm-cityinfo>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;color:var(--ink);font-size:16px}
.cnm-cityinfo>summary::-webkit-details-marker{display:none}
.cnm-cityinfo>summary:hover{color:var(--brand)}
.cnm-ci-arrow{transition:transform .2s ease;font-size:18px;color:var(--ink-soft)}
.cnm-cityinfo[open]>summary .cnm-ci-arrow{transform:rotate(180deg)}
.cnm-cityinfo[open]>summary{border-bottom:1px solid var(--line)}
.cnm-cityinfo-body{padding:18px 20px 22px}
.cnm-ci-about{margin-bottom:16px}
.cnm-ci-block h3{font-family:'Bricolage Grotesque',sans-serif;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-deep);margin:0 0 8px}
.cnm-ci-about p{color:var(--ink-soft);line-height:1.6;margin:0}
.cnm-ci-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 28px}
.cnm-ci-list{margin:0;padding-left:18px;color:var(--ink-soft);line-height:1.7}
.cnm-ci-kv{list-style:none;margin:0;padding:0}
.cnm-ci-kv li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dashed var(--line);font-size:14px}
.cnm-ci-kv li:last-child{border-bottom:0}
.cnm-ci-kv span{color:var(--ink);font-weight:500}
.cnm-ci-kv a{color:var(--brand);font-weight:600;white-space:nowrap}
.cnm-ci-kv em{color:var(--ink-soft);font-style:normal;font-size:13px}
.cnm-ci-soon{color:var(--ink-soft);font-size:14px;font-style:italic;margin:0}
@media(max-width:560px){.cnm-ci-grid{grid-template-columns:1fr}}

/* Nöbetçi eczane listesi (şehir rehberi içinde) */
.cnm-ci-ecz{grid-column:1/-1}
.cnm-ci-ecz-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:0 24px}
.cnm-ci-ecz-list li{padding:9px 0;border-bottom:1px dashed var(--line);font-size:14px}
.cnm-ci-ecz-list strong{display:block;color:var(--ink)}
.cnm-ci-ecz-adr{display:block;color:var(--ink-soft);font-size:13px;margin:2px 0 5px}
.cnm-ci-ecz-act a{color:var(--brand);font-weight:600;font-size:13px;margin-right:14px}
.cnm-ci-note{color:var(--ink-soft);font-size:12px;margin:12px 0 0;font-style:italic}
@media(max-width:560px){.cnm-ci-ecz-list{grid-template-columns:1fr}}

/* Paylaş butonu (diskret) */
.cnm-share{margin-top:14px;text-align:center}
.cnm-share-btn{display:inline-flex;align-items:center;gap:7px;background:transparent;border:1px solid var(--line);color:var(--ink-soft);font-family:'Hanken Grotesk',sans-serif;font-weight:600;font-size:13px;padding:8px 16px;border-radius:999px;cursor:pointer;transition:border-color .15s,color .15s}
.cnm-share-btn:hover{border-color:var(--brand);color:var(--brand)}
.cnm-share-btn svg{width:15px;height:15px}
.cnm-share-btn{width:auto;max-width:100%}

/* ---- Category cards on the home page ---- */
.cnm-term-card .cnm-term-body{
	display:block;
	padding:10px 12px 12px;
}
.cnm-term-card .cnm-term-name{
	display:block;
	font-weight:700;
	line-height:1.25;
	margin-bottom:2px;
}
.cnm-term-card .cnm-term-count{
	display:block;
	font-size:13px;
	opacity:.7;
}

/* ---- Front-end submission form ---- */
.cnm-submit-form{
	max-width:560px;
	margin:24px 0 8px;
}
.cnm-submit-form p{
	margin:0 0 16px;
}
.cnm-submit-form label{
	display:block;
	font-weight:600;
	font-size:14px;
	margin-bottom:6px;
}
.cnm-submit-form input[type="text"],
.cnm-submit-form input[type="email"],
.cnm-submit-form input[type="url"],
.cnm-submit-form select,
.cnm-submit-form textarea{
	width:100%;
	padding:11px 13px;
	border:1px solid var(--cnm-line,#dcd8cd);
	border-radius:10px;
	background:#fff;
	font:inherit;
	font-size:15px;
	color:inherit;
	box-sizing:border-box;
}
.cnm-submit-form textarea{
	min-height:120px;
	resize:vertical;
}
.cnm-submit-form input:focus,
.cnm-submit-form select:focus,
.cnm-submit-form textarea:focus{
	outline:none;
	border-color:var(--cnm-accent,#e5821f);
	box-shadow:0 0 0 3px rgba(229,130,31,.15);
}
.cnm-submit-form button[type="submit"]{
	display:inline-block;
	padding:13px 28px;
	border:none;
	border-radius:999px;
	background:var(--cnm-accent,#e5821f);
	color:#fff;
	font-weight:700;
	font-size:15px;
	cursor:pointer;
}
.cnm-submit-form button[type="submit"]:hover{
	filter:brightness(1.06);
}
.cnm-submit-ok{
	padding:20px 24px;
	border-radius:14px;
	background:#eef8f0;
	border:1px solid #cfe8d5;
	margin:20px 0;
}
.cnm-submit-ok h3{
	margin:0 0 8px;
}
.cnm-submit-err{
	padding:12px 16px;
	border-radius:10px;
	background:#fdeceb;
	border:1px solid #f5c6c2;
	margin:12px 0;
}

/* ---- Submission success screen ---- */
.cnm-submit-done{
	max-width:620px;
	margin:32px auto;
	padding:44px 40px 40px;
	background:#fff;
	border:1px solid var(--cnm-line,#e7e2d6);
	border-radius:20px;
	text-align:center;
	box-shadow:0 2px 14px rgba(21,35,61,.05);
}
.cnm-submit-check{
	width:64px;
	height:64px;
	margin:0 auto 20px;
	border-radius:50%;
	background:#e9f6ec;
	color:#1e9e4a;
	display:flex;
	align-items:center;
	justify-content:center;
}
.cnm-submit-check svg{
	width:30px;
	height:30px;
}
.cnm-submit-done h2{
	margin:0 0 10px;
	font-size:26px;
	line-height:1.25;
}
.cnm-submit-lead{
	margin:0 auto 28px;
	max-width:440px;
	color:#5c6472;
	line-height:1.6;
}
.cnm-submit-steps{
	list-style:none;
	margin:0 0 30px;
	padding:24px 0 0;
	border-top:1px solid var(--cnm-line,#eee8dc);
	text-align:left;
}
.cnm-submit-steps li{
	display:flex;
	gap:14px;
	align-items:flex-start;
	margin:0 0 18px;
	font-size:14px;
	line-height:1.55;
}
.cnm-submit-steps li:last-child{
	margin-bottom:0;
}
.cnm-submit-steps li span{
	flex:0 0 26px;
	width:26px;
	height:26px;
	border-radius:50%;
	background:var(--cnm-ink,#15233d);
	color:#fff;
	font-size:13px;
	font-weight:700;
	display:flex;
	align-items:center;
	justify-content:center;
}
.cnm-submit-steps strong{
	font-weight:700;
}
.cnm-submit-actions{
	display:flex;
	gap:10px;
	justify-content:center;
	flex-wrap:wrap;
}
.cnm-btn-primary,
.cnm-btn-ghost{
	display:inline-block;
	padding:12px 24px;
	border-radius:999px;
	font-weight:700;
	font-size:15px;
	text-decoration:none;
}
.cnm-btn-primary{
	background:var(--cnm-ink,#15233d);
	color:#fff;
}
.cnm-btn-primary:hover{
	filter:brightness(1.15);
}
.cnm-btn-ghost{
	background:transparent;
	color:var(--cnm-ink,#15233d);
	border:1px solid var(--cnm-line,#d8d2c4);
}
.cnm-btn-ghost:hover{
	background:#f6f3ea;
}
@media (max-width:560px){
	.cnm-submit-done{ padding:32px 22px; }
	.cnm-submit-done h2{ font-size:22px; }
}

/* CNM: header date hidden */
.cnm-date{display:none!important}

/* CNM: listing card v2 */
.cnm-rcard--listing{position:relative}
.cnm-rcard--listing .cnm-rcard-body{display:flex;flex-direction:column;gap:5px;height:100%}
.cnm-rcard--listing h3{margin-bottom:0}
.cnm-rcard-link{display:block;color:inherit}
.cnm-rcard-link::after{content:"";position:absolute;inset:0;z-index:1}
.cnm-rcard-meta{font-size:12.5px;color:var(--ink-soft)}
.cnm-rcard-call{position:relative;z-index:2;display:inline-flex;align-items:center;gap:7px;margin-top:auto;padding-top:10px;font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:13.5px;color:var(--accent);white-space:nowrap}
.cnm-rcard-call:hover{color:var(--accent-deep);text-decoration:underline}
.cnm-rcard-call svg{flex:none}
@media(hover:none){.cnm-rcard-call{padding:9px 14px;margin-top:10px;border:1px solid var(--accent);border-radius:999px;align-self:flex-start}}

/* CNM: tiles v2 */
.cnm-hero-scope{margin-top:6px;font-size:14px;opacity:.82}
.cnm-term-thumb--stone{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:
  linear-gradient(135deg,rgba(255,255,255,.07) 0%,transparent 42%),
  linear-gradient(28deg,rgba(255,255,255,.05) 0%,transparent 30%),
  radial-gradient(120% 90% at 22% 18%,#22334f 0%,#15233d 58%,#101a2e 100%)}
.cnm-term-thumb--stone[data-v="1"]{background:linear-gradient(200deg,rgba(255,255,255,.06) 0%,transparent 38%),radial-gradient(120% 90% at 78% 22%,#24354f 0%,#15233d 60%,#0f1929 100%)}
.cnm-term-thumb--stone[data-v="2"]{background:linear-gradient(70deg,rgba(255,255,255,.05) 0%,transparent 44%),radial-gradient(130% 95% at 40% 80%,#243449 0%,#15233d 55%,#111c30 100%)}
.cnm-term-thumb--stone[data-v="3"]{background:linear-gradient(320deg,rgba(255,255,255,.06) 0%,transparent 36%),radial-gradient(110% 90% at 60% 30%,#26374e 0%,#15233d 62%,#0f1a2c 100%)}
.cnm-term-mark{position:absolute;right:12px;bottom:6px;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:52px;line-height:1;color:rgba(255,255,255,.09)}
.cnm-term-body{display:block;padding:13px 15px 15px}
.cnm-term-name{display:block;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:15px;color:var(--ink)}
.cnm-term-count{display:block;margin-top:3px;font-size:12.5px;color:var(--accent);font-weight:600}
@media(min-width:881px){
  .cnm-home-sec .cnm-carousel-track.cnm-term-row{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;overflow:visible;padding-bottom:2px}
  .cnm-home-sec .cnm-carousel-track.cnm-term-row>*{width:auto}
  .cnm-home-sec .cnm-carousel-track.cnm-listing-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;overflow:visible;padding-bottom:2px}
  .cnm-home-sec .cnm-carousel-track.cnm-listing-row>.cnm-rcard{width:auto}
  .cnm-home-sec .cnm-cnav{display:none}
}

/* CNM: tiles v3 */
.cnm-term-thumb--stone{
  background:
    repeating-linear-gradient(115deg,rgba(255,255,255,.055) 0 1px,transparent 1px 9px),
    linear-gradient(142deg,rgba(255,255,255,.10) 0%,transparent 46%),
    radial-gradient(125% 95% at 20% 16%,#2b3f5e 0%,#1a2a45 52%,#101a2e 100%)}
.cnm-term-thumb--stone[data-v="1"]{
  background:
    repeating-linear-gradient(58deg,rgba(255,255,255,.05) 0 1px,transparent 1px 11px),
    linear-gradient(205deg,rgba(255,255,255,.09) 0%,transparent 42%),
    radial-gradient(125% 95% at 76% 20%,#2d4260 0%,#1a2a45 56%,#0f1929 100%)}
.cnm-term-thumb--stone[data-v="2"]{
  background:
    repeating-linear-gradient(160deg,rgba(255,255,255,.05) 0 1px,transparent 1px 10px),
    linear-gradient(72deg,rgba(255,255,255,.08) 0%,transparent 48%),
    radial-gradient(130% 98% at 38% 78%,#2a3d59 0%,#1a2a45 54%,#111c30 100%)}
.cnm-term-thumb--stone[data-v="3"]{
  background:
    repeating-linear-gradient(92deg,rgba(255,255,255,.045) 0 1px,transparent 1px 12px),
    linear-gradient(318deg,rgba(255,255,255,.10) 0%,transparent 40%),
    radial-gradient(118% 92% at 58% 28%,#304665 0%,#1a2a45 58%,#0f1a2c 100%)}
.cnm-term-mark{color:rgba(255,255,255,.14)}

/* Kart hizasi */
.cnm-term-card{display:flex;flex-direction:column;height:100%}
.cnm-term-body{display:flex;flex-direction:column;flex:1 1 auto}
.cnm-term-count{margin-top:auto;padding-top:4px}
@media(min-width:881px){
  .cnm-home-sec .cnm-carousel-track.cnm-term-row{align-items:stretch}
  .cnm-home-sec .cnm-carousel-track.cnm-listing-row{align-items:stretch}
}

/* CNM: city page A */
.cnm-city-count{margin-top:8px;font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:14px;opacity:.9}
.cnm-archive-grid{align-items:stretch}
.cnm-archive-grid>.cnm-rcard{height:100%}


/* CNM: city page B */
.cnm-catchips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 6px}
.cnm-chipf{display:inline-flex;align-items:center;gap:6px;padding:8px 15px;border:1px solid var(--line);border-radius:999px;background:var(--card);font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:13.5px;color:var(--ink);transition:.15s}
.cnm-chipf span{font-weight:500;font-size:12px;color:var(--ink-soft)}
.cnm-chipf:hover{border-color:var(--accent);color:var(--accent)}
.cnm-chipf.is-active{background:var(--accent);border-color:var(--accent);color:#fff}
.cnm-chipf.is-active span{color:rgba(255,255,255,.75)}
.cnm-nearby{margin-top:38px}
.cnm-nearby-row{display:flex;flex-wrap:wrap;gap:8px}
.cnm-nearby-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;background:var(--card);font-size:13.5px;color:var(--ink);transition:.15s}
.cnm-nearby-chip span{font-size:12px;color:var(--ink-soft)}
.cnm-nearby-chip:hover{border-color:var(--accent);color:var(--accent)}
.cnm-nearby-chip.is-all{font-family:'Bricolage Grotesque',sans-serif;font-weight:600;color:var(--accent);border-style:dashed}


/* CNM: city page C */
.cnm-catchips{margin:4px 0 18px}
.cnm-sec-head+.cnm-catchips{margin-top:0}

/* CNM: facets A */
.cnm-facets .cnm-tagrow{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:4px;
}
.cnm-facets .cnm-tag{
	display:inline-block;
	padding:7px 13px;
	border:1px solid var(--cnm-line, rgba(21,35,61,.14));
	border-radius:999px;
	background:rgba(166,90,46,.06);
	color:var(--ink, #15233D);
	font-size:.88rem;
	line-height:1.25;
	letter-spacing:.005em;
}
@media (max-width:600px){
	.cnm-facets .cnm-tag{ font-size:.84rem; padding:6px 11px; }
}

/* CNM: facets B */
.cnm-facets .cnm-tag-link{
	text-decoration:none;
	border-color:rgba(166,90,46,.38);
	background:rgba(166,90,46,.12);
	transition:background .15s ease, border-color .15s ease;
}
.cnm-facets .cnm-tag-link:hover,
.cnm-facets .cnm-tag-link:focus-visible{
	background:rgba(166,90,46,.20);
	border-color:rgba(166,90,46,.60);
}
.cnm-dirlinks .cnm-linkrow{
	display:flex;
	flex-wrap:wrap;
	align-items:baseline;
	gap:6px 10px;
	padding:11px 0;
	border-bottom:1px solid var(--cnm-line, rgba(21,35,61,.10));
}
.cnm-dirlinks .cnm-linkrow:last-child{ border-bottom:0; }
.cnm-dirlinks .cnm-ll{
	flex:0 0 150px;
	font-size:.78rem;
	font-weight:600;
	letter-spacing:.06em;
	text-transform:uppercase;
	color:var(--accent, #A65A2E);
}
.cnm-dirlinks .cnm-lv{ flex:1 1 260px; line-height:1.65; }
.cnm-dirlinks .cnm-lv a{ text-decoration:none; border-bottom:1px solid rgba(166,90,46,.35); }
.cnm-dirlinks .cnm-lv a:hover{ border-bottom-color:rgba(166,90,46,.9); }
.cnm-dirlinks .cnm-mi{ opacity:.62; font-size:.9em; }
@media (max-width:700px){
	.cnm-dirlinks .cnm-ll{ flex:1 1 100%; }
}

/* CNM: facets C */
.cnm-facets .cnm-tag-attr{
	border-color:rgba(166,90,46,.42);
	background:rgba(166,90,46,.12);
	font-weight:600;
	text-decoration:none;
	color:var(--accent-deep, #8A4823);
	transition:.15s;
}
.cnm-facets a.cnm-tag-attr:hover{
	background:rgba(166,90,46,.2);
	border-color:rgba(166,90,46,.75);
}
.cnm-facets .cnm-tag-fact{
	background:transparent;
	border-style:dashed;
	color:var(--ink-soft, #4a5a75);
}

/* CNM: facets D — uc katman gorsel ayrimi */

/* Katman 1: dogrulanmis oznitelik. Dolu zemin, en guclu. */
.cnm-facets .cnm-tagrow .cnm-tag-attr{
	background:var(--accent, #A65A2E);
	border-color:var(--accent, #A65A2E);
	color:#fff;
	font-weight:600;
	text-decoration:none;
}
.cnm-facets .cnm-tagrow a.cnm-tag-attr:hover{
	background:var(--accent-deep, #8A4823);
	border-color:var(--accent-deep, #8A4823);
	color:#fff;
}

/* Katman 2: gosterimlik olgu. Seffaf, kesikli. */
.cnm-facets .cnm-tagrow .cnm-tag-fact{
	background:transparent;
	border-style:dashed;
	border-color:var(--cnm-line, rgba(21,35,61,.22));
	color:var(--ink-soft, #4a5a75);
	font-weight:400;
}

/* Katman 3: ham etiket. Linkli olanlar ince alt cizgiyle belli olur,
   katman 1 ile yarismaz. */
.cnm-facets .cnm-tagrow a.cnm-tag-link:not(.cnm-tag-attr){
	background:rgba(166,90,46,.06);
	border-color:var(--cnm-line, rgba(21,35,61,.14));
	color:var(--ink, #15233D);
	font-weight:400;
	text-decoration:underline;
	text-decoration-thickness:1px;
	text-decoration-color:rgba(166,90,46,.5);
	text-underline-offset:3px;
}
.cnm-facets .cnm-tagrow a.cnm-tag-link:not(.cnm-tag-attr):hover{
	border-color:rgba(166,90,46,.45);
	text-decoration-color:rgba(166,90,46,.95);
}

/* Mobilde satir kirilimi ve dokunma alani */
@media (max-width:600px){
	.cnm-facets .cnm-tagrow{ gap:7px; }
	.cnm-facets .cnm-tagrow .cnm-tag{ padding:7px 12px; }
}

/* CNM: intro A */
.cnm-intro{margin:0 0 22px}
.cnm-intro p{margin:0;font-size:1.05rem;line-height:1.72;color:var(--ink)}
.cnm-intro a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.cnm-intro a:hover{color:var(--accent-deep)}
@media (max-width:640px){.cnm-intro{margin:0 0 18px}.cnm-intro p{font-size:1rem;line-height:1.66}}

/* CNM: city page D */
.cnm-citysum{max-width:780px;margin:28px auto 8px;padding:20px 22px;border:1px solid #e3e7ee;border-radius:14px;background:#f7f9fc}
.cnm-citysum .cnm-sec-head{margin:0 0 10px}
.cnm-citysum-note{font-size:.9rem;color:#5a6577;margin:0 0 14px}
.cnm-citysum-mat{margin:0 0 12px}
.cnm-citysum-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 20px}
.cnm-citysum-list li{padding:6px 0;border-bottom:1px dashed #e3e7ee;line-height:1.4}
.cnm-also{margin:28px 0 8px}
.cnm-also-note{max-width:780px;margin:-4px auto 14px;font-size:.92rem;color:#5a6577}
.cnm-also-line{max-width:780px;margin:12px auto;font-size:.92rem;color:#5a6577}
.cnm-cityfaq{max-width:780px;margin:32px auto 8px}
.cnm-cityfaq h3{font-size:1.02rem;margin:18px 0 6px}
.cnm-cityfaq p{margin:0 0 4px;line-height:1.55}
@media (max-width:640px){.cnm-citysum{padding:16px}.cnm-citysum-list{grid-template-columns:1fr}}

/* CNM: premium (Faz 6g yama 2) */
.cnm-premium{display:inline-flex;align-items:center;gap:6px;background:rgba(180,98,42,.14);color:inherit;font-weight:700;font-size:12.5px;padding:5px 11px;border-radius:999px}
.cnm-premium .cnm-dot{width:7px;height:7px;border-radius:50%;background:#b4622a}
.cnm-premium-tag{font-size:11px;font-weight:700;margin-bottom:7px;display:flex;align-items:center;gap:5px;opacity:.85}
.cnm-premium-tag::before{content:"";width:7px;height:7px;border-radius:50%;background:#b4622a;flex:0 0 7px}
.cnm-owner-links{margin:12px 0 0;font-size:13px;opacity:.8;display:flex;flex-wrap:wrap;gap:6px 18px}
.cnm-owner-links a{color:inherit;text-decoration:underline;text-underline-offset:2px}
