@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root {
    --zirve-red: #d71920;
    --zirve-ink: #151719;
    --zirve-muted: #5e646b;
    --zirve-line: #e6e8eb;
    --zirve-soft: #f5f6f7;
    --zirve-white: #ffffff;
    --zirve-radius: 18px;
    --zirve-shadow: 0 18px 50px rgba(21, 23, 25, .09);
}

.zirve-modern {
    margin: 0;
    color: var(--zirve-ink);
    background: var(--zirve-white);
    font-family: 'Manrope', sans-serif;
    line-height: 1.65;
}

.zirve-modern *, .zirve-modern *::before, .zirve-modern *::after { box-sizing: border-box; }
.zirve-modern a { color: inherit; text-decoration: none; }
.zirve-modern img { display: block; max-width: 100%; }
.zirve-modern .zm-container { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.zirve-modern .zm-eyebrow { color: var(--zirve-red); font-size: .76rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.zirve-modern h1, .zirve-modern h2, .zirve-modern h3 { font-family: 'Space Grotesk', sans-serif; line-height: 1.08; margin: 0; letter-spacing: -.035em; }
.zirve-modern h1 { font-size: clamp(2.8rem, 6vw, 5.35rem); max-width: 720px; }
.zirve-modern h2 { font-size: clamp(2rem, 4vw, 3.35rem); }
.zirve-modern h3 { font-size: 1.3rem; }
.zirve-modern p { color: var(--zirve-muted); margin: 0; }
.zirve-modern .zm-button { align-items: center; background: var(--zirve-red); border: 1px solid var(--zirve-red); border-radius: 999px; color: #fff; display: inline-flex; font-size: .92rem; font-weight: 800; gap: 10px; justify-content: center; min-height: 52px; padding: 0 24px; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.zirve-modern .zm-button:hover { box-shadow: 0 10px 22px rgba(215, 25, 32, .22); transform: translateY(-2px); }
.zirve-modern .zm-button--light { background: #fff; border-color: #fff; color: var(--zirve-ink); }
.zirve-modern .zm-button--outline { background: transparent; border-color: var(--zirve-line); color: var(--zirve-ink); }
.zirve-modern .zm-topbar { background: var(--zirve-ink); color: #fff; font-size: .78rem; }
.zirve-modern .zm-topbar .zm-container { align-items: center; display: flex; justify-content: space-between; min-height: 38px; }
.zirve-modern .zm-topbar a { color: #fff; font-weight: 700; }
.zirve-modern .zm-header { background: rgba(255,255,255,.96); border-bottom: 1px solid var(--zirve-line); position: sticky; top: 0; z-index: 20; }
.zirve-modern .zm-nav { align-items: center; display: flex; gap: 30px; min-height: 78px; }
.zirve-modern .zm-logo { width: 178px; }
.zirve-modern .zm-links { align-items: center; display: flex; gap: 25px; margin-left: auto; }
.zirve-modern .zm-links a { font-size: .88rem; font-weight: 800; }
.zirve-modern .zm-links a:hover, .zirve-modern .zm-links .is-active { color: var(--zirve-red); }
.zirve-modern .zm-nav-cta { min-height: 42px; padding: 0 18px; }
.zirve-modern .zm-menu-toggle { background: transparent; border: 0; display: none; padding: 8px; }
.zirve-modern .zm-menu-toggle span { background: var(--zirve-ink); display: block; height: 2px; margin: 5px 0; width: 24px; }
.zirve-modern .zm-hero { background: linear-gradient(90deg, rgba(11,13,15,.9) 0%, rgba(11,13,15,.58) 53%, rgba(11,13,15,.12) 100%), url('../images/gorsel/balikesir-isi-pompasi-zirve.jpg') center/cover; color: #fff; min-height: 650px; display: flex; align-items: center; }
.zirve-modern .zm-hero p { color: rgba(255,255,255,.82); font-size: 1.1rem; max-width: 650px; margin-top: 25px; }
.zirve-modern .zm-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.zirve-modern .zm-hero-note { border-left: 2px solid var(--zirve-red); font-size: .83rem; margin-top: 38px; padding-left: 13px; }
.zirve-modern .zm-section { padding: 105px 0; }
.zirve-modern .zm-section--soft { background: var(--zirve-soft); }
.zirve-modern .zm-section-head { display: flex; align-items: end; gap: 35px; justify-content: space-between; margin-bottom: 42px; }
.zirve-modern .zm-section-head p { max-width: 470px; }
.zirve-modern .zm-grid { display: grid; gap: 18px; grid-template-columns: repeat(4, 1fr); }
.zirve-modern .zm-card { background: #fff; border: 1px solid var(--zirve-line); border-radius: var(--zirve-radius); padding: 28px; }
.zirve-modern .zm-card strong { color: var(--zirve-red); display: block; font-family: 'Space Grotesk', sans-serif; font-size: 2rem; margin-bottom: 20px; }
.zirve-modern .zm-card h3 { margin-bottom: 10px; }
.zirve-modern .zm-split { align-items: center; display: grid; gap: 70px; grid-template-columns: .95fr 1.05fr; }
.zirve-modern .zm-image { border-radius: var(--zirve-radius); height: 100%; min-height: 430px; object-fit: cover; width: 100%; }
.zirve-modern .zm-checklist { display: grid; gap: 14px; list-style: none; margin: 28px 0 0; padding: 0; }
.zirve-modern .zm-checklist li { align-items: center; display: flex; gap: 12px; font-weight: 700; }
.zirve-modern .zm-checklist li::before { color: var(--zirve-red); content: '✓'; font-size: 1.1rem; font-weight: 800; }
.zirve-modern .zm-brand-grid { align-items: stretch; display: grid; gap: 18px; grid-template-columns: repeat(2, 1fr); }
.zirve-modern .zm-brand { align-items: center; background: #fff; border: 1px solid var(--zirve-line); border-radius: var(--zirve-radius); display: flex; gap: 24px; min-height: 155px; padding: 28px; }
.zirve-modern .zm-brand img { max-height: 66px; max-width: 190px; width: auto; }
.zirve-modern .zm-brand .zm-partner-logo { height: 58px; max-height: 58px; max-width: 180px; object-fit: contain; width: 180px; }
.zirve-modern .zm-brand p { font-size: .88rem; }
.zirve-modern .zm-process { counter-reset: step; display: grid; gap: 18px; grid-template-columns: repeat(5, 1fr); }
.zirve-modern .zm-process .zm-card { position: relative; }
.zirve-modern .zm-process .zm-card::before { color: var(--zirve-red); content: counter(step, decimal-leading-zero); counter-increment: step; font-family: 'Space Grotesk', sans-serif; font-size: 1.5rem; font-weight: 700; }
.zirve-modern .zm-gallery { display: grid; gap: 16px; grid-template-columns: 1.25fr .75fr .75fr; grid-template-rows: 180px 180px; }
.zirve-modern .zm-gallery img { border-radius: 14px; height: 100%; object-fit: cover; width: 100%; }
.zirve-modern .zm-gallery img:first-child { grid-row: span 2; }
.zirve-modern .zm-regions { background: var(--zirve-ink); color: #fff; }
.zirve-modern .zm-regions p, .zirve-modern .zm-regions li { color: rgba(255,255,255,.72); }
.zirve-modern .zm-region-list { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 28px 0 0; padding: 0; }
.zirve-modern .zm-region-list li { border: 1px solid rgba(255,255,255,.2); border-radius: 999px; padding: 8px 14px; }
.zirve-modern .zm-cta { background: var(--zirve-red); color: #fff; padding: 74px 0; }
.zirve-modern .zm-cta p { color: rgba(255,255,255,.82); margin-top: 14px; }
.zirve-modern .zm-cta .zm-section-head { margin: 0; }
.zirve-modern .zm-cta h2 { max-width: 690px; }
.zirve-modern .zm-footer { background: #101112; color: #fff; padding: 60px 0 25px; }
.zirve-modern .zm-footer-grid { display: grid; gap: 35px; grid-template-columns: 1.4fr 1fr 1fr 1fr; }
.zirve-modern .zm-footer .zm-logo { filter: brightness(0) invert(1); margin-bottom: 18px; }
.zirve-modern .zm-footer p, .zirve-modern .zm-footer a { color: rgba(255,255,255,.65); font-size: .86rem; }
.zirve-modern .zm-footer h3 { font-size: 1rem; margin-bottom: 15px; }
.zirve-modern .zm-footer ul { list-style: none; margin: 0; padding: 0; }
.zirve-modern .zm-footer li { margin-bottom: 8px; }
.zirve-modern .zm-copyright { border-top: 1px solid rgba(255,255,255,.12); margin-top: 45px; padding-top: 18px; }
.zirve-modern .zm-float-wa { align-items: center; background: #25d366; border-radius: 999px; bottom: 22px; box-shadow: 0 8px 22px rgba(0,0,0,.2); color: #fff; display: flex; font-size: .85rem; font-weight: 800; gap: 8px; padding: 13px 17px; position: fixed; right: 22px; z-index: 30; }
.zirve-modern .zm-float-wa img { height: 20px; width: 20px; }
.zirve-modern .zm-faq { border-bottom: 1px solid var(--zirve-line); padding: 18px 0; }
.zirve-modern .zm-faq summary { cursor: pointer; font-family: 'Space Grotesk', sans-serif; font-size: 1.15rem; font-weight: 700; }
.zirve-modern .zm-faq p { padding: 14px 30px 0 0; }
.zirve-modern .zm-hero--bosch { background-image: linear-gradient(90deg, rgba(10, 12, 14, .92) 0%, rgba(10, 12, 14, .62) 55%, rgba(10, 12, 14, .18) 100%), url('../images/bosch-isi-pompasi-1.jpg'); }
.zirve-modern .zm-hero--bosch h1 { max-width: 780px; }
.zirve-modern .zm-trust { border-bottom: 1px solid var(--zirve-line); display: grid; grid-template-columns: repeat(4, 1fr); }
.zirve-modern .zm-trust-item { border-right: 1px solid var(--zirve-line); padding: 25px 22px; }
.zirve-modern .zm-trust-item:last-child { border-right: 0; }
.zirve-modern .zm-trust-item strong { display: block; font-family: 'Space Grotesk', sans-serif; font-size: 1rem; margin-bottom: 5px; }
.zirve-modern .zm-trust-item span { color: var(--zirve-muted); display: block; font-size: .84rem; }
.zirve-modern .zm-feature { align-items: center; display: grid; gap: 65px; grid-template-columns: 1fr 1fr; }
.zirve-modern .zm-feature--reverse .zm-feature-image { order: 2; }
.zirve-modern .zm-feature-image { aspect-ratio: 4 / 3; border-radius: var(--zirve-radius); object-fit: cover; width: 100%; }
.zirve-modern .zm-feature-image--bosch-main { aspect-ratio: 16 / 9; object-position: center center; }
.zirve-modern .zm-feature-image--ground { aspect-ratio: 4 / 3; object-fit: contain; object-position: center; background: #f7f7f7; }
.zirve-modern .zm-feature-image--thermo { aspect-ratio: 4 / 3; object-fit: contain; object-position: center; background: #f7f7f7; }
.zirve-modern .zm-feature h2 { margin: 12px 0 18px; }
.zirve-modern .zm-feature p + p { margin-top: 14px; }
.zirve-modern .zm-gallery--bosch { grid-template-columns: 1.45fr .8fr .8fr; grid-template-rows: 210px 210px; }
.zirve-modern .zm-gallery--bosch img:first-child { grid-row: span 2; }
.zirve-modern .zm-gallery--bosch a { display: block; min-width: 0; }
.zirve-modern .zm-showroom { display: grid; gap: 18px; grid-template-columns: 1fr 1fr; }
.zirve-modern .zm-showroom figure { margin: 0; }
.zirve-modern .zm-showroom img { aspect-ratio: 4 / 3; border-radius: var(--zirve-radius); object-fit: cover; object-position: center; width: 100%; }
.zirve-modern .zm-showroom .zm-image--store { object-position: center center; }
.zirve-modern .zm-showroom .zm-image--showroom { object-position: center center; }
.zirve-modern .zm-showroom figcaption { font-family: 'Space Grotesk', sans-serif; font-size: 1.1rem; font-weight: 700; margin-top: 12px; }
.zirve-modern .zm-brand--text { align-items: flex-start; flex-direction: column; justify-content: center; }
.zirve-modern .zm-brand--text .zm-brand-mark { color: var(--zirve-red); font-family: 'Space Grotesk', sans-serif; font-size: 1.65rem; font-weight: 700; }
.zirve-modern .zm-brand--hisense .zm-brand-mark { color: #1671b8; }
.zirve-modern .zm-page-intro { max-width: 700px; }
.zirve-modern .zm-page-intro h2 { margin: 12px 0 18px; }
.zirve-modern .zm-legal-note { color: rgba(255,255,255,.52); font-size: .74rem; margin-top: 12px; }

@media (max-width: 900px) {
    .zirve-modern .zm-links { background: #fff; border-bottom: 1px solid var(--zirve-line); display: none; left: 0; padding: 18px 20px 24px; position: absolute; top: 100%; width: 100%; }
    .zirve-modern .zm-links.is-open { display: grid; gap: 16px; }
    .zirve-modern .zm-menu-toggle { display: block; margin-left: auto; }
    .zirve-modern .zm-nav-cta { display: none; }
    .zirve-modern .zm-section { padding: 75px 0; }
    .zirve-modern .zm-grid, .zirve-modern .zm-process { grid-template-columns: repeat(2, 1fr); }
    .zirve-modern .zm-split { gap: 35px; grid-template-columns: 1fr; }
    .zirve-modern .zm-footer-grid { grid-template-columns: repeat(2, 1fr); }
    .zirve-modern .zm-trust { grid-template-columns: repeat(2, 1fr); }
    .zirve-modern .zm-trust-item:nth-child(2) { border-right: 0; }
    .zirve-modern .zm-trust-item:nth-child(-n+2) { border-bottom: 1px solid var(--zirve-line); }
    .zirve-modern .zm-feature { gap: 35px; grid-template-columns: 1fr; }
    .zirve-modern .zm-feature--reverse .zm-feature-image { order: 0; }
}

@media (max-width: 560px) {
    .zirve-modern .zm-container { width: min(100% - 28px, 1180px); }
    .zirve-modern .zm-topbar .zm-container { justify-content: center; text-align: center; }
    .zirve-modern .zm-topbar .zm-topbar-secondary { display: none; }
    .zirve-modern .zm-nav { min-height: 68px; }
    .zirve-modern .zm-logo { width: 145px; }
    .zirve-modern .zm-hero { min-height: 510px; }
    .zirve-modern h1 { font-size: clamp(2.5rem, 13vw, 3.6rem); }
    .zirve-modern .zm-hero p { font-size: 1rem; }
    .zirve-modern .zm-actions { align-items: stretch; flex-direction: column; }
    .zirve-modern .zm-button { width: 100%; }
    .zirve-modern .zm-hero .zm-button { min-height: 46px; }
    .zirve-modern .zm-hero .zm-actions { padding-bottom: 70px; }
    .zirve-modern .zm-hero .zm-actions .zm-button:nth-child(3) { display: none; }
    .zirve-modern .zm-section-head { align-items: start; flex-direction: column; gap: 15px; }
    .zirve-modern .zm-grid, .zirve-modern .zm-process, .zirve-modern .zm-brand-grid { grid-template-columns: 1fr; }
    .zirve-modern .zm-image { min-height: 290px; }
    .zirve-modern .zm-feature-image { aspect-ratio: auto; height: clamp(260px, 58vw, 360px); }
    .zirve-modern .zm-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: 145px 112px 112px; }
    .zirve-modern .zm-gallery img:first-child { grid-column: span 2; grid-row: auto; }
    .zirve-modern .zm-footer-grid { grid-template-columns: 1fr; }
    .zirve-modern .zm-float-wa { bottom: 14px; right: 14px; }
    .zirve-modern .zm-trust { grid-template-columns: 1fr; }
    .zirve-modern .zm-trust-item, .zirve-modern .zm-trust-item:nth-child(2) { border-bottom: 1px solid var(--zirve-line); border-right: 0; }
    .zirve-modern .zm-trust-item:last-child { border-bottom: 0; }
    .zirve-modern .zm-gallery--bosch { grid-template-columns: 1fr 1fr; grid-template-rows: 155px 110px 110px; }
    .zirve-modern .zm-gallery--bosch img:first-child { grid-column: span 2; grid-row: auto; }
    .zirve-modern .zm-showroom { grid-template-columns: 1fr; }
    .zirve-modern .zm-showroom img { aspect-ratio: 4 / 3; height: auto; }
}


/* Image presentation tuned for the actual source photography */
.zirve-modern .zm-gallery--real img { object-position: center; }
.zirve-modern .zm-gallery--real img.zm-gallery-bosch-main { object-position: center 68%; }
.zirve-modern .zm-gallery--real img.zm-gallery-hisense { object-position: center; }
.zirve-modern .zm-feature-image--hisense-real { aspect-ratio: 4 / 3; object-fit: cover; object-position: center; background: #f7f7f7; }

/* FINAL IMAGE SYSTEM — preserves complete subjects and prevents oversized/cut visuals */
.zirve-modern .zm-feature {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: clamp(34px, 5vw, 64px);
}
.zirve-modern .zm-feature-image {
    width: 100%;
    height: auto;
    max-height: 440px;
    aspect-ratio: auto;
    object-fit: contain;
    object-position: center;
    border-radius: var(--zirve-radius);
    background: #f5f6f7;
}
.zirve-modern .zm-feature-image--bosch-main {
    width: 100%;
    aspect-ratio: 1.93 / 1;
    max-height: 410px;
    object-fit: cover;
    object-position: center center;
}
.zirve-modern .zm-feature-image--ground,
.zirve-modern .zm-feature-image--thermo,
.zirve-modern .zm-feature-image--hisense-real {
    width: 100%;
    aspect-ratio: 4 / 3;
    max-height: 430px;
    object-fit: contain;
    object-position: center;
    background: #f5f6f7;
}

/* Real project galleries use calm, equal 4:3 cards instead of aggressive masonry cropping. */
.zirve-modern .zm-gallery,
.zirve-modern .zm-gallery--bosch,
.zirve-modern .zm-gallery--real {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: none;
    gap: 16px;
}
.zirve-modern .zm-gallery img,
.zirve-modern .zm-gallery--bosch img,
.zirve-modern .zm-gallery--real img,
.zirve-modern .zm-gallery img:first-child,
.zirve-modern .zm-gallery--bosch img:first-child {
    grid-column: auto;
    grid-row: auto;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: contain;
    object-position: center;
    background: #f3f4f5;
    border-radius: 14px;
}

/* Shop/showroom originals are already 4:3; never crop them. */
.zirve-modern .zm-showroom img,
.zirve-modern .zm-showroom .zm-image--store,
.zirve-modern .zm-showroom .zm-image--showroom {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: contain;
    object-position: center;
    background: #f3f4f5;
}

/* Dark regional section image should also remain complete. */
.zirve-modern .zm-regions .zm-feature-image {
    max-height: 430px;
    object-fit: contain;
    background: transparent;
}

@media (max-width: 900px) {
    .zirve-modern .zm-feature { grid-template-columns: 1fr; }
    .zirve-modern .zm-feature-image,
    .zirve-modern .zm-feature-image--bosch-main,
    .zirve-modern .zm-feature-image--ground,
    .zirve-modern .zm-feature-image--thermo,
    .zirve-modern .zm-feature-image--hisense-real { max-height: 420px; }
    .zirve-modern .zm-gallery,
    .zirve-modern .zm-gallery--bosch,
    .zirve-modern .zm-gallery--real { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
    .zirve-modern .zm-feature-image,
    .zirve-modern .zm-feature-image--bosch-main,
    .zirve-modern .zm-feature-image--ground,
    .zirve-modern .zm-feature-image--thermo,
    .zirve-modern .zm-feature-image--hisense-real {
        width: 100%;
        height: auto;
        max-height: 340px;
        object-fit: contain;
    }
    .zirve-modern .zm-gallery,
    .zirve-modern .zm-gallery--bosch,
    .zirve-modern .zm-gallery--real { grid-template-columns: 1fr; }
    .zirve-modern .zm-gallery img,
    .zirve-modern .zm-gallery--bosch img,
    .zirve-modern .zm-gallery--real img { aspect-ratio: 4 / 3; }
}
