/* ===== Switch on Liberty — mylife-diabetescare (Figma 1:1) ===== */
.mld{
  --dg:#1a5036; --dg2:#1a5037; --dgt:#194b0c;
  --lime:#aac811; --limebg:#f0f4d7; --formbg:#dae49b;
  --purple:#5900fc; --white:#fff;
  --grad:radial-gradient(circle at 32% 28%, #8348ff 0%, #5900fc 44%, #3908ad 100%);
  font-family:'Helvetica Neue','Helvetica Neue LT Std',Helvetica,Arial,sans-serif;
  color:var(--dgt); line-height:1.5; font-weight:400;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  overflow-x:clip;
}
.mld *{box-sizing:border-box;}
.mld img{max-width:100%;display:block;}
.mld__wrap{max-width:1470px;margin:0 auto;padding:0 30px;}
.mld a{text-decoration:none;}
.mld sup{font-size:.55em;line-height:0;vertical-align:super;font-weight:inherit;}

/* ---------- HERO ---------- */
.mld-hero{position:relative;background:var(--dg);overflow:visible;padding:120px 0 0;}
.mld-hero__discclip{position:absolute;top:-400px;left:-400px;right:-400px;bottom:0;overflow:hidden;z-index:0;pointer-events:none;}
.mld-hero__disc{position:absolute;right:338px;bottom:-90px;width:600px;height:600px;border-radius:50%;background:var(--lime);}
.mld-hero .mld__wrap{position:relative;z-index:2;}
.mld-hero__grid{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;row-gap:0;align-items:stretch;grid-template-areas:"top right" "body right";}
.mld-hero__top{grid-area:top;display:flex;flex-direction:column;align-items:flex-start;position:relative;}
.mld-hero__body{grid-area:body;display:flex;flex-direction:column;align-items:flex-start;}
.mld-hero__right{grid-area:right;}
.mld-hero__eyebrow{color:var(--white);font-weight:700;font-size:42px;line-height:1.2;margin:0;}
.mld-hero__title{color:var(--lime);font-weight:800;font-size:clamp(78px,8vw,138px);line-height:.95;letter-spacing:-2px;margin:14px 0 10px;}
.mld-hero__tagline{color:var(--white);font-weight:600;font-size:32px;line-height:1.25;margin:0 0 10px;}
.mld-hero__sub{color:var(--white);font-weight:500;font-size:28px;margin:0 0 34px;}
.mld-hero__logo{width:228px;height:auto;margin:0 0 40px;}
.mld-hero__lead{color:#fff;font-weight:400;font-size:22px;line-height:1.55;max-width:660px;margin:0 0 auto;}
.mld-hero__note{background:var(--lime);color:var(--white);font-weight:500;font-size:22px;line-height:1.4;padding:26px 42px;border-radius:30px 30px 0 0;margin-top:44px;align-self:flex-start;}

/* hero right — gradient disc + phone + circles */
.mld-hero__right{position:relative;min-height:700px;}
.mld-hero__phone{position:absolute;right:-40px;top:95px;width:auto;height:775px;filter:drop-shadow(0 34px 60px rgba(0,0,0,.4));z-index:3;}
.mld-hero__info{position:absolute;right:410px;top:175px;width:360px;height:360px;border-radius:50%;background:var(--lime);color:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:1;padding:18px;}
.mld-hero__info-h{font-weight:700;font-size:30px;margin:0 0 6px;}
.mld-hero__info p{margin:1px 0;font-size:22px;font-weight:400;line-height:1.3;}
.mld-hero__btn{margin-top:16px;background:var(--white);color:var(--purple);font-weight:600;font-size:22px;border:0;border-radius:0;padding:11px 30px;cursor:pointer;display:inline-block;}
/* countdown hangt aan .mld-hero__top; 100% = linkerkolom, +40px gap +80px = plek uit Figma */
.mld-hero__count{position:absolute;left:calc(100% + 120px);top:56px;width:166px;height:166px;border-radius:50%;background:var(--lime);color:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:2;line-height:1;transform:rotate(-4.8deg);box-shadow:0 14px 30px rgba(0,0,0,.18);}
.mld-hero__count small{font-size:19px;font-weight:400;}
.mld-hero__count b{font-size:50px;font-weight:700;margin:3px 0;}
.mld-hero__count span{font-size:28px;font-weight:700;color:var(--purple);}

/* ---------- AGENDA ---------- */
.mld-agenda{position:relative;background:var(--limebg);padding:130px 0 120px;z-index:1;}
.mld-agenda__head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;margin-bottom:50px;}
.mld-badge{display:inline-block;background:var(--purple);color:var(--white);font-weight:500;font-size:15px;padding:7px 24px;border-radius:30px;letter-spacing:1px;}
.mld-agenda__title{color:var(--lime);font-weight:700;font-size:48px;margin:22px 0 0;}
.mld-agenda__intro{color:var(--dgt);font-weight:400;font-size:22px;line-height:1.55;align-self:center;}
.mld-agenda__list{display:flex;flex-direction:column;gap:14px;}
.mld-slot{background:var(--white);border-radius:20px;padding:30px 34px;display:grid;grid-template-columns:180px 1fr;gap:30px;align-items:start;}
.mld-slot__time{color:var(--purple);font-weight:600;font-size:22px;}
.mld-slot__title{color:var(--dgt);font-weight:600;font-size:22px;margin:0;}
.mld-slot__desc{color:var(--dgt);font-weight:400;font-size:19px;line-height:1.45;margin:12px 0 0;}
.mld-slot sup{font-size:.65em;}

/* ---------- SPREKERS ---------- */
.mld-speakers{position:relative;background:var(--lime);padding:130px 0 66px;overflow:hidden;}
.mld-speakers__blob{position:absolute;left:-301px;top:-117px;width:835px;height:auto;z-index:0;pointer-events:none;}
.mld-speakers .mld__wrap{position:relative;z-index:2;display:flex;gap:34px;align-items:flex-start;}
.mld-speakers__label{writing-mode:vertical-rl;transform:rotate(180deg);color:var(--white);font-weight:700;font-size:42px;align-self:center;margin-top:60px;}
.mld-speakers__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;flex:1;padding-top:60px;}
.mld-card{position:relative;background:var(--white);border-radius:20px;padding:78px 22px 32px;text-align:center;box-shadow:0 18px 34px rgba(26,80,54,.18);}
.mld-card__avatar{position:absolute;top:-60px;left:50%;transform:translateX(-50%);width:120px;height:120px;border-radius:50%;object-fit:cover;background:#e9ecd6;border:4px solid var(--white);}
.mld-card__name{color:var(--dgt);font-weight:700;font-size:22px;margin:0 0 8px;}
.mld-card__role{color:var(--lime);font-weight:400;font-size:15px;margin:0;line-height:1.5;}

/* ---------- FORM ---------- */
.mld-form{position:relative;background:var(--dg2);padding:120px 0;overflow:hidden;}
.mld-form .mld__wrap{position:relative;z-index:2;display:grid;grid-template-columns:470px 1fr;gap:80px;align-items:start;}
.mld-form__decowrap{position:absolute;left:32px;bottom:0;width:430px;height:430px;overflow:hidden;z-index:1;pointer-events:none;}
.mld .mld-form__deco{position:absolute;left:-430px;bottom:-430px;width:860px;max-width:none;}
.mld-form__decofade{position:absolute;inset:0;background:radial-gradient(circle at 0% 100%, var(--dg2) 0%, rgba(26,80,55,.5) 12%, rgba(26,80,55,0) 32%);}
.mld-form__side{position:relative;padding-bottom:40px;}
.mld-form__h{color:var(--lime);font-weight:500;font-size:44px;margin:0 0 24px;}
.mld-form__p{color:var(--white);font-weight:400;font-size:22px;line-height:1.55;}
.mld-form__card{background:var(--formbg);border-radius:20px;padding:74px;}
.mld-field{margin-bottom:26px;}
.mld-field label{display:block;color:var(--dg2);font-weight:700;font-size:19px;margin-bottom:9px;}
.mld-field input[type=text],.mld-field input[type=email]{width:100%;height:62px;border:0;border-radius:10px;background:var(--white);padding:0 20px;font-size:19px;color:var(--dg2);font-family:inherit;}
.mld-field input::placeholder{color:var(--dg2);opacity:.55;font-weight:400;}
.mld-check{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;}
.mld-check input{width:20px;height:20px;margin-top:2px;border-radius:4px;accent-color:var(--purple);flex:none;}
.mld-check label{color:var(--dg2);font-weight:400;font-size:19px;line-height:1.3;}
.mld-form__submit{margin-top:16px;display:inline-flex;align-items:center;gap:16px;background:var(--purple);color:var(--white);font-size:20px;font-weight:500;border:0;border-radius:100px;padding:0 12px 0 34px;height:74px;cursor:pointer;font-family:inherit;transition:filter .15s;}
.mld-form__submit:hover{filter:brightness(1.12);}
.mld-form__submit span{display:inline-flex;width:54px;height:54px;border-radius:50%;background:var(--white);flex:none;}
/* auto-injected math captcha styling */
.mld-form__card .mc-field{margin-bottom:22px;}
.mld-form__card .mc-field label{display:block;color:var(--dg2);font-weight:700;font-size:19px;margin-bottom:9px;}
.mld-form__card .mc-field input{width:150px;height:54px;border:0;border-radius:10px;background:var(--white);padding:0 16px;font-size:19px;color:var(--dg2);}

/* ---------- FOOTER ---------- */
.mld-footer{background:var(--dg2);padding:66px 0 42px;color:var(--white);}
.mld-footer__disclaimer{max-width:1320px;margin:0 0 40px;}
.mld-footer__disclaimer p{font-weight:400;font-size:12px;line-height:1.6;color:rgba(255,255,255,.75);margin:0 0 12px;}
.mld-footer__disclaimer p:last-child{margin-bottom:0;}
.mld .mld-footer__disclaimer a{color:var(--lime);text-decoration:underline;}
.mld-footer__reftitle{color:var(--lime);font-weight:700;font-size:20px;margin:0 0 18px;}
.mld-footer__refs{list-style:decimal;padding-left:26px;margin:0 0 44px;max-width:1320px;}
.mld-footer__refs li{font-weight:400;font-size:14px;line-height:1.55;color:var(--white);margin-bottom:16px;padding-left:6px;}
.mld-footer__row{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.15);padding-top:28px;}
.mld-footer__mk{display:flex;align-items:center;gap:18px;color:var(--white);font-weight:400;font-size:15px;}
.mld-footer__mk img{height:52px;width:auto;}
.mld-footer__pw{display:flex;align-items:center;gap:14px;color:var(--white);font-weight:400;font-size:15px;}
.mld-footer__pw img{height:36px;width:auto;}

/* ---------- RESPONSIVE ---------- */
/* HERO: er zijn maar TWEE hero-varianten — desktop (>1400px) en de mobiele
   Figma-weergave (<=1400px, blok onderaan). De vroegere aparte tablet-stapel
   is verwijderd: die maakte de cirkels en de telefoon te klein en liet de
   countdown los van de rest zweven. */

/* Tablet: overige twee-koloms secties stapelen */
@media (max-width:1000px){
  .mld__wrap{padding:0 24px;}
  .mld-agenda__head,.mld-form .mld__wrap{grid-template-columns:1fr;gap:40px;}
  .mld-agenda{padding:80px 0;}
  .mld-agenda__intro{align-self:start;}
  .mld-speakers{padding:90px 0 60px;overflow:visible;}
  .mld-speakers .mld__wrap{flex-direction:column;gap:20px;}
  .mld-speakers__label{writing-mode:horizontal-tb;transform:none;align-self:flex-start;margin-top:0;font-size:34px;}
  .mld-speakers__grid{grid-template-columns:repeat(2,1fr);gap:80px 30px;width:100%;}
  .mld-form{padding:80px 0;}
  .mld-form__card{padding:46px 36px;}
  .mld-form__decowrap{display:none;}
}

/* Mobile — overige secties (de hero krijgt hieronder zijn eigen Figma-blok) */
@media (max-width:600px){
  .mld__wrap{padding:0 18px;}
  .mld-agenda__intro,.mld-form__p{font-size:18px;}

  .mld-agenda,.mld-form,.mld-speakers{padding:70px 0;}
  .mld-slot{grid-template-columns:1fr;gap:8px;padding:22px;}
  .mld-agenda__title,.mld-form__h{font-size:32px;}

  .mld-speakers__grid{grid-template-columns:1fr;gap:80px;}

  .mld-form__card{padding:34px 22px;}
  .mld-field input[type=text],.mld-field input[type=email]{height:56px;font-size:17px;}

  .mld-footer{padding:54px 0 40px;}
  .mld-footer__row{flex-direction:column;align-items:flex-start;gap:24px;}
  .mld-footer__refs li{font-size:13px;}
  .mld-footer__mk,.mld-footer__pw{flex-wrap:wrap;}
}

/* ---------- MOBIELE HERO — 1:1 uit Figma-frame "Homepage Mobile" (640x1608) ----------
   Alle maten komen letterlijk uit dat frame en worden geschaald met --u = 1 design-px.
   Daardoor is de verhouding op elke breedte gelijk aan de Figma. Dit blok geldt tot
   1400px — óók op tablet, zodat er precies twee weergaven zijn (mobiel en desktop).
   --u groeit mee tot een kolombreedte van 900px; daarboven blijft de kolom staan en
   wordt hij gecentreerd, zodat de verhoudingen kloppen en niets uitrekt.
   Let op: Figma-tekstvakken staan op kaphoogte, vandaar line-heights kleiner dan 1em. */
@media (max-width:1400px){
  .mld-hero{--u:calc(min(100vw,900px) / 640);padding:0;overflow:hidden;}
  .mld-hero .mld__wrap{max-width:calc(640*var(--u));margin:0 auto;padding:0 calc(30*var(--u));}

  /* achtergrond: Ellipse 8 (boven) + Ellipse 9 (linksonder), Figma layer-blur 500 */
  .mld-hero__discclip{display:none;}

  /* Figma auto-layout = één kolom; tussenruimtes als marge, zodat de y-posities kloppen */
  .mld-hero__grid{display:flex;flex-direction:column;align-items:stretch;gap:0;}
  .mld-hero__body{display:contents;}
  .mld-hero__top{order:1;padding-top:calc(170*var(--u));}
  .mld .mld-hero__logo{order:2;display:block;width:calc(200*var(--u));height:auto;margin:calc(40*var(--u)) 0 0;}
  .mld-hero__lead{order:3;margin:calc(40*var(--u)) 0 0;max-width:none;}
  .mld-hero__right{order:4;}
  .mld-hero__note{order:5;}

  .mld-hero__eyebrow{font-size:calc(40*var(--u));line-height:calc(48*var(--u));font-weight:700;margin:0;}
  .mld-hero__title{font-size:calc(116*var(--u));line-height:calc(83*var(--u));font-weight:750;letter-spacing:0;white-space:nowrap;margin:calc(30*var(--u)) 0 0;}
  .mld-hero__tagline{font-size:calc(30*var(--u));line-height:calc(37*var(--u));font-weight:600;margin:calc(28*var(--u)) 0 0;}
  .mld-hero__sub{font-size:calc(26*var(--u));line-height:calc(31.2*var(--u));font-weight:400;margin:calc(14*var(--u)) 0 0;}
  /* letter-spacing houdt de alinea op 5 regels zoals in Figma (fallback-font is breder) */
  .mld-hero__lead{font-size:calc(20*var(--u));line-height:calc(31.5*var(--u));font-weight:300;letter-spacing:-.012em;}

  /* countdown (Frame 13): 185px, rechtsboven, 43px van de rechterrand van het frame */
  .mld-hero__count{top:calc(38*var(--u));right:calc(13*var(--u));left:auto;bottom:auto;width:calc(185*var(--u));height:calc(185*var(--u));aspect-ratio:auto;padding:0;transform:rotate(-4.475deg);box-shadow:none;z-index:4;}
  .mld-hero__count small{font-size:calc(20*var(--u));line-height:calc(17*var(--u));font-weight:400;}
  .mld-hero__count b{font-size:calc(36*var(--u));line-height:calc(42*var(--u));font-weight:400;margin:calc(15*var(--u)) 0 calc(8*var(--u));}
  .mld-hero__count span{font-size:calc(28*var(--u));line-height:calc(28*var(--u));font-weight:700;}

  /* compositie: canvas start op Figma y=774; telefoon 471 breed (bleedt rechts uit) en
     642 hoog — de eigen ratio (0,7336) van de nieuwe render, dus canvas 114+642=756.
     Ondermarge houdt de disclaimerbalk op y=1524 en de hero daarmee op 1608 hoog. */
  .mld-hero__right{position:relative;width:100%;max-width:calc(580*var(--u));height:calc(756*var(--u));min-height:0;aspect-ratio:auto;margin:calc(50*var(--u)) 0 calc(-6*var(--u));overflow:visible;}
  .mld-hero__right::before{content:"";position:absolute;left:calc(195*var(--u));top:calc(15*var(--u));width:calc(646*var(--u));height:calc(646*var(--u));border-radius:50%;background:var(--lime);z-index:1;}
  .mld-hero__phone{position:absolute;left:calc(169*var(--u));top:calc(114*var(--u));right:auto;width:calc(471*var(--u));height:auto;max-width:none;transform:none;z-index:3;filter:drop-shadow(0 calc(22*var(--u)) calc(40*var(--u)) rgba(0,0,0,.32));}

  /* webinar-cirkel (Frame 93): 400px, padding 70, inhoud gecentreerd, bleedt links uit */
  .mld-hero__info{position:absolute;left:calc(-59*var(--u));top:0;right:auto;bottom:auto;width:calc(400*var(--u));height:calc(400*var(--u));padding:calc(70*var(--u));z-index:2;box-shadow:none;justify-content:center;}
  .mld-hero__info-h{font-size:calc(32*var(--u));line-height:calc(23*var(--u));font-weight:700;margin:0 0 calc(16*var(--u));}
  .mld-hero__info p{font-size:calc(28*var(--u));line-height:calc(20*var(--u));font-weight:400;margin:0 0 calc(16*var(--u));}
  .mld-hero__info p:last-of-type{margin-bottom:0;}
  .mld-hero__btn{font-size:calc(26*var(--u));line-height:calc(19*var(--u));font-weight:500;text-transform:uppercase;padding:calc(17*var(--u)) calc(20*var(--u));margin-top:calc(44*var(--u));border-radius:0;}

  /* disclaimer-balk (Frame 96): sluit vlak aan tegen de onderkant van de hero */
  .mld-hero__note{width:100%;align-self:stretch;font-size:calc(21*var(--u));line-height:calc(32*var(--u));font-weight:400;padding:calc(28*var(--u)) calc(36*var(--u)) calc(24*var(--u));border-radius:calc(30*var(--u)) calc(30*var(--u)) 0 0;margin:0;}
}


/* Bevestigingsblok na inschrijving — minimumhoogte op desktop */
@media (min-width:1001px){
  .mld-form__card .medonline-flash{min-height:600px;}
}


/* ---------- FOOTER: juridische links ---------- */
.mld-footer__legal{display:flex;gap:28px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.15);margin-top:26px;padding-top:22px;}
.mld .mld-footer__legal a{color:var(--white);font-weight:400;font-size:14px;text-decoration:underline;}
.mld .mld-footer__legal a:hover{color:var(--lime);}


/* ---------- LEGAL PAGINA'S (privacy / disclaimer) ---------- */
.mld-legalhero{position:relative;background:var(--dg);padding:72px 0 60px;overflow:hidden;}
.mld-legalhero__back{display:inline-block;color:var(--lime);font-weight:600;font-size:15px;margin:0 0 28px;}
.mld-legalhero__back:hover{text-decoration:underline;}
.mld-legalhero__eyebrow{color:var(--white);font-weight:700;font-size:20px;margin:0 0 8px;}
.mld-legalhero__title{color:var(--lime);font-weight:800;font-size:clamp(44px,5vw,72px);line-height:1.05;letter-spacing:-1px;margin:0 0 28px;}
.mld-legalhero__btn{display:inline-block;background:var(--lime);color:var(--dgt);font-weight:700;font-size:17px;padding:14px 32px;border-radius:999px;}
.mld-legalhero__btn:hover{background:#bcd91f;}
.mld-legal{background:var(--white);padding:72px 0 92px;}
.mld-legal__body{max-width:900px;}
.mld-legal__updated{font-size:15px;color:#6b8560;margin:0 0 34px;}
.mld-legal__body h2{color:var(--dg);font-weight:700;font-size:26px;line-height:1.25;margin:44px 0 14px;}
.mld-legal__body h2:first-child{margin-top:0;}
.mld-legal__body p{font-size:17px;line-height:1.7;color:var(--dgt);margin:0 0 16px;}
.mld-legal__body ul{margin:0 0 18px;padding-left:24px;}
.mld-legal__body li{font-size:17px;line-height:1.7;color:var(--dgt);margin-bottom:8px;}
.mld .mld-legal__body a{color:var(--purple);text-decoration:underline;}
@media (max-width:700px){
  .mld-legalhero{padding:48px 0 44px;}
  .mld-legal{padding:48px 0 64px;}
  .mld-legal__body h2{font-size:22px;margin-top:36px;}
  .mld-legal__body p,.mld-legal__body li{font-size:16px;}
}
