/* Render-led refinement. Existing palette and self-hosted fonts only. */
:root { --fs-h1:clamp(2.35rem,4.6vw,4rem); --fs-h2:clamp(1.65rem,3vw,2.5rem); --fs-body:1.0625rem; --radius:0.2rem; }
body { line-height:1.7; }
h1,h2 { font-weight:500; }
h3 { font-family:var(--font-body); font-weight:600; }
.site-header__inner { padding-block:1.125rem; }
.brand__name { font-size:1.25rem; }
.brand__title { font-size:0.8125rem; letter-spacing:0.06em; }
.primary-nav .menu a { font-size:0.9375rem; }
.primary-nav .menu a[aria-current="page"] { text-decoration:underline; text-underline-offset:0.4em; }
.btn { border-radius:0.2rem; min-height:48px; padding:0.75rem 1.5rem; box-shadow:none; font-weight:600; }
.btn:hover { transform:none; }
.hero { padding-block:6rem 5rem; background:var(--bg); border-bottom:1px solid var(--border); }
.hero__inner { position:relative; }
.hero__title { max-width:18ch; font-size:clamp(2.6rem,5.4vw,4.75rem); line-height:1.08; letter-spacing:-0.035em; }
.hero__subtitle { max-width:48ch; margin-top:1.75rem; font-size:1.1875rem; line-height:1.65; color:var(--text-secondary); }
.hero__watermark { display:none; }
.hero__actions { margin-top:2rem; }
.hero__heading { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-5); }
.hero__portrait { width:100%; max-width:176px; }
.hero__portrait picture, .hero__portrait img { display:block; width:100%; height:auto; border-radius:var(--radius); }
.hero__portrait img { aspect-ratio:auto; object-fit:contain; } /* Senem: fotoğraf kırpılmaz, logo tam görünür */
@media(min-width:768px) {
 .hero__heading { flex-direction:row; align-items:center; gap:var(--space-7); }
 .hero__portrait { flex:0 0 280px; width:280px; max-width:280px; }
}
.trust-strip { background:var(--surface); border-bottom:1px solid var(--border); }
.trust-strip__inner { padding-block:1.5rem; font-size:0.9375rem; color:var(--text-secondary); }
.section { padding-block:5.5rem; }
.section__head { margin-bottom:2.5rem; }
.section__lede { margin-top:1rem; color:var(--text-secondary); }
.section--tint-blue { background:var(--blue-light); }
.section--tint-green { background:var(--bg); border-bottom:1px solid var(--border); }
.service-grid { gap:0; border-top:1px solid var(--border); }
.service-card { border:0; border-bottom:1px solid var(--border); border-radius:0; background:transparent; padding:2rem 1.5rem 2rem 0; box-shadow:none; }
.service-card:hover { transform:none; box-shadow:none; background:var(--primary-light); }
.service-card h3 { font-family:var(--font-heading); font-size:1.5rem; margin-bottom:0.8rem; }
.service-card p { color:var(--text-secondary); }
.service-card p strong { color:var(--primary-dark); font-weight:600; }
.service-card .motif-leaf { display:none; }
.about-card { gap:4rem; align-items:center; }
.about-card__media { border-radius:0; }
.about-card__media img { border-radius:0; aspect-ratio:4/5; object-fit:cover; object-position:50% 45%; }
.about-card h2 { margin-bottom:1.5rem; }
.approach-block { gap:2.5rem; }
.motif-curve-transition { display:none; }
.site-main > .container { padding-top:4.5rem; padding-bottom:5.5rem; }
.page-header { margin-bottom:2.75rem; padding-bottom:2rem; border-bottom:1px solid var(--border); }
.page-title { max-width:24ch; }
.entry-content { max-width:65ch; }
.entry-content > .lead { margin-bottom:2.5rem; font-size:1.25rem; color:var(--text-secondary); line-height:1.6; }
.entry-content h2 { margin-top:3rem; margin-bottom:1.25rem; font-size:clamp(1.65rem,2.5vw,2rem); }
.entry-content h3 { margin-top:1.75rem; margin-bottom:0.75rem; }
.entry-content p { margin-bottom:1.25rem; }
.entry-content li { margin-bottom:0.65rem; }
.entry-content > section { margin-top:2.75rem; }
.service-page .entry-content > section { padding-top:0.5rem; border-top:1px solid var(--border); }
.service-page .entry-content > section h2 { margin-top:1.5rem; }
.service-cta { margin-top:2.75rem; padding-top:2rem; border-top:1px solid var(--border); gap:0.75rem; }
.placeholder-note { font-family:var(--font-body); font-style:normal; font-size:0.9375rem; line-height:1.6; color:var(--text-secondary); background:var(--primary-light); border:0; border-left:2px solid var(--primary); border-radius:0; padding:0.875rem 1rem; overflow-wrap:anywhere; }
span.placeholder-note { display:inline-block; max-width:100%; padding:0.15rem 0.4rem; margin:0.2rem 0.25rem; vertical-align:baseline; }
.page-figure { margin-bottom:2.5rem; max-width:30rem; }
.page-figure img { border-radius:0; aspect-ratio:4/3; object-fit:cover; object-position:50% 42%; }
.office-gallery { gap:1rem; margin-block:2.5rem; }
.office-gallery img { border-radius:0; }
.area-list dt { padding-top:1.5rem; border-top:1px solid var(--border); font-weight:600; }
.area-list dd { color:var(--text-secondary); margin-bottom:1.5rem; }
.contact-panel { border-radius:0; border:1px solid var(--border); box-shadow:none; padding:3rem; background:var(--primary-light); }
.contact-panel h2 { margin-bottom:1.5rem; }
.site-footer { padding-top:3.5rem; background:var(--bg); border-top:1px solid var(--border); }
.site-footer__grid { gap:3rem; }
.site-footer__grid > div > .motif-tree-mark { display:none; }
.site-footer h2 { font-size:1.25rem; margin-bottom:1.25rem; }
.site-footer li { margin:0; }
.site-footer nav a { display:inline-flex; align-items:center; min-height:44px; font-size:0.9375rem; }
.site-footer .nap-block { font-size:0.9375rem; }
.site-footer__legal { margin-top:2.5rem; padding-top:1.5rem; color:var(--text-secondary); }
.site-footer__legal p { max-width:85ch; }
.site-footer__legal .emergency { border-radius:0; padding:1rem 1.25rem; }
@media(min-width:1000px) {
 .site-main > .container > .entry-content,.site-main > .container > article > .entry-content { margin-left:calc((100% - 65ch)/2); }
 .site-main > .container .page-header { padding-left:calc((100% - 65ch)/2); }
 .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .service-card:nth-child(even) { padding-left:2rem; border-left:1px solid var(--border); }
}
/* Decorative roots and curves read as stray glyphs at small scale. */
.motif--root-divider, .motif--curve-transition, .site-footer .motif--tree-mark { display:none; }
/* V4 sweep Finding 4: inline tel:/WhatsApp links and desktop nav links meet the 44px tap-target minimum. */
a[href^="tel:"]:not(.btn), a[href^="https://wa.me/"]:not(.btn) { display:inline-flex; align-items:center; min-height:44px; }
.primary-nav .menu a { display:inline-flex; align-items:center; min-height:44px; }
.site-footer a { display:inline-flex; align-items:center; min-height:44px; }
@media(max-width:639px) {
 .site-footer nav a { display:inline-flex; align-items:center; min-height:44px; }
 .site-header__inner { gap:0.75rem; padding-block:0.875rem; }
 .brand__name { font-size:1.125rem; }
 .brand__title { font-size:0.75rem; }
 .menu-toggle { min-width:56px; min-height:44px; border-radius:0.2rem; }
 .hero { padding-block:3rem; }
 .hero__title { font-size:2.7rem; }
 .hero__subtitle { font-size:1.125rem; }
 .trust-strip__inner { align-items:flex-start; text-align:left; gap:0.5rem; }
 .section { padding-block:3.5rem; }
 .section__head { margin-bottom:1.75rem; }
 .service-card { padding:1.75rem 0; }
 .about-card { gap:2rem; }
 .about-card__media { max-width:100%; }
 .about-card__media img { aspect-ratio:4/3; }
 .site-main > .container { padding-top:2.75rem; padding-bottom:3.5rem; }
 .page-header { padding-bottom:1.5rem; margin-bottom:2rem; }
 .entry-content > .lead { font-size:1.1875rem; }
 .entry-content h2 { margin-top:2.25rem; }
 .contact-panel { padding:1.5rem; }
 .site-footer { padding-top:2.75rem; }
 .site-footer__grid { gap:2rem; }
 .site-footer__legal { margin-top:2rem; }
}

/* ===== Randevu takvimi — yerel, tasarım sistemine ait (tokenlar; yeni renk yok) =====
   Kart: .booking-demo (canlı akış da aynı sınıfları kullanır; .booking-live__* yalnızca form/özet).
   Durum modeli (gün): [disabled] kapalı · .is-today bugün · [aria-pressed=true] seçili · :hover/:focus-visible.
   Durum modeli (seans/saat): role=radio + [aria-checked]. Dokunma hedefi ≥44px her yerde. */
.booking-demo { margin-block:var(--space-6) var(--space-7); padding:clamp(1.25rem, 3vw, 2rem); border:1px solid var(--border); border-radius:var(--radius); background:var(--surface); box-shadow:0 1px 2px rgba(44,40,56,0.04); }
.booking-demo h2 { margin-top:0; font-family:var(--font-heading); }
.booking-demo > p:not(.booking-demo__notice) { color:var(--text-secondary); }
.booking-demo h3 { font-family:var(--font-body); font-size:var(--fs-h4); font-weight:600; margin:var(--space-5) 0 var(--space-3); padding-top:var(--space-5); border-top:1px solid var(--border); }
.booking-demo__step:first-of-type h3, .booking-demo__app > h3:first-child { border-top:0; padding-top:0; margin-top:var(--space-4); }
.booking-demo__notice { padding:0.875rem 1rem; border-inline-start:4px solid var(--primary); border-radius:0 calc(var(--radius) - 4px) calc(var(--radius) - 4px) 0; background:var(--primary-light); color:var(--text-primary); }
.booking-demo__types { padding-inline-start:1.25em; }
.booking-demo__hint { font-size:var(--fs-small); color:var(--text-secondary); margin:var(--space-2) 0 0; }

/* Ortak etkileşim yüzeyi */
.booking-demo__type, .booking-demo__day, .booking-demo__slot, .booking-demo__nav {
	font:inherit; font-weight:500; line-height:1.2; min-height:44px; min-width:44px; padding:0.5rem 0.875rem;
	border:1px solid var(--border); border-radius:calc(var(--radius) - 4px); background:var(--surface); color:var(--text-primary);
	cursor:pointer; transition:background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}
.booking-demo__type:hover, .booking-demo__slot:hover, .booking-demo__day:not(:disabled):hover, .booking-demo__nav:hover { background:var(--primary-light); border-color:var(--primary); }
.booking-demo *:focus-visible { outline:3px solid var(--focus); outline-offset:2px; }

/* 1. Seans türü — hap radyo grubu */
.booking-demo__type-list { display:flex; flex-wrap:wrap; gap:var(--space-2); }
.booking-demo__type { border-radius:999px; padding-inline:1.125rem; }
.booking-demo__type[aria-checked="true"] { background:var(--primary); border-color:var(--primary); color:var(--white); }

/* 2. Gün — ay başlığı ve ızgara */
.booking-demo__cal-head { display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); margin-bottom:var(--space-3); }
.booking-demo__month { font-family:var(--font-heading); font-size:var(--fs-h3); font-weight:500; text-align:center; flex:1; }
.booking-demo__nav { font-size:1.25rem; line-height:1; padding:0; width:44px; border-radius:50%; color:var(--primary-dark); }
.booking-demo__grid { width:100%; max-width:none; margin-inline:0; border-collapse:separate; border-spacing:var(--space-1); table-layout:fixed; }
.booking-demo__grid th { font-weight:600; color:var(--text-secondary); font-size:var(--fs-small); letter-spacing:0.02em; text-transform:uppercase; padding:var(--space-1) 0 var(--space-2); }
.booking-demo__grid th abbr { text-decoration:none; border:0; }
.booking-demo__grid td { padding:0; text-align:center; }
.booking-demo__grid td:empty { background:transparent; border:0; }
/* Günler: 44–56px daire; pill radius'u ve --radius:0.2rem'i (clinic token) override eder — bu yüzden 1440px'te 115px kare kutular oluşuyordu. */
.booking-demo__day { width:100%; max-width:3.5rem; aspect-ratio:1; min-width:44px; min-height:44px; padding:0; margin:0 auto; border-radius:50%; font-variant-numeric:tabular-nums; }
.booking-demo__day:disabled, .booking-demo__day[aria-disabled="true"] { color:var(--text-muted); background:transparent; border-color:transparent; cursor:not-allowed; text-decoration:none; opacity:0.6; }
.booking-demo__day.is-today:not([aria-selected="true"]) { border-color:var(--primary-dark); box-shadow:inset 0 0 0 1px var(--primary-dark); font-weight:700; }
.booking-demo__day[aria-selected="true"] { background:var(--primary); border-color:var(--primary); color:var(--white); font-weight:700; }
.booking-demo__legend { display:flex; flex-wrap:wrap; gap:var(--space-2) var(--space-4); margin:var(--space-3) 0 0; font-size:var(--fs-small); color:var(--text-secondary); }
.booking-demo__legend span { display:inline-flex; align-items:center; gap:0.4rem; }
.booking-demo__swatch { display:inline-block; width:0.875rem; height:0.875rem; border-radius:3px; border:1px solid var(--border); background:var(--surface); }
.booking-demo__swatch--today { border-color:var(--primary-dark); box-shadow:inset 0 0 0 1px var(--primary-dark); }
.booking-demo__swatch--selected { background:var(--primary); border-color:var(--primary); }
.booking-demo__swatch--closed { background:var(--bg); border-color:transparent; opacity:0.75; }

/* 3. Saat — radyo grubu */
.booking-demo__day-label { font-weight:600; margin:0 0 var(--space-3); }
.booking-demo__slots { display:grid; grid-template-columns:repeat(auto-fill, minmax(5.5rem, 1fr)); gap:var(--space-2); }
.booking-demo__slots .booking-demo__hint { grid-column:1 / -1; }
.booking-demo__slot { font-variant-numeric:tabular-nums; }
.booking-demo__slot[aria-checked="true"] { background:var(--primary); border-color:var(--primary); color:var(--white); font-weight:600; }

/* 4. Form ve özetler */
.booking-live__picked, .booking-demo__summary dl { display:grid; grid-template-columns:auto 1fr; gap:var(--space-2) var(--space-4); margin:0 0 var(--space-4); padding:var(--space-4); background:var(--bg); border-radius:calc(var(--radius) - 4px); }
.booking-live__picked > div, .booking-demo__summary dl > div { display:contents; }
.booking-live__picked dt, .booking-demo__summary dt { font-weight:600; color:var(--text-secondary); }
.booking-live__picked dd, .booking-demo__summary dd { margin:0; }
.booking-live__field { margin:0 0 var(--space-4); }
.booking-live__field label { display:block; font-weight:600; margin-bottom:var(--space-1); }
.booking-live__field input:not([type="checkbox"]) { width:100%; min-height:44px; padding:0.5rem 0.875rem; font:inherit; color:var(--text-primary); background:var(--surface); border:1px solid var(--border); border-radius:calc(var(--radius) - 4px); }
.booking-live__field input:focus-visible { outline:3px solid var(--focus); outline-offset:1px; border-color:var(--primary); }
.booking-live__consent { display:grid; grid-template-columns:auto 1fr; gap:var(--space-3); align-items:start; }
.booking-live__consent input { width:1.25rem; height:1.25rem; margin:0.2rem 0 0; accent-color:var(--primary); }
.booking-live__consent label { font-weight:400; font-size:var(--fs-small); color:var(--text-secondary); }
.booking-live__hp { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.booking-live__error, .booking-live__calendar-state, [data-rules-only-notice] { padding:0.875rem 1rem; border-inline-start:4px solid var(--blue-dark); background:var(--blue-light); color:var(--text-primary); border-radius:0 calc(var(--radius) - 4px) calc(var(--radius) - 4px) 0; }
/* HTTP test ortamı uyarısı (role=alert): staging'de görünür, HTTPS'te PHP tarafından basılmaz. */
.booking-live__insecure { margin:0 0 var(--space-4); padding:0.875rem 1rem; border-inline-start:4px solid var(--text-secondary); background:var(--bg); color:var(--text-primary); font-size:var(--fs-small); border-radius:0 calc(var(--radius) - 4px) calc(var(--radius) - 4px) 0; }
.booking-demo__actions { display:flex; flex-wrap:wrap; gap:var(--space-3); margin-top:var(--space-4); }
.booking-live__fallback { margin-top:var(--space-5); padding-top:var(--space-5); border-top:1px solid var(--border); }
.booking-demo__phone-script { margin:0.5rem 0 0.75rem; font-size:0.95rem; }
.booking-demo__phone-script code { display:block; margin-top:0.35rem; padding:0.6rem 0.8rem; background:var(--primary-light); border-radius:6px; font-family:inherit; font-weight:600; user-select:all; -webkit-user-select:all; }
.booking-demo__nojs { font-weight:600; }
@media (prefers-reduced-motion: reduce) { .booking-demo__type, .booking-demo__day, .booking-demo__slot, .booking-demo__nav, .booking-demo .btn { transition-property:none; transition-duration:0s; } }

/* Kart: .container'ın doğrudan çocuğu (randevu.php). Ortalamak için her iki yan da auto —
   tek taraflı px ofset veya negatif margin YOK. .container 1152px; kart en fazla 900px. */
.booking-demo { width:100%; max-width:900px; margin-inline:auto; }
@media (min-width: 48rem) {
  .booking-demo__slots { grid-template-columns:repeat(auto-fill, minmax(6.5rem, 1fr)); }
}
/* Randevu sayfasında okuma sütunu her genişlikte iki yandan auto ile ortalanır; tek taraflı margin-left ofsetini geçersiz kılar. */
.page-template-randevu .site-main > .container > .entry-content { margin-inline:auto; }
.page-template-randevu .site-main > .container .page-header { padding-left:0; text-align:center; }
/* Takvim ve saat ızgarası: aynı ortak sütun, aynı sol/sağ kenar, aynı orta nokta. */
.booking-demo__app > .booking-demo__step { max-width:var(--booking-col-w, 34rem); margin-inline:auto; }
/* Giriş bloğu (başlık, uyarılar, saatler, seans satırları): ızgaralarla AYNI sütun ve aynı eksen; metin de ortalı.
   Uyarılar uyarı olarak kalır (arka plan + simetrik üst çizgi); HTTPS/mod koşulları değişmez. */
.booking-demo__intro { max-width:var(--booking-col-w, 34rem); margin-inline:auto; text-align:center; }
.booking-demo__intro .booking-demo__types { list-style:none; padding:0; margin:0; }
.booking-demo__intro .booking-demo__notice, .booking-demo__intro .booking-live__insecure { border-inline-start:0; border-top:4px solid var(--primary); border-radius:0 0 calc(var(--radius) - 4px) calc(var(--radius) - 4px); }
.booking-demo__intro .booking-live__insecure { border-top-color:var(--text-secondary); }
.booking-demo__grid, .booking-demo__slots { width:100%; margin-inline:0; }
@media (max-width:639px) { .booking-demo { padding:1rem; } .booking-demo__grid { max-width:none; border-spacing:0.125rem; } .booking-demo__day { max-width:none; border-radius:50%; } .booking-demo__legend { gap:var(--space-2) var(--space-3); } }

/* Chronological archive: three cards, uniform six-line leads and aligned metadata. */
.reviews { background:var(--bg); }
.reviews [hidden] { display:none !important; }
.reviews__note { max-width:70ch; color:var(--text-secondary); font-size:var(--fs-small); margin-top:1rem; }
.reviews__sources { display:flex; flex-wrap:wrap; gap:1rem 3rem; margin-bottom:2rem; padding-bottom:1.5rem; border-bottom:1px solid var(--border); }
.reviews__all { display:flex; flex-direction:column; justify-content:center; min-height:44px; color:var(--primary-dark); font-size:var(--fs-small); }
.reviews__all span:first-child { color:var(--text-primary); font-weight:600; }
.reviews__disclosure { border:1px solid var(--border); background:var(--surface); }
.reviews__summary { list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:44px; padding:1.25rem 1.5rem; font-weight:600; color:var(--text-primary); font-size:1.0625rem; }
.reviews__summary::-webkit-details-marker { display:none; }
.reviews__summary::after { content:"+"; font-weight:400; color:var(--primary-dark); font-size:1.25rem; line-height:1; flex-shrink:0; }
.reviews__disclosure[open] > .reviews__summary::after { content:"–"; }
.reviews__disclosure[open] > .reviews__summary { border-bottom:1px solid var(--border); }
.reviews__panel { padding:2rem 1.5rem; }
.reviews__list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.review { margin:0; padding:1.5rem; border:1px solid var(--border); background:var(--surface); display:flex; flex-direction:column; gap:1.5rem; scroll-margin-top:8rem; }
.review__reading { flex:none; }
.review__reading:has(.review__expand[open]) { height:auto; overflow:visible; }
.review__body,.review__preview { margin:0; padding:0; border:0; font:inherit; font-style:normal; color:var(--text-primary); white-space:pre-wrap; overflow-wrap:break-word; max-width:65ch; }
.review__preview { display:-webkit-box; line-height:1.7; height:10.2em; -webkit-line-clamp:6; -webkit-box-orient:vertical; overflow:hidden; }
.review__expand[open] .review__body { -webkit-line-clamp:unset; overflow:visible; display:block; }
.review__expand summary { cursor:pointer; list-style:none; }
.review__expand summary::-webkit-details-marker { display:none; }
.review__open,.review__close { color:var(--primary-dark); text-decoration:underline; text-underline-offset:0.2em; font-size:var(--fs-small); min-height:44px; display:flex; align-items:center; margin-top:0.5rem; }
.review__close { display:none; }
.review__expand[open] .review__preview,.review__expand[open] .review__open { display:none; }
.review__expand[open] .review__close { display:flex; margin:0 0 1rem; }
.review__reply { margin-top:1rem; padding:1rem; border-left:2px solid var(--border); background:var(--bg); color:var(--text-secondary); font-size:var(--fs-small); white-space:pre-wrap; }
.review__reply summary { min-height:44px; cursor:pointer; }
.review__meta { margin-top:auto; border-top:1px solid var(--border); padding-top:1rem; font-size:var(--fs-small); color:var(--text-secondary); display:flex; flex-direction:column; align-items:flex-start; line-height:1.5; }
.review__source { display:inline-flex; align-items:center; min-height:44px; color:var(--primary-dark); text-decoration:underline; text-underline-offset:0.2em; }
.reviews__pages { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:1rem; margin-top:2rem; color:var(--text-secondary); font-size:var(--fs-small); }
.reviews__pages button,.reviews__pages select { min-height:44px; min-width:44px; padding:0.5rem 0.75rem; font:inherit; color:var(--primary-dark); background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); cursor:pointer; }
.reviews__pages button:disabled { color:var(--text-secondary); cursor:default; }
.reviews :is(a,button,select,summary):focus-visible,.review:focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
@media(max-width:767px) {
 .reviews__list { grid-template-columns:1fr; gap:1rem; }
 .review { padding:1.25rem; }
 .reviews__panel { padding:1.5rem 1.25rem; }
 .reviews__pages { gap:0.5rem; }
 .reviews__pages [role=status] { order:4; flex-basis:100%; text-align:center; }
}

/* Google Takvim randevu planı — tasarım sistemine ait panel (dış çerçeve bizim, iç UI Google'ın) */
.booking-gcal { margin-block:2.5rem 3rem; padding:clamp(1.25rem, 3vw, 2rem); background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); box-shadow:0 1px 2px rgba(44,40,56,0.04); }
.booking-gcal h2 { margin-top:0; font-family:var(--font-heading); }
.booking-gcal > p { color:var(--text-secondary); max-width:var(--container-text); }
.booking-gcal__frame { margin-block:1.25rem; background:var(--surface); border:1px solid var(--border); border-radius:calc(var(--radius) - 2px); overflow:hidden; }
.booking-gcal__frame iframe { display:block; width:100%; height:1040px; border:0; background:var(--surface); }
/* ≥48rem: card breaks out of the 65ch reading column (Google's widget needs ~900px for its side-by-side day/time layout);
   1040px keeps the full month grid + a time-slot list visible without relying on the iframe's internal scroll. */
@media (min-width: 48rem) {
  .booking-gcal { width:min(100%, 900px); }
  /* side-by-side layout (month grid + day/time column) is ~720px tall; extra height only adds Google's blank space */
  .booking-gcal__frame iframe { height:760px; }
}
@media (min-width: 64rem) {
  .site-main > .container > .entry-content .booking-gcal,
  .site-main > .container > article > .entry-content .booking-gcal { width:min(calc(100% + (100vw - 65ch) / 2 - 3rem), 900px); }
}
.booking-gcal__privacy, .booking-gcal__alt { font-size:var(--fs-small); color:var(--text-secondary); margin-bottom:0.5rem; }
.booking-gcal__privacy a, .booking-gcal__alt a { color:var(--primary-dark); }

/* Senem 22.10 alan listesi: ilişki problemleri alt maddeleri */
.area-list dd ul { margin:0.25rem 0 0; padding-left:1.25rem; }
.area-list dd li { margin:0.15rem 0; }
.service-card__photo { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:calc(var(--radius) - 4px); margin:0 0 0.875rem; }
.service-card__photo--motif { display:flex; align-items:center; justify-content:center; background:var(--primary-light); color:var(--primary); }
@media (max-width: 767px) { .service-card__photo--motif { aspect-ratio:6/1; } }
