/*
Theme Name: Koltuk Teknik Servisi
Theme URI: https://koltukteknikservisi.com
Author: Koltuk Teknik Servisi
Description: Hız, erişilebilirlik, yerel SEO ve yapılandırılmış veri odaklı özel WordPress teması.
Version: 1.0.2
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: kts
*/

:root { --ink:#243a38; --muted:#5e706d; --teal-950:#214f4c; --teal-800:#2f6f69; --teal-700:#397f78; --teal-100:#e1efeb; --teal-50:#f5f9f7; --orange:#b85a36; --orange-dark:#984425; --cream:#fbf6ef; --line:#dde6e3; --white:#fff; --shadow:0 16px 42px rgba(33,79,76,.09); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fcfdfb; color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:17px; line-height:1.65; text-rendering:optimizeLegibility; }
a { color:inherit; text-decoration:none; }
button,input,textarea,select { font:inherit; }
img { max-width:100%; height:auto; }
.container { width:min(1240px,calc(100% - 44px)); margin-inline:auto; }
.narrow { max-width:960px; }
.skip-link { position:fixed; left:14px; top:-70px; z-index:999; padding:12px 18px; background:var(--ink); color:white; border-radius:8px; }
.skip-link:focus { top:14px; }
.utility-bar { background:var(--teal-950); color:#e2efec; font-size:13px; }
.utility-inner { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.utility-inner div { display:flex; gap:12px; align-items:center; }
.utility-inner a:hover { color:white; }
.site-header { position:sticky; top:0; z-index:80; background:rgba(255,255,255,.97); border-bottom:1px solid var(--line); backdrop-filter:blur(12px); }
.header-inner { min-height:78px; display:flex; align-items:center; gap:22px; }
.brand { display:inline-flex; align-items:center; gap:10px; flex:0 0 auto; }
.brand-mark { width:42px; height:42px; display:grid; place-items:center; color:white; font-weight:850; letter-spacing:-.05em; background:var(--teal-800); border-radius:13px 13px 13px 4px; box-shadow:inset -7px -7px 0 rgba(255,255,255,.08); }
.brand-copy { display:grid; line-height:1.03; }
.brand-copy strong { font-size:16px; letter-spacing:-.02em; }
.brand-copy small { color:var(--teal-800); font-size:14px; font-weight:750; }
.desktop-nav { margin-left:auto; display:flex; align-items:center; gap:21px; font-size:14px; font-weight:720; }
.desktop-nav>a,.nav-dropdown>summary { padding-block:26px; cursor:pointer; list-style:none; white-space:nowrap; }
.nav-dropdown>summary::-webkit-details-marker { display:none; }
.nav-dropdown>summary::after { content:"⌄"; margin-left:5px; color:var(--teal-700); }
.desktop-nav>a:hover,.nav-dropdown>summary:hover,.nav-dropdown[open]>summary { color:var(--teal-700); }
.mega-menu { position:absolute; top:77px; left:50%; transform:translateX(-50%); width:min(920px,calc(100vw - 40px)); padding:24px; background:white; border:1px solid var(--line); border-radius:0 0 24px 24px; box-shadow:var(--shadow); }
.services-menu { width:min(620px,calc(100vw - 40px)); }
.menu-label { margin:0 0 10px; color:var(--teal-700); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.mega-menu a { display:grid; padding:13px 14px; border-radius:12px; }
.mega-menu a:hover { background:var(--teal-50); }
.mega-menu strong { font-size:15px; }
.mega-menu span { color:var(--muted); font-size:13px; font-weight:500; line-height:1.45; }
.menu-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:4px 12px; }
.mega-menu .menu-all { display:inline-block; margin-top:10px; color:var(--teal-800); font-weight:800; }
.header-cta { padding:12px 16px!important; font-size:14px; white-space:nowrap; }
.mobile-menu { display:none; margin-left:auto; }
.mobile-menu>summary { width:44px; height:44px; display:grid; align-content:center; gap:5px; padding:10px; border:1px solid var(--line); border-radius:12px; list-style:none; }
.mobile-menu>summary::-webkit-details-marker { display:none; }
.mobile-menu>summary span { display:block; height:2px; background:var(--ink); border-radius:2px; }
.mobile-menu nav { position:absolute; top:77px; left:0; right:0; max-height:calc(100vh - 120px); overflow:auto; padding:14px 20px 22px; display:grid; background:white; border-bottom:1px solid var(--line); box-shadow:var(--shadow); }
.mobile-menu nav a { padding:11px 4px; border-bottom:1px solid var(--line); font-weight:750; }
.mobile-menu nav .sub-link { padding-left:16px; color:var(--muted); font-size:14px; font-weight:650; }
.button { display:inline-flex; min-height:48px; align-items:center; justify-content:center; padding:12px 20px; border-radius:12px; font-weight:800; line-height:1.2; transition:transform .16s ease,background .16s ease; }
.button:hover { transform:translateY(-1px); }
.button-primary { background:var(--orange); color:white; box-shadow:0 9px 22px rgba(152,68,37,.18); }
.button-primary:hover { background:var(--orange-dark); }
.button-secondary { background:white; color:var(--teal-800); border:1px solid var(--line); }
.button-light { background:white; color:var(--teal-950); }
.eyebrow { margin:0 0 10px; color:var(--teal-700); font-size:13px; font-weight:850; text-transform:uppercase; letter-spacing:.12em; }
h1,h2,h3 { margin:0; line-height:1.12; letter-spacing:-.035em; text-wrap:balance; }
h1 { font-size:clamp(40px,5.3vw,72px); }
h2 { font-size:clamp(30px,3.2vw,46px); }
h3 { font-size:22px; }
p { color:var(--muted); }
.home-hero { padding:78px 0 72px; overflow:hidden; background:linear-gradient(135deg,#f3f8f6 0%,#fcfdfb 54%,var(--cream) 100%); }
.home-hero-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr); align-items:center; gap:68px; }
.hero-description { max-width:760px; margin:24px 0 0; font-size:20px; line-height:1.65; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.trust-list { display:flex; flex-wrap:wrap; gap:9px 22px; padding:0; margin:25px 0 0; color:var(--muted); font-size:14px; list-style:none; }
.trust-list li::before { content:"✓"; margin-right:7px; color:var(--teal-700); font-weight:900; }
.diagnostic-card { padding:18px; background:white; border:1px solid var(--line); border-radius:26px; box-shadow:var(--shadow); transform:rotate(1deg); }
.diagnostic-card>div { display:grid; grid-template-columns:1.2fr .8fr; gap:12px; padding:15px 12px; border-bottom:1px solid var(--line); }
.diagnostic-card strong { font-size:14px; }
.diagnostic-card span { color:var(--muted); font-size:13px; }
.diagnostic-card .diagnostic-top { padding-top:5px; color:var(--teal-700); font-size:11px; font-weight:850; text-transform:uppercase; letter-spacing:.1em; }
.diagnostic-card>a { display:block; padding:16px 12px 5px; color:var(--teal-800); font-weight:850; }
.section { padding:88px 0; }
.section-soft { background:var(--teal-50); }
.section-teal { background:var(--teal-950); color:white; }
.section-teal p { color:#e0eeeb; }
.section-heading { max-width:900px; margin-bottom:36px; }
.section-heading>p:last-child { margin:16px 0 0; font-size:18px; }
.card-grid { display:grid; gap:20px; }
.card-grid.three { grid-template-columns:repeat(3,1fr); }
.service-card { position:relative; min-height:330px; display:flex; flex-direction:column; padding:30px; overflow:hidden; background:white; border:1px solid var(--line); border-radius:22px; box-shadow:0 12px 30px rgba(7,60,58,.05); }
.service-card::after { content:""; position:absolute; width:90px; height:90px; right:-35px; bottom:-35px; border:18px solid var(--teal-100); border-radius:50%; }
.card-number { margin-bottom:auto; color:var(--orange); font-size:14px; font-weight:900; }
.service-card h2 { margin-bottom:14px; font-size:28px; }
.service-card p:not(.eyebrow) { margin:0 0 24px; }
.service-card a { margin-top:auto; color:var(--teal-800); font-weight:850; }
.split-layout { display:grid; grid-template-columns:.75fr 1.25fr; gap:70px; align-items:start; }
.text-link { color:var(--teal-800); font-weight:850; }
.issue-list { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.issue-list a { display:flex; min-height:120px; flex-direction:column; justify-content:space-between; padding:20px; background:white; border:1px solid var(--line); border-radius:16px; }
.issue-list a:hover { border-color:var(--teal-700); }
.issue-list span { color:var(--muted); font-size:14px; }
.issue-list strong { margin-top:14px; color:var(--teal-800); }
.process-grid { display:grid; grid-template-columns:1.2fr repeat(2,1fr); gap:18px; }
.process-grid>div:first-child { grid-row:span 2; padding-right:30px; }
.process-step { min-height:180px; padding:24px; background:var(--cream); border-radius:18px; }
.process-step span { width:34px; height:34px; display:grid; place-items:center; color:white; background:var(--orange); border-radius:50%; font-weight:900; }
.process-step p { margin:25px 0 0; color:var(--ink); font-weight:700; }
.corporate-block { display:grid; grid-template-columns:1.2fr .8fr; gap:80px; align-items:center; }
.corporate-block h2 { max-width:720px; }
.corporate-block .button { margin-top:16px; }
.corporate-block ul { margin:0; padding:25px 30px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.13); border-radius:22px; list-style:none; }
.corporate-block li { padding:14px 0; border-bottom:1px solid rgba(255,255,255,.12); }
.corporate-block li:last-child { border:0; }
.corporate-block li::before { content:"✓"; margin-right:10px; color:#70d8ca; }
.area-pills { display:flex; flex-wrap:wrap; gap:10px; }
.area-pills a { padding:11px 16px; color:var(--teal-800); background:var(--teal-50); border:1px solid var(--line); border-radius:999px; font-weight:760; }
.area-pills .all-areas { color:white; background:var(--teal-800); border-color:var(--teal-800); }
.faq-list { display:grid; gap:10px; }
.faq-list details { padding:20px 22px; background:white; border:1px solid var(--line); border-radius:14px; }
.faq-list summary { cursor:pointer; font-weight:820; }
.faq-list p { margin:14px 0 0; }
.cta-band { padding:52px 0; background:var(--orange); color:white; }
.cta-band .eyebrow,.cta-band p { color:#fff2e9; }
.cta-band h2 { max-width:740px; }
.cta-band-inner { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.cta-band-inner p:last-child { max-width:750px; margin-bottom:0; }
.page-hero { padding:42px 0 72px; background:linear-gradient(135deg,#f3f8f6,#fcfdfb 68%); }
.page-hero-inner { max-width:1240px; }
.page-hero h1 { max-width:1080px; }
.page-hero .hero-description { max-width:970px; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:7px; padding-top:20px; color:var(--muted); font-size:13px; }
.breadcrumbs>span { display:flex; gap:7px; }
.content-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.content-card { display:flex; flex-direction:column; padding:30px; background:white; border:1px solid var(--line); border-radius:22px; box-shadow:0 10px 30px rgba(7,60,58,.05); }
.content-card h2 { font-size:29px; }
.content-card p:not(.eyebrow) { margin:15px 0 18px; }
.content-card .text-link { margin-top:auto; padding-top:18px; }
.mini-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.mini-card { padding:25px; background:var(--teal-50); border:1px solid var(--line); border-radius:18px; }
.mini-card h2 { font-size:24px; }
.mini-card p { margin-bottom:0; }
.responsive-table { overflow:auto; background:white; border:1px solid var(--line); border-radius:18px; }
.responsive-table table { width:100%; min-width:720px; border-collapse:collapse; }
.responsive-table th,.responsive-table td { padding:18px 20px; text-align:left; vertical-align:top; border-bottom:1px solid var(--line); }
.responsive-table th { color:var(--teal-800); background:#eaf8f5; font-size:13px; text-transform:uppercase; letter-spacing:.06em; }
.responsive-table tr:last-child td { border-bottom:0; }
.two-col-content { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:70px; align-items:start; }
.check-list,.clean-list,.expert-list { padding:0; margin:0; list-style:none; }
.check-list li { position:relative; padding:14px 0 14px 32px; border-bottom:1px solid var(--line); }
.check-list li::before { content:"✓"; position:absolute; left:0; color:var(--teal-700); font-weight:900; }
.clean-list li { padding:9px 0; color:var(--muted); }
.clean-list li::before { content:"•"; margin-right:10px; color:var(--orange); font-weight:900; }
.clean-list.numbered { counter-reset:item; }
.clean-list.numbered li { display:flex; align-items:center; gap:12px; color:var(--ink); }
.clean-list.numbered li::before { display:none; }
.clean-list.numbered li span { width:34px; height:34px; display:grid; flex:0 0 auto; place-items:center; color:white; background:var(--teal-800); border-radius:50%; font-weight:850; }
.text-block { padding:18px 0; border-bottom:1px solid var(--line); }
.text-block:first-of-type { padding-top:0; }
.text-block p { margin-bottom:0; }
.expert-list { padding:26px 30px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.13); border-radius:22px; }
.expert-list li { padding:14px 0 14px 28px; position:relative; color:#e1efed; border-bottom:1px solid rgba(255,255,255,.12); }
.expert-list li:last-child { border:0; }
.expert-list li::before { content:"✓"; position:absolute; left:0; color:#70d8ca; }
.link-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.link-card-grid.three-links { grid-template-columns:repeat(3,minmax(0,1fr)); }
.link-card-grid a { min-height:125px; display:flex; flex-direction:column; justify-content:space-between; padding:20px; background:var(--teal-50); border:1px solid var(--line); border-radius:16px; }
.link-card-grid a:hover { border-color:var(--teal-700); }
.link-card-grid strong { color:var(--teal-800); }
.link-card-grid span { margin-top:12px; color:var(--muted); font-size:14px; }
.tag-list { display:flex; flex-wrap:wrap; gap:7px; margin:8px 0 20px; }
.tag-list span { padding:6px 10px; color:var(--teal-800); background:var(--teal-50); border:1px solid var(--line); border-radius:999px; font-size:12px; font-weight:750; }
.hero-tags { margin-top:25px; }
.caution { margin-top:22px; padding:22px; background:#fff4eb; border-left:5px solid var(--orange); border-radius:12px; }
.caution strong { color:var(--orange-dark); }
.caution p { margin:7px 0 0; color:var(--ink); }
.area-group+ .area-group { margin-top:70px; }
.area-group>h2 { margin-bottom:24px; }
.district-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.district-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
.district-grid article { display:flex; flex-direction:column; padding:24px; background:white; border:1px solid var(--line); border-radius:18px; }
.district-grid h3 { font-size:25px; }
.district-grid p { margin:13px 0; }
.district-grid .text-link { margin-top:auto; padding-top:14px; }
.local-links { display:flex; flex-wrap:wrap; gap:7px; margin:4px 0 16px; }
.local-links a { padding:6px 9px; color:var(--teal-800); background:var(--teal-50); border-radius:999px; font-size:12px; font-weight:750; }
.local-links.large a { padding:10px 14px; font-size:14px; border:1px solid var(--line); }
.focus-line { color:var(--ink)!important; font-size:14px; }
.local-note { max-width:980px; margin-top:24px; padding:15px 19px; color:var(--ink); background:#fff8ed; border-left:4px solid var(--orange); border-radius:10px; font-size:14px; }
.local-type-note { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:24px; }
.local-type-note p { margin:0; padding:18px; background:var(--cream); border-radius:14px; font-size:14px; }
.local-query-box { margin-top:24px; padding:22px; background:white; border:1px solid var(--line); border-radius:16px; }
.local-query-box h3 { font-size:20px; }
.local-query-box p { margin-bottom:0; }
.local-jump-nav { position:sticky; z-index:55; top:78px; background:rgba(255,255,255,.96); border-top:1px solid var(--line); border-bottom:1px solid var(--line); backdrop-filter:blur(10px); }
.local-jump-nav .container { display:flex; gap:8px; padding-block:10px; overflow-x:auto; scrollbar-width:none; }
.local-jump-nav .container::-webkit-scrollbar { display:none; }
.local-jump-nav a { flex:0 0 auto; padding:8px 13px; color:var(--teal-800); background:var(--teal-50); border:1px solid var(--line); border-radius:999px; font-size:13px; font-weight:800; }
.local-jump-nav a:hover { color:white; background:var(--teal-800); border-color:var(--teal-800); }
section[id] { scroll-margin-top:145px; }
.local-intro-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:64px; align-items:start; }
.local-intro-grid .section-heading { margin-bottom:22px; }
.local-intro-grid>div>p { max-width:850px; font-size:18px; }
.local-summary-card { display:grid; gap:12px; padding:30px; color:white; background:linear-gradient(145deg,var(--teal-800),var(--teal-950)); border-radius:22px; box-shadow:var(--shadow); }
.local-summary-card span { color:#bfe2dd; font-size:12px; font-weight:850; text-transform:uppercase; letter-spacing:.1em; }
.local-summary-card strong { font-size:24px; line-height:1.25; }
.local-summary-card p { margin:0; color:#d7ebe8; }
.local-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:44px; }
.local-service-card { min-height:420px; display:flex; flex-direction:column; padding:30px; background:white; border:1px solid var(--line); border-radius:22px; box-shadow:0 12px 32px rgba(7,60,58,.06); }
.local-service-card:hover { border-color:var(--teal-700); transform:translateY(-2px); }
.local-service-card h2 { font-size:29px; }
.local-service-card>p:not(.eyebrow) { margin:18px 0; }
.local-service-card ul { margin:0; padding:0; list-style:none; }
.local-service-card li { padding:9px 0; color:var(--muted); border-bottom:1px solid var(--line); }
.local-service-card li::before { content:"✓"; margin-right:8px; color:var(--orange); font-weight:900; }
.local-service-card .card-link { margin-top:auto; padding-top:24px; color:var(--teal-800); }
.local-repair-table table { min-width:1000px; }
.local-repair-table th:first-child { width:28%; }
.local-repair-table td { line-height:1.5; }
.table-link { display:inline-block; min-width:92px; color:var(--teal-800); font-weight:850; }
.local-diagnosis-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:28px; }
.local-diagnosis-grid>div { padding:28px; background:white; border:1px solid var(--line); border-radius:18px; }
.local-diagnosis-grid h3 { margin-bottom:12px; }
.upholstery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.upholstery-grid article { padding:27px; background:var(--cream); border:1px solid #eee2d3; border-radius:20px; }
.upholstery-grid h3 { color:var(--teal-800); }
.upholstery-grid p { margin-bottom:0; }
.section-link-row { display:flex; flex-wrap:wrap; gap:12px 28px; margin:28px 0 0; }
.local-process-layout { gap:86px; }
.local-process-layout>div { padding:34px; background:white; border:1px solid var(--line); border-radius:22px; }
.local-process-layout .section-heading { margin-bottom:20px; }
.local-process-layout .timeline li { grid-template-columns:150px 1fr; }
.local-decision-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:80px; align-items:start; }
.local-decision-grid .section-heading { margin-bottom:20px; }
.decision-note { display:grid; gap:6px; margin-top:28px; padding:24px; background:var(--teal-50); border-left:5px solid var(--teal-700); border-radius:14px; }
.decision-note span { color:var(--muted); }
.local-faq { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:start; }
.local-faq details { min-height:72px; }
.local-faq details[open] { border-color:#b9dcd7; box-shadow:0 10px 26px rgba(7,60,58,.05); }
.local-nearby { padding-block:62px; border-top:1px solid var(--line); }
.timeline { margin:0; padding:0; counter-reset:step; list-style:none; }
.timeline li { position:relative; display:grid; grid-template-columns:140px 1fr; gap:18px; padding:18px 0 18px 45px; border-bottom:1px solid var(--line); }
.timeline li::before { counter-increment:step; content:counter(step); position:absolute; left:0; top:17px; width:30px; height:30px; display:grid; place-items:center; color:white; background:var(--orange); border-radius:50%; font-weight:850; }
.timeline span { color:var(--muted); }
.issue-list.simple { grid-template-columns:1fr; }
.quote-form { padding:30px; background:white; border:1px solid var(--line); border-radius:22px; box-shadow:0 16px 44px rgba(7,60,58,.07); }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.form-grid label { display:grid; gap:8px; color:var(--ink); font-size:14px; font-weight:800; }
.form-grid label.full { grid-column:1 / -1; }
.form-grid input,.form-grid select,.form-grid textarea { width:100%; padding:13px 14px; color:var(--ink); background:white; border:1px solid #b8cbc8; border-radius:10px; font:inherit; }
.form-grid textarea { min-height:120px; resize:vertical; }
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus { outline:3px solid rgba(14,124,116,.16); border-color:var(--teal-700); }
.quote-form .button { margin-top:18px; border:0; cursor:pointer; }
.form-note,.form-status { margin:12px 0 0; font-size:13px; }
.form-status { color:var(--teal-800); font-weight:750; }
.contact-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:60px; align-items:start; }
.contact-cards { display:grid; gap:12px; }
.contact-cards a,.address-card { display:flex; flex-direction:column; gap:5px; padding:20px; background:white; border:1px solid var(--line); border-radius:16px; }
.contact-cards a:hover { border-color:var(--teal-700); }
.contact-cards span,.address-card span { color:var(--muted); font-size:13px; font-weight:700; }
.contact-cards strong,.address-card strong { color:var(--teal-800); }
.fact-card { margin:0; padding:24px; background:var(--teal-50); border:1px solid var(--line); border-radius:18px; }
.fact-card div { display:grid; grid-template-columns:minmax(120px,.75fr) 1.25fr; gap:18px; padding:13px 0; border-bottom:1px solid var(--line); }
.fact-card div:last-child { border-bottom:0; }
.fact-card dt { color:var(--muted); font-size:14px; font-weight:750; }
.fact-card dd { margin:0; color:var(--ink); font-weight:750; }
.center-link { margin-top:24px; text-align:center; }
.placeholder-note { padding:28px; background:#fff8ed; border:1px solid #f1d8c2; border-radius:18px; }
.placeholder-note p:last-child { margin-bottom:0; }
.legal-copy { max-width:860px; }
.legal-copy h2 { margin-top:38px; font-size:28px; }
.legal-copy h3 { margin-top:28px; }
.legal-copy ul { color:var(--muted); }
.site-footer { padding:62px 0 22px; background:#1d4643; color:white; }
.site-footer p { color:#bcd4d1; }
.footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr 1.1fr; gap:48px; }
.site-footer .brand { margin-bottom:14px; }
.site-footer .brand-copy small,.site-footer .brand-copy strong { color:white; }
.footer-grid h2 { margin-bottom:16px; font-size:15px; letter-spacing:0; }
.footer-grid>div:not(:first-child) { display:flex; flex-direction:column; align-items:flex-start; }
.footer-grid a { padding:5px 0; color:#cbe0dd; font-size:14px; }
.footer-grid a:hover { color:white; }
.footer-address { font-size:14px; }
.footer-whatsapp { margin-top:9px; color:#ffc1a3!important; font-weight:800; }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:45px; padding-top:18px; color:#94b8b4; border-top:1px solid rgba(255,255,255,.12); font-size:12px; }
.footer-bottom div { display:flex; gap:18px; }
.mobile-contact-bar { display:none; }
@media (max-width:1080px) { .desktop-nav{display:none}.mobile-menu{display:block}.header-cta{margin-left:auto}.home-hero-grid{grid-template-columns:1fr .75fr;gap:38px} }
@media (max-width:1080px) { .local-service-grid{grid-template-columns:1fr 1fr}.upholstery-grid{grid-template-columns:1fr 1fr}.local-service-card:last-child{grid-column:1 / -1;min-height:330px} }
@media (max-width:760px) { body{font-size:16px;padding-bottom:62px}.container{width:min(100% - 28px,1240px)}.utility-inner>span,.utility-inner div span,.utility-inner div a:last-child{display:none}.utility-inner{justify-content:center}.header-inner{min-height:68px;gap:10px}.brand-mark{width:38px;height:38px}.brand-copy strong{font-size:14px}.brand-copy small{font-size:12px}.header-cta{display:none}.mobile-menu nav{top:67px}h1{font-size:clamp(38px,12vw,52px)}h2{font-size:31px}.home-hero{padding:54px 0 48px}.home-hero-grid,.split-layout,.corporate-block,.footer-grid{grid-template-columns:1fr}.home-hero-grid{gap:38px}.hero-description{font-size:18px}.hero-actions{display:grid}.trust-list{display:grid;gap:8px}.diagnostic-card{transform:none}.section{padding:62px 0}.card-grid.three,.issue-list,.process-grid{grid-template-columns:1fr}.service-card{min-height:290px;padding:24px}.split-layout{gap:32px}.process-grid>div:first-child{grid-row:auto;padding-right:0}.process-step{min-height:150px}.corporate-block{gap:30px}.cta-band-inner{align-items:flex-start;flex-direction:column}.footer-grid{gap:32px}.footer-bottom{align-items:flex-start;flex-direction:column}.local-jump-nav{top:68px}.local-jump-nav .container{width:100%;padding-inline:14px}.mobile-contact-bar{position:fixed;z-index:100;left:0;right:0;bottom:0;height:62px;display:grid;grid-template-columns:.7fr 1.3fr;background:white;border-top:1px solid var(--line);box-shadow:0 -8px 25px rgba(7,60,58,.12)}.mobile-contact-bar a{display:grid;place-items:center;font-weight:850}.mobile-contact-bar a:first-child{color:var(--teal-800)}.mobile-contact-bar a:last-child{color:white;background:var(--orange)} }
@media (max-width:760px) { .content-card-grid,.mini-card-grid,.two-col-content,.link-card-grid,.link-card-grid.three-links,.district-grid,.district-grid.compact,.local-type-note,.contact-grid,.form-grid,.local-intro-grid,.local-service-grid,.local-diagnosis-grid,.upholstery-grid,.local-decision-grid,.local-faq{grid-template-columns:1fr}.two-col-content,.contact-grid,.local-intro-grid,.local-decision-grid{gap:32px}.content-card,.quote-form,.local-process-layout>div{padding:24px}.local-service-card,.local-service-card:last-child{grid-column:auto;min-height:0;padding:24px}.local-intro-grid>div>p{font-size:16px}.local-summary-card{padding:24px}.form-grid label.full{grid-column:auto}.fact-card div{grid-template-columns:1fr;gap:4px}.responsive-table{margin-inline:-14px;border-radius:0;border-left:0;border-right:0}.local-repair-table table{min-width:900px}.timeline li,.local-process-layout .timeline li{grid-template-columns:1fr;gap:3px}.area-group+.area-group{margin-top:50px}.section-link-row{display:grid;gap:10px}.local-nearby{padding-block:50px} }
@media (prefers-reduced-motion:reduce) { *{scroll-behavior:auto!important;transition:none!important} }

/* WordPress integration */
.admin-bar .site-header { top:32px; }
.post-card { margin-top:24px; }
.post-card h2 { font-size:30px; }
:where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid rgba(57,127,120,.35); outline-offset:3px; border-radius:5px; }
.screen-reader-text { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:782px) { .admin-bar .site-header{top:46px} }
