/* /assets/css/style.css */

/* ── HERO ── */
.hero {position:relative;width:100%;height:60vh;min-height:480px;overflow:hidden;margin-top:68px;}
.hero-right {position:absolute;inset:0;z-index:1;}
.slides {position:absolute;inset:0;}
.slide {position:absolute;inset:0;opacity:0;transition:opacity 1s ease;}
.slide.active {opacity:1;z-index:2;}
.slide-bg {position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05);transition:transform 6.5s ease;}
.slide.active .slide-bg {transform:scale(1);}
.slide:nth-child(1) .slide-bg {background-image:url('assets/img/slider/index_img1.jpg');background-position:center;}
.slide:nth-child(2) .slide-bg {background-image:url('assets/img/slider/index_img2.jpg');background-position:center;}
.slide:nth-child(3) .slide-bg {background-image:url('assets/img/slider/index_img3.jpg');background-position:center right;}
.slide-bg::before {content:'';position:absolute;inset:0;z-index:1;background:rgba(255,255,255,.08);}
.slide-bg::after {content:'';position:absolute;inset:0;z-index:2;background:repeating-linear-gradient(-18deg,transparent 0px,transparent 14px,rgba(255,255,255,.022) 14px,rgba(255,255,255,.022) 15px);}
.hero-left {position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;justify-content:center;pointer-events:none;background:linear-gradient(90deg,rgba(245,239,228,.94) 0%,rgba(245,239,228,.88) 26%,rgba(245,239,228,.58) 44%,rgba(245,239,228,.20) 62%,rgba(245,239,228,0) 78%);}
.hero-copy {position:absolute;inset:0;padding:0 5vw 0 6vw;display:flex;flex-direction:column;justify-content:center;opacity:0;pointer-events:none;transition:opacity .15s;max-width:620px;}
.hero-copy::before {display:none !important;content:none !important;}
.hero-copy.active {opacity:1;pointer-events:auto;}
.hero-label,.hero-title,.hero-desc,.hero-actions {margin-left:0;}
.hero-label {display:inline-flex;align-items:center;gap:12px;margin-bottom:20px;opacity:0;transform:translateY(18px);transition:opacity .65s .2s,transform .65s .2s;}
.hero-copy.active .hero-label {opacity:1;transform:none;}
.hero-label-line {width:36px;height:1px;background:var(--amber);}
.hero-label-text {font-family:'Playfair Display',serif;font-style:italic;font-size:.8rem;color:var(--amber);letter-spacing:.22em;}
.hero-title {font-family:'Noto Serif KR',serif;font-size:clamp(1.7rem,2.8vw,3rem);font-weight:700;line-height:1.26;color:#2b170c;margin-bottom:16px;letter-spacing:-.01em;text-shadow:0 1px 0 rgba(255,255,255,.30);opacity:0;transform:translateY(22px);transition:opacity .7s .35s,transform .7s .35s;}
.hero-copy.active .hero-title {opacity:1;transform:none;}
.hero-title em {font-style:normal;color:var(--amber);position:relative;}
.hero-title em::after {content:'';position:absolute;bottom:3px;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--honey),transparent);border-radius:2px;}
.hero-desc {font-size:clamp(.82rem,1vw,.95rem);line-height:1.9;color:#4a3121;font-weight:500;max-width:380px;margin-bottom:28px;text-shadow:0 1px 0 rgba(255,255,255,.28);opacity:0;transform:translateY(18px);transition:opacity .7s .5s,transform .7s .5s;}
.hero-copy.active .hero-desc {opacity:1;transform:none;}
.hero-actions {display:flex;gap:12px;flex-wrap:wrap;opacity:0;transform:translateY(16px);transition:opacity .65s .65s,transform .65s .65s;}
.hero-copy.active .hero-actions {opacity:1;transform:none;}
.btn-hero-primary {display:inline-flex;align-items:center;gap:9px;background:var(--walnut);color:var(--cream);text-decoration:none;padding:13px 26px;font-size:.86rem;font-weight:500;letter-spacing:.09em;border-radius:3px;transition:background .25s,transform .2s,box-shadow .2s;}
.btn-hero-primary:hover {background:var(--amber);transform:translateY(-2px);box-shadow:0 12px 30px rgba(193,127,59,.38);}
.btn-hero-outline {display:inline-flex;align-items:center;gap:9px;border:1.5px solid rgba(46,26,14,.35);color:var(--walnut);background:rgba(255,255,255,.18);text-decoration:none;padding:12px 22px;font-size:.86rem;font-weight:500;letter-spacing:.09em;border-radius:3px;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);transition:all .25s;}
.btn-hero-outline:hover {background:var(--walnut);color:var(--cream);border-color:var(--walnut);transform:translateY(-2px);}
.carousel-dots {position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:10;display:flex;gap:10px;}
.dot {width:26px;height:3px;border-radius:2px;background:rgba(255,255,255,.4);cursor:pointer;transition:background .3s,width .35s;}
.dot.active {background:var(--honey);width:46px;}
.carousel-arrows {position:absolute;bottom:16px;right:24px;z-index:10;display:flex;gap:8px;}
.arrow-btn {width:38px;height:38px;border:1.5px solid rgba(255,255,255,.4);border-radius:50%;background:rgba(255,255,255,.1);color:rgba(255,255,255,.9);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .25s;backdrop-filter:blur(4px);}
.arrow-btn:hover {border-color:var(--honey);color:var(--honey);background:rgba(193,127,59,.15);}
.carousel-progress {position:absolute;bottom:0;left:0;right:0;height:3px;z-index:10;background:rgba(255,255,255,.12);}
.carousel-progress-bar {height:100%;background:var(--amber);width:0;transition:none;}
.carousel-progress-bar.running {width:100%;transition:width 5s linear;}
.slide-counter {position:absolute;top:20px;right:24px;z-index:10;color:rgba(255,255,255,.5);font-family:'Playfair Display',serif;font-size:.82rem;letter-spacing:.14em;}
.slide-counter strong {color:var(--honey);font-weight:400;}

/* ── FOOTER ── */
footer {background:var(--charcoal);padding:52px 6vw;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:32px;border-top:1px solid rgba(193,127,59,.15);}
.footer-brand {font-family:'Noto Serif KR',serif;font-size:1.15rem;font-weight:700;color:var(--cream);margin-bottom:10px;}
.footer-brand span {display:block;font-family:'Playfair Display',serif;font-style:italic;font-weight:400;font-size:.7rem;color:var(--honey);letter-spacing:.18em;margin-top:2px;}
.footer-info {font-size:.78rem;line-height:1.9;color:rgba(245,239,228,.38);}
.footer-nav {display:flex;flex-direction:column;gap:10px;list-style:none;}
.footer-nav a {text-decoration:none;font-size:.82rem;color:rgba(245,239,228,.45);letter-spacing:.06em;transition:color .2s;}
.footer-nav a:hover {color:var(--honey);}
.footer-copy {font-size:.72rem;color:rgba(245,239,228,.2);margin-top:8px;}

/* ── FLOATING SIDEBAR ── */
.float-sidebar {position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:600;display:flex;flex-direction:column;border-radius:8px 0 0 8px;box-shadow:-4px 0 24px rgba(0,0,0,.18);overflow:visible;}
.float-item {position:relative;display:flex;align-items:center;justify-content:center;text-decoration:none;width:52px;height:60px;border-bottom:1px solid rgba(255,255,255,.07);transition:filter .2s;}
.float-item:last-child {border-bottom:none;}
.float-item:first-child {border-radius:8px 0 0 0;}
.float-item:last-child {border-radius:0 0 0 8px;}
.float-item.call {background:var(--walnut);}
.float-item.naver-res {background:#03C75A;}
.float-item.naver-blog {background:#1EC800;}
.float-item.insta {background:linear-gradient(160deg,#f09433 0%,#e6683c 30%,#dc2743 60%,#bc1888 100%);}
.float-item:hover {filter:brightness(1.15);}
.float-icon {width:52px;height:60px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:var(--cream);flex-shrink:0;}
.float-label {position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%) translateX(6px);background:var(--walnut);color:var(--cream);font-size:.78rem;font-weight:500;letter-spacing:.06em;white-space:nowrap;padding:7px 14px;border-radius:4px;box-shadow:-2px 4px 16px rgba(0,0,0,.22);pointer-events:none;opacity:0;transition:opacity .2s ease,transform .2s ease;}
.float-label::after {content:'';position:absolute;top:50%;right:-6px;transform:translateY(-50%);border:6px solid transparent;border-right:none;border-left-color:var(--walnut);}
.float-item:hover .float-label {opacity:1;transform:translateY(-50%) translateX(0);}
.naver-n {display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:rgba(255,255,255,.2);border-radius:4px;font-weight:700;font-size:.9rem;font-family:sans-serif;color:#fff;}

/* ── MOBILE BAR ── */
.mobile-bar {display:none;position:fixed;bottom:0;left:0;right:0;z-index:600;background:var(--walnut);border-top:1px solid rgba(193,127,59,.2);}
.mobile-bar a {flex:1;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 0;font-size:.6rem;color:rgba(245,239,228,.6);letter-spacing:.06em;gap:4px;transition:background .2s;}
.mobile-bar a:hover {background:rgba(193,127,59,.15);color:var(--honey);}
.mobile-bar a span {font-size:1.2rem;}

/* ── RESPONSIVE ── */
@media (max-width:1024px) {
  .hero {height:55vh;min-height:400px;}
  .hero-left {background:linear-gradient(90deg,rgba(245,239,228,.96) 0%,rgba(245,239,228,.90) 38%,rgba(245,239,228,.42) 66%,rgba(245,239,228,0) 100%);}
  .hero-copy {max-width:520px;}
  .nav-links {display:none;}
}

@media (max-width:640px) {
  .hero {height:52vh;min-height:360px;}
  .hero-left {background:linear-gradient(180deg,rgba(245,239,228,.95) 0%,rgba(245,239,228,.84) 58%,rgba(245,239,228,.30) 100%);}
  .hero-copy {max-width:100%;padding:0 5vw;}
  .hero-label,.hero-title,.hero-desc,.hero-actions {margin-left:0;}
  .hero-title {font-size:1.65rem;}
  .hero-desc {display:none;}
  footer {flex-direction:column;}
  .float-sidebar {display:none;}
  .mobile-bar {display:flex !important;}
}