
/* ---- 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{
  overflow-x: hidden;
}
body{
  margin:0;
  padding:0;
  overflow-x: hidden;
  max-width: 100%;
  font-family:'Montserrat',sans-serif;
}
*,
*::before,
*::after{
  box-sizing: border-box;
}

/* === 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:55vh;
  min-height:320px;
  overflow:hidden;
}
.ruma-hero-bg{
  position:absolute;
  inset:0;
  background:url("/wp-content/uploads/2026/07/eden-db0f8d48-photo-1570172619644-dfd03ed5d881.jpg") center/cover no-repeat;
}
.ruma-hero-bg::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom, rgba(0,0,0,.45) 0%, rgba(0,0,0,.6) 100%);
}
.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(28px,4vw,52px);
  margin-bottom:12px;
  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,.9);
}
.ruma-breadcrumb a{
  color:#fff;
  text-decoration:none;
  opacity:.9;
}
.ruma-breadcrumb span{
  opacity:.7;
}


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

/* ==========================================
   1. PIGMENTATION 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 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 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;
  gap: 32px;
  align-items: start;
}

.eden-pig-list{
  display:flex;
  flex-direction:column;
  width: 100%;
}

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

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

.eden-pig-item:hover h4,
.eden-pig-item.active h4 {
  color: var(--riffle);
  font-weight: 600;
}

.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-details-container {
  width: 100%;
  background: var(--snow);
  border-radius: 24px;
  padding: clamp(24px, 4vw, 44px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: auto;
  box-sizing: border-box;
}

.eden-pig-detail{
  display:none;
  animation: edenFadeIn 0.4s ease forwards;
}

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

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

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

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

.eden-pig-cta{
  display:inline-block;
  margin-top:24px;
  padding:12px 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);
}

@keyframes edenFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* ==========================================
   4. VIDEO 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. SUCCESS STORIES (BEFORE/AFTER) 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. FAQ 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;
}

.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);
}

/* ==========================================
   7. PREMIUM FOOTER
   ========================================== */
.eden-footer{
  position:relative;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:
    radial-gradient(1200px 600px at 10% 0%, rgba(255,255,255,.65), transparent 60%),
    linear-gradient(180deg, #f6f8ee 0%, #eef2d6 100%);
  padding:60px 0;
  font-family:'Noto Sans',sans-serif;
  overflow:hidden;
}

.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;
}

.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);
}

.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;
}

.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);
}

/* ==========================================
   8. RESPONSIVE MEDIA BREAKPOINTS
   ========================================== */
@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-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-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; }
  .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; margin-bottom:32px; }
  .eden-video-cta{ padding:12px 48px; margin-bottom:48px; }
  .eden-video-frame{ border-radius: 22px; }
}

@media(min-width: 768px){
  .eden-pig-grid{ grid-template-columns: 1fr 1fr; gap: 4%; }
}

@media (max-width: 768px){
  .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-procedure{ padding: 40px 0; }
  .eden-procedure h2{ font-size:28px; margin-bottom:32px; }
  .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; }
  .eden-success-wrap{ padding:0 20px; }
  .eden-success h2{ font-size: clamp(26px, 8vw, 34px); }
  .eden-success p{ font-size:14.5px; 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; }
  .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; }
  .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); }
  .eden-video-desc{ font-size:14.5px; margin-bottom:24px; }
  .eden-video-cta{ width:100%; max-width:320px; padding:12px 0; margin-bottom:32px; }
  .eden-video-frame{ border-radius: 16px; }
  .eden-footer-wrap{ grid-template-columns:1fr; gap:40px; text-align:center; }
  .footer-right{ text-align:center; }
  .footer-socials{ justify-content:center; }
}
