:root {
  --del-footer-ink: #113852;
  --del-footer-muted: #60727d;
  --del-footer-line: rgba(31, 72, 91, .16);
  --del-footer-bg: #f8f9f8;
  --del-footer-accent: #0e9799;
}

.del-site-footer,
.del-site-footer * { box-sizing: border-box; }

.del-site-footer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin-top: clamp(52px, 7vw, 108px);
  padding: clamp(52px, 6vw, 92px) max(24px, calc((100vw - 1540px) / 2)) 34px;
  color: var(--del-footer-ink);
  background:
    linear-gradient(180deg, #fff 0, #fbfbfa 12%, var(--del-footer-bg) 48%, #f7f5f0 100%);
  border-top: 0;
  box-shadow: inset 0 24px 54px -54px rgba(13, 54, 72, .34);
  font-family: Pretendard, "Noto Sans KR", "Apple SD Gothic Neo", system-ui, sans-serif;
}

.del-site-footer::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto 0 0;
  height: min(240px, 48%);
  background: url("coastal-floor.svg") center bottom / 100% 100% no-repeat;
  pointer-events: none;
}

.del-footer__inner { width: min(100%, 1540px); margin-inline: auto; }

.del-footer__brand-row {
  display: grid;
  grid-template-columns: minmax(270px, .9fr) minmax(280px, 1.2fr) auto;
  gap: clamp(30px, 5vw, 84px);
  align-items: center;
  padding-bottom: 32px;
  border-bottom: 1px solid var(--del-footer-line);
}

.del-footer__brand { display: flex; align-items: center; gap: 18px; }
.del-footer__logo { max-width: 260px; height: auto; }
.del-footer__statement { color: #546a75; font-size: 16px; line-height: 1.75; }

.del-footer__guide-link {
  justify-self: end;
  color: var(--del-footer-ink);
  font-weight: 750;
  text-decoration: none;
  padding: 10px 0 8px;
  border-bottom: 1px solid var(--del-footer-accent);
  transition: color .2s ease, transform .2s ease;
}
.del-footer__guide-link:hover,
.del-footer__guide-link:focus-visible { color: var(--del-footer-accent); transform: translateY(-2px); }

.del-footer__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 0;
  padding: 26px 0;
  border-bottom: 1px solid var(--del-footer-line);
}
.del-footer__nav a {
  color: var(--del-footer-ink);
  font-weight: 700;
  text-decoration: none;
  padding: 0 22px;
  border-right: 1px solid var(--del-footer-line);
}
.del-footer__nav a:first-child { padding-left: 0; }
.del-footer__nav a:last-child { border-right: 0; }
.del-footer__nav a:hover,
.del-footer__nav a:focus-visible { color: var(--del-footer-accent); }

.del-footer__info-grid {
  display: grid;
  grid-template-columns: .95fr 1.35fr 1fr;
  gap: 0;
  padding: 24px 0;
  border-bottom: 1px solid var(--del-footer-line);
}
.del-footer__info-block { min-width: 0; padding: 0 clamp(20px, 3vw, 46px); }
.del-footer__info-block:first-child { padding-left: 0; }
.del-footer__info-block + .del-footer__info-block { border-left: 1px solid var(--del-footer-line); }
.del-footer__info-block p { margin: 0 0 8px; color: var(--del-footer-muted); font-size: 14px; line-height: 1.55; }
.del-footer__info-block strong { color: var(--del-footer-ink); font-weight: 750; }
.del-footer__info-block a { color: inherit; text-underline-offset: 3px; }

.del-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding-top: 22px;
  color: #60727d;
  font-size: 13px;
  line-height: 1.55;
}

@media (max-width: 900px) {
  .del-footer__brand-row,
  .del-footer__info-grid { grid-template-columns: 1fr; }
  .del-footer__guide-link { justify-self: start; }
  .del-footer__info-block { padding: 18px 0; }
  .del-footer__info-block + .del-footer__info-block { border-left: 0; border-top: 1px solid var(--del-footer-line); }
  .del-footer__bottom { flex-direction: column; }
}

@media (max-width: 560px) {
  .del-site-footer { padding-inline: 20px; }
  .del-footer__nav { display: grid; grid-template-columns: 1fr 1fr; }
  .del-footer__nav a { padding: 4px 10px 4px 0; border-right: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .del-footer__guide-link { transition: none; }
}


:root{--dw-ink:#103e51;--dw-muted:#667881;--dw-teal:#0b9294;--dw-gold:#c99738;--dw-line:#dbe3e2;--dw-paper:#fffdf9}
.dw-workspace,.dw-workspace *{box-sizing:border-box}
.dw-workspace{color:var(--dw-ink);font-family:Pretendard,"Noto Sans KR",system-ui,sans-serif;background:linear-gradient(135deg,#fbfaf7,#f4f7f4)}
.dw-hero{position:relative;overflow:hidden;min-height:238px;padding:44px max(24px,calc((100vw - 1320px)/2));display:flex;align-items:center;background:radial-gradient(circle at 18% 34%,rgba(255,255,255,.96),transparent 32%),linear-gradient(110deg,#fbf7ed,#eef5f2 68%,#e3eee9);box-shadow:inset 0 -1px 0 rgba(25,67,79,.12)}
.dw-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.5) 47%,transparent 66%);transform:translateX(-120%);animation:dw-title-light 8s ease-in-out infinite;pointer-events:none}
.dw-title-wrap{position:relative;z-index:1;display:grid;grid-template-columns:auto 70px;align-items:end;gap:20px}
.dw-kicker{display:block;margin-bottom:14px;color:#9e742a;font-size:13px;font-weight:700;letter-spacing:.22em}
.dw-title{margin:0;color:#073a4c;font-size:clamp(42px,5vw,72px);line-height:1;font-weight:850;letter-spacing:-.055em;text-shadow:0 2px 0 #fff}
.dw-subtitle{margin:24px 0 0;color:#677c82;font-size:17px;letter-spacing:.08em}
.dw-title-icon{width:64px;filter:drop-shadow(0 8px 12px rgba(108,79,28,.14))}
.dw-panel{width:min(1320px,calc(100% - 40px));margin:46px auto;padding:18px;border:1px solid rgba(185,148,77,.26);border-radius:14px;background:rgba(255,255,255,.82);box-shadow:0 18px 50px rgba(35,61,66,.09);backdrop-filter:blur(4px)}
.dw-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.dw-tool{min-height:62px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--dw-line);border-radius:10px;color:var(--dw-ink);background:linear-gradient(180deg,#fff,#fafcfb);box-shadow:inset 0 1px 0 #fff,0 6px 14px rgba(34,66,75,.06);font:inherit;font-weight:750;text-decoration:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,filter .2s ease}
.dw-tool img{width:28px;height:28px;object-fit:contain}
.dw-tool:hover,.dw-tool:focus-visible{transform:translateY(-3px);border-color:#9dc9c7;box-shadow:0 13px 24px rgba(32,77,84,.14);outline:none}
.dw-tool--save{border-color:#ead39b;background:linear-gradient(180deg,#fffdf7,#fff4d8)}
.dw-tool--read{min-width:188px;color:#fff;border-color:#087f82;background:linear-gradient(180deg,#27b8b3,#087b82 76%);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 10px 20px rgba(8,123,130,.25);position:relative;overflow:hidden}
.dw-tool--read::after{content:"";position:absolute;inset:-30% auto -30% -40%;width:35%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.36),transparent);transition:left .55s ease}
.dw-tool--read:hover::after,.dw-tool--read:focus-visible::after{left:120%}
.dw-meta{margin:14px 4px 0;color:var(--dw-muted);font-size:13px}
.dw-notice{margin-top:22px;padding:18px 22px;border-left:4px solid #2b7c6f;border-radius:0 8px 8px 0;background:linear-gradient(90deg,#edf6ef,#f7faf4);color:#4d6667}
.dw-field-title{margin:28px 0 10px;color:var(--dw-ink);font-size:17px;font-weight:800}
.dw-input{width:100%;min-height:58px;padding:0 18px;border:1px solid #bfcfca;border-radius:8px;background:#fff;font:inherit;color:var(--dw-ink)}
.dw-section-title{display:flex;align-items:center;gap:14px;margin:30px 0 12px;color:#073a4c;font-size:clamp(30px,3vw,44px);font-weight:850;letter-spacing:-.04em}
.dw-section-title::before{content:"";width:24px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--dw-gold),#edd68f)}
@keyframes dw-title-light{0%,62%,100%{transform:translateX(-120%)}78%{transform:translateX(120%)}}
@media(max-width:720px){.dw-hero{min-height:190px;padding-block:34px}.dw-title-wrap{grid-template-columns:1fr}.dw-title-icon{display:none}.dw-panel{width:calc(100% - 24px);margin-block:24px}.dw-toolbar{display:grid;grid-template-columns:1fr 1fr}.dw-tool--read{min-width:0}}
@media(prefers-reduced-motion:reduce){.dw-hero::after{animation:none}.dw-tool{transition:none}.dw-tool:hover,.dw-tool:focus-visible{transform:none}.dw-tool--read::after{display:none}}


/* 적용 범위: #main-nav 내부 한정. 로고·헤더·작업실 버튼에는 영향 없음. */
#main-nav{--smo-ink:#123f47;position:relative;z-index:1000}
#main-nav *{box-sizing:border-box}
#main-nav>ul{display:flex;align-items:stretch;justify-content:flex-end;gap:3px;margin:0;padding:0;list-style:none}
#main-nav .smo-item{--accent:#27a47b;position:relative}
#main-nav .smo-c1{--accent:#27a47b}#main-nav .smo-c2{--accent:#f1b718}#main-nav .smo-c3{--accent:#ff5147}#main-nav .smo-c4{--accent:#80a99a}#main-nav .smo-c5{--accent:#298ee7}#main-nav .smo-c6{--accent:#efc500}#main-nav .smo-c7{--accent:#7d42c5}
#main-nav .smo-item>button{position:relative;min-height:66px;padding:0 17px;border:0;background:transparent;color:var(--smo-ink);font:700 17px/1.2 inherit;cursor:pointer;white-space:nowrap;transition:color .2s ease,transform .2s ease}
#main-nav .smo-item>button::before{content:"";position:absolute;left:50%;bottom:4px;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 34%,transparent);transform:translateX(-50%) scale(1);transition:transform .22s cubic-bezier(.2,.9,.2,1.4),box-shadow .35s ease,filter .2s ease}
#main-nav .smo-item>button::after{content:"⌄";display:inline-block;margin-left:6px;color:#668085;font-size:13px;transform:translateY(0) rotate(0);transition:color .2s ease,transform .28s cubic-bezier(.2,.8,.2,1)}
#main-nav .smo-item:hover>button,#main-nav .smo-item:focus-within>button,#main-nav .smo-item.is-open>button{color:var(--accent);transform:translateY(-1px)}
#main-nav .smo-item:hover>button::before,#main-nav .smo-item:focus-within>button::before,#main-nav .smo-item.is-open>button::before{transform:translateX(-50%) scale(1.38);box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 18%,transparent);filter:saturate(1.18)}
#main-nav .smo-item:hover>button::after,#main-nav .smo-item:focus-within>button::after,#main-nav .smo-item.is-open>button::after{color:var(--accent);transform:translateY(-2px) rotate(180deg);animation:smo-arrow-bob .72s ease-in-out 1}
@keyframes smo-arrow-bob{0%,100%{translate:0 0}42%{translate:0 -3px}72%{translate:0 1px}}
#main-nav .smo-sub{position:absolute;top:66px;left:50%;min-width:190px;margin:0;padding:10px 0;list-style:none;border:1px solid #d9e2e0;border-radius:0 0 14px 14px;background:rgba(255,255,255,.97);box-shadow:0 18px 38px rgba(29,61,59,.16);backdrop-filter:blur(10px);opacity:0;visibility:hidden;transform:translate(-50%,-10px) scale(.98);transform-origin:50% 0;transition:opacity .18s ease,transform .24s cubic-bezier(.2,.85,.2,1),visibility .18s}
#main-nav .smo-sub::before{display:none}
#main-nav .smo-item:hover>.smo-sub,#main-nav .smo-item:focus-within>.smo-sub,#main-nav .smo-item.is-open>.smo-sub{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1)}
#main-nav .smo-sub li{--sub-accent:#27a47b;position:relative;opacity:0;transform:translateY(-5px)}
#main-nav .smo-sub li:nth-child(5n+1){--sub-accent:#20a67d}
#main-nav .smo-sub li:nth-child(5n+2){--sub-accent:#e7ae12}
#main-nav .smo-sub li:nth-child(5n+3){--sub-accent:#ef695d}
#main-nav .smo-sub li:nth-child(5n+4){--sub-accent:#348fd4}
#main-nav .smo-sub li:nth-child(5n+5){--sub-accent:#8a58c7}
#main-nav .smo-item:hover>.smo-sub li,#main-nav .smo-item:focus-within>.smo-sub li,#main-nav .smo-item.is-open>.smo-sub li{animation:smo-sub-rise .34s cubic-bezier(.2,.85,.2,1) both}
#main-nav .smo-sub li:nth-child(2){animation-delay:.035s!important}#main-nav .smo-sub li:nth-child(3){animation-delay:.07s!important}#main-nav .smo-sub li:nth-child(4){animation-delay:.105s!important}#main-nav .smo-sub li:nth-child(5){animation-delay:.14s!important}
@keyframes smo-sub-rise{to{opacity:1;transform:translateY(0)}}
#main-nav .smo-sub a{position:relative;display:block;padding:12px 22px 12px 28px;color:#38575d;text-decoration:none;white-space:nowrap;transition:color .16s ease,background .16s ease,padding-left .18s ease,transform .18s ease}
#main-nav .smo-sub a::before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:4px;border-radius:0 4px 4px 0;background:var(--sub-accent);box-shadow:0 0 9px color-mix(in srgb,var(--sub-accent) 28%,transparent);transition:width .18s ease,box-shadow .2s ease}
#main-nav .smo-sub a::after{content:"";position:absolute;left:13px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--sub-accent);transform:translateY(-50%) scale(.85);transition:transform .18s ease}
#main-nav .smo-sub a:hover,#main-nav .smo-sub a:focus-visible{padding-left:33px;background:color-mix(in srgb,var(--sub-accent) 9%,white);color:var(--sub-accent);transform:translateX(2px);outline:0}
#main-nav .smo-sub a:hover::before,#main-nav .smo-sub a:focus-visible::before{width:6px;box-shadow:0 0 14px color-mix(in srgb,var(--sub-accent) 42%,transparent)}
#main-nav .smo-sub a:hover::after,#main-nav .smo-sub a:focus-visible::after{transform:translateY(-50%) scale(1.35)}
@media(max-width:900px){#main-nav>ul{display:block}#main-nav .smo-item>button{width:100%;min-height:48px;text-align:left}#main-nav .smo-item>button::before{left:auto;right:10px;bottom:20px}#main-nav .smo-sub{position:static;display:none;min-width:0;border:0;border-left:4px solid var(--accent);border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none}#main-nav .smo-item.is-open>.smo-sub{display:block}#main-nav .smo-sub::before{display:none}}
@media(prefers-reduced-motion:reduce){#main-nav .smo-item>button,#main-nav .smo-item>button::before,#main-nav .smo-item>button::after,#main-nav .smo-sub,#main-nav .smo-sub li,#main-nav .smo-sub a,#main-nav .smo-sub a::before,#main-nav .smo-sub a::after{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}}

/* 스토리모둠 콘텐츠숍: 생성권 아코디언 전용. 기존 상품 카드 CSS는 변경하지 않습니다. */
.sm-pass-accordion{
  --sm-navy:#173f67;
  --sm-teal:#238895;
  --sm-blue:#1267e8;
  --sm-gold:#c9a866;
  --sm-ivory:#fbfaf6;
  width:min(1280px,calc(100% - 40px));
  margin:22px auto 42px;
  position:relative;
  isolation:isolate;
}
.sm-pass-accordion *{box-sizing:border-box}
.sm-pass-accordion .sm-pass-trigger{
  position:relative;z-index:2;width:100%;min-height:150px;
  display:flex;align-items:center;justify-content:space-between;gap:28px;
  padding:28px 32px;border:1px solid rgba(90,157,181,.38);border-radius:20px;
  overflow:hidden;cursor:pointer;text-align:left;color:var(--sm-navy);
  background:
    radial-gradient(circle at 82% 20%,rgba(255,255,255,.94),transparent 26%),
    linear-gradient(120deg,rgba(248,253,252,.98),rgba(231,246,249,.96) 54%,rgba(222,239,248,.96));
  box-shadow:0 18px 48px rgba(33,72,92,.12),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(129,176,192,.12);
  transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .25s ease;
}
.sm-pass-accordion .sm-pass-trigger::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(112deg,transparent 22%,rgba(255,255,255,.65) 42%,transparent 60%);
  transform:translateX(-120%);transition:transform .8s ease;
}
.sm-pass-accordion .sm-pass-trigger::after{
  content:"";position:absolute;left:0;top:25px;bottom:25px;width:4px;border-radius:0 5px 5px 0;
  background:linear-gradient(var(--sm-gold),#e8d5a1,var(--sm-gold));box-shadow:0 0 18px rgba(201,168,102,.34);
}
.sm-pass-accordion .sm-pass-trigger:hover,.sm-pass-accordion .sm-pass-trigger:focus-visible{
  transform:translateY(-3px);border-color:rgba(65,137,165,.58);
  box-shadow:0 25px 62px rgba(33,72,92,.18),inset 0 1px 0 #fff;
  outline:0;
}
.sm-pass-accordion .sm-pass-trigger:hover::before,.sm-pass-accordion .sm-pass-trigger:focus-visible::before{transform:translateX(120%)}
.sm-pass-accordion .sm-pass-trigger__copy{display:grid;gap:7px;min-width:0}
.sm-pass-accordion .sm-pass-kicker{font-size:12px;letter-spacing:.08em;color:var(--sm-teal)}
.sm-pass-accordion .sm-pass-trigger strong{font-size:clamp(22px,2.1vw,32px);line-height:1.25;letter-spacing:-.035em}
.sm-pass-accordion .sm-pass-note{font-size:15px;color:#617d95}
.sm-pass-accordion .sm-pass-trigger__cta{
  flex:0 0 auto;display:flex;align-items:center;gap:18px;min-width:210px;justify-content:center;
  padding:18px 22px;border:1px solid rgba(255,255,255,.55);border-radius:12px;color:#fff;
  background:linear-gradient(145deg,#237af0,#075bdc 72%);box-shadow:0 12px 28px rgba(18,103,232,.27),inset 0 1px 0 rgba(255,255,255,.35),inset 0 -3px 8px rgba(0,45,128,.18);
  transition:transform .24s ease,box-shadow .24s ease,filter .24s ease;
}
.sm-pass-accordion .sm-pass-trigger:hover .sm-pass-trigger__cta{transform:translateY(-2px) scale(1.025);filter:saturate(1.08);box-shadow:0 17px 34px rgba(18,103,232,.34),inset 0 1px 0 rgba(255,255,255,.4)}
.sm-pass-accordion .sm-pass-trigger__label{font-size:16px;font-weight:800;white-space:nowrap}
.sm-pass-accordion .sm-pass-trigger__arrow{font-size:28px;line-height:1;transition:transform .36s cubic-bezier(.2,.85,.2,1)}
.sm-pass-accordion .sm-pass-trigger[aria-expanded="true"] .sm-pass-trigger__arrow{transform:rotate(135deg)}
.sm-pass-accordion .sm-pass-trigger[aria-expanded="true"] .sm-pass-trigger__label::after{content:none}
.sm-pass-accordion .sm-pass-trigger[aria-expanded="true"] .sm-pass-trigger__label{font-size:16px}
.sm-pass-accordion .sm-pass-trigger[aria-expanded="true"] .sm-pass-trigger__label::after{font-size:16px}

.sm-pass-accordion .sm-pass-panel{height:0;overflow:hidden;opacity:0;transform:translateY(-10px);transition:height .48s cubic-bezier(.2,.8,.2,1),opacity .3s ease,transform .42s ease}
.sm-pass-accordion .sm-pass-panel.is-open{opacity:1;transform:translateY(0)}
.sm-pass-accordion .sm-pass-panel__inner{
  margin-top:-10px;padding:44px 28px 30px;border:1px solid rgba(201,168,102,.30);border-top:0;border-radius:0 0 22px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),var(--sm-ivory));
  box-shadow:0 24px 54px rgba(50,63,72,.12),inset 0 1px 0 #fff;
}
.sm-pass-accordion .sm-existing-products-slot{min-height:220px}

/* 상단 큐레이션 히어로에 아래 클래스만 추가하면 기존 배경을 보존하며 깊이감을 강화합니다. */
.sm-premium-curation-hero{position:relative;min-height:520px;isolation:isolate;box-shadow:inset 0 -70px 100px rgba(255,255,255,.72)}
.sm-premium-curation-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(255,253,247,.93) 0%,rgba(255,255,255,.68) 43%,rgba(223,243,249,.28) 100%)}
.sm-premium-curation-hero::after{content:"";position:absolute;left:16%;right:16%;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--sm-gold,#c9a866),transparent);opacity:.55}

@media(max-width:760px){
  .sm-pass-accordion{width:min(100% - 24px,1280px)}
  .sm-pass-accordion .sm-pass-trigger{min-height:0;display:grid;padding:24px 20px}
  .sm-pass-accordion .sm-pass-trigger__cta{width:100%;min-width:0}
  .sm-pass-accordion .sm-pass-panel__inner{padding:38px 16px 22px}
  .sm-premium-curation-hero{min-height:440px}
}
@media(prefers-reduced-motion:reduce){
  .sm-pass-accordion .sm-pass-trigger,.sm-pass-accordion .sm-pass-trigger::before,.sm-pass-accordion .sm-pass-trigger__cta,.sm-pass-accordion .sm-pass-trigger__arrow,.sm-pass-accordion .sm-pass-panel{transition:none!important;animation:none!important}
}

