
:root{--bg:#EEF7F5;--paper:#F7FBFA;--ink:#291d24;--muted:#7f6c75;--wine:#123847;--wine2:#1E5967;--gold:#55C6B5;--line:#e4d6cf}
*{box-sizing:border-box}body{margin:0;font-family:Arial,"Noto Sans KR",sans-serif;background:var(--bg);color:var(--ink)}a{text-decoration:none;color:inherit}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}
.top{background:var(--wine);color:#fff}.top .wrap{height:40px;display:flex;align-items:center;justify-content:space-between;font-size:13px}
header{background:#F7FBFA;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}header .wrap{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:24px;font-weight:900}.brand b{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--wine);color:#ffe6b8;border:2px solid var(--gold);margin-right:10px}
nav{display:flex;gap:22px;font-weight:700;color:#6d5862}
.hero{padding:76px 0}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center}.eyebrow{color:var(--wine2);font-size:13px;font-weight:900;letter-spacing:.14em}.hero h1{font-size:clamp(42px,6vw,72px);line-height:1.06;letter-spacing:-.06em;margin:16px 0}.hero p{font-size:17px;line-height:1.85;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{padding:16px 22px;border-radius:999px;font-weight:900}.primary{background:var(--wine);color:white}.secondary{background:white;border:1px solid var(--line)}
.visual{height:430px;border-radius:32px;background:linear-gradient(145deg,#9a5a70,#123847 55%,#3e1728);position:relative;overflow:hidden}.visual:after{content:"JUJU";position:absolute;right:-10px;bottom:-20px;font-size:145px;font-weight:1000;color:#FFFFFF10}.card{position:absolute;left:30px;right:30px;bottom:30px;background:#F7FBFAee;border-radius:22px;padding:24px}.card b{font-size:26px}.card span{display:block;margin-top:8px;color:var(--muted)}
.strip{padding-bottom:70px}.strip-grid{display:grid;grid-template-columns:repeat(5,1fr);background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden}.strip-grid div,.strip-grid a{padding:20px;border-right:1px solid var(--line)}.strip-grid b{color:var(--wine);font-size:13px}.strip-grid span{display:block;margin-top:8px;font-weight:800}
.section{padding:76px 0}.alt{background:#efe5df;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}h2{font-size:clamp(32px,4vw,50px);letter-spacing:-.05em;margin:10px 0}.lead{color:var(--muted);line-height:1.8}.courses{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.course{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:25px}.course h3{font-size:24px;margin:0}.price{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line)}.price strong{color:var(--wine)}
.areas{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:30px}.area{background:white;border:1px solid var(--line);border-radius:18px;padding:22px;min-height:125px}.area b{font-size:20px}.area span{display:block;margin-top:10px;color:var(--muted);font-size:13px}
.reserve{background:linear-gradient(135deg,#34131f,#123847,#1E5967);color:white;padding:78px 0}.reserve .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.reserve h2{margin:0}.reserve p{color:#eadce2}.reserve .secondary{background:#FFFFFF12;color:white;border-color:#FFFFFF33}
footer{background:#21171b;color:#a58f98;padding:32px 0;font-size:12px}
.mobile{display:none}
@media(max-width:900px){nav{display:none}.hero-grid{grid-template-columns:1fr}.visual{height:340px}.strip-grid{grid-template-columns:1fr 1fr}.courses{grid-template-columns:1fr}.areas{grid-template-columns:1fr 1fr}.reserve .wrap{display:block}.reserve .actions{margin-top:22px}}
@media(max-width:640px){body{padding-bottom:70px}.hero h1{font-size:44px}.mobile{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:30}.mobile a{padding:17px;text-align:center;font-weight:900;background:white}.mobile a:first-child{background:var(--wine);color:white}}
/* JUJU REGION LINKS START */
.region-links{padding:72px 0;background:#EEF7F5;border-top:1px solid var(--line)}
.region-links .region-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}
.region-links .region-head h2{margin:8px 0 0;font-size:clamp(30px,4vw,46px);letter-spacing:-.05em}
.region-links .region-head p{margin:0;max-width:520px;color:var(--muted);line-height:1.7;font-size:14px}
.region-link-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.region-link{display:block;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:17px 18px;font-weight:850;transition:.18s}
.region-link:hover{transform:translateY(-2px);border-color:#55C6B5}
.region-link small{display:block;margin-top:5px;color:var(--muted);font-weight:600;font-size:12px}
@media(max-width:900px){.region-link-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.region-links{padding:56px 0}.region-links .region-head{display:block}.region-links .region-head p{margin-top:10px}.region-link-grid{grid-template-columns:repeat(2,1fr)}}
/* JUJU REGION LINKS END */
/* JUJU MAIN IMAGE START */
.juju-main-image{
  display:block;
  width:100%;
  max-width:560px;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:28px;
  border:1px solid rgba(199,157,98,.6);
  box-shadow:0 24px 60px rgba(77,45,58,.18);
}
@media(max-width:900px){
  .juju-main-image{max-width:100%;margin:auto}
}
/* JUJU MAIN IMAGE END */
/* JUJU MAP START */
.map-section{
  padding:72px 0;
  background:#F7FBFA;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.map-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin-bottom:24px;
}
.map-head h2{
  margin:8px 0 0;
  font-size:clamp(30px,4vw,46px);
  letter-spacing:-.05em;
}
.map-head p{
  margin:0;
  max-width:520px;
  color:var(--muted);
  line-height:1.7;
  font-size:14px;
}
.map-box{
  overflow:hidden;
  border:1px solid rgba(199,157,98,.55);
  border-radius:22px;
  box-shadow:0 18px 46px rgba(77,45,58,.10);
  background:white;
}
.map-box iframe{
  display:block;
  width:100%;
  height:390px;
  border:0;
}
@media(max-width:640px){
  .map-section{padding:56px 0}
  .map-head{display:block}
  .map-head p{margin-top:10px}
  .map-box iframe{height:330px}
}
/* JUJU MAP END */



a[href^="tel:"]{
  background:#FFD83D !important;
  color:#241C2A !important;
  border-color:#FFD83D !important;
}
a[href^="sms:"]{
  background:#F3AFC4 !important;
  color:#241C2A !important;
  border-color:#F3AFC4 !important;
}



a[href^="tel:"],
a[href^="sms:"]{
  min-width:120px !important;
  min-height:46px !important;
  box-sizing:border-box !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}



.juju-text-bottom{
  background:#eee7f2;
  padding:42px 20px;
  color:#39264b;
}
.juju-text-wrap{
  max-width:1120px;
  margin:0 auto;
}
.juju-text-panel{
  background:#fff;
  border:1px solid #d9c9e2;
  margin-bottom:24px;
}
.juju-text-grid{
  display:grid;
  grid-template-columns:40% 60%;
}
.juju-text-left{
  padding:48px 44px;
  border-right:1px solid #ddd0e4;
}
.juju-text-label{
  font-size:10px;
  font-weight:700;
  letter-spacing:2px;
  color:#8a6b9f;
  margin-bottom:20px;
}
.juju-text-left h2{
  margin:0;
  font-size:30px;
  line-height:1.25;
  font-weight:700;
  color:#452b5a;
}
.juju-text-left p{
  margin:24px 0 0;
  font-size:13px;
  line-height:1.9;
  color:#786c80;
}
.juju-text-right{
  padding:18px 34px;
}
.juju-text-row{
  display:grid;
  grid-template-columns:35px 48px 1fr;
  gap:12px;
  align-items:center;
  padding:22px 0;
  border-bottom:1px solid #e5dbe9;
}
.juju-text-row:last-child{
  border-bottom:0;
}
.juju-text-no{
  font-size:10px;
  color:#a996b2;
}
.juju-text-icon{
  width:34px;
  height:34px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f1eaf5;
  color:#8e6ca3;
  font-size:13px;
}
.juju-text-copy h3{
  margin:0 0 5px;
  font-size:15px;
  line-height:1.4;
  color:#493657;
}
.juju-text-copy p{
  margin:0;
  font-size:12px;
  line-height:1.75;
  color:#807484;
}
.juju-text-article{
  padding:38px 42px;
}
.juju-text-article h2{
  margin:0 0 18px;
  font-size:26px;
  color:#483259;
}
.juju-text-article p{
  margin:0 0 14px;
  font-size:13px;
  line-height:2;
  color:#74697a;
}
.juju-location{
  padding:36px 42px 40px;
}
.juju-location h2{
  margin:0 0 10px;
  font-size:25px;
  color:#483259;
}
.juju-location>p{
  margin:0 0 24px;
  font-size:13px;
  line-height:1.8;
  color:#786c80;
}
.juju-location-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.juju-location-card{
  display:block;
  padding:20px 18px;
  border:1px solid #d5c4de;
  background:#fff;
  text-decoration:none;
}
.juju-location-card h3{
  margin:0 0 9px;
  font-size:15px;
  color:#493657;
}
.juju-location-card p{
  margin:0;
  font-size:12px;
  line-height:1.75;
  color:#7a6f7f;
}
@media(max-width:760px){
  .juju-text-bottom{padding:24px 12px}
  .juju-text-grid{grid-template-columns:1fr}
  .juju-text-left{
    padding:32px 25px;
    border-right:0;
    border-bottom:1px solid #ddd0e4;
  }
  .juju-text-left h2{font-size:25px}
  .juju-text-right{padding:8px 22px}
  .juju-text-article,.juju-location{padding:30px 24px}
  .juju-location-cards{grid-template-columns:1fr}
}



.jj-editorial{font-family:"Noto Serif KR","Apple SD Gothic Neo","Malgun Gothic",serif;color:#0C1C23}
.jj-panel{padding:80px 4vw;border-top:1px solid rgba(44,34,52,.12)}
.jj-panel--lavender{background:#B9D8D4}
.jj-panel--ivory{background:#E8F4F1}
.jj-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(300px,.9fr) minmax(480px,1.1fr);gap:72px}
.jj-kicker{font:700 12px/1.4 Arial,sans-serif;letter-spacing:.22em;color:#3B8E94;margin:0 0 28px}
.jj-title{font-size:clamp(40px,5vw,74px);line-height:1.12;font-weight:500;letter-spacing:-.045em;margin:0;word-break:keep-all}
.jj-title em{font-style:normal;color:#276B74}
.jj-lead{font-family:"Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:#587078;font-size:16px;line-height:1.85;margin:30px 0 0;word-break:keep-all}
.jj-list{border-top:1px solid rgba(44,34,52,.24)}
.jj-row{display:grid;grid-template-columns:68px minmax(145px,.55fr) 1fr;gap:28px;padding:34px 0;border-bottom:1px solid rgba(44,34,52,.18)}
.jj-no{font-size:18px;color:#347D84}
.jj-row h3{font-size:27px;line-height:1.3;font-weight:500;margin:0}
.jj-row p{font-family:"Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-size:14px;line-height:1.75;color:#536D73;margin:5px 0 0;word-break:keep-all}
.jj-local{background:#10262F;color:#EAF6F3;padding:72px 4vw 84px}
.jj-local-inner{max-width:1160px;margin:0 auto}
.jj-local-label{font:700 11px/1.4 Arial,sans-serif;letter-spacing:.22em;color:#B5DDD6;margin-bottom:18px}
.jj-local-title{font-size:clamp(30px,4vw,50px);font-weight:500;letter-spacing:-.035em;line-height:1.28;margin:0 0 28px;word-break:keep-all}
.jj-local-text{font-family:"Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-size:16px;line-height:2;color:#CAE2DE;margin:0;word-break:keep-all}
@media(max-width:900px){
  .jj-panel{padding:56px 22px}
  .jj-grid{grid-template-columns:1fr;gap:44px}
  .jj-row{grid-template-columns:46px 1fr;gap:14px}
  .jj-row p{grid-column:2}
  .jj-row h3{font-size:23px}
  .jj-local{padding:54px 22px 64px}
}



  body{padding-bottom:78px!important}
  .juju-float-contact{
    position:fixed;
    left:50%;
    bottom:18px;
    transform:translateX(-50%);
    z-index:99999;
    width:min(620px,calc(100% - 28px));
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    font-family:"Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  }
  .juju-float-contact a{
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    border-radius:18px;
    text-decoration:none!important;
    font-size:16px;
    font-weight:800;
    letter-spacing:-.02em;
    box-shadow:0 10px 28px rgba(28,20,34,.25);
    border:1px solid rgba(255,255,255,.18);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
  }
  .juju-float-contact .juju-call{
    background:#15313A;
    color:#fff;
  }
  .juju-float-contact .juju-sms{
    background:#A9D5CE;
    color:#10262F;
  }
  .juju-float-contact .juju-icon{
    font-size:20px;
    line-height:1;
  }
  @media(max-width:640px){
    body{padding-bottom:82px!important}
    .juju-float-contact{
      bottom:10px;
      width:calc(100% - 18px);
      gap:8px;
    }
    .juju-float-contact a{
      min-height:56px;
      border-radius:15px;
      font-size:15px;
    }
  }



/* ===== BULK10 STRUCTURE ADAPTER ===== */

body{
    margin:0 !important;
}

main.wrap,
main,
.wrap{
    box-sizing:border-box;
}

.card,
.section,
.article,
.editorial,
.section-soft,
.metro-local-800,
.ry-longtext,
.site-copy-v4{
    max-width:1120px;
    margin-left:auto !important;
    margin-right:auto !important;
}

/* 일반 페이지 */
.section,
.article,
.editorial,
.section-soft,
.metro-local-800,
.ry-longtext{
    border-radius:18px;
}

/* 기존 사이트 전용 색상 제거 */
.insegy-soft-pink{
    background:inherit !important;
    color:inherit !important;
}

/* SHOP */
main.wrap .card{
    overflow:hidden;
}

.shop-intro{
    position:relative;
}

.shop-intro .phone{
    font-weight:800;
}

.shop-intro .actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.shop-intro .actions a{
    flex:1 1 180px;
    text-align:center;
}

/* 하단 고정 문의 */
.actions{
    z-index:20;
}

/* 기존 과한 테마 오버레이 최소화 */
#insegy-main-theme,
#insegy-soft-pink-style{
    all:unset;
}

@media(max-width:700px){
    .card,
    .section,
    .article,
    .editorial,
    .section-soft,
    .metro-local-800,
    .ry-longtext{
        border-radius:14px;
    }

    .shop-intro .actions{
        flex-direction:column;
    }
}