/*
 * Allina Reiki — Spirituele coach
 * Alleen laden op /spirituele-coach/
 * Alle componenten gebruiken de sc- prefix.
 */

:root {
  --sc-night:#201a35;
  --sc-indigo:#31264d;
  --sc-violet:#6f598d;
  --sc-amethyst:#9078aa;
  --sc-jade:#5f8d82;
  --sc-jade-dark:#3f685f;
  --sc-gold:#b89a5c;
  --sc-ivory:#f5f0e7;
  --sc-paper:#fcf9f3;
  --sc-ink:#342d3d;
  --sc-copy:#655e68;
  --sc-light:#fffdf8;
}

body:has(.sc-hero) .title_outer,
body:has(.sc-hero) .title_holder {
  display:none!important;
}
body:has(.sc-hero) .content,
body:has(.sc-hero) .content_inner {
  margin-top:0!important;
  background:var(--sc-paper);
}
.sc-hero,.sc-opening,.sc-guidance,.sc-invitation,
.sc-hero *,.sc-opening *,.sc-guidance *,.sc-invitation * {
  box-sizing:border-box;
}
.sc-hero > .full_section_inner,
.sc-opening > .full_section_inner,
.sc-guidance > .full_section_inner,
.sc-invitation > .full_section_inner {
  position:relative;
  z-index:2;
  display:grid;
  align-items:center;
  width:calc(100% - 48px);
  max-width:1180px;
  margin:0 auto;
}
.sc-hero > .full_section_inner > br,
.sc-opening > .full_section_inner > br,
.sc-guidance > .full_section_inner > br,
.sc-invitation > .full_section_inner > br {
  display:none!important;
}
.sc-hero__copy,.sc-hero__media,
.sc-opening__copy,.sc-opening__media,
.sc-guidance__copy,.sc-guidance__media,
.sc-invitation__copy,.sc-invitation__media {
  position:relative!important;
  float:none!important;
  width:auto!important;
  min-width:0;
  padding:0!important;
}
.sc-hero__copy,.sc-guidance__copy,.sc-invitation__copy {
  grid-column:1;
  grid-row:1;
}
.sc-hero__media,.sc-guidance__media,.sc-invitation__media {
  grid-column:2;
  grid-row:1;
}
.sc-opening__media {
  grid-column:1;
  grid-row:1;
}
.sc-opening__copy {
  grid-column:2;
  grid-row:1;
}
.sc-hero .wpb_content_element,
.sc-opening .wpb_content_element,
.sc-guidance .wpb_content_element,
.sc-invitation .wpb_content_element {
  margin:0!important;
}
.sc-hero p,.sc-opening p,.sc-guidance p,.sc-invitation p {
  margin:0 0 18px;
}
.sc-kicker,.sc-section-mark {
  display:block;
  color:var(--sc-gold);
  font-family:"Fraunces",Georgia,serif;
  font-size:18px;
  font-style:italic;
  letter-spacing:.03em;
}
.sc-section-mark {
  margin-bottom:20px;
}
.sc-section-mark::after {
  content:"";
  display:inline-block;
  width:54px;
  height:1px;
  margin:0 0 5px 14px;
  background:linear-gradient(90deg,var(--sc-gold),var(--sc-jade),transparent);
}

/* Hero */
.sc-hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:680px;
  padding:74px 24px 82px;
  background:
    radial-gradient(circle at 83% 18%,rgba(144,120,170,.15),transparent 27%),
    radial-gradient(circle at 15% 84%,rgba(95,141,130,.12),transparent 30%),
    linear-gradient(145deg,var(--sc-paper),var(--sc-ivory));
}
.sc-hero::before {
  content:"";
  position:absolute;
  right:5%;
  top:8%;
  width:54%;
  height:84%;
  border:1px solid rgba(184,154,92,.30);
  border-radius:46% 54% 50% 50% / 58% 42% 58% 42%;
  transform:rotate(-2deg);
  box-shadow:0 0 0 32px rgba(95,141,130,.025);
}
.sc-hero::after {
  content:"";
  position:absolute;
  left:6%;
  bottom:8%;
  width:210px;
  height:115px;
  border-left:1px solid rgba(95,141,130,.38);
  border-bottom:1px solid rgba(184,154,92,.42);
  border-radius:0 0 0 70px;
  transform:skewY(-5deg);
}
.sc-hero > .full_section_inner {
  grid-template-columns:minmax(0,1.02fr) minmax(0,1.18fr);
  gap:0;
}
.sc-hero__copy {
  z-index:5;
  margin-right:-78px;
  padding:48px 54px 48px 44px!important;
  background:rgba(252,249,243,.88);
  border:1px solid rgba(184,154,92,.20);
  border-radius:44px 10px 44px 10px;
  box-shadow:0 28px 65px rgba(32,26,53,.13);
  backdrop-filter:blur(12px);
}
.sc-hero__copy::before {
  content:"";
  position:absolute;
  left:18px;
  top:18px;
  width:120px;
  height:78px;
  border-top:1px solid rgba(184,154,92,.75);
  border-left:1px solid rgba(95,141,130,.56);
  border-radius:46px 0 0;
  transform:skewY(-7deg);
}
.sc-hero h1 {
  position:relative;
  z-index:2;
  margin:8px 0 25px!important;
  color:var(--sc-ink)!important;
  font-family:"Fraunces",Georgia,serif!important;
  font-size:clamp(43px,4.4vw,62px)!important;
  font-weight:400!important;
  letter-spacing:-.04em!important;
  line-height:1.06!important;
  text-transform:none!important;
}
.sc-hero__copy strong {
  display:block;
  margin-bottom:20px;
  color:#4e4358;
  font-family:"Fraunces",Georgia,serif;
  font-size:20px;
  font-weight:400;
  line-height:1.58;
}
.sc-hero__copy p {
  color:var(--sc-copy);
  font-size:14px;
  line-height:1.8;
}
.sc-hero__media {
  z-index:3;
  transform:translateX(18px);
}
.sc-hero__media::before,
.sc-opening__media::before,
.sc-guidance__media::before,
.sc-invitation__media::before {
  content:"";
  position:absolute;
  z-index:3;
  inset:-20px;
  padding:1px;
  border-radius:50%;
  background:conic-gradient(from 20deg,rgba(184,154,92,.72) 0 12%,transparent 12% 31%,rgba(95,141,130,.58) 31% 48%,transparent 48% 69%,rgba(144,120,170,.58) 69% 84%,transparent 84%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}
.sc-hero__media img {
  display:block;
  width:100%!important;
  height:540px!important;
  object-fit:cover;
  border-radius:22px 145px 22px 145px;
  filter:saturate(.82) contrast(1.02) brightness(.90);
  box-shadow:0 34px 74px rgba(32,26,53,.27);
}
.sc-actions {
  display:flex;
  margin-top:28px!important;
}
.sc-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 28px;
  color:#fff!important;
  background:linear-gradient(135deg,var(--sc-violet),var(--sc-jade-dark));
  border:1px solid rgba(255,255,255,.20);
  border-radius:999px;
  box-shadow:0 14px 34px rgba(32,26,53,.24);
  font-size:13px;
  font-weight:650;
  text-decoration:none!important;
  transition:transform .25s ease,box-shadow .25s ease;
}
.sc-button:hover {
  color:#fff!important;
  transform:translateY(-3px);
  box-shadow:0 20px 42px rgba(32,26,53,.32);
}

/* Openingssectie */
.sc-opening {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:96px 24px;
  background:
    radial-gradient(circle at 14% 82%,rgba(144,120,170,.12),transparent 28%),
    radial-gradient(circle at 86% 18%,rgba(95,141,130,.14),transparent 28%),
    var(--sc-ivory);
}
.sc-opening::before {
  content:"";
  position:absolute;
  left:49%;
  top:-75px;
  bottom:-75px;
  width:82px;
  border-left:1px solid rgba(95,141,130,.35);
  border-right:1px solid rgba(184,154,92,.26);
  border-radius:48% 52% 57% 43% / 70% 68% 32% 30%;
  transform:rotate(-4deg);
}
.sc-opening > .full_section_inner {
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:clamp(50px,8vw,112px);
}
.sc-opening__media img {
  display:block;
  width:100%!important;
  height:440px!important;
  object-fit:cover;
  border-radius:118px 34px 118px 34px;
  filter:saturate(.84) contrast(1.01);
  box-shadow:0 27px 58px rgba(32,26,53,.18);
}
.sc-opening__copy {
  color:var(--sc-copy);
  font-size:16px;
  line-height:1.9;
}
.sc-opening__copy .wpb_wrapper {
  position:relative;
  padding:38px 0;
}
.sc-opening__copy .wpb_wrapper::after {
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  width:105px;
  height:66px;
  border-right:1px solid rgba(111,89,141,.48);
  border-bottom:1px solid rgba(184,154,92,.54);
  border-radius:0 0 42px;
  transform:skewY(7deg);
}

/* Begeleiding */
.sc-guidance {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:100px 24px;
  background:
    radial-gradient(circle at 82% 19%,rgba(144,120,170,.22),transparent 27%),
    radial-gradient(circle at 17% 85%,rgba(95,141,130,.20),transparent 30%),
    linear-gradient(145deg,var(--sc-night),var(--sc-indigo));
}
.sc-guidance::before {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:540px;
  height:540px;
  transform:translate(-50%,-50%) rotate(-9deg);
  border:1px solid rgba(184,154,92,.18);
  border-top-color:transparent;
  border-radius:50%;
  box-shadow:0 0 0 40px rgba(144,120,170,.025),0 0 0 80px rgba(95,141,130,.018);
}
.sc-guidance > .full_section_inner {
  grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr);
  gap:clamp(52px,8vw,110px);
}
.sc-guidance__copy {
  color:rgba(255,253,248,.76);
  font-size:14px;
  line-height:1.82;
}
.sc-guidance__copy strong {
  display:block;
  margin-bottom:24px;
  color:var(--sc-light);
  font-family:"Fraunces",Georgia,serif;
  font-size:22px;
  font-weight:400;
  line-height:1.62;
}
.sc-guidance .sc-section-mark {
  color:#cbb783;
}
.sc-guidance__media img {
  display:block;
  width:100%!important;
  height:510px!important;
  object-fit:cover;
  border-radius:38px 126px 38px 126px;
  filter:saturate(.76) brightness(.80) contrast(1.06);
  box-shadow:0 32px 70px rgba(9,7,18,.42);
}

/* Uitnodiging */
.sc-invitation {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:96px 24px 104px;
  background:
    radial-gradient(circle at 80% 20%,rgba(95,141,130,.16),transparent 27%),
    radial-gradient(circle at 17% 82%,rgba(144,120,170,.14),transparent 30%),
    linear-gradient(138deg,#ece5d9,var(--sc-paper));
}
.sc-invitation > .full_section_inner {
  grid-template-columns:minmax(0,1.28fr) minmax(0,.72fr);
  gap:clamp(48px,8vw,106px);
}
.sc-invitation__copy {
  color:var(--sc-copy);
  font-size:15px;
  line-height:1.84;
}
.sc-invitation__copy strong {
  display:block;
  margin-bottom:24px;
  color:var(--sc-ink);
  font-family:"Fraunces",Georgia,serif;
  font-size:clamp(21px,2.2vw,29px);
  font-weight:400;
  line-height:1.6;
}
.sc-invitation__media {
  padding:28px!important;
  background:rgba(255,253,248,.70);
  border-radius:50%;
}
.sc-invitation__media img {
  display:block;
  width:100%!important;
  height:320px!important;
  object-fit:cover;
  border-radius:50%;
  filter:saturate(.80) contrast(1.02);
  box-shadow:0 25px 55px rgba(32,26,53,.18);
}
.sc-button--light {
  border-color:rgba(184,154,92,.38);
}

@media(max-width:960px) {
  .sc-hero > .full_section_inner,
  .sc-opening > .full_section_inner,
  .sc-guidance > .full_section_inner,
  .sc-invitation > .full_section_inner {
    grid-template-columns:1fr 1fr;
    gap:40px;
  }
  .sc-hero h1 {font-size:48px!important;}
}
@media(max-width:760px) {
  .sc-hero,.sc-opening,.sc-guidance,.sc-invitation {
    padding:58px 20px 66px;
  }
  .sc-hero {
    min-height:0;
    background:
      radial-gradient(circle at 80% 72%,rgba(144,120,170,.14),transparent 28%),
      linear-gradient(145deg,var(--sc-paper),var(--sc-ivory));
  }
  .sc-hero > .full_section_inner,
  .sc-opening > .full_section_inner,
  .sc-guidance > .full_section_inner,
  .sc-invitation > .full_section_inner {
    display:flex;
    width:100%;
    flex-direction:column;
    gap:36px;
  }
  .sc-hero__copy,.sc-opening__copy,.sc-guidance__copy,.sc-invitation__copy {order:1;}
  .sc-hero__media,.sc-opening__media,.sc-guidance__media,.sc-invitation__media {order:2;}
  .sc-hero__copy,.sc-hero__media,
  .sc-opening__copy,.sc-opening__media,
  .sc-guidance__copy,.sc-guidance__media,
  .sc-invitation__copy,.sc-invitation__media {
    grid-column:auto;
    grid-row:auto;
  }
  .sc-hero__copy {
    margin-right:0;
    padding:34px 26px!important;
  }
  .sc-hero__media {transform:none;}
  .sc-hero::before,.sc-hero::after {display:none;}
  .sc-hero h1 {font-size:40px!important;}
  .sc-hero__media img,.sc-opening__media img,.sc-guidance__media img {
    height:330px!important;
    border-radius:30px 78px 30px 78px;
  }
  .sc-invitation__media {
    width:100%!important;
    max-width:390px;
    margin:auto;
  }
  .sc-invitation__media img {height:300px!important;}
}
@media(prefers-reduced-motion:no-preference) {
  .sc-hero__media::before,
  .sc-opening__media::before,
  .sc-guidance__media::before,
  .sc-invitation__media::before {
    animation:sc-energy-breathe 8s ease-in-out infinite;
  }
}
@keyframes sc-energy-breathe {
  0%,100% {opacity:.56;transform:rotate(-4deg) scale(.98);}
  50% {opacity:.92;transform:rotate(2deg) scale(1.02);}
}

/* Coachhero v2 — bewust tegengesteld aan de voorpagina */
@media(min-width:761px) {
  .sc-hero > .full_section_inner {
    grid-template-columns:minmax(0,1.15fr) minmax(0,1.05fr);
  }
  .sc-hero__media {
    grid-column:1;
    grid-row:1;
    transform:translateX(-14px);
    justify-self:stretch;
  }
  .sc-hero__copy {
    grid-column:2;
    grid-row:1;
    margin-right:0;
    margin-left:-86px;
    padding:48px 44px 48px 56px!important;
  }
  .sc-hero__media img {
    height:570px!important;
    border-radius:145px 22px 145px 22px;
    object-position:center;
  }
  .sc-hero__copy::before {
    left:auto;
    right:18px;
    border-left:0;
    border-right:1px solid rgba(95,141,130,.56);
    border-radius:0 48px 0 0;
  }
  .sc-hero::before {
    left:5%;
    right:auto;
    width:55%;
    border-radius:54% 46% 50% 50% / 42% 58% 42% 58%;
  }
  .sc-hero::after {
    left:auto;
    right:7%;
    border-left:0;
    border-right:1px solid rgba(95,141,130,.38);
    border-radius:0 0 70px 0;
  }
}
