/* ==========================================================================
   Psikolog Hatice Coşkun — Ana Tema Stilleri   ========================================================================== */

/* ── TEMEL TİPOGRAFİ — WP 7 global style override ── */
html {
    box-sizing: border-box;
}
*, *::before, *::after {
    box-sizing: inherit;
}
body {
    margin: 0;
    font-family: var(--font-primary);
    color: var(--color-on-surface);
    background-color: var(--color-surface);
    font-size: var(--font-size-base);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}
img, video {
    max-width: 100%;
    height: auto;
}

h1, h2, h3, h4, h5, h6,
.sp-headline, .sp-display {
    font-family: var(--font-secondary);
    color: var(--color-neutral);
    line-height: 1.2;
    font-weight: 600;
}

/* ── GOOGLE MATERIAL SYMBOLS ── */
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
    vertical-align: middle;
}

/* ── TİPOGRAFİ YARDIMCI — Source Serif 4 başlıklar ── */
.sp-display-lg  { font-family: var(--font-secondary); font-size: var(--text-display-lg);  line-height: 1.1; font-weight: 600; letter-spacing: -0.02em; color: var(--color-neutral); }
.sp-display-md  { font-family: var(--font-secondary); font-size: var(--text-display-md);  line-height: 1.2; font-weight: 600; letter-spacing: -0.01em; color: var(--color-neutral); }
.sp-headline-lg { font-family: var(--font-secondary); font-size: var(--text-headline-lg); line-height: 1.2;  font-weight: 600; color: var(--color-neutral); }
.sp-headline-md { font-family: var(--font-secondary); font-size: var(--text-headline-md); line-height: 1.3;  font-weight: 500; color: var(--color-neutral); }
.sp-headline-sm { font-family: var(--font-secondary); font-size: var(--text-headline-sm); line-height: 1.3;  font-weight: 500; color: var(--color-neutral); }
.sp-body-lg     { font-family: var(--font-primary); font-size: var(--text-body-lg); line-height: 1.6; }
.sp-body-md     { font-family: var(--font-primary); font-size: var(--text-body-md); line-height: 1.6; }
.sp-body-sm     { font-family: var(--font-primary); font-size: var(--text-body-sm); line-height: 1.5; }
.sp-label-lg    { font-family: var(--font-primary); font-size: var(--text-label-lg); line-height: 1.4; font-weight: 600; letter-spacing: 0.05em; }
.sp-label-sm    { font-family: var(--font-primary); font-size: var(--text-label-sm); line-height: 1.4; font-weight: 500; letter-spacing: 0.02em; }

.sp-italic       { font-style: italic; }
.sp-text-variant { color: var(--color-on-surface-variant); }
.sp-text-primary { color: var(--color-primary); }

/* ── KONTEYNER ── */
.sp-container {
    width: 100%;
    max-width: var(--container-max);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--spacing-md);
    padding-right: var(--spacing-md);
}
@media (min-width: 768px) {
    .sp-container {
        padding-left: var(--spacing-xl);
        padding-right: var(--spacing-xl);
    }
}

/* ── TOPBAR ── */
.topbar {
    padding: 8px 0;
    background: var(--color-primary);
    color: rgba(255,255,255,0.9);
    font-size: var(--text-label-sm);
    font-family: var(--font-primary);
}
.topbar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* ── HEADER ── */
.sp-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: var(--header-height);
    background: rgba(247, 250, 244, 0.88);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--color-outline-variant);
    z-index: 1000;
    transition: height var(--transition-base), box-shadow var(--transition-base), background var(--transition-base);
}
.sp-header.scrolled {
    height: var(--header-height-scroll);
    box-shadow: var(--shadow-ambient);
    background: rgba(247, 250, 244, 0.96);
}
.sp-header__nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
}
.sp-logo-text {
    font-family: var(--font-secondary);
    font-size: var(--text-headline-sm);
    font-weight: 600;
    color: var(--color-primary);
    text-decoration: none;
    letter-spacing: -0.02em;
}
.sp-logo-text:hover { color: var(--color-primary); opacity: 0.8; }

/* Desktop Menü */
.sp-header__menu { display: flex; align-items: center; }
.sp-nav {
    display: flex;
    align-items: center;
    gap: 2px;
    list-style: none;
}
.sp-nav li a {
    display: block;
    padding: 8px 16px;
    font-family: var(--font-primary);
    font-size: var(--text-label-lg);
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--color-on-surface-variant);
    text-decoration: none;
    transition: color var(--transition-fast);
}
.sp-nav li a:hover,
.sp-nav li.current-menu-item > a {
    color: var(--color-primary);
}
.sp-nav li.current-menu-item > a {
    border-bottom: 2px solid var(--color-primary);
    padding-bottom: 6px;
}

/* Dropdown */
.sp-nav li.menu-item-has-children { position: relative; }
.sp-nav .sub-menu {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    min-width: 220px;
    background: var(--color-surface-container-lowest);
    border: 1px solid var(--color-outline-variant);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-editorial);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: all var(--transition-base);
}
.sp-nav li.menu-item-has-children:hover .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.sp-nav .sub-menu li a {
    padding: 10px var(--spacing-lg);
    font-size: var(--text-label-sm);
    text-transform: none;
}

/* Header Actions */
.sp-header__actions { display: flex; align-items: center; gap: var(--spacing-md); }

/* Hamburger */
.sp-hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    padding: 8px;
    cursor: pointer;
    background: none;
    border: none;
}
.sp-hamburger span {
    display: block;
    width: 22px;
    height: 2px;
    background: var(--color-on-surface);
    border-radius: var(--radius-full);
    transition: all var(--transition-base);
}
.sp-hamburger.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.sp-hamburger.is-active span:nth-child(2) { opacity: 0; }
.sp-hamburger.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ── BUTONLAR ── */
.sp-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 28px;
    font-family: var(--font-primary);
    font-size: var(--text-label-lg);
    font-weight: 600;
    letter-spacing: 0.02em;
    border-radius: var(--radius-md);
    border: 2px solid transparent;
    cursor: pointer;
    text-decoration: none;
    transition: all var(--transition-base);
    white-space: nowrap;
}
.sp-btn--pill    { border-radius: var(--radius-full); }
.sp-btn--sm      { padding: 8px 20px; font-size: var(--text-label-sm); }
.sp-btn--lg      { padding: 16px 40px; font-size: var(--text-body-md); }
.sp-btn--full    { width: 100%; justify-content: center; }

.sp-btn--primary {
    background: var(--color-primary);
    color: var(--color-on-primary);
    border-color: var(--color-primary);
}
.sp-btn--primary:hover {
    background: var(--color-accent-hover);
    border-color: var(--color-accent-hover);
    color: var(--color-on-primary);
    transform: translateY(-2px);
    box-shadow: var(--shadow-serene);
}
.sp-btn--ghost {
    background: transparent;
    color: var(--color-primary);
    border: none;
    padding-left: 0;
    border-bottom: 1px solid rgba(93,115,93,0.35);
    border-radius: 0;
}
.sp-btn--ghost:hover {
    border-bottom-color: var(--color-primary);
    color: var(--color-primary-deep);
}
.sp-btn--surface {
    background: var(--color-surface);
    color: var(--color-primary);
    border-color: transparent;
}
.sp-btn--surface:hover {
    background: var(--color-secondary-fixed);
    transform: translateY(-2px);
}
.sp-btn--outline-white {
    background: transparent;
    color: var(--color-on-primary);
    border-color: rgba(255,255,255,0.35);
}
.sp-btn--outline-white:hover {
    background: rgba(255,255,255,0.1);
    color: var(--color-on-primary);
}
.sp-btn--link {
    background: none;
    border: none;
    padding: 0;
    border-radius: 0;
    border-bottom: 1px solid var(--color-primary);
}
.sp-btn--link:hover { padding-bottom: 4px; }

/* ── ETIKET ── */
.sp-label { font-family: var(--font-primary); font-size: var(--text-label-lg); font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; }
.sp-label--upper    { text-transform: uppercase; letter-spacing: 0.1em; }
.sp-label--primary  { color: var(--color-primary); }
.sp-label--outline  { color: var(--color-outline); }
.sp-icon-primary    { color: var(--color-primary); }

/* ── SECTION ── */
.sp-section         { padding: var(--spacing-3xl) 0; }
.sp-section--container-low  { background: var(--color-surface-container-low); }
.sp-section--primary        { background: var(--color-primary); color: var(--color-on-primary); }
.sp-section--primary-container { background: var(--color-primary-container); color: var(--color-on-primary-container); }
.sp-section__header { text-align: center; max-width: 680px; margin: 0 auto var(--spacing-3xl); }
.sp-section__header .sp-display-md { margin-bottom: var(--spacing-md); }
.sp-border-left     { border-left: 1px solid var(--color-outline-variant); padding-left: var(--spacing-2xl); }

/* ── ANİMASYON ── */
.sp-reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.7s var(--transition-slow), transform 0.7s var(--transition-slow);
    transition-delay: var(--reveal-delay, 0ms);
}
.sp-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ── HERO ── */
.sp-site-main     { padding-top: var(--header-height); }
.sp-hero          { padding: var(--spacing-3xl) 0; overflow: hidden; }
.sp-hero__grid    {
    display: grid;
    grid-template-columns: 5fr 7fr;
    gap: var(--spacing-gutter);
    align-items: center;
}
.sp-hero__text    { z-index: 1; }
.sp-hero__text .sp-label { display: block; margin-bottom: var(--spacing-md); }
.sp-hero__title   {
    font-family: var(--font-secondary);
    font-size: var(--text-display-lg);
    line-height: 1.1;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: var(--color-neutral);
    margin: var(--spacing-lg) 0;
}
.sp-hero__title em { font-style: italic; font-weight: 400; }
.sp-hero__desc    {
    font-size: var(--text-body-lg);
    color: var(--color-on-surface-variant);
    line-height: 1.7;
    margin-bottom: var(--spacing-3xl);
    max-width: 480px;
}
.sp-hero__buttons { display: flex; align-items: center; gap: var(--spacing-lg); flex-wrap: wrap; }

/* Hero Görsel */
.sp-hero__visual  { position: relative; }
.sp-hero__img-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 3/4;
    overflow: hidden;
    border-radius: var(--radius-xl);
    clip-path: polygon(0 0, 100% 5%, 100% 100%, 0 92%);
    box-shadow: 0 30px 60px -20px rgba(45,49,45,0.18);
}
.sp-hero__img     { width: 100%; height: 100%; object-fit: cover; transition: transform 3s ease; }
.sp-hero__img-wrap:hover .sp-hero__img { transform: scale(1.05); }

/* Hero Badge */
.sp-hero__badge {
    position: absolute;
    bottom: -32px;
    left: -32px;
    background: rgba(255,255,255,0.92);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    padding: var(--spacing-lg);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-serene);
    max-width: 260px;
}
.sp-hero__badge-head {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--color-primary);
    font-weight: 600;
    font-size: var(--text-label-lg);
    margin-bottom: 8px;
}
.sp-hero__badge p { font-size: var(--text-body-sm); color: var(--color-on-surface-variant); margin: 0; }

/* Hero Scroll */
.sp-hero__scroll {
    display: block;
    width: 48px;
    height: 48px;
    margin: var(--spacing-2xl) auto 0;
    border-radius: var(--radius-full);
    border: 1px solid var(--color-outline-variant);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-on-surface-variant);
    animation: sp-bounce 2s infinite;
    text-decoration: none;
}
@keyframes sp-bounce {
    0%,100% { transform: translateY(0); }
    50%      { transform: translateY(8px); }
}

/* ── BENTO GRID ── */
.sp-bento {
    display: grid;
    grid-template-columns: 7fr 5fr;
    grid-template-rows: auto auto;
    gap: var(--spacing-gutter);
}
.sp-bento__card {
    background: var(--color-surface-container-lowest);
    border-radius: var(--radius-xl);
    padding: 48px;
    box-shadow: var(--shadow-serene);
}
.sp-bento__card .material-symbols-outlined {
    font-size: 36px;
    display: block;
    margin-bottom: var(--spacing-lg);
}
.sp-bento__card h3,
.sp-bento__card h4 { margin: var(--spacing-md) 0 var(--spacing-sm); }
.sp-bento__card p  { margin: 0; }
.sp-bento__card--wide { grid-column: 1 / 2; }
.sp-bento__card--dark {
    background: var(--color-primary);
    color: var(--color-on-primary);
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.sp-bento__card--dark h3 { color: var(--color-on-primary); }
.sp-bento__card--quote {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
    position: relative;
    overflow: hidden;
    min-height: 220px;
}
.sp-bento__quote-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.4;
}
.sp-bento__quote-text {
    position: relative;
    z-index: 1;
    font-family: var(--font-secondary);
    font-size: var(--text-headline-sm);
    font-style: italic;
    color: var(--color-surface-container-lowest);
    line-height: 1.4;
    text-shadow: 0 2px 12px rgba(0,0,0,0.3);
}
.sp-bento__num {
    font-family: var(--font-secondary);
    font-size: clamp(2.5rem, 5vw, 4rem);
    color: rgba(93,115,93,0.15);
    line-height: 1;
    display: block;
    margin-bottom: var(--spacing-sm);
}

/* ── NASIL ÇALIŞIYORUZ ── */
.sp-how__grid {
    display: grid;
    grid-template-columns: 6fr 6fr;
    gap: var(--spacing-2xl);
    align-items: center;
}
.sp-how__cards    { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-lg); }
.sp-how__col--offset { padding-top: 80px; }

.sp-step-card {
    background: var(--color-surface-container-lowest);
    border: 1px solid var(--color-surface-container-high);
    border-radius: var(--radius-lg);
    padding: var(--spacing-lg);
    transition: transform var(--transition-base);
    margin-bottom: var(--spacing-lg);
}
.sp-step-card:hover { transform: translateY(-6px); }
.sp-step-card__num  { font-size: var(--text-label-sm); color: var(--color-outline); text-transform: uppercase; letter-spacing: 0.05em; display: block; margin-bottom: 4px; }
.sp-step-card h4    { margin: 4px 0; }
.sp-step-card p     { margin: 0; }

.sp-how__text { padding-left: var(--spacing-2xl); }
.sp-how__text .sp-display-md { margin-bottom: var(--spacing-lg); }
.sp-how__text > p { margin-bottom: var(--spacing-lg); }

.sp-checklist { list-style: none; display: flex; flex-direction: column; gap: var(--spacing-md); }
.sp-checklist li {
    display: flex;
    align-items: center;
    gap: var(--spacing-md);
    font-family: var(--font-primary);
    font-size: var(--text-label-lg);
    font-weight: 600;
    color: var(--color-primary);
}

/* ── TESTİMONYALLAR ── */
.sp-testimonials { display: grid; grid-template-columns: 4fr 8fr; gap: var(--spacing-2xl); align-items: start; }
.sp-testimonials__header { position: sticky; top: calc(var(--header-height) + 32px); }
.sp-testimonials__header .sp-headline-lg { margin-bottom: var(--spacing-md); }
.sp-testimonials__list { display: flex; flex-direction: column; gap: var(--spacing-gutter); }

.sp-testimonial {
    padding: 48px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: var(--radius-xl);
}
.sp-testimonial__quote {
    font-family: var(--font-secondary);
    font-size: var(--text-headline-md);
    font-style: italic;
    line-height: 1.5;
    margin-bottom: var(--spacing-lg);
}
.sp-testimonial__author { display: flex; align-items: center; gap: var(--spacing-md); }
.sp-testimonial__avatar {
    width: 48px;
    height: 48px;
    border-radius: var(--radius-full);
    background: var(--color-secondary-fixed);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: var(--color-primary);
    font-size: var(--text-label-lg);
    flex-shrink: 0;
}

/* ── CTA BOX ── */
.sp-cta-box {
    position: relative;
    background: var(--color-surface-container-low);
    border-radius: var(--radius-2xl);
    padding: 96px var(--spacing-3xl);
    text-align: center;
    overflow: hidden;
}
.sp-cta-box__content { position: relative; z-index: 1; }
.sp-cta-box__content .sp-display-md  { margin-bottom: var(--spacing-lg); }
.sp-cta-box__content > p             { margin-bottom: var(--spacing-2xl); max-width: 520px; margin-left: auto; margin-right: auto; }
.sp-cta-box__deco {
    position: absolute;
    border-radius: var(--radius-full);
    background: var(--color-primary);
    opacity: 0.04;
    filter: blur(60px);
}
.sp-cta-box__deco--1 { top: -50%; right: -10%; width: 400px; height: 400px; transform: translate(30%, -30%); }
.sp-cta-box__deco--2 { bottom: -50%; left: -10%; width: 600px; height: 600px; transform: translate(-30%, 30%); }

/* ── CTA BANNER (koyu) ── */
.sp-cta-banner {
    position: relative;
    background: var(--color-primary);
    border-radius: var(--radius-xl);
    padding: var(--spacing-3xl) var(--spacing-2xl);
    text-align: center;
    color: var(--color-on-primary);
    overflow: hidden;
}
.sp-cta-banner__content { position: relative; z-index: 1; }
.sp-cta-banner .sp-display-md { color: var(--color-on-primary); margin-bottom: var(--spacing-lg); }
.sp-cta-banner > p { opacity: 0.8; margin-bottom: var(--spacing-xl); }
.sp-cta-banner__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.06) 0%, transparent 60%);
}

/* ── CTA CENTER ── */
.sp-cta-center        { text-align: center; max-width: 680px; margin: 0 auto; padding-top: var(--spacing-3xl); padding-bottom: var(--spacing-3xl); }
.sp-cta-center .sp-display-md { color: var(--color-on-primary); margin-bottom: var(--spacing-lg); }
.sp-cta-center > p   { opacity: 0.8; margin-bottom: var(--spacing-xl); }
.sp-cta-center__buttons { display: flex; gap: var(--spacing-md); justify-content: center; flex-wrap: wrap; }

/* ── HAKKIMDA ── */
.sp-about-hero {
    display: grid;
    grid-template-columns: 5fr 7fr;
    gap: var(--spacing-2xl);
    align-items: center;
    padding-top: var(--spacing-3xl);
    padding-bottom: var(--spacing-3xl);
}
.sp-about-hero__img-col { position: relative; }
.sp-about-hero__img-wrap {
    border-radius: var(--radius-xl);
    overflow: hidden;
    aspect-ratio: 4/5;
    box-shadow: var(--shadow-editorial);
}
.sp-about-hero__img { width: 100%; height: 100%; object-fit: cover; }
.sp-about-hero__img-placeholder {
    width: 100%;
    aspect-ratio: 4/5;
    background: var(--color-surface-container);
    border-radius: var(--radius-xl);
}
.sp-about-hero__glow {
    position: absolute;
    right: -32px;
    bottom: -32px;
    width: 200px;
    height: 200px;
    background: var(--color-secondary-fixed);
    border-radius: var(--radius-full);
    opacity: 0.3;
    filter: blur(60px);
    z-index: -1;
}
.sp-about-hero__text .sp-label  { display: block; margin-bottom: var(--spacing-md); }
.sp-about-hero__title           { margin: var(--spacing-md) 0 var(--spacing-lg); color: var(--color-on-surface); }
.sp-about-hero__bio             { margin-bottom: var(--spacing-xl); }
.sp-about-hero__quote-bar       { display: flex; align-items: center; gap: var(--spacing-md); }
.sp-about-hero__quote-line      { width: 48px; height: 1px; background: var(--color-outline-variant); flex-shrink: 0; }

/* Hakkımda Yaklaşım */
.sp-approach-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-gutter);
}
.sp-approach-card {
    background: var(--color-surface-container-lowest);
    border-radius: var(--radius-xl);
    padding: 48px var(--spacing-xl);
    box-shadow: var(--shadow-editorial);
    transition: transform 0.5s ease;
}
.sp-approach-card:hover { transform: translateY(-8px); }
.sp-approach-card .material-symbols-outlined { font-size: 36px; display: block; margin-bottom: var(--spacing-lg); }
.sp-approach-card h3 { margin-bottom: var(--spacing-sm); }

/* Timeline */
.sp-timeline-layout {
    display: grid;
    grid-template-columns: 4fr 8fr;
    gap: var(--spacing-gutter);
}
.sp-sticky-title { position: sticky; top: calc(var(--header-height) + 32px); }
.sp-timeline     { position: relative; padding-left: 0; }
.sp-timeline::before {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 100%;
    background: var(--color-outline-variant);
}
.sp-timeline__item {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 0;
    margin-bottom: var(--spacing-3xl);
    position: relative;
}
.sp-timeline__left  { width: 50%; padding-right: 40px; text-align: right; }
.sp-timeline__right { width: 50%; padding-left: 40px; }
.sp-timeline__left .sp-label-lg { display: block; margin-bottom: 4px; }
.sp-timeline__dot {
    position: absolute;
    left: 50%;
    top: 4px;
    transform: translateX(-50%);
    width: 12px;
    height: 12px;
    border-radius: var(--radius-full);
    background: var(--color-outline-variant);
    outline: 8px solid var(--color-surface);
    flex-shrink: 0;
}
.sp-timeline__dot--active { background: var(--color-primary); }

/* ── UZMANLIK ── */
.sp-page-hero {
    padding: calc(var(--header-height) + 80px) 0 80px;
    position: relative;
    overflow: hidden;
}
.sp-page-hero--gradient { background: linear-gradient(180deg, #f5f3ef 0%, #f7faf4 100%); }
.sp-page-hero__inner    { position: relative; z-index: 1; text-align: center; }
.sp-page-hero__title    { font-family: var(--font-secondary); font-size: var(--text-display-lg); color: var(--color-on-surface); margin: var(--spacing-md) 0 var(--spacing-lg); }
.sp-page-hero__title em { font-style: italic; }
.sp-page-hero__desc     { max-width: 600px; margin: 0 auto; }
.sp-page-hero__glow {
    position: absolute;
    right: -100px;
    top: 0;
    width: 500px;
    height: 500px;
    background: var(--color-secondary-fixed);
    border-radius: var(--radius-full);
    opacity: 0.2;
    filter: blur(120px);
}

/* Uzmanlık Listesi */
.sp-expertise { padding: var(--spacing-3xl) var(--spacing-2xl); }
.sp-expertise__item {
    display: flex;
    align-items: center;
    gap: var(--spacing-gutter);
    border-top: 1px solid var(--color-surface-container-high);
    padding: 48px 0;
    cursor: pointer;
    transition: background var(--transition-fast);
}
.sp-expertise__item:last-child { border-bottom: 1px solid var(--color-surface-container-high); }
.sp-expertise__item:hover { background: rgba(93,115,93,0.02); margin: 0 -16px; padding-left: 16px; padding-right: 16px; }
.sp-expertise__num { width: 8%; font-size: var(--text-label-lg); color: var(--color-outline); opacity: 0.4; }
.sp-expertise__title-col { width: 33%; display: flex; flex-direction: column; }
.sp-expertise__title-wrap { display: flex; align-items: center; gap: var(--spacing-md); margin-bottom: 8px; }
.sp-expertise__title-wrap .material-symbols-outlined { font-size: 28px; }
.sp-expertise__divider { height: 1px; background: var(--color-primary); width: 0; transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
.sp-expertise__item:hover .sp-expertise__divider { width: 100%; }
.sp-expertise__desc { width: 42%; }
.sp-expertise__desc p { margin: 0; }
.sp-expertise__arrow { width: 17%; display: flex; justify-content: flex-end; }
.sp-expertise__arrow .material-symbols-outlined { color: var(--color-outline); transition: transform var(--transition-base); }
.sp-expertise__item:hover .sp-expertise__arrow .material-symbols-outlined { transform: translateX(8px); color: var(--color-primary); }

/* Split Section */
.sp-split-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-gutter);
    align-items: center;
    border-radius: var(--radius-2xl);
    overflow: hidden;
}
.sp-split-section__img-col { position: relative; aspect-ratio: 1; }
.sp-split-section__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius-2xl);
}
.sp-split-section__img-placeholder {
    width: 100%;
    height: 100%;
    background: var(--color-surface-container);
    border-radius: var(--radius-2xl);
}
.sp-split-section__overlay {
    position: absolute;
    inset: 0;
    background: rgba(93,115,93,0.1);
    mix-blend-mode: overlay;
    border-radius: var(--radius-2xl);
}
.sp-split-section__text {
    padding: 64px;
    border-radius: var(--radius-2xl);
}
.sp-split-section__text h2 { margin-bottom: var(--spacing-xl); }
.sp-feature-list { display: flex; flex-direction: column; gap: var(--spacing-lg); margin-bottom: var(--spacing-2xl); }
.sp-feature-list__item { display: flex; gap: var(--spacing-md); align-items: flex-start; }
.sp-feature-list__item .material-symbols-outlined { margin-top: 2px; flex-shrink: 0; }
.sp-feature-list__item h4 { margin-bottom: 4px; }
.sp-feature-list__item p  { margin: 0; }

/* ── RANDEVU ── */
.sp-contact-layout        { padding-top: var(--spacing-3xl); }
.sp-contact-layout__header { margin-bottom: var(--spacing-2xl); }
.sp-contact-layout__header .sp-display-lg { margin-bottom: var(--spacing-md); color: var(--color-primary); }
.sp-contact-grid { display: grid; grid-template-columns: 7fr 5fr; gap: var(--spacing-2xl); align-items: start; }

.sp-contact-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 24px;
    margin-bottom: var(--spacing-2xl);
}
.sp-contact-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 28px 24px;
    background: var(--color-surface-container-lowest);
    border: 1px solid var(--color-outline-variant);
    border-radius: var(--radius-xl);
    text-decoration: none;
    box-shadow: var(--shadow-ambient);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.sp-contact-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-lift);
    border-color: var(--color-primary-container);
}
.sp-contact-card .material-symbols-outlined {
    color: var(--color-primary);
    font-size: 28px;
}
.sp-contact-card__label {
    margin: 0 0 6px;
    font-size: var(--text-label-sm);
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--color-primary);
}
.sp-contact-card__value {
    margin: 0;
    font-size: var(--text-body-md);
    line-height: 1.5;
    color: var(--color-on-surface);
}

.sp-form-card {
    background: var(--color-surface-container-lowest);
    border-radius: var(--radius-xl);
    padding: 48px;
    box-shadow: var(--shadow-luxury);
}
.sp-form-card__title { margin: 0 0 8px; color: var(--color-primary); }
.sp-form-card__intro { margin: 0 0 var(--spacing-lg); }
.sp-form        { display: flex; flex-direction: column; gap: var(--spacing-lg); }
.sp-form__row   { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-lg); }
.sp-form__group { display: flex; flex-direction: column; gap: 8px; }
.sp-form__label { font-size: var(--text-label-lg); font-weight: 600; color: var(--color-primary); }
.sp-form__input {
    padding: 14px var(--spacing-md);
    background: var(--color-surface-container-lowest);
    border: 1.5px solid var(--color-outline-variant);
    border-radius: var(--radius-lg);
    font-family: var(--font-primary);
    font-size: var(--text-body-md);
    color: var(--color-on-surface);
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
    width: 100%;
}
.sp-form__input:focus {
    outline: none;
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(93,115,93,0.1);
}
.sp-form__select { appearance: none; cursor: pointer; }
.sp-form__textarea { resize: vertical; min-height: 120px; }
.sp-form__submit { padding-top: 8px; }
.sp-form__success {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: var(--spacing-md);
    background: var(--color-primary-fixed);
    color: var(--color-primary);
    border-radius: var(--radius-md);
    font-weight: 600;
}

/* İletişim Sidebar */
.sp-contact-sidebar__img {
    position: relative;
    height: 220px;
    border-radius: var(--radius-xl);
    overflow: hidden;
    margin-bottom: var(--spacing-lg);
    box-shadow: var(--shadow-luxury);
}
.sp-contact-sidebar__img img { width: 100%; height: 100%; object-fit: cover; }
.sp-contact-sidebar__img-overlay {
    position: absolute;
    inset: 0;
    background: rgba(93,115,93,0.1);
    mix-blend-mode: overlay;
}
.sp-contact-info    { display: flex; flex-direction: column; gap: var(--spacing-xl); }
.sp-contact-info h3 { margin-bottom: var(--spacing-md); }
.sp-contact-info__item { display: flex; align-items: flex-start; gap: var(--spacing-md); }
.sp-contact-info__item .material-symbols-outlined { color: var(--color-primary); margin-top: 2px; }
.sp-contact-info__item p,
.sp-contact-info__item a { margin: 0; font-size: var(--text-body-md); color: var(--color-on-surface-variant); }
.sp-contact-info__item a:hover { color: var(--color-primary); }
.sp-contact-info__hours h3 { margin-bottom: var(--spacing-sm); }

.sp-map-wrap {
    border-radius: var(--radius-xl);
    overflow: hidden;
    aspect-ratio: 21/9;
    box-shadow: var(--shadow-luxury);
    filter: grayscale(40%);
    transition: filter 0.7s ease;
    margin-bottom: var(--spacing-3xl);
}
.sp-map-wrap:hover { filter: grayscale(0); }
.sp-map { width: 100%; height: 100%; border: none; display: block; }

/* ── FOOTER ── */
.sp-footer { background: var(--color-surface-container-low); padding: var(--spacing-3xl) 0 0; border-top: 1px solid var(--color-surface-container-high); }
.sp-footer__top {
    display: grid;
    grid-template-columns: 3fr 2fr 2fr 2fr;
    gap: var(--spacing-2xl);
    padding-bottom: var(--spacing-2xl);
    border-bottom: 1px solid var(--color-outline-variant);
    margin-bottom: var(--spacing-xl);
}
.sp-footer__brand-name {
    font-family: var(--font-secondary);
    font-size: var(--text-headline-sm);
    font-weight: 600;
    color: var(--color-primary);
    text-decoration: none;
    display: block;
    margin-bottom: var(--spacing-md);
}
.sp-footer__desc { font-size: var(--text-body-sm); color: var(--color-on-surface-variant); line-height: 1.7; margin-bottom: var(--spacing-lg); }
.sp-footer__col-title { font-size: var(--text-label-lg); font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--color-primary); margin-bottom: var(--spacing-lg); }
.sp-footer__links { display: flex; flex-direction: column; gap: var(--spacing-sm); list-style: none; }
.sp-footer__links a { font-size: var(--text-body-sm); color: var(--color-on-surface-variant); transition: color var(--transition-fast); }
.sp-footer__links a:hover { color: var(--color-primary); }

/* Footer İletişim */
.sp-footer__contact-item { display: flex; align-items: flex-start; gap: 8px; font-size: var(--text-body-sm); color: var(--color-on-surface-variant); margin-bottom: var(--spacing-sm); }
.sp-footer__contact-item .material-symbols-outlined { font-size: 18px; color: var(--color-primary); flex-shrink: 0; margin-top: 1px; }
.sp-footer__contact-item a { color: var(--color-on-surface-variant); }
.sp-footer__contact-item a:hover { color: var(--color-primary); }

/* Footer Bottom */
.sp-footer__bottom { display: flex; align-items: center; justify-content: space-between; padding: var(--spacing-lg) 0; }
.sp-footer__copyright { font-size: var(--text-label-sm); color: var(--color-on-surface-variant); }
.sp-footer__legal-links { display: flex; gap: var(--spacing-lg); list-style: none; }
.sp-footer__legal-links a { font-size: var(--text-label-sm); color: var(--color-on-surface-variant); }
.sp-footer__legal-links a:hover { color: var(--color-primary); }

/* Footer Sosyal */
.sp-footer__social { display: flex; gap: 8px; margin-top: 4px; }
.sp-footer__social a {
    width: 40px; height: 40px;
    border-radius: var(--radius-full);
    border: 1px solid var(--color-outline-variant);
    display: flex; align-items: center; justify-content: center;
    color: var(--color-on-surface-variant);
    font-size: var(--text-label-sm);
    transition: all var(--transition-base);
    text-decoration: none;
}
.sp-footer__social a:hover { background: var(--color-primary); border-color: var(--color-primary); color: var(--color-on-primary); transform: translateY(-2px); }

/* ── SCROLL TO TOP ── */
.sp-scroll-top {
    position: fixed;
    bottom: 32px;
    right: 32px;
    width: 48px;
    height: 48px;
    background: var(--color-primary);
    color: var(--color-on-primary);
    border-radius: var(--radius-full);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: all var(--transition-base);
    box-shadow: var(--shadow-serene);
    z-index: 999;
}
.sp-scroll-top.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.sp-scroll-top:hover { background: var(--color-accent-hover); transform: translateY(-3px); box-shadow: var(--shadow-editorial); }

/* ── ADMIN BAR ── */
.admin-bar .sp-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .sp-header { top: 46px; } }

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
    .sp-hero__grid        { grid-template-columns: 1fr; }
    .sp-hero__visual      { order: -1; }
    .sp-hero__badge       { display: none; }
    .sp-bento             { grid-template-columns: 1fr; }
    .sp-bento__card--dark,
    .sp-bento__card--wide,
    .sp-bento__card--quote { grid-column: auto; grid-row: auto; }
    .sp-how__grid         { grid-template-columns: 1fr; }
    .sp-how__text         { padding-left: 0; order: -1; }
    .sp-testimonials      { grid-template-columns: 1fr; }
    .sp-testimonials__header { position: static; }
    .sp-about-hero        { grid-template-columns: 1fr; }
    .sp-approach-grid     { grid-template-columns: 1fr; }
    .sp-timeline-layout   { grid-template-columns: 1fr; }
    .sp-split-section     { grid-template-columns: 1fr; }
    .sp-split-section__text { padding: var(--spacing-lg); }
    .sp-contact-grid      { grid-template-columns: 1fr; }
    .sp-footer__top       { grid-template-columns: 1fr 1fr; }

    /* Ana Sayfa — Hero full sabit yüksekliği azalt */
    .sp-hero-full         { height: auto; min-height: 580px; }

    /* Ana Sayfa — Başlık margin'leri daralt */
    .sp-why__header       { margin-bottom: 48px; }
    .sp-testimonials__title { margin-bottom: 48px; font-size: 28px; }
    .sp-intro__grid       { gap: 48px; }
    .sp-intro__photo      { width: 100%; height: auto; object-fit: contain; }
}

@media (max-width: 768px) {
    :root {
        --spacing-3xl: 80px;
        --spacing-2xl: 40px;
    }
    .sp-container { padding-left: var(--spacing-lg); padding-right: var(--spacing-lg); }
    .sp-hamburger { display: flex !important; }
    .sp-header__menu {
        position: fixed;
        top: var(--header-height);
        left: 0; right: 0;
        background: var(--color-surface);
        border-top: 1px solid var(--color-outline-variant);
        padding: var(--spacing-lg);
        transform: translateY(-100%);
        opacity: 0;
        transition: all var(--transition-base);
        pointer-events: none;
        z-index: 999;
    }
    .sp-header__menu.is-open { transform: translateY(0); opacity: 1; pointer-events: all; }
    .sp-nav { flex-direction: column; align-items: flex-start; width: 100%; gap: 4px; }
    .sp-nav li { width: 100%; }
    .sp-nav li a { font-size: var(--text-body-md); padding: 12px 0; }
    .sp-expertise__item { flex-direction: column; gap: var(--spacing-md); }
    .sp-expertise__num,
    .sp-expertise__title-col,
    .sp-expertise__desc,
    .sp-expertise__arrow { width: 100%; }
    .sp-expertise__arrow { justify-content: flex-start; }
    .sp-form__row { grid-template-columns: 1fr; }
    .sp-how__cards { grid-template-columns: 1fr; }
    .sp-how__col--offset { padding-top: 0; }
    .sp-footer__top { grid-template-columns: 1fr; }
    .sp-footer__bottom { flex-direction: column; gap: var(--spacing-md); text-align: center; }
    .sp-timeline::before { left: 24px; transform: none; }
    .sp-timeline__item { flex-direction: column; padding-left: 60px; }
    .sp-timeline__left,
    .sp-timeline__right { width: 100%; padding: 0; text-align: left; }
    .sp-timeline__dot { left: 24px; transform: none; }
    .sp-cta-box { padding: var(--spacing-2xl) var(--spacing-lg); }
}

@media (max-width: 480px) {
    :root { --spacing-3xl: 60px; }
    .sp-hero__title       { font-size: clamp(1.8rem, 8vw, 2.5rem); }
    .sp-hero__buttons     { flex-direction: column; align-items: flex-start; }

    /* Ana Sayfa — Hero full */
    .sp-hero-full         { min-height: 0; padding: 64px 0 48px; }
    .sp-hero-full__title  { font-size: clamp(1.6rem, 7vw, 2rem); }
    .sp-hero-full__text   { padding: 20px 16px; }

    /* Tanıtım bölümü */
    .sp-intro__photo      { width: 100%; height: auto; object-fit: contain; }
    .sp-intro__heading    { font-size: 22px; }

    /* Neden Ben */
    .sp-why__title        { font-size: 28px; }
    .sp-why__header       { margin-bottom: 32px; }
    .sp-feature-card      { padding: 24px; }

    /* Danışan deneyimleri */
    .sp-testimonials__title { font-size: 22px; margin-bottom: 32px; }
    .sp-testimonial-card  { padding: 24px; }

    /* CTA */
    .sp-cta-box           { padding: 40px 16px; }
    .sp-cta-box__title    { font-size: 22px; }

    /* Footer */
    .sp-footer__nav-cols  { grid-template-columns: 1fr; }
    .sp-footer__grid      { gap: 24px; }
    .sp-footer__bottom    { flex-direction: column; gap: 12px; text-align: center; }
}

/* ==========================================================================
   ANA SAYFA CSS
   ========================================================================== */

/* ── Ambient Shadow (Stitch .ambient-shadow) ── */
.ambient-shadow {
    box-shadow: 0 10px 30px -10px rgba(69, 90, 70, 0.15);
}
.ambient-shadow-hover:hover {
    box-shadow: 0 20px 40px -12px rgba(69, 90, 70, 0.20);
    transform: translateY(-4px);
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

/* ── Organik şekil (Stitch .organic-shape) ── */
.organic-shape {
    border-radius: 60% 40% 70% 30% / 30% 60% 40% 70%;
}

/* ── Fade-in animasyonu ── */
.fade-in-up {
    animation: fadeInUp 1s ease-out forwards;
}
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ─────────────────────────────────────────────
   HEADER
───────────────────────────────────────────── */
.sp-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background: rgba(247, 250, 244, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 1px 0 var(--color-outline-variant);
    transition: all 0.3s ease;
}
.sp-header.scrolled {
    background: rgba(247, 250, 244, 0.97);
    box-shadow: 0 2px 12px rgba(69, 90, 70, 0.08);
}
.sp-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
    gap: 24px;
}
.sp-header__logo {
    text-decoration: none;
    flex-shrink: 0;
}
.sp-header__logo-text {
    font-family: var(--font-secondary);
    font-size: 20px;
    font-weight: 600;
    color: var(--color-primary);
    line-height: 1.25;
    white-space: nowrap;
}
@media (max-width: 768px) {
    .sp-header__logo-text { font-size: 15px; white-space: normal; max-width: 220px; }
}
.sp-header__nav .sp-nav__list,
.sp-header__nav .sp-nav__list > ul,
.sp-header__nav > ul {
    display: flex;
    align-items: center;
    gap: 48px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.sp-header__nav .sp-nav__list li,
.sp-header__nav .sp-nav__list > ul > li,
.sp-header__nav > ul > li {
    margin: 0;
    padding: 0;
}
.sp-header__nav .sp-nav__list li a,
.sp-header__nav .sp-nav__list > ul > li > a,
.sp-header__nav > ul > li > a {
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--color-on-surface-variant);
    text-decoration: none;
    transition: color 0.2s;
}
.sp-header__nav .sp-nav__list li a:hover,
.sp-header__nav .sp-nav__list > ul > li > a:hover,
.sp-header__nav > ul > li > a:hover,
.sp-header__nav .sp-nav__list li.current-menu-item a,
.sp-header__nav .sp-nav__list li.current_page_item a,
.sp-header__nav .sp-nav__list > ul > li.current-menu-item a,
.sp-header__nav .sp-nav__list > ul > li.current_page_item a,
.sp-header__nav > ul > li.current-menu-item a,
.sp-header__nav > ul > li.current_page_item a {
    color: var(--color-primary);
    border-bottom: 2px solid var(--color-primary);
    padding-bottom: 2px;
}
.sp-header__cta {
    flex-shrink: 0;
}
/* Hamburger */
.sp-hamburger {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 36px;
    height: 36px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
}
.sp-hamburger span {
    display: block;
    width: 100%;
    height: 2px;
    background: var(--color-primary);
    border-radius: 2px;
    transition: all 0.3s ease;
}
.sp-hamburger.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.sp-hamburger.is-active span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.sp-hamburger.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
/* Mobil menü — slide-down animasyonu */
.sp-mobile-menu {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    background: rgba(247, 250, 244, 0.98);
    border-top: 1px solid var(--color-outline-variant);
    transition: max-height 0.38s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.28s ease;
    box-shadow: 0 8px 24px rgba(45, 58, 45, 0.1);
}
.sp-mobile-menu.is-open {
    max-height: 600px;
    opacity: 1;
}
.sp-mobile-menu .sp-container {
    padding-top: 16px;
    padding-bottom: 24px;
}
.sp-mobile-menu__list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.sp-mobile-menu__list li a {
    display: block;
    padding: 14px 0;
    font-family: var(--font-primary);
    font-size: 16px;
    font-weight: 500;
    color: var(--color-on-surface);
    text-decoration: none;
    border-bottom: 1px solid var(--color-surface-container-high);
    transition: color 0.2s;
}
.sp-mobile-menu__list li a:hover { color: var(--color-primary); }
.sp-mobile-menu__list li:last-child a { border-bottom: none; }

@media (max-width: 768px) {
    .sp-header__nav { display: none; }
    .sp-hamburger   { display: flex !important; }
}

/* ─────────────────────────────────────────────
   BUTONLAR
───────────────────────────────────────────── */
.sp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px;
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.05em;
    border-radius: 8px;
    border: 1px solid transparent;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.25s ease;
    white-space: nowrap;
    line-height: 1.2;
}
.sp-btn--lg  { padding: 16px 32px; font-size: 14px; }
.sp-btn--full { width: 100%; }

.sp-btn--primary {
    background: var(--color-primary);
    color: #ffffff;
    border-color: var(--color-primary);
}
.sp-btn--primary:hover {
    background: var(--color-primary-deep, #374c38);
    border-color: var(--color-primary-deep, #374c38);
    color: #ffffff;
    opacity: 0.9;
}
.sp-btn--outline {
    background: transparent;
    color: var(--color-primary);
    border-color: var(--color-primary);
}
.sp-btn--outline:hover {
    background: rgba(69, 90, 70, 0.05);
    color: var(--color-primary);
}
.sp-btn--white {
    background: #ffffff;
    color: var(--color-primary);
    border-color: #ffffff;
}
.sp-btn--white:hover {
    background: var(--color-surface-bright, #f7faf4);
    color: var(--color-primary);
}

/* ─────────────────────────────────────────────
   HERO FULL (870px yükseklik, tam ekran arka plan)
───────────────────────────────────────────── */
.sp-site-main { padding-top: 80px; }

.sp-hero-full {
    position: relative;
    height: 870px;
    display: flex;
    align-items: center;
    overflow: hidden;
}
.sp-hero-full__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}
.sp-hero-full__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 40%;
    filter: saturate(1.12) contrast(1.06) brightness(1.04);
    transform: scale(1.02);
}
.sp-hero-full__overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            105deg,
            rgba(247, 250, 244, 0.78) 0%,
            rgba(247, 250, 244, 0.42) 38%,
            rgba(247, 250, 244, 0.12) 62%,
            transparent 85%
        ),
        linear-gradient(
            to top,
            rgba(45, 58, 45, 0.08) 0%,
            transparent 40%
        );
}
.sp-hero-full__content {
    position: relative;
    z-index: 1;
    width: 100%;
}
.sp-hero-full__text {
    max-width: 640px;
    padding: 32px 36px;
    border-radius: 16px;
    background: rgba(247, 250, 244, 0.55);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    box-shadow: 0 8px 32px rgba(45, 49, 45, 0.06);
}
.sp-hero-full__title {
    font-family: var(--font-secondary);
    font-size: 48px;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--color-primary);
    margin: 0 0 24px;
}
.sp-hero-full__desc {
    font-family: var(--font-primary);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: var(--color-on-surface-variant);
    margin: 0 0 48px;
}
.sp-hero-full__buttons {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

@media (max-width: 768px) {
    .sp-hero-full { height: auto; padding: 80px 0 60px; }
    .sp-hero-full__title { font-size: 32px; }
    .sp-hero-full__overlay {
        background: linear-gradient(
            to bottom,
            rgba(247, 250, 244, 0.55) 0%,
            rgba(247, 250, 244, 0.25) 55%,
            transparent 100%
        );
    }
    .sp-hero-full__text {
        padding: 24px 20px;
        background: rgba(247, 250, 244, 0.72);
    }
    .sp-hero-full__buttons { flex-direction: column; }
    .sp-hero-full__buttons .sp-btn { width: 100%; }
}

/* ─────────────────────────────────────────────
   TANITIM (Introduction — 2 sütun)
───────────────────────────────────────────── */
.sp-intro {
    padding: 80px 0;
    background: var(--color-surface, #f7faf4);
}
.sp-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}
.sp-intro__visual {
    position: relative;
    overflow: visible;
    max-width: 100%;
}
.sp-intro__shape-bg {
    position: absolute;
    inset: 12px;
    background: var(--color-secondary-container, #cfe2cf);
    border-radius: 60% 40% 70% 30% / 30% 60% 40% 70%;
    z-index: 0;
    opacity: 0.35;
}
.sp-intro__photo {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    aspect-ratio: unset;
    object-fit: contain;
    object-position: center;
    border-radius: 12px;
}
.sp-intro__heading {
    font-family: var(--font-secondary);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: var(--color-primary);
    margin: 0 0 24px;
}
.sp-intro__body {
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-on-surface-variant);
    margin: 0 0 16px;
}
.sp-intro__badges {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 24px;
}
.sp-badge {
    background: var(--color-secondary-container, #cfe2cf);
    color: var(--color-on-secondary-container, #546556);
    padding: 8px 16px;
    border-radius: 9999px;
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.05em;
}

@media (max-width: 768px) {
    .sp-intro { overflow-x: hidden; }
    .sp-intro__grid { grid-template-columns: 1fr; gap: 40px; }
    .sp-intro__shape-bg { display: none; }
    .sp-intro__photo {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        aspect-ratio: unset !important;
        object-fit: contain !important;
        object-position: center !important;
    }
    .sp-intro__heading { font-size: 28px; }
}

/* ─────────────────────────────────────────────
   NEDEN BEN — Bento Grid 3 Kart
───────────────────────────────────────────── */
.sp-why {
    padding: 80px 0;
    background: var(--color-surface-container-low, #f2f5ee);
}
.sp-why__header {
    text-align: center;
    margin-bottom: 80px;
}
.sp-why__title {
    font-family: var(--font-secondary);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: var(--color-primary);
    margin: 0 0 8px;
}
.sp-why__subtitle {
    font-family: var(--font-primary);
    font-size: 16px;
    color: var(--color-on-surface-variant);
    margin: 0;
}
.sp-why__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 420px));
    gap: 24px;
    align-items: start;
    justify-content: center;
}

/* Feature Card */
.sp-feature-card {
    background: var(--color-surface, #f7faf4);
    border-radius: 12px;
    padding: 48px;
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}
.sp-feature-card--primary {
    background: var(--color-primary);
    color: #ffffff;
    transform: translateY(-10px);
}
.sp-feature-card--primary .sp-feature-card__title,
.sp-feature-card--primary .sp-feature-card__body {
    color: rgba(255,255,255,0.95);
}
.sp-feature-card__icon {
    width: 48px;
    height: 48px;
    background: var(--color-primary-container, #5d735d);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-on-primary-container, #dff8dc);
    margin-bottom: 24px;
}
.sp-feature-card__icon--white {
    background: rgba(255,255,255,0.2);
    color: #ffffff;
}
.sp-feature-card__title {
    font-family: var(--font-secondary);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
    color: var(--color-primary);
    margin: 0 0 12px;
}
.sp-feature-card__body {
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-on-surface-variant);
    margin: 0;
}

@media (max-width: 900px) {
    .sp-why__grid { grid-template-columns: 1fr; }
    .sp-feature-card--primary { transform: none; }
    .sp-feature-card { padding: 32px; }
}

/* ─────────────────────────────────────────────
   DANİŞAN DENEYİMLERİ
───────────────────────────────────────────── */
.sp-testimonials {
    padding: 80px 0;
    background: var(--color-surface, #f7faf4);
    overflow: hidden;
}
.sp-testimonials__title {
    font-family: var(--font-secondary);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: var(--color-primary);
    text-align: center;
    margin: 0 0 80px;
}
.sp-testimonials__grid {
    display: flex;
    gap: 24px;
}
.sp-testimonial-card {
    flex: 1;
    background: var(--color-surface-container, #ecefe9);
    border-radius: 12px;
    padding: 48px;
    position: relative;
}
.sp-testimonial-card__quote {
    position: absolute;
    top: 16px;
    right: 16px;
    font-size: 64px;
    color: rgba(69, 90, 70, 0.15);
    line-height: 1;
}
.sp-testimonial-card__text {
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 1.6;
    font-style: italic;
    color: var(--color-on-surface-variant);
    margin: 0 0 24px;
    position: relative;
    z-index: 1;
}
.sp-testimonial-card__author {
    display: flex;
    align-items: center;
    gap: 12px;
}
.sp-testimonial-card__avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--color-secondary-container, #cfe2cf);
    flex-shrink: 0;
}
.sp-testimonial-card__name {
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--color-primary);
    margin: 0 0 2px;
}
.sp-testimonial-card__role {
    font-size: 12px;
    color: var(--color-on-surface-variant);
    margin: 0;
}

@media (max-width: 768px) {
    .sp-testimonials__grid { flex-direction: column; }
    .sp-testimonial-card { padding: 32px; }
}

/* ─────────────────────────────────────────────
   CTA BÖLÜMÜ
───────────────────────────────────────────── */
.sp-cta-section {
    padding: 80px 0;
}
.sp-cta-box {
    background: var(--color-primary-container, #5d735d);
    border-radius: 12px;
    padding: 80px;
    text-align: center;
    position: relative;
    overflow: hidden;
}
.sp-cta-box::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Ccircle cx='30' cy='30' r='2' fill='white' fill-opacity='0.08'/%3E%3C/svg%3E");
    background-size: 60px 60px;
}
.sp-cta-box__inner { position: relative; z-index: 1; }
.sp-cta-box__title {
    font-family: var(--font-secondary);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: var(--color-on-primary-container, #dff8dc);
    margin: 0 0 24px;
}
.sp-cta-box__desc {
    font-family: var(--font-primary);
    font-size: 18px;
    line-height: 1.6;
    color: var(--color-on-primary-container, #dff8dc);
    opacity: 0.92;
    margin: 0 0 48px;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 768px) {
    .sp-cta-box { padding: 48px 24px; }
    .sp-cta-box__title { font-size: 28px; }
}

/* ─────────────────────────────────────────────
   FOOTER
───────────────────────────────────────────── */
.sp-footer {
    background: var(--color-surface-container-low, #f2f5ee);
    padding: 80px 0 0;
}
.sp-footer__grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 48px;
    padding-bottom: 48px;
}
.sp-footer__logo {
    font-family: var(--font-secondary);
    font-size: 24px;
    font-weight: 600;
    color: var(--color-primary);
    text-decoration: none;
    display: block;
    margin-bottom: 16px;
}
.sp-footer__tagline {
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-on-surface-variant);
    margin: 0;
}
.sp-footer__nav-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.sp-footer__nav-heading {
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--color-primary);
    margin: 0 0 16px;
    text-transform: uppercase;
}
.sp-footer__nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.sp-footer__nav-list a {
    font-family: var(--font-primary);
    font-size: 16px;
    color: var(--color-on-surface-variant);
    text-decoration: none;
    transition: color 0.2s;
}
.sp-footer__nav-list a:hover { color: var(--color-primary); }
.sp-footer__contact-item {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    font-family: var(--font-primary);
    font-size: 16px;
    color: var(--color-on-surface-variant);
}
.sp-footer__contact-item .material-symbols-outlined { color: var(--color-primary); font-size: 20px; }
.sp-footer__social {
    display: flex;
    gap: 16px;
    margin-top: 24px;
}
.sp-footer__social-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--color-primary-container, #5d735d);
    color: var(--color-on-primary-container, #dff8dc);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: opacity 0.2s;
}
.sp-footer__social-btn:hover { opacity: 0.8; }
.sp-footer__bottom {
    border-top: 1px solid var(--color-outline-variant, #c3c8bf);
    padding: 24px 0;
    text-align: center;
    font-family: var(--font-primary);
    font-size: 16px;
    color: var(--color-on-surface-variant);
}

@media (max-width: 900px) {
    .sp-footer__grid { grid-template-columns: 1fr; gap: 32px; }
    .sp-footer { padding: 48px 0 0; }
}

/* ── Ana Sayfa 480px ── */
@media (max-width: 480px) {
    /* Hero full */
    .sp-hero-full         { min-height: 0; padding: 64px 0 48px; }
    .sp-hero-full__title  { font-size: clamp(1.5rem, 7vw, 1.9rem); }
    .sp-hero-full__text   { padding: 20px 16px; }
    .sp-hero-full__desc   { font-size: 15px; margin-bottom: 32px; }

    /* Tanıtım */
    .sp-intro__photo      { width: 100%; height: auto; object-fit: contain; }
    .sp-intro__heading    { font-size: 22px; }
    .sp-intro__grid       { gap: 32px; }

    /* Neden Ben */
    .sp-why__title        { font-size: 26px; }
    .sp-why__subtitle     { font-size: 14px; }
    .sp-why__header       { margin-bottom: 32px; }
    .sp-feature-card      { padding: 24px; }

    /* Testimonials */
    .sp-testimonials__title { font-size: 22px; margin-bottom: 32px; }
    .sp-testimonial-card  { padding: 24px; }

    /* CTA */
    .sp-cta-box           { padding: 40px 16px; }
    .sp-cta-box__title    { font-size: 22px; }
    .sp-cta-box__desc     { font-size: 15px; margin-bottom: 32px; }

    /* Footer */
    .sp-footer__nav-cols  { grid-template-columns: 1fr; }
    .sp-footer__grid      { gap: 20px; }
    .sp-footer__bottom    { flex-direction: column; gap: 8px; text-align: center; }
}

/* ==========================================================================
   HAKKIMDA SAYFASI
   ========================================================================== */

/* ── Hero ── */
.ph-hero {
    padding: 80px 0;
    background: var(--color-surface, #f7faf4);
}
.ph-hero__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}
.ph-eyebrow {
    display: inline-block;
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--color-primary);
    margin-bottom: 16px;
}
.ph-hero__name {
    font-family: var(--font-secondary);
    font-size: 48px;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--color-primary);
    margin: 0 0 20px;
}
.ph-hero__tagline {
    font-family: var(--font-primary);
    font-size: 18px;
    line-height: 1.6;
    color: var(--color-on-surface-variant);
    margin: 0 0 24px;
}
.ph-hero__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.ph-hero__cta { margin-top: 32px; }
.ph-hero__visual { position: relative; }
.ph-hero__img-wrap {
    position: relative;
    z-index: 1;
    border-radius: 12px;
    overflow: visible;
}
.ph-hero__img {
    width: 100%;
    max-width: 100%;
    height: auto;
    aspect-ratio: unset;
    object-fit: contain;
    object-position: center;
    display: block;
    border-radius: 12px;
}
.ph-hero__img-placeholder {
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 4;
    background: var(--color-secondary-container, #cfe2cf);
    border-radius: 12px;
}
.ph-hero__shape {
    position: absolute;
    bottom: -24px;
    right: -24px;
    width: 200px;
    height: 200px;
    background: var(--color-primary-fixed, #d1e9ce);
    border-radius: 60% 40% 70% 30% / 30% 60% 40% 70%;
    z-index: 0;
    opacity: 0.5;
}

/* ── Biyografi ── */
.ph-bio {
    padding: 80px 0;
    background: var(--color-surface-container-low, #f2f5ee);
}
.ph-bio__grid {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 64px;
    align-items: start;
}
.ph-bio__sidebar-title {
    font-family: var(--font-secondary);
    font-size: 20px;
    font-weight: 600;
    color: var(--color-primary);
    margin: 0 0 32px;
}
.ph-bio__stats {
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.ph-stat {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--color-outline-variant);
}
.ph-stat:last-child { border-bottom: none; padding-bottom: 0; }
.ph-stat__number {
    font-family: var(--font-secondary);
    font-size: 36px;
    font-weight: 600;
    color: var(--color-primary);
    line-height: 1;
}
.ph-stat__label {
    font-family: var(--font-primary);
    font-size: 14px;
    color: var(--color-on-surface-variant);
}
.ph-bio__content p {
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 1.8;
    color: var(--color-on-surface-variant);
    margin: 0 0 20px;
}
.ph-bio__content p:last-child { margin-bottom: 0; }

/* ── Eğitim & Sertifikalar ── */
.ph-certs {
    padding: 80px 0;
    background: var(--color-surface, #f7faf4);
}
.ph-section-title {
    font-family: var(--font-secondary);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: var(--color-primary);
    margin: 0 0 48px;
    text-align: center;
}
.ph-certs__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.ph-cert-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: var(--color-surface-container-lowest, #fff);
    border-radius: 12px;
    padding: 28px;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.ph-cert-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 40px -12px rgba(69,90,70,0.15);
}
.ph-cert-card__icon {
    width: 44px;
    height: 44px;
    background: var(--color-primary-container, #5d735d);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-on-primary-container, #dff8dc);
    flex-shrink: 0;
}
.ph-cert-card__title {
    font-family: var(--font-secondary);
    font-size: 18px;
    font-weight: 600;
    color: var(--color-primary);
    margin: 0 0 6px;
    line-height: 1.3;
}
.ph-cert-card__sub {
    font-family: var(--font-primary);
    font-size: 14px;
    color: var(--color-on-surface-variant);
    margin: 0;
}

/* ── Hizmetler ── */
.ph-services {
    padding: 80px 0;
    background: var(--color-surface-container-low, #f2f5ee);
}
.ph-services__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.ph-service-card {
    background: var(--color-surface-container-lowest, #fff);
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 4px 16px rgba(69,90,70,0.07);
    transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.ph-service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px -8px rgba(69,90,70,0.14);
}
.ph-service-card__header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
}
.ph-service-card__icon {
    width: 48px;
    height: 48px;
    background: var(--color-primary-container, #5d735d);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-on-primary-container, #dff8dc);
    flex-shrink: 0;
}
.ph-service-card__title {
    font-family: var(--font-secondary);
    font-size: 22px;
    font-weight: 600;
    color: var(--color-primary);
    margin: 0;
    line-height: 1.3;
}
.ph-service-card__body {
    font-family: var(--font-primary);
    font-size: 15px;
    line-height: 1.7;
    color: var(--color-on-surface-variant);
    margin: 0 0 12px;
}
.ph-service-card__body:last-child { margin-bottom: 0; }

/* ══════════════════════════════════════════
   DANIŞMANLIKLAR
   ══════════════════════════════════════════ */
.dn-eyebrow {
    display: inline-block;
    font-family: var(--font-primary);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--color-primary);
    padding: 7px 16px;
    border: 1px solid var(--color-secondary-fixed-dim, #b9cbb9);
    border-radius: 999px;
    background: var(--color-secondary-fixed, #d5e7d4);
}

.dn-intro { padding: 76px 0 8px; }
.dn-intro__inner { max-width: 840px; margin: 0 auto; text-align: center; }
.dn-eyebrow--center { margin-bottom: 22px; }
.dn-intro__title {
    font-family: var(--font-secondary);
    font-size: 34px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.01em;
    color: var(--color-neutral, #2d312d);
    margin: 0 0 22px;
}
.dn-divider {
    display: block;
    width: 64px;
    height: 3px;
    margin: 0 auto 26px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--color-primary), var(--color-primary-container, #5d735d));
}
.dn-intro__text {
    font-family: var(--font-primary);
    font-size: 17px;
    line-height: 1.85;
    color: var(--color-on-surface-variant);
    margin: 0 0 16px;
}
.dn-intro__text:last-child { margin-bottom: 0; }

.dn-blocks {
    padding: 60px 0 28px;
    display: flex;
    flex-direction: column;
    gap: 28px;
}
.dn-block {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 34px;
    background: var(--color-surface-container-lowest, #fff);
    border: 1px solid var(--color-outline-variant);
    border-radius: 22px;
    padding: 46px;
    box-shadow: 0 4px 18px rgba(69,90,70,0.06);
    transition: transform 0.32s cubic-bezier(0.22,1,0.36,1), box-shadow 0.32s ease, border-color 0.32s ease;
}
.dn-block::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, var(--color-primary), var(--color-primary-container, #5d735d));
    transform: scaleY(0);
    transform-origin: top;
    transition: transform 0.4s cubic-bezier(0.22,1,0.36,1);
}
.dn-block:hover {
    transform: translateY(-5px);
    box-shadow: 0 26px 52px -18px rgba(69,90,70,0.22);
    border-color: var(--color-secondary-fixed-dim, #b9cbb9);
}
.dn-block:hover::before { transform: scaleY(1); }
.dn-block__ghost {
    position: absolute;
    top: -18px;
    right: 8px;
    font-family: var(--font-secondary);
    font-size: 150px;
    font-weight: 700;
    line-height: 1;
    color: var(--color-primary);
    opacity: 0.05;
    pointer-events: none;
    user-select: none;
}
.dn-block__aside {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}
.dn-block__icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: linear-gradient(140deg, var(--color-primary), var(--color-primary-container, #5d735d));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 22px -8px rgba(69,90,70,0.5);
    transition: transform 0.32s ease;
}
.dn-block:hover .dn-block__icon { transform: scale(1.06) rotate(-3deg); }
.dn-block__icon .material-symbols-outlined {
    font-size: 33px;
    font-variation-settings: 'FILL' 1, 'wght' 300, 'GRAD' 0, 'opsz' 24;
}
.dn-block__step {
    font-family: var(--font-secondary);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1;
    color: var(--color-primary);
    opacity: 0.5;
}
.dn-block__body { position: relative; z-index: 1; }
.dn-block__title {
    font-family: var(--font-secondary);
    font-size: 25px;
    font-weight: 600;
    color: var(--color-neutral, #2d312d);
    margin: 6px 0 18px;
    line-height: 1.3;
}
.dn-block__text {
    font-family: var(--font-primary);
    font-size: 15.5px;
    line-height: 1.8;
    color: var(--color-on-surface-variant);
    margin: 0 0 14px;
}
.dn-block__text:last-child { margin-bottom: 0; }
.dn-tags-label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: var(--font-primary);
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-primary);
    margin: 26px 0 15px;
}
.dn-tags-label::after {
    content: "";
    flex: 1;
    height: 1px;
    background: var(--color-outline-variant);
}
.dn-tags { display: flex; flex-wrap: wrap; gap: 10px; }
.dn-tag {
    font-family: var(--font-primary);
    font-size: 13.5px;
    line-height: 1;
    padding: 9px 15px;
    background: var(--color-surface-container-low, #f2f5ee);
    border: 1px solid var(--color-outline-variant);
    border-radius: 999px;
    color: var(--color-on-surface);
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}
.dn-tag:hover {
    background: var(--color-primary-container, #5d735d);
    color: #fff;
    border-color: transparent;
    transform: translateY(-2px);
}

.dn-approach { padding: 92px 0; background: var(--color-surface-container-low, #f2f5ee); }
.dn-approach__head { text-align: center; margin-bottom: 48px; }
.dn-approach__title {
    font-family: var(--font-secondary);
    font-size: 34px;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: var(--color-neutral, #2d312d);
    margin: 20px 0 0;
    line-height: 1.2;
}
.dn-approach__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    max-width: 980px;
    margin: 0 auto;
}
.dn-approach-card {
    position: relative;
    overflow: hidden;
    background: var(--color-surface-container-lowest, #fff);
    border: 1px solid var(--color-outline-variant);
    border-radius: 20px;
    padding: 38px;
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}
.dn-approach-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--color-primary), var(--color-primary-container, #5d735d));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.4s cubic-bezier(0.22,1,0.36,1);
}
.dn-approach-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 22px 48px -16px rgba(69,90,70,0.18);
    border-color: var(--color-secondary-fixed-dim, #b9cbb9);
}
.dn-approach-card:hover::after { transform: scaleX(1); }
.dn-approach-card__icon {
    width: 56px;
    height: 56px;
    border-radius: 15px;
    background: linear-gradient(140deg, var(--color-primary), var(--color-primary-container, #5d735d));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
    box-shadow: 0 10px 22px -8px rgba(69,90,70,0.5);
}
.dn-approach-card__icon .material-symbols-outlined {
    font-size: 29px;
    font-variation-settings: 'FILL' 1, 'wght' 300, 'GRAD' 0, 'opsz' 24;
}
.dn-approach-card__title {
    font-family: var(--font-secondary);
    font-size: 20px;
    font-weight: 600;
    color: var(--color-neutral, #2d312d);
    margin: 0 0 12px;
    line-height: 1.3;
}
.dn-approach-card__text {
    font-family: var(--font-primary);
    font-size: 15px;
    line-height: 1.75;
    color: var(--color-on-surface-variant);
    margin: 0;
}

.dn-cta { padding: 92px 0; }
.dn-cta__panel {
    position: relative;
    overflow: hidden;
    max-width: 960px;
    margin: 0 auto;
    padding: 68px 48px;
    text-align: center;
    border-radius: 28px;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-container, #5d735d) 100%);
    box-shadow: 0 30px 60px -20px rgba(69,90,70,0.45);
}
.dn-cta__glow {
    position: absolute;
    top: -120px;
    right: -80px;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: rgba(255,255,255,0.12);
    filter: blur(30px);
    pointer-events: none;
}
.dn-cta__content { position: relative; z-index: 1; }
.dn-cta__title {
    font-family: var(--font-secondary);
    font-size: 30px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 16px;
    line-height: 1.25;
}
.dn-cta__text {
    font-family: var(--font-primary);
    font-size: 17px;
    line-height: 1.8;
    color: rgba(255,255,255,0.9);
    max-width: 640px;
    margin: 0 auto 30px;
}
.dn-cta__btn {
    background: #fff;
    color: var(--color-primary);
    border: none;
    box-shadow: 0 12px 28px -10px rgba(0,0,0,0.35);
}
.dn-cta__btn:hover {
    background: #fff;
    color: var(--color-primary);
    transform: translateY(-3px);
    box-shadow: 0 18px 36px -12px rgba(0,0,0,0.4);
}

@media (max-width: 768px) {
    .dn-intro { padding: 48px 0 0; }
    .dn-intro__title { font-size: 26px; }
    .dn-intro__text { font-size: 16px; }
    .dn-blocks { padding: 40px 0 16px; gap: 20px; }
    .dn-block {
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 30px 26px;
    }
    .dn-block__aside { flex-direction: row; align-items: center; gap: 16px; }
    .dn-block__ghost { font-size: 104px; top: -8px; right: 4px; }
    .dn-block__title { font-size: 21px; }
    .dn-approach { padding: 60px 0; }
    .dn-approach__title { font-size: 26px; }
    .dn-approach__head { margin-bottom: 36px; }
    .dn-approach__grid { grid-template-columns: 1fr; }
    .dn-approach-card { padding: 28px; }
    .dn-cta { padding: 56px 0; }
    .dn-cta__panel { padding: 48px 26px; border-radius: 22px; }
    .dn-cta__title { font-size: 24px; }
    .dn-cta__text { font-size: 16px; }
}

/* ── İletişim Şeridi ── */
.ph-contact-strip {
    margin-top: 64px;
    padding: 64px 0;
    background: var(--color-primary);
}
.ph-contact-strip__grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    flex-wrap: wrap;
}
.ph-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    color: rgba(255,255,255,0.9);
}
.ph-contact-item .material-symbols-outlined {
    font-size: 22px;
    color: rgba(255,255,255,0.7);
    margin-top: 2px;
    flex-shrink: 0;
}
.ph-contact-item__label {
    display: block;
    font-family: var(--font-primary);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.6);
    margin-bottom: 4px;
}
.ph-contact-item__value {
    display: block;
    font-family: var(--font-primary);
    font-size: 15px;
    color: rgba(255,255,255,0.95);
    text-decoration: none;
    transition: opacity 0.2s;
}
.ph-contact-item__value:hover { opacity: 0.75; }
.ph-contact-strip .sp-btn--white {
    flex-shrink: 0;
    background: #ffffff;
    color: var(--color-primary);
}

/* ── Responsive ── */
@media (max-width: 1024px) {
    .ph-hero__grid     { gap: 48px; }
    .ph-hero__name     { font-size: 40px; }
    .ph-bio__grid      { grid-template-columns: 200px 1fr; gap: 40px; }
    .ph-certs__grid    { grid-template-columns: repeat(2, 1fr); }
    .ph-services__grid { grid-template-columns: repeat(2, 1fr); }
    .ph-hero__cta      { margin-top: 24px; }
}

@media (max-width: 768px) {
    .ph-hero         { padding: 56px 0; }
    .ph-hero__grid   { grid-template-columns: 1fr; gap: 32px; }
    .ph-hero__name   { font-size: 32px; }
    .ph-hero__tagline { font-size: 16px; }
    .ph-hero__img    { width: 100% !important; height: auto !important; aspect-ratio: unset !important; object-fit: contain !important; }
    .ph-hero__visual { overflow: visible; }
    .ph-hero__img-wrap { overflow: visible; }
    .ph-hero__shape  { width: 140px; height: 140px; right: -12px; bottom: -12px; }

    .ph-bio          { padding: 48px 0; }
    .ph-bio__grid    { grid-template-columns: 1fr; gap: 24px; }

    .ph-certs        { padding: 48px 0; }
    .ph-certs__grid  { grid-template-columns: 1fr; }
    .ph-cert-card    { padding: 20px; }

    .ph-services        { padding: 48px 0; }
    .ph-services__grid  { grid-template-columns: 1fr; }
    .ph-service-card    { padding: 24px; }

    .ph-section-title { font-size: 26px; margin-bottom: 32px; }

    .ph-contact-strip { padding: 48px 0; }
    .ph-contact-strip__grid { flex-direction: column; align-items: flex-start; gap: 20px; }
    .ph-contact-strip .sp-btn--primary { width: 100%; justify-content: center; }
    .ph-contact-item__value { word-break: break-word; overflow-wrap: break-word; }
}

@media (max-width: 480px) {
    .ph-hero         { padding: 40px 0; }
    .ph-hero__name   { font-size: 28px; }
    .ph-hero__tagline { font-size: 15px; }
    .ph-hero__img    { width: 100% !important; height: auto !important; object-fit: contain !important; }
    .ph-hero__shape  { display: none; }
    .ph-hero__badges { gap: 6px; }

    .ph-bio          { padding: 40px 0; }
    .ph-bio__grid    { gap: 20px; }
    .ph-bio__stats   { flex-direction: row; flex-wrap: wrap; gap: 16px; }
    .ph-stat         { padding-bottom: 0; border-bottom: none; flex: 1 1 80px; }
    .ph-stat__number { font-size: 28px; }

    .ph-certs        { padding: 40px 0; }
    .ph-cert-card    { padding: 16px; gap: 12px; }
    .ph-cert-card__title { font-size: 16px; }

    .ph-services     { padding: 40px 0; }
    .ph-service-card { padding: 20px; }
    .ph-service-card__title { font-size: 19px; }

    .ph-section-title { font-size: 22px; margin-bottom: 24px; }

    .ph-contact-strip { padding: 36px 0; }
    .ph-contact-strip__grid { gap: 16px; }
}

/* ==========================================================================
   HAKKIMDA — Özel Scroll Animasyonları
   ========================================================================== */

/* Hakkımda sayfasında .sp-reveal biraz farklı kayar */
.page-hakkimda .sp-reveal {
    opacity: 0;
    transform: translateY(32px);
    transition:
        opacity  0.75s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--reveal-delay, 0ms);
}
.page-hakkimda .sp-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Sol sütun (sidebar, görsel) → soldan gelir */
.page-hakkimda .ph-hero__text.sp-reveal,
.page-hakkimda .ph-bio__sidebar.sp-reveal {
    transform: translateX(-28px) translateY(16px);
}
.page-hakkimda .ph-hero__text.sp-reveal.is-visible,
.page-hakkimda .ph-bio__sidebar.sp-reveal.is-visible {
    transform: translateX(0) translateY(0);
}

/* Sağ sütun (görsel, içerik) → sağdan gelir */
.page-hakkimda .ph-hero__visual.sp-reveal,
.page-hakkimda .ph-bio__content.sp-reveal {
    transform: translateX(28px) translateY(16px);
}
.page-hakkimda .ph-hero__visual.sp-reveal.is-visible,
.page-hakkimda .ph-bio__content.sp-reveal.is-visible {
    transform: translateX(0) translateY(0);
}

/* Sertifika ve servis kartları → aşağıdan yukarı */
.page-hakkimda .ph-cert-card.sp-reveal,
.page-hakkimda .ph-service-card.sp-reveal {
    transform: translateY(40px);
}
.page-hakkimda .ph-cert-card.sp-reveal.is-visible,
.page-hakkimda .ph-service-card.sp-reveal.is-visible {
    transform: translateY(0);
}

/* İletişim şeridi → yukarıdan aşağı (farklı yön) */
.page-hakkimda .ph-contact-strip.sp-reveal {
    transform: translateY(-20px);
    opacity: 0;
}
.page-hakkimda .ph-contact-strip.sp-reveal.is-visible {
    transform: translateY(0);
    opacity: 1;
}

/* ── PROJE SEMİNER SAYFASI ── */
.ps-hero {
    padding: 80px 0 60px;
    background: var(--color-surface, #f7faf4);
    text-align: center;
}
.ps-hero__title {
    font-family: var(--font-secondary);
    font-size: 48px;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--color-primary);
    margin: 16px 0 20px;
}
.ps-hero__desc {
    font-family: var(--font-primary);
    font-size: 18px;
    line-height: 1.6;
    color: var(--color-on-surface-variant);
    max-width: 600px;
    margin: 0 auto;
}
.ps-content {
    padding: 80px 0;
    background: var(--color-surface-container-low, #f2f5ee);
}
.ps-placeholder {
    text-align: center;
    max-width: 480px;
    margin: 0 auto;
    padding: 64px 40px;
    background: var(--color-surface-container-lowest, #fff);
    border-radius: 16px;
    box-shadow: var(--shadow-ambient);
}
.ps-placeholder__icon {
    width: 72px;
    height: 72px;
    background: var(--color-primary-container, #5d735d);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-on-primary-container, #dff8dc);
    margin: 0 auto 24px;
    font-size: 32px;
}
.ps-placeholder__icon .material-symbols-outlined { font-size: 32px; }
.ps-placeholder__title {
    font-family: var(--font-secondary);
    font-size: 28px;
    font-weight: 600;
    color: var(--color-primary);
    margin: 0 0 16px;
}
.ps-placeholder__body {
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-on-surface-variant);
    margin: 0 0 32px;
}

/* ── Proje Listesi (zig-zag) ── */
.ps-projects {
    padding: 88px 0;
    background: var(--color-surface-container-low, #f2f5ee);
}
.ps-project {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 64px;
}
.ps-project + .ps-project { margin-top: 96px; }
.ps-project--reverse .ps-project__media { order: 2; }
.ps-project--reverse .ps-project__body  { order: 1; }

.ps-project__media { position: relative; }
.ps-project__img-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 30px 60px -22px rgba(45,49,45,0.35);
    background: linear-gradient(160deg, #ffffff 0%, var(--color-surface-container-low, #f2f5ee) 100%);
    padding: 16px;
}
.ps-project__img {
    max-width: 100%;
    max-height: 600px;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 14px;
    display: block;
    transition: transform 0.6s cubic-bezier(0.22,1,0.36,1);
}
.ps-project:hover .ps-project__img { transform: scale(1.03); }

/* Kaydırmalı galeri (slider) */
.ps-project__img-wrap--slider { padding: 16px; align-items: stretch; }
.ps-slider {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 14px;
    background: linear-gradient(160deg, #ffffff 0%, var(--color-surface-container-low, #f2f5ee) 100%);
}
.ps-slider__track {
    display: flex;
    transition: transform 0.55s cubic-bezier(0.22,1,0.36,1);
    touch-action: pan-y;
}
.ps-slider__slide {
    min-width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 5;
}
.ps-slider__img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
    -webkit-user-drag: none;
    user-select: none;
}
.ps-slider__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 50%;
    background: rgba(255,255,255,0.92);
    color: var(--color-primary);
    cursor: pointer;
    box-shadow: 0 6px 18px -4px rgba(45,49,45,0.3);
    transition: background 0.2s ease, transform 0.2s ease;
    z-index: 2;
}
.ps-slider__nav:hover { background: #fff; transform: translateY(-50%) scale(1.08); }
.ps-slider__nav--prev { left: 14px; }
.ps-slider__nav--next { right: 14px; }
.ps-slider__nav .material-symbols-outlined { font-size: 26px; }
.ps-slider__dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 14px;
    display: flex;
    justify-content: center;
    gap: 8px;
    z-index: 2;
}
.ps-slider__dot {
    width: 9px;
    height: 9px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(255,255,255,0.65);
    box-shadow: 0 1px 4px rgba(45,49,45,0.35);
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease;
}
.ps-slider__dot.is-active {
    background: var(--color-primary);
    transform: scale(1.25);
}
.ps-project__label {
    display: inline-block;
    font-family: var(--font-primary);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--color-primary);
    padding: 7px 16px;
    border: 1px solid var(--color-secondary-fixed-dim, #b9cbb9);
    border-radius: 999px;
    background: var(--color-secondary-fixed, #d5e7d4);
    margin-bottom: 20px;
}
.ps-project__title {
    font-family: var(--font-secondary);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: var(--color-neutral, #2d312d);
    margin: 0 0 20px;
}
.ps-project__divider {
    display: block;
    width: 56px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--color-primary), var(--color-primary-container, #5d735d));
    margin-bottom: 22px;
}
.ps-project__desc {
    font-family: var(--font-primary);
    font-size: 17px;
    line-height: 1.85;
    color: var(--color-on-surface-variant);
    margin: 0;
}

/* ── Proje Seminer CTA ── */
.ps-cta { padding: 96px 0; }
.ps-cta__panel {
    position: relative;
    overflow: hidden;
    max-width: 960px;
    margin: 0 auto;
    padding: 68px 48px;
    text-align: center;
    border-radius: 28px;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-container, #5d735d) 100%);
    box-shadow: 0 30px 60px -20px rgba(69,90,70,0.45);
}
.ps-cta__glow {
    position: absolute;
    top: -120px;
    left: -80px;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: rgba(255,255,255,0.12);
    filter: blur(30px);
    pointer-events: none;
}
.ps-cta__content { position: relative; z-index: 1; }
.ps-cta__title {
    font-family: var(--font-secondary);
    font-size: 30px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 16px;
    line-height: 1.25;
}
.ps-cta__text {
    font-family: var(--font-primary);
    font-size: 17px;
    line-height: 1.8;
    color: rgba(255,255,255,0.9);
    max-width: 620px;
    margin: 0 auto 30px;
}
.ps-cta__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    color: var(--color-primary);
    border: none;
    box-shadow: 0 12px 28px -10px rgba(0,0,0,0.35);
}
.ps-cta__btn:hover {
    background: #fff;
    color: var(--color-primary);
    transform: translateY(-3px);
    box-shadow: 0 18px 36px -12px rgba(0,0,0,0.4);
}

@media (max-width: 900px) {
    .ps-project {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .ps-project + .ps-project { margin-top: 64px; }
    .ps-project--reverse .ps-project__media { order: 0; }
    .ps-project--reverse .ps-project__body  { order: 0; }
    .ps-project__img { max-height: 520px; }
}
@media (max-width: 768px) {
    .ps-hero { padding: 56px 0 40px; }
    .ps-hero__title { font-size: 34px; }
    .ps-hero__desc { font-size: 16px; }
    .ps-projects { padding: 56px 0; }
    .ps-project__img-wrap { padding: 10px; }
    .ps-project__img { max-height: 460px; }
    .ps-project__title { font-size: 26px; }
    .ps-project__desc { font-size: 16px; }
    .ps-cta { padding: 56px 0; }
    .ps-cta__panel { padding: 48px 26px; border-radius: 22px; }
    .ps-cta__title { font-size: 24px; }
    .ps-cta__text { font-size: 16px; }
}

/* ==========================================================================
   ERİŞİLEBİLİRLİK — Azaltılmış Hareket
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
    /* Scroll reveal animasyonlarını devre dışı bırak */
    .sp-reveal,
    .page-hakkimda .sp-reveal {
        transition: none !important;
        transform: none !important;
        opacity: 1 !important;
    }

    /* Hero görsel zoom efektini devre dışı bırak */
    .sp-hero-full__img       { transform: none !important; }
    .sp-hero__img-wrap:hover .sp-hero__img { transform: none !important; }

    /* Hover transform efektlerini devre dışı bırak */
    .sp-step-card:hover,
    .sp-approach-card:hover,
    .ph-cert-card:hover,
    .ph-service-card:hover,
    .ambient-shadow-hover:hover,
    .sp-footer__social a:hover { transform: none !important; }

    /* Zıplayan scroll ok animasyonunu devre dışı bırak */
    .sp-hero__scroll { animation: none !important; }

    /* Genel transition'ları kısalt */
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
