
  :root {
    --rose-wine:#C74375; --pastel-petal:#E5C3D1; --ash-grey:#939F98;
    --white-smoke:#F2F2F2; --onyx:#121212; --white:#ffffff;
    --font-display:'Radley',Georgia,serif;
    --font-heading:'Manrope',sans-serif;
    --font-body:'DM Sans',sans-serif;
  }
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{font-family:var(--font-body);background:var(--white);color:var(--onyx);overflow-x:hidden;-webkit-font-smoothing:antialiased;}
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}

  /* ── NAV ── */
  nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1rem 4rem;background:rgba(18,18,18,.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(199,67,117,.2);}
  .nav-logo a{font-family:var(--font-heading);font-weight:800;font-size:.82rem;letter-spacing:.18em;color:var(--white);display:flex;align-items:center;gap:.75rem;}
  .nav-links{display:flex;gap:2rem;list-style:none;font-family:var(--font-heading);font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;}
  .nav-links a{color:rgba(255,255,255,.7);transition:color .2s;}
  .nav-links a:hover{color:var(--rose-wine);}
  .nav-cta{font-family:var(--font-heading);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.6rem 1.4rem;background:var(--rose-wine);color:var(--white);border:none;cursor:pointer;transition:background .2s;display:inline-block;white-space:nowrap;}
  .nav-cta:hover{background:#a8315f;}
  .nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:.5rem;}
  .nav-hamburger span{display:block;width:24px;height:2px;background:var(--white);transition:all .3s;}
  .mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:var(--onyx);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:2rem;}
  .mobile-menu.open{display:flex;}
  .mobile-menu a{font-family:var(--font-heading);font-size:1.2rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.8);transition:color .2s;}
  .mobile-menu a:hover{color:var(--rose-wine);}
  .mobile-menu .close-btn{position:absolute;top:1.5rem;right:1.5rem;font-size:1.5rem;color:rgba(255,255,255,.6);cursor:pointer;background:none;border:none;}

  /* ── HERO ── */
  #hero{min-height:100vh;background:var(--onyx);display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden;}
  .hero-image-side{position:relative;overflow:hidden;}
  .hero-image-side::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,transparent 60%,var(--onyx) 100%);}
  .hero-img-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#1a1a1a 0%,#2a1520 50%,#1a1a1a 100%);position:relative;}
  .hero-bg-art{position:absolute;inset:0;opacity:.18;background:radial-gradient(ellipse 60% 80% at 30% 50%,var(--rose-wine) 0%,transparent 70%),radial-gradient(ellipse 40% 60% at 70% 30%,var(--pastel-petal) 0%,transparent 70%);}
  .hero-content-side{display:flex;flex-direction:column;justify-content:center;padding:7rem 4rem 5rem 3rem;position:relative;}
  .hero-eyebrow{font-family:var(--font-heading);font-size:.68rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:1.25rem;}
  .hero-title{font-family:var(--font-display);font-size:clamp(2.2rem,3.5vw,4.5rem);line-height:1.1;color:var(--white);margin-bottom:.4rem;}
  .hero-title em{font-style:italic;color:var(--rose-wine);}
  .hero-subtitle{font-family:var(--font-display);font-size:clamp(1.8rem,2.8vw,3.8rem);line-height:1.1;color:var(--white);margin-bottom:1.75rem;}
  .hero-desc{font-size:.95rem;line-height:1.7;color:rgba(255,255,255,.6);max-width:38ch;margin-bottom:2rem;}
  .hero-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;}
  .btn-primary{font-family:var(--font-heading);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2rem;background:var(--rose-wine);color:var(--white);border:none;cursor:pointer;transition:background .2s;display:inline-block;}
  .btn-primary:hover{background:#a8315f;}
  .btn-outline{font-family:var(--font-heading);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2rem;background:transparent;color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.25);cursor:pointer;transition:border-color .2s,color .2s;display:inline-block;}
  .btn-outline:hover{border-color:var(--rose-wine);color:var(--rose-wine);}
  .hero-badge{margin-top:2.5rem;display:flex;gap:1.5rem;flex-wrap:wrap;}
  .hero-badge-item{text-align:center;}
  .hero-badge-num{font-family:var(--font-display);font-size:1.8rem;color:var(--rose-wine);display:block;}
  .hero-badge-label{font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.45);}

  /* ── SECTIONS ── */
  section{padding:6rem 4rem;}
  .section-eyebrow{font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.9rem;}
  .section-title{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,3rem);line-height:1.2;margin-bottom:1.25rem;}
  .section-title em{font-style:italic;}
  .section-body{font-size:.95rem;line-height:1.75;color:rgba(18,18,18,.7);max-width:58ch;}
  .container{max-width:1200px;margin:0 auto;}
  .divider{height:1px;background:linear-gradient(to right,transparent,var(--pastel-petal),transparent);margin:0 4rem;}

  /* ── PHOTO STRIPS ── */
  .photo-strip{position:relative;overflow:hidden;width:100%;}
  .photo-strip img{width:100%;height:420px;object-fit:cover;object-position:center;display:block;}
  .photo-strip-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(18,18,18,.55) 0%,transparent 65%);pointer-events:none;}
  .photo-strip-caption{position:absolute;bottom:2rem;left:4rem;}
  .photo-strip-caption-label{font-family:var(--font-heading);font-size:.66rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.4rem;}
  .photo-strip-caption-text{font-family:var(--font-display);font-size:1.5rem;font-style:italic;color:var(--white);line-height:1.3;}

  /* ── PILLARS ── */
  #pillars{background:var(--onyx);padding:6rem 4rem;}
  #pillars .section-title{color:var(--white);}
  #pillars .section-body{color:rgba(255,255,255,.55);}
  .pillars-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:3.5rem;}
  .pillar-card{border:1px solid rgba(199,67,117,.2);padding:2rem 1.75rem;position:relative;overflow:hidden;transition:border-color .3s,transform .3s;}
  .pillar-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--rose-wine);transform:scaleX(0);transform-origin:left;transition:transform .4s ease;}
  .pillar-card:hover{border-color:var(--rose-wine);transform:translateY(-4px);}
  .pillar-card:hover::before{transform:scaleX(1);}
  .pillar-num{font-family:var(--font-display);font-size:3rem;color:rgba(199,67,117,.15);line-height:1;margin-bottom:.4rem;}
  .pillar-name{font-family:var(--font-heading);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.9rem;}
  .pillar-desc{font-size:.88rem;line-height:1.65;color:rgba(255,255,255,.55);}

  /* ── WHO ── */
  #who{background:var(--white-smoke);padding:6rem 4rem;}
  .who-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-top:3.5rem;}
  .member-types{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem;}
  .member-type{padding:1.75rem 1.25rem;background:var(--white);border-bottom:3px solid transparent;transition:border-color .25s,transform .25s;}
  .member-type:hover{border-color:var(--rose-wine);transform:translateY(-3px);}
  .member-type-title{font-family:var(--font-heading);font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.65rem;}
  .member-type-desc{font-size:.85rem;line-height:1.6;color:rgba(18,18,18,.65);}

  /* ── EXPERIENCE ── */
  #experience{background:var(--onyx);padding:6rem 4rem;}
  #experience .section-title{color:var(--white);}
  #experience .section-body{color:rgba(255,255,255,.55);}
  .agenda-wrap{margin-top:3.5rem;display:grid;grid-template-columns:1fr 1.3fr;gap:3.5rem;}
  .agenda-title{font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ash-grey);margin-bottom:1.75rem;}
  .agenda-item{display:grid;grid-template-columns:5rem 1fr;gap:1.25rem;padding:1.25rem 0;border-bottom:1px solid rgba(255,255,255,.07);}
  .agenda-time{font-family:var(--font-heading);font-size:.75rem;font-weight:700;color:var(--rose-wine);letter-spacing:.04em;padding-top:.1rem;}
  .agenda-event-title{font-family:var(--font-heading);font-size:.88rem;font-weight:700;color:var(--white);margin-bottom:.3rem;}
  .agenda-event-desc{font-size:.8rem;line-height:1.6;color:rgba(255,255,255,.4);}
  .session-cards{display:flex;flex-direction:column;gap:1.25rem;}
  .session-card{padding:1.75rem;border:1px solid rgba(199,67,117,.15);position:relative;overflow:hidden;}
  .session-card::after{content:'';position:absolute;bottom:0;left:0;height:2px;width:0;background:var(--rose-wine);transition:width .4s ease;}
  .session-card:hover::after{width:100%;}
  .session-card-title{font-family:var(--font-heading);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.65rem;}
  .session-card-desc{font-size:.85rem;line-height:1.65;color:rgba(255,255,255,.55);}

  /* ── SEATS ── */
  #seats{background:var(--white-smoke);padding:6rem 4rem;}
  .seats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem;margin-top:3.5rem;}
  .seat-card{background:var(--white);padding:2.5rem 2rem;position:relative;transition:transform .3s;border-top:3px solid transparent;}
  .seat-card:hover{transform:translateY(-5px);border-color:var(--rose-wine);}
  .seat-icon{width:44px;height:44px;margin-bottom:1.25rem;display:flex;align-items:center;justify-content:center;background:rgba(199,67,117,.08);}
  .seat-icon svg{width:20px;height:20px;stroke:var(--rose-wine);fill:none;stroke-width:1.5;}
  .seat-cat{font-family:var(--font-heading);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.65rem;}
  .seat-title{font-family:var(--font-display);font-size:1.3rem;margin-bottom:.9rem;line-height:1.3;}
  .seat-desc{font-size:.88rem;line-height:1.7;color:rgba(18,18,18,.6);}

  /* ── INVESTMENT ── */
  #investment{background:var(--onyx);padding:6rem 4rem;}
  #investment .section-title{color:var(--white);}
  #investment .section-body{color:rgba(255,255,255,.55);}
  .pricing-wrap{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;margin-top:3.5rem;align-items:start;}
  .pricing-card{border:1px solid var(--rose-wine);padding:3rem;position:relative;overflow:hidden;}
  .pricing-card::before{content:'FOUNDING MEMBER';position:absolute;top:1.5rem;right:-2.5rem;background:var(--rose-wine);color:var(--white);font-family:var(--font-heading);font-size:.6rem;font-weight:800;letter-spacing:.14em;padding:.3rem 3.5rem;transform:rotate(15deg);}
  .pricing-price{font-family:var(--font-display);font-size:4rem;color:var(--rose-wine);line-height:1;margin:1rem 0 .4rem;}
  .pricing-period{font-family:var(--font-heading);font-size:.75rem;font-weight:600;color:rgba(255,255,255,.4);letter-spacing:.1em;margin-bottom:1.75rem;}
  .pricing-list{list-style:none;display:flex;flex-direction:column;gap:.85rem;margin-bottom:2rem;}
  .pricing-list li{font-size:.88rem;color:rgba(255,255,255,.7);padding-left:1.4rem;position:relative;line-height:1.5;}
  .pricing-list li::before{content:'—';color:var(--rose-wine);position:absolute;left:0;}
  .capacity-box{background:rgba(255,255,255,.04);padding:1.75rem;border:1px solid rgba(255,255,255,.08);margin-top:1.75rem;}
  .capacity-title{font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ash-grey);margin-bottom:1.25rem;}
  .capacity-item{display:flex;align-items:center;gap:.9rem;padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.88rem;color:rgba(255,255,255,.65);}
  .capacity-item:last-child{border-bottom:none;}
  .capacity-dot{width:7px;height:7px;border-radius:50%;background:var(--rose-wine);flex-shrink:0;}

  /* ── RESULTS ── */
  #results{background:var(--white);padding:6rem 4rem;}
  .results-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:start;margin-top:3.5rem;}
  .results-quote{font-family:var(--font-display);font-size:1.35rem;font-style:italic;line-height:1.6;color:var(--rose-wine);border-left:3px solid var(--rose-wine);padding-left:1.75rem;margin-top:2rem;}
  .results-list{list-style:none;display:flex;flex-direction:column;gap:1.1rem;}
  .results-list li{display:flex;gap:1.1rem;align-items:flex-start;font-size:.92rem;line-height:1.65;color:rgba(18,18,18,.7);}
  .result-marker{width:26px;height:26px;background:rgba(199,67,117,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-heading);font-size:.66rem;font-weight:800;color:var(--rose-wine);}
  .attendance-requirements{margin-top:2.5rem;padding:1.75rem;background:var(--white-smoke);border-left:3px solid var(--rose-wine);}
  .attendance-title{font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ash-grey);margin-bottom:.9rem;}
  .attendance-list{list-style:none;display:flex;flex-direction:column;gap:.55rem;}
  .attendance-list li{font-size:.85rem;color:rgba(18,18,18,.65);padding-left:1.1rem;position:relative;}
  .attendance-list li::before{content:'·';position:absolute;left:0;color:var(--rose-wine);font-size:1.1rem;top:-.1rem;}

  /* ── RETREATS ── */
  #retreats{background:var(--white-smoke);padding:6rem 4rem;}
  .retreat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem;margin-top:3.5rem;}
  .retreat-card{background:var(--white);padding:2.25rem;border-bottom:3px solid transparent;transition:border-color .3s,box-shadow .3s;}
  .retreat-card:hover{border-color:var(--rose-wine);box-shadow:0 8px 30px rgba(199,67,117,.08);}
  .retreat-icon{font-size:1.75rem;margin-bottom:1rem;}
  .retreat-card-title{font-family:var(--font-heading);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.65rem;}
  .retreat-card-desc{font-size:.88rem;line-height:1.7;color:rgba(18,18,18,.6);}

  /* ── PAY IT FORWARD ── */
  #payfwd{background:var(--onyx);padding:6rem 4rem;position:relative;overflow:hidden;}
  #payfwd::before{content:'';position:absolute;top:-50%;right:-20%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(199,67,117,.07) 0%,transparent 70%);pointer-events:none;}
  #payfwd .section-title{color:var(--white);}
  #payfwd .section-body{color:rgba(255,255,255,.55);}
  .payfwd-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-top:3.5rem;}
  .mentee-seats{list-style:none;display:flex;flex-direction:column;gap:.9rem;margin-top:1.75rem;}
  .mentee-seats li{padding:1.1rem 1.25rem;background:rgba(255,255,255,.04);border-left:2px solid var(--rose-wine);font-size:.88rem;line-height:1.6;color:rgba(255,255,255,.65);}
  .payfwd-tagline{font-family:var(--font-display);font-size:1.3rem;font-style:italic;color:var(--rose-wine);margin-top:2rem;line-height:1.5;}

  /* ── APPLY CTA ── */
  #apply{background:var(--rose-wine);padding:6rem 4rem;text-align:center;position:relative;overflow:hidden;}
  #apply::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 80% at 20% 50%,rgba(0,0,0,.15) 0%,transparent 70%);pointer-events:none;}
  .apply-eyebrow{font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:1.25rem;}
  .apply-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,4rem);color:var(--white);line-height:1.15;margin-bottom:1.25rem;}
  .apply-sub{font-size:1rem;color:rgba(255,255,255,.8);max-width:52ch;margin:0 auto 2rem;line-height:1.7;}
  .btn-white{font-family:var(--font-heading);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:1rem 2.5rem;background:var(--white);color:var(--rose-wine);border:none;cursor:pointer;transition:transform .2s,box-shadow .2s;display:inline-block;}
  .btn-white:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.15);}
  .apply-note{margin-top:1.25rem;font-size:.78rem;color:rgba(255,255,255,.55);letter-spacing:.05em;}

  /* ── FOOTER ── */
  footer{background:var(--onyx);padding:4.5rem 4rem 2.5rem;border-top:1px solid rgba(199,67,117,.15);}
  .footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:2.5rem;margin-bottom:3.5rem;}
  .footer-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:1.1rem;}
  .footer-name{font-family:var(--font-heading);font-weight:800;font-size:.85rem;letter-spacing:.16em;color:var(--white);}
  .footer-tagline{font-size:.82rem;line-height:1.7;color:rgba(255,255,255,.4);max-width:34ch;}
  .footer-col-title{font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ash-grey);margin-bottom:1.1rem;}
  .footer-links{list-style:none;display:flex;flex-direction:column;gap:.65rem;}
  .footer-links a{font-size:.85rem;color:rgba(255,255,255,.45);transition:color .2s;}
  .footer-links a:hover{color:var(--rose-wine);}
  .footer-contact{display:flex;flex-direction:column;gap:.7rem;}
  .footer-contact-item{font-size:.82rem;color:rgba(255,255,255,.45);line-height:1.5;}
  .footer-contact-item span{font-weight:600;color:var(--ash-grey);display:block;font-size:.66rem;letter-spacing:.11em;text-transform:uppercase;margin-bottom:.2rem;}
  .footer-contact-item a{color:rgba(255,255,255,.7);transition:color .2s; display:block;}
  .footer-contact-item a:hover{color:var(--rose-wine);}
  .footer-bottom{padding-top:1.75rem;border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
  .footer-copy{font-size:.75rem;color:rgba(255,255,255,.25);}
  .footer-est{font-family:var(--font-display);font-size:.82rem;font-style:italic;color:rgba(199,67,117,.5);}

  /* ── ANIMATIONS ── */
  /*.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease;}*/
  /*.reveal.visible{opacity:1;transform:translateY(0);}*/

  /* ══════════════════════════════════════════
     APPLICATION PAGE
  ══════════════════════════════════════════ */
  #app-page{display:none;min-height:100vh;background:var(--white);padding-top:80px;}
  #app-page.active{display:block;}
  #main-page{}
  #main-page.hidden{display:none;}

  .app-hero{background:var(--onyx);padding:5rem 4rem 4rem;text-align:center;}
  .app-hero-eyebrow{font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:1rem;}
  .app-hero-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.5rem);color:var(--white);line-height:1.2;margin-bottom:1rem;}
  .app-hero-title em{font-style:italic;color:var(--rose-wine);}
  .app-hero-sub{font-size:.95rem;color:rgba(255,255,255,.55);max-width:52ch;margin:0 auto;line-height:1.7;}
  .app-disclaimer{background:rgba(199,67,117,.08);border:1px solid rgba(199,67,117,.25);padding:1.25rem 1.75rem;max-width:700px;margin:2rem auto 0;font-size:.85rem;color:rgba(255,255,255,.6);line-height:1.65;font-style:italic;text-align:left;}

  .app-form-wrap{max-width:760px;margin:0 auto;padding:4rem 2rem 6rem;}

  /* Progress bar */
  .app-progress{margin-bottom:3rem;}
  .app-progress-bar{height:3px;background:rgba(199,67,117,.15);border-radius:2px;margin-bottom:.75rem;}
  .app-progress-fill{height:100%;background:var(--rose-wine);border-radius:2px;transition:width .4s ease;}
  .app-progress-text{font-family:var(--font-heading);font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ash-grey);}

  /* Form sections */
  .form-section{display:none;animation:fadeUpForm .4s ease both;}
  .form-section.active{display:block;}
  @keyframes fadeUpForm{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}

  .form-section-label{font-family:var(--font-heading);font-size:.65rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.5rem;}
  .form-section-title{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.25;margin-bottom:.75rem;color:var(--onyx);}
  .form-section-desc{font-size:.9rem;line-height:1.65;color:rgba(18,18,18,.6);margin-bottom:2.5rem;max-width:54ch;}

  .form-field{margin-bottom:1.75rem;}
  .form-label{display:block;font-family:var(--font-heading);font-size:.78rem;font-weight:700;color:var(--onyx);margin-bottom:.55rem;line-height:1.4;}
  .form-label .required{color:var(--rose-wine);margin-left:2px;}
  .form-input, .form-select, .form-textarea{width:100%;font-family:var(--font-body);font-size:.92rem;color:var(--onyx);background:var(--white);border:1.5px solid rgba(18,18,18,.15);padding:.85rem 1rem;transition:border-color .2s;outline:none;border-radius:0;-webkit-appearance:none;}
  .form-input:focus, .form-select:focus, .form-textarea:focus{border-color:var(--rose-wine);}
  .form-textarea{resize:vertical;min-height:110px;line-height:1.6;}
  .form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23939F98' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer;}

  /* Seat cards */
  .seat-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:.25rem;}
  .seat-option{border:1.5px solid rgba(18,18,18,.12);padding:1.5rem 1.25rem;cursor:pointer;transition:border-color .2s,background .2s;position:relative;}
  .seat-option:hover{border-color:var(--rose-wine);}
  .seat-option.selected{border-color:var(--rose-wine);background:rgba(199,67,117,.04);}
  .seat-option.selected::after{content:'✓';position:absolute;top:.6rem;right:.75rem;color:var(--rose-wine);font-size:.8rem;font-weight:700;}
  .seat-option-title{font-family:var(--font-heading);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--rose-wine);margin-bottom:.5rem;}
  .seat-option-desc{font-size:.8rem;line-height:1.55;color:rgba(18,18,18,.6);}

  /* Checkboxes */
  .checkbox-group{display:flex;flex-direction:column;gap:.85rem;}
  .checkbox-item{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;}
  .checkbox-item input[type=checkbox]{width:18px;height:18px;flex-shrink:0;accent-color:var(--rose-wine);margin-top:.1rem;cursor:pointer;}
  .checkbox-item-label{font-size:.88rem;line-height:1.55;color:rgba(18,18,18,.75);}

  /* Radio */
  .radio-group{display:flex;flex-direction:column;gap:.75rem;}
  .radio-item{display:flex;align-items:center;gap:.75rem;cursor:pointer;}
  .radio-item input[type=radio]{width:18px;height:18px;flex-shrink:0;accent-color:var(--rose-wine);cursor:pointer;}
  .radio-item-label{font-size:.9rem;color:rgba(18,18,18,.75);}

  /* Priorities */
  .priority-fields{display:flex;flex-direction:column;gap:.85rem;}
  .priority-item{display:flex;gap:.75rem;align-items:center;}
  .priority-num{font-family:var(--font-display);font-size:1.2rem;color:var(--rose-wine);min-width:1.5rem;}

  /* Nav buttons */
  .form-nav{display:flex;justify-content:space-between;align-items:center;margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(18,18,18,.08);}
  .btn-back{font-family:var(--font-heading);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.85rem 1.75rem;background:transparent;color:rgba(18,18,18,.5);border:1.5px solid rgba(18,18,18,.12);cursor:pointer;transition:border-color .2s,color .2s;}
  .btn-back:hover{border-color:var(--ash-grey);color:var(--onyx);}
  .btn-next{font-family:var(--font-heading);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2.25rem;background:var(--rose-wine);color:var(--white);border:none;cursor:pointer;transition:background .2s;}
  .btn-next:hover{background:#a8315f;}
  .btn-submit{font-family:var(--font-heading);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2.5rem;background:var(--rose-wine);color:var(--white);border:none;cursor:pointer;transition:background .2s;}
  .btn-submit:hover{background:#a8315f;}

  /* Thank you */
  #success-msg{display:none;text-align:center;padding:6rem 2rem; max-width: 700px; margin: 2em auto; text-align: center; }
  #success-msg.active{display:block;}
  .success-msg-icon{font-size:3rem;margin-bottom:1.5rem;}
  .success-msg-title{font-family:var(--font-display);font-size:2.5rem;color:var(--onyx);margin-bottom:1rem;}
  .success-msg-title em{font-style:italic;color:var(--rose-wine);}
  .success-msg-body{font-size:1rem;line-height:1.7;color:rgba(18,18,18,.65);max-width:46ch;margin:0 auto 2.5rem;}

  /* ── MOBILE ── */
  @media(max-width:768px){
    nav{padding:.9rem 1.25rem;}
    .nav-links{display:none;}
    .nav-cta{display:none;}
    .nav-hamburger{display:flex;}

    #hero{grid-template-columns:1fr;min-height:auto;padding-top:70px;}
    .hero-image-side{display:none;}
    .hero-content-side{padding:3rem 1.5rem 4rem;}
    .hero-badge{gap:1.25rem;}
    .hero-badge-item:not(:first-child){padding-left:1.25rem;}

    section{padding:4rem 1.5rem;}
    #pillars{padding:4rem 1.5rem;}
    #who{padding:4rem 1.5rem;}
    #experience{padding:4rem 1.5rem;}
    #seats{padding:4rem 1.5rem;}
    #investment{padding:4rem 1.5rem;}
    #results{padding:4rem 1.5rem;}
    #retreats{padding:4rem 1.5rem;}
    #payfwd{padding:4rem 1.5rem;}
    #apply{padding:4rem 1.5rem;}
    footer{padding:3.5rem 1.5rem 2rem;}

    .pillars-grid{grid-template-columns:1fr 1fr;gap:1rem;}
    .who-grid{grid-template-columns:1fr;gap:2.5rem;}
    .member-types{grid-template-columns:1fr;gap:1rem;}
    .agenda-wrap{grid-template-columns:1fr;gap:2.5rem;}
    .seats-grid{grid-template-columns:1fr;gap:1.25rem;}
    .pricing-wrap{grid-template-columns:1fr;gap:2.5rem;}
    .results-layout{grid-template-columns:1fr;gap:2.5rem;}
    .retreat-grid{grid-template-columns:1fr;gap:1.25rem;}
    .payfwd-grid{grid-template-columns:1fr;gap:2.5rem;}
    .footer-grid{grid-template-columns:1fr 1fr;gap:2rem;}

    .photo-strip img{height:260px;}
    .photo-strip-caption{left:1.5rem;bottom:1.5rem;}
    .photo-strip-caption-text{font-size:1.2rem;}
    .divider{margin:0 1.5rem;}

    .app-hero{padding:3.5rem 1.5rem 3rem;}
    .app-form-wrap{padding:2.5rem 1.25rem 5rem;}
    .seat-selector{grid-template-columns:1fr;}
    .form-nav{flex-direction:column-reverse;gap:1rem;}
    .btn-back,.btn-next,.btn-submit{width:100%;text-align:center;}
  }

  @media(max-width:480px){
    .pillars-grid{grid-template-columns:1fr;}
    .footer-grid{grid-template-columns:1fr;}
    .hero-badge{flex-wrap:wrap;gap:1rem;}
  }
