@font-face{font-family:LabDisplay;src:url('course/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
.home-carousel{--banner-gap:64px;overflow:hidden;padding:24px 0 0;font-family:LabDisplay,Arial,sans-serif;touch-action:pan-y}
.home-carousel-frame{position:relative;width:calc(100% - 96px);max-width:1400px;margin:auto}
.home-carousel-track{display:flex;gap:var(--banner-gap);transform:translate3d(calc(var(--banner-index,0) * (100% + var(--banner-gap)) * -1),0,0);transition:transform .65s cubic-bezier(.22,.61,.36,1);will-change:transform}
.home-carousel-track.is-resetting{transition:none}
.home-banner{position:relative;flex:0 0 100%;aspect-ratio:3.2;min-width:0;border-radius:18px;overflow:hidden;transform:scale(.94);opacity:.52;transition:transform .65s ease,opacity .65s ease;background:#6c3523;color:#fff}
.home-banner.is-current{transform:scale(1);opacity:1}
.home-banner-link{display:block;width:100%;height:100%;position:relative;-webkit-user-drag:none;user-select:none}
.home-banner-link:focus-visible{outline-offset:-5px}
.home-banner-art{position:absolute;width:100%;height:100%;object-fit:cover;object-position:70% 50%;pointer-events:none}
.home-banner-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(53,22,10,.78),rgba(53,22,10,.24) 49%,transparent 80%);pointer-events:none}
.banner-green .home-banner-shade{background:linear-gradient(90deg,rgba(5,32,24,.9),rgba(5,32,24,.35) 54%,transparent 83%)}
.banner-purple .home-banner-shade{background:linear-gradient(90deg,rgba(27,14,43,.9),rgba(27,14,43,.36) 54%,transparent 83%)}
.home-banner-copy{position:relative;display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:46px 48px 42px;max-width:720px}
.home-banner-label{display:block;font-size:13px;letter-spacing:.03em;font-weight:650;margin-bottom:13px;color:#fff9;line-height:1.4}
.home-banner-copy h1,.home-banner-copy h2{font-size:clamp(30px,2.8vw,40px);line-height:1.32;letter-spacing:-.045em;font-weight:800;color:white;text-shadow:0 2px 18px #0002}
.home-banner-bottom{max-width:420px}.home-banner-bottom p{font-size:16px;line-height:1.7;color:#fffd}
.home-banner-cta{display:inline-flex;align-items:center;gap:16px;font-size:13px;font-weight:650;margin-top:13px}.home-banner-cta .icon{width:17px;height:17px}
.home-carousel-controls{position:absolute;right:24px;bottom:22px;display:flex;align-items:center;border-radius:24px;padding:3px 7px 3px 15px;background:#151515a8;color:white;backdrop-filter:blur(10px);gap:1px}
.home-carousel-count{font-size:13px;font-weight:750;min-width:52px;font-variant-numeric:tabular-nums;letter-spacing:1px}.home-carousel-count>span{color:#fffa;font-weight:400}
.home-carousel-controls button{display:grid;place-items:center;width:32px;height:32px;border:0;color:white;background:transparent;border-radius:50%;font-size:13px}.home-carousel-controls button:hover{background:#ffffff24}.home-carousel-controls .icon{width:15px;height:15px}
.home-carousel-dots{display:flex;justify-content:center;gap:5px;padding-top:15px}
.home-carousel-dots button{border:0;background:transparent;width:30px;height:24px;display:grid;place-items:center;padding:0}
.home-carousel-dots button:after{content:'';width:7px;height:7px;border-radius:5px;background:#d5d5d1;transition:width .2s,background .2s}
.home-carousel-dots button[aria-pressed=true]:after{width:25px;background:#20211f}
.home-carousel+.section{padding-top:44px}
@media(max-width:1000px){.home-carousel{--banner-gap:28px}.home-carousel-frame{width:calc(100% - 64px)}.home-banner{aspect-ratio:2.5}.home-banner-copy{padding:32px}.home-banner-copy h1,.home-banner-copy h2{font-size:32px}.home-banner-bottom{max-width:350px}.home-banner-bottom p{font-size:14px}}
@media(max-width:560px){.home-carousel{--banner-gap:12px;padding-top:16px}.home-carousel-frame{width:calc(100% - 32px)}.home-banner{aspect-ratio:1.65;border-radius:12px}.home-banner-copy{padding:20px 21px 22px;max-width:100%}.home-banner-copy h1,.home-banner-copy h2{font-size:22px;line-height:1.35;letter-spacing:-.055em}.home-banner-label{font-size:9px;margin-bottom:8px}.home-banner-art{object-position:62% center}.home-banner-shade{background:linear-gradient(90deg,#35160ad9,#35160a38 80%)}.home-banner-bottom{max-width:72%}.home-banner-bottom p{font-size:10px;line-height:1.55}.home-banner-cta{display:none}.home-carousel-controls{right:11px;bottom:12px;padding:2px 3px 2px 9px}.home-carousel-count{min-width:37px;font-size:10px;letter-spacing:0}.home-carousel-controls button{width:25px;height:28px;font-size:11px}.home-carousel-controls .icon{width:12px;height:12px}.home-carousel-dots{padding-top:8px}.home-carousel+.section{padding-top:25px}}

@media(max-width:560px){.home-carousel-controls [data-carousel-prev],.home-carousel-controls [data-carousel-next]{display:none}.home-banner-bottom{max-width:calc(100% - 76px)}}
@media(prefers-reduced-motion:reduce){.home-carousel-track,.home-banner{transition:none;will-change:auto}}
.best-ribbon{position:absolute;top:20px;right:-34px;width:135px;padding:5px 0;background:#f3483c;color:#fff;text-align:center;font-family:LabDisplay,Arial,sans-serif;font-size:12px;line-height:1.5;font-weight:850;letter-spacing:1px;transform:rotate(45deg);box-shadow:0 2px 8px #97211126;z-index:2}
.home-card-price{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-variant-numeric:tabular-nums;line-height:1.4}
.home-price-label{display:inline-flex;align-items:center;min-height:26px;font-size:12px;font-weight:750;color:#50584e}
.home-price-sale{background:#fff0e5;color:#bb411c;border-radius:4px;padding:4px 8px}
.home-price-regular{font-size:12px;color:#95958e}.home-price-regular del{margin-left:4px}
.home-price-current{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.home-price-current>b{font-size:24px;font-weight:850;color:#ef4938;letter-spacing:-.5px}.product-bottom .home-price-current>strong{font-size:26px;font-weight:850;color:#20211f;letter-spacing:-.8px;line-height:1.25}.home-price-current strong>small{font-size:17px;font-weight:650}
.home-price-note{font-size:12px;color:#777b72}.home-card-terms{font-size:10px;color:#92958e}
@media(max-width:560px){.best-ribbon{font-size:11px;top:17px;right:-37px}.home-price-current>b{font-size:24px}.product-bottom .home-price-current>strong{font-size:26px}}

.admin-shortcut{font-size:11px;color:#777;white-space:nowrap;padding:6px 8px;border:1px solid #e7e7e7;border-radius:5px}.admin-shortcut:hover{color:#d84a23;border-color:#d84a23}@media(max-width:600px){.header-inner{gap:10px}.admin-shortcut{font-size:10px;padding:5px 6px}}
