/* ==========================================================================
   Sera Isıtma Sistemleri — site stilleri
   Renkler yönetim panelinden değiştirilebilir: --renk (koyu yeşil), --vurgu (bakır / ısı vurgusu).
   Tasarım dili: mühendislik çizimi — ince çizgiler, keskin köşeler, ölçülü renk.
   ========================================================================== */

/* ---------- Yazı tipleri (sunucuda barındırılır, dış istek yok) ---------- */
@font-face{font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/lato-400.woff) format("woff")}
@font-face{font-family:"Lato";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/lato-700.woff) format("woff")}
@font-face{font-family:"Heros Cn";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/heros-cn-700.woff) format("woff")}

:root{
    --renk:#145a3c;
    --vurgu:#c2692f;
    --koyu:#0d2e22;
    --koyu-2:#123a2c;
    --renk-acik:#e9f1ec;
    --vurgu-koyu:#a85621;
    --sicak:#b8402a;
    --antrasit:#1e2527;
    --metin:#2a3234;
    --soluk:#5b6769;
    --cizgi:#dde3df;
    --cizgi-koyu:#c9d2cd;
    --gri:#f3f5f2;
    --beyaz:#fff;
    --whatsapp:#1fae55;
    --r:3px;
    --gecis:.25s cubic-bezier(.2,.7,.2,1);
    --baslik-font:"Heros Cn","Arial Narrow","Roboto Condensed","Segoe UI",system-ui,sans-serif;
    --govde-font:"Lato","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
    --header-h:78px;
    --isi-hatti:linear-gradient(90deg,var(--renk) 0 55%,var(--vurgu) 80%,var(--sicak));
}

/* ---------- Temel ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;font-family:var(--govde-font);font-size:17px;line-height:1.7;color:var(--metin);background:var(--beyaz);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
main{display:block;overflow-x:clip}
img{max-width:100%;height:auto;vertical-align:middle;border:0}
a{color:var(--renk);text-decoration:none;transition:color var(--gecis)}
a:hover{color:var(--koyu)}
h1,h2,h3,h4,h5,h6{font-family:var(--baslik-font);font-weight:700;line-height:1.15;color:var(--antrasit);margin:0 0 .55em;letter-spacing:-.005em}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.2em}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
table{border-collapse:collapse;width:100%}
iframe{border:0}
figure,blockquote{margin:0}
address{font-style:normal}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--vurgu);outline-offset:2px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.container{max-width:1240px;padding-left:20px;padding-right:20px}
.row{margin-left:-14px;margin-right:-14px}
.row>[class*=col]{padding-left:14px;padding-right:14px}
.text-center{text-align:center}
.ts-atla{position:absolute;left:-9999px;top:8px;z-index:9999;background:var(--koyu);color:#fff;padding:10px 16px}
.ts-atla:focus{left:12px;color:#fff}
.ts-soluk{color:var(--soluk)}
.ts-lead{font-size:1.15rem;color:var(--antrasit);line-height:1.65}
.ts-h2{font-size:clamp(1.85rem,1.3rem + 1.9vw,2.9rem)}
.ts-h3{font-size:clamp(1.4rem,1.2rem + .8vw,1.8rem)}
.ts-h4{font-size:1.3rem}
.ts-bos{padding:40px 24px;text-align:center;color:var(--soluk);background:var(--gri);border:1px dashed var(--cizgi-koyu)}
.ts-not{color:var(--soluk);font-size:.95rem;margin-top:18px;display:flex;gap:10px;align-items:flex-start}
.ts-not i{color:var(--vurgu);margin-top:.35em}
.ts-hp{position:absolute!important;left:-9999px!important;height:0;overflow:hidden}
.ts-orta{text-align:center;justify-content:center}
@media (min-width:992px){.ts-pl-lg{padding-left:48px!important}.text-lg-right{text-align:right}}

/* Küçük etiket: başlık üstü */
.ts-etiket{display:inline-flex;align-items:center;gap:10px;font-family:var(--govde-font);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--renk);margin-bottom:14px}
.ts-etiket::before{content:"";width:22px;height:3px;background:var(--isi-hatti)}
.ts-etiket-acik{color:#cfe3d8}

/* ---------- Butonlar ---------- */
.ts-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;padding:.85em 1.45em;border-radius:var(--r);border:1.5px solid var(--renk);background:var(--renk);color:#fff;font-family:var(--govde-font);font-weight:700;font-size:.95rem;line-height:1.2;letter-spacing:.01em;white-space:nowrap;transition:background-color var(--gecis),border-color var(--gecis),color var(--gecis)}
.ts-btn:hover{background:var(--koyu);border-color:var(--koyu);color:#fff}
.ts-btn i{font-size:.95em}
.ts-btn-sm{padding:.6em 1.05em;font-size:.86rem}
.ts-btn-buyuk{padding:1.05em 1.8em;font-size:1rem}
.ts-btn-blok{display:flex;width:100%}
.ts-btn-bakir{background:var(--vurgu);border-color:var(--vurgu);color:#fff}
.ts-btn-bakir:hover{background:var(--vurgu-koyu);border-color:var(--vurgu-koyu);color:#fff}
.ts-btn-cizgi{background:transparent;color:var(--antrasit);border-color:var(--cizgi-koyu)}
.ts-btn-cizgi:hover{background:transparent;color:var(--renk);border-color:var(--renk)}
.ts-btn-acik{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.ts-btn-acik:hover{background:#fff;color:var(--koyu);border-color:#fff}
.ts-btn-whatsapp{background:var(--whatsapp);border-color:var(--whatsapp);color:#fff}
.ts-btn-whatsapp:hover{background:#178e45;border-color:#178e45;color:#fff}
.ts-btn[disabled],.ts-btn.yukleniyor{opacity:.65;pointer-events:none}
.ts-buton-grup{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px}
.ts-ok-link{display:inline-flex;align-items:center;gap:.5em;font-weight:700;font-size:.95rem;color:var(--renk);border-bottom:1.5px solid currentColor;padding-bottom:2px;margin-top:6px}
.ts-ok-link i{transition:transform var(--gecis)}
.ts-ok-link:hover{color:var(--vurgu)}
.ts-ok-link:hover i,a:hover .ts-ok-link i{transform:translateX(4px)}

/* ---------- Header ---------- */
.ts-header{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.97);border-bottom:1px solid var(--cizgi);transition:box-shadow var(--gecis)}
.ts-header::before{content:"";display:block;height:3px;background:var(--isi-hatti)}
.ts-header.kaydi{box-shadow:0 6px 24px rgba(13,46,34,.08)}
.ts-header-ic{display:flex;align-items:center;gap:24px;min-height:var(--header-h)}
.ts-logo{display:flex;align-items:center;gap:12px;flex-shrink:0;color:var(--antrasit);max-width:300px}
.ts-logo img{max-height:52px;width:auto}
.ts-logo-yazi{font-family:var(--baslik-font);font-weight:700;font-size:1.28rem;line-height:1.05;color:var(--antrasit)}
.ts-amblem{flex-shrink:0;display:block}
.ts-nav{flex:1;display:flex;justify-content:center}
.ts-nav-ust,.ts-nav-alt{display:none}
.ts-menu{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:2px}
.ts-menu>li{position:relative}
.ts-menu>li>a{display:flex;align-items:center;gap:6px;padding:28px 13px;font-weight:700;font-size:.93rem;color:var(--antrasit);position:relative}
.ts-menu>li>a::after{content:"";position:absolute;left:13px;right:13px;bottom:20px;height:2px;background:var(--vurgu);transform:scaleX(0);transform-origin:left;transition:transform var(--gecis)}
.ts-menu>li:hover>a,.ts-menu>li.aktif>a{color:var(--renk)}
.ts-menu>li:hover>a::after,.ts-menu>li.aktif>a::after{transform:scaleX(1)}
.ts-menu>li>a i{font-size:.75em;opacity:.6}
.ts-altmenu{position:absolute;top:100%;left:0;min-width:260px;list-style:none;margin:0;padding:10px;background:#fff;border:1px solid var(--cizgi);border-top:2px solid var(--renk);box-shadow:0 18px 40px rgba(13,46,34,.12);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity var(--gecis),transform var(--gecis),visibility var(--gecis)}
.ts-acilir:hover>.ts-altmenu,.ts-acilir:focus-within>.ts-altmenu{opacity:1;visibility:visible;transform:none}
.ts-genis>.ts-altmenu{display:grid;grid-template-columns:1fr 1fr;width:560px;left:50%;margin-left:-280px;gap:0 8px}
.ts-altmenu a{display:block;padding:9px 12px;font-size:.92rem;color:var(--metin);border-left:2px solid transparent}
.ts-altmenu a:hover,.ts-altmenu a[aria-current]{background:var(--gri);color:var(--renk);border-left-color:var(--vurgu)}
.ts-header-sag{display:flex;align-items:center;gap:18px;flex-shrink:0}
.ts-header-tel{display:flex;flex-direction:column;line-height:1.2;color:var(--antrasit);text-align:right}
.ts-header-tel small{font-size:.72rem;color:var(--soluk);letter-spacing:.02em}
.ts-header-tel span{font-weight:700;font-size:.98rem}
.ts-header-tel i{color:var(--vurgu);font-size:.85em}
.ts-hamburger{display:none;width:44px;height:44px;border:1px solid var(--cizgi);background:#fff;border-radius:var(--r);padding:12px 11px;flex-direction:column;justify-content:space-between}
.ts-hamburger span{display:block;height:2px;background:var(--antrasit)}
.ts-hamburger span:nth-child(2){width:70%;background:var(--vurgu)}
.ts-nav-perde{position:fixed;inset:0;background:rgba(13,46,34,.55);z-index:950;opacity:0;visibility:hidden;transition:opacity var(--gecis)}
.ts-nav-perde.acik{opacity:1;visibility:visible}
@media (max-width:1199.98px){
    .ts-header-tel{display:none}
    .ts-menu>li>a{padding-left:10px;padding-right:10px}
}
@media (max-width:991.98px){
    :root{--header-h:66px}
    .ts-hamburger{display:flex}
    .ts-header-btn{display:none}
    .ts-header-ic{justify-content:space-between}
    .ts-logo-yazi{font-size:1.1rem}
    .ts-amblem{width:36px;height:36px}
    .ts-nav{position:fixed;top:0;right:0;bottom:0;width:min(360px,88vw);background:#fff;z-index:1000;flex-direction:column;justify-content:flex-start;transform:translateX(100%);transition:transform .3s ease;overflow-y:auto;box-shadow:-10px 0 40px rgba(0,0,0,.15)}
    .ts-nav.acik{transform:none}
    .ts-nav-ust{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--cizgi);font-family:var(--baslik-font);font-weight:700;font-size:1.1rem;color:var(--antrasit)}
    .ts-nav-ust::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--isi-hatti)}
    .ts-nav-kapat{border:0;background:none;font-size:1.3rem;width:40px;height:40px;color:var(--antrasit)}
    .ts-menu{flex-direction:column;align-items:stretch;gap:0;padding:8px 0}
    .ts-menu>li>a{padding:14px 22px;justify-content:space-between;border-bottom:1px solid var(--gri)}
    .ts-menu>li>a::after{display:none}
    .ts-altmenu,.ts-genis>.ts-altmenu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 8px 12px;display:none;width:auto;margin:0;grid-template-columns:1fr}
    .ts-acilir.acik>.ts-altmenu{display:block}
    .ts-acilir.acik>a i{transform:rotate(180deg)}
    .ts-nav-alt{display:flex;flex-direction:column;gap:10px;padding:18px 20px 28px;margin-top:auto}
    body.menu-acik{overflow:hidden}
}

/* ---------- Bölümler ---------- */
.ts-bolum{padding:96px 0}
.ts-bolum-ince{padding:56px 0}
.ts-bolum-detay{padding:64px 0 88px}
.ts-bolum-gri{background:var(--gri)}
.ts-bolum-koyu{background:var(--koyu);color:#c9d8d0}
.ts-bolum-koyu h2,.ts-bolum-koyu h3{color:#fff}
.ts-bolum-koyu a:not(.ts-btn){color:#fff}
.ts-bolum-baslik{max-width:720px;margin-bottom:44px}
.ts-bolum-baslik h2{font-size:clamp(1.85rem,1.3rem + 1.9vw,2.9rem)}
.ts-bolum-baslik p{color:var(--soluk);font-size:1.06rem;margin:0}
.ts-bolum-koyu .ts-bolum-baslik p{color:#a9bfb3}
.ts-bolum-koyu .ts-etiket{color:#cfe3d8}
.ts-bolum-koyu .ts-metin{color:#c9d8d0}
.ts-bolum-koyu .ts-metin strong{color:#fff}
.ts-bolum-baslik.ts-orta{margin-left:auto;margin-right:auto;text-align:center}
.ts-bolum-baslik.ts-orta .ts-etiket{justify-content:center}
.ts-bolum-ust{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:44px}
.ts-bolum-ust .ts-bolum-baslik{margin-bottom:0}
.ts-bolum-ust .ts-ok-link{flex-shrink:0;margin-bottom:8px}
.ts-metin{color:var(--metin)}
.ts-metin p:last-child{margin-bottom:0}
.ts-metin+.ts-ok-link,.ts-metin+.ts-tik-liste{margin-top:22px}
@media (max-width:767.98px){
    .ts-bolum{padding:64px 0}
    .ts-bolum-detay{padding:40px 0 64px}
    .ts-bolum-ust{flex-direction:column;align-items:flex-start}
    .ts-bolum-baslik{margin-bottom:32px}
}

/* Görsel çerçevesi: ofsetli ince çizgi */
.ts-cerceve{position:relative;margin:0 14px 14px 0}
.ts-cerceve::before{content:"";position:absolute;inset:14px -14px -14px 14px;border:1.5px solid var(--cizgi-koyu);z-index:0}
.ts-cerceve img{position:relative;z-index:1;width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--cizgi)}
.ts-cerceve-dik img{aspect-ratio:4/5}
.ts-cerceve figcaption{position:relative;z-index:2;display:inline-block;margin-top:-1px;background:var(--koyu);color:#fff;font-size:.8rem;font-weight:700;letter-spacing:.04em;padding:8px 14px}

/* ---------- Hero ---------- */
.ts-hero{position:relative;padding:64px 0 0;background:
    linear-gradient(var(--beyaz),rgba(255,255,255,.6) 60%,var(--beyaz)),
    repeating-linear-gradient(0deg,transparent 0 39px,var(--gri) 39px 40px),
    repeating-linear-gradient(90deg,transparent 0 39px,var(--gri) 39px 40px)}
.ts-hero-ic{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.ts-hero h1{font-size:clamp(2.6rem,1.6rem + 4vw,4.6rem);line-height:1;margin-bottom:18px;color:var(--antrasit)}
.ts-hero-alt{font-family:var(--baslik-font);font-weight:700;font-size:clamp(1.2rem,1rem + .7vw,1.6rem);line-height:1.25;color:var(--renk);margin-bottom:18px}
.ts-hero-aciklama{font-size:1.1rem;color:var(--soluk);max-width:540px}
.ts-hero-gorsel{position:relative}
.ts-hero-gorsel img{width:100%;aspect-ratio:5/4;object-fit:cover;display:block;background:var(--cizgi)}
.ts-hero-gorsel::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--isi-hatti)}
.ts-hero-sema{position:absolute;left:-28px;bottom:36px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--cizgi);padding:12px 16px;font-size:.78rem;font-weight:700;color:var(--antrasit);box-shadow:0 14px 30px rgba(13,46,34,.12)}
.ts-hero-sema i{width:18px;height:2px;background:var(--vurgu);position:relative}
.ts-hero-sema i::after{content:"";position:absolute;right:-1px;top:-3px;border:4px solid transparent;border-left:5px solid var(--vurgu);border-right:0}
.ts-hero-maddeler{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;margin:56px 0 0;padding:0;background:var(--koyu);color:#c9d8d0;position:relative;z-index:2;transform:translateY(40px)}
.ts-hero-maddeler li{padding:26px 28px;border-left:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:baseline}
.ts-hero-maddeler li:first-child{border-left:0}
.ts-hero-maddeler strong{color:#fff;font-family:var(--baslik-font);font-size:1.15rem}
.ts-hero-maddeler small{grid-column:2;font-size:.9rem;color:#a9bfb3}
.ts-no{font-family:var(--baslik-font);font-weight:700;color:var(--vurgu);font-size:.95rem;letter-spacing:.04em}
.ts-hero+.ts-bolum{padding-top:136px}
@media (max-width:991.98px){
    .ts-hero{padding-top:36px}
    .ts-hero-ic{grid-template-columns:1fr;gap:36px}
    .ts-hero-sema{left:12px;bottom:12px;flex-wrap:wrap}
    .ts-hero-maddeler{grid-template-columns:1fr;transform:none;margin-top:36px}
    .ts-hero-maddeler li{border-left:0;border-top:1px solid rgba(255,255,255,.1);padding:18px 22px}
    .ts-hero-maddeler li:first-child{border-top:0}
    .ts-hero+.ts-bolum{padding-top:72px}
}
@media (max-width:575.98px){.ts-hero-sema{display:none}.ts-hero .ts-btn-buyuk{width:100%}}

/* ---------- Kapsam listesi (bölüm 1) ---------- */
.ts-kapsam{border:1px solid var(--cizgi);padding:32px 32px 18px;position:relative;background:#fff}
.ts-kapsam::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(var(--renk),var(--vurgu))}
.ts-kapsam h3{font-size:1.25rem;margin-bottom:18px}
.ts-kapsam ol{list-style:none;margin:0;padding:0;counter-reset:k}
.ts-kapsam li{counter-increment:k;display:flex;gap:16px;align-items:baseline;padding:12px 0;border-top:1px dashed var(--cizgi)}
.ts-kapsam li::before{content:counter(k,decimal-leading-zero);font-family:var(--baslik-font);font-weight:700;color:var(--vurgu);font-size:.95rem;min-width:24px}
.ts-kapsam li strong{font-weight:700;color:var(--antrasit)}
.ts-kapsam li span{display:block;color:var(--soluk);font-size:.92rem}

/* Tik listesi */
.ts-tik-liste{list-style:none;padding:0;margin:24px 0}
.ts-tik-liste li{position:relative;padding:10px 0 10px 30px;border-bottom:1px solid var(--cizgi);break-inside:avoid}
.ts-tik-liste li::before{content:"";position:absolute;left:2px;top:19px;width:12px;height:7px;border-left:2px solid var(--vurgu);border-bottom:2px solid var(--vurgu);transform:rotate(-45deg)}
.ts-tik-liste strong{display:block;color:var(--antrasit);line-height:1.35}
.ts-tik-liste span{display:block;font-size:.9rem;color:var(--soluk);line-height:1.5}
@media (min-width:768px){.ts-iki-sutun{display:grid;grid-template-columns:1fr 1fr;column-gap:32px}}

/* ---------- Jeotermal şeması ---------- */
.ts-sema{background:var(--koyu-2);border:1px solid rgba(255,255,255,.12);padding:16px}
.ts-sema svg{width:100%;height:auto;display:block}
.ts-sema-sicak{fill:none;stroke:var(--vurgu);stroke-width:4;stroke-linejoin:round}
.ts-sema-donus{fill:none;stroke:#7fb79a;stroke-width:4;stroke-linejoin:round;stroke-dasharray:10 6}
.ts-sema-yazi text,.ts-sema-lejant text{fill:#dbe8e1;font-family:var(--govde-font);font-size:13px;font-weight:700}
.ts-sema-lejant text{font-size:12px;font-weight:400;fill:#a9bfb3}
.ts-sema figcaption{font-size:.82rem;color:#a9bfb3;padding-top:10px}
@media (prefers-reduced-motion:no-preference){
    .ts-sema-sicak{stroke-dasharray:14 8;animation:akis 1.6s linear infinite}
    .ts-sema-donus{animation:akis 2.2s linear infinite reverse}
}
@keyframes akis{to{stroke-dashoffset:-44}}
.ts-sema-adimlar{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12);counter-reset:j}
.ts-sema-adimlar li{background:var(--koyu);padding:16px 14px;counter-increment:j}
.ts-sema-adimlar li::before{content:counter(j,decimal-leading-zero);display:block;font-family:var(--baslik-font);color:var(--vurgu);font-weight:700;margin-bottom:4px}
.ts-sema-adimlar strong{display:block;color:#fff;font-size:.95rem;line-height:1.3}
.ts-sema-adimlar span{display:block;font-size:.84rem;color:#a9bfb3;line-height:1.45;margin-top:4px}
@media (max-width:767.98px){.ts-sema-adimlar{grid-template-columns:1fr 1fr}}

/* ---------- Boru konumları ---------- */
.ts-konum-izgara{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:28px 0;border-top:1px solid var(--cizgi);border-left:1px solid var(--cizgi)}
.ts-konum{padding:22px 22px 18px;border-right:1px solid var(--cizgi);border-bottom:1px solid var(--cizgi);transition:background var(--gecis)}
.ts-konum:hover{background:var(--gri)}
.ts-konum i{font-size:1.25rem;color:var(--renk);margin-bottom:12px;display:block}
.ts-konum h3{font-size:1.12rem;margin-bottom:6px}
.ts-konum p{font-size:.9rem;color:var(--soluk);margin:0;line-height:1.55}
@media (max-width:479.98px){.ts-konum-izgara{grid-template-columns:1fr}}

/* ---------- Isı merkezi ekipmanları ---------- */
.ts-merkez{display:grid;grid-template-columns:1fr 2fr;gap:28px;align-items:stretch}
.ts-merkez-gorsel{margin:0;position:relative}
.ts-merkez-gorsel img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.ts-ekipman{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--cizgi);border:1px solid var(--cizgi)}
.ts-ekipman li{background:#fff;padding:22px 18px;display:flex;flex-direction:column;gap:6px;transition:background var(--gecis)}
.ts-ekipman li:hover{background:var(--renk-acik)}
.ts-ekipman i{width:42px;height:42px;display:grid;place-items:center;border:1.5px solid var(--renk);color:var(--renk);font-size:1.05rem;margin-bottom:8px}
.ts-ekipman strong{font-family:var(--baslik-font);font-size:1.1rem;color:var(--antrasit);line-height:1.2}
.ts-ekipman span{font-size:.86rem;color:var(--soluk);line-height:1.5}
@media (max-width:1199.98px){.ts-ekipman{grid-template-columns:repeat(2,1fr)}}
@media (max-width:991.98px){.ts-merkez{grid-template-columns:1fr}.ts-merkez-gorsel img{min-height:0;aspect-ratio:16/9}}
@media (max-width:479.98px){.ts-ekipman{grid-template-columns:1fr}}

/* ---------- Mekanik tesisat sütunları ---------- */
.ts-sutunlar{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:0 36px}
.ts-sutunlar li{padding:24px 0 26px;border-top:2px solid var(--antrasit)}
.ts-sutunlar li:nth-child(n+3){border-top-color:var(--cizgi-koyu)}
.ts-sutunlar h3{font-size:1.35rem;margin:8px 0}
.ts-sutunlar p{color:var(--soluk);margin:0}
@media (max-width:575.98px){.ts-sutunlar{grid-template-columns:1fr}}

/* ---------- Kartlar: hizmet (mini, numaralı) ---------- */
.ts-mkart-izgara{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--cizgi);border:1px solid var(--cizgi)}
.ts-mkart-izgara-dar{grid-template-columns:repeat(3,1fr)}
.ts-mkart{position:relative;display:flex;flex-direction:column;gap:8px;background:#fff;padding:26px 22px 54px;color:var(--metin);transition:background var(--gecis)}
.ts-mkart::before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--isi-hatti);transition:width .35s ease}
.ts-mkart:hover{background:#fff;color:var(--metin)}
.ts-mkart:hover::before{width:100%}
.ts-mkart-no{position:absolute;top:18px;right:20px;font-family:var(--baslik-font);font-weight:700;font-size:.85rem;color:var(--cizgi-koyu)}
.ts-mkart-ikon{font-size:1.45rem;color:var(--renk);margin-bottom:6px}
.ts-mkart strong{font-family:var(--baslik-font);font-size:1.2rem;line-height:1.15;color:var(--antrasit)}
.ts-mkart small{font-size:.88rem;color:var(--soluk);line-height:1.5}
.ts-mkart-ok{position:absolute;left:22px;bottom:20px;color:var(--vurgu);transition:transform var(--gecis)}
.ts-mkart:hover .ts-mkart-ok{transform:translateX(6px)}
@media (max-width:1199.98px){.ts-mkart-izgara{grid-template-columns:repeat(3,1fr)}}
@media (max-width:767.98px){.ts-mkart-izgara,.ts-mkart-izgara-dar{grid-template-columns:repeat(2,1fr)}}
@media (max-width:479.98px){.ts-mkart-izgara,.ts-mkart-izgara-dar{grid-template-columns:1fr}.ts-mkart{padding-bottom:48px}}

/* ---------- Kartlar: hizmet (görselli), proje, blog ---------- */
.ts-hkart,.ts-pkart,.ts-bkart{display:flex;flex-direction:column;width:100%;background:#fff;border:1px solid var(--cizgi);margin-bottom:28px;transition:border-color var(--gecis),box-shadow var(--gecis)}
.ts-hkart:hover,.ts-pkart:hover,.ts-bkart:hover{border-color:var(--cizgi-koyu);box-shadow:0 16px 36px rgba(13,46,34,.08)}
.ts-hkart-gorsel,.ts-pkart-gorsel,.ts-bkart-gorsel{display:block;overflow:hidden;position:relative;background:var(--cizgi)}
.ts-hkart-gorsel img,.ts-pkart-gorsel img,.ts-bkart-gorsel img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform .5s ease}
.ts-hkart:hover img,.ts-pkart:hover img,.ts-bkart:hover img{transform:scale(1.04)}
.ts-hkart-govde,.ts-pkart-govde,.ts-bkart-govde{display:flex;flex-direction:column;flex:1;padding:24px 24px 26px;position:relative}
.ts-hkart-ikon{position:absolute;top:-24px;right:22px;width:48px;height:48px;display:grid;place-items:center;background:var(--renk);color:#fff;font-size:1.1rem}
.ts-hkart h3,.ts-pkart h3,.ts-bkart h3{font-size:1.32rem;margin-bottom:10px;padding-right:44px}
.ts-pkart h3,.ts-bkart h3{padding-right:0}
.ts-hkart h3 a,.ts-pkart h3 a,.ts-bkart h3 a{color:var(--antrasit)}
.ts-hkart h3 a:hover,.ts-pkart h3 a:hover,.ts-bkart h3 a:hover{color:var(--renk)}
.ts-hkart p,.ts-pkart p,.ts-bkart p{color:var(--soluk);font-size:.95rem;flex:1}
.ts-hkart .ts-ok-link,.ts-pkart .ts-ok-link,.ts-bkart .ts-ok-link{align-self:flex-start;margin-top:auto}
.ts-pkart-bilgi{list-style:none;margin:0 0 18px;padding:0;flex:1}
.ts-pkart-bilgi li{display:flex;gap:10px;align-items:baseline;font-size:.9rem;color:var(--metin);padding:7px 0;border-top:1px dashed var(--cizgi)}
.ts-pkart-bilgi i{color:var(--vurgu);width:16px;text-align:center;font-size:.85rem}
.ts-bkart-ust{display:flex;gap:14px;flex-wrap:wrap;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--soluk);margin-bottom:10px}
.ts-bkart-ust span{color:var(--renk)}

/* ---------- Ana mesaj bandı ---------- */
.ts-mesaj{background:var(--beyaz);padding:88px 0;border-bottom:1px solid var(--cizgi)}
.ts-mesaj p{font-family:var(--baslik-font);font-weight:700;font-size:clamp(1.6rem,1.1rem + 2vw,2.7rem);line-height:1.2;color:var(--antrasit);max-width:1000px;margin:0;padding-left:34px;border-left:4px solid var(--vurgu)}

/* ---------- Neden biz ---------- */
.ts-neden{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
.ts-neden-uc{grid-template-columns:repeat(3,1fr)}
.ts-neden li{display:flex;gap:18px;padding:22px 0;border-top:1px solid var(--cizgi)}
.ts-neden-ikon{flex-shrink:0;width:50px;height:50px;display:grid;place-items:center;background:var(--renk-acik);color:var(--renk);font-size:1.15rem}
.ts-neden h3{font-size:1.25rem;margin:2px 0 6px}
.ts-neden p{margin:0;color:var(--soluk);font-size:.95rem}
@media (max-width:991.98px){.ts-neden-uc{grid-template-columns:1fr 1fr}}
@media (max-width:575.98px){.ts-neden,.ts-neden-uc{grid-template-columns:1fr}}

/* ---------- Sayaçlar ---------- */
.ts-sayaclar{background:var(--renk);color:#fff;padding:44px 0}
.ts-sayaclar ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ts-sayaclar strong{display:block;font-family:var(--baslik-font);font-size:2.6rem;line-height:1}
.ts-sayaclar li>span{color:#cfe3d8;font-size:.92rem}
@media (max-width:767.98px){.ts-sayaclar ul{grid-template-columns:1fr 1fr}}

/* ---------- Çalışma süreci (boru hattı zaman çizelgesi) ---------- */
.ts-surec{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--adim,9),1fr);position:relative}
.ts-surec::before{content:"";position:absolute;left:0;right:0;top:21px;height:4px;background:var(--isi-hatti);opacity:.9}
.ts-surec li{position:relative;padding:0 10px 0 0}
.ts-surec-no{position:relative;z-index:1;display:grid;place-items:center;width:46px;height:46px;background:var(--koyu);border:2px solid var(--vurgu);color:#fff;font-family:var(--baslik-font);font-weight:700;font-size:1.1rem;margin-bottom:18px}
.ts-surec h3{font-size:1.08rem;line-height:1.2;margin-bottom:6px}
.ts-surec p{font-size:.84rem;line-height:1.5;color:#a9bfb3;margin:0}
@media (max-width:1199.98px){
    .ts-surec{grid-template-columns:1fr 1fr 1fr;gap:34px 24px}
    .ts-surec::before{display:none}
    .ts-surec li{padding:0 0 0 62px;min-height:46px}
    .ts-surec-no{position:absolute;left:0;top:0;margin:0}
}
@media (max-width:767.98px){
    .ts-surec{grid-template-columns:1fr;gap:0}
    .ts-surec::before{display:block;left:21px;right:auto;top:0;bottom:0;width:4px;height:auto;background:linear-gradient(var(--renk),var(--vurgu))}
    .ts-surec li{padding-bottom:26px}
}

/* ---------- SSS ---------- */
.ts-sss{border-top:1px solid var(--cizgi-koyu)}
.ts-sss-oge{border-bottom:1px solid var(--cizgi-koyu)}
.ts-sss-oge summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0}
.ts-sss-oge summary::-webkit-details-marker{display:none}
.ts-sss-oge summary h2,.ts-sss-oge summary h3{font-size:1.2rem;margin:0;line-height:1.3;transition:color var(--gecis)}
.ts-sss-oge summary:hover h2,.ts-sss-oge summary:hover h3{color:var(--renk)}
.ts-sss-oge summary i{flex-shrink:0;width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--cizgi-koyu);color:var(--renk);font-size:.8rem;transition:background var(--gecis)}
.ts-sss-oge summary i::before{display:inline-block;transition:transform var(--gecis)}
.ts-sss-oge[open] summary i{background:var(--renk);border-color:var(--renk);color:#fff}
.ts-sss-oge[open] summary i::before{transform:rotate(45deg)}
.ts-sss-cevap{padding:0 52px 22px 0;color:var(--soluk)}

/* ---------- Teklif çağrı bandı ---------- */
.ts-cta{background:var(--koyu);color:#c9d8d0;padding:72px 0;position:relative;overflow:hidden}
.ts-cta::before{content:"";position:absolute;inset:0;background:
    repeating-linear-gradient(90deg,transparent 0 59px,rgba(255,255,255,.035) 59px 60px)}
.ts-cta::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--isi-hatti)}
.ts-cta-ic{position:relative;display:flex;align-items:center;justify-content:space-between;gap:40px}
.ts-cta h2{color:#fff;font-size:clamp(1.7rem,1.3rem + 1.4vw,2.5rem);margin-bottom:10px}
.ts-cta p{margin:0;max-width:640px}
.ts-cta-butonlar{display:flex;flex-direction:column;gap:12px;flex-shrink:0}
@media (max-width:991.98px){.ts-cta-ic{flex-direction:column;align-items:flex-start}.ts-cta-butonlar{flex-direction:row;flex-wrap:wrap}}
@media (max-width:575.98px){.ts-cta-butonlar{flex-direction:column;width:100%}.ts-cta-butonlar .ts-btn{width:100%;white-space:normal}}

/* ---------- Bölgeler, referanslar, yorumlar ---------- */
.ts-bolgeler{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.ts-bolgeler h2{margin:0}
.ts-bolgeler ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0}
.ts-bolgeler a{display:inline-flex;gap:8px;align-items:center;padding:8px 14px;border:1px solid var(--cizgi-koyu);background:#fff;color:var(--antrasit);font-size:.92rem;font-weight:700}
.ts-bolgeler a i{color:var(--vurgu)}
.ts-bolgeler a:hover{border-color:var(--renk);color:var(--renk)}
.ts-bolge-kart{display:flex;flex-direction:column;gap:8px;width:100%;padding:28px;border:1px solid var(--cizgi);margin-bottom:28px;color:var(--metin);transition:border-color var(--gecis)}
.ts-bolge-kart:hover{border-color:var(--renk);color:var(--metin)}
.ts-bolge-kart i{color:var(--vurgu);font-size:1.3rem}
.ts-bolge-kart strong{font-family:var(--baslik-font);font-size:1.3rem;color:var(--antrasit);line-height:1.2}
.ts-bolge-kart small{color:var(--soluk);font-size:.92rem;flex:1}
.ts-logolar{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.ts-logolar li{width:170px;height:90px;display:grid;place-items:center;border:1px solid var(--cizgi);padding:14px;background:#fff}
.ts-logolar img{max-height:60px;width:auto;filter:grayscale(1);opacity:.75;transition:filter var(--gecis),opacity var(--gecis)}
.ts-logolar li:hover img{filter:none;opacity:1}
.ts-yorum{width:100%;background:#fff;border:1px solid var(--cizgi);padding:28px;margin-bottom:28px;display:flex;flex-direction:column}
.ts-yorum blockquote{flex:1;font-size:1.02rem;color:var(--metin);position:relative;padding-top:28px}
.ts-yorum blockquote::before{content:"“";position:absolute;top:-14px;left:-2px;font-family:Georgia,serif;font-size:3.4rem;color:var(--vurgu);line-height:1}
.ts-yorum figcaption{margin-top:18px;padding-top:14px;border-top:1px solid var(--cizgi)}
.ts-yorum figcaption small{display:block;color:var(--soluk)}

/* ---------- Sayfa başlığı ---------- */
.ts-sayfa-baslik{position:relative;padding:44px 0 50px;background:
    linear-gradient(90deg,var(--gri) 40%,rgba(243,245,242,.85)),
    repeating-linear-gradient(0deg,transparent 0 31px,#e6ebe7 31px 32px),
    repeating-linear-gradient(90deg,transparent 0 31px,#e6ebe7 31px 32px);border-bottom:1px solid var(--cizgi)}
.ts-sayfa-baslik::after{content:"";position:absolute;left:0;bottom:-1px;width:160px;height:3px;background:var(--isi-hatti)}
.ts-sayfa-baslik h1{font-size:clamp(2rem,1.4rem + 2.4vw,3.3rem);margin-bottom:12px;max-width:900px}
.ts-sayfa-alt{font-size:1.1rem;color:var(--soluk);max-width:780px;margin:0}
.ts-breadcrumb{list-style:none;display:flex;flex-wrap:wrap;gap:4px 0;margin:0 0 22px;padding:0;font-size:.85rem;color:var(--soluk)}
.ts-breadcrumb li+li::before{content:"/";margin:0 10px;color:var(--cizgi-koyu)}
.ts-breadcrumb a{color:var(--soluk)}
.ts-breadcrumb a:hover{color:var(--renk)}
.ts-breadcrumb [aria-current]{color:var(--antrasit);font-weight:700}

/* ---------- Detay sayfaları ---------- */
.ts-detay{margin-bottom:40px}
.ts-detay-galeri{margin-bottom:36px}
.ts-detay-ana{display:block;position:relative;background:var(--cizgi)}
.ts-detay-ana img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.ts-buyut{position:absolute;right:14px;bottom:14px;width:42px;height:42px;display:grid;place-items:center;background:rgba(13,46,34,.8);color:#fff}
.ts-detay-kucukler{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin-top:8px}
.ts-detay-kucukler a{display:block;border:2px solid transparent;opacity:.7}
.ts-detay-kucukler a.aktif,.ts-detay-kucukler a:hover{border-color:var(--vurgu);opacity:1}
.ts-detay-kucukler img{aspect-ratio:4/3;object-fit:cover;width:100%}
.ts-yazi-kapak{margin:0 0 28px}
.ts-yazi-kapak img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:var(--cizgi)}
.ts-yazi-bilgi{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.88rem;color:var(--soluk);margin-bottom:22px}
.ts-yazi-bilgi i{color:var(--vurgu);margin-right:4px}
.ts-icindekiler{border:1px solid var(--cizgi);border-left:4px solid var(--renk);background:var(--gri);padding:20px 24px;margin:0 0 32px}
.ts-icindekiler strong{display:block;font-family:var(--baslik-font);font-size:1.1rem;color:var(--antrasit);margin-bottom:8px}
.ts-icindekiler ol{margin:0;padding-left:1.3em}
.ts-icindekiler li{padding:3px 0}
.ts-icindekiler a{color:var(--metin)}
.ts-icindekiler a:hover{color:var(--renk)}

/* İçerik tipografisi (editör çıktısı) */
.ts-icerik,.ts-icerik-metin{font-size:1.04rem}
.ts-icerik h2,.ts-icerik-metin h2{font-size:clamp(1.5rem,1.25rem + .9vw,1.95rem);margin:1.8em 0 .6em;padding-top:.2em}
.ts-icerik h2:first-child{margin-top:0}
.ts-icerik h3,.ts-icerik-metin h3{font-size:1.3rem;margin:1.5em 0 .5em;color:var(--renk)}
.ts-icerik ul,.ts-icerik ol{padding-left:0;list-style:none;margin:1.2em 0 1.4em}
.ts-icerik ul li{position:relative;padding:6px 0 6px 26px}
.ts-icerik ul li::before{content:"";position:absolute;left:2px;top:.95em;width:10px;height:3px;background:var(--vurgu)}
.ts-icerik ol{counter-reset:o}
.ts-icerik ol li{counter-increment:o;position:relative;padding:6px 0 6px 34px}
.ts-icerik ol li::before{content:counter(o,decimal-leading-zero);position:absolute;left:0;font-family:var(--baslik-font);font-weight:700;color:var(--vurgu)}
.ts-icerik a{color:var(--renk);text-decoration:underline;text-decoration-color:rgba(20,90,60,.35);text-underline-offset:3px}
.ts-icerik a:hover{text-decoration-color:var(--vurgu)}
.ts-icerik strong{color:var(--antrasit)}
.ts-icerik img{margin:1em 0}
.ts-icerik blockquote{border-left:4px solid var(--vurgu);padding:6px 0 6px 22px;margin:1.5em 0;font-size:1.1rem;color:var(--antrasit)}
.ts-icerik table,.ts-ozellik-tablo{margin:1.5em 0;font-size:.95rem}
.ts-icerik th,.ts-icerik td,.ts-ozellik-tablo th,.ts-ozellik-tablo td{border:1px solid var(--cizgi);padding:10px 14px;text-align:left}
.ts-icerik th,.ts-ozellik-tablo th{background:var(--gri);font-weight:700}

/* Sayfa içi teklif kutusu */
.ts-icerik-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:44px 0 28px;padding:30px 32px;background:var(--koyu);color:#c9d8d0;position:relative}
.ts-icerik-cta::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--isi-hatti)}
.ts-icerik-cta h2{color:#fff;margin:0 0 6px;font-size:1.5rem}
.ts-icerik-cta p{margin:0;font-size:.95rem}
.ts-icerik-cta .ts-etiket{color:#cfe3d8;margin-bottom:8px}
.ts-icerik-cta-btn{display:flex;flex-direction:column;gap:10px;flex-shrink:0}
.ts-icerik-cta .ts-btn-cizgi{color:#fff;border-color:rgba(255,255,255,.4)}
.ts-icerik-cta .ts-btn-cizgi:hover{border-color:#fff;color:#fff}
@media (max-width:767.98px){.ts-icerik-cta{flex-direction:column;align-items:flex-start;padding:26px 22px}.ts-icerik-cta-btn{width:100%}}

/* ---------- Kenar çubuğu ---------- */
.ts-kenar{position:sticky;top:calc(var(--header-h) + 28px);display:flex;flex-direction:column;gap:24px}
@media (max-width:991.98px){.ts-kenar{position:static;margin-top:24px}}
.ts-kenar-kutu{border:1px solid var(--cizgi);background:#fff;padding:24px}
.ts-kenar-baslik{font-size:1.2rem;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--cizgi)}
.ts-kenar-liste{list-style:none;margin:0;padding:0}
.ts-kenar-liste a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0 9px 12px;border-left:2px solid transparent;color:var(--metin);font-size:.95rem}
.ts-kenar-liste a:hover{color:var(--renk);border-left-color:var(--cizgi-koyu)}
.ts-kenar-liste .aktif>a{color:var(--renk);font-weight:700;border-left-color:var(--vurgu)}
.ts-kenar-liste span{font-size:.8rem;color:var(--soluk);background:var(--gri);padding:1px 8px}
.ts-kenar-cta{background:var(--koyu);border-color:var(--koyu);color:#c9d8d0;position:relative}
.ts-kenar-cta::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:var(--isi-hatti)}
.ts-kenar-cta .ts-kenar-baslik{color:#fff;border-bottom-color:rgba(255,255,255,.12)}
.ts-kenar-cta .ts-etiket{color:#cfe3d8;margin-bottom:10px}
.ts-kenar-cta p{font-size:.93rem}
.ts-kenar-cta .ts-btn{margin-top:10px}
.ts-kenar-ara{display:flex;padding:0;border:1px solid var(--cizgi-koyu)}
.ts-kenar-ara input{flex:1;min-width:0;border:0;padding:13px 16px;background:transparent}
.ts-kenar-ara input:focus{outline:0}
.ts-kenar-ara button{border:0;background:var(--renk);color:#fff;width:50px}
.ts-kenar-yazilar{list-style:none;margin:0;padding:0}
.ts-kenar-yazilar a{display:flex;gap:12px;align-items:center;padding:8px 0;color:var(--antrasit);font-weight:700;font-size:.92rem;line-height:1.35}
.ts-kenar-yazilar img{width:72px;height:54px;object-fit:cover;flex-shrink:0}
.ts-kenar-yazilar small{display:block;color:var(--soluk);font-weight:400;font-size:.8rem;margin-top:3px}
.ts-bilgi-liste{margin:0}
.ts-bilgi-liste dt{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--soluk);margin-top:12px}
.ts-bilgi-liste dt:first-child{margin-top:0}
.ts-bilgi-liste dd{margin:2px 0 0;color:var(--antrasit);font-weight:700;padding-bottom:12px;border-bottom:1px dashed var(--cizgi)}
.ts-adimlar ol{list-style:none;margin:0;padding:0;counter-reset:a}
.ts-adimlar li{counter-increment:a;position:relative;padding:0 0 16px 40px}
.ts-adimlar li::before{content:counter(a);position:absolute;left:0;top:0;width:28px;height:28px;display:grid;place-items:center;border:1.5px solid var(--renk);color:var(--renk);font-weight:700;font-size:.85rem}
.ts-adimlar strong{display:block;color:var(--antrasit)}
.ts-adimlar span{font-size:.9rem;color:var(--soluk)}

/* ---------- Formlar ---------- */
.ts-form-kutu{border:1px solid var(--cizgi);padding:36px;background:#fff;position:relative}
.ts-form-kutu::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:3px;background:var(--isi-hatti)}
@media (max-width:575.98px){.ts-form-kutu{padding:24px 18px}}
.ts-alan{display:block;margin-bottom:18px}
.ts-alan>span{display:block;font-size:.85rem;font-weight:700;color:var(--antrasit);margin-bottom:6px}
.ts-alan input,.ts-alan select,.ts-alan textarea{display:block;width:100%;padding:12px 14px;border:1px solid var(--cizgi-koyu);border-radius:var(--r);background:#fff;transition:border-color var(--gecis),box-shadow var(--gecis)}
.ts-alan select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--soluk) 50%),linear-gradient(135deg,var(--soluk) 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 15px) 52%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
.ts-alan input:focus,.ts-alan select:focus,.ts-alan textarea:focus{outline:0;border-color:var(--renk);box-shadow:0 0 0 3px rgba(20,90,60,.12)}
.ts-form.denendi :invalid{border-color:var(--sicak)}
.ts-onay{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;color:var(--soluk);margin:4px 0 22px;cursor:pointer}
.ts-onay input{margin-top:5px;accent-color:var(--renk);width:17px;height:17px;flex-shrink:0}
.ts-uyari{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;margin-bottom:20px;border-left:4px solid;font-size:.95rem}
.ts-uyari-basari{background:#e8f4ec;border-color:var(--renk);color:#0f4a31}
.ts-uyari-hata{background:#fbece8;border-color:var(--sicak);color:#7c2a1b}
.ts-uyari-uyari{background:#fdf3e6;border-color:var(--vurgu);color:#6f3d14}
.ts-btn.yukleniyor::after{content:"";width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:don .7s linear infinite}
@keyframes don{to{transform:rotate(360deg)}}

/* İletişim */
.ts-iletisim-kart{background:var(--koyu);color:#c9d8d0;padding:32px;margin-bottom:24px;position:relative}
.ts-iletisim-kart::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--isi-hatti)}
.ts-iletisim-kart h2{color:#fff}
.ts-iletisim-liste{list-style:none;margin:18px 0 22px;padding:0}
.ts-iletisim-liste li{display:flex;gap:16px;padding:12px 0;border-top:1px solid rgba(255,255,255,.1)}
.ts-iletisim-liste i{width:20px;color:var(--vurgu);margin-top:6px;text-align:center}
.ts-iletisim-liste small{display:block;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#8fa99b}
.ts-iletisim-liste a{color:#fff;font-weight:700}
.ts-harita{margin-bottom:24px;border:1px solid var(--cizgi)}
.ts-harita iframe{display:block;width:100%;height:300px}

/* ---------- Galeri, arama, sayfalama, paylaş, filtre ---------- */
.ts-galeri{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.ts-galeri-oge{position:relative;display:block;overflow:hidden;background:var(--cizgi)}
.ts-galeri-oge img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .5s ease}
.ts-galeri-oge:hover img{transform:scale(1.05)}
.ts-galeri-ortu{position:absolute;left:0;right:0;bottom:0;padding:12px 14px;background:linear-gradient(transparent,rgba(13,46,34,.85));color:#fff;display:flex;gap:10px;align-items:center;font-size:.88rem}
.ts-filtre{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}
.ts-filtre a{padding:8px 16px;border:1px solid var(--cizgi-koyu);color:var(--antrasit);font-size:.9rem;font-weight:700}
.ts-filtre a:hover,.ts-filtre a.aktif{background:var(--renk);border-color:var(--renk);color:#fff}
.ts-arama-form{display:flex;gap:10px;max-width:640px}
.ts-arama-form input{flex:1;min-width:0;padding:13px 16px;border:1px solid var(--cizgi-koyu);border-radius:var(--r)}
.ts-arama-sonuclar{margin-top:24px;border-top:1px solid var(--cizgi)}
.ts-arama-sonuc{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid var(--cizgi);color:var(--metin)}
.ts-arama-sonuc img{width:140px;height:96px;object-fit:cover;flex-shrink:0}
.ts-arama-sonuc em{font-style:normal;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--vurgu)}
.ts-arama-sonuc strong{display:block;font-family:var(--baslik-font);font-size:1.25rem;color:var(--antrasit)}
.ts-arama-sonuc small{color:var(--soluk);font-size:.92rem}
@media (max-width:575.98px){.ts-arama-sonuc img{width:90px;height:68px}}
.ts-pagination{display:flex;gap:6px;list-style:none;padding:0;margin:20px 0 0;justify-content:center}
.ts-pagination .page-link{display:grid;place-items:center;min-width:42px;height:42px;padding:0 10px;border:1px solid var(--cizgi-koyu);color:var(--antrasit);font-weight:700}
.ts-pagination .active .page-link,.ts-pagination .page-link:hover{background:var(--renk);border-color:var(--renk);color:#fff}
.ts-paylas{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:24px;font-size:.88rem;color:var(--soluk)}
.ts-paylas a{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--cizgi-koyu);color:var(--antrasit)}
.ts-paylas a:hover{background:var(--renk);border-color:var(--renk);color:#fff}
.ts-404-ic{max-width:640px;margin:0 auto;text-align:center}
.ts-404-kod{display:block;font-family:var(--baslik-font);font-weight:700;font-size:clamp(5rem,3rem + 8vw,9rem);line-height:1;background:var(--isi-hatti);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:10px}
.ts-404 .ts-arama-form{margin:28px auto 0}

/* Yorumlar (ziyaretçi) */
.ts-yorumlar{margin-top:48px;padding-top:36px;border-top:1px solid var(--cizgi)}
.ts-yorumlar .ts-yorum{display:flex;flex-direction:row;gap:16px;padding:18px 0;border:0;border-bottom:1px solid var(--cizgi);margin:0}
.ts-yorum-harf{flex-shrink:0;width:42px;height:42px;display:grid;place-items:center;background:var(--renk-acik);color:var(--renk);font-weight:700}
.ts-yorum-form{margin-top:28px}

/* Ürün / video / banka (modül açıksa) */
.ts-fiyat{font-weight:700;color:var(--renk);margin-bottom:10px}
.ts-fiyat del{color:var(--soluk);font-weight:400;margin-right:6px}
.ts-video{display:block;position:relative;background:#000}
.ts-video img{width:100%;aspect-ratio:16/9;object-fit:cover;opacity:.85}
.ts-video-oynat{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:2.4rem}
.ts-banka{border:1px solid var(--cizgi);padding:24px;margin-bottom:24px}

/* ---------- Footer ---------- */
.ts-footer{background:var(--koyu);color:#a9bfb3;font-size:.94rem;position:relative}
.ts-footer::before{content:"";display:block;height:4px;background:var(--isi-hatti)}
.ts-footer a{color:#dbe8e1}
.ts-footer a:hover{color:#fff}
.ts-footer-ust{display:grid;grid-template-columns:1.3fr 1fr .8fr 1.1fr;gap:40px;padding:72px 0 48px}
.ts-footer-logo{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;font-family:var(--baslik-font);font-weight:700;font-size:1.25rem;color:#fff!important;line-height:1.1}
.ts-footer-logo img{max-height:52px;width:auto}
.ts-footer-marka p{max-width:340px}
.ts-footer-kolon h2{font-size:.82rem;font-family:var(--govde-font);letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:18px}
.ts-footer-kolon ul{list-style:none;margin:0;padding:0}
.ts-footer-kolon li{padding:4px 0}
.ts-footer-iletisim li{display:flex;gap:12px;padding:6px 0}
.ts-footer-iletisim i{color:var(--vurgu);width:16px;margin-top:6px;text-align:center}
.ts-footer-iletisim .ts-btn{margin-top:16px;color:#fff}
.ts-sosyal{display:flex;gap:8px;list-style:none;margin:18px 0 0;padding:0}
.ts-sosyal a{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18)}
.ts-sosyal a:hover{background:var(--vurgu);border-color:var(--vurgu)}
.ts-footer-bolgeler{padding:18px 0;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.88rem}
.ts-footer-bolgeler strong{color:#fff}
.ts-footer-alt{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:22px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.84rem}
.ts-footer-alt p{margin:0}
.ts-footer-alt ul{display:flex;gap:18px;list-style:none;margin:0;padding:0}
@media (max-width:991.98px){.ts-footer-ust{grid-template-columns:1fr 1fr;gap:36px}}
@media (max-width:575.98px){.ts-footer-ust{grid-template-columns:1fr;padding-top:52px}}

/* ---------- Sabit butonlar, mobil çubuk, çerez, bildirim ---------- */
.ts-sabit{position:fixed;right:18px;bottom:18px;z-index:800;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.ts-sabit-whatsapp,.ts-yukari{width:50px;height:50px;display:grid;place-items:center;border:0;border-radius:var(--r);color:#fff;font-size:1.25rem;box-shadow:0 8px 22px rgba(0,0,0,.18)}
.ts-sabit-whatsapp{background:var(--whatsapp);font-size:1.6rem}
.ts-sabit-whatsapp:hover{color:#fff;background:#178e45}
.ts-yukari{background:var(--antrasit);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity var(--gecis),transform var(--gecis),visibility var(--gecis)}
.ts-yukari.gorunur{opacity:1;visibility:visible;transform:none}
.ts-mobil-bar{display:none}
@media (max-width:767.98px){
    .ts-mobil-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:850;background:#fff;border-top:1px solid var(--cizgi);box-shadow:0 -6px 20px rgba(0,0,0,.08);padding-bottom:env(safe-area-inset-bottom)}
    .ts-mobil-bar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 4px;font-size:.74rem;font-weight:700;color:var(--antrasit)}
    .ts-mobil-bar i{font-size:1.15rem;color:var(--renk)}
    .ts-mobil-bar .ts-mb-whatsapp i{color:var(--whatsapp)}
    .ts-mobil-bar .ts-mb-teklif{background:var(--vurgu);color:#fff}
    .ts-mobil-bar .ts-mb-teklif i{color:#fff}
    body:has(.ts-mobil-bar){padding-bottom:62px}
    .ts-sabit{bottom:76px}
    .ts-sabit-whatsapp{display:none}
}
.ts-cerez{position:fixed;left:18px;bottom:18px;z-index:870;max-width:420px;background:var(--antrasit);color:#dbe3e0;padding:16px 18px;display:flex;gap:16px;align-items:center;font-size:.88rem;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.ts-cerez p{margin:0}
.ts-cerez a{color:#fff;text-decoration:underline}
@media (max-width:767.98px){.ts-cerez{left:10px;right:10px;bottom:72px;max-width:none}}
.ts-toast-alan{position:fixed;top:90px;right:18px;z-index:2000;display:flex;flex-direction:column;gap:10px}
.ts-toast{background:var(--antrasit);color:#fff;padding:14px 18px;max-width:360px;font-size:.92rem;border-left:4px solid var(--vurgu)}
.ts-toast-basari{border-left-color:#4caf7d}
.ts-toast-hata{border-left-color:var(--sicak)}

/* ---------- Lightbox ---------- */
.ts-lightbox{position:fixed;inset:0;z-index:3000;background:rgba(10,20,16,.94);display:none;align-items:center;justify-content:center;padding:60px 20px}
.ts-lightbox.acik{display:flex}
.ts-lb-icerik{max-width:1100px;width:100%;text-align:center}
.ts-lb-icerik img{max-height:80vh;width:auto;margin:0 auto}
.ts-lb-icerik figcaption{color:#cfd8d4;margin-top:10px}
.ts-lb-video{position:relative;padding-top:56.25%}
.ts-lb-video iframe{position:absolute;inset:0;width:100%;height:100%}
.ts-lb-kapat,.ts-lb-onceki,.ts-lb-sonraki{position:absolute;border:0;background:rgba(255,255,255,.1);color:#fff;width:48px;height:48px;font-size:1.1rem}
.ts-lb-kapat{top:16px;right:16px}
.ts-lb-onceki{left:16px;top:50%}
.ts-lb-sonraki{right:16px;top:50%}
.ts-lb-sayac{position:absolute;top:26px;left:24px;color:#cfd8d4;font-size:.9rem}

/* ---------- Kaydırınca beliren öğeler (yalnızca JS varsa, hareket azaltılmamışsa) ---------- */
@media (prefers-reduced-motion:no-preference){
    .js [data-animate]{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;transition-delay:var(--gecikme,0ms)}
    .js [data-animate].gorundu{opacity:1;transform:none}
}

/* ---------- Bootstrap grid yardımcıları (yalnızca kullanılanlar) ---------- */
.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}
.mb-0{margin-bottom:0!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}
@media (min-width:992px){.mb-lg-0{margin-bottom:0!important}.mt-lg-0{margin-top:0!important}}
@media print{.ts-header,.ts-footer,.ts-sabit,.ts-mobil-bar,.ts-cerez,.ts-kenar,.ts-cta{display:none!important}}
