:root {
    --ink: #222;
    --ink-soft: #333;
    --paper: #f4f4f4;
    --paper-deep: #e7e7e7;
    --white: #fff;
    --gold: #ff5203;
    --gold-dark: #d94200;
    --muted: #777;
    --line: rgba(34, 34, 34, .14);
    --shadow: 0 24px 60px rgba(0, 0, 0, .12);
    --thm-primary: #ff5203;
    --thm-black: #222;
    --thm-gray: #777;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.store-body { margin: 0; background: var(--white); color: var(--ink); font-family: "DM Sans", sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; }
img { max-width: 100%; }
button, input, select, textarea { font: inherit; }
:focus-visible { outline: 3px solid rgba(200, 154, 85, .72); outline-offset: 3px; }
.font-serif { font-family: "Playfair Display", serif !important; }
.skip-link { position: fixed; left: 16px; top: -100px; z-index: 9999; background: #fff; padding: 12px 18px; border-radius: 4px; }
.skip-link:focus { top: 16px; }
.announcement-bar { background: var(--ink); color: rgba(255,255,255,.82); font-size: .77rem; letter-spacing: .04em; padding: 9px 0; }
.announcement-bar i, .text-gold { color: var(--gold) !important; }

.site-header { background: rgba(255,253,249,.96); box-shadow: 0 1px 0 var(--line); backdrop-filter: blur(14px); }
.site-header .navbar { min-height: 84px; }
.store-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; color: var(--ink); }
.store-brand img { display: block; width: 215px; height: 66px; object-fit: cover; object-position: center; }
.brand-symbol { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--gold); border-radius: 50%; color: var(--gold-dark); font-size: 1.35rem; }
.store-brand strong { display: block; font-family: "Playfair Display", serif; font-size: 1.16rem; line-height: 1; }
.store-brand small { display: block; margin-top: 5px; color: var(--muted); font-size: .63rem; letter-spacing: .12em; text-transform: uppercase; }
.site-header .nav-link { color: var(--ink); font-size: .9rem; font-weight: 600; padding: 12px 14px !important; }
.site-header .nav-link:hover, .site-header .nav-link.active { color: var(--gold-dark); }
.site-header .dropdown-menu { padding: 10px; border: 0; border-radius: 4px; box-shadow: var(--shadow); min-width: 230px; }
.site-header .dropdown-item { padding: 9px 12px; border-radius: 3px; font-size: .88rem; }
.site-header .dropdown-item:hover { background: var(--paper); color: var(--gold-dark); }
.header-actions { display: flex; align-items: center; gap: 8px; }
.quote-list-action { position: relative; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 12px; border: 1px solid var(--line); color: var(--ink); text-decoration: none; font-size: .76rem; font-weight: 800; }
.quote-list-action:hover, .quote-list-action.active { border-color: var(--gold); color: var(--gold-dark); }
.quote-list-action b { display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 50%; background: var(--gold); color: var(--ink); font-size: .68rem; }
.icon-action { width: 43px; height: 43px; display: inline-grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; text-decoration: none; }
.btn { border-radius: 2px; font-weight: 700; letter-spacing: .01em; }
.btn-brand { background: var(--gold); border-color: var(--gold); color: var(--ink); padding: 12px 22px; }
.btn-brand:hover, .btn-brand:focus { background: #d7aa66; border-color: #d7aa66; color: var(--ink); transform: translateY(-1px); }
.btn-ghost-light { border: 1px solid rgba(255,255,255,.56); color: #fff; padding: 14px 24px; }
.btn-ghost-light:hover { background: #fff; color: var(--ink); }

.store-hero { position: relative; min-height: 700px; overflow: hidden; color: #fff; background: var(--ink); }
.store-hero-media { position: absolute; inset: 0; background-image: url('../img/store/showroom.jpg'); background-size: cover; background-position: 56% center; transform: scale(1.01); }
.store-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(15,12,8,.94) 0%, rgba(15,12,8,.76) 40%, rgba(15,12,8,.2) 75%, rgba(15,12,8,.08) 100%); }
.min-vh-hero { min-height: 700px; }
.hero-kicker { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 26px; color: #e0c293; text-transform: uppercase; letter-spacing: .16em; font-size: .74rem; font-weight: 700; }
.hero-kicker span { width: 36px; height: 1px; background: var(--gold); }
.store-hero h1 { margin: 0 0 24px; font-family: "Playfair Display", serif; font-size: clamp(4rem, 7.5vw, 7rem); font-weight: 600; line-height: .88; letter-spacing: -.045em; }
.store-hero h1 em { color: var(--gold); font-weight: 600; }
.hero-lead { max-width: 610px; color: rgba(255,255,255,.76); font-size: 1.12rem; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.hero-trust { display: flex; flex-wrap: wrap; gap: 19px; margin-top: 42px; color: rgba(255,255,255,.73); font-size: .8rem; }
.hero-trust i { width: 20px; height: 20px; display: inline-grid; place-items: center; margin-right: 5px; border: 1px solid rgba(200,154,85,.65); border-radius: 50%; color: var(--gold); font-size: .58rem; }
.scroll-cue { position: absolute; right: 4.5%; bottom: 34px; display: flex; align-items: center; gap: 14px; color: rgba(255,255,255,.75); text-decoration: none; font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; transform: rotate(90deg); transform-origin: right center; }

.benefit-strip { position: relative; z-index: 2; background: var(--white); border-bottom: 1px solid var(--line); }
.benefit-item { display: flex; align-items: center; justify-content: center; gap: 14px; min-height: 108px; padding: 20px; border-right: 1px solid var(--line); }
.benefit-item:last-child { border-right: 0; }
.benefit-item > i { color: var(--gold-dark); font-size: 1.35rem; }
.benefit-item strong, .benefit-item small { display: block; }
.benefit-item strong { font-size: .86rem; }
.benefit-item small { color: var(--muted); font-size: .72rem; margin-top: 2px; }

.section-space { padding: 110px 0; }
.section-heading { margin-bottom: 42px; }
.section-heading.mx-auto { max-width: 700px; }
.section-heading h2, .editorial-copy h2, .inspiration-section h2, .page-hero h1, .store-catalog h1 { margin: 8px 0 0; font-family: "Playfair Display", serif; font-size: clamp(2.4rem, 4.5vw, 4rem); line-height: 1.05; letter-spacing: -.035em; }
.section-heading p { margin-top: 14px; color: var(--muted); }
.eyebrow { color: var(--gold-dark); font-size: .72rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.text-link { display: inline-flex; align-items: center; gap: 10px; padding-bottom: 5px; border-bottom: 1px solid var(--ink); text-decoration: none; font-size: .84rem; font-weight: 700; }
.text-link:hover { color: var(--gold-dark); border-color: var(--gold-dark); }

.category-grid { display: grid; grid-template-columns: repeat(12, 1fr); grid-auto-rows: 235px; gap: 16px; }
.category-tile { position: relative; grid-column: span 4; overflow: hidden; color: #fff; text-decoration: none; background: var(--ink); }
.category-tile:nth-child(1), .category-tile:nth-child(4) { grid-column: span 6; grid-row: span 2; }
.category-tile img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
.category-tile:hover img { transform: scale(1.06); }
.category-overlay { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(13,10,7,.86) 0%, rgba(13,10,7,.05) 70%); }
.category-content { position: absolute; left: 0; right: 0; bottom: 0; padding: 28px; }
.category-content small { display: block; color: #ddbc87; font-size: .69rem; letter-spacing: .13em; text-transform: uppercase; }
.category-content strong { display: block; margin-top: 6px; font-family: "Playfair Display", serif; font-size: 1.65rem; }
.category-content em { display: inline-flex; align-items: center; gap: 8px; max-height: 0; opacity: 0; overflow: hidden; font-style: normal; font-size: .76rem; transition: .3s ease; }
.category-tile:hover .category-content em { max-height: 30px; opacity: 1; margin-top: 12px; }

.products-section { background: var(--paper); }
.product-card { height: 100%; background: var(--white); border: 1px solid rgba(23,19,14,.08); transition: box-shadow .3s ease, transform .3s ease; }
.product-card:hover { box-shadow: var(--shadow); transform: translateY(-4px); }
.product-image { position: relative; display: block; aspect-ratio: 4/4.5; overflow: hidden; background: #e9e3d9; }
.product-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease; }
.product-card:hover .product-image img { transform: scale(1.045); }
.product-badge { position: absolute; top: 14px; left: 14px; background: var(--gold); color: var(--ink); padding: 6px 10px; font-size: .66rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.product-view { position: absolute; left: 12px; right: 12px; bottom: -50px; padding: 12px; background: rgba(23,19,14,.92); color: #fff; text-align: center; font-size: .78rem; transition: bottom .3s ease; }
.product-card:hover .product-view { bottom: 12px; }
.product-info { padding: 20px; }
.product-info small { color: var(--gold-dark); font-size: .65rem; letter-spacing: .1em; text-transform: uppercase; }
.product-info h3 { min-height: 46px; margin: 7px 0 14px; font-family: "Playfair Display", serif; font-size: 1.08rem; line-height: 1.35; }
.product-info h3 a { text-decoration: none; }
.product-code { margin: -7px 0 12px; color: var(--muted); font-size: .7rem; letter-spacing: .05em; }
.stock-chip { flex: 0 0 auto; padding: 4px 7px; border-radius: 999px; font-size: .58rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.stock-chip.in-stock { background: #e5f4e9; color: #216b36; }
.stock-chip.on-order { background: #f7edda; color: #815b1d; }
.stock-chip.out-of-stock { background: #f4e4e3; color: #8a302a; }
.product-price { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.product-price del { color: #9a9187; font-size: .75rem; }
.product-price strong { color: var(--ink); font-size: .92rem; }
.empty-state { padding: 70px 30px; background: var(--white); text-align: center; }
.empty-state > i { color: var(--gold); font-size: 3rem; }
.empty-state h3 { margin-top: 18px; font-family: "Playfair Display", serif; }
.empty-state p { color: var(--muted); }

.editorial-section { background: var(--ink); color: #fff; }
.editorial-photo img { width: 100%; height: 100%; min-height: 680px; object-fit: cover; }
.editorial-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(60px, 7vw, 120px); background: var(--ink); }
.editorial-copy p { max-width: 650px; color: rgba(255,255,255,.68); line-height: 1.8; }
.editorial-points { display: grid; gap: 24px; margin-top: 28px; }
.editorial-points > div { display: flex; gap: 18px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.13); }
.editorial-points strong { color: var(--gold); font-family: "Playfair Display", serif; font-size: 1.2rem; }
.editorial-points b, .editorial-points small { display: block; }
.editorial-points b { margin-bottom: 5px; font-size: .92rem; }
.editorial-points small { color: rgba(255,255,255,.56); line-height: 1.5; }
.inspiration-section { background: var(--white); }
.inspiration-section p { color: var(--muted); line-height: 1.8; }
.check-list { display: grid; gap: 10px; padding: 0; margin: 25px 0; list-style: none; }
.check-list li::before { content: "✓"; display: inline-grid; place-items: center; width: 22px; height: 22px; margin-right: 10px; border: 1px solid var(--gold); border-radius: 50%; color: var(--gold-dark); font-size: .7rem; }
.quote-card { position: relative; margin-left: auto; max-width: 620px; padding: clamp(42px, 6vw, 80px); background: var(--paper); }
.quote-card i { color: var(--gold); font-size: 2.5rem; }
.quote-card p { margin: 22px 0; color: var(--ink); font-family: "Playfair Display", serif; font-size: clamp(1.6rem, 3vw, 2.45rem); line-height: 1.3; }
.quote-card span { color: var(--muted); font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; }

.page-hero, .catalog-hero { padding: 90px 0 75px; background: var(--ink); color: #fff; }
.page-hero p, .catalog-hero p { max-width: 650px; margin-top: 18px; color: rgba(255,255,255,.67); }
.breadcrumb { --bs-breadcrumb-divider-color: rgba(255,255,255,.4); --bs-breadcrumb-item-active-color: rgba(255,255,255,.55); font-size: .78rem; }
.breadcrumb a { color: rgba(255,255,255,.82); text-decoration: none; }
.catalog-toolbar { padding: 25px; background: var(--paper); border: 1px solid var(--line); }
.catalog-toolbar .form-control, .catalog-toolbar .form-select { min-height: 48px; border-color: var(--line); border-radius: 2px; background-color: var(--white); }
.category-pills { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 5px; }
.category-pill { flex: 0 0 auto; padding: 9px 14px; border: 1px solid var(--line); background: var(--white); color: var(--ink); text-decoration: none; font-size: .78rem; font-weight: 700; }
.category-pill:hover, .category-pill.active { background: var(--ink); border-color: var(--ink); color: #fff; }

/* Catalog 2.0 */
.catalog-search { position: relative; display: grid; grid-template-columns: 1fr auto; padding: 7px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(12px); }
.catalog-search > i { position: absolute; left: 22px; top: 50%; color: rgba(255,255,255,.58); transform: translateY(-50%); }
.catalog-search .form-control { min-height: 50px; padding-left: 46px; border: 0; border-radius: 0; background: transparent; color: #fff; box-shadow: none; }
.catalog-search .form-control::placeholder { color: rgba(255,255,255,.55); }
.catalog-search .btn { min-width: 86px; }
.catalog-category-strip { padding-bottom: 8px; scrollbar-width: thin; }
.category-pill span { margin-left: 4px; opacity: .55; }
.catalog-mobile-actions { display: flex; align-items: center; justify-content: space-between; }
.catalog-mobile-actions .btn { position: relative; }
.catalog-mobile-actions b, .catalog-filter-heading b { display: inline-grid; place-items: center; min-width: 22px; height: 22px; margin-left: 8px; padding: 0 6px; border-radius: 99px; background: var(--gold); color: var(--ink); font-size: .68rem; }
.catalog-mobile-actions > span { color: var(--muted); font-size: .8rem; }
.active-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.active-filters > span { margin-right: 4px; color: var(--muted); font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.active-filters a { display: inline-flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid var(--line); background: var(--paper); color: var(--ink); text-decoration: none; font-size: .72rem; font-weight: 700; }
.active-filters a:hover { border-color: var(--gold); color: var(--gold-dark); }
.active-filters .clear-all { background: transparent; border-color: transparent; text-decoration: underline; text-underline-offset: 3px; }
.catalog-filter-panel { position: sticky; top: 112px; border: 1px solid var(--line); background: #fff; }
.catalog-filter-heading { display: flex; align-items: center; justify-content: space-between; padding: 20px 22px; border-bottom: 1px solid var(--line); font-family: "Playfair Display", serif; font-size: 1.35rem; font-weight: 700; }
.catalog-filter-form { padding: 6px 22px 24px; }
.filter-group { margin: 0; padding: 21px 0; border: 0; border-bottom: 1px solid var(--line); }
.filter-group > label, .filter-group > legend { display: block; float: none; width: auto; margin: 0 0 12px; padding: 0; color: var(--ink); font-size: .73rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.filter-group .form-select, .filter-group .form-control { min-height: 45px; border-color: var(--line); border-radius: 2px; background-color: var(--white); font-size: .82rem; box-shadow: none; }
.filter-options { display: grid; gap: 9px; }
.filter-options label { display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: .82rem; cursor: pointer; }
.filter-options input { width: 17px; height: 17px; accent-color: var(--gold-dark); }
.filter-options input:checked + span { color: var(--ink); font-weight: 700; }
.price-range { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.price-range label { display: block; margin-bottom: 5px; color: var(--muted); font-size: .66rem; }
.catalog-filter-form > .d-grid { padding-top: 22px; }
.catalog-toolbar-modern { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 54px; }
.catalog-toolbar-modern p { margin: 0; color: var(--muted); font-size: .82rem; }
.catalog-toolbar-modern p strong { color: var(--ink); font-size: 1rem; }
.catalog-toolbar-modern p span { display: block; margin-top: 3px; font-size: .7rem; }
.catalog-toolbar-controls { display: flex; align-items: center; gap: 10px; }
.catalog-toolbar-controls .form-select { min-width: 205px; min-height: 44px; border-color: var(--line); border-radius: 2px; background-color: #fff; font-size: .78rem; }
.view-switch { display: flex; border: 1px solid var(--line); background: #fff; }
.view-switch a { display: grid; place-items: center; width: 43px; height: 43px; color: var(--muted); text-decoration: none; }
.view-switch a + a { border-left: 1px solid var(--line); }
.view-switch a:hover, .view-switch a.active { background: var(--ink); color: #fff; }
.catalog-products.is-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.catalog-product-card { display: flex; flex-direction: column; }
.catalog-product-card .product-info { display: flex; flex: 1; flex-direction: column; }
.product-card-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.product-summary { display: none; color: var(--muted); font-size: .8rem; line-height: 1.6; }
.catalog-product-card .product-price { margin-top: auto; padding-top: 4px; }
.catalog-quick-quote { display: grid; grid-template-columns: 1fr 43px; gap: 8px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.catalog-quick-quote .btn { min-height: 43px; padding: 9px 12px; font-size: .75rem; }
.catalog-quick-quote .btn.is-added { background: #28663b; border-color: #28663b; color: #fff; }
.catalog-quick-quote > a { display: grid; place-items: center; border: 1px solid var(--line); color: var(--ink); text-decoration: none; transition: .25s ease; }
.catalog-quick-quote > a:hover { border-color: var(--gold); color: var(--gold-dark); transform: translateX(2px); }
.catalog-products.is-list { display: grid; gap: 18px; }
.catalog-products.is-list .catalog-product-card { display: grid; grid-template-columns: minmax(220px, 34%) 1fr; min-height: 280px; }
.catalog-products.is-list .product-image { height: 100%; aspect-ratio: auto; }
.catalog-products.is-list .product-info { padding: clamp(22px, 4vw, 38px); }
.catalog-products.is-list .product-info h3 { min-height: 0; font-size: 1.55rem; }
.catalog-products.is-list .product-summary { display: block; max-width: 620px; }
.catalog-products.is-list .catalog-quick-quote { grid-template-columns: minmax(150px, 230px) 43px; }
.catalog-pagination { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 50px; }
.catalog-pagination > div { display: flex; gap: 6px; }
.catalog-pagination a { display: grid; place-items: center; min-width: 42px; height: 42px; padding: 0 8px; border: 1px solid var(--line); background: #fff; color: var(--ink); text-decoration: none; font-size: .8rem; font-weight: 800; }
.catalog-pagination a:hover, .catalog-pagination a.active { background: var(--ink); border-color: var(--ink); color: #fff; }
.catalog-pagination a.disabled { opacity: .35; pointer-events: none; }
.catalog-filter-drawer { --bs-offcanvas-width: min(390px, 92vw); }
.catalog-filter-drawer .offcanvas-header { padding: 24px; border-bottom: 1px solid var(--line); }
.catalog-filter-drawer h2 { margin: 4px 0 0; font-family: "Playfair Display", serif; font-size: 1.65rem; }
.catalog-filter-drawer .offcanvas-body { padding: 0; }
.catalog-toast { position: fixed; right: 24px; bottom: 24px; z-index: 1080; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; max-width: min(440px, calc(100vw - 32px)); padding: 15px 17px; background: var(--ink); color: #fff; box-shadow: 0 22px 70px rgba(0,0,0,.24); opacity: 0; visibility: hidden; transform: translateY(24px); transition: .35s cubic-bezier(.16,1,.3,1); }
.catalog-toast.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.catalog-toast.is-error { background: #762e29; }
.catalog-toast > i { color: var(--gold); }
.catalog-toast span { font-size: .8rem; }
.catalog-toast a { color: #fff; font-size: .72rem; font-weight: 800; text-underline-offset: 3px; }

.product-detail { padding: 75px 0 110px; }
.product-detail-image { position: sticky; top: 120px; background: var(--paper); }
.product-detail-image img { width: 100%; aspect-ratio: 1/1.05; object-fit: cover; }
.product-detail-copy { padding: 20px 0 20px clamp(15px, 4vw, 55px); }
.product-detail-copy h1 { margin: 8px 0 20px; font-family: "Playfair Display", serif; font-size: clamp(2.5rem, 5vw, 4.5rem); line-height: 1.02; }
.product-meta-line { display: flex; flex-wrap: wrap; gap: 10px 22px; padding: 14px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--muted); font-size: .78rem; }
.product-meta-line span { display: inline-flex; align-items: center; gap: 7px; }
.product-meta-line b { color: var(--ink); font-size: .65rem; letter-spacing: .07em; text-transform: uppercase; }
.product-meta-line em { font-style: normal; }
.detail-price { display: flex; align-items: center; gap: 12px; margin: 25px 0; }
.detail-price strong { font-size: 1.65rem; }
.detail-price strong small { color: var(--muted); font-size: .75rem; font-weight: 600; }
.detail-price del { color: var(--muted); }
.detail-description { color: var(--muted); line-height: 1.8; }
.detail-actions { display: grid; gap: 10px; margin: 28px 0; }
.detail-actions .btn { padding: 15px 22px; }
.product-quote-form { padding: 18px; border: 1px solid var(--line); background: var(--paper); }
.product-quote-form label { display: block; margin-bottom: 8px; color: var(--muted); font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.product-quote-form > div { display: grid; grid-template-columns: 100px 1fr; gap: 10px; }
.product-quote-form .form-control { min-height: 52px; border-radius: 2px; }
.quote-workspace { background: #faf8f4; }
.quote-success { display: flex; gap: 22px; padding: 28px; border: 1px solid #b7d8c0; background: #edf8f0; }
.quote-success > i { color: #31824a; font-size: 2rem; }
.quote-success h2 { margin: 4px 0 8px; font-family: "Playfair Display", serif; }
.quote-success p { margin: 0; color: #496052; }
.quote-success span { color: #31824a; font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.quote-empty { padding: 75px 25px; border: 1px solid var(--line); background: #fff; text-align: center; }
.quote-empty i { margin-bottom: 20px; color: var(--gold); font-size: 3rem; }
.quote-empty h2 { font-family: "Playfair Display", serif; }
.quote-empty p { margin: 12px auto 24px; max-width: 520px; color: var(--muted); }
.quote-items { display: grid; gap: 14px; }
.quote-item { position: relative; display: grid; grid-template-columns: 150px 1fr; gap: 20px; padding: 18px; border: 1px solid var(--line); background: #fff; }
.quote-item > img { width: 150px; height: 170px; object-fit: cover; background: var(--paper); }
.quote-item-copy { padding-right: 35px; }
.quote-item-copy > small { color: var(--gold-dark); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.quote-item-copy h3 { margin: 5px 0; font-family: "Playfair Display", serif; font-size: 1.25rem; }
.quote-item-copy h3 a { color: var(--ink); text-decoration: none; }
.quote-item-copy p { color: var(--muted); font-size: .8rem; }
.quote-item-copy label { display: block; margin-top: 9px; color: var(--muted); font-size: .68rem; font-weight: 700; }
.quote-item-copy .form-control { min-height: 40px; margin-top: 4px; border-radius: 2px; font-size: .82rem; }
.quote-remove { position: absolute; top: 14px; right: 14px; width: 32px; height: 32px; border: 1px solid var(--line); background: #fff; color: #8d332c; }
.quote-contact-card { position: sticky; top: 120px; padding: 34px; background: var(--ink); color: #fff; }
.quote-contact-card h2 { margin: 8px 0 12px; font-family: "Playfair Display", serif; font-size: 2.1rem; }
.quote-contact-card > p { margin-bottom: 25px; color: rgba(255,255,255,.62); line-height: 1.65; }
.quote-contact-card .form-label { color: rgba(255,255,255,.72); font-size: .72rem; }
.quote-contact-card .form-control { min-height: 48px; border: 1px solid rgba(255,255,255,.16); border-radius: 2px; background: rgba(255,255,255,.08); color: #fff; }
.quote-contact-card textarea.form-control { min-height: 110px; }
.quote-contact-card .form-control::placeholder { color: rgba(255,255,255,.36); }
.detail-assurances { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.detail-assurances span { padding: 16px 10px; border-right: 1px solid var(--line); text-align: center; font-size: .71rem; }
.detail-assurances span:last-child { border: 0; }
.detail-assurances i { display: block; margin-bottom: 7px; color: var(--gold-dark); }
.product-content { margin-top: 40px; color: var(--muted); line-height: 1.8; }
.technical-specs { margin-top: 34px; }
.technical-specs dl { margin: 0; border-top: 1px solid var(--line); }
.technical-specs dl > div { display: grid; grid-template-columns: minmax(130px, .8fr) 1.4fr; gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.technical-specs dt { color: var(--ink); font-size: .8rem; }
.technical-specs dd { margin: 0; color: var(--muted); font-size: .82rem; }
.legal-content { font-size: 1.02rem; line-height: 1.8; color: #514b44; }
.legal-content h2 { margin: 2.2rem 0 .8rem; color: var(--ink); font-family: "Playfair Display", serif; font-size: 1.65rem; }
.legal-content ul { padding-left: 1.25rem; }
.legal-content li { margin-bottom: .45rem; }
.legal-content a { color: var(--gold-dark); text-underline-offset: 3px; }

.contact-ribbon { padding: 65px 0; background: #29231c; color: #fff; }
.contact-ribbon h2 { margin: 8px 0; font-family: "Playfair Display", serif; font-size: clamp(2rem, 4vw, 3.2rem); }
.contact-ribbon p { margin: 0; color: rgba(255,255,255,.62); }
.site-footer { padding: 75px 0 25px; background: #110e0b; color: rgba(255,255,255,.65); }
.footer-brand { display: inline-flex; align-items: center; gap: 12px; color: #fff; font-family: "Playfair Display", serif; font-size: 1.45rem; text-decoration: none; }
.footer-brand i { color: var(--gold); }
.footer-brand img { display: block; width: min(320px, 75vw); height: 112px; object-fit: cover; object-position: center; }
.footer-lead { max-width: 470px; margin: 22px 0; line-height: 1.75; }
.footer-badges { display: flex; flex-wrap: wrap; gap: 10px; }
.footer-badges span { padding: 8px 10px; border: 1px solid rgba(255,255,255,.12); font-size: .7rem; }
.site-footer h3 { margin-bottom: 18px; color: #fff; font-size: .78rem; letter-spacing: .13em; text-transform: uppercase; }
.site-footer ul { display: grid; gap: 11px; padding: 0; list-style: none; }
.site-footer a { color: rgba(255,255,255,.65); text-decoration: none; }
.site-footer a:hover { color: var(--gold); }
.contact-list li { display: flex; align-items: flex-start; gap: 10px; }
.contact-list i { width: 18px; margin-top: 4px; color: var(--gold); }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 55px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.1); font-size: .7rem; }
.floating-whatsapp { position: fixed; right: 22px; bottom: 22px; z-index: 100; display: flex; align-items: center; gap: 9px; padding: 12px 16px; border-radius: 30px; background: #25d366; color: #102116; box-shadow: 0 12px 35px rgba(0,0,0,.2); text-decoration: none; font-size: .78rem; font-weight: 800; }
.floating-whatsapp i { font-size: 1.25rem; }

/* Dribbble-inspired motion layer */
.store-hero {
    --pointer-x: 72%;
    --pointer-y: 34%;
    --hero-x: 0px;
    --hero-y: 0px;
    --hero-scroll: 0px;
}
.store-hero-media {
    transform: translate3d(var(--hero-x), calc(var(--hero-y) + var(--hero-scroll)), 0) scale(1.09);
    transition: transform .18s linear;
    will-change: transform;
}
.hero-glow {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: radial-gradient(circle 360px at var(--pointer-x) var(--pointer-y), rgba(230, 190, 126, .2), transparent 68%);
    mix-blend-mode: screen;
    opacity: .72;
    transition: background-position .2s ease;
}
.hero-orbit {
    position: absolute;
    z-index: 1;
    display: block;
    border: 1px solid rgba(224, 194, 147, .23);
    border-radius: 50%;
    pointer-events: none;
    will-change: transform;
}
.hero-orbit::after {
    content: "";
    position: absolute;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--gold);
    box-shadow: 0 0 30px rgba(200, 154, 85, .9);
}
.hero-orbit-one { width: 440px; height: 440px; right: 8%; top: 11%; animation: orbitFloat 11s ease-in-out infinite alternate; }
.hero-orbit-one::after { top: 13%; left: 12%; }
.hero-orbit-two { width: 230px; height: 230px; right: 27%; bottom: -7%; animation: orbitFloat 8s ease-in-out -2s infinite alternate-reverse; }
.hero-orbit-two::after { right: 2%; top: 43%; width: 6px; height: 6px; }
.store-hero .container { z-index: 2; }
.hero-line { display: block; overflow: hidden; padding: .05em 0 .08em; }
.hero-line > span { display: block; }

.motion-ready .store-hero .hero-kicker,
.motion-ready .store-hero .hero-lead,
.motion-ready .store-hero .hero-actions,
.motion-ready .store-hero .hero-trust,
.motion-ready .store-hero .scroll-cue {
    opacity: 0;
    transform: translate3d(0, 24px, 0);
}
.motion-ready .store-hero .hero-line > span { transform: translate3d(0, 112%, 0) rotate(2deg); }
.motion-ready .store-hero .hero-kicker,
.motion-ready .store-hero .hero-lead,
.motion-ready .store-hero .hero-actions,
.motion-ready .store-hero .hero-trust,
.motion-ready .store-hero .scroll-cue,
.motion-ready .store-hero .hero-line > span {
    transition: opacity .85s cubic-bezier(.2,.75,.2,1), transform 1s cubic-bezier(.16,1,.3,1);
}
.motion-loaded .store-hero .hero-kicker,
.motion-loaded .store-hero .hero-lead,
.motion-loaded .store-hero .hero-actions,
.motion-loaded .store-hero .hero-trust { opacity: 1; transform: translate3d(0, 0, 0); }
.motion-loaded .store-hero .hero-line > span { transform: translate3d(0, 0, 0) rotate(0); }
.motion-loaded .store-hero .hero-line:nth-child(2) > span { transition-delay: .11s; }
.motion-loaded .store-hero .hero-kicker { transition-delay: .05s; }
.motion-loaded .store-hero .hero-lead { transition-delay: .28s; }
.motion-loaded .store-hero .hero-actions { transition-delay: .38s; }
.motion-loaded .store-hero .hero-trust { transition-delay: .48s; }
.motion-loaded .store-hero .scroll-cue { opacity: 1; transform: rotate(90deg); transition-delay: .62s; }
.motion-loaded .scroll-cue i { animation: cueNudge 1.8s ease-in-out infinite; }

.motion-ready [data-motion-reveal] {
    opacity: 0;
    transform: translate3d(0, 46px, 0);
    transition: opacity .72s ease var(--motion-delay, 0ms), transform .92s cubic-bezier(.16,1,.3,1) var(--motion-delay, 0ms);
    will-change: opacity, transform;
}
.motion-ready [data-motion-reveal].is-visible { opacity: 1; transform: translate3d(0, 0, 0); }
.motion-ready .editorial-photo[data-motion-reveal] { clip-path: inset(0 100% 0 0); transform: none; transition: clip-path 1.15s cubic-bezier(.16,1,.3,1); }
.motion-ready .editorial-photo[data-motion-reveal].is-visible { clip-path: inset(0 0 0 0); }
.editorial-photo { overflow: hidden; }
.editorial-photo img { transform: translate3d(0, var(--editorial-shift, 0px), 0) scale(1.08); will-change: transform; }

.category-tile {
    --tilt-x: 0deg;
    --tilt-y: 0deg;
    --shine-x: 50%;
    --shine-y: 50%;
    transform-style: preserve-3d;
    transition: transform .42s cubic-bezier(.2,.8,.2,1), box-shadow .42s ease;
}
.category-tile::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background: radial-gradient(circle 210px at var(--shine-x) var(--shine-y), rgba(255,255,255,.2), transparent 72%);
    opacity: 0;
    transition: opacity .35s ease;
}
.category-tile:hover { transform: perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-4px); box-shadow: 0 30px 80px rgba(23,19,14,.2); z-index: 3; }
.category-tile:hover::after { opacity: 1; }
.category-content { z-index: 3; transform: translateZ(28px); transition: transform .45s cubic-bezier(.2,.8,.2,1); }
.category-tile:hover .category-content { transform: translate3d(0, -5px, 28px); }
.motion-ready .category-tile[data-motion-reveal].is-visible { transform: perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)); }
.motion-ready .category-tile[data-motion-reveal].is-visible:hover { transform: perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-4px); }

.product-card { position: relative; overflow: hidden; }
.product-card::after {
    content: "";
    position: absolute;
    left: -35%;
    top: -120%;
    width: 36%;
    height: 320%;
    pointer-events: none;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.4), transparent);
    transform: rotate(18deg);
    transition: left .75s cubic-bezier(.2,.8,.2,1);
}
.product-card:hover::after { left: 125%; }
.benefit-item > i { transition: transform .45s cubic-bezier(.16,1,.3,1), color .3s ease; }
.benefit-item:hover > i { color: var(--gold); transform: translateY(-4px) rotate(-7deg) scale(1.1); }
.section-heading h2 { text-wrap: balance; }
.motion-magnetic { transform: translate3d(var(--magnetic-x, 0), var(--magnetic-y, 0), 0); transition: transform .28s cubic-bezier(.2,.8,.2,1), color .3s ease, background-color .3s ease, border-color .3s ease; }

@keyframes orbitFloat {
    from { transform: translate3d(-10px, 8px, 0) rotate(0deg); }
    to { transform: translate3d(20px, -18px, 0) rotate(12deg); }
}
@keyframes cueNudge {
    0%, 100% { transform: translateX(0); }
    50% { transform: translateX(8px); }
}

@media (max-width: 991.98px) {
    .site-header .navbar { min-height: 72px; }
    .site-header .navbar-toggler { width: 48px; height: 48px; padding: 8px; border-color: var(--line); }
    .site-header .navbar-collapse { max-height: calc(100dvh - 112px); overflow-y: auto; padding: 14px 0 20px; border-top: 1px solid var(--line); overscroll-behavior: contain; }
    .site-header .nav-link { display: flex; align-items: center; min-height: 48px; padding: 11px 12px !important; }
    .site-header .dropdown-menu { margin: 0 12px 8px; padding: 4px; border: 1px solid var(--line); box-shadow: none; }
    .site-header .dropdown-item { display: flex; align-items: center; min-height: 44px; }
    .header-actions { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); margin-top: 12px; }
    .header-actions .quote-list-action, .header-actions .btn { justify-content: center; min-height: 48px; width: 100%; }
    .store-hero, .min-vh-hero { min-height: 640px; }
    .store-hero-media { background-position: 64% center; }
    .store-hero-shade { background: linear-gradient(90deg, rgba(15,12,8,.93), rgba(15,12,8,.54)); }
    .section-space { padding: 80px 0; }
    .category-tile, .category-tile:nth-child(1), .category-tile:nth-child(4) { grid-column: span 6; grid-row: span 1; }
    .editorial-photo img { min-height: 500px; }
    .product-detail-image { position: static; }
    .product-detail-copy { padding-left: 0; }
    .quote-contact-card { position: static; }
    .catalog-products.is-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body:has(.navbar-collapse.show) .floating-whatsapp,
    body:has(.offcanvas.show) .floating-whatsapp { opacity: 0; pointer-events: none; }
}

@media (max-width: 767.98px) {
    .section-space { padding: 68px 0; }
    .page-hero, .catalog-hero { padding: 62px 0 52px; }
    .page-hero h1, .store-catalog h1, .catalog-hero h1 { font-size: clamp(2.35rem, 10vw, 3.35rem); overflow-wrap: anywhere; }
    .contact-ribbon { padding: 52px 0; }
    .contact-ribbon .btn { width: 100%; min-height: 50px; }
    .site-footer { padding-top: 58px; }
    .product-detail { padding: 44px 0 72px; }
    .product-detail-copy { padding-top: 8px; }
    .product-detail-copy h1 { font-size: clamp(2.35rem, 10vw, 3.25rem); overflow-wrap: anywhere; }
    .quote-success { padding: 22px; }
    .catalog-toolbar { padding: 18px; }
    .catalog-filter-drawer { --bs-offcanvas-width: min(390px, 94vw); }
    .form-control, .form-select { font-size: 16px; }
}

@media (max-width: 575.98px) {
    .announcement-bar { padding: 7px 0; font-size: .64rem; line-height: 1.35; text-align: center; }
    .site-header .navbar { padding: 7px 0; }
    .store-brand strong { max-width: 190px; font-size: .95rem; }
    .store-brand img { width: clamp(148px, 52vw, 176px); height: auto; aspect-ratio: 3.26 / 1; }
    .store-brand small { display: none; }
    .brand-symbol { width: 38px; height: 38px; }
    .store-hero, .min-vh-hero { min-height: max(620px, calc(100svh - 102px)); }
    .store-hero .container { padding-left: 18px; padding-right: 18px; }
    .store-hero-media { background-position: 67% center; }
    .store-hero-shade { background: rgba(15,12,8,.7); }
    .store-hero h1 { font-size: clamp(3rem, 15vw, 3.7rem); line-height: .93; letter-spacing: -.055em; }
    .hero-kicker { margin-bottom: 20px; font-size: .66rem; line-height: 1.5; }
    .hero-lead { font-size: .98rem; }
    .hero-actions .btn { width: 100%; }
    .hero-trust { display: grid; gap: 9px; margin-top: 27px; }
    .scroll-cue { display: none; }
    .benefit-item { min-height: 105px; flex-direction: column; gap: 7px; text-align: center; border-bottom: 1px solid var(--line); }
    .category-grid { grid-auto-rows: 255px; }
    .category-tile, .category-tile:nth-child(1), .category-tile:nth-child(4) { grid-column: span 12; }
    .section-heading { margin-bottom: 30px; }
    .section-heading h2 { font-size: clamp(2.15rem, 10vw, 2.7rem); }
    .section-heading .text-link { margin-top: 18px; }
    .product-info { padding: 14px; }
    .product-info h3 { font-size: .94rem; }
    .product-view { display: none; }
    .editorial-photo img { min-height: 380px; }
    .editorial-copy { padding: 55px 24px; }
    .detail-assurances { grid-template-columns: 1fr; }
    .product-quote-form > div, .quote-item { grid-template-columns: 1fr; }
    .quote-item > img { width: 100%; height: 240px; }
    .quote-contact-card { padding: 25px; }
    .quote-success { flex-direction: column; gap: 12px; }
    .detail-assurances span { border-right: 0; border-bottom: 1px solid var(--line); }
    .footer-brand img { width: min(280px, 82vw); height: auto; aspect-ratio: 2.86 / 1; }
    .footer-bottom { flex-direction: column; margin-top: 40px; }
    .floating-whatsapp span { display: none; }
    .floating-whatsapp { width: 52px; height: 52px; justify-content: center; padding: 0; }
    .catalog-search { grid-template-columns: 1fr 62px; }
    .catalog-search .btn { min-width: 0; padding-left: 10px; padding-right: 10px; font-size: 0; }
    .catalog-search .btn::after { content: "Ara"; font-size: .75rem; }
    .catalog-toolbar-modern { align-items: stretch; flex-direction: column; gap: 14px; }
    .catalog-toolbar-controls, .catalog-toolbar-controls form { width: 100%; }
    .catalog-toolbar-controls .form-select { width: 100%; min-width: 0; max-width: none; }
    .view-switch { display: none; }
    .catalog-products.is-grid { gap: 12px; }
    .catalog-product-card .stock-chip { display: none; }
    .catalog-quick-quote { grid-template-columns: 1fr; }
    .catalog-quick-quote > a { display: none; }
    .catalog-products.is-list .catalog-product-card { grid-template-columns: 120px 1fr; min-height: 180px; }
    .catalog-products.is-list .product-info { padding: 14px; }
    .catalog-products.is-list .product-info h3 { font-size: 1rem; }
    .catalog-products.is-list .product-summary { display: none; }
    .catalog-products.is-list .catalog-quick-quote { grid-template-columns: 1fr; }
    .catalog-products.is-list .product-price { font-size: .75rem; }
    .catalog-pagination { gap: 8px; }
    .catalog-pagination a { min-width: 38px; height: 38px; }
    .catalog-toast { right: 16px; bottom: 16px; }
    .hero-orbit-one { width: 290px; height: 290px; right: -28%; top: 10%; }
    .hero-orbit-two { width: 160px; height: 160px; right: 12%; bottom: -2%; }
    .hero-glow { background: radial-gradient(circle 220px at var(--pointer-x) var(--pointer-y), rgba(230,190,126,.18), transparent 70%); }
    .technical-specs dl > div { grid-template-columns: 1fr; gap: 5px; }
    .legal-content { font-size: .96rem; }
}

@media (max-width: 479.98px) {
    .header-actions { grid-template-columns: 1fr; }
    .store-hero h1 { font-size: clamp(2.85rem, 15vw, 3.35rem); }
    .products-section .row > .col-6 { width: 100%; }
    .catalog-products.is-grid { grid-template-columns: 1fr; gap: 18px; }
    .catalog-product-card .stock-chip { display: inline-flex; }
    .catalog-product-card .product-image { aspect-ratio: 4 / 4.1; }
    .catalog-product-card .product-info { padding: 18px; }
    .catalog-product-card .product-info h3 { min-height: 0; font-size: 1.2rem; }
    .catalog-quick-quote { grid-template-columns: 1fr 46px; }
    .catalog-quick-quote > a { display: grid; }
    .quote-empty { padding: 52px 20px; }
    .floating-whatsapp { right: 14px; bottom: max(14px, env(safe-area-inset-bottom)); width: 48px; height: 48px; }
}

/* Polatlı su tesisatı servis arayüzü */
body.store-body { color:#173244; }
.announcement-bar { background:#153b58; color:#e6f1f8; }
.announcement-bar i,.text-gold { color:#f3bd68!important; }
.plumbing-top-contact a { color:rgba(255,255,255,.86); text-decoration:none; }
.plumbing-top-contact a:hover { color:#fff; }
.site-header { background:rgba(255,255,255,.97); }
.site-header .nav-link:hover,.site-header .nav-link.active { color:#2274a1; }
.site-header .navbar-toggler { border-color:rgba(18,43,62,.22); }
.site-header .navbar-toggler-icon { filter:none; }
.brand-symbol { border-color:#80bbd3; color:#2477a1; }
.btn-brand { background:#f0ae4e; border-color:#f0ae4e; color:#173244; }
.btn-brand:hover,.btn-brand:focus { background:#f7c879; border-color:#f7c879; color:#173244; }
.plumbing-hero { position:relative; min-height:690px; overflow:hidden; color:#fff; background:#173a55; }
.plumbing-hero-photo,.plumbing-hero-shade { position:absolute; inset:0; }
.plumbing-hero-photo { background-image:url('../img/hero-plumber.webp'); background-size:cover; background-position:center 43%; }
.plumbing-hero-shade { background:linear-gradient(90deg,rgba(8,32,49,.91) 0%,rgba(10,42,63,.78) 39%,rgba(11,48,71,.38) 67%,rgba(8,35,53,.18) 100%); }
.plumbing-hero-content { position:relative; z-index:1; }
.plumbing-hero .min-vh-hero { min-height:690px; }
.plumbing-kicker { display:inline-flex; align-items:center; gap:10px; margin-bottom:22px; color:#d5e8f2; text-transform:uppercase; letter-spacing:.14em; font-size:.75rem; font-weight:700; }
.plumbing-kicker i { display:inline-block; width:30px; height:2px; background:#f0ae4e; }
.plumbing-hero h1 { margin:0 0 22px; font-family:"Playfair Display",serif; font-size:clamp(3.5rem,7vw,6.5rem); font-weight:600; letter-spacing:-.045em; line-height:.92; }
.plumbing-hero h1 em { color:#f3bd68; font-style:normal; }
.plumbing-hero-lead { max-width:570px; color:rgba(255,255,255,.82); font-size:1.08rem; line-height:1.75; }
.plumbing-hero-notes { display:flex; flex-wrap:wrap; gap:24px; margin-top:28px; color:rgba(255,255,255,.82); font-size:.84rem; }
.plumbing-hero-notes i { color:#f3bd68; margin-right:7px; }
.plumbing-card-label { display:inline-flex; align-items:center; gap:8px; color:#2274a1; font-size:.75rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.plumbing-card-label i { color:#2f93b9; }
.plumbing-method { padding:96px 0; background:#fff; }
.plumbing-method-photo { position:relative; padding:0 30px 30px 0; }
.plumbing-method-photo::before { position:absolute; z-index:0; right:0; bottom:0; width:76%; height:76%; content:""; background:#e7f0f4; }
.plumbing-method-photo img { position:relative; z-index:1; display:block; width:100%; height:clamp(320px,36vw,470px); object-fit:cover; object-position:50% center; box-shadow:var(--shadow); }
.plumbing-method-photo>span { position:absolute; z-index:2; right:0; bottom:0; display:flex; align-items:center; gap:10px; padding:15px 20px; background:#153b58; color:#fff; font-size:.8rem; font-weight:700; }
.plumbing-method-photo>span i { color:#f3bd68; }
.plumbing-method h2 { max-width:580px; margin:12px 0 18px; font-family:"Playfair Display",serif; font-size:clamp(2.25rem,4vw,3.45rem); line-height:1.08; }
.plumbing-method p { color:#657b89; line-height:1.8; }
.plumbing-method ul { display:grid; gap:13px; margin:22px 0; padding:0; list-style:none; }
.plumbing-method li { display:flex; gap:12px; color:#365466; font-size:.94rem; }
.plumbing-method li i { margin-top:4px; color:#2983a8; }
.plumbing-method .text-link { color:#247ba2; font-weight:800; text-decoration:none; }
.plumbing-method .text-link i { margin-left:6px; font-size:.8rem; }
.plumbing-services { background:#f4f8fa; }
.plumbing-section-heading { max-width:720px; margin:0 auto 46px; text-align:center; }
.plumbing-section-heading h2,.plumbing-faq h2,.plumbing-process h2 { margin:12px 0; font-family:"Playfair Display",serif; font-size:clamp(2.35rem,4.5vw,3.8rem); line-height:1.05; }
.plumbing-section-heading p { max-width:590px; margin:0 auto; color:#637987; line-height:1.75; }
.plumbing-service-card { position:relative; display:flex; flex-direction:column; min-height:290px; height:100%; padding:27px; border:1px solid #e0eaf0; background:#fff; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.plumbing-service-card:hover { transform:translateY(-4px); border-color:#a8cada; box-shadow:var(--shadow); }
.plumbing-service-icon { display:grid; place-items:center; width:48px; height:48px; margin-bottom:21px; border-radius:50%; background:#eaf4f8; color:#287da4; font-size:1.15rem; }
.plumbing-service-card>small { color:#738a98; font-size:.66rem; font-weight:800; letter-spacing:.13em; }
.plumbing-service-card h3 { margin:7px 0 9px; font-family:"Playfair Display",serif; font-size:1.43rem; }
.plumbing-service-card p { color:#687e8b; font-size:.9rem; line-height:1.65; }
.plumbing-service-card>a { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:15px; border-top:1px solid var(--line); color:#247ba2; text-decoration:none; font-size:.82rem; font-weight:800; }
.plumbing-process { padding:90px 0; background:#173d59; color:#fff; }
.plumbing-process h2 { max-width:630px; }
.plumbing-process .row>div>p { color:rgba(255,255,255,.7); line-height:1.7; }
.plumbing-process article { position:relative; height:100%; min-height:245px; padding:28px; border:1px solid rgba(255,255,255,.17); background:rgba(255,255,255,.04); }
.plumbing-process article>strong { position:absolute; top:22px; right:24px; color:rgba(255,255,255,.35); font-size:.8rem; }
.plumbing-process article>i { display:grid; place-items:center; width:48px; height:48px; margin-bottom:24px; border-radius:50%; background:rgba(255,255,255,.1); color:#f3bd68; font-size:1.15rem; }
.plumbing-process article h3 { font-family:"Playfair Display",serif; font-size:1.35rem; }
.plumbing-process article p { margin:0; color:rgba(255,255,255,.7); font-size:.9rem; line-height:1.7; }
.plumbing-emergency { padding:52px 0; background:#eff5f8; }
.plumbing-emergency-card { display:flex; align-items:center; gap:22px; padding:30px; background:#fff; border:1px solid #e1eaf0; box-shadow:0 12px 38px rgba(17,51,74,.08); }
.plumbing-emergency-card>span { display:grid; flex:0 0 54px; place-items:center; width:54px; height:54px; border-radius:50%; background:#fff3df; color:#bc7418; font-size:1.3rem; }
.plumbing-emergency-card>div { flex:1; }
.plumbing-emergency-card small { color:#9c671b; font-weight:800; }
.plumbing-emergency-card h2 { margin:4px 0 6px; font-family:"Playfair Display",serif; font-size:1.55rem; }
.plumbing-emergency-card p { margin:0; color:#687e8b; font-size:.87rem; line-height:1.6; }
.plumbing-faq { padding:92px 0; }
.plumbing-faq>div>.row>div:first-child>p { margin:15px 0 22px; color:#687e8b; line-height:1.7; }
.plumbing-faq-list details { border-bottom:1px solid var(--line); }
.plumbing-faq-list details:first-child { border-top:1px solid var(--line); }
.plumbing-faq-list summary { display:flex; align-items:center; gap:16px; padding:19px 0; cursor:pointer; color:#193b52; font-weight:700; list-style:none; }
.plumbing-faq-list summary::-webkit-details-marker { display:none; }
.plumbing-faq-list summary>span { color:#3684a6; font-size:.73rem; letter-spacing:.1em; }
.plumbing-faq-list summary>i { margin-left:auto; color:#3986a9; transition:transform .2s ease; }
.plumbing-faq-list details[open] summary>i { transform:rotate(45deg); }
.plumbing-faq-list details p { margin:0 0 20px 36px; color:#687e8b; font-size:.92rem; line-height:1.75; }
.plumbing-final,.plumbing-detail-cta { padding:64px 0; background:#153b58; color:#fff; }
.plumbing-final>.container,.plumbing-detail-cta>.container { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.plumbing-final h2,.plumbing-detail-cta h2 { margin:10px 0; font-family:"Playfair Display",serif; font-size:clamp(2rem,4vw,3.1rem); }
.plumbing-final p,.plumbing-detail-cta p { margin:0; color:rgba(255,255,255,.72); }
.plumbing-final-actions { display:flex; flex-wrap:wrap; gap:10px; }
.plumbing-detail-hero { padding:36px 0 78px; background:linear-gradient(120deg,#153b58,#236587); color:#fff; }
.plumbing-detail-hero .breadcrumb { --bs-breadcrumb-divider-color:rgba(255,255,255,.55); margin-bottom:34px; }
.plumbing-detail-hero .breadcrumb a { color:#d5e8f2; }
.plumbing-detail-hero .breadcrumb-item.active { color:#fff; }
.plumbing-detail-hero h1 { max-width:850px; margin:14px 0; font-family:"Playfair Display",serif; font-size:clamp(2.9rem,6vw,5.2rem); }
.plumbing-detail-hero p { max-width:700px; color:rgba(255,255,255,.8); font-size:1.08rem; line-height:1.75; }
.plumbing-detail-image { width:100%; max-height:450px; object-fit:cover; box-shadow:var(--shadow); }
.plumbing-detail-heading { margin:12px 0 18px; font-family:"Playfair Display",serif; font-size:clamp(2rem,3.5vw,3rem); }
.plumbing-detail-points { display:grid; gap:12px; margin:22px 0; padding:0; list-style:none; }
.plumbing-detail-points li { display:flex; gap:11px; color:#435e70; }
.plumbing-detail-points i { margin-top:4px; color:#2983a8; }
.plumbing-detail-process { background:#f5f8fa; }
.process-card { height:100%; padding:28px; background:#fff; border:1px solid rgba(21,59,88,.1); box-shadow:0 12px 32px rgba(21,59,88,.08); }
.process-card > span { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; margin-bottom:18px; border-radius:50%; background:#e9b44c; color:#153b58; font-weight:800; }
.process-card h2 { margin:0 0 10px; color:#153b58; font-family:"Playfair Display",serif; font-size:1.45rem; }
.process-card p { margin:0; color:#5b7180; line-height:1.7; }
.contact-ribbon { background:#153b58; }
.site-footer { background:#102d43; }
.floating-whatsapp { background:#18875e; }
.plumbing-mobile-bar { display:none; }
@media(max-width:991.98px) {
 .site-header .navbar-collapse { padding:10px 0 18px; }
 .site-header .header-actions { margin:12px 0 0; }
 .plumbing-hero,.plumbing-hero .min-vh-hero { min-height:620px; }
 .plumbing-hero-shade { background:linear-gradient(90deg,rgba(8,32,49,.93),rgba(10,42,63,.72) 68%,rgba(11,48,71,.4)); }
 .plumbing-final>.container,.plumbing-detail-cta>.container { align-items:flex-start; flex-direction:column; }
}
@media(max-width:575.98px) {
 .plumbing-method { padding:68px 0; }
 .plumbing-method-photo { padding:0 18px 18px 0; }
 .plumbing-method-photo>span { padding:12px 14px; font-size:.72rem; }
 .plumbing-hero,.plumbing-hero .min-vh-hero { min-height:610px; }
 .plumbing-hero-photo { background-position:58% center; }
 .plumbing-hero-shade { background:linear-gradient(90deg,rgba(8,32,49,.88),rgba(10,42,63,.64)); }
 .plumbing-hero h1 { font-size:clamp(3.2rem,15vw,4.5rem); }
 .plumbing-hero-notes { gap:12px 18px; font-size:.76rem; }
 .plumbing-emergency-card { align-items:flex-start; flex-wrap:wrap; padding:22px; }
 .plumbing-emergency-card>div { flex-basis:calc(100% - 80px); }
 .plumbing-emergency-card>.btn { width:100%; }
 .plumbing-faq-list summary { gap:10px; font-size:.9rem; }
 .plumbing-faq-list details p { margin-left:27px; }
 .plumbing-final-actions { width:100%; }
 .plumbing-final-actions .btn { flex:1 1 100%; }
}
/* Announcement bar readability and alignment. */
body.store-body .header .public-plumbing-announcement{padding:12px 0!important;font-size:.95rem!important;line-height:1.35!important;letter-spacing:.025em!important}
body.store-body .header .public-plumbing-announcement .container{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:28px!important;min-height:34px!important}
body.store-body .header .public-plumbing-announcement .container>span,
body.store-body .header .public-plumbing-announcement .container>a{display:inline-flex!important;align-items:center!important;min-width:0!important;white-space:nowrap!important}
body.store-body .header .public-plumbing-announcement .announcement-services{flex:1 1 auto!important;justify-content:center!important;color:rgba(255,255,255,.9)!important;font-size:.88rem!important;font-weight:600!important}
body.store-body .header .public-plumbing-announcement .container>a{font-size:.95rem!important;font-weight:800!important}
body.store-body .header .public-plumbing-announcement i{margin-right:8px!important;font-size:1rem!important}
@media(max-width:1199.98px){
    body.store-body .header .public-plumbing-announcement{font-size:.84rem!important}
    body.store-body .header .public-plumbing-announcement .container{gap:16px!important}
    body.store-body .header .public-plumbing-announcement .announcement-services{font-size:.78rem!important}
    body.store-body .header .public-plumbing-announcement .container>a{font-size:.84rem!important}
}
@media(max-width:767.98px){
    body.store-body .header .public-plumbing-announcement{padding:10px 0!important;font-size:.82rem!important}
    body.store-body .header .public-plumbing-announcement .container{justify-content:center!important;gap:12px!important}
    body.store-body .header .public-plumbing-announcement .container>span:first-child{flex:1 1 auto!important}
    body.store-body .header .public-plumbing-announcement .container>a{font-size:.82rem!important}
}
@media(max-width:767.98px) {
 body.store-body { padding-bottom:calc(70px + env(safe-area-inset-bottom)); }
 .floating-whatsapp { display:none; }
 .plumbing-mobile-bar { position:fixed; z-index:1050; right:0; bottom:0; left:0; display:flex; gap:10px; padding:10px 14px calc(10px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.97); border-top:1px solid rgba(18,43,62,.12); box-shadow:0 -8px 24px rgba(17,51,74,.12); backdrop-filter:blur(12px); }
 .plumbing-mobile-bar a { display:flex; align-items:center; justify-content:center; gap:9px; min-height:48px; border-radius:4px; text-decoration:none; font-size:.9rem; font-weight:800; }
 .plumbing-mobile-call { flex:0 0 28%; color:#1b6789; border:1px solid #a8cad9; background:#f2f8fb; }
 .plumbing-mobile-whatsapp { flex:1; color:#fff; background:#18875e; }
}

/* Close the home page composition to the supplied plumbing reference. */
.plumbing-home { font-family:"Space Grotesk","DM Sans",sans-serif; }
.plumbing-home .announcement-bar { position:absolute; z-index:1042; top:0; left:0; width:100%; min-height:50px; background:rgba(5,52,108,.72); color:#fff; backdrop-filter:blur(18px); }
.plumbing-home .announcement-bar .container { min-height:50px; }
.plumbing-home .site-header { position:absolute!important; z-index:1041; top:50px; left:0; width:100%; background:rgba(255,255,255,.13); border-bottom:1px solid rgba(255,255,255,.2); backdrop-filter:blur(18px); }
.plumbing-home .site-header .navbar { min-height:84px; }
.plumbing-home .site-header .nav-link { color:rgba(255,255,255,.92); font-weight:600; }
.plumbing-home .site-header .nav-link:hover,.plumbing-home .site-header .nav-link.active { color:#f3c27b; }
.plumbing-home .site-header .navbar-brand,.plumbing-home .site-header .navbar-brand small { color:#fff; }
.plumbing-home .site-header .brand-symbol { border-color:rgba(255,255,255,.65); color:#fff; }
.plumbing-home .site-header .navbar-toggler { border-color:rgba(255,255,255,.5); }
.plumbing-home .site-header .navbar-toggler-icon { filter:brightness(0) invert(1); }
.plumbing-home .site-header.is-scrolled { position:fixed!important; top:0; background:#05346c; border:0; box-shadow:0 8px 25px rgba(5,24,48,.18); }
.plumbing-home .site-header.is-scrolled .navbar { min-height:74px; }
.plumbing-home .btn-brand { color:#fff; border:0; background:linear-gradient(100deg,#145098,#533920,#145098); background-size:200% auto; }
.plumbing-home .btn-brand:hover { color:#fff; background-position:right center; }
.plumbing-home .plumbing-hero,.plumbing-home .plumbing-hero .carousel,.plumbing-home .plumbing-hero .carousel-inner,.plumbing-home .plumbing-hero .carousel-item { min-height:780px; height:780px; }
.plumbing-home .plumbing-hero-slide { position:relative; display:flex; align-items:center; min-height:780px; height:100%; padding:138px 0 90px; background-image:linear-gradient(90deg,rgba(3,25,54,.91),rgba(5,40,76,.75) 50%,rgba(5,40,76,.12)),var(--hero-image); background-size:cover; background-position:center 43%; color:#fff; }
.plumbing-home .plumbing-hero-content { max-width:800px; padding:38px 0 10px; }
.plumbing-home .plumbing-hero h1 { max-width:790px; margin:12px 0 26px; font-family:"Space Grotesk",sans-serif; font-size:clamp(3rem,5.6vw,5rem); font-weight:700; letter-spacing:-.045em; line-height:1.03; }
.plumbing-home .plumbing-hero-lead { max-width:760px; margin-bottom:24px; color:rgba(255,255,255,.88); font-size:1.02rem; line-height:1.82; }
.plumbing-home .plumbing-hero .btn { position:relative; display:inline-flex; align-items:center; justify-content:center; min-width:294px; min-height:54px; border-radius:3px; padding:0 56px; font-family:"Space Grotesk",sans-serif; font-size:.9rem; font-weight:700; text-align:center; }
.plumbing-home .plumbing-hero .btn i { position:absolute; right:27px; margin:0!important; }
.plumbing-home .plumbing-hero .carousel-indicators { right:34px; left:auto; top:50%; bottom:auto; display:grid; gap:13px; margin:0; transform:translateY(-50%); }
.plumbing-home .plumbing-hero .carousel-indicators [data-bs-target] { width:8px; height:8px; margin:0; border:1px solid #fff; border-radius:50%; background:#fff; opacity:.55; }
.plumbing-home .plumbing-hero .carousel-indicators .active { height:26px; border-radius:8px; opacity:1; }
.plumbing-home .plumbing-hero .carousel-control-prev,.plumbing-home .plumbing-hero .carousel-control-next { top:calc(50% + 250px); bottom:auto; width:40px; height:40px; border:1px solid rgba(255,255,255,.35); border-radius:50%; opacity:.85; }
.plumbing-home .plumbing-hero .carousel-control-prev { right:85px; left:auto; }
.plumbing-home .plumbing-hero .carousel-control-next { right:34px; }
.plumbing-home .plumbing-method { padding-top:90px; padding-bottom:92px; }
.plumbing-home .plumbing-method h2,.plumbing-home .plumbing-section-heading h2 { color:#05346c; font-family:"Space Grotesk",sans-serif; font-weight:700; }
.plumbing-home .plumbing-services { position:relative; padding-top:96px; padding-bottom:100px; background:#f5f5f5; }
.plumbing-home .plumbing-section-heading { max-width:790px; margin-bottom:46px; }
.plumbing-home .plumbing-section-heading .eyebrow { display:inline-block; padding:6px 17px; border-radius:24px; background:rgba(20,80,152,.1); color:#533920; }
.plumbing-home .plumbing-section-heading h2 { margin:12px 0; font-size:clamp(2.35rem,4vw,3.35rem); }
.plumbing-home .plumbing-service-card { min-height:310px; padding:32px 29px; border:1px solid #e5e5e5; border-radius:5px; box-shadow:0 6px 22px rgba(5,52,108,.04); }
.plumbing-home .plumbing-service-icon { width:72px; height:72px; border-radius:5px; background:rgba(20,80,152,.08); color:#145098; font-size:1.55rem; }
.plumbing-home .plumbing-service-card h3 { color:#05346c; font-family:"Space Grotesk",sans-serif; font-weight:700; }
.plumbing-home .plumbing-service-card>a { color:#145098; }
.plumbing-home .plumbing-process { background:#05346c; }
.plumbing-home .plumbing-final,.plumbing-home .contact-ribbon,.plumbing-home .site-footer { background:#05346c; }
@media(max-width:991.98px) {
 .plumbing-home .site-header { top:50px; }
 .plumbing-home .site-header .navbar-collapse { padding:16px; background:#05346c; }
 .plumbing-home .plumbing-hero,.plumbing-home .plumbing-hero .carousel,.plumbing-home .plumbing-hero .carousel-inner,.plumbing-home .plumbing-hero .carousel-item,.plumbing-home .plumbing-hero-slide { min-height:700px; height:700px; }
 .plumbing-home .plumbing-hero-slide { padding-top:135px; }
}
@media(max-width:767.98px) {
 .plumbing-home .announcement-bar { min-height:42px; }
 .plumbing-home .announcement-bar .container { min-height:42px; }
 .plumbing-home .site-header { top:42px; }
 .plumbing-home .site-header .navbar { min-height:70px; }
 .plumbing-home .plumbing-hero,.plumbing-home .plumbing-hero .carousel,.plumbing-home .plumbing-hero .carousel-inner,.plumbing-home .plumbing-hero .carousel-item,.plumbing-home .plumbing-hero-slide { min-height:650px; height:650px; }
 .plumbing-home .plumbing-hero-slide { padding:116px 0 58px; background-position:58% center; }
 .plumbing-home .plumbing-hero h1 { font-size:clamp(2.55rem,11vw,4rem); }
 .plumbing-home .plumbing-hero-lead { font-size:.94rem; line-height:1.68; }
 .plumbing-home .plumbing-hero .carousel-indicators { right:20px; }
 .plumbing-home .plumbing-hero .carousel-control-prev { right:65px; }
 .plumbing-home .plumbing-hero .carousel-control-next { right:16px; }
}

/* UUPM local-service booking pattern overrides. */
.plumbing-home { color:#1e293b; font-family:"Space Grotesk","DM Sans",sans-serif; }
.plumbing-home .announcement-bar { background:#12324b; }
.plumbing-home .site-header { position:absolute!important; top:61px; left:50%; width:min(1320px,calc(100% - 40px)); transform:translateX(-50%); border:1px solid rgba(255,255,255,.48); border-radius:16px; background:rgba(255,255,255,.94); box-shadow:0 12px 36px rgba(8,34,56,.14); }
.plumbing-home .site-header .navbar-brand,.plumbing-home .site-header .navbar-brand small,.plumbing-home .site-header .nav-link { color:#16324a; }
.plumbing-home .site-header .nav-link:hover,.plumbing-home .site-header .nav-link.active { color:#2563eb; }
.plumbing-home .site-header .brand-symbol { border-color:#b7d2e2; color:#2563eb; }
.plumbing-home .site-header .navbar-toggler { border-color:rgba(22,50,74,.25); }
.plumbing-home .site-header .navbar-toggler-icon { filter:none; }
.plumbing-home .site-header.is-scrolled { position:fixed!important; top:12px; left:50%; transform:translateX(-50%); background:rgba(255,255,255,.97); border-color:#e7edf2; }
.plumbing-home .site-header.is-scrolled .navbar-brand,.plumbing-home .site-header.is-scrolled .navbar-brand small,.plumbing-home .site-header.is-scrolled .nav-link { color:#16324a; }
.plumbing-home .site-header .btn-brand,.plumbing-home .btn-brand { border:1px solid #f97316; border-radius:12px; background:#f97316; color:#fff; box-shadow:0 8px 18px rgba(249,115,22,.2); }
.plumbing-home .site-header .btn-brand:hover,.plumbing-home .btn-brand:hover { border-color:#ea580c; background:#ea580c; color:#fff; transform:translateY(-1px); }
.plumbing-home .plumbing-hero-slide { background-image:linear-gradient(90deg,rgba(12,35,54,.90),rgba(16,51,77,.69) 54%,rgba(16,51,77,.12)),var(--hero-image); }
.plumbing-home .plumbing-hero .carousel-indicators .active { background:#f97316; border-color:#f97316; }
.plumbing-home .plumbing-kicker i { background:#f97316; }
.plumbing-home .plumbing-hero h1 em { color:#ffb36f; }
.plumbing-home .plumbing-method-photo::before { background:#eaf3f8; }
.plumbing-home .plumbing-method-photo>span { border-radius:0 12px 0 0; background:#16324a; }
.plumbing-home .plumbing-service-card { border-color:#e4ebf0; border-radius:16px; box-shadow:0 8px 28px rgba(22,50,74,.06); }
.plumbing-home .plumbing-service-card:hover { border-color:#c5d9e5; box-shadow:0 18px 42px rgba(22,50,74,.12); }
.plumbing-home .plumbing-service-icon { border-radius:14px; background:#eaf3f8; color:#2563eb; }
.plumbing-home .plumbing-final,.plumbing-home .contact-ribbon,.plumbing-home .site-footer { background:#16324a; }
.plumbing-home .plumbing-mobile-whatsapp { background:#168257; }

/* WhatsApp yönlendirmelerinde metinle birlikte görünür marka ikonu */
body.store-body a[href*="wa.me"]:not(:has(i))::before {
    content: "\f232";
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
    display: inline-block;
    margin-right: .55rem;
    line-height: 1;
    vertical-align: -.08em;
}
body.store-body a[href*="wa.me"] i.fa-whatsapp,
body.store-body a[href*="wa.me"] i.fab.fa-whatsapp,
body.store-body a[href*="wa.me"] i.fa-brands.fa-whatsapp {
    font-size: 1.05em;
    vertical-align: -.06em;
}
@media(max-width:991.98px) {
 .plumbing-home .site-header { top:52px; }
 .plumbing-home .site-header.is-scrolled { top:10px; }
 .plumbing-home .site-header .navbar-collapse { border-radius:0 0 14px 14px; background:#fff; }
 .plumbing-home .site-header .nav-link { color:#405466; }
}
@media(max-width:767.98px) {
 .plumbing-home .site-header { top:48px; width:calc(100% - 24px); }
 .plumbing-home .site-header .navbar { min-height:66px; }
 .plumbing-home .site-header.is-scrolled { top:8px; }
 .plumbing-home .plumbing-hero-slide { padding-top:126px; }
 .plumbing-home .plumbing-hero .btn { border-radius:12px; }
}
.hero-service-board { position: relative; padding: 34px; border: 1px solid rgba(255,255,255,.17); border-radius: 26px; background: rgba(10,27,42,.82); box-shadow: 0 30px 90px rgba(0,0,0,.34); backdrop-filter: blur(20px); }
.hero-service-board::before { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(209,161,86,.18); border-radius: 18px; pointer-events: none; }
.service-board-top { position: relative; display: flex; align-items: center; justify-content: space-between; color: #e0bd83; font-size: .7rem; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.service-board-top i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--gold); color: #101820; font-size: 1rem; }
.hero-service-board h2 { position: relative; margin: 24px 0 28px; font-family: "Playfair Display", serif; font-size: 2rem; line-height: 1.15; }
.hero-service-board ul { position: relative; display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
.hero-service-board li { border-top: 1px solid rgba(255,255,255,.1); }
.hero-service-board li a { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 15px; padding: 15px 0; color: #fff; text-decoration: none; transition: color .25s ease, transform .25s ease; }
.hero-service-board li a:hover { color: #efbd6b; transform: translateX(4px); }
.hero-service-board li a > i:first-child { width: 38px; color: var(--gold); font-size: 1.1rem; text-align: center; }
.hero-service-board li a > i:last-child { color: rgba(255,255,255,.36); font-size: .72rem; }
.hero-service-board li span { display: grid; gap: 3px; }
.hero-service-board li b { font-size: .92rem; }
.hero-service-board li small { color: rgba(255,255,255,.58); font-size: .72rem; }
.service-board-foot { position: relative; display: flex; align-items: center; gap: 10px; margin-top: 22px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.7); font-size: .72rem; }
.status-dot { width: 8px; height: 8px; border-radius: 50%; background: #63d497; box-shadow: 0 0 0 5px rgba(99,212,151,.12); }
.service-benefit-strip { border-bottom: 1px solid var(--line); background: #fff; }

.service-section { background: #f6f3ed; }
/* Professional service-site refinement */
.plumbing-home { color:#172b40; }
.plumbing-home h1,.plumbing-home h2,.plumbing-home h3,.plumbing-home h4 { font-family:"Space Grotesk","DM Sans",sans-serif; letter-spacing:-.035em; }
.plumbing-home .btn-brand,.plumbing-home .site-header .btn-brand { background:#c2410c; border-color:#c2410c; color:#fff; box-shadow:0 8px 22px rgba(124,45,18,.22); }
.plumbing-home .btn-brand:hover,.plumbing-home .btn-brand:focus-visible,.plumbing-home .site-header .btn-brand:hover { background:#9a3412; border-color:#9a3412; color:#fff; }
.plumbing-home .btn:focus-visible,.plumbing-home a:focus-visible,.plumbing-home button:focus-visible { outline:3px solid #fbbf24; outline-offset:3px; }
.plumbing-home .plumbing-hero-slide { background-position:center 45%; }
.plumbing-home .plumbing-hero .carousel-indicators { top:auto; right:auto; bottom:30px; left:max(calc((100vw - 1320px)/2), 24px); display:flex; align-items:center; gap:10px; transform:none; }
.plumbing-home .plumbing-hero .carousel-indicators [data-bs-target] { width:28px; height:4px; border:0; border-radius:4px; opacity:.58; }
.plumbing-home .plumbing-hero .carousel-indicators .active { width:48px; height:4px; border-radius:4px; }
.plumbing-home .plumbing-hero .carousel-control-prev,.plumbing-home .plumbing-hero .carousel-control-next { top:auto; right:auto; bottom:14px; width:38px; height:38px; border:1px solid rgba(255,255,255,.56); background:rgba(5,34,67,.48); backdrop-filter:blur(8px); }
.plumbing-home .plumbing-hero .carousel-control-prev { left:auto; right:max(calc((100vw - 1320px)/2 + 48px), 82px); }
.plumbing-home .plumbing-hero .carousel-control-next { right:max(calc((100vw - 1320px)/2), 24px); }
.plumbing-home .plumbing-service-card { border-radius:16px; transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.plumbing-home .plumbing-service-card:hover { transform:translateY(-4px); border-color:#bfdbfe; box-shadow:0 18px 38px rgba(5,52,108,.1); }
.plumbing-home .plumbing-method-photo { overflow:hidden; border-radius:18px; }
.plumbing-home .plumbing-method-photo img { transition:transform .45s ease; }
@media (max-width: 767.98px) {
  .plumbing-home .plumbing-hero,.plumbing-home .plumbing-hero .carousel,.plumbing-home .plumbing-hero .carousel-inner,.plumbing-home .plumbing-hero .carousel-item { min-height:720px; height:720px; }
  .plumbing-home .plumbing-hero-slide { min-height:720px; padding:145px 0 100px; background-position:58% center; }
  .plumbing-home .plumbing-hero-slide:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,25,54,.38),transparent); pointer-events:none; }
  .plumbing-home .plumbing-hero-content { position:relative; padding:20px 0 30px; }
  .plumbing-home .plumbing-hero h1 { font-size:clamp(2.6rem,10vw,4rem); }
  .plumbing-home .plumbing-hero .carousel-indicators { bottom:24px; left:20px; }
  .plumbing-home .plumbing-hero .carousel-control-prev { right:70px; bottom:10px; }
  .plumbing-home .plumbing-hero .carousel-control-next { right:20px; bottom:10px; }
}
@media (prefers-reduced-motion: reduce) {
  .plumbing-home *, .plumbing-home *::before, .plumbing-home *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}
/* Stronger visual service discovery */
.plumbing-home .plumbing-hero-slide { background-image:linear-gradient(90deg,rgba(5,25,43,.79) 0%,rgba(5,25,43,.58) 46%,rgba(5,25,43,.04) 100%),var(--hero-image); }
.plumbing-home .plumbing-hero-content { max-width:740px; padding:46px 0 20px; }
.plumbing-home .plumbing-hero h1 { max-width:720px; font-size:clamp(3.25rem,6.2vw,5.8rem); line-height:.99; text-wrap:balance; }
.plumbing-home .plumbing-hero-lead { max-width:620px; font-size:1.08rem; line-height:1.75; }
.plumbing-featured-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.plumbing-featured-card { position:relative; display:flex; min-height:430px; overflow:hidden; flex-direction:column; justify-content:flex-end; border:1px solid rgba(12,44,71,.08); border-radius:22px; background:#0c2c47; color:#fff; isolation:isolate; text-decoration:none; box-shadow:0 18px 48px rgba(10,36,57,.12); }
.plumbing-featured-card::after { position:absolute; z-index:-1; inset:0; content:""; background:linear-gradient(180deg,rgba(5,24,41,.02) 22%,rgba(5,24,41,.35) 49%,rgba(5,24,41,.97) 100%); }
.plumbing-featured-card img { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .55s cubic-bezier(.2,.7,.2,1); }
.plumbing-featured-card:hover img { transform:scale(1.055); }
.plumbing-featured-card .feature-index { position:absolute; top:18px; left:18px; padding:8px 12px; border:1px solid rgba(255,255,255,.35); border-radius:99px; background:rgba(8,30,49,.38); color:#fff; font-size:.72rem; font-weight:800; letter-spacing:.1em; backdrop-filter:blur(8px); }
.plumbing-featured-card .feature-content { display:grid; gap:11px; padding:30px 28px 28px; }
.plumbing-featured-card .feature-content small { color:#fdc27c; font-size:.68rem; font-weight:800; letter-spacing:.11em; }
.plumbing-featured-card .feature-content small i { margin-right:6px; }
.plumbing-featured-card .feature-content strong { max-width:330px; color:#fff; font-size:clamp(1.45rem,2.15vw,2rem); font-weight:700; line-height:1.12; }
.plumbing-featured-card .feature-content>span { color:rgba(255,255,255,.78); font-size:.85rem; line-height:1.6; }
.plumbing-featured-card .feature-content b { display:flex; align-items:center; justify-content:space-between; margin-top:7px; padding-top:16px; border-top:1px solid rgba(255,255,255,.25); color:#fff; font-size:.82rem; }
.plumbing-featured-card .feature-content b i { color:#fdc27c; transition:transform .2s ease; }
.plumbing-featured-card:hover .feature-content b i { transform:translateX(5px); }
.plumbing-other-services { margin-top:70px; padding-top:34px; border-top:1px solid #dce5eb; }
.other-services-heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin-bottom:20px; }
.other-services-heading span { color:#0c2c47; font-size:1.25rem; font-weight:750; }
.other-services-heading small { color:#66798a; }
.plumbing-compact-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.plumbing-compact-card { display:grid; grid-template-columns:42px minmax(0,1fr) 16px; align-items:center; gap:12px; min-height:78px; padding:13px 15px; border:1px solid #e0e8ee; border-radius:13px; background:#fff; color:#17334a; text-decoration:none; transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease; }
.plumbing-compact-card:hover { transform:translateY(-2px); border-color:#9dc7e0; box-shadow:0 10px 24px rgba(10,46,76,.08); color:#145098; }
.plumbing-compact-card>span { display:grid; width:42px; height:42px; place-items:center; border-radius:12px; background:#edf6fb; color:#145098; font-size:1.02rem; }
.plumbing-compact-card strong { font-size:.83rem; line-height:1.25; }
.plumbing-compact-card>i { color:#8ba0b1; font-size:.72rem; }
@media(max-width:991.98px){.plumbing-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plumbing-featured-card:last-child{grid-column:1/-1;min-height:360px}.plumbing-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.plumbing-featured-grid{grid-template-columns:1fr;gap:14px}.plumbing-featured-card,.plumbing-featured-card:last-child{min-height:390px;grid-column:auto}.plumbing-featured-card .feature-content{padding:25px 23px}.plumbing-other-services{margin-top:46px;padding-top:27px}.other-services-heading{display:grid;gap:5px}.plumbing-compact-grid{grid-template-columns:1fr}.plumbing-home .plumbing-hero-content{max-width:620px}.plumbing-home .plumbing-hero h1{font-size:clamp(2.7rem,10vw,4.15rem)}}
/* Separated service modules and navigation */
.store-body .btn-brand { border-color:#c2410c; background:#c2410c; color:#fff; }
.store-body .btn-brand:hover,.store-body .btn-brand:focus-visible { border-color:#9a3412; background:#9a3412; color:#fff; }
.store-body:not(.plumbing-home) .page-hero h1 { font-family:"Space Grotesk","DM Sans",sans-serif; font-weight:700; letter-spacing:-.04em; }
.site-header .nav-link.dropdown-toggle { border:0; background:transparent; }
.site-header .service-mega-menu { left:50%; width:min(920px,calc(100vw - 32px)); max-width:calc(100vw - 32px); max-height:min(72vh,680px); margin-top:12px; overflow-y:auto; overscroll-behavior:contain; padding:18px; border:1px solid #e2eaf0; border-radius:16px; box-shadow:0 22px 60px rgba(10,36,57,.16); transform:translateX(-50%); }
.service-menu-overview { display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; padding:13px 15px; border-radius:10px; background:#eef6fa; color:#123f61; font-weight:800; text-decoration:none; }
.service-menu-overview>i { color:#c2410c; }
.service-menu-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.service-menu-groups>div { display:grid; align-content:start; gap:3px; }
.service-menu-groups a { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 10px; border-radius:7px; color:var(--ink); font-size:.82rem; font-weight:700; text-decoration:none; }
.service-menu-groups a i { flex:none; color:var(--gold); font-size:.7rem; }
.service-menu-groups .service-menu-category { justify-content:flex-start; margin-bottom:4px; padding:9px 10px; background:#f4f7f9; color:#145098; font-size:.7rem; letter-spacing:.045em; text-transform:uppercase; }
.service-menu-groups .service-menu-item { padding:7px 10px; font-size:.77rem; font-weight:600; }
.service-menu-groups a:hover,.service-menu-groups a:focus-visible { background:var(--paper); color:var(--gold-dark); }
.site-header .company-menu { min-width:225px; padding:8px; border:1px solid #e2eaf0; border-radius:12px; }
.site-header .company-menu .dropdown-item { padding:10px 12px; border-radius:7px; }
.plumbing-catalog-link { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:30px; padding:18px 21px; border:1px solid #dce7ed; border-radius:14px; background:#fff; color:#17334a; font-weight:750; }
.plumbing-catalog-link .btn { white-space:nowrap; }
.plumbing-process-preview { padding:82px 0; background:#eff6f9; }
.plumbing-process-preview .container { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); align-items:center; gap:25px 70px; }
.plumbing-process-preview h2,.plumbing-faq-preview h2 { margin:10px 0; color:#123f61; font-family:"Space Grotesk","DM Sans",sans-serif; font-size:clamp(2rem,3.7vw,3.25rem); font-weight:700; letter-spacing:-.04em; line-height:1.08; }
.plumbing-process-preview p,.plumbing-faq-preview p { max-width:540px; margin:0; color:#627788; line-height:1.7; }
.plumbing-process-preview ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:0; padding:0; list-style:none; }
.plumbing-process-preview li { display:grid; gap:15px; min-height:112px; padding:17px; border:1px solid #d9e6ec; border-radius:12px; background:#fff; color:#17334a; font-size:.83rem; font-weight:750; }
.plumbing-process-preview li span { color:#c2410c; font-size:.72rem; letter-spacing:.12em; }
.plumbing-process-preview .text-link { grid-column:2; justify-self:start; color:#145098; font-weight:750; text-decoration:none; }
.plumbing-faq-preview { padding:70px 0; text-align:center; }
.plumbing-faq-preview .container { display:grid; justify-items:center; }
.plumbing-faq-preview h2 { max-width:720px; }
.plumbing-faq-preview p { margin-bottom:20px; }
.service-directory-group+.service-directory-group { margin-top:60px; }
.service-directory-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:20px; padding-bottom:14px; border-bottom:1px solid #dce5eb; }
.service-directory-heading .eyebrow { color:#c2410c; font-size:.75rem; font-weight:800; letter-spacing:.08em; }
.service-directory-heading h2 { margin:0; color:#123f61; font-family:"Space Grotesk","DM Sans",sans-serif; font-size:clamp(1.65rem,3vw,2.35rem); font-weight:700; letter-spacing:-.035em; }
.service-directory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.service-directory-card { display:grid; grid-template-columns:52px minmax(0,1fr) 20px; align-items:center; gap:15px; min-height:112px; padding:18px; border:1px solid #e0e8ee; border-radius:14px; background:#fff; color:#17334a; text-decoration:none; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.service-directory-card:hover { transform:translateY(-2px); border-color:#a9c9da; box-shadow:0 12px 30px rgba(10,46,76,.08); color:#123f61; }
.service-directory-icon { display:grid; width:52px; height:52px; place-items:center; border-radius:14px; background:#edf6fb; color:#145098; font-size:1.2rem; }
.service-directory-copy { display:grid; gap:6px; }
.service-directory-copy strong { font-size:.98rem; }
.service-directory-copy small { color:#647889; font-size:.78rem; line-height:1.5; }
.service-directory-arrow { color:#c2410c; font-size:.85rem; }
.service-directory-cta { padding:56px 0; background:#123f61; color:#fff; }
.service-directory-cta>.container { display:flex; align-items:center; justify-content:space-between; gap:25px; }
.service-directory-cta h2 { margin:8px 0; color:#fff; font-family:"Space Grotesk","DM Sans",sans-serif; font-size:clamp(1.8rem,3.5vw,2.8rem); font-weight:700; letter-spacing:-.035em; }
.service-directory-cta p { margin:0; color:rgba(255,255,255,.72); }
.service-process-page-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.service-process-page-grid article { position:relative; min-height:310px; padding:30px; border:1px solid #dfE8ed; border-radius:18px; background:linear-gradient(155deg,#fff,#f5f9fb); box-shadow:0 14px 40px rgba(12,49,76,.06); }
.service-process-page-grid article>i { display:grid; width:54px; height:54px; margin:15px 0 26px; place-items:center; border-radius:15px; background:#e8f3f8; color:#145098; font-size:1.25rem; }
.service-process-page-grid h2 { margin-bottom:12px; color:#123f61; font-family:"Space Grotesk","DM Sans",sans-serif; font-size:1.35rem; font-weight:700; }
.service-process-page-grid p { margin:0; color:#627788; font-size:.9rem; line-height:1.75; }
.process-page-number { position:absolute; top:27px; right:29px; color:#c2410c; font-size:.75rem; font-weight:800; letter-spacing:.12em; }
.service-process-note { display:flex; align-items:start; gap:13px; margin-top:22px; padding:18px 20px; border-radius:12px; background:#eff6f9; color:#4d6577; }
.service-process-note i { margin-top:4px; color:#145098; }
.service-process-note p { margin:0; line-height:1.65; }
.coverage-card { display:grid; grid-template-columns:110px minmax(0,720px); justify-content:center; align-items:start; gap:28px; max-width:1000px; margin:auto; padding:48px; border:1px solid #dfe8ed; border-radius:22px; background:linear-gradient(135deg,#f5fafc,#fff); box-shadow:0 18px 48px rgba(12,49,76,.08); }
.coverage-map-icon { display:grid; width:92px; height:92px; place-items:center; border-radius:25px; background:#e4f1f7; color:#145098; font-size:2rem; }
.coverage-card h2 { margin:9px 0 12px; color:#123f61; font-family:"Space Grotesk","DM Sans",sans-serif; font-size:2.7rem; font-weight:700; }
.coverage-card p { max-width:650px; color:#627788; line-height:1.75; }
.coverage-card .coverage-address { margin:20px 0; color:#17334a; }
@media(max-width:991.98px){.site-header .service-mega-menu{left:0;width:100%;max-width:100%;margin:0 0 8px;transform:none;max-height:55vh;overflow:auto}.service-menu-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.service-menu-groups>div:last-child{grid-column:1/-1}.plumbing-process-preview .container{grid-template-columns:1fr;gap:22px}.plumbing-process-preview .text-link{grid-column:auto}.service-process-page-grid{grid-template-columns:1fr}.service-process-page-grid article{min-height:0}.service-directory-cta>.container{align-items:flex-start;flex-direction:column}}
@media(max-width:767.98px){.site-header .service-mega-menu{width:100%;padding:11px}.service-menu-groups{grid-template-columns:1fr;gap:8px}.service-menu-groups>div:last-child{grid-column:auto}.service-menu-groups>div{padding-bottom:7px;border-bottom:1px solid #e7edf1}.service-menu-groups>div:last-child{border-bottom:0}.plumbing-catalog-link{align-items:flex-start;flex-direction:column}.plumbing-process-preview{padding:62px 0}.plumbing-process-preview ol{grid-template-columns:1fr}.plumbing-process-preview li{grid-template-columns:40px 1fr;align-items:center;min-height:0;padding:14px}.service-directory-group+.service-directory-group{margin-top:42px}.service-directory-heading{align-items:flex-start;flex-direction:column;gap:7px}.service-directory-grid{grid-template-columns:1fr}.service-directory-card{grid-template-columns:46px minmax(0,1fr) 18px;gap:12px;padding:15px}.service-directory-icon{width:46px;height:46px}.service-directory-cta{padding:42px 0}.coverage-card{grid-template-columns:1fr;gap:20px;padding:28px 23px}.coverage-map-icon{width:66px;height:66px;border-radius:18px;font-size:1.5rem}.coverage-card h2{font-size:2.2rem}}

/* Shared motion language for the plumbing pages. */
.motion-ready [data-motion-reveal]{opacity:0;transform:translate3d(0,34px,0);transition:opacity .7s ease var(--motion-delay,0ms),transform .82s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms);will-change:opacity,transform}
.motion-ready [data-motion-reveal].is-visible{opacity:1;transform:translate3d(0,0,0)}
.motion-ready .editorial-photo[data-motion-reveal]{clip-path:inset(0 100% 0 0);transition:clip-path 1.05s cubic-bezier(.16,1,.3,1)}
.motion-ready .editorial-photo[data-motion-reveal].is-visible{clip-path:inset(0 0 0 0)}
.plumbing-home .plumbing-hero-slide{background-position:calc(50% + var(--hero-x,0px)) calc(50% + var(--hero-y,0px) + var(--hero-scroll,0px));transition:background-position .25s ease-out}
.plumbing-home .plumbing-hero-content{animation:plumbingHeroEnter .85s cubic-bezier(.16,1,.3,1) both}
.plumbing-home .plumbing-hero-content.hero-replay{animation:plumbingHeroEnter .78s cubic-bezier(.16,1,.3,1) both}
@keyframes plumbingHeroEnter{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){.motion-ready [data-motion-reveal]{opacity:1;transform:none;transition:none}.plumbing-home .plumbing-hero-content,.plumbing-home .plumbing-hero-content.hero-replay{animation:none}.plumbing-home .plumbing-hero-slide{transition:none}}

/* Reference visual system: charcoal, white, and vivid orange. */
body.store-body{color:#222;background:#fff;font-family:'Heebo',sans-serif}
body.store-body h1,body.store-body h2,body.store-body h3,body.store-body h4,body.store-body h5,body.store-body .navbar,.eyebrow{font-family:'Manrope','Heebo',sans-serif}
.announcement-bar{background:#ff5203;color:#fff}
.announcement-bar i,.text-gold{color:#fff!important}
.site-header{background:rgba(255,255,255,.98);box-shadow:0 3px 20px rgba(0,0,0,.08)}
.store-brand,.site-header .nav-link{color:#222}
.store-brand small{color:#777}
.site-header .nav-link:hover,.site-header .nav-link.active,.site-header .dropdown-toggle.show{color:#ff5203}
.site-header .dropdown-menu{border-radius:0;border-top:3px solid #ff5203}
.site-header .dropdown-item:hover{background:#f4f4f4;color:#ff5203}
.btn-brand{background:#ff5203;border-color:#ff5203;color:#fff;font-weight:750}
.btn-brand:hover,.btn-brand:focus{background:#222;border-color:#222;color:#fff}
.plumbing-home .plumbing-hero-slide{background-image:linear-gradient(90deg,rgba(20,20,20,.88),rgba(26,26,26,.68) 54%,rgba(26,26,26,.16)),var(--hero-image);background-color:#222}
.plumbing-home .plumbing-hero-slide:before{position:absolute;top:-260px;left:12%;bottom:-260px;width:210px;background:#ff5203;opacity:.24;z-index:0;content:'';transform:rotate(34deg);pointer-events:none}
.plumbing-home .plumbing-hero h1{font-family:'Manrope','Heebo',sans-serif;font-weight:800;letter-spacing:-.055em}
.plumbing-home .plumbing-kicker{color:#fff}
.plumbing-home .plumbing-kicker i,.plumbing-home .plumbing-hero-notes i{background:#ff5203;color:#ff5203}
.plumbing-home .plumbing-hero .btn{border-radius:0;background:#ff5203;border-color:#ff5203;color:white}
.plumbing-home .plumbing-hero .carousel-indicators .active{background:#ff5203;border-color:#ff5203}
.plumbing-home .plumbing-hero .carousel-control-prev,.plumbing-home .plumbing-hero .carousel-control-next{border-radius:0;background:#ff5203;border-color:#ff5203}
.plumbing-home .plumbing-method h2,.plumbing-home .plumbing-section-heading h2,.plumbing-home .plumbing-process-preview h2,.plumbing-home .plumbing-faq-preview h2,.plumbing-home .plumbing-emergency h2{color:#222;font-family:'Manrope','Heebo',sans-serif}
.plumbing-method-photo::before,.plumbing-method-photo>span{background:#222}
.plumbing-method-photo>span i,.plumbing-method li i{color:#ff5203}
.plumbing-method .text-link,.plumbing-home .text-link{color:#ff5203}
.plumbing-services{background:#f4f4f4}
.plumbing-home .plumbing-section-heading .eyebrow{background:rgba(255,82,3,.10);color:#d94200}
.plumbing-home .plumbing-final,.plumbing-home .contact-ribbon,.plumbing-home .site-footer,.plumbing-home .plumbing-process{background:#222}
.plumbing-featured-card .feature-content small,.plumbing-featured-card .feature-content b i,.plumbing-featured-card .feature-index{color:#ffb08a}
.page-hero,.catalog-hero{background:#222;color:#fff}
.page-hero .eyebrow,.catalog-hero .eyebrow,.page-hero .text-gold,.catalog-hero .text-gold{color:#ff8a54!important}
.page-hero h1,.catalog-hero h1{font-family:'Manrope','Heebo',sans-serif}
.service-directory-icon,.coverage-map-icon{background:rgba(255,82,3,.1);color:#ff5203}
.service-directory-card:hover{border-color:#ff5203;color:#222}
.service-directory-card>i,.service-directory-card strong{color:#ff5203}
.service-directory-cta{background:#222}
.service-directory-cta h2,.service-directory-cta p{color:#fff}
.site-footer{background:#222}
.floating-whatsapp{background:#ff5203}
.plumbing-mobile-call{background:#222}
.plumbing-mobile-whatsapp{background:#ff5203}

/* Colorful dimensional service icons */
.service-directory-group--kacak-ve-onarim { --service-icon-top:#56c4e5; --service-icon-bottom:#1375b6; --service-icon-mark:linear-gradient(145deg,#f5feff 5%,#a5ecff 40%,#268fc7 76%,#174978); --service-icon-shadow:rgba(16,103,161,.32); }
.service-directory-group--gider-ve-tikaniklik { --service-icon-top:#38d4c2; --service-icon-bottom:#108b9d; --service-icon-mark:linear-gradient(145deg,#f0fffc 5%,#8af2dc 40%,#23a99e 76%,#176679); --service-icon-shadow:rgba(10,126,142,.3); }
.service-directory-group--musluk-ve-sifon { --service-icon-top:#ffc369; --service-icon-bottom:#f06b3e; --service-icon-mark:linear-gradient(145deg,#fff8df 5%,#ffdc8b 40%,#fa9147 76%,#a83c45); --service-icon-shadow:rgba(202,91,47,.3); }
.service-directory-group--montaj-ve-baglanti { --service-icon-top:#a68aff; --service-icon-bottom:#6750cd; --service-icon-mark:linear-gradient(145deg,#fffaff 5%,#decaff 40%,#9675ec 76%,#4d459b); --service-icon-shadow:rgba(91,67,173,.3); }
.service-directory-group--tesisat-kurulum-ve-yenileme { --service-icon-top:#66d69b; --service-icon-bottom:#198c75; --service-icon-mark:linear-gradient(145deg,#f4fff1 5%,#b0efbd 40%,#50b989 76%,#176c67); --service-icon-shadow:rgba(25,121,99,.3); }
.service-directory-group--kalorifer-ve-dus { --service-icon-top:#ff9c67; --service-icon-bottom:#e65049; --service-icon-mark:linear-gradient(145deg,#fff6d7 5%,#ffc375 40%,#f47b50 76%,#a7374c); --service-icon-shadow:rgba(184,67,56,.3); }
.service-directory-icon { position:relative; isolation:isolate; overflow:hidden; border:1px solid rgba(255,255,255,.75); border-radius:16px; background:linear-gradient(145deg,var(--service-icon-top,#56c4e5),var(--service-icon-bottom,#1375b6)); color:#fff; box-shadow:inset 0 1px 0 rgba(255,255,255,.8),inset 0 -4px 0 rgba(0,0,0,.12),0 7px 13px var(--service-icon-shadow,rgba(16,103,161,.3)); transform:perspective(460px) rotateX(5deg) rotateY(-5deg); transform-style:preserve-3d; transition:transform .22s ease,box-shadow .22s ease; }
.service-directory-icon::before { position:absolute; z-index:-1; top:-48%; left:-24%; width:112%; height:104%; content:""; border:1px solid rgba(255,255,255,.33); border-radius:50%; background:linear-gradient(145deg,rgba(255,255,255,.36),rgba(255,255,255,0) 68%); }
.service-directory-icon i { color:transparent; background:var(--service-icon-mark,linear-gradient(145deg,#fff,#8de7ff 48%,#277daf)); -webkit-background-clip:text; background-clip:text; font-size:1.3rem; filter:drop-shadow(0 2px 1px rgba(11,35,53,.42)) drop-shadow(0 5px 5px rgba(11,35,53,.2)); text-shadow:0 1px 0 rgba(255,255,255,.35); transform:translateZ(8px); }
.service-directory-card:hover .service-directory-icon { box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 -4px 0 rgba(0,0,0,.12),0 11px 17px var(--service-icon-shadow,rgba(16,103,161,.35)); transform:perspective(460px) rotateX(0) rotateY(0) translateY(-2px); }
@media(prefers-reduced-motion:reduce){.service-directory-icon{transition:none}}
.service-process-icon { --process-icon-top:#4dc3e3; --process-icon-bottom:#157ab6; --process-icon-mark:linear-gradient(145deg,#f5feff 5%,#a5ecff 40%,#268fc7 76%,#174978); --process-icon-shadow:rgba(16,103,161,.3); position:relative; isolation:isolate; display:grid; width:62px; height:62px; margin:15px 0 26px; place-items:center; overflow:hidden; border:1px solid rgba(255,255,255,.78); border-radius:17px; background:linear-gradient(145deg,var(--process-icon-top),var(--process-icon-bottom)); box-shadow:inset 0 1px 0 rgba(255,255,255,.82),inset 0 -4px 0 rgba(0,0,0,.12),0 8px 15px var(--process-icon-shadow); transform:perspective(460px) rotateX(5deg) rotateY(-5deg); transform-style:preserve-3d; transition:transform .22s ease,box-shadow .22s ease; }
.service-process-icon::before { position:absolute; z-index:0; top:-48%; left:-24%; width:112%; height:104%; content:""; border:1px solid rgba(255,255,255,.33); border-radius:50%; background:linear-gradient(145deg,rgba(255,255,255,.36),rgba(255,255,255,0) 68%); }
.service-process-icon i { position:relative; z-index:1; color:transparent; background:var(--process-icon-mark); -webkit-background-clip:text; background-clip:text; font-size:1.45rem; filter:drop-shadow(0 2px 1px rgba(11,35,53,.42)) drop-shadow(0 5px 5px rgba(11,35,53,.2)); transform:translateZ(8px); }
.service-process-icon--plan { --process-icon-top:#52d5c2; --process-icon-bottom:#108b9d; --process-icon-mark:linear-gradient(145deg,#f0fffc 5%,#8af2dc 40%,#23a99e 76%,#176679); --process-icon-shadow:rgba(10,126,142,.3); }
.service-process-icon--repair { --process-icon-top:#ffad69; --process-icon-bottom:#ec594c; --process-icon-mark:linear-gradient(145deg,#fff8df 5%,#ffdc8b 40%,#fa9147 76%,#a83c45); --process-icon-shadow:rgba(202,91,47,.3); }
.service-process-page-grid article:hover .service-process-icon { box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 -4px 0 rgba(0,0,0,.12),0 12px 19px var(--process-icon-shadow); transform:perspective(460px) rotateX(0) rotateY(0) translateY(-2px); }
.service-process-note-icon { display:grid; flex:0 0 32px; width:32px; height:32px; place-items:center; border:1px solid rgba(255,255,255,.8); border-radius:10px; background:linear-gradient(145deg,#71cdec,#267db6); color:#fff; box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 4px 8px rgba(16,103,161,.24); }
.service-process-note-icon i { color:#fff; filter:drop-shadow(0 1px 1px rgba(11,35,53,.35)); }
@media(prefers-reduced-motion:reduce){.service-process-icon{transition:none}}

/* The reference section uses a dark field, three white cards, orange overlines and Owl-style pagination. */
.service-area-reference{position:relative;overflow:hidden;padding:100px 0 120px;background:#0e0e0d;color:#fff;isolation:isolate}
.service-area-reference:before{position:absolute;z-index:-1;inset:0;content:'';opacity:.32;background:radial-gradient(ellipse at 50% 8%,rgba(255,82,3,.18),transparent 42%),repeating-linear-gradient(135deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px)}
.service-area-heading{margin:-10px 0 50px;text-align:center}
.service-area-kicker{display:inline-block;margin-bottom:10px;color:#ff5203;font-family:'Manrope','Heebo',sans-serif;font-size:14px;font-weight:800;letter-spacing:2px;text-transform:uppercase}
.service-area-heading h2{margin:0;color:#fff;font-family:'Manrope','Heebo',sans-serif;font-size:clamp(2.15rem,4vw,3rem);font-weight:800}
.service-area-carousel{position:relative}
.service-area-viewport{overflow:hidden;touch-action:pan-y;cursor:grab}
.service-area-viewport:active{cursor:grabbing}
.service-area-track{display:flex;gap:30px;will-change:transform;transition:transform .5s ease}
.service-area-card{position:relative;display:block;flex:0 0 calc((100% - 60px)/3);min-height:280px;overflow:hidden;padding:55px 45px;border-radius:15px;background:#fff;color:#222;box-shadow:0 14px 34px rgba(0,0,0,.18)}
.service-area-card-header{display:flex;align-items:center;margin-bottom:17px}
.service-area-card-title{margin-left:0}
.service-area-card-title h3{margin:0 0 9px;color:#222;font-family:'Manrope','Heebo',sans-serif;font-size:1.2rem;font-weight:800;line-height:1.35}
.service-area-card-title h4{display:inline-block;margin:0;padding:3px 16px;background:#ff5203;color:#fff;font-family:'Heebo',sans-serif;font-size:16px;font-weight:500;line-height:26px}
.service-area-card-title h4 a{color:#fff;text-decoration:none}
.service-area-card-copy p{position:relative;z-index:1;margin:0;color:#777;font-size:16px;line-height:28px}
.service-area-quote{position:absolute;right:28px;bottom:18px;color:#f4f4f4;font-size:46px;line-height:1}
.service-area-dots{position:absolute;bottom:-50px;left:50%;display:flex;max-width:min(92vw,980px);justify-content:center;gap:7px;overflow-x:auto;transform:translateX(-50%);scrollbar-width:none}
.service-area-dots::-webkit-scrollbar{display:none}
.service-area-dot{position:relative;flex:0 0 10px;width:10px;height:10px;margin:0;padding:0;border:1px solid #ff5203;border-radius:50%;background:transparent;cursor:pointer;transition:all .1s linear}
.service-area-dot[aria-current=true]{background:#ff5203}
.service-area-dot:focus-visible{outline:2px solid #fff;outline-offset:3px}
.service-area-note{margin:78px 0 0;color:rgba(255,255,255,.66);font-size:.84rem;text-align:center}
.service-area-card:hover{transform:translateY(-3px);box-shadow:0 22px 48px rgba(0,0,0,.27);transition:transform .25s ease,box-shadow .25s ease}
@media(max-width:1023.98px){.service-area-card{flex-basis:calc((100% - 30px)/2);padding:44px 34px}}
@media(max-width:799.98px){.service-area-reference{padding:72px 0 102px}.service-area-heading{margin-bottom:34px}.service-area-card{flex-basis:100%;min-height:252px;padding:38px 30px}.service-area-dots{bottom:-42px;max-width:calc(100vw - 30px);justify-content:flex-start}.service-area-note{margin-top:67px}}
@media(prefers-reduced-motion:reduce){.service-area-track{transition:none}.service-area-card:hover{transform:none}}

/* Supplied plumbing brand mark */
.store-brand img{flex:0 0 auto;width:62px;height:62px;object-fit:contain;object-position:center}
.store-brand-copy{display:grid;gap:5px}
.store-brand-copy strong,.footer-brand-copy strong{font-family:'Manrope','Heebo',sans-serif;font-size:1rem;font-weight:850;letter-spacing:-.035em;line-height:1.1}
.store-brand-copy small,.footer-brand-copy small{margin:0;color:#68747c;font-size:.62rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.footer-brand{gap:14px}
.footer-brand-mark{display:grid;flex:0 0 68px;width:68px;height:68px;place-items:center;overflow:hidden;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.footer-brand-mark img{display:block;width:60px;height:60px;object-fit:contain;object-position:center}
.footer-brand-copy{display:grid;gap:6px;color:#fff}
.footer-brand-copy strong{font-size:1.1rem}
.footer-brand-copy small{color:rgba(255,255,255,.62)}
@media(max-width:767.98px){.store-brand img{width:50px;height:50px}.store-brand-copy strong{font-size:.9rem}.store-brand-copy small{font-size:.55rem}.footer-brand-mark{flex-basis:58px;width:58px;height:58px;border-radius:12px}.footer-brand-mark img{width:52px;height:52px}.footer-brand-copy strong{font-size:1rem}}
.plumbing-home .announcement-bar{background:#ff5203;color:#fff}
.plumbing-home .announcement-bar i{color:#fff!important}

/* Integration layer for the plumbing identity on the existing public PHP shell. */
.header .top-bar { display:none !important; }
.header .navbar-brand { display:flex; align-items:center; gap:12px; max-width:310px; color:#222; text-decoration:none; }
.header .navbar-brand img { width:58px; height:58px; max-height:58px !important; flex:0 0 58px; padding:4px; border-radius:12px; background:#fff; object-fit:contain; box-shadow:0 5px 16px rgba(0,0,0,.09); }
.plumbing-brand-copy { display:grid; gap:4px; white-space:nowrap; }
.plumbing-brand-copy strong { color:#222; font-family:'Manrope','Heebo',sans-serif; font-size:1rem; font-weight:850; letter-spacing:-.035em; line-height:1.05; }
.plumbing-brand-copy small { color:#777; font-size:.61rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.public-plumbing-announcement { position:relative; z-index:2; padding:9px 0; background:#222320; color:rgba(255,255,255,.86); font-size:.76rem; }
.public-plumbing-announcement .container { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.public-plumbing-announcement i { margin-right:7px; color:#f5a276; }
.public-plumbing-announcement a { color:#fff; font-weight:700; text-decoration:none; }
.header #navbarNav > .legacy-clinic-nav,
.header #navbarNav > .mobile-header-btn,
.header #navbarNav > .mobile-social-icons { display:none !important; }
.header #navbarNav > .plumbing-public-nav { display:flex !important; align-items:center; gap:2px; margin-left:auto; }
.header .plumbing-public-nav .nav-link { padding:10px 11px; color:#292a27; font-size:.84rem; font-weight:750; white-space:nowrap; }
.header .plumbing-public-nav .nav-link::before { background:#f45112; }
.header .plumbing-public-nav .plumbing-nav-cta { margin-left:7px; padding:12px 17px; border-radius:3px; background:#f45112; color:#fff; box-shadow:0 7px 18px rgba(201,64,13,.17); }
.header .plumbing-public-nav .plumbing-nav-cta::before { display:none; }
.header .plumbing-public-nav .plumbing-nav-cta:hover { background:#c9400d; color:#fff; }
.header .custom-toggler { border-color:rgba(34,35,32,.2); color:#222320; }
.header .custom-toggler:focus { box-shadow:0 0 0 .2rem rgba(244,81,18,.18); }
.header [data-bs-target="#searchModal"], .header .mobile-lang-switch { display:none !important; }
.contact-ribbon .btn-light { border-radius:3px; font-weight:800; }
.page-header { position:relative; overflow:hidden; padding:76px 0 58px; background:#222320; color:#fff; }
.page-header .page-title { color:#fff; font-size:clamp(2.5rem,5vw,4.3rem); font-weight:850; letter-spacing:-.055em; }
.page-hero h1,.catalog-hero h1{color:#fff!important}
.page-header .breadcrumb, .page-header .breadcrumb a { color:rgba(255,255,255,.76); }
.page-header .breadcrumb-item.active { color:#f5a276; }
.contact-info-section { padding:60px 0; background:#f5f4f1; }
.contact-info-section .info-card { height:100%; padding:28px; border:1px solid #e8e5df; border-radius:4px; background:#fff; box-shadow:0 12px 32px rgba(32,33,31,.06); }
.contact-info-section .info-icon { color:#c9400d; }
.contact-info-section h4 { margin:14px 0 10px; font-weight:800; }
.contact-info-section a { color:#c9400d; }
.contact-form-section { padding:76px 0; background:#fff; }
.contact-form-section .section-intro h2 { color:#222320; font-weight:850; }
.contact-form-section .form-card { padding:clamp(22px,4vw,38px); border:1px solid #e8e5df; border-radius:4px; background:#f8f7f4; box-shadow:0 18px 44px rgba(32,33,31,.07); }
.contact-form-section .form-control, .contact-form-section .form-select { min-height:48px; border-color:#dedbd5; border-radius:3px; }
.contact-form-section textarea.form-control { min-height:145px; }
.contact-form-section .form-control:focus, .contact-form-section .form-select:focus { border-color:#f45112; box-shadow:0 0 0 .2rem rgba(244,81,18,.15); }
.contact-form-section .submit-btn { border-radius:3px; background:#f45112; border-color:#f45112; font-weight:800; }
.contact-form-section .map-card { min-height:380px; overflow:hidden; border:1px solid #e8e5df; border-radius:4px; background:#f5f4f1; }
.contact-form-section .map-card iframe { display:block; width:100%; min-height:380px; border:0; }
.contact-form-section .heading-line { margin:16px 0; }
.alert-success-custom, .alert-danger-custom { padding:18px 20px; border-radius:3px; }
.alert-success-custom { border:1px solid #b7dfc2; background:#eff9f1; color:#205c32; }
.alert-danger-custom { border:1px solid #f1c6bc; background:#fff4f0; color:#8c2e1c; }
.service-area-reference .service-area-heading h2 { color:#fff; }
.service-area-reference .service-area-kicker { color:#f5a276; }
@media(max-width:1199.98px) {
    .header .plumbing-public-nav .nav-link { padding-right:8px; padding-left:8px; font-size:.78rem; }
    .header .navbar-brand { max-width:250px; }
}
@media(max-width:991.98px) {
    .public-plumbing-announcement .announcement-services { display:none; }
    .header #navbarNav > .plumbing-public-nav { align-items:stretch; width:100%; padding:10px 0 16px; }
    .header .plumbing-public-nav .nav-link { padding:12px 10px; border-bottom:1px solid rgba(34,35,32,.08); font-size:.92rem; }
    .header .plumbing-public-nav .plumbing-nav-cta { margin:12px 0 0; text-align:center; }
}
@media(max-width:575.98px) {
    .public-plumbing-announcement { font-size:.7rem; }
    .public-plumbing-announcement .container { gap:8px; }
    .public-plumbing-announcement a { white-space:nowrap; }
    .header .navbar-brand img { width:48px; height:48px; flex-basis:48px; }
    .plumbing-brand-copy strong { font-size:.85rem; }
    .plumbing-brand-copy small { font-size:.53rem; }
}

}
/* The clinic loader script is not used by the standalone plumbing frontend. */
body.store-body #preloader{display:none!important}
/* Make the public plumbing header independent from the legacy clinic collapse styles. */
body.store-body .header{position:relative!important;inset:auto!important;transform:none!important;z-index:1000!important;width:100%;overflow:visible!important;background:#fff!important}
body.store-body .header .navbar{min-height:88px!important;padding:12px 0!important;background:#fff!important}
body.store-body .header .navbar>.container{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:18px}
body.store-body .header .navbar-brand{flex:0 0 auto!important;min-width:240px}
body.store-body .header #navbarNav{min-width:0}
body.store-body .header #navbarNav>.plumbing-public-nav{flex-wrap:nowrap!important}
body.store-body .header .plumbing-public-nav .nav-link{color:#292a27!important;line-height:1.25}
body.store-body .header .plumbing-public-nav .plumbing-nav-cta{color:#fff!important}
body.store-body .header .header-btn{display:none!important}
body.store-body.plumbing-home .plumbing-hero h1{color:#fff!important}
body.store-body .header .public-plumbing-announcement{position:relative!important;inset:auto!important;width:100%!important;min-height:0!important;backdrop-filter:none!important}
/* Public header scale: improve logo and navigation readability. */
body.store-body .header .navbar-brand{display:inline-flex!important;align-items:center!important;gap:12px!important;min-width:285px!important}
body.store-body .header .navbar-brand img{display:block!important;width:72px!important;height:72px!important;max-height:none!important;object-fit:contain!important}
body.store-body .header .plumbing-brand-copy strong{font-size:1.38rem!important;line-height:1.05!important;white-space:nowrap}
body.store-body .header .plumbing-brand-copy small{margin-top:7px!important;font-size:.72rem!important;letter-spacing:.1em!important;white-space:nowrap}
body.store-body .header .plumbing-public-nav .nav-link{padding:14px 13px!important;font-size:1rem!important;font-weight:700!important;line-height:1.25!important}
@media(min-width:992px){
 body.store-body .header #navbarNav.collapse{display:flex!important;flex-basis:auto!important;flex-grow:1!important;visibility:visible!important}
 body.store-body .header #navbarNav>.plumbing-public-nav{display:flex!important;justify-content:flex-end!important}
}
@media(max-width:1199.98px) and (min-width:992px){
 body.store-body .header .navbar>.container{gap:8px}
 body.store-body .header .navbar-brand{min-width:245px!important}
 body.store-body .header .navbar-brand img{width:62px!important;height:62px!important}
 body.store-body .header .plumbing-brand-copy strong{font-size:1.12rem!important}
 body.store-body .header .plumbing-brand-copy small{font-size:.62rem!important}
 body.store-body .header .plumbing-public-nav .nav-link{padding-right:7px!important;padding-left:7px!important;font-size:.86rem!important}
}
@media(max-width:991.98px){
 body.store-body .header .navbar-brand{min-width:0!important;max-width:calc(100% - 150px)!important}
 body.store-body .header .navbar-brand img{width:62px!important;height:62px!important}
 body.store-body .header .plumbing-brand-copy strong{font-size:1.15rem!important}
 body.store-body .header .plumbing-brand-copy small{font-size:.64rem!important}
}

/* Polatlı neighborhood directory */
.areas-hero { background:linear-gradient(115deg,rgba(24,27,25,.97),rgba(38,41,37,.91)),radial-gradient(ellipse at 88% 12%,rgba(244,81,18,.32),transparent 42%)!important; }
.areas-hero .container { position:relative; }
.areas-hero h1 { max-width:900px; margin-top:12px; font-size:clamp(2.35rem,5vw,4.25rem)!important; line-height:1.08; }
.areas-hero p { max-width:700px; margin:20px 0 26px; color:rgba(255,255,255,.78)!important; font-size:1.08rem; line-height:1.8; }
.areas-hero .breadcrumb a { color:rgba(255,255,255,.78); }
.polatli-areas-directory { padding:76px 0 84px; background:#f6f5f2; }
.areas-directory-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:30px; }
.areas-directory-heading h2 { margin:7px 0 10px; color:#242522; font-family:'Manrope','Heebo',sans-serif; font-size:clamp(1.8rem,3vw,2.65rem); font-weight:850; letter-spacing:-.045em; }
.areas-directory-heading p { max-width:680px; margin:0; color:#696a65; line-height:1.7; }
.areas-count { display:grid; min-width:108px; padding:14px 18px; border:1px solid #e7e3dc; border-radius:4px; background:#fff; text-align:center; }
.areas-count strong { color:#e94d16; font-family:'Manrope','Heebo',sans-serif; font-size:2rem; line-height:1.1; }
.areas-count span { color:#777; font-size:.78rem; font-weight:700; }
.areas-search { display:flex; align-items:center; gap:13px; max-width:500px; min-height:54px; margin-bottom:20px; padding:0 16px; border:1px solid #e4e1dc; border-radius:4px; background:#fff; color:#e94d16; }
.areas-search input { width:100%; min-width:0; border:0; outline:0; color:#272824; font:inherit; }
.areas-search input::placeholder { color:#94948e; }
.areas-search:focus-within { border-color:#e94d16; box-shadow:0 0 0 3px rgba(233,77,22,.1); }
.areas-search kbd { flex:none; padding:3px 6px; border:1px solid #ece9e3; border-radius:3px; color:#8b8a84; font-size:.68rem; }
.polatli-area-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:0; padding:0; list-style:none; }
.polatli-area-item { display:flex; align-items:center; gap:11px; min-height:58px; padding:11px 13px; border:1px solid #e8e5df; border-radius:4px; background:#fff; color:#373833; font-size:.9rem; font-weight:700; transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease; }
.polatli-area-item:hover { transform:translateY(-2px); border-color:rgba(233,77,22,.4); box-shadow:0 8px 20px rgba(36,37,34,.06); }
.polatli-area-item[hidden] { display:none; }
.area-pin { display:grid; flex:0 0 31px; width:31px; height:31px; place-items:center; border-radius:50%; background:#fff1e9; color:#e94d16; font-size:.78rem; }
.area-arrow { margin-left:auto; color:#b1aea6; font-size:.7rem; }
.areas-no-results,.areas-source-note { color:#77766f; }
.areas-no-results { padding:18px 0; }
.areas-source-note { margin:25px 0 0; font-size:.78rem; line-height:1.7; }
.areas-empty-state { padding:46px 24px; border:1px solid #e8e5df; background:#fff; text-align:center; }
.areas-empty-state>i { color:#e94d16; font-size:2rem; }
.areas-empty-state h3 { margin:15px 0 7px; font-size:1.3rem; }
.areas-empty-state p { color:#777; }
.areas-empty-state a { color:#c9400d; font-weight:800; }
.areas-bottom-cta { margin-top:0; }
@media(max-width:991.98px) { .polatli-area-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:767.98px) { .areas-directory-heading { align-items:flex-start; } .areas-count { min-width:82px; padding:11px 12px; } .polatli-area-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .polatli-area-item { gap:8px; padding:9px; font-size:.83rem; } .area-pin { flex-basis:27px; width:27px; height:27px; } }
@media(max-width:480px) { .areas-directory-heading { gap:10px; } .areas-directory-heading h2 { font-size:1.65rem; } .areas-count { min-width:70px; } .areas-count strong { font-size:1.65rem; } .areas-hero p { font-size:.97rem; } .polatli-area-grid { grid-template-columns:1fr; } }
/* Final mobile header scale override. */
@media(max-width:575.98px) {
    body.store-body .header .navbar-brand img{width:58px!important;height:58px!important}
    body.store-body .header .plumbing-brand-copy strong{font-size:1rem!important}
    body.store-body .header .plumbing-brand-copy small{font-size:.58rem!important}
    body.store-body .header .plumbing-public-nav .nav-link{font-size:.98rem!important;padding:13px 10px!important}
}
/* Final announcement scale: keep the service strip readable at its full width. */
body.store-body .header .public-plumbing-announcement {
    padding: 15px 0 !important;
    font-size: 1.18rem !important;
    line-height: 1.2 !important;
    letter-spacing: .01em !important;
}
body.store-body .header .public-plumbing-announcement .container {
    min-height: 42px !important;
    gap: 34px !important;
}
body.store-body .header .public-plumbing-announcement .container > span:first-child {
    font-size: 1.2rem !important;
    font-weight: 850 !important;
}
body.store-body .header .public-plumbing-announcement .announcement-services {
    font-size: 1.04rem !important;
    font-weight: 700 !important;
}
body.store-body .header .public-plumbing-announcement .container > a {
    font-size: 1.14rem !important;
    font-weight: 850 !important;
}
body.store-body .header .public-plumbing-announcement i {
    font-size: 1.12rem !important;
    margin-right: 9px !important;
}
@media (max-width: 1199.98px) {
    body.store-body .header .public-plumbing-announcement { font-size: 1rem !important; }
    body.store-body .header .public-plumbing-announcement .container { gap: 18px !important; }
    body.store-body .header .public-plumbing-announcement .container > span:first-child { font-size: 1.03rem !important; }
    body.store-body .header .public-plumbing-announcement .announcement-services { font-size: .92rem !important; }
    body.store-body .header .public-plumbing-announcement .container > a { font-size: 1rem !important; }
}
@media (max-width: 767.98px) {
    body.store-body .header .public-plumbing-announcement { padding: 12px 0 !important; }
    body.store-body .header .public-plumbing-announcement .container { min-height: 36px !important; gap: 10px !important; }
    body.store-body .header .public-plumbing-announcement .container > span:first-child { font-size: .94rem !important; }
    body.store-body .header .public-plumbing-announcement .container > a { font-size: .94rem !important; }
    body.store-body .header .public-plumbing-announcement i { font-size: .94rem !important; margin-right: 5px !important; }
}
/* Footer service badges: high contrast on the dark footer and a clear map affordance. */
body.store-body .footer-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
body.store-body .footer-badges .footer-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 4px;
    color: rgba(255,255,255,.94) !important;
    background: rgba(255,255,255,.06);
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
}
body.store-body .footer-badges .footer-badge i {
    color: #ff5203;
    font-size: .95rem;
}
body.store-body .footer-badges .footer-badge-map {
    cursor: pointer;
}
body.store-body .footer-badges .footer-badge-map:hover,
body.store-body .footer-badges .footer-badge-map:focus-visible {
    color: #fff !important;
    background: #ff5203;
    border-color: #ff5203;
    box-shadow: 0 6px 18px rgba(255,82,3,.24);
}
body.store-body .footer-badges .footer-badge-map:hover i,
body.store-body .footer-badges .footer-badge-map:focus-visible i {
    color: #222;
}
@media (max-width: 575.98px) {
    body.store-body .footer-badges { gap: 8px; }
    body.store-body .footer-badges .footer-badge {
        min-height: 36px;
        padding: 8px 10px;
        font-size: .76rem;
    }
}
/* WhatsApp marka ikonu: turuncu CTA zeminlerinde kaybolmasını önle. */
body.store-body a[href*="wa.me"]:not(.whatsapp) > i.fa-whatsapp,
body.store-body a[href*="wa.me"]:not(.whatsapp) > i.fab.fa-whatsapp,
body.store-body a[href*="wa.me"]:not(.whatsapp) > i.fa-brands.fa-whatsapp {
    display: inline-grid !important;
    place-items: center;
    width: 1.28em;
    height: 1.28em;
    padding: .12em;
    border-radius: 50%;
    background: #fff;
    color: #25d366 !important;
    line-height: 1;
    text-shadow: none;
}
/* Duyuru şeridi marka turuncusu üzerinde yüksek kontrastlı gösterilir. */
body.store-body .header .public-plumbing-announcement {
    background: #ff5203 !important;
    color: #fff !important;
}
body.store-body .header .public-plumbing-announcement i,
body.store-body .header .public-plumbing-announcement .container > span,
body.store-body .header .public-plumbing-announcement a,
body.store-body .header .public-plumbing-announcement .announcement-services {
    color: #fff !important;
}
