/* O'Wellness Sky — sayfa içi (inline) referans stilleri + tema ekleri. Referans: owellness.tr/sky */
/* ==== from sky ==== */
/* ══════════════════════════════════════════════
Ultra Premium Hero Overrides
══════════════════════════════════════════════ */

/* Cinematic overlay: left vignette + bottom fade */
.sky-hero-overlay {
background:
linear-gradient(105deg,
rgba(10,7,5,.92) 0%,
rgba(10,7,5,.6) 40%,
rgba(10,7,5,.15) 70%,
transparent 100%),
linear-gradient(to top,
rgba(10,7,5,.98) 0%,
rgba(10,7,5,.4) 35%,
transparent 65%);
}

/* Film grain texture */
.sky-hero-grain {
position: absolute;
inset: 0;
z-index: 2;
pointer-events: none;
opacity: .045;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");
background-size: 220px;
background-repeat: repeat;
}

/* Content: left-aligned, lower third */
.sky-hero-content {
position: absolute;
left: 0;
right: 0;
bottom: 110px;
top: auto;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-end;
text-align: left;
padding: 0 clamp(32px, 7vw, 110px);
z-index: 5;
}

/* Title / Logo */
.sky-hero-title {
margin-bottom: 16px;
animation: fadeInUp .7s ease .25s both;
}
.sky-hero-logo {
height: clamp(50px, 9vw, 110px);
width: auto;
display: block;
filter: brightness(0) invert(1);
}

/* Subtitle */
.sky-hero-subtitle {
max-width: 420px;
font-size: clamp(13px, 1.1vw, 15px);
color: rgba(255,255,255,.5);
line-height: 1.8;
margin-bottom: 28px;
animation: fadeInUp .7s ease .4s both;
}

/* Actions */
.sky-hero-actions {
justify-content: flex-start;
animation: fadeInUp .7s ease .55s both;
}

/* ── Bottom bar ── */
.sky-hero-bottom {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 76px;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 clamp(32px, 7vw, 110px);
background: rgba(10,7,5,.55);
backdrop-filter: blur(24px);
-webkit-backdrop-filter: blur(24px);
border-top: 1px solid rgba(255,255,255,.07);
z-index: 6;
animation: fadeIn 1s ease .8s both;
}

.sky-hero-stats {
display: flex;
align-items: center;
gap: 0;
flex-wrap: nowrap;
overflow: hidden;
}
.sky-stat {
display: flex;
flex-direction: column;
gap: 2px;
padding: 0 28px;
flex-shrink: 0;
}
.sky-stat:first-child { padding-left: 0; }
.sky-stat-num {
font-size: 13px;
font-weight: 600;
color: rgba(255,255,255,.9);
letter-spacing: .02em;
white-space: nowrap;
}
.sky-stat-label {
font-size: 9px;
color: rgba(255,255,255,.3);
letter-spacing: .18em;
text-transform: uppercase;
white-space: nowrap;
}
.sky-stat-sep {
width: 1px;
height: 32px;
background: rgba(255,255,255,.1);
flex-shrink: 0;
}

/* Scroll hint */
.sky-scroll-hint {
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
flex-shrink: 0;
}
.sky-scroll-line {
width: 1px;
height: 28px;
background: linear-gradient(to bottom, rgba(201,169,110,.7), transparent);
animation: scrollPulse 2.2s ease-in-out infinite;
transform-origin: top;
}
@keyframes scrollPulse {
0%, 100% { opacity: .35; transform: scaleY(.7); }
50% { opacity: 1; transform: scaleY(1); }
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}

/* Mobile: center hero content, hide actions & bottom bar */
@media (max-width: 768px) {
.sky-hero-content {
bottom: 0;
top: 0;
padding: 0 32px;
align-items: center;
justify-content: center;
text-align: center;
}
.sky-hero-subtitle { display: none; }
.sky-hero-actions { display: none !important; }
.sky-hero-bottom { display: none; }
.sky-hero-logo { height: clamp(50px, 14vw, 80px); }
}

/* ==== from sky ==== */
.cookie-consent {
        position: fixed;
        bottom: 16px;
        left: 50%;
        z-index: 9998;
        max-width: 640px;
        width: calc(100% - 32px);
        background: rgba(15, 13, 10, 0.88);
        backdrop-filter: blur(18px) saturate(140%);
        -webkit-backdrop-filter: blur(18px) saturate(140%);
        border: 1px solid rgba(201, 169, 110, 0.18);
        border-radius: 999px;
        box-shadow: 0 12px 40px -8px rgba(0, 0, 0, 0.55);
        opacity: 0;
        transform: translate(-50%, 16px);
        transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        pointer-events: none;
        font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    }

    .cookie-consent.show {
        opacity: 1;
        transform: translate(-50%, 0);
        pointer-events: auto;
    }

    .cookie-consent-inner {
        display: flex;
        align-items: center;
        gap: 14px;
        padding: 8px 10px 8px 18px;
    }

    .cookie-consent-icon {
        flex-shrink: 0;
        width: 28px;
        height: 28px;
        border-radius: 50%;
        background: rgba(201, 169, 110, 0.12);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #c9a96e;
    }

    .cookie-consent-icon svg {
        width: 16px;
        height: 16px;
    }

    .cookie-consent-body {
        flex: 1;
        min-width: 0;
    }

    .cookie-consent-eyebrow {
        font-size: 9.5px;
        font-weight: 700;
        letter-spacing: 1.6px;
        text-transform: uppercase;
        color: #c9a96e;
        margin-bottom: 4px;
        line-height: 1;
    }

    .cookie-consent-text {
        font-size: 12.5px;
        line-height: 1.5;
        color: rgba(255, 255, 255, 0.78);
        margin: 0;
    }

    .cookie-consent-text a {
        color: #c9a96e;
        text-decoration: none;
        border-bottom: 1px solid rgba(201, 169, 110, 0.4);
        transition: border-color 0.2s ease;
    }

    .cookie-consent-text a:hover {
        border-bottom-color: #c9a96e;
    }

    .cookie-consent-actions {
        display: flex;
        align-items: center;
        gap: 4px;
        flex-shrink: 0;
    }

    .cookie-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 8px 18px;
        font-family: inherit;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.8px;
        text-transform: uppercase;
        border-radius: 999px;
        border: none;
        cursor: pointer;
        transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
        background: linear-gradient(135deg, #c9a96e 0%, #b89254 100%);
        color: #0a0705;
        white-space: nowrap;
    }

    .cookie-btn:hover {
        transform: translateY(-1px);
        box-shadow: 0 4px 12px -2px rgba(201, 169, 110, 0.5);
    }

    .cookie-btn:active {
        transform: translateY(0);
    }

    .cookie-consent-close {
        flex-shrink: 0;
        width: 26px;
        height: 26px;
        background: transparent;
        border: none;
        color: rgba(255, 255, 255, 0.4);
        font-size: 18px;
        line-height: 1;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: color 0.2s ease;
        font-family: inherit;
        border-radius: 50%;
    }

    .cookie-consent-close:hover {
        color: #c9a96e;
    }

    @media (max-width: 640px) {
        .cookie-consent {
            border-radius: 14px;
        }

        .cookie-consent-inner {
            flex-wrap: wrap;
            padding: 12px 14px 12px 16px;
            gap: 10px;
        }

        .cookie-consent-icon {
            width: 24px;
            height: 24px;
        }

        .cookie-consent-icon svg {
            width: 14px;
            height: 14px;
        }

        .cookie-consent-text {
            font-size: 12px;
            flex: 1 1 100%;
            order: 2;
        }

        .cookie-consent-icon {
            order: 1;
        }

        .cookie-consent-close {
            order: 1;
            margin-left: auto;
        }

        [dir="rtl"] .cookie-consent-close {
            margin-left: 0;
            margin-right: auto;
        }

        .cookie-consent-actions {
            order: 3;
            width: 100%;
            justify-content: flex-end;
        }

        .cookie-btn {
            padding: 8px 16px;
            font-size: 10.5px;
        }
    }

/* ==== from sky-classes ==== */
.lm-overlay {
        display: none;
        position: fixed;
        z-index: 99999;
        inset: 0;
        background: rgba(0, 0, 0, 0.8);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        animation: lmFadeIn 0.3s ease;
    }

    .lm-dialog {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        max-width: 440px;
        background: #141211;
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 24px;
        overflow: hidden;
        animation: lmSlideIn 0.45s cubic-bezier(0.16, 1, 0.3, 1);
        box-shadow: 0 40px 100px rgba(0, 0, 0, 0.6);
    }

    .lm-gold-line {
        height: 2px;
        background: linear-gradient(90deg, transparent 10%, var(--brand-gold) 50%, transparent 90%);
    }

    .lm-close {
        position: absolute;
        top: 20px;
        right: 20px;
        z-index: 10;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        border: 1px solid rgba(255, 255, 255, 0.08);
        background: rgba(255, 255, 255, 0.04);
        color: rgba(255, 255, 255, 0.4);
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    .lm-close:hover {
        background: rgba(255, 255, 255, 0.1);
        color: #fff;
        transform: rotate(90deg);
    }

    .lm-header {
        padding: 40px 40px 0;
        text-align: center;
    }

    .lm-brand {
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 4px;
        color: var(--brand-gold);
        margin-bottom: 16px;
        opacity: 0.7;
    }

    .lm-title {
        font-size: 22px;
        font-weight: 700;
        color: #fff;
        margin: 0 0 10px;
        letter-spacing: -0.02em;
    }

    .lm-subtitle {
        font-size: 13px;
        color: rgba(255, 255, 255, 0.45);
        line-height: 1.6;
        margin: 0;
        max-width: 85%;
        margin-left: auto;
        margin-right: auto;
    }

    .lm-form {
        padding: 32px 40px 24px;
    }

    .lm-field {
        position: relative;
        margin-bottom: 20px;
    }

    .lm-field label {
        display: block;
        margin-bottom: 8px;
        font-size: 11px;
        font-weight: 600;
        letter-spacing: 1.2px;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.4);
        transition: color 0.3s ease;
    }

    .lm-field input {
        width: 100%;
        padding: 14px 18px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 12px;
        color: #fff;
        font-family: 'Inter', sans-serif;
        font-size: 15px;
        outline: none;
        transition: all 0.3s ease;
    }

    .lm-field input::placeholder {
        color: rgba(255, 255, 255, 0.2);
    }

    .lm-field input:focus {
        border-color: rgba(201, 169, 110, 0.4);
        background: rgba(201, 169, 110, 0.04);
    }

    .lm-field:focus-within label {
        color: var(--brand-gold);
    }

    .lm-submit {
        width: 100%;
        margin-top: 8px;
        padding: 16px;
        font-family: 'Inter', sans-serif;
        font-size: 13px;
        letter-spacing: 2px;
        font-weight: 700;
        text-transform: uppercase;
        background: var(--brand-gold);
        border: none;
        border-radius: 12px;
        color: #0a0705;
        cursor: pointer;
        transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
        position: relative;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .lm-submit:hover {
        transform: translateY(-2px);
        box-shadow: 0 12px 32px rgba(201, 169, 110, 0.3);
    }

    .lm-submit:active {
        transform: translateY(0);
    }

    .lm-submit:disabled {
        opacity: 0.6;
        cursor: not-allowed;
        transform: none;
        box-shadow: none;
    }

    .lm-submit-loading svg {
        animation: lmSpin 1s linear infinite;
    }

    .lm-message {
        margin-top: 16px;
        text-align: center;
        font-size: 13px;
        display: none;
        padding: 12px 16px;
        border-radius: 10px;
    }

    .lm-message.success {
        display: block;
        background: rgba(76, 175, 80, 0.1);
        border: 1px solid rgba(76, 175, 80, 0.2);
        color: #66bb6a;
    }

    .lm-message.error {
        display: block;
        background: rgba(244, 67, 54, 0.1);
        border: 1px solid rgba(244, 67, 54, 0.2);
        color: #ef5350;
    }

    .lm-footer {
        padding: 0 40px 28px;
        text-align: center;
        font-size: 11px;
        color: rgba(255, 255, 255, 0.25);
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
    }

    .lm-footer svg {
        color: rgba(255, 255, 255, 0.2);
        flex-shrink: 0;
    }

    .lm-footer a {
        color: rgba(255, 255, 255, 0.35);
        text-decoration: underline;
        text-underline-offset: 2px;
    }

    @media (max-width: 500px) {
        .lm-dialog {
            width: 92%;
            border-radius: 20px;
        }

        .lm-header {
            padding: 32px 28px 0;
        }

        .lm-form {
            padding: 24px 28px 20px;
        }

        .lm-footer {
            padding: 0 28px 24px;
        }
    }

    @keyframes lmFadeIn {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes lmSlideIn {
        from {
            transform: translate(-50%, -45%);
            opacity: 0;
        }

        to {
            transform: translate(-50%, -50%);
            opacity: 1;
        }
    }

    @keyframes lmSpin {
        to {
            transform: rotate(360deg);
        }
    }

/* ==== from sky-contact ==== */
/* ── Grid ── */
.cp-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 60px;
align-items: stretch;
}
.cp-left {
display: flex;
flex-direction: column;
}
.cp-left-header { margin-bottom: 28px; }
.cp-right {
display: flex;
flex-direction: column;
}

/* ── Form Card ── */
.cp-form-card {
flex: 1;
display: flex;
flex-direction: column;
background: rgba(255,255,255,.025);
border: 1px solid rgba(255,255,255,.07);
border-radius: 20px;
padding: 36px 32px;
gap: 12px;
}

/* ── Icon Fields ── */
.cp-field {
position: relative;
display: flex;
align-items: center;
}
.cp-field-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
}
.cp-field-icon {
position: absolute;
left: 16px;
top: 50%;
transform: translateY(-50%);
display: flex;
pointer-events: none;
z-index: 1;
}
.cp-field-icon svg {
width: 15px;
height: 15px;
fill: rgba(201,169,110,.5);
transition: fill .3s;
}
.cp-field-icon-top {
top: 18px;
transform: none;
}
.cp-field input,
.cp-field select,
.cp-field textarea {
width: 100%;
padding: 15px 16px 15px 44px;
background: rgba(255,255,255,.04);
border: 1px solid rgba(255,255,255,.08);
border-radius: 12px;
color: #fff;
font-size: 14px;
font-family: 'Inter', sans-serif;
outline: none;
transition: border-color .3s, background .3s, box-shadow .3s;
-webkit-appearance: none;
appearance: none;
}
.cp-field input::placeholder,
.cp-field textarea::placeholder {
color: rgba(255,255,255,.22);
}
.cp-field input:focus,
.cp-field select:focus,
.cp-field textarea:focus {
border-color: rgba(201,169,110,.5);
background: rgba(255,255,255,.06);
box-shadow: 0 0 0 3px rgba(201,169,110,.07);
}
.cp-field:focus-within .cp-field-icon svg { fill: rgba(201,169,110,.9); }
.cp-field-select select {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23C9A96E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 14px center;
background-size: 14px;
color: rgba(255,255,255,.35);
}
.cp-field-select select option { background: #1a1510; color: #fff; }
.cp-field-textarea { align-items: flex-start; }
.cp-field-textarea textarea { resize: vertical; min-height: 110px; flex: 1; }

/* ── Map ── */
.cp-map {
height: 280px;
border-radius: 16px;
overflow: hidden;
flex-shrink: 0;
margin-bottom: 0;
}

/* ── Info Box ── */
.cp-info-box {
flex: 1;
background: rgba(255,255,255,.02);
border: 1px solid rgba(255,255,255,.07);
border-radius: 16px;
padding: 28px 24px;
margin-top: 16px;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.cp-info-strip { display: flex; flex-direction: column; gap: 0; }
.cp-info-item {
padding: 16px 0;
border-bottom: 1px solid rgba(255,255,255,.06);
}
.cp-info-item:last-child { border-bottom: none; padding-bottom: 0; }
.cp-info-item .ch-item-label {
font-size: 10px;
font-weight: 700;
letter-spacing: 2px;
text-transform: uppercase;
color: rgba(255,255,255,.3);
margin-bottom: 6px;
}
.cp-info-item .ch-item-value {
font-size: 13px;
color: rgba(255,255,255,.8);
line-height: 1.7;
margin: 0;
}
.cp-info-item .ch-item-value a {
color: rgba(255,255,255,.8);
text-decoration: none;
transition: color .3s;
}
.cp-info-item .ch-item-value a:hover { color: var(--brand-gold); }

@media (max-width: 960px) {
.cp-grid { grid-template-columns: 1fr; gap: 40px; }
.cp-right { order: -1; }
.cp-map { height: 220px; }
.cp-form-card { padding: 28px 20px; }
.cp-field-row { grid-template-columns: 1fr; }
}
/* ==== Tema ekleri (WordPress) ==== */
.skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;clip:auto;padding:10px 16px;background:var(--brand-gold);color:#000;z-index:10000;border-radius:6px}
.sky-header .sky-lang-dropdown .trp-language-switcher, .sky-lang-dropdown ul{list-style:none;margin:0;padding:0}
.sky-lang-dropdown .trp-ls-shortcode-language, .sky-lang-dropdown a{display:flex;align-items:center;gap:8px;padding:8px 14px;font-size:13px;white-space:nowrap}
.sky-lang-dropdown img{width:18px;height:auto}
.sky-header .sky-nav-links a.active{color:var(--brand-gold)}
.sky-mobile-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
/* breadcrumb */
.crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:28px}
.crumb a{color:rgba(255,255,255,.55)}.crumb a:hover{color:var(--brand-gold)}.crumb-sep{color:rgba(255,255,255,.2)}
.cls-body-left .crumb{margin-bottom:20px}
/* form notices */
.form-notice{background:rgba(201,169,110,.12);border:1px solid rgba(201,169,110,.4);color:#fff;padding:14px 18px;border-radius:8px;margin-bottom:18px;font-size:14px}
.form-notice.is-error{background:rgba(220,60,60,.12);border-color:rgba(220,60,60,.5)}
.lm-message{display:none;margin-top:12px;font-size:13px;padding:10px 14px;border-radius:6px}
.lm-message.success{display:block;background:rgba(201,169,110,.12);border:1px solid rgba(201,169,110,.4);color:#fff}
.lm-message.error{display:block;background:rgba(220,60,60,.12);border:1px solid rgba(220,60,60,.5);color:#fff}
.ows-form input.is-invalid, .ows-form select.is-invalid{border-color:#d9534f!important}
.lm-field select{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);color:#fff;padding:14px 16px;border-radius:8px;font-family:inherit;font-size:14px}
.lm-field select option{color:#000}
.lm-overlay{align-items:center;justify-content:center}
.lm-overlay.is-open{display:flex}
/* service split */
.svc-split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:48px;align-items:start}
.svc-aside{position:sticky;top:100px}
.branch-seo-prose h3{font-size:17px;color:var(--brand-gold);margin:28px 0 10px;font-weight:600}
.branch-seo-prose ul.cls-benefits{margin:0 0 18px}
.branch-seo-prose a{color:var(--brand-gold);text-decoration:underline;text-underline-offset:3px}
.branch-seo-prose strong{color:#fff}
.cls-sch-more{display:inline-block;margin-top:8px;font-size:12px;color:var(--brand-gold);letter-spacing:.06em;text-transform:uppercase}
.cls-schedule-card .cls-sch-trainer a{color:inherit;border-bottom:1px dotted rgba(255,255,255,.3)}
/* trainer single */
.trainer-single{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:48px;align-items:start}
.trainer-single-media img{width:100%;height:auto;border-radius:16px;object-fit:cover;aspect-ratio:4/5}
.trainer-spec{color:var(--brand-gold);font-size:14px;letter-spacing:.04em;margin-bottom:16px}
.trainer-card{display:block}
/* other classes row */
.cls-others-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.cls-other-card{display:block;position:relative;border-radius:12px;overflow:hidden;background:var(--surface-2);aspect-ratio:4/3}
.cls-other-card img{width:100%;height:100%;object-fit:cover;opacity:.7;transition:transform .5s,opacity .3s}
.cls-other-card:hover img{transform:scale(1.05);opacity:1}
.cls-other-name{position:absolute;left:16px;bottom:28px;font-weight:600;font-size:16px;text-shadow:0 2px 8px rgba(0,0,0,.6)}
.cls-other-level{position:absolute;left:16px;bottom:10px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-gold)}
.cls-others-inner{padding:60px clamp(20px,4vw,80px)}
.cls-others-head{margin-bottom:24px}.cls-others-title{font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:600}
/* blog */
.blog-cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}
.blog-cats a{font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:8px 14px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:rgba(255,255,255,.6)}
.blog-cats a.active,.blog-cats a:hover{border-color:var(--brand-gold);color:var(--brand-gold)}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}
.blog-card{display:flex;flex-direction:column;background:var(--surface-2);border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden;transition:transform .35s,border-color .35s}
.blog-card:hover{transform:translateY(-4px);border-color:rgba(201,169,110,.4)}
.blog-card-media{aspect-ratio:3/2;overflow:hidden;background:var(--surface-3)}
.blog-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.blog-card:hover .blog-card-media img{transform:scale(1.05)}
.blog-card-body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:10px}
.blog-card-cat{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-gold)}
.blog-card-title{font-size:18px;font-weight:600;line-height:1.35;color:#fff}
.blog-card-excerpt{font-size:14px;line-height:1.7;color:rgba(255,255,255,.55)}
.blog-card-meta{font-size:12px;color:rgba(255,255,255,.35);margin-top:auto}
.pagination{display:flex;gap:8px;justify-content:center;margin-top:40px}
.pagination .page-numbers{padding:8px 14px;border:1px solid rgba(255,255,255,.12);border-radius:8px;font-size:13px;color:rgba(255,255,255,.6)}
.pagination .page-numbers.current,.pagination .page-numbers:hover{border-color:var(--brand-gold);color:var(--brand-gold)}
.page-hero--post .page-hero-content{max-width:900px}
.post-title{font-size:clamp(1.6rem,3.4vw,2.6rem)!important;line-height:1.2}
.post-hero-meta{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-top:18px}
.post-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}
.post-aside{position:sticky;top:100px}
.prose{max-width:760px;font-size:16.5px;line-height:1.85;color:rgba(255,255,255,.78)}
.prose p{margin:0 0 1.35em}.prose h2{font-size:clamp(1.35rem,2.4vw,1.8rem);font-weight:600;color:#fff;margin:2.2em 0 .8em;line-height:1.3}
.prose h3{font-size:1.15rem;font-weight:600;color:var(--brand-gold-light);margin:1.8em 0 .6em}
.prose ul,.prose ol{margin:0 0 1.4em 1.3em;list-style:disc}.prose ol{list-style:decimal}.prose li{margin-bottom:.5em}
.prose a{color:var(--brand-gold);text-decoration:underline;text-underline-offset:3px}
.prose strong{color:#fff}.prose blockquote{border-left:2px solid var(--brand-gold);padding:6px 0 6px 22px;margin:1.6em 0;color:#fff;font-style:italic}
.prose table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:14.5px}
.prose th,.prose td{border:1px solid rgba(255,255,255,.1);padding:10px 12px;text-align:left;vertical-align:top}
.prose th{background:rgba(201,169,110,.1);color:#fff;font-weight:600}
.prose img{border-radius:12px;margin:1.4em 0}
.prose .wp-block-image figcaption{font-size:13px;color:rgba(255,255,255,.4)}
.post-lead{font-size:19px;line-height:1.7;color:#fff;font-weight:300;margin-bottom:1.6em!important}
.post-toc{background:var(--surface-2);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:22px 26px;margin:0 0 2.2em}
.post-toc h4{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brand-gold);margin-bottom:12px}
.post-toc ol{margin:0 0 0 1.2em;list-style:decimal}.post-toc li{margin:4px 0;font-size:14.5px}.post-toc a{color:rgba(255,255,255,.75);text-decoration:none}.post-toc a:hover{color:var(--brand-gold)}
.post-tags{margin-top:2em;font-size:13px}.post-tags a{color:rgba(255,255,255,.45);margin-right:10px;text-decoration:none}
.post-author-box{margin-top:3em;padding:22px 26px;border:1px solid rgba(201,169,110,.25);border-radius:14px;background:rgba(201,169,110,.05);font-size:14px}
.post-author-box strong{display:block;color:var(--brand-gold);margin-bottom:6px}.post-author-box p{margin:0;color:rgba(255,255,255,.6)}
.faq-block details{border-bottom:1px solid rgba(255,255,255,.08);padding:14px 0}.faq-block summary{cursor:pointer;font-weight:600;color:#fff;list-style:none}
.legal-prose{max-width:860px}.legal-prose h2{font-size:1.25rem}.legal-prose h3{font-size:1.05rem}
/* section header (studio) reuse */
.section-header .section-title span, .section-title span{color:var(--brand-gold)}
@media (max-width:960px){.svc-split,.trainer-single,.post-layout{grid-template-columns:1fr}.svc-aside,.post-aside{position:static}}
@media (max-width:768px){.cls-others-inner{padding:40px 20px}}

/* Header: menü 9 link olduğu için mobil menü eşiği 1280px'e çekildi (referans: 991px) */
@media (max-width: 1279px) {
  .sky-header {
        height: 68px;
        padding: 0 20px;
    }
  .sky-header-logo img {
        height: 36px;
    }
  .sky-header.scrolled {
        height: 60px;
    }
  .sky-header.scrolled .sky-header-logo img {
        height: 30px;
    }
  .sky-header-nav {
        position: fixed;
        inset: 0;
        height: 100vh;
        height: 100dvh;
        width: 100vw;
        background: rgba(8, 8, 8, 0.97);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        padding: 0 40px;
        gap: 0;
        border-bottom: none;
        transform: translateX(100%);
        opacity: 1;
        pointer-events: none;
        transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        z-index: 9999;
    }
  .sky-header-nav.open {
        transform: translateX(0);
        pointer-events: auto;
    }
  /* Mobilde sarmalayıcı etkisiz: linkler nav'ın kolon menüsüne akar */
    .sky-nav-links {
        display: contents;
    }
  .sky-header-nav a {
        width: 100%;
        padding: 14px 0;
        font-size: 28px;
        font-weight: 300;
        color: rgba(255, 255, 255, 0.5);
        border-radius: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
        letter-spacing: -0.3px;
        text-transform: none;
        transition: color 0.2s ease;
    }
  .sky-header-nav a::after {
        display: none;
    }
  .sky-header-nav a:hover,
    .sky-header-nav a.active {
        background: transparent;
        color: var(--white);
    }
  .sky-header-nav a.sky-nav-cta {
        margin-top: 24px;
        margin-left: 0;
        padding: 11px 24px;
        width: auto;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 1.2px;
        text-transform: uppercase;
        background: var(--brand-gold);
        color: #0a0705;
        border: 1px solid var(--brand-gold);
        border-radius: 6px;
        text-align: center;
    }
  .sky-header-lang {
        position: absolute;
        bottom: 40px;
        left: 40px;
        margin: 0;
        width: auto;
    }
  .sky-header-lang .sky-lang-trigger {
        width: fit-content;
        padding: 0;
        font-size: 11px;
        color: rgba(255, 255, 255, 0.25);
        letter-spacing: 2px;
        border: none;
        background: transparent;
    }
  .sky-header-lang .sky-lang-trigger svg {
        display: none;
    }
  .sky-lang-dropdown {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        background: transparent;
        border: none;
        box-shadow: none;
        padding: 8px 0 0 0;
        display: none;
    }
  .sky-header-lang.active .sky-lang-dropdown {
        display: flex;
        flex-wrap: wrap;
        gap: 4px;
    }
  .sky-header-lang.active .sky-lang-dropdown a {
        font-size: 11px;
        padding: 6px 12px;
        color: rgba(255, 255, 255, 0.4);
        border-bottom: none;
    }
  .sky-header-lang.active .sky-lang-dropdown a.active {
        color: var(--brand-gold);
    }
  .sky-mobile-btn {
        display: flex;
        z-index: 10000;
    }
}

/* ══════════════════════════════════════════════
   Erişilebilirlik ve dayanıklılık düzeltmeleri
   ══════════════════════════════════════════════ */

/* 1) İçerik, JavaScript çalışmasa da görünür olmalı.
   Referans tema .animate-on-scroll öğelerini opacity:0 ile gizleyip
   görünürlüğü IntersectionObserver'a bağlıyor; script engellenir veya
   hata verirse sayfanın tamamı boş kalıyordu. Artık gizleme yalnızca
   <html class="js"> varken uygulanır (sınıf head'de anında eklenir). */
.animate-on-scroll { opacity: 1; transform: none; }
html.js .animate-on-scroll:not(.visible) { opacity: 0; transform: translateY(30px); }

/* 2) Hareket azaltma tercihi: giriş animasyonları kapatılır, içerik
   anında görünür olur. Aksi hâlde animasyon atlanınca öğeler
   (hero butonları, alt bilgi çubuğu) kalıcı olarak gizli kalıyordu. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-delay: 0ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
  .animate-on-scroll { opacity: 1 !important; transform: none !important; }
  .sky-hero-title, .sky-hero-subtitle, .sky-hero-actions, .sky-hero-bottom,
  .sky-hero-logo, .lead-runway-grid { opacity: 1 !important; transform: none !important; }
  .sky-preloader { display: none !important; }
}

/* 3) Klavye odağı görünür olsun (referans temada odak halkası yoktu). */
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, summary:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--brand-gold);
  outline-offset: 3px;
  border-radius: 4px;
}

/* 4) Hero: poster arka planda sabit durur; video ancak gerçekten oynamaya
   başlayınca görünür olur. Otomatik oynatma engellenirse veya video hiç
   yüklenmezse (mobil, yavaş bağlantı) hero siyah kalmaz. */
.sky-hero { background-size: cover; background-position: center; background-repeat: no-repeat; background-color: var(--black); }
.sky-hero-video { opacity: 0; transition: opacity .8s ease; }
.sky-hero-video.is-playing { opacity: 1; }

/* ══════════════════════════════════════════════
   Mobil menü düzeltmeleri
   ══════════════════════════════════════════════ */

/* 5) Menü açıkken arkadaki sayfa kaymasın. */
body.nav-open { overflow: hidden; touch-action: none; }

@media (max-width: 1279px) {
  /* 6) Menü içeriği kısa ekranlarda (ör. iPhone SE) taşıyordu ve alttaki
     "Bilgi Formu" ile dil seçenekleri erişilemiyordu. Panel artık kendi
     içinde kayar ve başlık çubuğunun altından başlar. */
  .sky-header-nav {
    justify-content: flex-start;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding: 96px 40px calc(56px + env(safe-area-inset-bottom, 0px));
  }
  .sky-header-nav .sky-nav-cta { margin-top: 24px; }
  .sky-header-nav .sky-header-lang { margin-top: 20px; margin-bottom: 8px; }

  /* 7) Menü açıkken logo ve kapatma düğmesi panelin üstünde kalsın;
     önceden panel (z-index 9999) başlığı örtüyordu. */
  body.nav-open .sky-header { z-index: 10000; background: rgba(8, 8, 8, .97); }
  body.nav-open .sky-header-logo,
  body.nav-open .sky-mobile-btn { position: relative; z-index: 10001; }

  /* 9) Menü açıkken alttaki hızlı erişim çubuğu gizlenir; panelin arkasından
     görünüp dil bağlantılarının üstüne biniyordu. */
  body.nav-open .sky-bottom-nav { display: none; }

  /* 8) Dokunma hedefleri en az 44px (mobil erişilebilirlik ölçütü). */
  .sky-mobile-btn { width: 44px; height: 44px; }
  .sky-bottom-nav-item { min-height: 48px; }
  .sky-header-nav a { min-height: 44px; display: flex; align-items: center; }
}

/* 10) Başvuru modalı kısa ekranlarda (iPhone SE vb.) taşıyordu; artık
   ekran yüksekliğini aşınca kendi içinde kayar. */
.lm-dialog { max-height: calc(100dvh - 32px); max-height: calc(100vh - 32px); overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }

/* 11) Program sayfası gün sekmeleri mobilde 32px'di; dokunma hedefi büyütüldü. */
@media (max-width: 991px) {
  .day-btn { min-height: 44px; padding-inline: 14px; }
  .sched-card .card-header { min-height: 56px; }
}

/* 12) Menüye "Fitness" eklenince 10 bağlantı oluştu ve orta genişlikteki
   masaüstlerinde "Bilgi Formu" butonuyla çakışıyordu. Bağlantılar
   genişliğe göre sıkıştırılır; 1500px altında Sky kompleksinin dış
   bağlantıları menüden çıkar (alt menüde ve ana sayfadaki hizmet
   bloğunda erişilebilir durumda kalır). */
@media (min-width: 1280px) and (max-width: 1699px) {
  /* Referans temada menü mutlak konumla sayfaya ortalanıyor; 10 bağlantıda
     bu, "Bilgi Formu" butonunun üstüne biniyordu. Bu aralıkta menü normal
     akışa alınır, böylece logo ile buton arasına taşmadan yerleşir. */
  .sky-nav-links { position: static; transform: none; top: auto; left: auto; flex-wrap: nowrap; }
  .sky-header-nav { gap: 6px; justify-content: flex-end; }
  .sky-header-nav a { padding: 10px 9px; letter-spacing: .06em; font-size: 10.5px; }
}
@media (min-width: 1280px) and (max-width: 1499px) {
  .sky-nav-links a[target="_blank"] { display: none; }
}

/* 13) Footer ajans künyesi (Alien Road) — alt barda kendi satırında, sağa hizalı */
.bft-agency { flex-basis: 100%; text-align: right; margin-top: 4px; }
.bft-agency a {
  color: rgba(255, 255, 255, .55);
  letter-spacing: .04em;
  white-space: nowrap;
  border-bottom: 1px solid transparent;
  transition: color .3s ease, border-color .3s ease;
}
.bft-agency a:hover { color: var(--brand-gold); border-bottom-color: rgba(201, 169, 110, .5); }
@media (max-width: 768px) { .bft-agency { text-align: center; } .bft-agency a { white-space: normal; } }
