:root{--green:#064d49;--deepgreen:#0b4b45;--ivory:#f6f2e9;--gold:#b99a63;--text:#173d3b;--line:#ece7dc}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f5f1e8;color:var(--text);font-family:Arial,"Noto Sans KR",sans-serif}
a{text-decoration:none;color:inherit}
.mobile-topbar{height:64px;display:flex;align-items:center;gap:12px;padding:0 16px;background:rgba(255,255,255,.96);position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line)}
.hamburger{border:0;background:transparent;font-size:26px;color:var(--green);padding:4px}
.brand{font-family:Georgia,serif;font-weight:700;letter-spacing:.08em;color:var(--green);font-size:18px;line-height:1}
.brand span{display:block;font-family:Arial,"Noto Sans KR",sans-serif;font-size:10px;letter-spacing:0;margin-top:4px}
.tel{margin-left:auto;background:var(--green);color:#fff;border-radius:999px;padding:10px 14px;font-weight:700;font-size:13px}
.drawer{display:none;position:fixed;left:0;right:0;top:64px;z-index:50;background:#fff;padding:12px 18px 18px;box-shadow:0 12px 30px rgba(0,0,0,.13)}
.drawer.open{display:grid}
.drawer a{padding:14px 4px;border-bottom:1px solid #eee4d5;color:var(--green);font-weight:700}
.pc-only{display:none}
.mobile-main{max-width:1080px;margin:0 auto}
.section{width:100%;margin:0;padding:0}
.section-image{background:var(--ivory)}
.section-image img{display:block;width:100%;height:auto}
.video-section{background:#efe9dd;padding:20px 14px}
.river-video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#000;border-radius:12px;box-shadow:0 14px 30px rgba(31,56,53,.12)}
.site-footer{background:#0b4b45;color:#fff;padding:26px 18px 34px}
.site-footer-inner{max-width:1440px;margin:0 auto}
.site-footer-brand{font-family:Georgia,serif;letter-spacing:.18em;font-size:13px;color:#d9cfb3;margin-bottom:12px}
.site-footer p{margin:0 0 18px;font-size:14px;color:#f3eee2;line-height:1.6}
.site-footer-meta{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;font-size:13px;color:#e5ece9}
.site-footer small{display:block;color:rgba(255,255,255,.78);font-size:11px;line-height:1.6}
.fade-up{opacity:0;transform:translate3d(0,38px,0);transition:opacity .8s ease,transform .8s ease;will-change:opacity,transform}
.fade-up.show{opacity:1;transform:translate3d(0,0,0)}
@media(min-width:991px){
  .mobile-topbar,.drawer,.mobile-main{display:none!important}
  .pc-only{display:block}
  body{background:#f5f1e8}
  .pc-header{position:sticky;top:0;z-index:70;background:rgba(255,255,255,.98);border-bottom:1px solid #ece7dc}
  .pc-header-inner{max-width:100%;height:60px;padding:0 24px;display:grid;grid-template-columns:180px 1fr 180px;align-items:center;column-gap:20px}
  .pc-logo{font-family:Georgia,serif;font-size:28px;font-weight:700;letter-spacing:.02em;color:var(--green)}
  .pc-nav{display:flex;justify-content:center;gap:36px}
  .pc-nav a{font-size:14px;font-weight:700;color:#1f2f2e}
  .pc-call{justify-self:end;text-align:right;color:var(--green);line-height:1.2}
  .pc-call span{display:block;font-size:11px;color:#65706d;margin-bottom:4px}
  .pc-call strong{font-size:14px}
  .pc-hero{margin:0}
  .pc-hero img{display:block;width:100%;height:auto;max-height:none}
  .site-footer{padding:28px 24px 38px}
  .site-footer-meta{flex-direction:row;flex-wrap:wrap;gap:14px 28px}
}
@media(max-width:480px){
  .mobile-topbar{height:60px;padding:0 10px}
  .drawer{top:60px}
  .brand{font-size:15px}
  .brand span{font-size:9px}
  .tel{font-size:11px;padding:9px 11px}
  .video-section{padding:14px 10px}
  .site-footer{padding:22px 14px 28px}
}
@media (prefers-reduced-motion: reduce){.fade-up{opacity:1;transform:none;transition:none}}
/* Independent page views */
[hidden]{display:none!important}
html{scroll-behavior:auto}
.drawer{max-height:calc(100dvh - 64px);overflow-y:auto;padding:12px 22px 28px}
.drawer.open{display:block}
.drawer>a{display:block;font-size:17px;padding:16px 0}
.menu-group{padding:15px 0;border-bottom:1px solid #eee4d5}
.menu-group h2{font-size:17px;margin:0 0 8px;font-weight:700}
.menu-group a{display:block;border:0;font-size:15px;font-weight:400;padding:9px 0 9px 18px}
.drawer a[aria-current=page]{color:#9a7746;font-weight:700}
.menu-shade{position:fixed;inset:60px 0 0;border:0;background:#0007;z-index:45}
body.menu-open{overflow:hidden}
.inner-page{background:#fff;min-height:75vh;padding-bottom:48px}
.page-heading{padding:36px 20px 28px;max-width:1200px;margin:auto;text-align:center}
.page-heading p{font-size:12px;color:#7a817f;margin:0 0 16px}
.page-heading h1{font-size:30px;letter-spacing:-.05em;margin:0;font-weight:600}
.sub-tabs{display:flex;border-top:1px solid #ddd;border-bottom:1px solid #ddd;max-width:1200px;margin:0 auto 28px}
.sub-tabs a{flex:1;text-align:center;padding:16px 8px;font-size:15px;background:#f8f8f6}
.sub-tabs a[aria-current=page]{background:var(--green);color:#fff}
.page-body{max-width:1200px;margin:auto;padding:0 18px}
.full-img,.original-link img{display:block;width:100%;height:auto}
.original-link{display:block}
.facts{margin:24px 0 30px;border-top:2px solid var(--green)}
.facts>div{display:grid;grid-template-columns:100px 1fr;padding:15px 0;border-bottom:1px solid #e4e8e6;font-size:14px;line-height:1.7}
.facts dt{font-weight:700}.facts dd{margin:0}
.feature{max-width:760px;margin:0 auto 44px}.feature h2{font-size:23px;margin:20px 0 10px;letter-spacing:-.045em}.feature p{font-size:16px;white-space:pre-line;line-height:1.8;margin:0}
.notes{border-top:1px solid #ddd;margin-top:32px;padding-top:16px;color:#777;font-size:11px;line-height:1.8}.notes p{margin:0 0 7px}
.official-copy{white-space:pre-line;line-height:1.9;font-size:16px;margin:30px 0}
.location-overview{margin:26px 0 0}.location-overview-head{padding:24px 18px 22px;border-radius:22px;background:linear-gradient(135deg,#f6f2e9,#fff 58%,#efe5d4);border:1px solid #e8decd;box-shadow:0 12px 28px rgba(18,47,44,.08);text-align:center}.location-overview-head p{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.18em;color:#8f7650}.location-overview-head h2{margin:0;font-size:26px;line-height:1.35;letter-spacing:-.05em;color:var(--green)}.location-overview-head span{display:block;margin-top:10px;font-size:13px;line-height:1.7;color:#71807b;word-break:keep-all}.location-card-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:18px}.location-card{overflow:hidden;border:1px solid #e5ddcf;border-radius:20px;background:#fff;box-shadow:0 12px 26px rgba(14,48,44,.07)}.location-card-media{aspect-ratio:16/9;background:#e7ece9}.location-card-media img{display:block;width:100%;height:100%;object-fit:cover}.location-card-copy{padding:18px 18px 20px}.location-card-num{display:inline-block;margin-bottom:8px;padding:5px 10px;border-radius:999px;background:#edf3f0;color:var(--green);font-size:11px;font-weight:700;letter-spacing:.08em}.location-card-copy h3{margin:0 0 10px;font-size:22px;line-height:1.35;letter-spacing:-.04em;color:#163f39}.location-card-copy p{margin:0;font-size:15px;line-height:1.8;color:#425753;word-break:keep-all}
.zone-title{font-size:23px;margin:40px 0 22px}.page-body figure{margin:28px auto;max-width:760px}.page-body figcaption{font-size:18px;padding:15px 0}
.type-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:28px}
.type-tabs button,.interior-tabs button{font:inherit;font-size:14px;border:1px solid #d4dcd9;background:#fff;color:var(--green);padding:13px 4px;cursor:pointer}
.type-tabs button[aria-selected=true],.interior-tabs button[aria-selected=true]{background:var(--green);color:#fff;border-color:var(--green)}
.interioR-tabs{display:flex}.interior-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:24px}
[data-type-panel] h2{font-size:28px}[data-type-panel] small{font-size:15px;font-weight:400;margin-left:10px}
.zoom-link{display:block;text-align:center;border:1px solid #ccc;padding:14px;margin-top:20px;font-size:14px}
.registration-slot{min-height:480px}
a:focus-visible,button:focus-visible{outline:3px solid #b99a63;outline-offset:3px}
@media(min-width:991px){.pc-hero{aspect-ratio:2.1;overflow:hidden}.pc-hero img{width:100%;height:auto}.inner-page{padding-top:16px}.page-heading{padding:50px 20px 36px}.page-heading h1{font-size:38px}.page-body{padding:0 30px}.type-tabs{grid-template-columns:repeat(6,1fr)}.menu-shade{display:none}.facts>div{grid-template-columns:160px 1fr;font-size:16px}}

.facility-details{margin:18px 0 28px;border-bottom:1px solid #ddd;padding:14px 0}.facility-details summary{cursor:pointer;font-weight:600;font-size:15px}

/* Mobile main: customer registration section */
@media(max-width:990px){.home-registration{background:#fff;padding:42px 20px 28px}.home-registration h2{margin:0;text-align:center;font-size:26px;font-weight:600;letter-spacing:-.04em;color:var(--green)}.home-registration-slot{min-height:420px;max-width:720px;margin:24px auto 0}}

/* Restored original mobile unit and interior section */
.ch-section{padding:46px 18px;background:#f8f6f0;color:#163f39}.ch-heading{text-align:center;margin:0 0 28px}.ch-heading>p{font-size:13px;color:#967c55;margin:0 0 12px;font-weight:600}.ch-heading h2{font-family:"Noto Serif KR","Batang",serif;font-size:29px;font-weight:600;letter-spacing:-.055em;line-height:1.35;margin:0}.ch-heading>div{margin:13px 0 0;font-size:13px;line-height:1.7;color:#77877e;word-break:keep-all}.ch-zone+.ch-zone{border-top:1px solid #d8c9b4;margin-top:34px;padding-top:30px}.ch-zone-title{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px}.ch-zone-title h3{font-size:22px;letter-spacing:-.04em;margin:0;font-weight:500}.ch-zone-title>span{font-size:12px;color:#967e5f}.ch-zone>img{margin-bottom:20px}.ch-photo{margin:0;min-width:0}.ch-photo figcaption{font-size:13px;font-weight:500;padding:9px 0 12px;line-height:1.5;color:#234a41}.ch-lead-photo{margin-top:18px}.ch-lead-photo figcaption{font-size:17px}.ch-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ch-photo img{width:100%;height:auto}.ch-note{font-size:10px;line-height:1.7;color:#8b9088;margin:22px 0 0;word-break:keep-all}.ch-unit-interior{border-top:1px solid #e0d7c8;background:linear-gradient(135deg,#f8f5ee,#fff 45%,#f7f4ed)}.ch-type-tabs{display:grid;grid-template-columns:1fr 1fr;border:1px solid #b5b9a8;margin:26px 0 22px}.ch-type-tabs button{min-height:44px;font-size:15px;font-weight:600;color:#54665b;cursor:pointer}.ch-type-tabs button+button{border-left:1px solid #b5b9a8}.ch-type-tabs button[aria-selected="true"]{background:#234c40;color:#fff}.ch-type-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d6c5ac;padding:0 0 12px;margin-bottom:14px}.ch-type-heading h3{font-family:Georgia,serif;font-size:42px;font-weight:400;line-height:1;margin:0;letter-spacing:-.04em}.ch-type-heading h3 span{font-size:23px;margin-right:4px}.ch-type-heading p{font-size:13px;color:#8f785c;margin:0}.ch-plan{position:relative;padding:10px 12px 22px;background:#fff}.ch-plan-label{display:block;font-size:11px;color:#78867c;text-align:right;margin-top:5px}.ch-image-window{position:relative;overflow:hidden;width:100%;background:#fff}.mobile-main .ch-image-window img{position:absolute;max-width:none;height:auto;display:block;margin:0;padding:0}.ch-areas{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:14px 0;border-top:1px solid #e0d7c8;border-bottom:1px solid #e0d7c8}.ch-areas>div{text-align:center;min-width:0}.ch-areas>div+div{border-left:1px solid #dedbce}.ch-areas dt{font-size:10px;color:#79877c;margin-bottom:6px}.ch-areas dd{font-size:13px;font-weight:600;margin:0;letter-spacing:-.025em}.ch-areas small{font-size:10px;margin-left:1px}.ch-interior-photos{margin-top:22px}.ch-more-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:23px}.ch-more-links a{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #9ca99c;min-height:42px;font-size:12px;padding:8px 2px;color:#36594b;cursor:pointer}
.ch-type-tabs button{font-family:inherit;border:0;border-radius:0;background:transparent}.ch-type-tabs button+button{border-left:1px solid #b5b9a8}.ch-image-window img{object-fit:initial}.ch-section img{display:block}.ch-unit-interior{padding-left:10px;padding-right:10px}

/* PC hero only: restore hidden image header and reduce display scale. */
@media(min-width:991px){
 .pc-hero{width:85%;max-width:1672px;margin:0 auto;aspect-ratio:auto;overflow:hidden;background:#fff}
 .pc-hero img{display:block;width:100%;max-width:none;height:auto;margin-top:-5.14354067%}
}

/* Full-width original architecture, with only the left copy region edited. */
@media(min-width:991px){
 .pc-hero{position:relative;width:100%;max-width:none;margin:0;aspect-ratio:auto;overflow:hidden}
 .pc-hero .pc-copy-edit{position:absolute;top:0;left:0;width:100%;height:auto;pointer-events:none;clip-path:inset(18% 0 19% 0);mask-image:linear-gradient(to right,#000 40%,transparent 44%);-webkit-mask-image:linear-gradient(to right,#000 40%,transparent 44%)}
}

/* Fade-up only: layout, assets and typography remain unchanged. */
.fade-up{opacity:1;transform:none;transition:none;will-change:auto}
.fade-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .8s ease,transform .8s ease}
.fade-reveal.show{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.fade-reveal{opacity:1;transform:none;transition:none}}

/* First-visit notice popup */
.entry-notice{position:fixed;inset:0;margin:auto;width:400px;max-width:calc(100vw - 48px);max-height:calc(100dvh - 40px);padding:0;border:1px solid #ddd;background:#fff;color:#222;overflow:auto;box-sizing:border-box;font-family:inherit;text-align:center}
.entry-notice::backdrop{background:transparent}
.entry-notice-head{position:relative;background:#f4f4f4;padding:44px 12px 28px}
.entry-notice-head p{margin:0 0 10px;font-size:16px;font-weight:700;line-height:1.4}
.entry-notice-head h2{margin:0;font-size:29px;font-weight:800;line-height:1.3;letter-spacing:-1.3px;white-space:nowrap}
.entry-notice-head h2 span{color:#df4940}
.entry-notice-x{position:absolute;right:14px;top:14px;width:26px;height:26px;padding:0;border:0;background:transparent;cursor:pointer}
.entry-notice-x::before,.entry-notice-x::after{content:"";position:absolute;left:0;top:12px;width:26px;height:1px;background:#999;transform:rotate(45deg)}
.entry-notice-x::after{transform:rotate(-45deg)}
.entry-notice-body{padding:24px 18px 20px}
.entry-notice-body p{margin:0;font-size:12px;font-weight:600;line-height:1.6;letter-spacing:-.4px;color:#666}
.entry-notice-body .entry-notice-small{margin-top:22px;font-size:10px;line-height:1.6;font-weight:400;color:#777}
.entry-notice-phone{display:flex;align-items:center;justify-content:center;gap:10px;background:#1d4f52;color:white;border-radius:4px;min-height:42px;margin-top:30px;padding:6px 10px;font-size:14px;font-weight:700}
.entry-notice-number{display:inline-block;min-width:112px;min-height:22px}
.entry-notice-actions{display:flex;border-top:1px solid #ddd}
.entry-notice-actions button{flex:1;padding:12px 4px;background:white;border:0;font:inherit;font-size:14px;color:#222;cursor:pointer}
.entry-notice-actions button+button{border-left:1px solid #e5e5e5}
.entry-notice button:focus-visible{outline:2px solid #1d4f52;outline-offset:-3px}
@media(max-width:480px){.entry-notice{width:330px}.entry-notice-head h2{font-size:27px}.entry-notice-head p{font-size:14px}.entry-notice-phone{font-size:13px}.entry-notice-number{min-width:102px}}

@media(min-width:991px){#dbcart-registration #shared-dbcart-registration{width:100%;max-width:720px;margin:0 auto}}

/* DBCart full landing: the provider now owns both the promotion image and the form. */
.brand{text-decoration:none}
#shared-dbcart-registration{width:100%;max-width:720px;margin:0 auto;background:#fff;overflow:hidden}
#shared-dbcart-registration iframe{display:block;width:100%;max-width:100%;min-height:680px;border:0;background:#fff}
@media(max-width:990px){
  #home-registration{padding:0;margin:0;width:100%;background:#fff}
  #dbcart-home-registration{margin:0 auto;width:100%;max-width:720px;min-height:0}
  #mobile-unit-interior{padding-bottom:0}
  #shared-dbcart-registration{max-width:720px}
  #shared-dbcart-registration iframe{min-height:760px}
}
@media(min-width:991px){
  #dbcart-registration #shared-dbcart-registration{width:100%;max-width:720px;margin:0 auto}
}

.mobile-contact-bar{display:none}
@media(max-width:990px){
 body{padding-bottom:calc(71px + env(safe-area-inset-bottom))}
 .mobile-contact-bar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;z-index:1000;background:#080808;padding-bottom:env(safe-area-inset-bottom)}
 .mobile-contact-bar a,.mobile-contact-bar button{height:71px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;border-radius:0;background:#080808;color:#fff;font:700 14px Arial,sans-serif;text-decoration:none;cursor:pointer}
 .mobile-contact-bar a{background:#003247}
 .mobile-contact-bar svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
}


/* Popup close button: keep X icon, remove focus box on PC/mobile */
.entry-notice-x,.entry-notice-x:focus,.entry-notice-x:focus-visible,.entry-notice-x:active{outline:none!important;box-shadow:none!important;border:0!important;-webkit-tap-highlight-color:transparent;}
