:root {
    --yy-red: #e60910;
    --yy-red-dark: #c90006;
    --yy-black: #090909;
    --yy-dark: #141414;
    --yy-muted: #747c80;
    --yy-border: #e8e8e8;
    --yy-bg: #f0f0f4;
    --yy-container: 1260px;
    --yy-shadow: 0 14px 36px rgba(0,0,0,.12);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    color: var(--yy-dark);
    background: #fff;
    line-height: 1.65;
}
a { color: inherit; text-decoration: none; }
a:hover { color: var(--yy-red); }
img, video { max-width: 100%; height: auto; }
.yy-container { width: min(var(--yy-container), calc(100% - 48px)); margin-inline: auto; }
.yy-container-wide { width: min(100%, calc(100% - 34px)); margin-inline: auto; }
.yy-skip-link {
    position: absolute; left: -999px; top: 12px; background: #fff; color: #000; padding: 8px 12px; z-index: 10000;
}
.yy-skip-link:focus { left: 12px; }

/* Header */
.yy-header-mobile { display: none; }
.yy-site-header { position: relative; z-index: 100; background: #fff; }
.yy-topbar {
    background: #fff;
    border-bottom: 1px solid #eee;
    font-size: 14px;
    min-height: 58px;
    display: flex;
    align-items: center;
}
.yy-topbar-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.yy-top-menu ul { list-style: none; padding: 0; margin: 0; display: flex; align-items: center; gap: 0; }
.yy-top-menu li { display: flex; align-items: center; }
.yy-top-menu li + li::before { content: ""; width: 1px; height: 15px; background: #b7b7b7; margin: 0 19px; }
.yy-top-menu a { color: #222; font-size: 14px; font-weight: 500; }
.yy-top-menu a:hover { color: var(--yy-red); }
.yy-contact-strip { display: flex; align-items: stretch; gap: 0; white-space: nowrap; }
.yy-contact-strip a { color: #fff; padding: 11px 17px; font-weight: 800; display: inline-flex; align-items: center; min-height: 40px; }
.yy-contact-email { background: #000; }
.yy-contact-phone { background: #dd0000; }

.yy-mainbar { background: #fff; box-shadow: 0 1px 0 rgba(0,0,0,.06); }
.yy-mainbar-inner { display: flex; align-items: center; min-height: 96px; }
.yy-logo-link { display: inline-flex; align-items: center; flex: 0 0 auto; }
.yy-logo-link img { display: block; width: 160px; height: 90px; object-fit: contain; }
.yy-desktop-logo { margin-right: 32px; }
.yy-primary-nav { flex: 1 1 auto; min-width: 0; }
.yy-primary-menu { list-style: none; padding: 0; margin: 0; display: flex; align-items: stretch; }
.yy-primary-menu > li { position: relative; display: flex; }
.yy-primary-menu > li > a {
    min-height: 96px;
    display: grid;
    align-content: center;
    padding: 0 21px;
    color: #111;
    line-height: 1.16;
    transition: background .15s ease, color .15s ease;
}
.yy-primary-menu > li:first-child > a { color: var(--yy-red); }
.yy-primary-menu > li > a:hover { background: #f6f6f6; color: var(--yy-red); }
.yy-menu-arrow { font-size: 13px; line-height: 1; margin-bottom: 2px; color: #111; order: -1; }
.yy-menu-title { font-size: 17px; font-weight: 600; white-space: nowrap; }
.yy-menu-subtitle { font-size: 12.5px; font-weight: 500; color: #555; white-space: nowrap; margin-top: 3px; }
.yy-dropdown {
    display: none;
    position: absolute;
    left: 50%; top: 100%; transform: translateX(-50%);
    min-width: 280px;
    background: #fff;
    border: 1px solid #ececec;
    box-shadow: 0 12px 28px rgba(0,0,0,.14);
    padding: 15px 0;
    z-index: 1000;
}
.yy-primary-menu > li:hover > .yy-dropdown,
.yy-primary-menu > li:focus-within > .yy-dropdown { display: block; }
.yy-dropdown-grid { display: grid; grid-template-columns: 1fr; gap: 0; }
.yy-primary-menu > li.is-wide .yy-dropdown { width: 680px; }
.yy-primary-menu > li.is-wide .yy-dropdown-grid { grid-template-columns: repeat(2, 1fr); }
.yy-dropdown a { display: block; padding: 11px 22px; color: #222; font-size: 15px; }
.yy-dropdown a:hover { background: #f7f7f7; color: var(--yy-red); }
.yy-header-actions { display: flex; align-items: center; gap: 18px; margin-left: 14px; }
.yy-search-toggle,
.yy-side-toggle,
.yy-icon-button {
    appearance: none; border: 0; background: transparent; padding: 0; cursor: pointer; color: #111;
}
.yy-search-toggle { font-size: 35px; line-height: 1; width: 34px; height: 34px; font-weight: 200; transform: rotate(-12deg); }
.yy-side-toggle { width: 30px; height: 30px; display: grid; gap: 5px; align-content: center; }
.yy-side-toggle span,
.yy-mobile-menu-toggle span { display: block; height: 2px; background: #111; width: 25px; }

/* Modals / drawers */
.yy-modal,
.yy-side-panel,
.yy-mobile-drawer { position: fixed; inset: 0; z-index: 9999; display: none; }
.yy-modal.is-open,
.yy-side-panel.is-open,
.yy-mobile-drawer.is-open { display: block; }
.yy-modal-backdrop,
.yy-drawer-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.48); }
.yy-modal-card {
    position: relative; margin: 8vh auto 0; width: min(760px, calc(100% - 34px)); background: #fff; padding: 44px; box-shadow: var(--yy-shadow);
}
.yy-modal-close,
.yy-drawer-close { position: absolute; top: 12px; right: 16px; appearance: none; border: 0; background: transparent; font-size: 38px; line-height: 1; cursor: pointer; color: #111; }
.yy-search-form { display: flex; gap: 10px; }
.yy-search-form label { flex: 1; }
.yy-search-form input { width: 100%; min-height: 52px; border: 1px solid var(--yy-border); padding: 0 16px; font-size: 18px; }
.yy-search-form button { min-height: 52px; border: 0; padding: 0 25px; color: #fff; background: var(--yy-red); font-weight: 900; }
.yy-side-content,
.yy-drawer-panel {
    position: absolute; top: 0; right: 0; width: min(430px, 92vw); height: 100%; overflow-y: auto; background: #111; color: #fff; padding: 54px 32px 34px; box-shadow: -18px 0 45px rgba(0,0,0,.30);
}
.yy-side-content p { font-size: 16px; color: #f2f2f2; margin: 0 0 26px; }
.yy-side-content img { width: 100%; display: block; }
.yy-side-content .yy-drawer-close,
.yy-drawer-panel .yy-drawer-close { color: #fff; }
.yy-drawer-logo { display: inline-block; margin-bottom: 22px; }
.yy-mobile-nav { display: grid; gap: 0; }
.yy-mobile-nav a { color: #fff; padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.12); font-weight: 700; }
.yy-mobile-nav a.is-child { padding-left: 22px; color: #d3d3d3; font-weight: 500; font-size: 14px; }
.yy-drawer-contact { display: grid; gap: 10px; margin-top: 28px; }
.yy-drawer-contact a { padding: 12px 14px; background: #000; color: #fff; }
.yy-drawer-contact a + a { background: var(--yy-red); }

/* Hero */
.yy-video-hero { min-height: 550px; position: relative; overflow: hidden; color: #fff; background: #080808; margin-bottom: -100px; }
.yy-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.yy-mobile-video { display: none; }
.yy-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.74), rgba(0,0,0,.28), rgba(0,0,0,.18)); }
.yy-hero-inner { position: relative; z-index: 2; min-height: 550px; display: flex; align-items: center; }
.yy-hero-content { width: min(880px, 100%); padding-bottom: 68px; }
.yy-hero h1 {
    margin: 0 0 18px;
    font-size: clamp(48px, 5.3vw, 70px);
    line-height: 1.18;
    font-weight: 800;
    letter-spacing: -.035em;
    color: #fff;
    text-shadow: 6px 6px 0 rgba(0,0,0,.30);
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(255,255,255,.85);
}
.yy-hero p { margin: 0 0 24px; font-size: 20px; line-height: 1.4; font-weight: 700; max-width: 760px; color: #fff; }
.yy-hero-actions { display: flex; flex-wrap: wrap; gap: 0; margin-top: 18px; }
.yy-button { display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: 0 35px; color: #fff; font-weight: 900; text-transform: uppercase; font-size: 14px; letter-spacing: .02em; border: 0; }
.yy-button:hover { color: #fff; filter: brightness(.92); }
.yy-button-dark { background: #060606; }
.yy-button-red { background: var(--yy-red); }
.yy-full { width: 100%; }

/* Feature cards */
.yy-feature-cards { position: relative; z-index: 4; padding: 0 0 54px; background: var(--yy-bg); }
.yy-feature-card-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; transform: translateY(0); }
.yy-feature-card {
    display: flex; flex-direction: column; align-items: center; justify-content: flex-start; text-align: center;
    min-height: 194px; padding: 22px 17px 20px; background: #fff; color: #141414; box-shadow: 0 4px 18px rgba(0,0,0,.08); transition: .2s ease;
}
.yy-feature-card:hover { color: #141414; transform: translateY(-5px); box-shadow: var(--yy-shadow); }
.yy-feature-card img { width: 100px; height: 100px; object-fit: contain; margin-bottom: 12px; }
.yy-feature-card strong { font-size: 16px; line-height: 1.4; font-weight: 800; color: #141414; }
.yy-feature-card small { color: #828a88; line-height: 1.35; margin-top: 7px; font-size: 13px; }

.yy-section { padding: 82px 0; }
.yy-section-heading { margin-bottom: 36px; }
.yy-section-heading.centered { text-align: center; }
.yy-section-heading span { display: block; color: var(--yy-red); font-size: 18px; font-weight: 800; margin-bottom: 4px; }
.yy-section-heading h2 { margin: 0; font-size: clamp(34px, 4vw, 55px); line-height: 1.08; letter-spacing: -.035em; }
.yy-right-heading { text-align: right; }
.yy-big-right-title { margin: 0 0 18px; text-align: right; font-size: clamp(42px, 5vw, 62px); line-height: 1; font-weight: 800; color: #222; }
.yy-services-section { background: var(--yy-bg); padding-top: 18px; }
.yy-service-slider { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.yy-service-slide { display: grid; grid-template-columns: 1fr 1fr; background: #1a1a1a; color: #fff; min-height: 275px; }
.yy-service-slide:hover { color: #fff; }
.yy-service-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.yy-service-body { padding: 22px; display: flex; flex-direction: column; }
.yy-service-body h3 { color: var(--yy-red); font-size: 28px; line-height: 1.15; margin: 0 0 10px; font-weight: 800; }
.yy-service-body p { margin: 0; color: #ddd; font-size: 15px; line-height: 1.55; }
.yy-service-body span { margin-top: auto; display: block; width: 100%; background: var(--yy-red); text-align: center; color: #fff; padding: 10px; font-weight: 800; }

/* Alarm band */
.yy-alarm-band { position: relative; overflow: hidden; color: #fff; }
.yy-alarm-bg { position: absolute; inset: 0; background-size: cover; background-position: center; }
.yy-alarm-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1fr; gap: 42px; align-items: center; padding: 62px 0; }
.yy-alarm-video-wrap { min-height: 320px; overflow: hidden; box-shadow: 0 20px 50px rgba(0,0,0,.35); }
.yy-alarm-video-wrap video { width: 100%; height: 100%; min-height: 320px; object-fit: cover; display: block; }
.yy-alarm-text h2 { margin: 0 0 18px; font-size: clamp(30px, 3.2vw, 43px); line-height: 1.22; font-weight: 800; color: #fff; }
.yy-alarm-text hr { border-color: rgba(255,255,255,.35); }
.yy-alarm-text p { font-size: 19px; color: #fff; margin: 0 0 24px; }

.yy-cert-band { background: #151515; color: #fff; padding: 30px 0; }
.yy-cert-row { display: grid; grid-template-columns: repeat(6, 1fr); gap: 0; align-items: center; }
.yy-cert-logo { padding: 0 22px; min-height: 80px; display: grid; place-items: center; border-left: 1px solid rgba(255,255,255,.10); }
.yy-cert-logo:first-child { border-left: 0; }
.yy-cert-logo img { max-height: 72px; object-fit: contain; filter: brightness(0) invert(1) grayscale(1); opacity: .9; }

/* Products */
.yy-products-section { background: #fff; }
.yy-product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.yy-product-card { display: flex; flex-direction: column; min-height: 100%; color: #fff; background: #111; }
.yy-product-card:hover { color: #fff; transform: translateY(-3px); box-shadow: var(--yy-shadow); }
.yy-product-card.is-red { background: var(--yy-red); }
.yy-product-card.is-dark { background: #111; }
.yy-product-image img { display: block; width: 100%; aspect-ratio: 3/2; object-fit: cover; }
.yy-product-body { padding: 25px; display: flex; flex: 1; flex-direction: column; }
.yy-product-body h3 { margin: 0 0 12px; font-size: 29px; line-height: 1.16; color: #fff; padding-bottom: 12px; border-bottom: 5px solid #fff; }
.yy-product-body p { color: #fff; font-size: 17px; line-height: 1.5; margin: 0 0 22px; }
.yy-product-body span { margin-top: auto; background: #fff; color: #111; text-align: center; padding: 11px; font-weight: 900; text-transform: lowercase; }

/* Blog */
.yy-blog-section { background: var(--yy-bg); }
.yy-blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.yy-blog-card a { display: block; background: #fff; box-shadow: 0 5px 22px rgba(0,0,0,.08); min-height: 100%; }
.yy-blog-card img { width: 100%; aspect-ratio: 16/10; object-fit: cover; display: block; }
.yy-blog-card div { padding: 24px; }
.yy-blog-card h3 { margin: 0 0 12px; font-size: 23px; line-height: 1.24; }
.yy-blog-card p { margin: 0; color: var(--yy-muted); }

/* Standard content */
.yy-site-main { min-height: 50vh; }
.yy-page-hero { background: #101010; color: #fff; padding: 72px 0; }
.yy-page-hero h1 { margin: 0; font-size: clamp(38px, 5vw, 62px); line-height: 1.1; }
.yy-content-wrap { padding: 64px 0; }
.yy-content-grid { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 42px; align-items: start; }
.yy-content, .yy-post-content { font-size: 18px; }
.yy-content h2, .yy-post-content h2 { font-size: 34px; line-height: 1.2; margin-top: 42px; }
.yy-content img, .yy-post-content img { height: auto; }
.yy-post-meta { color: var(--yy-muted); margin: 8px 0 0; }
.yy-archive-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.yy-card { background: #fff; border: 1px solid var(--yy-border); }
.yy-card img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.yy-card-body { padding: 22px; }
.yy-card h2, .yy-card h3 { margin: 0 0 10px; font-size: 24px; line-height: 1.25; }
.yy-card p { color: var(--yy-muted); margin: 0; }
.yy-sidebar { background: #f7f7f7; padding: 24px; }
.yy-widget { margin-bottom: 24px; }
.yy-widget-title { margin: 0 0 12px; }
.yy-not-found { padding: 90px 0; text-align: center; }

/* Footer */
.yy-footer { background: #0c0c0c; color: #fff; padding-top: 58px; }
.yy-footer-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr 1fr; gap: 34px; }
.yy-footer h3 { margin: 0 0 16px; color: #fff; font-size: 20px; }
.yy-footer p, .yy-footer li, .yy-footer a { color: #cfcfcf; }
.yy-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.yy-footer a:hover { color: #fff; }
.yy-footer-logo img { width: 160px; height: auto; background: #fff; padding: 6px; margin-bottom: 16px; }
.yy-footer-bottom { border-top: 1px solid rgba(255,255,255,.1); margin-top: 42px; padding: 18px 0; color: #aaa; font-size: 14px; }
.yy-whatsapp-float { position: fixed; right: 30px; bottom: 30px; width: 68px; height: 68px; border-radius: 50%; background: #39d353; color: #fff; display: grid; place-items: center; font-size: 34px; z-index: 99; box-shadow: 0 12px 24px rgba(0,0,0,.25); border: 4px solid rgba(255,255,255,.45); }
.yy-whatsapp-float:hover { color: #fff; background: #20b840; }

@media (max-width: 1180px) {
    .yy-container { width: min(100% - 32px, var(--yy-container)); }
    .yy-primary-menu > li > a { padding: 0 12px; }
    .yy-menu-title { font-size: 15px; }
    .yy-menu-subtitle { font-size: 11px; }
    .yy-desktop-logo { margin-right: 18px; }
    .yy-service-slider { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 920px) {
    .yy-site-header { display: none; }
    .yy-header-mobile { display: block; background: #fff; position: relative; z-index: 100; }
    .yy-mobile-bar { min-height: 78px; display: flex; align-items: center; justify-content: space-between; }
    .yy-mobile-bar .yy-logo-link img { width: 150px; height: auto; }
    .yy-mobile-menu-toggle { width: 42px; display: grid; gap: 6px; }
    .yy-video-hero { min-height: 500px; margin-bottom: -70px; }
    .yy-desktop-video { display: none; }
    .yy-mobile-video { display: block; }
    .yy-hero-inner { min-height: 500px; align-items: center; }
    .yy-hero-content { padding: 42px 0 92px; }
    .yy-hero h1 { font-size: 38px; color: var(--yy-red); background: rgba(0,0,0,.70); display: inline-block; padding: 18px 20px; border: 0; text-shadow: none; }
    .yy-hero p { font-size: 16px; background: rgba(0,0,0,.70); padding: 0 20px 18px; max-width: 440px; }
    .yy-hero-actions { display: none; }
    .yy-feature-card-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .yy-feature-card { min-height: 170px; padding: 16px 10px; }
    .yy-feature-card img { width: 76px; height: 76px; }
    .yy-feature-card strong { font-size: 14px; }
    .yy-service-slider { grid-template-columns: 1fr; }
    .yy-alarm-inner { grid-template-columns: 1fr; }
    .yy-cert-row { grid-template-columns: repeat(3, 1fr); }
    .yy-product-grid, .yy-blog-grid, .yy-archive-grid, .yy-content-grid { grid-template-columns: 1fr; }
    .yy-footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
    .yy-container { width: calc(100% - 24px); }
    .yy-feature-card-grid { grid-template-columns: 1fr 1fr; }
    .yy-service-slide { grid-template-columns: 1fr; }
    .yy-service-image img { aspect-ratio: 16/10; }
    .yy-big-right-title, .yy-right-heading { text-align: left; }
    .yy-alarm-video-wrap { min-height: 220px; }
    .yy-alarm-video-wrap video { min-height: 220px; }
    .yy-cert-row { grid-template-columns: repeat(2, 1fr); }
    .yy-product-body h3 { font-size: 24px; }
    .yy-footer-grid { grid-template-columns: 1fr; }
    .yy-whatsapp-float { right: 18px; bottom: 18px; width: 58px; height: 58px; font-size: 28px; }
}
.yy-lock-scroll { overflow: hidden; }
.yy-site-footer { background: #0c0c0c; color: #fff; padding-top: 58px; }
.yy-site-footer h2, .yy-site-footer h3 { color: #fff; }
.yy-site-footer p, .yy-site-footer li, .yy-site-footer a { color: #cfcfcf; }
.yy-footer-bottom-inner { display: flex; justify-content: space-between; gap: 18px; flex-wrap: wrap; }

/* v1.2.0 Sticky header, improved mega menu, Font Awesome icons and mobile bottom nav */
.yy-site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    transition: box-shadow .2s ease, transform .2s ease;
}
.admin-bar .yy-site-header { top: 32px; }
.yy-header-mobile {
    position: sticky;
    top: 0;
    z-index: 1001;
    transition: box-shadow .2s ease;
}
.admin-bar .yy-header-mobile { top: 32px; }
.yy-scrolled .yy-site-header,
.yy-scrolled .yy-header-mobile { box-shadow: 0 8px 28px rgba(0,0,0,.12); }
.yy-scrolled .yy-mainbar-inner { min-height: 82px; }
.yy-scrolled .yy-primary-menu > li > a { min-height: 82px; }
.yy-scrolled .yy-logo-link img { height: 78px; }
.yy-contact-icon { display: inline-flex; align-items: center; justify-content: center; margin-right: 6px; min-width: 16px; }
.yy-contact-icon i { font-size: 14px; line-height: 1; }

.yy-primary-menu > li > a.yy-menu-link {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 96px;
    padding: 0 19px;
}
.yy-menu-copy { display: grid; gap: 3px; min-width: 0; }
.yy-menu-arrow {
    order: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    margin: 0;
    color: #111;
    font-size: 10px;
    line-height: 1;
    transform: translateY(1px);
}
.yy-primary-menu > li:hover .yy-menu-arrow,
.yy-primary-menu > li:focus-within .yy-menu-arrow,
.yy-primary-menu > li:first-child > a .yy-menu-arrow { color: var(--yy-red); }
.yy-primary-menu > li.has-dropdown > a:hover .yy-menu-arrow { color: var(--yy-red); }
.yy-dropdown {
    border-top: 3px solid var(--yy-red);
    border-radius: 0 0 8px 8px;
    padding: 12px;
    box-shadow: 0 18px 42px rgba(0,0,0,.16);
}
.yy-dropdown-grid { gap: 6px; }
.yy-dropdown a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-radius: 6px;
    padding: 12px 14px;
    line-height: 1.3;
    font-weight: 600;
}
.yy-dropdown a i { font-size: 12px; color: var(--yy-red); opacity: .7; }
.yy-dropdown a:hover i { opacity: 1; transform: translateX(2px); }
.yy-primary-menu > li.is-wide .yy-dropdown { width: min(720px, 90vw); }
.yy-search-toggle { display: inline-flex; align-items: center; justify-content: center; transform: none; font-size: 21px; }
.yy-search-toggle i { line-height: 1; }

.yy-whatsapp-float { text-decoration: none; }
.yy-whatsapp-float i { font-size: 35px; line-height: 1; }
.yy-mobile-bottom-nav { display: none; }

@media (max-width: 920px) {
    :root { --yy-mobile-bottom-height: 78px; }
    body { padding-bottom: var(--yy-mobile-bottom-height); }
    .admin-bar .yy-header-mobile { top: 46px; }
    .yy-header-mobile { display: block; background: #fff; position: sticky; top: 0; z-index: 1001; }
    .yy-mobile-bottom-nav {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1002;
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        min-height: var(--yy-mobile-bottom-height);
        background: #fff;
        border-top: 1px solid rgba(0,0,0,.08);
        box-shadow: 0 -10px 28px rgba(0,0,0,.14);
    }
    .yy-mobile-bottom-nav a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        min-width: 0;
        padding: 8px 4px 9px;
        color: #111;
        font-size: 11px;
        font-weight: 800;
        line-height: 1.1;
        text-align: center;
    }
    .yy-mobile-bottom-nav a:hover,
    .yy-mobile-bottom-nav a:focus { color: var(--yy-red); }
    .yy-mobile-bottom-nav .yy-bottom-icon {
        display: inline-flex;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        align-items: center;
        justify-content: center;
        background: #f4f4f4;
        color: var(--yy-red);
        font-size: 17px;
    }
    .yy-mobile-bottom-nav a:nth-child(3) .yy-bottom-icon {
        background: var(--yy-red);
        color: #fff;
        box-shadow: 0 6px 16px rgba(230,9,16,.30);
    }
    .yy-bottom-label { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
    .yy-whatsapp-float { right: 16px; bottom: calc(var(--yy-mobile-bottom-height) + 18px); }
}

@media (max-width: 782px) {
    .admin-bar .yy-site-header,
    .admin-bar .yy-header-mobile { top: 46px; }
}

@media (max-width: 380px) {
    .yy-mobile-bottom-nav a { font-size: 10px; }
    .yy-mobile-bottom-nav .yy-bottom-icon { width: 28px; height: 28px; font-size: 16px; }
}

/* v1.3.0 Premium footer: Joomla footer structure + stronger responsive layout */
.yy-premium-footer {
    position: relative;
    overflow: hidden;
    background: #080708;
    color: #fff;
    padding-top: 0;
}
.yy-footer-bg {
    position: absolute;
    inset: 0;
    background-image: url('/images/bg-khow-us.png');
    background-size: cover;
    background-position: center;
    opacity: .55;
    pointer-events: none;
}
.yy-footer-overlay {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 15% 20%, rgba(230, 9, 16, .16), transparent 34%),
        radial-gradient(circle at 88% 12%, rgba(230, 9, 16, .12), transparent 30%),
        linear-gradient(180deg, rgba(8,7,8,.94), rgba(8,7,8,.98));
    pointer-events: none;
}
.yy-premium-footer > .yy-container,
.yy-premium-footer > .yy-footer-bottom { position: relative; z-index: 2; }

.yy-footer-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px 0 30px;
    border-bottom: 1px solid rgba(255,255,255,.12);
}
.yy-footer-brandline {
    display: flex;
    align-items: center;
    gap: 22px;
    min-width: 0;
}
.yy-footer-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 150px;
    height: 86px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 18px 42px rgba(0,0,0,.28);
}
.yy-footer-logo img {
    width: 132px;
    height: auto;
    display: block;
    padding: 0;
    margin: 0;
    background: transparent;
}
.yy-footer-brandline strong {
    display: block;
    color: #fff;
    font-size: clamp(22px, 2.4vw, 34px);
    line-height: 1.1;
    font-weight: 900;
    letter-spacing: -.03em;
}
.yy-footer-brandline strong span { color: var(--yy-red); }
.yy-footer-brandline p {
    margin: 10px 0 0;
    max-width: 690px;
    color: rgba(255,255,255,.74);
    font-size: 16px;
    line-height: 1.6;
}
.yy-footer-cta-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 12px;
    flex: 0 0 auto;
}
.yy-footer-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 18px;
    border-radius: 4px;
    color: #fff !important;
    font-weight: 900;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: .02em;
    box-shadow: 0 16px 32px rgba(0,0,0,.22);
}
.yy-footer-cta-btn.is-red { background: var(--yy-red); }
.yy-footer-cta-btn.is-dark { background: #111; border: 1px solid rgba(255,255,255,.12); }
.yy-footer-cta-btn:hover { transform: translateY(-2px); filter: brightness(1.08); }

.yy-footer-mega-grid {
    display: grid;
    grid-template-columns: 1.12fr 1.12fr 1.05fr 1.05fr 1.28fr;
    gap: 0;
    padding: 48px 0 42px;
}
.yy-footer-column {
    min-width: 0;
    padding: 0 22px;
    border-left: 1px solid rgba(255,255,255,.12);
}
.yy-footer-column:first-child { border-left: 0; padding-left: 0; }
.yy-footer-interest { padding-right: 0; }
.yy-footer-stack { display: grid; gap: 34px; align-content: start; }
.yy-footer-column h2 {
    margin: 0 0 16px;
    padding: 0 0 12px;
    color: var(--yy-red);
    font-size: 24px;
    line-height: 1.18;
    font-weight: 900;
    border-bottom: 1px solid rgba(255,255,255,.13);
}
.yy-footer-link-list,
.yy-footer-related,
.yy-footer-social {
    list-style: none;
    padding: 0;
    margin: 0;
}
.yy-footer-link-list li,
.yy-footer-related li { border-bottom: 1px solid rgba(255,255,255,.10); }
.yy-footer-link-list a {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 11px 0;
    color: rgba(255,255,255,.86) !important;
    font-size: 15px;
    line-height: 1.34;
    font-weight: 600;
}
.yy-footer-link-list a:hover,
.yy-footer-related a:hover,
.yy-footer-social a:hover { color: #fff !important; }
.yy-footer-link-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 15px;
    margin-top: 2px;
    color: rgba(255,255,255,.92);
    font-size: 12px;
    transition: color .18s ease, transform .18s ease;
}
.yy-footer-link-list a:hover .yy-footer-link-icon { color: var(--yy-red); transform: translateX(3px); }
.yy-footer-related a {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 13px 0;
    color: rgba(255,255,255,.9) !important;
    font-weight: 700;
    line-height: 1.35;
}
.yy-related-thumb {
    width: 70px;
    height: 50px;
    overflow: hidden;
    border-radius: 3px;
    background: rgba(255,255,255,.08);
}
.yy-related-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .25s ease;
}
.yy-footer-related a:hover img { transform: scale(1.08); }
.yy-related-title { font-size: 15px; }

.yy-footer-info-grid {
    display: grid;
    grid-template-columns: 1.5fr .8fr .9fr 1.15fr;
    gap: 0;
    border-top: 1px solid rgba(255,255,255,.14);
    padding: 28px 0 18px;
}
.yy-footer-info-card {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    min-width: 0;
    padding: 0 20px;
    border-left: 1px solid rgba(255,255,255,.12);
}
.yy-footer-info-card:first-child { border-left: 0; padding-left: 0; }
.yy-info-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    border-radius: 50%;
    background: rgba(230,9,16,.16);
    color: var(--yy-red);
    font-size: 16px;
}
.yy-footer-info-card strong {
    display: block;
    color: #fff;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .04em;
    margin: 0 0 5px;
}
.yy-footer-info-card a,
.yy-footer-info-card span {
    color: rgba(255,255,255,.80) !important;
    font-size: 15px;
    line-height: 1.45;
}
.yy-footer-info-card a:hover { color: #fff !important; }
.yy-footer-social {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 15px;
    margin-top: 8px;
}
.yy-footer-social a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: rgba(255,255,255,.86) !important;
    font-size: 14px;
    font-weight: 700;
}
.yy-social-icon {
    display: inline-flex;
    width: 20px;
    align-items: center;
    justify-content: center;
    color: #fff;
}
.yy-footer-bottom {
    position: relative;
    z-index: 2;
    border-top: 1px solid rgba(255,255,255,.12);
    margin: 0;
    padding: 16px 0;
    background: rgba(0,0,0,.22);
}
.yy-footer-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: rgba(255,255,255,.66);
    font-size: 14px;
}

@media (max-width: 1180px) {
    .yy-footer-cta { align-items: flex-start; }
    .yy-footer-mega-grid { grid-template-columns: repeat(3, 1fr); row-gap: 36px; }
    .yy-footer-column:nth-child(4) { border-left: 0; padding-left: 0; }
    .yy-footer-interest { padding-right: 22px; }
    .yy-footer-info-grid { grid-template-columns: 1fr 1fr; gap: 22px 0; }
    .yy-footer-info-card:nth-child(3) { border-left: 0; padding-left: 0; }
}

@media (max-width: 920px) {
    .yy-footer-cta { flex-direction: column; padding-top: 28px; }
    .yy-footer-cta-actions { width: 100%; justify-content: flex-start; }
    .yy-footer-mega-grid { grid-template-columns: 1fr 1fr; padding: 36px 0; }
    .yy-footer-column { padding: 0 18px; }
    .yy-footer-column:nth-child(odd) { border-left: 0; padding-left: 0; }
    .yy-footer-column:nth-child(even) { padding-right: 0; }
    .yy-footer-info-grid { grid-template-columns: 1fr; padding-bottom: 24px; }
    .yy-footer-info-card,
    .yy-footer-info-card:nth-child(3) {
        border-left: 0;
        padding: 16px 0;
        border-bottom: 1px solid rgba(255,255,255,.10);
    }
    .yy-footer-info-card:last-child { border-bottom: 0; }
}

@media (max-width: 640px) {
    .yy-footer-brandline {
        align-items: flex-start;
        gap: 16px;
    }
    .yy-footer-logo { width: 108px; height: 64px; border-radius: 6px; }
    .yy-footer-logo img { width: 96px; }
    .yy-footer-brandline strong { font-size: 24px; }
    .yy-footer-brandline p { font-size: 14px; }
    .yy-footer-cta-actions { display: grid; grid-template-columns: 1fr; }
    .yy-footer-cta-btn { width: 100%; }
    .yy-footer-mega-grid { grid-template-columns: 1fr; gap: 0; padding: 28px 0; }
    .yy-footer-column,
    .yy-footer-column:nth-child(even),
    .yy-footer-column:nth-child(odd),
    .yy-footer-column:nth-child(4) {
        border-left: 0;
        padding: 22px 0;
        border-bottom: 1px solid rgba(255,255,255,.12);
    }
    .yy-footer-column:first-child { padding-top: 0; }
    .yy-footer-column:last-child { border-bottom: 0; padding-bottom: 0; }
    .yy-footer-column h2 { font-size: 22px; }
    .yy-footer-link-list a { font-size: 15px; padding: 10px 0; }
    .yy-footer-social { grid-template-columns: 1fr 1fr; }
    .yy-footer-bottom-inner { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 390px) {
    .yy-footer-brandline { flex-direction: column; }
    .yy-footer-social { grid-template-columns: 1fr; }
}


/* v1.3.1 Footer social icons and dual phone numbers */
.yy-footer-phone-list {
    display: grid;
    gap: 7px;
}
.yy-footer-phone-list a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    font-weight: 700;
}
.yy-footer-phone-list a i {
    width: 16px;
    color: var(--yy-red);
    font-size: 13px;
    text-align: center;
}
.yy-footer-phone-list a span {
    color: inherit !important;
    font-size: inherit;
}
.yy-footer-social {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.yy-footer-social li { min-width: 0; }
.yy-footer-social a {
    min-height: 36px;
    padding: 4px 7px 4px 4px;
    border-radius: 8px;
    transition: background-color .2s ease, transform .2s ease, color .2s ease;
}
.yy-footer-social a:hover {
    background: rgba(255,255,255,.08);
    transform: translateY(-1px);
}
.yy-social-icon {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    border-radius: 50%;
    background: rgba(255,255,255,.09);
    font-size: 15px;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.yy-footer-social a:hover .yy-social-icon {
    background: var(--yy-red);
    color: #fff;
    transform: scale(1.06);
}
@media (max-width: 420px) {
    .yy-footer-social { grid-template-columns: 1fr 1fr; gap: 7px; }
    .yy-footer-social a { font-size: 13px; }
}


/* v1.3.2 Footer phone no-wrap and complete social links */
.yy-footer-info-grid {
    grid-template-columns: minmax(280px, 1.35fr) minmax(235px, 1.05fr) minmax(230px, .95fr) minmax(300px, 1.35fr);
}
.yy-footer-info-card > div {
    min-width: 0;
}
.yy-footer-phone-list {
    min-width: max-content;
}
.yy-footer-phone-list a {
    display: flex;
    flex-wrap: nowrap;
    width: max-content;
    max-width: none;
    white-space: nowrap;
    line-height: 1.4;
}
.yy-footer-phone-list a span {
    display: inline-block;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}
.yy-footer-social-wrap > div {
    width: 100%;
}
.yy-footer-social {
    width: 100%;
    grid-template-columns: repeat(2, minmax(120px, 1fr));
    align-items: stretch;
}
.yy-footer-social li,
.yy-footer-social a {
    width: 100%;
}
.yy-footer-social a {
    white-space: nowrap;
}

@media (max-width: 1180px) {
    .yy-footer-info-grid {
        grid-template-columns: minmax(280px, 1.25fr) minmax(235px, 1fr);
    }
}

@media (max-width: 920px) {
    .yy-footer-info-grid {
        grid-template-columns: 1fr;
    }
    .yy-footer-phone-list {
        min-width: 0;
    }
}

@media (max-width: 480px) {
    .yy-footer-phone-list a {
        font-size: 14px;
    }
    .yy-footer-social {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .yy-footer-social a {
        white-space: normal;
    }
}


/* v1.3.3 Compact icon-only social links and normalized dual phones */
.yy-footer-social-wrap > div {
    width: auto;
    max-width: 100%;
}
.yy-footer-social {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    width: auto;
    max-width: 330px;
    margin: 9px 0 0;
    padding: 0;
}
.yy-footer-social li,
.yy-footer-social a {
    width: auto;
    min-width: 0;
}
.yy-footer-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    padding: 0;
    border-radius: 50%;
    white-space: nowrap;
}
.yy-footer-social .yy-social-icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    border-radius: 50%;
    background: rgba(255,255,255,.10);
    color: #fff;
    font-size: 16px;
}
.yy-footer-social a:hover {
    background: transparent;
    transform: translateY(-2px);
}
.yy-footer-social a:hover .yy-social-icon {
    background: var(--yy-red);
    color: #fff;
    transform: scale(1.06);
}
.yy-footer-phone-list a,
.yy-footer-phone-list a span {
    white-space: nowrap;
}

@media (max-width: 480px) {
    .yy-footer-social {
        max-width: 100%;
        gap: 8px;
    }
    .yy-footer-social .yy-social-icon {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
        font-size: 15px;
    }
}

/* v1.3.4 — Tekil blog yazısı: sade, hızlı ve güçlü kırmızı başlık alanı */
.single-post .yy-page-hero.yy-single-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: linear-gradient(135deg, #e60910 0%, #c90006 100%);
    color: #fff;
    padding: clamp(48px, 6vw, 82px) 0;
}
.single-post .yy-page-hero.yy-single-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        radial-gradient(circle at 88% 20%, rgba(255,255,255,.14), transparent 32%),
        linear-gradient(110deg, rgba(0,0,0,.10), transparent 56%);
}
.single-post .yy-page-hero.yy-single-hero h1 {
    max-width: 1080px;
    margin: 0;
    color: #fff;
    font-size: clamp(38px, 5.1vw, 68px);
    line-height: 1.06;
    letter-spacing: -.035em;
    font-weight: 850;
    text-wrap: balance;
}
.single-post .yy-content-wrap {
    padding-top: clamp(36px, 5vw, 64px);
}
.single-post .yy-entry-thumb {
    margin: 0 0 34px;
    overflow: hidden;
    background: #f3f3f3;
}
.single-post .yy-entry-thumb img {
    display: block;
    width: 100%;
    height: auto;
}
.single-post .yy-entry-content {
    font-size: 18px;
}
.single-post .yy-entry-content > :first-child {
    margin-top: 0;
}

@media (max-width: 920px) {
    .single-post .yy-page-hero.yy-single-hero {
        padding: 42px 0 46px;
    }
    .single-post .yy-page-hero.yy-single-hero h1 {
        font-size: clamp(34px, 9.2vw, 50px);
        line-height: 1.08;
    }
    .single-post .yy-content-wrap {
        padding-top: 28px;
    }
}

@media (max-width: 560px) {
    .single-post .yy-page-hero.yy-single-hero {
        padding: 34px 0 38px;
    }
    .single-post .yy-page-hero.yy-single-hero h1 {
        font-size: clamp(31px, 9vw, 43px);
    }
    .single-post .yy-entry-content {
        font-size: 16px;
        line-height: 1.72;
    }
    .single-post .yy-entry-thumb {
        margin-bottom: 24px;
    }
}

/* v1.3.5 Widgetized content sidebar */
.yy-layout-with-sidebar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 285px;
    gap: 0;
    align-items: start;
}
.yy-main-column {
    min-width: 0;
    padding-right: 34px;
}
.yy-sidebar {
    min-width: 0;
    padding: 0 0 0 28px;
    background: transparent;
    border-left: 1px solid #dedede;
}
.yy-sidebar-inner { min-width: 0; }
.yy-widget {
    margin: 0 0 18px;
    padding: 0;
    background: transparent;
}
.yy-widget:last-child { margin-bottom: 0; }
.yy-widget-title {
    margin: 0 0 12px;
    padding: 0 0 10px;
    color: #252525;
    font-size: 23px;
    line-height: 1.2;
    font-weight: 700;
    border-bottom: 1px solid #e2e2e2;
}
.yy-info-box {
    padding: 18px 14px 14px;
    color: #fff;
    background: var(--yy-red);
}
.yy-info-box h3 {
    margin: 0 0 12px;
    padding-bottom: 10px;
    color: #fff;
    font-size: 25px;
    line-height: 1.15;
    border-bottom: 1px solid rgba(255,255,255,.25);
}
.yy-info-box-text,
.yy-info-box-text p {
    margin: 0 0 14px;
    color: #fff;
    font-size: 17px;
    line-height: 1.55;
}
.yy-info-box > a {
    display: inline-flex;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
}
.yy-info-box > a:hover { color: #fff; text-decoration: underline; }
.yy-cta-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    width: 100%;
    min-height: 48px;
    padding: 8px 14px;
    color: #fff !important;
    font-size: 26px;
    line-height: 1;
    font-weight: 900;
    text-align: center;
    transition: transform .18s ease, filter .18s ease;
}
.yy-cta-button i { flex: 0 0 auto; font-size: 34px; }
.yy-cta-button span { display: block; }
.yy-cta-button.is-green { background: #00b51a; color: #050505 !important; }
.yy-cta-button.is-red { background: #ef3a31; }
.yy-cta-button.is-dark { background: #111; }
.yy-cta-button:hover { transform: translateY(-2px); filter: brightness(.96); }
.yy-related-post-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.yy-related-post-list li { border-bottom: 1px solid #e4e4e4; }
.yy-related-post-list li:last-child { border-bottom: 0; }
.yy-related-post-list a {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 12px 0;
    color: var(--yy-red);
}
.yy-related-post-list a:hover { color: #111; }
.yy-related-post-thumb {
    display: block;
    width: 78px;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    background: #f1f1f1;
}
.yy-related-post-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.yy-related-post-thumb.is-placeholder {
    display: grid;
    place-items: center;
    color: var(--yy-red);
    font-size: 23px;
}
.yy-related-post-title {
    display: block;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
}
.yy-sidebar .wp-block-group,
.yy-sidebar .widget_block { margin-bottom: 18px; }
.yy-sidebar .wp-block-heading {
    margin: 0 0 12px;
    padding-bottom: 10px;
    font-size: 23px;
    border-bottom: 1px solid #e2e2e2;
}

@media (max-width: 1020px) {
    .yy-layout-with-sidebar { grid-template-columns: minmax(0, 1fr) 260px; }
    .yy-main-column { padding-right: 26px; }
    .yy-sidebar { padding-left: 22px; }
}

@media (max-width: 920px) {
    .yy-layout-with-sidebar { grid-template-columns: 1fr; }
    .yy-main-column { padding-right: 0; }
    .yy-sidebar {
        margin-top: 42px;
        padding: 34px 0 0;
        border-left: 0;
        border-top: 1px solid #dedede;
    }
    .yy-cta-button { font-size: 23px; }
    .yy-related-post-list a { grid-template-columns: 96px minmax(0, 1fr); }
    .yy-related-post-thumb { width: 96px; }
}

/* v1.3.6 — Blog ve Hizmetlerimiz otomatik kategori kartları */
.yy-listing-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(58px, 7vw, 92px) 0 34px;
    background: #fff;
    text-align: center;
}
.yy-listing-hero::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    top: -300px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    background: rgba(230,9,16,.06);
    pointer-events: none;
}
.yy-listing-kicker {
    position: relative;
    margin: 0 0 10px;
    color: var(--yy-red);
    font-size: clamp(15px, 1.4vw, 19px);
    line-height: 1.35;
    font-weight: 700;
}
.yy-listing-hero h1 {
    position: relative;
    max-width: 1050px;
    margin: 0 auto;
    color: #303b38;
    font-size: clamp(40px, 5vw, 62px);
    line-height: 1.08;
    letter-spacing: -.035em;
    font-weight: 900;
    text-wrap: balance;
}
.yy-listing-intro {
    position: relative;
    max-width: 850px;
    margin: 20px auto 0;
    color: #606866;
    font-size: 17px;
    line-height: 1.75;
}
.yy-listing-intro > :first-child { margin-top: 0; }
.yy-listing-intro > :last-child { margin-bottom: 0; }
.yy-listing-section {
    padding: 0 0 clamp(64px, 8vw, 104px);
    background: #fff;
}
.yy-listing-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px 14px;
    align-items: stretch;
}
.yy-listing-card {
    min-width: 0;
    margin: 0;
    background: var(--yy-red);
    box-shadow: 0 12px 30px rgba(0,0,0,.10);
    transition: transform .22s ease, box-shadow .22s ease;
}
.yy-listing-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 42px rgba(0,0,0,.16);
}
.yy-listing-card-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    color: #fff !important;
}
.yy-listing-card-media {
    display: block;
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 2.7;
    background: #ececec;
}
.yy-listing-card-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}
.yy-listing-card:hover .yy-listing-card-media img { transform: scale(1.045); }
.yy-listing-card-placeholder {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
    color: rgba(230,9,16,.65);
    background: linear-gradient(145deg, #f4f4f4, #ddd);
    font-size: 70px;
}
.yy-listing-card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 18px 18px 16px;
}
.yy-listing-card h2 {
    margin: 0;
    padding: 0 0 12px;
    color: #fff;
    font-size: clamp(21px, 2vw, 26px);
    line-height: 1.28;
    font-weight: 850;
    border-bottom: 1px solid rgba(255,255,255,.20);
    text-wrap: balance;
}
.yy-listing-card-excerpt {
    display: block;
    margin: 14px 0 18px;
    color: #fff;
    font-size: 15px;
    line-height: 1.48;
    font-weight: 600;
}
.yy-listing-card-button {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 43px;
    margin-top: auto;
    padding: 10px 15px;
    color: #fff;
    background: #050505;
    font-size: 12px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .025em;
    text-align: center;
}
.yy-listing-card:hover .yy-listing-card-button { background: #222; }
.yy-listing-pagination {
    margin-top: 42px;
}
.yy-listing-pagination .nav-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}
.yy-listing-pagination .page-numbers {
    display: grid;
    min-width: 42px;
    height: 42px;
    padding: 0 12px;
    place-items: center;
    color: #151515;
    background: #f0f0f0;
    font-weight: 800;
}
.yy-listing-pagination .page-numbers.current,
.yy-listing-pagination a.page-numbers:hover {
    color: #fff;
    background: var(--yy-red);
}
.yy-listing-empty {
    display: grid;
    max-width: 760px;
    min-height: 220px;
    margin: 0 auto;
    padding: 36px;
    place-items: center;
    gap: 14px;
    color: #666;
    background: #f6f6f6;
    text-align: center;
}
.yy-listing-empty i { color: var(--yy-red); font-size: 42px; }
.yy-listing-empty p { margin: 0; line-height: 1.65; }

@media (max-width: 980px) {
    .yy-listing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
    .yy-listing-hero { padding: 42px 0 26px; }
    .yy-listing-hero h1 { font-size: clamp(35px, 10vw, 48px); }
    .yy-listing-intro { font-size: 15px; line-height: 1.65; }
    .yy-listing-grid { grid-template-columns: 1fr; gap: 18px; }
    .yy-listing-card-body { padding: 17px 16px 15px; }
    .yy-listing-card h2 { font-size: 22px; }
    .yy-listing-section { padding-bottom: 86px; }
}


/* v1.3.8 — seçilen /blog ve /hizmetlerimiz sayfaları ile kategori başlık düzeltmeleri */
.yy-listing-hero {
    padding-top: clamp(54px, 6vw, 78px);
    padding-bottom: clamp(30px, 4vw, 46px);
}
.yy-listing-hero + .yy-listing-section {
    padding-top: 0;
}
.yy-listing-hero h1 {
    margin-bottom: 0;
}

/* v1.3.9 — Her sayfa için esnek kategori kartları */
.yy-category-page-intro {
    max-width: 1020px;
}
.yy-category-page-intro > .alignwide {
    margin-right: auto;
    margin-left: auto;
}
.yy-category-page-intro img,
.yy-category-page-intro video,
.yy-category-page-intro iframe {
    max-width: 100%;
    height: auto;
}
.yy-category-card-rows {
    display: grid;
    gap: 26px;
}
.yy-category-card-row {
    display: grid;
    gap: 14px;
    width: 100%;
    margin: 0 auto;
    align-items: stretch;
}
.yy-category-card-row--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.yy-category-card-row--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 1030px;
}
.yy-category-card-row--1 {
    grid-template-columns: minmax(0, 510px);
    justify-content: center;
}
.yy-category-card-row .yy-listing-card {
    height: 100%;
}

@media (max-width: 980px) {
    .yy-category-card-row--3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .yy-category-card-row--3 .yy-listing-card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
        width: min(100%, 510px);
        justify-self: center;
    }
}

@media (max-width: 640px) {
    .yy-category-card-rows,
    .yy-category-card-row {
        gap: 18px;
    }
    .yy-category-card-row--1,
    .yy-category-card-row--2,
    .yy-category-card-row--3 {
        grid-template-columns: 1fr;
        max-width: none;
    }
    .yy-category-card-row--3 .yy-listing-card:last-child:nth-child(odd) {
        grid-column: auto;
        width: auto;
    }
}

/* v1.4.0 clean category archives */
.yy-category-description a { color: var(--yy-red); text-decoration: underline; text-underline-offset: 3px; }
.yy-category-description ul,
.yy-category-description ol { padding-left: 1.3em; }
.yy-category-archive-section .yy-category-card-row--1 .yy-listing-card { width: min(100%, 420px); }
.yy-category-archive-section .yy-category-card-row--2 .yy-listing-card { width: min(100%, 520px); }
