/* ── Website kit responsive layout ────────────────────────────────────────
   Grid columns live here as classes so they reflow.
   Two override channels target the SAME classes:
     • @media   → drives the LIVE site (width == viewport)
     • @container site → drives the FIGMA EXPORT frames (fixed-width wrappers
       marked .ek-frame with container-type). This lets a 390px export frame
       reflow even on a desktop viewport. */

/* Base (desktop) column templates */
.ek-cols-2  { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ek-cols-3  { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ek-cols-4  { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ek-ig      { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ek-hero    { grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); }
.ek-about   { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); }
.ek-contact { grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr); }
.ek-feature { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
.ek-seminar { grid-template-columns: 160px 1fr auto; }

/* Figma export frame = its own size-container */
.ek-frame { container-type: inline-size; container-name: site; }

/* ── Tablet breakpoint ── */
@media (max-width: 900px) {
  .ek-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ek-cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ek-ig     { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ek-hero, .ek-about, .ek-contact, .ek-feature { grid-template-columns: minmax(0, 1fr); }
  .ek-seminar { grid-template-columns: minmax(0, 1fr); text-align: center; gap: 20px; }
}
@container site (max-width: 900px) {
  .ek-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ek-cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ek-ig     { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ek-hero, .ek-about, .ek-contact, .ek-feature { grid-template-columns: minmax(0, 1fr); }
  .ek-seminar { grid-template-columns: minmax(0, 1fr); text-align: center; gap: 20px; }
}

/* ── Phone breakpoint ── */
@media (max-width: 600px) {
  .ek-cols-2, .ek-cols-3, .ek-cols-4, .ek-feature { grid-template-columns: minmax(0, 1fr); }
  .ek-ig { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ek-resp-pad { padding-left: 22px !important; padding-right: 22px !important; }
  .ek-resp-py  { padding-top: 52px !important; padding-bottom: 52px !important; }
}
@container site (max-width: 600px) {
  .ek-cols-2, .ek-cols-3, .ek-cols-4, .ek-feature { grid-template-columns: minmax(0, 1fr); }
  .ek-ig { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ek-resp-pad { padding-left: 22px !important; padding-right: 22px !important; }
  .ek-resp-py  { padding-top: 52px !important; padding-bottom: 52px !important; }
}

/* ── Header: desktop nav vs mobile burger ── */
.ek-nav-desktop { display: flex; }
.ek-burger { display: none; }
@media (max-width: 820px) {
  .ek-nav-desktop { display: none; }
  .ek-burger { display: inline-flex; }
  .ek-header-cta { display: none; }
}
@container site (max-width: 820px) {
  .ek-nav-desktop { display: none; }
  .ek-burger { display: inline-flex; }
  .ek-header-cta { display: none; }
}

/* Mobile menu sheet */
.ek-mobile-menu { display: flex; }

/* ── Phone overflow guards ── */
@media (max-width: 600px) {
  .ek-float-badge { left: 10px !important; right: auto !important; bottom: 12px !important; }
}
@container site (max-width: 600px) {
  .ek-float-badge { left: 10px !important; right: auto !important; bottom: 12px !important; }
}


/* Long Turkish compounds and handles (@dr.psk.ervakiray) otherwise set a
   min-content floor wider than a phone. */
h1, h2, h3, h4 { overflow-wrap: break-word; word-break: break-word; }
/* Section-head + action rows: let both children shrink below min-content. */
.ek-headrow > * { min-width: 0; }

/* Stable image ratios: explicit file dimensions prevent layout shift, while
   height:auto stops those attributes from stretching responsive images. */
.ek-portrait-image {
  height: auto;
  border-radius: 180px 180px var(--radius-xl) var(--radius-xl);
  overflow: hidden;
}
.ek-instagram-image {
  height: auto;
  border-radius: 14px;
  overflow: hidden;
}

.ek-rail{scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.ek-rail::-webkit-scrollbar{height:6px}
.ek-rail::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:999px}

/* Book — a compact author-work feature, deliberately distinct from services. */
.ek-book-section{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--surface-page) 0%,var(--mint-50) 100%);border-bottom:1px solid var(--border-subtle)}
.ek-book-grid{position:relative;z-index:1;max-width:var(--container-lg);margin:0 auto;padding:82px 40px;display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:72px;align-items:center}
.ek-book-visual{position:relative;min-height:390px;display:flex;align-items:center;justify-content:center}
.ek-book-shape{position:absolute;display:block;pointer-events:none}
.ek-book-shape-one{width:82%;aspect-ratio:1;border-radius:46% 54% 56% 44% / 52% 44% 56% 48%;background:var(--blue-100);transform:rotate(-8deg);left:1%;top:1%}
.ek-book-shape-two{width:44%;aspect-ratio:1;border-radius:50%;background:var(--mint-200);right:0;bottom:0;filter:blur(1px);opacity:.7}
.ek-book-cover{position:relative;z-index:1;width:min(100%,430px);height:auto;aspect-ratio:500/461;object-fit:cover;display:block;border-radius:10px;box-shadow:0 24px 55px rgba(39,57,85,.22);transform:rotate(-1.5deg)}
.ek-book-copy h2{font-size:var(--text-4xl);line-height:1.08;margin:18px 0 18px}
.ek-book-copy>p{font-size:16px;line-height:1.75;color:var(--text-secondary);margin:0 0 14px;max-width:590px}
.ek-book-copy .ek-book-lead{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.45;color:var(--text-primary)}
.ek-book-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin:26px 0 30px;padding-top:22px;border-top:1px solid var(--border-subtle)}
.ek-book-meta span{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:var(--text-secondary)}
.ek-book-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 20px;border-radius:var(--radius-md);background:var(--color-primary);color:var(--white);font-size:15px;font-weight:600;text-decoration:none;box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease-soft),box-shadow var(--dur-fast) var(--ease-soft),background var(--dur-fast) var(--ease-soft)}
.ek-book-cta:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--white)}
@media(max-width:900px){.ek-book-grid{grid-template-columns:minmax(0,1fr);gap:42px}.ek-book-visual{min-height:0}.ek-book-cover{width:min(100%,520px)}}
@container site (max-width:900px){.ek-book-grid{grid-template-columns:minmax(0,1fr);gap:42px}.ek-book-visual{min-height:0}.ek-book-cover{width:min(100%,520px)}}
@media(max-width:600px){.ek-book-grid{gap:34px}.ek-book-cover{border-radius:8px}.ek-book-copy h2{font-size:36px}.ek-book-copy .ek-book-lead{font-size:22px}.ek-book-meta{align-items:flex-start;flex-direction:column}.ek-book-cta{width:100%}}
@container site (max-width:600px){.ek-book-grid{gap:34px}.ek-book-cover{border-radius:8px}.ek-book-copy h2{font-size:36px}.ek-book-copy .ek-book-lead{font-size:22px}.ek-book-meta{align-items:flex-start;flex-direction:column}.ek-book-cta{width:100%}}

/* Wix Blog */
.ek-blog-page{max-width:var(--container-xl);margin:0 auto;padding:64px 40px 96px}
.ek-blog-status{min-height:260px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--text-muted);font-size:15px}
.ek-blog-spinner{width:19px;height:19px;border:2px solid var(--border-subtle);border-top-color:var(--blue-500);border-radius:50%;animation:ek-spin .8s linear infinite}
@keyframes ek-spin{to{transform:rotate(360deg)}}
.ek-blog-empty{margin-top:42px;min-height:260px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-paper);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:38px}
.ek-blog-empty h3{font-size:var(--text-xl);margin:16px 0 8px}
.ek-blog-empty p{max-width:520px;margin:0 0 22px;color:var(--text-secondary);line-height:1.7}
.ek-blog-feature,.ek-blog-card{appearance:none;border:0;background:transparent;padding:0;text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer}
.ek-blog-feature{display:block;margin-top:36px}
.ek-blog-feature-grid{display:grid;gap:0}
.ek-blog-image,.ek-blog-placeholder{display:block;width:100%;height:100%;min-height:270px;object-fit:cover;background:linear-gradient(145deg,var(--blue-50),var(--blue-100));}
.ek-blog-placeholder{display:flex;align-items:center;justify-content:center}
.ek-blog-feature-copy{padding:var(--space-10);display:flex;flex-direction:column;justify-content:center}
.ek-blog-feature-copy h2{font-size:var(--text-2xl);line-height:1.2;margin:12px 0}
.ek-blog-feature-copy p{font-size:16px;line-height:1.7;color:var(--text-secondary);margin:0 0 20px}
.ek-blog-feature-copy>span{display:inline-flex;align-items:center;gap:7px;color:var(--text-link);font-weight:600;font-size:15px}
.ek-blog-meta{font-size:13px;color:var(--text-muted);line-height:1.5}
.ek-blog-grid{display:grid;gap:24px;margin-top:24px}
.ek-blog-card .ek-blog-image,.ek-blog-card .ek-blog-placeholder{height:220px;min-height:0}
.ek-blog-card-copy{padding:24px}
.ek-blog-card-copy h3{font-size:20px;line-height:1.25;margin:10px 0 7px}
.ek-blog-card-copy p{font-size:14.5px;line-height:1.65;color:var(--text-secondary);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ek-article-status{margin:60px auto 96px;max-width:var(--container-md)}
.ek-article-head{max-width:var(--container-md);margin:0 auto;padding:56px 40px 0}
.ek-back{appearance:none;background:transparent;border:0;padding:0;cursor:pointer;color:var(--text-muted);font:500 14.5px var(--font-body);display:inline-flex;align-items:center;gap:7px;margin-bottom:28px}
.ek-article-head h1{font-size:var(--text-4xl);line-height:1.08;margin:14px 0 0}
.ek-article-author{display:flex;align-items:center;gap:12px;margin-top:28px;padding-bottom:32px;border-bottom:1px solid var(--border-subtle)}
.ek-article-author strong,.ek-article-author span{display:block}
.ek-article-author strong{font-size:15px}.ek-article-author span{font-size:13px;color:var(--text-muted);margin-top:3px}
.ek-article-hero{max-width:var(--container-lg);margin:36px auto;border-radius:var(--radius-xl);aspect-ratio:21/9;overflow:hidden}
.ek-article-hero img{width:100%;height:100%;object-fit:cover;display:block}
.ek-article-body{max-width:var(--container-md);margin:0 auto;padding:0 40px 96px;font-size:18px;line-height:1.8;color:var(--text-secondary)}
.ek-article-body h2,.ek-article-body h3,.ek-article-body h4{color:var(--text-primary);margin:40px 0 12px;line-height:1.25}
.ek-article-body p{margin:0 0 22px}.ek-article-body blockquote{border-left:3px solid var(--blue-400);margin:28px 0;padding:8px 0 8px 24px;font-family:var(--font-display);font-size:22px;color:var(--text-primary)}
.ek-article-body>img,.ek-article-body p img{max-width:100%;height:auto;border-radius:var(--radius-md)}
.ek-article-cta{margin-top:48px;padding:28px 32px;background:var(--surface-paper);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.ek-article-cta h3{font-size:20px;margin:0}.ek-article-cta p{font-size:14.5px;margin:4px 0 0}
.ek-article-cta-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.ek-course-anchor{height:100%;scroll-margin-top:28px}
@media(max-width:600px){.ek-blog-page{padding-top:46px;padding-bottom:72px}.ek-blog-feature-copy{padding:26px}.ek-blog-image,.ek-blog-placeholder{min-height:210px}.ek-blog-card .ek-blog-image,.ek-blog-card .ek-blog-placeholder{height:190px}.ek-article-head{padding-top:38px}.ek-article-head h1{font-size:36px}.ek-article-hero{margin:28px 22px;border-radius:var(--radius-lg);aspect-ratio:16/10}.ek-article-body{font-size:17px}.ek-article-cta{padding:24px}}
