/* Kıbrıs Psikoloji v18 — editor-safe homepage and deliberate section rhythm. */
:root {
  --kp18-canvas:#f3eee5;
  --kp18-paper:#fffdf9;
  --kp18-sage:#e4ebe3;
  --kp18-green:#164a46;
  --kp18-ink:#263f3c;
  --kp18-line:rgba(22,74,70,.13);
  --kp18-shadow:0 22px 64px rgba(13,53,50,.085);
}

html,body { background-color:var(--kp18-canvas)!important; }
body { background-image:none!important; }
.wp-site-blocks,main { overflow:clip; }
.wp-site-blocks main > .alignfull { margin-block:0!important; }

/* The motif is a quiet section divider instead of a wallpaper over every block. */
.kp-v9-therapist,.kp-v18-services,.kp-process-section--v9,.kp-v9-cert-section,.kp-latest-posts--v9,.kp-v18-appointment-section { position:relative; margin-block:0!important; }
.kp-v9-therapist::before,.kp-v18-services::before,.kp-process-section--v9::before,.kp-v9-cert-section::before,.kp-latest-posts--v9::before,.kp-v18-appointment-section::before {
  content:""; position:absolute; z-index:0; top:0; left:50%; width:min(1320px,calc(100% - 2rem)); height:1px; transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(22,74,70,.18) 18%,rgba(154,98,80,.22) 50%,rgba(22,74,70,.18) 82%,transparent);
}
.kp-v9-therapist > *,.kp-v18-services > *,.kp-process-section--v9 > *,.kp-v9-cert-section > *,.kp-latest-posts--v9 > *,.kp-v18-appointment-section > * { position:relative; z-index:1; }
.kp-v9-therapist { background:linear-gradient(145deg,#e7ede5 0%,#f6f1e8 100%)!important; }
.kp-v18-services { background:var(--kp18-paper)!important; background-image:none!important; }
.kp-process-section--v9 { background:linear-gradient(180deg,#f4efe6 0%,#e9efe8 100%)!important; background-image:none!important; }
.kp-v9-cert-section { background:#edf1ec!important; }
.kp-latest-posts--v9 { background:var(--kp18-paper)!important; }

/* Header appointment action. */
.kp-header-actions { display:flex!important; flex:1 1 auto; justify-content:flex-end!important; }
.kp-header-cta { flex:0 0 auto; margin:0!important; }
.kp-header-cta .wp-block-button__link { min-height:46px; padding:.72rem 1.25rem!important; background:var(--kp18-green)!important; color:#fff!important; box-shadow:0 10px 26px rgba(13,53,50,.16); }
.kp-header-cta .wp-block-button__link::after { content:"→"; margin-left:.45rem; }
.kp-mobile-appointment { display:none!important; }

/* Hero: everything is in normal document flow, including the photograph caption. */
.kp-home-hero--v12 { padding:clamp(.8rem,2vw,1.4rem) clamp(.75rem,3vw,3rem) clamp(3rem,6vw,5rem)!important; background:var(--kp18-canvas)!important; background-image:none!important; }
.kp-v18-hero-shell { display:grid!important; grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr); width:min(1460px,100%); min-height:0!important; overflow:hidden; border:1px solid var(--kp18-line); border-radius:28px; background:var(--kp18-paper)!important; box-shadow:var(--kp18-shadow); }
.kp-v18-hero-shell > .wp-block-column { width:auto!important; min-width:0; flex-basis:auto!important; }
.kp-v12-hero-content { min-height:650px; padding:clamp(2.5rem,4.5vw,4.8rem)!important; }
.kp-v12-hero-title { max-width:12ch!important; margin:.45rem 0 1.1rem!important; font-size:clamp(3rem,4.5vw,4.45rem)!important; line-height:1.01!important; letter-spacing:-.04em; overflow-wrap:normal; word-break:normal; }
.kp-v12-hero-lede { max-width:600px; font-size:clamp(1rem,1.25vw,1.18rem)!important; line-height:1.65; }
.kp-v12-benefits { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0!important; width:100%; }
.kp-v12-benefits > .wp-block-column { min-width:0; padding:.2rem .8rem 0!important; }
.kp-v12-benefits > .wp-block-column:first-child { padding-left:0!important; }
.kp-v12-benefit-icon { display:grid; place-items:center; width:34px; height:34px; border:1px solid rgba(22,74,70,.2); border-radius:9px; background:#f8faf6; }
.kp-v12-benefit-icon svg { width:18px; height:18px; fill:none; stroke:var(--kp18-green); stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.kp-v12-benefits strong { display:inline-block; white-space:normal; }

.kp-v18-hero-media { display:flex!important; flex-direction:column; min-height:650px!important; overflow:hidden; background:#dfe6e3; }
.kp-v18-hero-media::after,.kp-v12-name-card,.kp-v12-leaves { display:none!important; }
.kp-v18-hero-media .kp-v12-hero-photo { position:relative!important; inset:auto!important; flex:1 1 auto; min-height:0; margin:0!important; overflow:hidden; }
.kp-v18-hero-media .kp-v12-hero-photo img { display:block; width:100%; height:100%; min-height:570px; object-fit:cover; object-position:center 24%; }
.kp-v18-profile-caption { position:relative!important; z-index:2; flex:0 0 auto; gap:.75rem 1.5rem!important; min-height:80px; margin:0!important; border-top:1px solid var(--kp18-line); }
.kp-v18-profile-caption p { margin:0!important; }
.kp-v18-profile-name strong { color:var(--kp18-ink); font-size:1rem; }
.kp-v18-profile-name span { color:var(--kp18-green); font-weight:700; }
.kp-v18-profile-caption .kp-v12-signature { position:static!important; max-width:none; padding:0; transform:none; background:transparent; color:var(--kp18-green); font-size:1rem; text-align:left; backdrop-filter:none; }

/* Service types are cards; focus areas are explicitly labelled as topics. */
.kp-v18-services-grid { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem!important; }
.kp-v18-services-grid > .wp-block-column { width:auto!important; min-width:0; flex-basis:auto!important; }
.kp-v18-service-card { height:100%; min-height:310px!important; }
.kp-v18-service-card h3 { min-height:2.45em; margin-bottom:.85rem!important; }
.kp-v18-service-card > p:nth-of-type(2) { line-height:1.65; }
.kp-v18-focus-band { gap:.65rem!important; border:1px solid var(--kp18-line); border-radius:18px; background:#f3f6f1; }
.kp-v18-focus-band p { margin:0!important; padding:.5rem .85rem; border-radius:999px; background:var(--kp18-paper); border:1px solid rgba(22,74,70,.09); }
.kp-v18-focus-band .kp-v18-focus-label { padding-left:0; border:0; background:transparent; color:var(--kp18-green); }

/* Process cards can never exceed the content width or overlap. */
.kp-v9-process-flow { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important; width:100%; gap:1rem!important; overflow:visible; }
.kp-v9-process-item { box-sizing:border-box; width:auto; min-width:0; min-height:210px!important; padding:1.5rem!important; background:rgba(255,253,249,.88)!important; }
.kp-v9-process-node { display:grid; place-items:center; width:44px; height:44px; margin:0 0 1.2rem; border-radius:50%; background:var(--kp18-green); color:#fff; }

.kp-v18-appointment-section { background:linear-gradient(135deg,#dde8df,#eef1e9)!important; }
.kp-v18-appointment-section .kp-appointment-form { border:1px solid var(--kp18-line); background:var(--kp18-paper); box-shadow:var(--kp18-shadow); }

@media (max-width:1180px) {
  .kp-site-header--clean .kp-header-cta { display:flex!important; }
  .kp-main-navigation { font-size:.75rem!important; }
  .kp-main-navigation .wp-block-navigation-item__content { padding:.5rem!important; }
  .kp-brand-logo img,.kp-site-header .custom-logo { width:170px!important; }
  .kp-v12-hero-content { padding:2.8rem 2.3rem!important; }
  .kp-v12-hero-title { font-size:clamp(2.8rem,4.7vw,3.8rem)!important; }
}
@media (max-width:1000px) {
  .kp-site-header--clean .kp-header-cta { display:none!important; }
  .kp-mobile-appointment { display:flex!important; }
  .kp-site-header .kp-mobile-appointment .wp-block-navigation-item__content { margin-top:.7rem; background:var(--kp18-green)!important; color:#fff!important; justify-content:center; border-radius:999px; }
  .kp-v18-hero-shell { grid-template-columns:1fr; }
  .kp-v12-hero-content { min-height:0; }
  .kp-v18-hero-media { min-height:0!important; }
  .kp-v18-hero-media .kp-v12-hero-photo img { min-height:0; aspect-ratio:4/4.5; object-position:center 20%; }
  .kp-v18-services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .kp-v18-services-grid > .wp-block-column:last-child { grid-column:1/-1; }
  .kp-v18-services-grid > .wp-block-column:last-child .kp-v18-service-card { min-height:260px!important; }
  .kp-v9-process-flow { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media (max-width:600px) {
  .kp-v18-hero-shell { border-radius:19px; }
  .kp-v12-hero-content { padding:2.25rem 1.25rem!important; }
  .kp-v12-hero-title { max-width:11ch!important; font-size:clamp(2.55rem,12vw,3.45rem)!important; }
  .kp-v12-benefits { grid-template-columns:1fr!important; margin-top:1.5rem!important; }
  .kp-v12-benefits > .wp-block-column { display:grid; grid-template-columns:36px minmax(0,1fr); gap:.7rem; padding:.75rem 0!important; border-left:0!important; border-top:1px solid var(--kp18-line); }
  .kp-v12-benefits > .wp-block-column:first-child { border-top:0; }
  .kp-v12-benefits p { margin:0!important; }
  .kp-v18-profile-caption { align-items:flex-start!important; }
  .kp-v18-services-grid,.kp-v9-process-flow { grid-template-columns:1fr!important; }
  .kp-v18-services-grid > .wp-block-column:last-child { grid-column:auto; }
  .kp-v18-service-card,.kp-v18-services-grid > .wp-block-column:last-child .kp-v18-service-card,.kp-v9-process-item { min-height:0!important; }
  .kp-v18-focus-band { align-items:flex-start!important; }
  .kp-v18-focus-band .kp-v18-focus-label { flex-basis:100%; }
}
