
/*
 * Allina Reiki — Reiki treatment page
 * Alleen geladen op /home/
 * Alle componenten gebruiken de rt- prefix.
 */

:root {
  --rt-night:#252039;
  --rt-indigo:#302947;
  --rt-amethyst:#66527d;
  --rt-violet:#8b78a0;
  --rt-jade:#668b82;
  --rt-jade-dark:#486a63;
  --rt-ivory:#f4efe6;
  --rt-paper:#fbf8f1;
  --rt-gold:#b89a5e;
  --rt-earth:#75624e;
  --rt-ink:#352f3c;
  --rt-copy:#665f68;
  --rt-light:#fffdf7;
}

body:has(.rt-hero) .title_outer,
body:has(.rt-hero) .title_holder {
  display:none!important;
}
body:has(.rt-hero) .content {
  margin-top:0!important;
  background:var(--rt-night);
}
body:has(.rt-hero) .content_inner {
  background:var(--rt-night);
}
.rt-hero,
.rt-practical,
.rt-origin,
.rt-usui,
.rt-closing,
.rt-hero *,
.rt-practical *,
.rt-origin *,
.rt-usui *,
.rt-closing * {
  box-sizing:border-box;
}
.rt-hero > .full_section_inner,
.rt-practical > .full_section_inner,
.rt-origin > .full_section_inner,
.rt-usui > .full_section_inner,
.rt-closing > .full_section_inner {
  position:relative;
  z-index:2;
  display:grid;
  align-items:center;
  width:calc(100% - 48px);
  max-width:1180px;
  margin:0 auto;
}
.rt-hero > .full_section_inner > br,
.rt-practical > .full_section_inner > br,
.rt-origin > .full_section_inner > br,
.rt-usui > .full_section_inner > br,
.rt-closing > .full_section_inner > br {
  display:none!important;
}
.rt-hero__copy,.rt-hero__media,
.rt-practical__intro,.rt-practical__benefits,
.rt-origin__copy,.rt-origin__media,
.rt-usui__copy,.rt-usui__media,
.rt-closing__copy,.rt-closing__media {
  position:relative!important;
  float:none!important;
  width:auto!important;
  min-width:0;
  padding:0!important;
}

/*
 * WPBakery plaatst verborgen <br>-nodes tussen de kolommen.
 * Geef daarom ieder echt inhoudsblok een vaste gridpositie.
 */
.rt-hero__copy,
.rt-practical__intro,
.rt-origin__copy,
.rt-closing__copy {
  grid-column:1;
  grid-row:1;
  align-self:center;
}
.rt-hero__media,
.rt-practical__benefits,
.rt-origin__media,
.rt-closing__media {
  grid-column:2;
  grid-row:1;
  align-self:center;
}
.rt-usui__media {
  grid-column:1;
  grid-row:1;
  align-self:center;
}
.rt-usui__copy {
  grid-column:2;
  grid-row:1;
  align-self:center;
}
.rt-hero .wpb_content_element,
.rt-practical .wpb_content_element,
.rt-origin .wpb_content_element,
.rt-usui .wpb_content_element,
.rt-closing .wpb_content_element {
  margin:0!important;
}

/* Hero — licht links, spirituele diepte rechts */
.rt-hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:680px;
  padding:72px 24px 80px;
  background:
    radial-gradient(circle at 84% 18%,rgba(139,120,160,.30),transparent 25%),
    radial-gradient(circle at 58% 88%,rgba(102,139,130,.18),transparent 30%),
    linear-gradient(112deg,var(--rt-ivory) 0%,var(--rt-paper) 47%,var(--rt-indigo) 47%,var(--rt-night) 100%);
}
.rt-hero::before {
  content:"";
  position:absolute;
  left:47%;
  top:-120px;
  bottom:-120px;
  width:125px;
  border-left:1px solid rgba(184,154,94,.48);
  border-right:1px solid rgba(139,120,160,.30);
  border-radius:52% 48% 44% 56% / 23% 18% 82% 77%;
  transform:rotate(4deg);
}
.rt-hero::after {
  content:"";
  position:absolute;
  right:-165px;
  bottom:-190px;
  width:510px;
  height:510px;
  border:1px solid rgba(184,154,94,.24);
  border-left-color:transparent;
  border-radius:50%;
  box-shadow:0 0 0 42px rgba(102,139,130,.035),0 0 0 84px rgba(139,120,160,.025);
}
.rt-hero > .full_section_inner {
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:clamp(35px,6vw,84px);
}
.rt-hero__copy {
  z-index:4;
  padding:38px 0 38px 10px!important;
}
.rt-hero__copy::before {
  content:"";
  position:absolute;
  left:-12px;
  top:0;
  width:120px;
  height:84px;
  border-top:1px solid rgba(184,154,94,.76);
  border-left:1px solid rgba(102,139,130,.58);
  border-radius:45px 0 0 0;
  transform:skewY(-7deg);
}
.rt-hero__copy::after {
  content:"";
  position:absolute;
  right:-30px;
  bottom:8px;
  width:92px;
  height:62px;
  border-right:1px solid rgba(102,82,125,.52);
  border-bottom:1px solid rgba(184,154,94,.58);
  border-radius:0 0 38px 0;
  transform:skewY(8deg);
}
.rt-hero h1 {
  position:relative;
  z-index:2;
  max-width:610px;
  margin:0!important;
  color:var(--rt-ink)!important;
  font-family:"Fraunces",Georgia,serif!important;
  font-size:clamp(38px,3.65vw,52px)!important;
  font-weight:400!important;
  letter-spacing:-.04em!important;
  line-height:1.08!important;
  text-transform:none!important;
}
.rt-hero h1::first-letter {
  color:var(--rt-amethyst);
}
.rt-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
  margin-top:30px;
}
.rt-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 27px;
  color:var(--rt-light)!important;
  background:linear-gradient(135deg,var(--rt-amethyst),var(--rt-jade-dark));
  border:1px solid rgba(255,255,255,.20);
  border-radius:999px;
  box-shadow:0 15px 33px rgba(37,32,57,.22);
  font-size:13px;
  font-weight:650;
  text-decoration:none!important;
  transition:transform .25s ease,box-shadow .25s ease;
}
.rt-button:hover {
  color:#fff!important;
  transform:translateY(-3px);
  box-shadow:0 20px 40px rgba(37,32,57,.30);
}
.rt-hero__media {
  z-index:2;
}
.rt-hero__media::before {
  content:"";
  position:absolute;
  z-index:3;
  inset:-25px;
  padding:1px;
  border-radius:50%;
  background:conic-gradient(from 20deg,
    rgba(184,154,94,.78) 0 10%,transparent 10% 26%,
    rgba(102,139,130,.62) 26% 41%,transparent 41% 61%,
    rgba(139,120,160,.64) 61% 74%,transparent 74% 89%,
    rgba(184,154,94,.52) 89% 97%,transparent 97%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:.80;
  transform:rotate(-4deg);
  pointer-events:none;
}
.rt-hero__media::after {
  content:"";
  position:absolute;
  z-index:1;
  left:50%;
  top:50%;
  width:116%;
  height:116%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(139,120,160,.31),rgba(102,139,130,.14) 43%,transparent 70%);
  filter:blur(16px);
}
.rt-hero__media img {
  position:relative;
  z-index:2;
  display:block;
  width:100%!important;
  height:480px!important;
  object-fit:cover;
  object-position:center;
  border-radius:42px 145px 42px 145px;
  filter:saturate(.88) contrast(1.02) brightness(.90);
  box-shadow:0 35px 75px rgba(15,12,28,.38);
}

/* Praktische werking — donkere energieruimte */
.rt-practical {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:94px 24px;
  background:
    radial-gradient(circle at 82% 20%,rgba(139,120,160,.22),transparent 28%),
    radial-gradient(circle at 15% 84%,rgba(102,139,130,.20),transparent 30%),
    linear-gradient(145deg,var(--rt-night),var(--rt-indigo));
}
.rt-practical::before {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:520px;
  height:520px;
  transform:translate(-50%,-50%) rotate(-10deg);
  border:1px solid rgba(184,154,94,.18);
  border-top-color:transparent;
  border-radius:50%;
  box-shadow:0 0 0 38px rgba(139,120,160,.025),0 0 0 76px rgba(102,139,130,.018);
}
.rt-practical > .full_section_inner {
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(50px,8vw,110px);
}
.rt-practical__intro {
  color:rgba(255,253,247,.78);
}
.rt-kicker {
  display:block;
  margin-bottom:13px;
  color:var(--rt-gold);
  font-family:"Fraunces",Georgia,serif;
  font-size:22px;
  font-style:italic;
}
.rt-practical h2,
.rt-usui h2 {
  margin:0 0 23px!important;
  font-family:"Fraunces",Georgia,serif!important;
  font-size:clamp(35px,4.5vw,55px)!important;
  font-weight:400!important;
  letter-spacing:-.035em!important;
  line-height:1.08!important;
  text-transform:none!important;
}
.rt-practical h2 {color:var(--rt-light)!important;}
.rt-practical__intro p {
  color:rgba(255,253,247,.72);
  font-size:15px;
  line-height:1.8;
}
.rt-practical h3 {
  margin:28px 0 0!important;
  color:#c9bea7!important;
  font-family:"Fraunces",Georgia,serif!important;
  font-size:25px!important;
  font-weight:400!important;
  font-style:italic;
  text-transform:none!important;
}
.rt-benefit-field {
  position:relative;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 32px;
  padding:24px 0;
}
.rt-benefit-field::before {
  content:"";
  position:absolute;
  left:50%;
  top:0;
  bottom:0;
  width:1px;
  background:linear-gradient(transparent,rgba(184,154,94,.48),rgba(102,139,130,.38),transparent);
}
.rt-benefit-field p {
  position:relative;
  margin:0!important;
  padding:15px 8px 15px 24px;
  color:rgba(255,253,247,.82);
  border-bottom:1px solid rgba(255,255,255,.07);
  font-size:13px;
  line-height:1.55;
}
.rt-benefit-field p::before {
  content:"";
  position:absolute;
  left:0;
  top:24px;
  width:12px;
  height:1px;
  background:linear-gradient(90deg,var(--rt-gold),var(--rt-jade),transparent);
}

/* Oorsprong — lichte, aardende sectie */
.rt-origin {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:92px 24px;
  background:
    radial-gradient(circle at 82% 25%,rgba(102,139,130,.15),transparent 27%),
    radial-gradient(circle at 15% 85%,rgba(139,120,160,.12),transparent 28%),
    var(--rt-ivory);
}
.rt-origin::before {
  content:"";
  position:absolute;
  left:48%;
  top:-80px;
  bottom:-80px;
  width:84px;
  border-left:1px solid rgba(102,139,130,.34);
  border-right:1px solid rgba(184,154,94,.25);
  border-radius:48% 52% 57% 43% / 72% 68% 32% 28%;
  transform:rotate(-3deg);
}
.rt-origin > .full_section_inner {
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:clamp(48px,8vw,110px);
}
.rt-origin__copy p {
  margin:0 0 18px;
  color:var(--rt-copy);
  font-size:15px;
  line-height:1.82;
}
.rt-origin__copy p:first-child {
  color:var(--rt-ink);
  font-family:"Fraunces",Georgia,serif;
  font-size:21px;
  line-height:1.65;
}
.rt-origin blockquote {
  position:relative;
  margin:30px 0 0!important;
  padding:23px 28px!important;
  color:var(--rt-amethyst)!important;
  background:transparent!important;
  border-left:1px solid var(--rt-gold)!important;
  border-right:1px solid rgba(102,139,130,.38)!important;
  font-family:"Fraunces",Georgia,serif!important;
  font-size:clamp(21px,2.2vw,30px)!important;
  font-style:italic;
  line-height:1.48!important;
}
.rt-origin__media::before,
.rt-usui__media::before,
.rt-closing__media::before {
  content:"";
  position:absolute;
  z-index:3;
  inset:-19px;
  padding:1px;
  border-radius:50%;
  background:conic-gradient(from 215deg,
    rgba(184,154,94,.70) 0 14%,transparent 14% 38%,
    rgba(102,139,130,.52) 38% 56%,transparent 56% 76%,
    rgba(139,120,160,.48) 76% 89%,transparent 89%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:.78;
  pointer-events:none;
}
.rt-origin__media img {
  display:block;
  width:100%!important;
  height:455px!important;
  object-fit:cover;
  border-radius:115px 35px 115px 35px;
  filter:saturate(.84) contrast(1.01);
  box-shadow:0 28px 60px rgba(37,32,57,.18);
}

/* Usui en diploma's */
.rt-usui {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:100px 24px;
  background:
    radial-gradient(circle at 15% 30%,rgba(184,154,94,.13),transparent 27%),
    radial-gradient(circle at 85% 78%,rgba(102,139,130,.15),transparent 29%),
    linear-gradient(140deg,#ebe4d7,var(--rt-paper));
}
.rt-usui > .full_section_inner {
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  gap:clamp(48px,8vw,105px);
}
.rt-usui h2 {
  color:var(--rt-ink)!important;
}
.rt-usui__copy p {
  margin:0 0 17px;
  color:var(--rt-copy);
  font-size:14px;
  line-height:1.78;
}
.rt-usui__copy p:nth-of-type(2) {
  padding:20px 25px;
  border-left:1px solid rgba(102,139,130,.58);
  border-right:1px solid rgba(184,154,94,.48);
  color:#594e60;
  font-family:"Fraunces",Georgia,serif;
  font-size:17px;
}
.rt-usui__media {
  padding:35px!important;
  background:rgba(255,253,247,.66);
  border-radius:50%;
}
.rt-usui__media img {
  display:block;
  width:100%!important;
  height:auto!important;
  object-fit:contain;
  filter:sepia(.10) saturate(.82);
  box-shadow:0 25px 50px rgba(37,32,57,.13);
}
.rt-usui__media::before {
  inset:-6px;
  transform:rotate(11deg);
}

/* Afsluiting */
.rt-closing {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:96px 24px 105px;
  background:
    radial-gradient(circle at 82% 22%,rgba(139,120,160,.28),transparent 26%),
    radial-gradient(circle at 18% 84%,rgba(102,139,130,.22),transparent 31%),
    linear-gradient(135deg,var(--rt-night),#3b3150);
}
.rt-closing::before {
  content:"";
  position:absolute;
  left:50%;
  top:-70px;
  bottom:-70px;
  width:96px;
  border-left:1px solid rgba(184,154,94,.30);
  border-right:1px solid rgba(139,120,160,.25);
  border-radius:55% 45% 48% 52% / 22% 28% 72% 78%;
  transform:rotate(3deg);
}
.rt-closing > .full_section_inner {
  grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);
  gap:clamp(45px,8vw,105px);
}
.rt-closing__copy p {
  max-width:760px;
  margin:0 0 24px;
  color:rgba(255,253,247,.80);
  font-family:"Fraunces",Georgia,serif;
  font-size:clamp(20px,2.1vw,29px);
  line-height:1.58;
}
.rt-closing__copy p:last-of-type {
  color:#d2c7b3;
  font-style:italic;
}
.rt-closing__media img {
  display:block;
  width:100%!important;
  height:auto!important;
  padding:22px;
  object-fit:contain;
  background:rgba(255,253,247,.92);
  border-radius:50%;
  filter:sepia(.08) saturate(.80);
}
.rt-closing__media::before {
  inset:-12px;
  transform:rotate(-9deg);
}

/* Responsive */
@media(max-width:960px) {
  .rt-hero > .full_section_inner,
  .rt-practical > .full_section_inner,
  .rt-origin > .full_section_inner,
  .rt-usui > .full_section_inner,
  .rt-closing > .full_section_inner {
    grid-template-columns:1fr 1fr;
    gap:38px;
  }
  .rt-hero h1 {font-size:clamp(37px,5vw,52px)!important;}
}
@media(max-width:760px) {
  .rt-hero,.rt-practical,.rt-origin,.rt-usui,.rt-closing {
    padding:58px 20px 64px;
  }
  .rt-hero {
    background:
      radial-gradient(circle at 82% 72%,rgba(139,120,160,.20),transparent 27%),
      linear-gradient(160deg,var(--rt-ivory) 0 53%,var(--rt-indigo) 53% 100%);
  }
  .rt-hero > .full_section_inner,
  .rt-practical > .full_section_inner,
  .rt-origin > .full_section_inner,
  .rt-usui > .full_section_inner,
  .rt-closing > .full_section_inner {
    display:flex;
    width:100%;
    flex-direction:column;
    gap:34px;
  }
  .rt-hero__copy,.rt-practical__intro,.rt-origin__copy,.rt-usui__copy,.rt-closing__copy {order:1;}
  .rt-hero__media,.rt-practical__benefits,.rt-origin__media,.rt-usui__media,.rt-closing__media {order:2;}
  .rt-hero__copy,.rt-hero__media,
  .rt-practical__intro,.rt-practical__benefits,
  .rt-origin__copy,.rt-origin__media,
  .rt-usui__copy,.rt-usui__media,
  .rt-closing__copy,.rt-closing__media {
    grid-column:auto;
    grid-row:auto;
  }
  .rt-hero h1 {font-size:38px!important;}
  .rt-hero__media img,.rt-origin__media img {height:320px!important;border-radius:30px 78px 30px 78px;}
  .rt-benefit-field {grid-template-columns:1fr;}
  .rt-benefit-field::before {display:none;}
  .rt-usui__media,.rt-closing__media {max-width:430px;margin:auto;}
}
@media(prefers-reduced-motion:no-preference) {
  .rt-hero__media::before,
  .rt-origin__media::before,
  .rt-usui__media::before,
  .rt-closing__media::before {
    animation:rt-energy-breathe 8s ease-in-out infinite;
  }
}
@keyframes rt-energy-breathe {
  0%,100% {opacity:.55;transform:rotate(-4deg) scale(.98);}
  50% {opacity:.92;transform:rotate(2deg) scale(1.02);}
}
