body.f590-home {
  --f590-paper: #f8f5ee;
  --f590-ink: #172e36;
  --f590-muted: #506261;
  --f590-line: #dedbd0;
  background: var(--f590-paper);
  color: var(--f590-ink);
}
.f590-wrap { width: min(1120px, calc(100% - 48px)); margin-inline: auto; }
.f590-header { position: sticky; top: 0; z-index: 70; background: var(--f590-paper); border-bottom: 1px solid var(--f590-line); }
.f590-header-inner { min-height: 76px; display: flex; justify-content: space-between; align-items: center; }
.f590-brand img { display: block; width: 58px; height: 58px; object-fit: contain; }
.f590-menu { position: relative; }
.f590-menu summary { list-style: none; cursor: pointer; }
.f590-menu summary::-webkit-details-marker { display: none; }
.f590-menu > summary { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 6px 13px; border: 1px solid #bfc4b9; border-radius: 999px; font-weight: 650; }
.f590-menu > summary:hover { background: #eae8df; }
.f590-menu-panel { position: absolute; top: calc(100% + 9px); right: 0; width: min(330px, calc(100vw - 36px)); max-height: calc(100dvh - 90px); overflow: auto; padding: 8px 15px; border: 1px solid var(--f590-line); border-radius: 12px; background: var(--f590-paper); box-shadow: 0 16px 42px #172e362c; }
.f590-menu[open] > .f590-menu-panel { animation: f590-menu-in 210ms cubic-bezier(.2,.8,.2,1) both; }
@keyframes f590-menu-in { from { opacity: 0; transform: translateY(-6px) scale(.985); } }
.f590-menu-panel a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 47px; padding: 7px 4px; color: var(--f590-ink); text-decoration: none; font-weight: 600; }
.f590-menu-panel a + a { border-top: 1px solid var(--f590-line); }
.f590-menu-panel a:hover { color: #a13f28; }
.f590-menu:not([open]) .f590-menu-close, .f590-menu[open] .f590-menu-open { display: none; }
.f590-menu-open, .f590-menu-close, .f590-menu-instagram > span:first-child { display: inline-flex; align-items: center; gap: 8px; }
.cie-instagram-icon { display:inline-grid; place-items:center; width:24px; height:24px; overflow:hidden; border-radius:6px; flex:none; }
.cie-instagram-icon img { display:block; width:40px; height:40px; max-width:none; margin:-8px; }
.f590-home #konum { scroll-margin-top: 86px; }
.f590-home :is(.f590-header,.f590-hero,.f590-services) :focus-visible { outline: 2px solid #a13f28; outline-offset: 3px; }
.f590-hero { text-align: center; padding-block: clamp(42px, 7vw, 90px); }
.f590-home .f590-eyebrow { margin: 0 0 9px; color: #a13f28; font-size: .78rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.f590-home .f590-hero h1, .f590-home .f590-services h2 { margin: 0; color: var(--f590-ink); font-family: Georgia,serif; font-weight: 500; line-height: 1.04; letter-spacing: -.045em; }
.f590-home .f590-hero h1 { max-width: 17ch; margin-inline: auto; font-size: clamp(2.5rem, 6vw, 4.9rem); text-wrap: balance; }
.f590-lead { max-width: 44ch; margin: 16px auto 18px; color: var(--f590-muted); line-height: 1.6; }
.f590-action { display: inline-flex; align-items: center; gap: 12px; min-height: 48px; padding: 8px 16px; border-radius: 8px; background: var(--f590-ink); color: #fff; text-decoration: none; font-weight: 650; transition: background 160ms,transform 160ms; }
.f590-action:hover { background: #29474f; }
.f590-action:active { transform: translateY(1px); }
.f590-services { background: #eef0e7; border-block: 1px solid var(--f590-line); padding-block: clamp(26px,5vw,58px); }
.f590-home .f590-services h2 { font-size: clamp(1.9rem,4vw,3rem); }
.f590-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin-top: 18px; }
.f590-cards article { padding: 16px 18px; border: 1px solid #d4d9cd; border-radius: 9px; background: #fbfaf6; }
.f590-home .f590-cards h3 { margin: 0; font-size: 1.06rem; color: var(--f590-ink); }
.f590-cards h3 a { color: inherit; text-underline-offset: .2em; }
.f590-cards p { margin: 6px 0 0; color: var(--f590-muted); line-height: 1.55; }
.f590-home #contact { background: #111d33; }
.f590-home:has(.f590-menu[open]) .f578-quick-contact { visibility: hidden; }
@media (max-width: 680px) {
  .f590-wrap { width: calc(100% - 36px); }
  .f590-header-inner { min-height: 66px; }
  .f590-brand img { width: 51px; height: 51px; }
  .f590-cards { grid-template-columns: minmax(0,1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .f590-menu[open] > .f590-menu-panel { animation: none; }
  .f590-action { transition: none; }
}

.f590-office { padding-block: clamp(28px, 5vw, 58px); }
.f590-home .f590-office h2 { margin: 0 0 16px; color: var(--f590-ink); font: 500 clamp(1.8rem, 4vw, 2.65rem)/1.1 Georgia, serif; }
.f590-office-gallery { max-width: 800px; margin-inline: auto; }
.f590-office-grid figure { margin: 0 0 12px; overflow: hidden; border-radius: 12px; background: #eae8df; }
.f590-office-grid img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.f590-office-controls:not([hidden]) { display: flex; align-items: center; justify-content: center; gap: 14px; }
.f590-office-controls button { min-width: 44px; min-height: 44px; border: 1px solid var(--f590-line); border-radius: 50%; background: #fffdf9; color: var(--f590-ink); font-size: 1.2rem; cursor: pointer; }
.f590-office-controls button:hover { background: #eae8df; }
.f590-office-controls button:focus-visible { outline: 2px solid #a13f28; outline-offset: 3px; }
.f590-office-controls [role="status"] { min-width: 4ch; text-align: center; font-variant-numeric: tabular-nums; }

/* F592: one-step public Academy access */
.f590-academy-link{margin-left:auto;margin-right:18px;color:inherit;font-weight:650;text-decoration:none}.f590-academy-link:hover{text-decoration:underline}
