
/* ---- Elementor conversion generics (auto-generated) ---- */
.e-con.eden-conv{--display:block;max-width:none}
.e-con.eden-conv > .elementor-widget{width:auto;max-width:none}
.eden-conv .elementor-widget{position:static}
.eden-conv .elementor-widget-image{text-align:inherit}
h1.elementor-heading-title,h2.elementor-heading-title,h3.elementor-heading-title,
h4.elementor-heading-title,h5.elementor-heading-title,h6.elementor-heading-title{
  margin:revert;padding:revert;line-height:revert;
}

:root{ --eden-green:#AFB288; }

html,body{
  margin:0;
  padding:0;
  overflow-x:hidden;
  font-family:'Montserrat',sans-serif;
}

/* === FIX ELEMENTOR CONTAINER ISSUES === */
.elementor-section,
.elementor-container,
.elementor-widget-wrap{
  overflow: visible !important;
}

/* ===== NAVBAR (from nav.html) ===== */
.eden-header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:999;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:clamp(12px, 2vw, 20px) clamp(16px, 5vw, 60px);
  background:linear-gradient(
    to bottom,
    rgba(0,0,0,.85) 0%,
    rgba(0,0,0,.65) 45%,
    rgba(0,0,0,.25) 80%,
    rgba(0,0,0,0) 100%
  );
}
.eden-logo{
  display:flex;
  align-items:center;
}
.eden-logo img{
  height:clamp(28px, 4vw, 42px);
  max-width:100%;
  object-fit:contain;
}
.eden-nav{
  display:flex;
  gap:clamp(14px, 2vw, 28px);
  list-style:none;
  margin:0;
  padding:0;
}
.eden-nav > li{position:relative;}
.eden-nav a{
  font-family:'Fahkwang',serif;
  letter-spacing:2px;
  font-size:clamp(11px, 1.2vw, 13px);
  text-transform:uppercase;
  color:#fff;
  text-decoration:none;
  padding:6px 0;
  transition:.25s ease;
}
.has-drop > a::after{
  content:" ▾";
  font-size:10px;
  margin-left:6px;
}
.eden-nav li ul{
  position:absolute;
  top:100%;
  left:0;
  padding:16px 20px;
  min-width:220px;
  display:none;
  border-radius:12px;
  z-index:9999;
  list-style:none;
  background: rgba(20, 20, 20, 0.55);
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
  border: 1px solid rgba(255,255,255,0.18);
  box-shadow:0 20px 40px rgba(0,0,0,.45);
}
@media(min-width:1025px){
  .eden-nav li:hover > ul{display:block;}
}
.eden-nav li ul a{
  display:inline-block;
  color:#fff;
  padding:8px 0;
  font-size:14px;
  transition:.25s ease;
  position:relative;
}
.eden-nav li ul a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:0%;
  height:2px;
  background:var(--eden-green);
  transition:width .3s ease;
}
.eden-nav li ul a:hover{
  transform:translateY(-3px);
  color:var(--eden-green);
}
.eden-nav li ul a:hover::after{width:100%;}
.eden-btn{
  border:1.5px solid #fff;
  padding:clamp(8px, 1.5vw, 10px) clamp(14px, 2vw, 20px);
  font-family:'Fahkwang',serif;
  letter-spacing:2px;
  font-size:clamp(10px, 1.2vw, 12px);
  color:#fff;
  text-decoration:none;
  transition:.35s cubic-bezier(.2,.8,.2,1);
  position:relative;
  overflow:hidden;
}
.eden-btn::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,.35), transparent);
  transform:translateX(-120%);
  transition:.6s ease;
}
.eden-btn:hover::after{transform:translateX(120%);}
.eden-btn:hover{
  background:var(--eden-green);
  border-color:var(--eden-green);
  box-shadow:0 10px 30px rgba(175,178,136,.55);
  transform:translateY(-2px);
  color: white;
}
.eden-toggle{display:none;font-size:28px;color:#fff;cursor:pointer;}
.eden-close{display:none;}
@media(max-width:1024px){
  .eden-toggle{display:block;margin-left:auto; z-index:1000;}
  body.nav-open .eden-toggle{display:none;}
  .eden-btn{display:none;}
  .eden-nav{
    position:fixed;
    inset:0;
    background:rgba(10,10,10,.65);
    backdrop-filter: blur(26px);
    -webkit-backdrop-filter: blur(26px);
    flex-direction:column;
    padding:90px 30px 40px;
    gap:16px;
    transform:translateX(100%);
    transition:.5s cubic-bezier(.2,.8,.2,1);
  }
  .eden-nav.open{transform:translateX(0);}
  .eden-close{
    display:block;
    position:absolute;
    top:20px;
    right:22px;
    font-size:26px;
    color:#fff;
  }
  .eden-nav a{color:#fff;font-size:16px;}
  .eden-nav li ul a{ color:#fff; }
  .eden-nav li ul{
    position:static;
    display:none;
    padding-left:15px;
    background:rgba(255,255,255,.08);
    border-radius:8px;
    backdrop-filter: blur(14px);
  }
  .eden-nav li.open ul{display:block;}
}
body.nav-open{overflow:hidden;}

/* HERO */
.ruma-hero{
  position:relative;
  width:100vw;
  height:50vh;
  overflow:hidden;
}
.ruma-hero-bg{
  position:absolute;
  inset:0;
  background:url("/wp-content/uploads/2026/07/eden-d30495dd-Screenshot-2026-02-07-at-10.27.40-PM-scaled-2.png") center/cover no-repeat;
}
.ruma-hero-bg::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,.5));
}
.ruma-hero-content{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  color:#fff;
  padding:0 24px;
}
.ruma-hero-content h1{
  font-size:clamp(27px,4vw,52px);   /* more smaller */
  margin-bottom:10px;
  color:#fff;
  font-weight:300;
  letter-spacing:10px;
  text-transform:uppercase;
}

/* BREADCRUMB */
.ruma-breadcrumb{
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:rgba(255,255,255,.8);
}
.ruma-breadcrumb a{
  color:#fff;
  text-decoration:none;
  opacity:.85;
}
.ruma-breadcrumb span{
  opacity:.6;
}


:root{
  --riffle:#404427;
  --pear:#AFB288;
  --snow:#F4F3F2;
  --ink:#3C3C3B;
}

/* ==========================================
   1. PIGMENTATION HERO SPLIT SECTION
   ========================================== */
.eden-pigment {
  background:
    radial-gradient(1200px 420px at 10% -10%, rgba(175,178,136,.14), transparent 60%),
    linear-gradient(180deg, #f6f6f5 0%, var(--snow) 100%);
  padding: 40px 0; 
  font-family: 'Montserrat', sans-serif;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  overflow:hidden;
}

.eden-pigment-wrap{
  max-width: 1400px;
  margin:auto;
  padding:0 clamp(20px, 6vw, 80px);
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 40px; 
  align-items:center;
}

.eden-pigment h2{
  font-size: clamp(32px, 6vw, 64px);
  line-height:1.05;
  color: var(--ink);
  margin-bottom:20px;
}

.eden-pigment h2 span{
  display:block;
  font-size:12px;
  letter-spacing:2px;
  color: var(--pear);
  text-transform:uppercase;
  margin-bottom:10px;
}

.eden-pigment p{
  font-size: clamp(14px, 2.5vw, 18px);
  line-height:1.85;
  color: var(--ink);
  max-width:520px;
  margin-bottom:18px;
}

.eden-pigment-cta{
  display:inline-block;
  margin-top:24px;
  padding:12px 42px;
  border:2px solid var(--pear);
  color: var(--pear);
  font-weight:600;
  letter-spacing:2px;
  text-decoration:none;
  transition:.35s ease;
}

.eden-pigment-cta:hover{
  background: var(--pear);
  color:#fff;
  box-shadow:0 18px 40px rgba(175,178,136,.45);
}

.eden-pigment-visual{
  position:relative;
  width:100%;
  height:clamp(260px, 45vw, 520px);
  border-radius: 24px;
  overflow:hidden;
  box-shadow:
    0 24px 60px rgba(64,68,39,.28),
    0 0 0 1px rgba(255,255,255,.5) inset;
}

.eden-pigment-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* ==========================================
   2. PROCEDURE OVERVIEW CARD SECTION
   ========================================== */
.eden-procedure{
  padding: 40px 0; 
  font-family:'Montserrat', sans-serif;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:
    radial-gradient(1200px 360px at 80% -10%, rgba(175,178,136,.14), transparent 60%),
    linear-gradient(180deg, #ffffff 0%, var(--snow) 100%);
}

.eden-procedure-wrap{
  max-width: 1400px;
  margin:auto;
  padding:0 clamp(20px, 6vw, 80px);
  text-align:center;
}

.eden-procedure-eyebrow{
  color:var(--pear);
  letter-spacing:3px;
  text-transform:uppercase;
  font-size:12px;
  font-weight:600;
  margin-bottom:12px;
}

.eden-procedure h2{
  font-size: clamp(34px, 6vw, 64px);
  color:var(--ink);
  margin-bottom: 40px; 
  font-weight:600;
}

.eden-procedure-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(24px, 4vw, 40px);
}

.eden-procedure-card{
  background: rgba(255,255,255,.6);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-radius: 28px;
  padding: clamp(24px, 4vw, 36px);
  box-shadow:
    0 24px 60px rgba(64,68,39,.25),
    0 0 0 1px rgba(255,255,255,.45) inset;
  text-align:left;
  transition:.35s ease;
}

.eden-procedure-card:hover{
  transform: translateY(-6px);
  box-shadow:
    0 36px 90px rgba(64,68,39,.32),
    0 0 0 1px rgba(255,255,255,.55) inset;
}

.eden-procedure-icon{
  width:56px;
  height:56px;
  border-radius:50%;
  background: #AFB288;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  color:#fff;
  margin-bottom:18px;
}

.eden-procedure-card h3{
  font-size:22px;
  color:var(--ink);
  margin-bottom:14px;
  font-weight:600;
}

.eden-procedure-card p{
  font-size:15.5px;
  line-height:1.8;
  color:var(--ink);
  opacity:.95;
}

.eden-procedure-cta{
  display:inline-block;
  margin-top: 36px; 
  padding:14px 60px;
  border:2px solid var(--pear);
  color:var(--pear);
  text-decoration:none;
  letter-spacing:2px;
  font-weight:600;
  transition:.35s ease;
}

.eden-procedure-cta:hover{
  background:var(--pear);
  color:#fff;
  box-shadow:0 18px 40px rgba(175,178,136,.45);
}

/* ==========================================
   3. TREATMENTS ACCORDION LIST SECTION
   ========================================== */
.eden-pig-acc{
  padding: 40px 0; 
  font-family: 'Montserrat', sans-serif;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background: #fff;
}

.eden-pig-acc-wrap{
  max-width: 1400px;
  margin:auto;
  padding:0 clamp(20px, 6vw, 80px);
}

.eden-pig-acc h2{
  font-size: clamp(36px, 6vw, 72px);
  color: var(--ink);
  margin-bottom: 40px; 
  font-weight:500;
}

.eden-pig-acc h2 em{
  font-style: italic;
  font-weight:400;
}

.eden-pig-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(40px, 6vw, 100px); 
  align-items: start;
}

.eden-pig-list{
  display:flex;
  flex-direction:column;
  gap:32px; 
  grid-row: 1 / -1;
}

.eden-pig-item{
  border-bottom:1px solid rgba(0,0,0,.12);
  padding-bottom:20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
  user-select:none;
}

.eden-pig-item h4{
  font-size:20px;
  color:var(--ink);
  font-weight:500;
  margin: 0;
}

.eden-pig-toggle{
  width:34px;
  height:34px;
  border-radius:50%;
  background: rgba(175,178,136,.25);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  color:var(--riffle);
  transition:.35s ease;
  flex-shrink:0;
}

.eden-pig-item.active .eden-pig-toggle{
  background: var(--pear);
  color:#fff;
  transform: rotate(180deg);
}

.eden-pig-detail{
  display:none;
  grid-column: 2;
  grid-row: 1;
  align-self: start;
}

.eden-pig-detail.active{
  display:block;
}

.eden-pig-detail h3{
  font-size:28px;
  color:var(--ink);
  margin-bottom:10px;
  font-weight:500;
  margin-top: 0;
}

.eden-pig-meta{
  font-size:13px;
  letter-spacing:2px;
  color:var(--pear);
  text-transform:uppercase;
  margin-bottom:20px;
}

.eden-pig-detail p{
  font-size:16px;
  line-height:1.9;
  color:var(--ink);
  max-width:620px;
  margin: 0;
}

.eden-pig-cta{
  display:inline-block;
  margin-top:32px;
  padding:14px 48px;
  border:2px solid var(--pear);
  color:var(--pear);
  letter-spacing:2px;
  text-decoration:none;
  font-weight:600;
  transition:.35s ease;
}

.eden-pig-cta:hover{
  background:var(--pear);
  color:#fff;
  box-shadow:0 18px 40px rgba(175,178,136,.45);
}

/* ==========================================
   4. VIDEO GRAPHIC PREVIEW SECTION
   ========================================== */
.eden-video-block{
  padding: 40px 0; 
  font-family:'Montserrat', sans-serif;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:#fff;
}

.eden-video-wrap{
  max-width: 1400px;
  margin:auto;
  padding:0 clamp(20px, 6vw, 80px);
  text-align:center;
}

.eden-video-eyebrow{
  color:var(--pear);
  letter-spacing:3px;
  text-transform:uppercase;
  font-size:12px;
  font-weight:600;
  margin-bottom:14px;
}

.eden-video-wrap h2{
  font-size: clamp(36px, 6vw, 72px);
  line-height:1.05;
  color:var(--ink);
  margin-bottom:22px;
  font-weight:600;
}

.eden-video-desc{
  max-width:820px;
  margin:0 auto 24px; 
  font-size: clamp(15px, 2.4vw, 18px);
  line-height:1.9;
  color:var(--ink);
}

.eden-video-cta{
  display:inline-block;
  margin-bottom:44px; 
  padding:14px 60px;
  border:2px solid var(--pear);
  color:var(--pear);
  text-decoration:none;
  letter-spacing:2px;
  font-weight:600;
  transition:.35s ease;
}

.eden-video-cta:hover{
  background:var(--pear);
  color:#fff;
  box-shadow:0 18px 40px rgba(175,178,136,.45);
}

.eden-video-frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius: clamp(18px, 4vw, 36px);
  box-shadow:
    0 28px 70px rgba(64,68,39,.28),
    0 0 0 1px rgba(255,255,255,.5) inset;
  background:#000;
}

.eden-video-frame iframe,
.eden-video-frame video{
  width:100%;
  height:100%;
  object-fit:cover;
  border:0;
}

/* ==========================================
   5. BEFORE AFTER SUCCESS SLIDERS SECTION
   ========================================== */
.eden-success{ 
  padding: 40px 0; 
  font-family:'Montserrat', sans-serif; 
  width:100vw; 
  margin-left:calc(50% - 50vw); 
  margin-right:calc(50% - 50vw); 
  background: radial-gradient(1200px 360px at 80% -10%, rgba(175,178,136,.12), transparent 60%), linear-gradient(180deg, #f7f7f6 0%, var(--snow) 100%); 
}
.eden-success-wrap{ max-width: 1400px; margin:auto; padding:0 clamp(20px, 6vw, 80px); text-align:center; }
.eden-success-eyebrow{ color:var(--pear); letter-spacing:3px; text-transform:uppercase; font-size:12px; font-weight:600; margin-bottom:12px; }
.eden-success h2{ font-size: clamp(36px, 6vw, 72px); color:var(--ink); margin-bottom:18px; font-weight:600; }
.eden-success p{ max-width:820px; margin:0 auto 44px; font-size: clamp(15px, 2.4vw, 18px); line-height:1.9; color:var(--ink); }
.eden-success-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap: clamp(24px, 4vw, 44px); }
.eden-ba-card{ background: rgba(255,255,255,.6); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-radius: 32px; padding:22px 22px 30px; box-shadow: 0 34px 80px rgba(64,68,39,.25), 0 0 0 1px rgba(255,255,255,.45) inset; }
.eden-ba-wrap{ position:relative; width:100%; aspect-ratio:1/1; overflow:hidden; border-radius: 22px; }
.eden-ba-wrap img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.eden-ba-after{ clip-path: inset(0 50% 0 0); transition: clip-path .25s ease; }
.eden-ba-divider{ position:absolute; top:0; bottom:0; left:50%; width:2px; background:rgba(255,255,255,.9); z-index:2; }
.eden-ba-handle{ position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:60px; height:60px; border-radius:50%; background: rgba(175,178,136,.35); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 12px 30px rgba(64,68,39,.35), 0 0 0 1px rgba(255,255,255,.5) inset; z-index:3; pointer-events:none; }
.eden-ba-slider{ position:absolute; inset:0; appearance:none; background:none; z-index:5; cursor:ew-resize; }
.eden-ba-slider::-webkit-slider-thumb{ appearance:none; width:60px; height:60px; background:transparent; cursor:ew-resize; }
.eden-ba-slider::-moz-range-thumb{ width:60px; height:60px; background:transparent; border:none; cursor:ew-resize; }
.eden-ba-labels{ display:flex; justify-content:space-between; margin-top:16px; font-size:12px; letter-spacing:2px; text-transform:uppercase; color:var(--riffle); font-weight:600; }
.eden-success-cta{ display:inline-block; margin-top: 40px; padding:14px 60px; border:2px solid var(--pear); color:var(--pear); text-decoration:none; letter-spacing:2px; font-weight:600; transition:.35s ease; }
.eden-success-cta:hover{ background:var(--pear); color:#fff; box-shadow:0 18px 40px rgba(175,178,136,.45); }

/* ==========================================
   6. DROPDOWN FAQ ACCORDION SECTION
   ========================================== */
.eden-faq{ 
  padding: 40px 0; 
  font-family:'Montserrat', sans-serif; 
  width:100vw; 
  margin-left:calc(50% - 50vw); 
  margin-right:calc(50% - 50vw); 
  background: radial-gradient(1200px 360px at 10% -10%, rgba(175,178,136,.14), transparent 60%), linear-gradient(180deg, #ffffff 0%, var(--snow) 100%); 
}
.eden-faq-wrap{ max-width: 1400px; margin:auto; padding:0 clamp(20px, 6vw, 80px); }
.eden-faq-head{ text-align:center; margin-bottom: 40px; } 
.eden-faq-eyebrow{ color:var(--pear); letter-spacing:3px; text-transform:uppercase; font-size:12px; font-weight:600; margin-bottom:14px; }
.eden-faq-head h2{ font-size: clamp(36px, 6vw, 72px); color:var(--ink); margin-bottom:18px; font-weight:600; }
.eden-faq-head p{ max-width:820px; margin:auto; font-size: clamp(15px, 2.4vw, 18px); line-height:1.9; color:var(--ink); }
.eden-faq-list{ display:grid; gap:20px; max-width: 1100px; margin: 0 auto; }
.eden-faq-item{ background: rgba(255,255,255,.55); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-radius: 24px; box-shadow: 0 24px 60px rgba(64,68,39,.2), 0 0 0 1px rgba(255,255,255,.5) inset; overflow:hidden; transition:.4s ease; }
.eden-faq-item:hover{ box-shadow: 0 36px 90px rgba(64,68,39,.28), 0 0 0 1px rgba(255,255,255,.6) inset; }
.eden-faq-q{ padding: clamp(18px, 2.5vw, 28px) clamp(22px, 4vw, 48px); display:flex; align-items:center; justify-content:space-between; cursor:pointer; }
.eden-faq-q h4{ font-size: clamp(16px, 2.5vw, 20px); font-weight:600; color:var(--ink); margin:0; }
.eden-faq-toggle{ width:38px; height:38px; border-radius:50%; background: rgba(175,178,136,.25); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); display:flex; align-items:center; justify-content:center; font-size:22px; color:var(--riffle); transition:.35s ease; }
.eden-faq-item.active .eden-faq-toggle{ background: var(--pear); color:#fff; transform: rotate(180deg); }
.eden-faq-a{ max-height:0; overflow:hidden; transition:max-height .5s ease; }
.eden-faq-a p{ padding: 0 clamp(22px, 4vw, 48px) clamp(20px, 3vw, 32px); margin:0; font-size: clamp(14px, 2.4vw, 17px); line-height:1.9; color:var(--ink); }
.eden-faq-cta-wrap{ margin-top: 48px; text-align:center; margin-bottom:85px;}
.eden-faq-cta{ display:inline-block; padding:16px 64px; border:2px solid var(--pear); color:var(--pear); text-decoration:none; letter-spacing:2px; font-weight:600; transition:.35s ease; }
.eden-faq-cta{ display:inline-block; padding:16px 64px; border:2px solid var(--pear); color:var(--pear); text-decoration:none; letter-spacing:2px; font-weight:600; transition:.35s ease; }
.eden-faq-cta:hover{ background:var(--pear); color:#fff; box-shadow:0 18px 40px rgba(175,178,136,.45); }

/* ==========================================
   📱 MOBILE & TABLET ADAPTIVE FIX CODES
   ========================================== */
@media (max-width: 1024px){
  .eden-pigment{ padding: 48px 0; }
  .eden-pigment-wrap{ grid-template-columns:1fr; gap: 32px; padding: 0 24px; text-align:center; }
  .eden-pigment-content{ max-width: 720px; margin: 0 auto; }
  .eden-pigment h2{ font-size: clamp(28px, 7vw, 44px); }
  .eden-pigment-p{ max-width: 100%; }
  .eden-pigment-cta{ margin-top:18px; padding:12px 36px; }
  .eden-pigment-visual{ order:-1; height: clamp(220px, 60vw, 360px); border-radius: 18px; }

  .eden-procedure-grid{ grid-template-columns: 1fr 1fr; }

  .eden-pig-grid { grid-template-columns: 1fr; gap: 32px; }
  .eden-pig-list { grid-row: auto; gap: 24px; }
  .eden-pig-detail { grid-column: auto; grid-row: auto; }

  .eden-video-block{ padding: 48px 0; }
  .eden-video-wrap{ padding: 0 28px; }
  .eden-video-wrap h2{ font-size: clamp(28px, 6vw, 42px); margin-bottom:18px; }
  .eden-video-desc{ font-size: 15px; line-height:1.75; margin-bottom:32px; }
  .eden-video-cta{ padding:12px 48px; margin-bottom:48px; }
  .eden-video-frame{ border-radius: 22px; }

  .eden-success-wrap{ padding:0 40px; } .eden-success-grid{ grid-template-columns: repeat(2, 1fr); gap:32px; } .eden-ba-handle{ width:48px; height:48px; } .eden-ba-slider::-webkit-slider-thumb,.eden-ba-slider::-moz-range-thumb{ width:48px; height:48px; } .eden-success p{ margin-bottom:40px; }
  .eden-faq-wrap{ padding:0 40px; } .eden-faq-list{ gap:22px; } .eden-faq-q{ padding: 20px 28px; } .eden-faq-toggle{ width:34px; height:34px; font-size:20px; } .eden-faq-head p{ max-width:680px; }
}

@media (max-width: 640px){
  .eden-procedure{ padding: 40px 0; }
  .eden-procedure h2{ font-size:28px; margin-bottom:40px; }
  .eden-procedure-grid{ grid-template-columns:1fr; gap:22px; }
  .eden-procedure-card{ padding:24px; }
  .eden-procedure-card h3{ font-size:18px; }
  .eden-procedure-card p{ font-size:14px; }
  .eden-procedure-cta{ width:100%; max-width:320px; padding:12px 0; margin-top: 24px;}
}

@media (max-width: 600px){
  .eden-pigment{ padding: 40px 0; }
  .eden-pigment h2{ font-size: clamp(24px, 8vw, 34px); }
  .eden-pigment p{ font-size:14px; line-height:1.75; }
  .eden-pigment-cta{ width:100%; max-width:300px; padding:12px 0; }
  .eden-pigment-visual{ height: clamp(200px, 65vw, 300px); }

  .eden-video-block{ padding: 40px 0; }
  .eden-video-wrap{ padding: 0 20px; }
  .eden-video-eyebrow{ font-size:10px; letter-spacing:2px; }
  .eden-video-wrap h2{ font-size: clamp(22px, 8vw, 32px); line-height:1.15; }
  .eden-video-desc{ font-size:14.5px; line-height:1.7; margin-bottom:28px; }
  .eden-video-cta{ width:100%; max-width:320px; padding:12px 0; margin-bottom:40px; }
  .eden-video-frame{ border-radius: 16px; box-shadow: 0 18px 40px rgba(64,68,39,.25), 0 0 0 1px rgba(255,255,255,.5) inset; }

  .eden-success-wrap{ padding:0 20px; } .eden-success h2{ font-size: clamp(26px, 8vw, 34px); } .eden-success p{ font-size:14.5px; line-height:1.7; margin-bottom:32px; } .eden-success-grid{ grid-template-columns:1fr; gap:24px; } .eden-ba-card{ border-radius:22px; padding:16px 16px 22px; } .eden-ba-wrap{ border-radius:16px; } .eden-ba-handle{ width:40px; height:40px; } .eden-ba-slider::-webkit-slider-thumb,.eden-ba-slider::-moz-range-thumb{ width:40px; height:40px; } .eden-ba-labels{ font-size:10px; letter-spacing:1.5px; } .eden-success-cta{ width:100%; max-width:320px; padding:12px 0; }
  .eden-faq-wrap{ padding:0 18px; } .eden-faq-head{ margin-bottom:32px; } .eden-faq-head h2{ font-size: clamp(26px, 8vw, 34px); } .eden-faq-head p{ font-size:14.5px; line-height:1.7; } .eden-faq-item{ border-radius:18px; } .eden-faq-q{ padding:16px 18px; } .eden-faq-q h4{ font-size:15px; line-height:1.4; } .eden-faq-toggle{ width:30px; height:30px; font-size:18px; } .eden-faq-a p{ padding: 0 18px 16px; font-size:14px; } .eden-faq-cta{ width:100%; max-width:320px; padding:12px 0; }
}


:root{
  --green:#404427;
  --light:#F4F3F2;
  --text:#3C3C3B;
}

/* ===== FOOTER ===== */
.eden-footer{
  position:relative;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);

  /* 🌿 Premium spa gradient */
  background:
    radial-gradient(1200px 600px at 10% 0%, rgba(255,255,255,.65), transparent 60%),
    linear-gradient(180deg, #f6f8ee 0%, #eef2d6 100%);

  padding:120px 0 60px;
  font-family:'Noto Sans',sans-serif;
  overflow:hidden;
}

/* ✨ Soft luxury overlay */
.eden-footer::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, rgba(255,255,255,.25), transparent 40%, rgba(255,255,255,.15));
  pointer-events:none;
}

.eden-footer::after{
  content:"EDEN";
  position:absolute;
  inset:auto 0 -40px 0;
  font-family:'Fahkwang',serif;
  font-size:28vw;
  color:#000;
  opacity:.035;
  text-align:center;
  pointer-events:none;
  user-select:none;
}

.eden-footer-wrap{
  max-width:1400px;
  margin:auto;
  padding:0 40px;
  display:grid;
  grid-template-columns:1.2fr 1fr 1.2fr;
  gap:60px;
  align-items:start;
  position:relative;
  z-index:2;
}

/* Left */
.footer-left h4{
  font-family:'Fahkwang',serif;
  font-size:18px;
  margin-bottom:12px;
  color:var(--text);
}

.footer-left p{
  margin:6px 0;
  color:#555;
  font-size:14px;
  line-height:1.6;
}

.footer-newsletter{
  margin-top:20px;
}

.footer-newsletter label{
  font-size:12px;
  color:#777;
  display:block;
  margin-bottom:6px;
}

.footer-newsletter input{
  width:100%;
  padding:12px 14px;
  border:1px solid rgba(0,0,0,.15);
  outline:none;
  margin-bottom:10px;
  font-size:14px;
  background:rgba(255,255,255,.7);
  backdrop-filter: blur(6px);
  transition:.25s ease;
}

.footer-newsletter input:focus{
  border-color:var(--green);
  box-shadow:0 0 0 3px rgba(64,68,39,.12);
}

.footer-newsletter button{
  background:var(--green);
  border:none;
  padding:12px 22px;
  color:#fff;
  font-size:13px;
  cursor:pointer;
  transition:.3s cubic-bezier(.2,.8,.2,1);
  box-shadow:0 10px 20px rgba(64,68,39,.25);
}

.footer-newsletter button:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(64,68,39,.35);
}

/* Center */
.footer-center{
  text-align:center;
}

.footer-logo{
  width:124px;
  margin:0 auto 12px;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.2));
}

.footer-center h3{
  font-family:'Fahkwang',serif;
  letter-spacing:6px;
  font-size:34px;
  margin-bottom:6px;
  color:var(--green);
}

.footer-center span{
  display:block;
  font-size:12px;
  letter-spacing:4px;
  color:#999;
  margin-bottom:16px;
}

.footer-center p{
  font-size:14px;
  color:#666;
  line-height:1.7;
}

/* Right */
.footer-right{
  text-align:right;
}

.footer-hours p{
  font-size:14px;
  color:#555;
  margin:4px 0;
}

.footer-socials{
  margin-top:16px;
  display:flex;
  gap:14px;
  justify-content:flex-end;
}

.footer-socials a{
  width:40px;
  height:40px;
  border-radius:50%;
  border:1px solid rgba(64,68,39,.5);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--green);
  text-decoration:none;
  transition:.3s cubic-bezier(.2,.8,.2,1);
  background:rgba(255,255,255,.5);
  backdrop-filter: blur(6px);
}

.footer-socials a:hover{
  background:var(--green);
  color:#fff;
  transform:translateY(-4px) scale(1.05);
  box-shadow:0 14px 30px rgba(64,68,39,.35);
}

/* Responsive */
@media(max-width:1100px){
  .eden-footer-wrap{
    grid-template-columns:1fr;
    gap:40px;
    text-align:center;
  }
  .footer-right{
    text-align:center;
  }
  .footer-socials{
    justify-content:center;
  }
}
