/* =========================================================
   JorFytaal Sessies — premium persoonlijke begeleiding
   Bootstrap v1.2.19
   Aanvullend op de centrale site.css.
   ========================================================= */
.sessies-page{overflow-x:hidden;background:#fffdfb}
.sessies-page section[id]{scroll-margin-top:104px}
.sessies-page h1,.sessies-page h2,.sessies-page h3{text-wrap:balance}
.sessies-page .lead-copy{font-size:clamp(1.08rem,1.55vw,1.25rem);line-height:1.72;color:#514955}
.sessies-page .text-muted-jf{line-height:1.72}
.ses-textlink{display:inline-flex;align-items:center;gap:.48rem;color:var(--jf-purple);font-weight:750;text-decoration:none;transition:gap .18s ease,color .18s ease}
.ses-textlink:hover,.ses-textlink:focus{gap:.7rem;color:var(--jf-pink)}

/* HERO */
.ses-hero{padding:clamp(3rem,6vw,6rem) 0 clamp(4rem,7vw,6.5rem);background:radial-gradient(circle at 10% 12%,rgba(204,0,102,.075),transparent 28%),radial-gradient(circle at 88% 18%,rgba(83,32,158,.11),transparent 30%),linear-gradient(180deg,#fff 0%,#f4eff9 100%)}
.ses-hero::after{content:"";position:absolute;right:-12rem;bottom:-14rem;width:38rem;height:38rem;border-radius:50%;border:1px solid rgba(83,32,158,.07);box-shadow:0 0 0 4.5rem rgba(83,32,158,.023),0 0 0 9rem rgba(204,0,102,.018)}
.ses-hero h1{max-width:760px;margin-bottom:1.2rem;font-size:clamp(3rem,5.1vw,4.7rem);line-height:.98}
.ses-hero .hero-lead{max-width:690px;margin:0;color:#4d4651;font-size:clamp(1.08rem,1.5vw,1.28rem);line-height:1.7}
.ses-note{max-width:650px;margin:1.1rem 0 0;color:#756d79;font-size:.93rem}
.ses-trust{display:flex;flex-wrap:wrap;gap:.65rem 1.2rem;padding:0;margin:1.35rem 0 0;list-style:none;color:#605866;font-size:.88rem;font-weight:700}
.ses-trust li{display:flex;align-items:center;gap:.42rem}.ses-trust i{color:var(--jf-pink);font-size:.72rem}
.ses-hero-visual{position:relative;min-height:575px}
.ses-hero-photo{position:absolute;inset:0 0 2.8rem 3.8rem;overflow:hidden;border-radius:2.4rem;box-shadow:0 28px 70px rgba(58,27,84,.18);background:#ece7ef}
.ses-hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 56%,rgba(46,18,87,.14))}
.ses-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.ses-hero-card{position:absolute;z-index:2;border:1px solid rgba(255,255,255,.62);box-shadow:0 16px 40px rgba(44,25,55,.16);backdrop-filter:blur(12px)}
.ses-hero-card--top{right:-.35rem;top:1.8rem;width:min(250px,48%);padding:1rem 1.1rem;border-radius:1.3rem;background:rgba(255,255,255,.94)}
.ses-hero-card--top span{display:block;color:var(--jf-pink);font-family:var(--jf-font-meta);font-size:.66rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.ses-hero-card--top strong{display:block;margin:.28rem 0;color:var(--jf-purple-deep);font-family:var(--jf-font-heading);font-size:1.18rem;line-height:1.2}
.ses-hero-card--top small{display:block;color:#6c6470;line-height:1.45}
.ses-hero-card--bottom{left:0;bottom:0;display:flex;align-items:center;gap:.8rem;padding:.85rem 1rem;border-radius:1.2rem;background:rgba(46,18,87,.95);color:#fff}
.ses-hero-card--bottom>i{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:rgba(255,255,255,.1);color:#f2acd0}
.ses-hero-card--bottom strong,.ses-hero-card--bottom small{display:block}.ses-hero-card--bottom strong{font-family:var(--jf-font-heading);font-size:1rem}.ses-hero-card--bottom small{color:rgba(255,255,255,.7);font-size:.76rem}

/* RECOGNITION */
.ses-checks{display:grid;gap:.78rem;margin:0;padding:0;list-style:none}
.ses-checks li{display:flex;gap:.85rem;align-items:flex-start;padding:.9rem 1rem;border:1px solid rgba(83,32,158,.09);border-radius:1rem;background:#fff;box-shadow:0 8px 24px rgba(45,17,87,.035)}
.ses-checks li i{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;margin-top:.03rem;border-radius:50%;background:var(--jf-pink-wash);color:var(--jf-pink);font-size:.68rem}
.ses-pull{margin:1rem 0 0;padding:1rem 1.15rem;border-left:3px solid var(--jf-pink);border-radius:0 1rem 1rem 0;background:linear-gradient(90deg,#fff5fa,#fff);color:var(--jf-purple-deep);font-family:var(--jf-font-heading);font-size:1.08rem;font-weight:700}

/* FOUR LAYERS + EXPERIENCE */
#verder-kijken{background:linear-gradient(180deg,#f7f2fb 0%,#fff 100%)}
.ses-layers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;padding:0;margin:1.35rem 0;list-style:none}
.ses-layers li{display:flex;align-items:center;gap:.7rem;padding:.85rem .95rem;border:1px solid rgba(83,32,158,.09);border-radius:1rem;background:#fff;color:#453c49;font-weight:750;box-shadow:0 8px 24px rgba(45,17,87,.035)}
.ses-layers i{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,#f1eafa,#fbeaf3);color:var(--jf-purple)}
.ses-know{position:relative;overflow:hidden;min-height:100%;padding:clamp(1.7rem,3.2vw,2.6rem);border-radius:2rem;background:linear-gradient(145deg,#35135f,#5b209b 60%,#8a1a64);color:#fff;box-shadow:0 24px 64px rgba(56,23,87,.17)}
.ses-know::after{content:"";position:absolute;right:-5rem;bottom:-6rem;width:14rem;height:14rem;border-radius:50%;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 2.8rem rgba(255,255,255,.025)}
.ses-know__label{position:relative;z-index:1;color:#f3afd0;font-family:var(--jf-font-meta);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.ses-know__line{position:relative;z-index:1;margin:1rem 0 1.1rem;font-family:var(--jf-font-heading);font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.2;color:#fff}
.ses-know p:not(.ses-know__line){position:relative;z-index:1;color:rgba(255,255,255,.79);line-height:1.7}

/* SESSION PROCESS */
#sessie{position:relative}
.fytaal-section-intro{max-width:860px;margin-inline:auto}
.ses-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;padding:0;margin:2.5rem 0 0;list-style:none;counter-reset:none}
.ses-steps li{position:relative;min-height:285px;padding:1.45rem 1.35rem;border:1px solid rgba(83,32,158,.1);border-radius:1.55rem;background:#fff;box-shadow:0 12px 34px rgba(45,17,87,.05)}
.ses-steps li:nth-child(even){transform:translateY(1.25rem)}
.ses-steps__num{display:grid;place-items:center;width:44px;height:44px;margin-bottom:1.1rem;border-radius:14px;background:linear-gradient(145deg,var(--jf-purple),#74269b);color:#fff;font-family:var(--jf-font-meta);font-size:.8rem;font-weight:800;box-shadow:0 9px 22px rgba(83,32,158,.18)}
.ses-steps h3{margin-bottom:.6rem;font-size:1.38rem}.ses-steps p{margin:0;color:#6b6270;font-size:.95rem}
.ses-tools{margin:2.4rem 0 0;padding:1.2rem 1.3rem;border:1px solid rgba(83,32,158,.09);border-radius:1.35rem;background:linear-gradient(145deg,#fbf8fd,#fff)}
.ses-tools__label{margin-bottom:.75rem;color:var(--jf-purple-deep);font-family:var(--jf-font-heading);font-size:1.08rem;font-weight:700}
.ses-tools ul{display:flex;flex-wrap:wrap;gap:.55rem;padding:0;margin:0;list-style:none}.ses-tools li{padding:.48rem .72rem;border-radius:999px;background:#fff;border:1px solid rgba(83,32,158,.12);color:#625968;font-size:.84rem;font-weight:650}
.ses-reassure{max-width:860px;margin:1.1rem auto 0;text-align:center;color:#746b78;font-size:.9rem}

/* EXPECTATIONS */
#verwachten{background:linear-gradient(180deg,#fff 0%,#faf6fc 100%)}
.ses-expect{padding:1.45rem 1.5rem;border:1px solid rgba(83,32,158,.1);border-radius:1.65rem;background:#fff;box-shadow:0 14px 38px rgba(46,20,72,.055)}
.ses-expect__label{margin-bottom:.9rem;color:var(--jf-pink);font-family:var(--jf-font-meta);font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.ses-expect ul{display:grid;gap:.62rem;padding:0;margin:0;list-style:none}.ses-expect li{display:flex;align-items:center;gap:.7rem;color:#4e4553;font-weight:650}.ses-expect li i{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:var(--jf-purple-wash);color:var(--jf-purple);font-size:.8rem}.ses-expect>p{margin:.95rem 0 0;padding-top:.85rem;border-top:1px solid rgba(83,32,158,.08);color:#766e79;font-size:.88rem}
.ses-principle{display:flex;gap:1rem;align-items:flex-start;margin-top:1rem;padding:1.2rem 1.25rem;border-radius:1.45rem;background:linear-gradient(135deg,var(--jf-purple-deep),#592098);color:#fff;box-shadow:0 14px 38px rgba(46,18,87,.14)}
.ses-principle__icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.1);color:#f3add0}.ses-principle__label{display:block;color:#efafd1;font-family:var(--jf-font-meta);font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.ses-principle strong{display:block;margin:.22rem 0;color:#fff;font-family:var(--jf-font-heading);font-size:1.16rem}.ses-principle p{margin:0;color:rgba(255,255,255,.73);font-size:.9rem;line-height:1.55}

/* SHORT-TERM BLOCK */
.ses-short{position:relative;overflow:hidden;padding:clamp(1.7rem,3.7vw,3rem);border-radius:2.1rem;background:linear-gradient(135deg,#35135f 0%,#5a209b 62%,#8f165e 100%);color:#fff;box-shadow:0 26px 68px rgba(56,23,86,.17)}
.ses-short::after{content:"";position:absolute;right:-6rem;bottom:-9rem;width:20rem;height:20rem;border:1px solid rgba(255,255,255,.09);border-radius:50%;box-shadow:0 0 0 3.8rem rgba(255,255,255,.025)}
.ses-short>.row{position:relative;z-index:1}.ses-short h2{margin:0;color:#fff;font-size:clamp(2rem,3.2vw,3rem)}.ses-short p{color:rgba(255,255,255,.78)}
.ses-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding:0;margin:1.2rem 0 0;list-style:none}.ses-facts li{padding:.85rem .9rem;border:1px solid rgba(255,255,255,.1);border-radius:1rem;background:rgba(255,255,255,.075)}.ses-facts strong,.ses-facts span{display:block}.ses-facts strong{font-family:var(--jf-font-heading);font-size:1.05rem;color:#fff}.ses-facts span{margin-top:.15rem;color:rgba(255,255,255,.65);font-size:.78rem}

/* ABOUT */
.ses-about{overflow:hidden;border:1px solid rgba(83,32,158,.1);border-radius:2.1rem;background:#fff;box-shadow:0 22px 58px rgba(54,25,79,.08)}
.ses-about__photo{height:100%;min-height:520px}.ses-about__photo img{width:100%;height:100%;object-fit:cover;object-position:center center}
.ses-about__copy{display:flex;flex-direction:column;justify-content:center;height:100%;padding:clamp(1.7rem,4vw,3.5rem)}.ses-about__copy h2{font-size:clamp(2rem,3.2vw,3rem)}.ses-about__copy p{color:#655c6a}.ses-about__sign{padding:1rem 1.1rem;border-left:3px solid var(--jf-pink);border-radius:0 1rem 1rem 0;background:#fff7fb;color:#473c4c!important}

/* OTHER ENTRY POINTS */
#andere-ingangen{background:#fff}
.ses-more{display:flex;flex-direction:column;height:100%;min-height:300px;padding:1.45rem;border:1px solid rgba(83,32,158,.1);border-radius:1.55rem;background:linear-gradient(145deg,#fff,#fbf8fd);color:inherit;text-decoration:none;box-shadow:0 12px 34px rgba(45,17,87,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ses-more:hover,.ses-more:focus{transform:translateY(-4px);border-color:rgba(83,32,158,.2);box-shadow:0 18px 46px rgba(50,22,76,.085);color:inherit}.ses-more>i{display:grid;place-items:center;width:48px;height:48px;margin-bottom:1.2rem;border-radius:15px;background:linear-gradient(145deg,#f0e8f8,#faeaf2);color:var(--jf-purple)}.ses-more h3{font-size:1.35rem}.ses-more p{margin-bottom:1.15rem;color:#6a616f;font-size:.95rem}.ses-more strong{margin-top:auto;color:var(--jf-purple);font-size:.88rem}

/* FAQ */
.ses-accordion .accordion-item{overflow:hidden;margin-bottom:.7rem;border:1px solid rgba(83,32,158,.1)!important;border-radius:1rem!important;background:#fff}.ses-accordion .accordion-button{padding:1rem 1.05rem;background:#fff;color:#392f3f;font-family:var(--jf-font-heading);font-size:1.05rem;font-weight:700;box-shadow:none!important}.ses-accordion .accordion-button:not(.collapsed){background:var(--jf-purple-wash);color:var(--jf-purple-deep)}.ses-accordion .accordion-button::after{filter:hue-rotate(220deg)}.ses-accordion .accordion-body{padding:0 1.05rem 1.05rem;color:#665d6b;line-height:1.7}.ses-accordion .accordion-body a{color:var(--jf-purple);font-weight:700}.legal-help{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid rgba(83,32,158,.1);border-radius:1.2rem;background:#fbf8fd}.legal-help strong,.legal-help span{display:block}.legal-help strong{color:var(--jf-purple-deep)}.legal-help span{color:#716875;font-size:.84rem}

/* FINAL CTA */
.fytaal-final-cta{background:linear-gradient(180deg,#f8f2fb,#fff)}
.cta-band{position:relative;overflow:hidden;padding:clamp(2rem,5vw,4rem);border-radius:2.2rem;background:linear-gradient(135deg,#35135f,#5a209b 62%,#94125b);color:#fff;text-align:center;box-shadow:0 26px 70px rgba(55,23,83,.17)}
.cta-band::after{content:"";position:absolute;right:-7rem;top:-9rem;width:21rem;height:21rem;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 4rem rgba(255,255,255,.022)}.cta-band>*{position:relative;z-index:1}.cta-band h2{max-width:850px;margin:.25rem auto .8rem;color:#fff;font-size:clamp(2.1rem,3.8vw,3.5rem)}.cta-band>p{max-width:720px;margin:0 auto 1.3rem;color:rgba(255,255,255,.76)}.ses-cta-help{margin:1rem 0 0!important;font-size:.86rem!important;color:rgba(255,255,255,.68)!important}.ses-cta-help a{color:#fff;font-weight:700}

@media(max-width:991.98px){
  .ses-hero-visual{min-height:500px;margin-top:.8rem}.ses-hero-photo{inset:0 1.5rem 2.6rem 2.8rem}.ses-hero-card--top{right:.2rem}
  .ses-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.ses-steps li:nth-child(even){transform:none}.ses-steps li{min-height:235px}
  .ses-about__photo{min-height:430px}.ses-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767.98px){
  .ses-hero{padding-top:2.7rem}.ses-hero h1{font-size:clamp(2.75rem,11vw,3.55rem)}.ses-hero-visual{min-height:430px}.ses-hero-photo{inset:0 0 2.4rem 1.5rem;border-radius:1.8rem}.ses-hero-card--top{top:1rem;right:-.2rem;width:min(225px,56%)}.ses-hero-card--bottom{left:.1rem;bottom:0}
  .ses-layers{grid-template-columns:1fr}.ses-steps{grid-template-columns:1fr}.ses-steps li{min-height:0}.ses-facts{grid-template-columns:1fr}.ses-about__photo{min-height:360px}.ses-about__copy{padding:1.55rem}.legal-help{align-items:flex-start;flex-direction:column}.legal-help .btn-jf-outline{width:100%}.ses-more{min-height:250px}
}
@media(max-width:430px){
  .ses-hero-visual{min-height:380px}.ses-hero-photo{left:.8rem;right:0}.ses-hero-card--top{width:68%;padding:.85rem .9rem}.ses-hero-card--top strong{font-size:1.02rem}.ses-hero-card--bottom{max-width:92%;padding:.72rem .8rem}.ses-trust{display:grid;gap:.45rem}.ses-short{border-radius:1.6rem}.cta-band{border-radius:1.6rem}
}
