:root{--ink: #0E1A2B;--ink-2: #16263D;--ink-3: #22364F;--ivory: #F7F2E9;--paper: #FFFDF8;--sand: #EDE4D3;--gold: #C9A04E;--gold-lt: #E6C987;--gold-dk: #805C1C;--wood: #8B5E3C;--wood-lt: #C89B6D;--rose: #B4526A;--line-green: #06C755;--line-green-dk: #05A847;--text: #1B2433;--text-2: #4A5566;--text-3: #5F6878;--on-dark: #F4EEE2;--on-dark-2: #BFC6D2;--hair: rgba(14,26,43,.12);--hair-dk: rgba(244,238,226,.14);--f-serif: "Noto Serif TC","Songti TC",serif;--f-sans: "Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif;--f-latin: "Cormorant Garamond","Noto Serif TC",serif;--fs-xs: .875rem;--fs-sm: 1rem;--fs-md: 1.125rem;--fs-lg: clamp(1.2rem,1.1rem + .4vw,1.375rem);--fs-xl: clamp(1.5rem,1.3rem + 1vw,2rem);--fs-2xl: clamp(1.9rem,1.5rem + 2vw,2.9rem);--fs-3xl: clamp(2.3rem,1.6rem + 3.6vw,4.4rem);--fs-hero: clamp(2.6rem,1.6rem + 5vw,5.6rem);--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-5: 1.5rem;--s-6: 2rem;--s-7: 3rem;--s-8: 4rem;--s-9: 6rem;--s-10: 8rem;--section: clamp(4rem,3rem + 5vw,8rem);--gutter: clamp(1rem,.6rem + 2vw,2.5rem);--maxw: 1200px;--maxw-text: 42rem;--r-sm: 8px;--r-md: 14px;--r-lg: 22px;--r-xl: 32px;--r-pill: 999px;--sh-1: 0 1px 2px rgba(14,26,43,.06),0 2px 8px rgba(14,26,43,.05);--sh-2: 0 6px 24px -6px rgba(14,26,43,.18),0 2px 6px rgba(14,26,43,.06);--sh-3: 0 24px 60px -18px rgba(14,26,43,.35);--glow: 0 0 24px rgba(230,201,135,.45);--ease: cubic-bezier(.22,.8,.24,1);--ease-spring: cubic-bezier(.34,1.4,.5,1);--t-fast: .18s;--t-med: .38s;--t-slow: .8s;--hd-h: 68px;--dock-h: 64px}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;scroll-behavior: smooth;scroll-padding-top: calc(var(--hd-h) + 12px)}body{margin: 0;background: var(--ivory);color: var(--text);font: 400 var(--fs-md)/1.8 var(--f-sans);letter-spacing: .02em;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility;overflow-x: clip}img,svg,video,canvas{display: block;max-width: 100%}img{height: auto}a{color: inherit;text-decoration-thickness: 1px;text-underline-offset: .2em}p{margin: 0 0 1em}h1,h2,h3,h4{font-family: var(--f-serif);font-weight: 700;line-height: 1.3;letter-spacing: .03em;margin: 0 0 .5em;text-wrap: balance}h1{font-size: var(--fs-3xl)}h2{font-size: var(--fs-2xl)}h3{font-size: var(--fs-xl)}ul,ol{padding-left: 1.3em}button{font: inherit;color: inherit;cursor: pointer}:focus-visible{outline: 3px solid var(--gold);outline-offset: 3px;border-radius: 4px}.sr-only{position: absolute;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap}.skip{position: absolute;left: -999px;top: 8px;z-index: 100;background: var(--ink);color: #fff;padding: 8px 14px;border-radius: 8px}.skip:focus{left: 8px}.ic{flex: none}.nw{white-space: nowrap}.wrap{width: min(100% - 2 * var(--gutter),var(--maxw));margin-inline: auto}.wrap-text{width: min(100% - 2 * var(--gutter),var(--maxw-text));margin-inline: auto}.section{padding-block: var(--section);position: relative}.section-tight{padding-block: calc(var(--section) * .6)}.dark{background: var(--ink);color: var(--on-dark)}.dark .lead,.dark .muted{color: var(--on-dark-2)}.sand{background: var(--sand)}.paper{background: var(--paper)}.eyebrow{display: inline-flex;align-items: center;gap: .6em;margin-bottom: var(--s-4);font: 600 var(--fs-sm)/1 var(--f-latin);letter-spacing: .22em;text-transform: uppercase;color: var(--gold-dk)}.eyebrow::before{content: "";width: 28px;height: 1px;background: currentColor}.dark .eyebrow{color: var(--gold-lt)}.lead{font-size: var(--fs-lg);color: var(--text-2);line-height: 1.85;max-width: 40em}.muted{color: var(--text-3);font-size: var(--fs-sm)}.sec-head{max-width: 46rem;margin-bottom: var(--s-7)}.sec-head.center{text-align: center;margin-inline: auto}.sec-head.center .eyebrow::after{content: "";width: 28px;height: 1px;background: currentColor}.latin{font-family: var(--f-latin);font-style: italic;font-weight: 500;letter-spacing: .01em}.grid{display: grid;gap: var(--s-5)}.g2{grid-template-columns: repeat(auto-fit,minmax(min(100%,22rem),1fr))}.g3{grid-template-columns: repeat(auto-fit,minmax(min(100%,17rem),1fr))}.g4{grid-template-columns: repeat(auto-fit,minmax(min(100%,13rem),1fr))}.split{display: grid;gap: var(--s-7);align-items: center}@media (min-width: 900px){.split{grid-template-columns: 1fr 1fr}.split.wide-l{grid-template-columns: 1.2fr 1fr}}.btn{--bg: var(--ink);--fg: var(--on-dark);display: inline-flex;align-items: center;justify-content: center;gap: .55em;min-height: 50px;padding: .7em 1.5em;border-radius: var(--r-pill);border: 1.5px solid transparent;background: var(--bg);color: var(--fg);font-weight: 700;font-size: var(--fs-md);letter-spacing: .06em;text-decoration: none;line-height: 1.2;white-space: nowrap;transition: transform var(--t-fast) var(--ease),box-shadow var(--t-med) var(--ease),background var(--t-fast)}.btn:hover{transform: translateY(-2px);box-shadow: var(--sh-2)}.btn:active{transform: translateY(0)}.btn-gold{--bg: linear-gradient(135deg,#E3C47E,#C9A04E 55%,#B08535);--fg: var(--ink);background: var(--bg)}.btn-gold:hover{box-shadow: var(--glow),var(--sh-2)}.btn-line{--bg: #057532;--fg: #fff}.btn-line:hover{--bg: #04622A}.btn-ghost{--bg: transparent;--fg: var(--text);border-color: var(--hair);background: transparent}.dark .btn-ghost{--fg: var(--on-dark);border-color: var(--hair-dk)}.btn-sm{min-height: 42px;padding: .5em 1.1em;font-size: var(--fs-sm)}.btn-lg{min-height: 56px;padding: .85em 1.8em;font-size: var(--fs-lg)}.btn-block{width: 100%}.btn-row{display: flex;flex-wrap: wrap;gap: var(--s-3)}.link-arrow{display: inline-flex;align-items: center;gap: .4em;font-weight: 700;color: var(--gold-dk);text-decoration: none}.dark .link-arrow{color: var(--gold-lt)}.link-arrow .ic{transition: transform var(--t-fast) var(--ease)}.link-arrow:hover .ic{transform: translateX(4px)}.card{background: var(--paper);border: 1px solid var(--hair);border-radius: var(--r-lg);padding: var(--s-6);box-shadow: var(--sh-1);transition: transform var(--t-med) var(--ease),box-shadow var(--t-med) var(--ease)}a.card{display: block;text-decoration: none;color: inherit}a.card:hover{transform: translateY(-4px);box-shadow: var(--sh-3)}.dark .card{background: var(--ink-2);border-color: var(--hair-dk)}.chip{display: inline-flex;align-items: center;gap: .35em;padding: .25em .8em;border-radius: var(--r-pill);font-size: var(--fs-xs);font-weight: 700;letter-spacing: .06em;background: var(--sand);color: var(--text-2)}.chip-gold{background: rgba(201,160,78,.16);color: var(--gold-dk)}.chip-rose{background: rgba(180,82,106,.12);color: #9E4058}.dark .chip{background: rgba(244,238,226,.08);color: var(--on-dark-2)}.price{font-family: var(--f-latin);font-weight: 600;font-size: 1.6em;letter-spacing: .01em;line-height: 1}.price small{font-family: var(--f-sans);font-size: .5em;font-weight: 500;margin-right: .2em}.price-was{color: var(--text-3);text-decoration: line-through;font-size: var(--fs-sm);margin-left: .5em}.note{font-size: var(--fs-sm);color: var(--text-3);line-height: 1.7}.specs{display: grid;grid-template-columns: max-content 1fr;gap: .55em 1.2em;margin: 0;font-size: var(--fs-sm)}.specs dt{color: var(--text-3)}.specs dd{margin: 0;font-weight: 500}.dark .specs dt{color: var(--on-dark-2)}.table-wrap{overflow-x: auto;border-radius: var(--r-md);border: 1px solid var(--hair);background: var(--paper)}table{border-collapse: collapse;width: 100%;font-size: var(--fs-sm)}th,td{padding: .85em 1em;text-align: left;border-bottom: 1px solid var(--hair);vertical-align: top}th{background: var(--sand);font-weight: 700;white-space: nowrap}.faq details{border-bottom: 1px solid var(--hair)}.faq summary{list-style: none;cursor: pointer;padding: 1.2em 2.4em 1.2em 0;position: relative;font-weight: 700;font-size: var(--fs-lg);font-family: var(--f-serif)}.faq summary::-webkit-details-marker{display: none}.faq summary::after{content: "";position: absolute;right: .3em;top: 50%;width: 12px;height: 12px;border-right: 2px solid var(--gold-dk);border-bottom: 2px solid var(--gold-dk);transform: translateY(-70%) rotate(45deg);transition: transform var(--t-med) var(--ease)}.faq details[open] summary::after{transform: translateY(-30%) rotate(-135deg)}.faq .ans{padding: 0 0 1.4em;color: var(--text-2)}.reveal{opacity: 0;transform: translateY(24px);transition: opacity var(--t-slow) var(--ease),transform var(--t-slow) var(--ease)}.reveal.in{opacity: 1;transform: none}.reveal[data-d="1"]{transition-delay: .08s}.reveal[data-d="2"]{transition-delay: .16s}.reveal[data-d="3"]{transition-delay: .24s}.reveal[data-d="4"]{transition-delay: .32s}.no-js .reveal{opacity: 1;transform: none}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration: .01ms !important;animation-iteration-count: 1 !important;transition-duration: .01ms !important;scroll-behavior: auto !important}.reveal{opacity: 1;transform: none}}.site-hd{position: sticky;top: 0;z-index: 50;height: var(--hd-h);color: var(--text);background: color-mix(in srgb,var(--ivory) 82%,transparent);backdrop-filter: saturate(1.4) blur(14px);-webkit-backdrop-filter: saturate(1.4) blur(14px);border-bottom: 1px solid transparent;transition: background var(--t-med),border-color var(--t-med),color var(--t-med)}.site-hd.scrolled{border-bottom-color: var(--hair)}body.hd-dark .site-hd:not(.scrolled){background: transparent;color: var(--on-dark);backdrop-filter: none;-webkit-backdrop-filter: none}body.hd-dark .site-hd:not(.scrolled) .hd-line{--bg: rgba(255,255,255,.1);border-color: rgba(255,255,255,.25)}.hd-row{height: 100%;display: flex;align-items: center;gap: var(--s-5)}.logo{display: inline-flex;align-items: center;gap: .55em;text-decoration: none;color: inherit}.logo-mark{display: block;flex: none;width: 54px;height: 38px;color: var(--gold);background-color: currentColor;-webkit-mask: url(/img/brand/hope-trademark.png) center / contain no-repeat;mask: url(/img/brand/hope-trademark.png) center / contain no-repeat}.logo-txt{display: flex;flex-direction: column;line-height: 1.05}.logo-txt b{font: 600 1.35rem/1 var(--f-latin);letter-spacing: .04em}.logo-txt small{font-size: .72rem;letter-spacing: .5em;opacity: .75;margin-top: 3px}.nav{display: none;gap: var(--s-1);margin-left: auto}.nav a{padding: .5em .8em;border-radius: var(--r-pill);text-decoration: none;font-size: var(--fs-sm);font-weight: 500;letter-spacing: .08em;transition: background var(--t-fast)}.nav a:hover{background: var(--hair)}.nav a[aria-current]{color: var(--gold-dk);font-weight: 700}body.hd-dark .site-hd:not(.scrolled) .nav a[aria-current]{color: var(--gold-lt)}.hd-act{display: flex;align-items: center;gap: var(--s-2);margin-left: auto}.hd-cart{position: relative;display: grid;place-items: center;width: 44px;height: 44px;border-radius: 50%;color: inherit}.hd-cart:hover{background: var(--hair)}.cart-n{position: absolute;top: 2px;right: 0;min-width: 20px;height: 20px;padding: 0 5px;border-radius: 10px;background: var(--rose);color: #fff;font: 700 12px/20px var(--f-sans);text-align: center;font-style: normal}.hd-line{display: none}.hd-menu{display: grid;place-items: center;width: 46px;height: 46px;border: 0;background: none;border-radius: 50%}@media (min-width: 1080px){.nav{display: flex}.hd-act{margin-left: var(--s-3)}.hd-line{display: inline-flex}.hd-menu{display: none}}.drawer{position: fixed;inset: var(--hd-h) 0 0;background: var(--ivory);color: var(--text);padding: var(--s-5) var(--gutter) calc(var(--dock-h) + var(--s-6));overflow-y: auto}.drawer nav{display: grid}.drawer nav a{padding: .9em 0;border-bottom: 1px solid var(--hair);font: 700 var(--fs-lg) var(--f-serif);text-decoration: none}.drawer-cta{display: grid;gap: var(--s-3);margin-top: var(--s-6)}body.menu-open{overflow: hidden}body.menu-open .site-hd{background: var(--ivory);color: var(--text)}.site-ft{background: var(--ink);color: var(--on-dark-2);padding: var(--s-9) 0 calc(var(--dock-h) + var(--s-6));font-size: var(--fs-sm)}.ft-grid{display: grid;gap: var(--s-6);grid-template-columns: repeat(auto-fit,minmax(min(100%,12rem),1fr))}.ft-brand{grid-column: 1 / -1;max-width: 28rem}@media (min-width: 900px){.ft-grid{grid-template-columns: 1.6fr 1fr 1fr 1.2fr}.ft-brand{grid-column: auto}}.logo-ft{color: var(--on-dark);margin-bottom: var(--s-4)}.ft-h{font: 600 var(--fs-sm)/1 var(--f-latin);letter-spacing: .2em;color: var(--gold-lt);margin-bottom: var(--s-4)}.site-ft a{display: block;padding: .3em 0;text-decoration: none}.site-ft a:hover{color: var(--on-dark)}.ft-addr{display: flex;gap: .4em;align-items: center}.ft-social{display: flex;flex-wrap: wrap;gap: 0 1em;margin-top: var(--s-3)}.ft-legal{display: flex;flex-wrap: wrap;gap: var(--s-2) var(--s-5);margin-top: var(--s-8);padding-top: var(--s-5);border-top: 1px solid var(--hair-dk)}.ft-legal a{display: inline}@media (min-width: 1080px){.site-ft{padding-bottom: var(--s-6)}}.dock{position: fixed;left: 0;right: 0;bottom: 0;z-index: 45;display: grid;grid-template-columns: repeat(4,1fr);height: calc(var(--dock-h) + env(safe-area-inset-bottom));padding-bottom: env(safe-area-inset-bottom);background: color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter: blur(14px);-webkit-backdrop-filter: blur(14px);border-top: 1px solid var(--hair);box-shadow: 0 -8px 24px -12px rgba(14,26,43,.18)}.dock a{position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 3px;text-decoration: none;font-size: .78rem;font-weight: 700;color: var(--text-2)}.dock .cart-n{top: 6px;right: calc(50% - 22px)}.dock-line{color: #fff !important;background: #057532}@media (min-width: 1080px){.dock{display: none}}.divider-strings{height: 1px;background: linear-gradient(90deg,transparent,var(--gold),transparent);opacity: .5}.badge-soon{background: var(--rose);color: #fff}.stack > * + *{margin-top: var(--s-4)}.prose{max-width: var(--maxw-text)}.prose h2{font-size: var(--fs-xl);margin-top: 2em}.prose h3{font-size: var(--fs-lg);margin-top: 1.6em}.prose img{border-radius: var(--r-md)}.prose a{color: var(--gold-dk)}.prose table{margin: 1.5em 0}.breadcrumb{font-size: var(--fs-xs);color: var(--text-3);margin-bottom: var(--s-4)}.breadcrumb a{text-decoration: none}.breadcrumb a:hover{text-decoration: underline}.page-hero{padding: calc(var(--section) * .7) 0 calc(var(--section) * .5)}.rail{--rail-pad: max(var(--gutter),(100vw - var(--maxw)) / 2);display: flex;gap: var(--rail-gap,var(--s-5));overflow-x: auto;overscroll-behavior-x: contain;scroll-snap-type: x mandatory;scroll-padding-inline: var(--rail-pad);padding: var(--s-2) var(--rail-pad) var(--s-5);scrollbar-width: none}.rail::-webkit-scrollbar{display: none}.rail > *{flex: 0 0 var(--rail-item,min(78vw,340px));scroll-snap-align: start;min-width: 0}.rail:focus-visible{outline-offset: -3px}.rail-free{scroll-snap-type: x proximity}.rail-tight{--rail-gap: var(--s-3)}.rail-nav{display: none;gap: var(--s-3)}@media (min-width: 900px){.rail-nav{display: flex}}.rail-btn{display: grid;place-items: center;width: 52px;height: 52px;border-radius: 50%;border: 1px solid var(--hair);background: var(--paper);color: var(--text);box-shadow: var(--sh-1);cursor: pointer;transition: transform var(--t-fast) var(--ease),background var(--t-fast),color var(--t-fast),opacity var(--t-fast)}.rail-btn:hover:not(:disabled){background: var(--ink);color: var(--on-dark);transform: translateY(-2px)}.rail-btn:disabled{opacity: .35;cursor: default}.dark .rail-btn{background: var(--ink-2);color: var(--on-dark);border-color: var(--hair-dk)}.dark .rail-btn:hover:not(:disabled){background: var(--gold);color: var(--ink)}.rail-bar{height: 2px;background: var(--hair);border-radius: 2px;overflow: hidden}.rail-bar i{display: block;height: 100%;width: 30%;background: linear-gradient(90deg,var(--gold),var(--wood));border-radius: 2px}.dark .rail-bar{background: var(--hair-dk)}.btn.added{--bg: var(--ink);--fg: var(--gold-lt);background: var(--ink);color: var(--gold-lt)}.dark .btn.added{--bg: var(--gold-lt);--fg: var(--ink);background: var(--gold-lt);color: var(--ink)}.tel-link{display: inline-flex;align-items: center;gap: .35em;min-height: 44px;color: var(--text-2);text-decoration: none;font-size: var(--fs-sm)}.tel-link:hover{color: var(--text);text-decoration: underline}.dark .tel-link{color: var(--on-dark-2)}.dark .tel-link:hover{color: var(--on-dark)}.price-ask{font-family: var(--f-serif);font-weight: 700;font-size: 1.35rem;line-height: 1.2;letter-spacing: .04em}.yt,.yt-frame{position: relative;display: block;width: 100%;aspect-ratio: 16 / 9;border: 0;padding: 0;margin: 0;border-radius: var(--r-md);overflow: hidden;background: var(--ink-3);cursor: pointer}.yt img{width: 100%;height: 100%;object-fit: cover;opacity: .88;transition: transform var(--t-slow) var(--ease),opacity var(--t-med)}.yt:hover img{transform: scale(1.04);opacity: 1}.yt-play{position: absolute;left: 50%;top: 50%;width: 64px;height: 64px;transform: translate(-50%,-50%);display: grid;place-items: center;border-radius: 50%;background: rgba(14,26,43,.62);color: var(--gold-lt);border: 1px solid rgba(230,201,135,.6);backdrop-filter: blur(6px);-webkit-backdrop-filter: blur(6px);transition: background var(--t-fast),color var(--t-fast)}.yt:hover .yt-play{background: var(--gold);color: var(--ink)}.yt-sm .yt-play{width: 44px;height: 44px}.book-bar{position: fixed;left: 0;right: 0;bottom: calc(var(--dock-h) + env(safe-area-inset-bottom));z-index: 44;background: color-mix(in srgb,var(--ink) 94%,transparent);color: var(--on-dark);border-top: 1px solid rgba(230,201,135,.35);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);box-shadow: 0 -10px 30px -12px rgba(14,26,43,.5);transform: translateY(110%);opacity: 0;pointer-events: none;transition: transform var(--t-med) var(--ease),opacity var(--t-med)}.book-bar.on{transform: none;opacity: 1;pointer-events: auto}.book-bar[hidden]{display: none}.book-in{display: flex;align-items: center;justify-content: space-between;gap: var(--s-3);padding-block: .55rem}.book-txt{margin: 0;display: flex;flex-direction: column;min-width: 0;line-height: 1.35}.book-txt b{font-family: var(--f-serif);font-size: var(--fs-sm);white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.book-txt span{font-size: .875rem;color: var(--gold-lt);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;font-variant-numeric: lining-nums}.book-bar .btn{flex: none;min-height: 48px;padding-inline: 1.1em}@media (min-width: 1080px){.book-bar{bottom: 0}.book-in{padding-block: .7rem}.book-txt{flex-direction: row;align-items: baseline;gap: 1em}.book-txt b{font-size: var(--fs-md)}.book-txt span{font-size: var(--fs-sm)}}body.bookbar-on .site-ft{padding-bottom: calc(var(--dock-h) + 80px)}.book-acts{display: flex;gap: var(--s-2);flex: none}.book-bar .btn-ic{width: 48px;padding: 0}.pat{font-family: var(--f-sans) !important;font-style: normal;font-weight: 500;font-variant-numeric: lining-nums;letter-spacing: .03em}a.link-arrow{min-height: 44px}.breadcrumb a{display: inline-block;padding-block: .75em;margin-block: -.75em}p,li,dd,figcaption,.lead{text-wrap: pretty}@media (max-width: 400px){.hd-row{gap: var(--s-2)}.logo{gap: .4em}.logo-mark{width: 44px;height: 31px}.logo-txt b{font-size: 1.12rem;white-space: nowrap}.logo-txt small{font-size: .66rem;letter-spacing: .38em;white-space: nowrap}.hd-act{gap: 0}.hd-lang{padding-inline: .45em}}.pc-name a{display: inline-block;padding-block: .7em;margin-block: -.7em}details > summary{min-height: 44px}.btn-sm{min-height: 44px}:root{--grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .42 0 0 0 0 .32 0 0 0 0 .18 0 0 0 .55 -.2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--grain-dk: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .9 0 0 0 0 .8 0 0 0 0 .55 0 0 0 .38 -.24'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--orn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='24' viewBox='0 0 240 24'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%23C9A04E' stop-opacity='0'/%3E%3Cstop offset='.5' stop-color='%23C9A04E'/%3E%3Cstop offset='1' stop-color='%23C9A04E' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 12h112M128 12h112' stroke='url(%23g)' stroke-width='1'/%3E%3Ccircle cx='120' cy='12' r='2.2' fill='%23C9A04E'/%3E%3C/svg%3E")}body{background-color: var(--ivory);background-image: var(--grain)}.sand,.paper{background-image: var(--grain)}.dark{background-image: var(--grain-dk)}::selection{background: rgba(230,201,135,.5);color: var(--ink)}.section:not(.dark):not(.sand):not(.paper) + .section:not(.dark):not(.sand):not(.paper)::before,.divider-strings{content: "";display: block;width: 240px;height: 24px;margin: 0 auto;background: var(--orn) center / contain no-repeat;opacity: .8}.section:not(.dark):not(.sand):not(.paper) + .section:not(.dark):not(.sand):not(.paper)::before{position: absolute;top: -12px;left: 50%;transform: translateX(-50%)}.divider-strings{height: 24px;background-color: transparent}.sec-head.center h2::after{content: "";display: block;width: 120px;height: 16px;margin: .5em auto 0;background: var(--orn) center / contain no-repeat;opacity: .7}.site-ft{position: relative;background-image: var(--grain-dk);padding-top: calc(18px + 65px + var(--s-7,2.5rem))}.site-ft::before{content: "";position: absolute;top: 18px;left: 50%;width: 92px;height: 65px;transform: translate(-50%,0);background-color: #E6C987;-webkit-mask: url(/img/brand/hope-trademark.png) center / contain no-repeat;mask: url(/img/brand/hope-trademark.png) center / contain no-repeat;pointer-events: none;opacity: .85}@media (max-width: 599px){.section{padding-block: 3.5rem}.section-tight{padding-block: 2.5rem}.sec-head{margin-bottom: var(--s-5)}.page-hero{padding: 2.25rem 0 1.75rem}}.sec-head h2{letter-spacing: .04em}main figure{margin: 0}main figure > img,main .card img{border-radius: var(--r-md)}html{-webkit-tap-highlight-color: transparent}.btn-gold{position: relative;overflow: hidden;isolation: isolate}.btn:active{transform: translateY(0) scale(.97);box-shadow: none;transition-duration: .08s}.btn-gold::after{content: "";position: absolute;inset: 0;z-index: -1;pointer-events: none;background: linear-gradient(105deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%);transform: translateX(-110%)}.btn-gold:hover::after{transform: translateX(110%);transition: transform .7s var(--ease)}.btn-line:active{background: #056028}a.card:active,.k-card:active{transform: translateY(-1px) scale(.992);transition-duration: .08s}.dock a{transition: color var(--t-fast),background var(--t-fast)}.dock a:active{background: rgba(14,26,43,.06)}.dock a.dock-line:active{background: #056028}.nav a{position: relative}.nav a::after{content: "";position: absolute;left: .8em;right: .8em;bottom: .25em;height: 1.5px;background: var(--gold);border-radius: 1px;transform: scaleX(0);transform-origin: left;transition: transform var(--t-med) var(--ease)}.nav a:hover::after,.nav a[aria-current]::after{transform: scaleX(1)}.nav a:hover{background: transparent}:focus-visible{outline: 2px solid var(--gold-dk);outline-offset: 3px;box-shadow: 0 0 0 6px rgba(201,160,78,.22)}.btn:focus-visible{outline-offset: 3px}.dark :focus-visible,.site-ft :focus-visible,body.hd-dark .site-hd:not(.scrolled) :focus-visible{outline-color: var(--gold-lt);box-shadow: 0 0 0 6px rgba(230,201,135,.2)}.hd-lang{display: grid;place-items: center;min-width: 44px;height: 44px;padding: 0 .5em;border-radius: var(--r-pill);font: 600 .95rem/1 var(--f-latin);letter-spacing: .08em;text-decoration: none;color: inherit;opacity: .85}.hd-lang:hover{opacity: 1;background: var(--hair)}body:not(.hd-dark):has(#main > .dark:first-child) .site-hd:not(.scrolled){background: var(--ink);color: var(--on-dark);backdrop-filter: none;-webkit-backdrop-filter: none}body:not(.hd-dark):has(#main > .dark:first-child) .site-hd:not(.scrolled) .nav a[aria-current]{color: var(--gold-lt)}.announce{background: var(--ink);background-image: var(--grain-dk);color: var(--on-dark);font-size: var(--fs-sm);border-bottom: 1px solid rgba(230,201,135,.3);position: relative;z-index: 51}.announce-in{display: flex;align-items: center;gap: var(--s-3);min-height: 44px}.announce p{margin: 0;flex: 1;line-height: 1.5;padding-block: .4em}.announce a{color: var(--gold-lt);font-weight: 700}.announce-x{flex: none;display: grid;place-items: center;width: 44px;height: 44px;border: 0;background: none;color: var(--on-dark-2);border-radius: 50%}.announce-x:hover{color: var(--on-dark);background: rgba(255,255,255,.08)}@media (max-width: 899px){.ft-grid{grid-template-columns: 1fr 1fr;gap: var(--s-5) var(--s-4)}.ft-brand,.ft-contact{grid-column: 1 / -1}.site-ft{padding-top: calc(18px + 65px + var(--s-5))}.ft-legal{margin-top: var(--s-6)}}@media (prefers-reduced-motion: no-preference){@view-transition{navigation: auto}.site-hd{view-transition-name: site-hd}.dock{view-transition-name: dock}::view-transition-old(root){animation: vt-out .2s cubic-bezier(.4,0,1,1) both}::view-transition-new(root){animation: vt-in .42s cubic-bezier(.22,.8,.24,1) both}::view-transition-group(site-hd),::view-transition-group(dock){animation-duration: .35s}}@keyframes vt-out{to{opacity: 0;transform: translateY(-8px)}}@keyframes vt-in{from{opacity: 0;transform: translateY(14px)}}@media (prefers-reduced-motion: reduce){.btn-gold::after{display: none}.nav a::after{transition: none}}html[lang="en"]{--f-sans: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans TC",sans-serif;--f-serif: "Cormorant Garamond",Georgia,"Noto Serif TC",serif}html[lang="en"] body{letter-spacing: .005em}html[lang="en"] .site-ft .ft-h{letter-spacing: .06em;font-size: 1.15rem;font-weight: 600}html[lang="en"] .nav a,html[lang="en"] .dock a{letter-spacing: .02em}html[lang="en"] .logo-txt small{letter-spacing: .5em;font-family: "Noto Sans TC",sans-serif}.site-ft .ft-h{font-family: var(--f-serif);font-size: 1rem;font-weight: 700;line-height: 1.3;letter-spacing: .16em}html:not(.no-cv) :is(main > section:not(:first-child),.en-root > section:not(:first-child),.art-layout,.art-end,.site-ft){content-visibility: auto;contain-intrinsic-size: auto 900px}.shop-hero{position: relative;overflow: hidden;margin-top: calc(-1 * var(--hd-h));padding: calc(var(--hd-h) + clamp(3rem,2rem + 5vw,6.5rem)) 0 clamp(3rem,2rem + 4vw,5.5rem);background: radial-gradient(120% 90% at 85% 0%,var(--ink-3) 0%,var(--ink) 55%) var(--ink);isolation: isolate}.shop-hero-in{position: relative;z-index: 1}.shop-hero h1{font-size: var(--fs-hero);margin-bottom: .3em;letter-spacing: .08em}.shop-hero .lead{max-width: 34em}@keyframes hh-shimmer{0%,100%{opacity: .45}50%{opacity: 1}}.shop-facts{list-style: none;padding: 0;margin: var(--s-6) 0 0;display: flex;flex-wrap: wrap;gap: var(--s-2) var(--s-3)}.shop-facts li{display: inline-flex;align-items: center;gap: .45em;padding: .45em 1em;border: 1px solid var(--hair-dk);border-radius: var(--r-pill);font-size: var(--fs-sm);color: var(--on-dark);background: rgba(244,238,226,.04)}.shop-facts .ic{color: var(--gold-lt)}.shop-paid{margin-bottom: var(--s-6);border: 1px solid rgba(230,201,135,.45);border-radius: var(--r-lg);background: linear-gradient(135deg,rgba(230,201,135,.16),rgba(230,201,135,.04));box-shadow: var(--glow)}.shop-paid[hidden]{display: none}.shop-paid-in{display: flex;gap: var(--s-4);align-items: flex-start;padding: var(--s-5)}.shop-paid-ic{flex: none;display: grid;place-items: center;width: 52px;height: 52px;border-radius: 50%;background: var(--gold);color: var(--ink)}.shop-paid h2{font-size: var(--fs-xl);margin-bottom: .25em;color: var(--on-dark)}.shop-paid p{margin: 0;color: var(--on-dark-2);font-size: var(--fs-sm);line-height: 1.8}.shop-paid a{color: var(--gold-lt);font-weight: 700}@media (max-width: 519px){.shop-paid-in{flex-direction: column}}.shop-bar{position: sticky;top: var(--hd-h);z-index: 40;background: color-mix(in srgb,var(--ivory) 90%,transparent);backdrop-filter: saturate(1.4) blur(14px);-webkit-backdrop-filter: saturate(1.4) blur(14px);border-bottom: 1px solid transparent;transition: border-color var(--t-med),box-shadow var(--t-med)}.shop-bar.stuck{border-bottom-color: var(--hair);box-shadow: 0 10px 24px -18px rgba(14,26,43,.35)}.shop-bar-in{display: flex;align-items: center;gap: var(--s-3);padding-block: var(--s-3)}.shop-chips{flex: 1;min-width: 0;display: flex;gap: var(--s-2);overflow-x: auto;scroll-snap-type: x proximity;scrollbar-width: none;-webkit-overflow-scrolling: touch;padding: 2px;margin: -2px}.shop-chips::-webkit-scrollbar{display: none}.shop-chip{flex: none;scroll-snap-align: start;display: inline-flex;align-items: center;gap: .5em;min-height: 46px;padding: .4em 1.15em;border-radius: var(--r-pill);border: 1px solid var(--hair);background: var(--paper);color: var(--text);text-decoration: none;font-weight: 700;font-size: var(--fs-sm);letter-spacing: .06em;white-space: nowrap;transition: background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}.shop-chip span{font: 600 .95rem/1 var(--f-latin);color: var(--text-3)}.shop-chip:hover{border-color: var(--gold)}.shop-chip[aria-current="true"]{background: var(--ink);border-color: var(--ink);color: var(--on-dark)}.shop-chip[aria-current="true"] span{color: var(--gold-lt)}.shop-bar-cart{flex: none;display: none;align-items: center;gap: .5em;min-height: 46px;padding: .4em 1.1em;border-radius: var(--r-pill);border: 1px solid var(--hair);background: var(--paper);font-weight: 700;font-size: var(--fs-sm)}.shop-bar-cart:hover{border-color: var(--gold)}.shop-bar-cart b{min-width: 22px;height: 22px;padding: 0 6px;border-radius: 11px;background: var(--rose);color: #fff;font: 700 12px/22px var(--f-sans);text-align: center}.shop-bar-cart b[hidden]{display: none}@media (min-width: 720px){.shop-bar-cart{display: inline-flex}}.shop-list{padding-bottom: var(--s-6)}.shop-sec{padding-top: clamp(2.5rem,2rem + 3vw,4.5rem);scroll-margin-top: calc(var(--hd-h) + 70px)}.shop-sec[hidden]{display: none}.shop-sec-hd{max-width: 50rem;margin-bottom: var(--s-6)}.shop-sec-hd h2{display: flex;align-items: baseline;gap: .5em;flex-wrap: wrap;margin-bottom: .35em}.shop-sec-n{font: 500 var(--fs-sm)/1 var(--f-sans);color: var(--text-3);letter-spacing: .06em}.shop-sec-hd .lead{font-size: var(--fs-md);margin-bottom: .6em}.shop-sec-hd .note a,.shop-sec-hd .lead a{color: var(--gold-dk)}.shop-rules{margin: 0 0 .8em;padding-left: 1.2em;color: var(--text-2);font-size: var(--fs-sm);line-height: 1.75}.shop-rules li + li{margin-top: .25em}.pgrid{display: grid;gap: var(--s-4) var(--s-3);grid-template-columns: repeat(2,minmax(0,1fr))}@media (min-width: 720px){.pgrid{grid-template-columns: repeat(3,minmax(0,1fr));gap: var(--s-5)}}@media (min-width: 1080px){.pgrid{grid-template-columns: repeat(4,minmax(0,1fr))}}.pc{position: relative;display: flex;flex-direction: column;min-width: 0;background: var(--paper);border: 1px solid var(--hair);border-radius: var(--r-lg);overflow: hidden;box-shadow: var(--sh-1);transition: transform var(--t-med) var(--ease),box-shadow var(--t-med) var(--ease),opacity var(--t-slow) var(--ease);scroll-margin-top: calc(var(--hd-h) + 90px)}.pc:hover{transform: translateY(-4px);box-shadow: var(--sh-3)}.pc.reveal:not(.in){transform: translateY(24px)}.pc-pic{position: relative;display: block;aspect-ratio: 3 / 4;overflow: hidden;background: radial-gradient(90% 70% at 50% 35%,#fff 0%,var(--ivory) 70%,var(--sand) 100%)}.pc-pic img{width: 100%;height: 100%;object-fit: cover;transition: transform var(--t-slow) var(--ease)}.pc:hover .pc-pic img{transform: scale(1.04)}.pc-tags{position: absolute;top: 10px;left: 10px;display: flex;flex-wrap: wrap;gap: 6px}.pc-tag{padding: .25em .75em;border-radius: var(--r-pill);background: var(--ink);color: var(--gold-lt);font-size: var(--fs-xs);font-weight: 700;letter-spacing: .08em;box-shadow: var(--sh-1)}.pc-tag-rose{background: var(--rose);color: #fff}.pc-count{position: absolute;right: 10px;bottom: 10px;padding: .2em .7em;border-radius: var(--r-pill);background: rgba(14,26,43,.72);color: #fff;font-size: var(--fs-xs);font-weight: 700;backdrop-filter: blur(6px);-webkit-backdrop-filter: blur(6px)}.pc-ph{position: absolute;inset: 0;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: .35em;color: var(--gold-dk);text-align: center;background: var(--grain),linear-gradient(160deg,var(--paper),var(--sand))}.pc-ph::before{content: "";position: absolute;inset: 10px;border: 1px solid color-mix(in srgb,var(--gold) 38%,transparent);border-radius: calc(var(--r-md) - 6px);pointer-events: none}.pc-ph-ic{width: clamp(52px,34%,84px);height: auto;color: var(--gold-dk);opacity: .9;margin-bottom: .2em}.pc-ph-rule{width: 44px;height: 1px;background: linear-gradient(90deg,transparent,var(--gold),transparent);margin: .2em 0 .35em}.pc-ph-zh{font-family: var(--f-serif);font-size: var(--fs-sm);font-weight: 700;letter-spacing: .3em;color: var(--text-2);padding-left: .3em}.pc-ph-en{font-size: .95rem;color: var(--text-3)}.pc-ph-book{background: var(--grain),linear-gradient(160deg,var(--ink-2),var(--ink))}.pc-ph-book::before{border-color: color-mix(in srgb,var(--gold-lt) 45%,transparent)}.pc-ph-book .pc-ph-ic{color: var(--gold-lt)}.pc-ph-book .pc-ph-zh{color: var(--on-dark)}.pc-ph-book .pc-ph-en{color: var(--on-dark-2)}.pc-body{flex: 1;display: flex;flex-direction: column;gap: .35em;padding: var(--s-4)}.pc-name{margin: 0;font-size: 1.0625rem;line-height: 1.45;letter-spacing: .02em}.pc-name a{text-decoration: none;color: var(--text)}.pc-name a:hover{color: var(--gold-dk)}.pc-meta{margin: 0;font-size: var(--fs-xs);color: var(--text-3);line-height: 1.55}.pc-sum{margin: 0;font-size: var(--fs-sm);color: var(--text-2);line-height: 1.65;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;overflow: hidden}.pc-foot{margin-top: auto;padding-top: var(--s-3);display: grid;gap: .5em}.pc-price{margin: 0;display: flex;align-items: baseline;flex-wrap: wrap;gap: 0 .2em;color: var(--text)}.pc-price .price{font-size: 1.75rem}.pc-price .price-was{margin-left: .4em}.pc-ship{margin: 0;display: inline-flex;align-items: center;gap: .35em;font-size: var(--fs-xs);font-weight: 700;color: #1F6B3A;line-height: 1.4}.pc-ship.is-digital{color: var(--gold-dk)}.pc-add{position: relative;width: 100%;min-height: 50px;padding-inline: .8em;overflow: hidden}.pc-add .pc-add-t,.pc-add .pc-add-ok{display: inline-flex;align-items: center;gap: .45em;transition: transform var(--t-med) var(--ease-spring),opacity var(--t-fast)}.pc-add .pc-add-ok{position: absolute;inset: 0;justify-content: center;opacity: 0;transform: translateY(110%) scale(.6)}.pc-add.is-added{--bg: var(--ink);background: var(--ink);color: var(--gold-lt)}.pc-add.is-added .pc-add-t{opacity: 0;transform: translateY(-110%)}.pc-add.is-added .pc-add-ok{opacity: 1;transform: none}.pc-add.is-added .pc-add-ok .ic{animation: hh-pop .5s var(--ease-spring)}@keyframes hh-pop{0%{transform: scale(.3) rotate(-20deg)}100%{transform: none}}.pc.is-hl{box-shadow: 0 0 0 3px var(--gold),var(--glow),var(--sh-3);animation: hh-hl 1.6s var(--ease) 2}@keyframes hh-hl{50%{box-shadow: 0 0 0 6px rgba(201,160,78,.35),var(--glow),var(--sh-3)}}@media (max-width: 719px){.pgrid-harp{grid-template-columns: 1fr;gap: var(--s-4)}.pc-harp{display: grid;grid-template-columns: minmax(0,42%) minmax(0,1fr)}.pc-harp .pc-pic{aspect-ratio: auto;min-height: 100%}.pc-harp .pc-pic img{position: absolute;inset: 0}.pc-harp .pc-body{padding: var(--s-4) var(--s-4) var(--s-4) var(--s-3)}.pc-harp .pc-name{font-size: var(--fs-md)}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-sum{display: none}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-body{padding: var(--s-3)}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-name{font-size: 1rem}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-price .price{font-size: 1.5rem}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-add{font-size: var(--fs-sm);padding-inline: .5em;gap: .3em}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-add .ic{display: none}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-add .pc-add-ok .ic{display: block}}.shop-info{margin-top: var(--s-8)}.info-grid{display: grid;gap: var(--s-4);grid-template-columns: repeat(auto-fit,minmax(min(100%,20rem),1fr))}.info-card{background: var(--paper);border: 1px solid var(--hair);border-radius: var(--r-lg);padding: var(--s-5) var(--s-5) var(--s-4);box-shadow: var(--sh-1);font-size: var(--fs-sm);line-height: 1.8;color: var(--text-2)}.info-card h3{display: flex;align-items: center;gap: .5em;font-size: var(--fs-lg);color: var(--text);margin-bottom: .6em}.info-card h3 .ic{color: var(--gold-dk)}.info-card summary{list-style: none;cursor: pointer}.info-card summary::-webkit-details-marker{display: none}.info-card summary h3{margin: 0 0 .6em}@media (max-width: 719px){.info-grid{gap: 0;background: var(--paper);border: 1px solid var(--hair);border-radius: var(--r-lg);padding: 0 var(--s-4)}.info-card{background: none;border: 0;border-bottom: 1px solid var(--hair);border-radius: 0;box-shadow: none;padding: 0}.info-card:last-child{border-bottom: 0}.info-card summary{position: relative;min-height: 56px;display: flex;align-items: center;padding: .6em 2em .6em 0}.info-card summary h3{margin: 0;font-size: var(--fs-md)}.info-card summary::after{content: "";position: absolute;right: .3em;top: 50%;width: 10px;height: 10px;border-right: 2px solid var(--gold-dk);border-bottom: 2px solid var(--gold-dk);transform: translateY(-70%) rotate(45deg);transition: transform var(--t-med) var(--ease)}.info-card[open] summary::after{transform: translateY(-30%) rotate(-135deg)}.info-card[open]{padding-bottom: var(--s-3)}.shop-info{margin-top: var(--s-6);padding-block: var(--s-7)}.shop-info .sec-head{margin-bottom: var(--s-5)}.shop-info .sec-head .eyebrow{display: none}.shop-info .sec-head h2{font-size: var(--fs-xl);margin: 0}.shop-cta{padding-block: var(--s-7)}}.info-card ul{margin: 0 0 1em;padding-left: 1.15em}.info-card li + li{margin-top: .35em}.info-card a{color: var(--gold-dk);font-weight: 700}.info-card strong{color: var(--text)}.shop-cta-in{display: grid;gap: var(--s-5);align-items: center}.shop-cta h2{font-size: var(--fs-xl)}.shop-cta .lead{margin: 0;font-size: var(--fs-md)}@media (min-width: 900px){.shop-cta-in{grid-template-columns: 1.4fr auto}}.sheet{position: fixed;inset: 0;z-index: 70}.sheet[hidden]{display: none}.sheet-back{position: absolute;inset: 0;background: rgba(14,26,43,.55);opacity: 0;transition: opacity var(--t-med) var(--ease);backdrop-filter: blur(3px);-webkit-backdrop-filter: blur(3px)}.sheet.on .sheet-back{opacity: 1}.sheet-card{position: absolute;left: 0;right: 0;bottom: 0;max-height: 94dvh;display: flex;flex-direction: column;background: var(--ivory);border-radius: var(--r-xl) var(--r-xl) 0 0;box-shadow: var(--sh-3);transform: translateY(100%);transition: transform var(--t-med) var(--ease);outline: none}.sheet.on .sheet-card{transform: translateY(var(--drag,0px))}.sheet.dragging .sheet-card{transition: none}.sheet-grab{position: absolute;top: 8px;left: 50%;width: 44px;height: 5px;margin-left: -22px;border-radius: 3px;background: rgba(14,26,43,.22);z-index: 2}.sheet-x{position: absolute;top: 12px;right: 12px;z-index: 3;display: grid;place-items: center;width: 48px;height: 48px;border: 0;border-radius: 50%;background: color-mix(in srgb,var(--paper) 88%,transparent);box-shadow: var(--sh-1);color: var(--text)}.sheet-x:hover{background: var(--paper)}.sheet-scroll{overflow-y: auto;overscroll-behavior: contain;padding-bottom: env(safe-area-inset-bottom);border-radius: inherit}body.sheet-open{overflow: hidden}@media (min-width: 900px){.sheet-card{left: 50%;top: 50%;right: auto;bottom: auto;width: min(1080px,calc(100vw - 64px));max-height: min(88vh,820px);border-radius: var(--r-xl);transform: translate(-50%,-46%) scale(.97);opacity: 0;transition: transform var(--t-med) var(--ease),opacity var(--t-med) var(--ease)}.sheet.on .sheet-card{transform: translate(-50%,-50%);opacity: 1}.sheet-grab{display: none}.sheet-scroll{display: grid;grid-template-columns: minmax(0,1.05fr) minmax(0,1fr);align-items: start}.sd-gal{position: sticky;top: 0}}.sd-gal{position: relative;background: radial-gradient(90% 70% at 50% 35%,#fff 0%,var(--ivory) 70%,var(--sand) 100%)}.sd-track{display: flex;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none;-webkit-overflow-scrolling: touch;overscroll-behavior-x: contain}.sd-track::-webkit-scrollbar{display: none}.sd-stage{position: relative}.sd-slide{flex: 0 0 100%;scroll-snap-align: center;scroll-snap-stop: always;margin: 0;position: relative;height: min(44dvh,460px)}.sd-slide img{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: contain}@media (min-width: 900px){.sd-slide{height: min(64vh,620px)}.sd-thumbs button{width: 54px;height: 72px}}.sd-ph{position: relative;height: min(40dvh,360px)}@media (min-width: 900px){.sd-ph{height: min(64vh,620px)}}.sd-cap{position: absolute;left: 14px;bottom: 14px;display: flex;gap: 6px;align-items: center;pointer-events: none}.sd-cap span{padding: .25em .8em;border-radius: var(--r-pill);background: rgba(14,26,43,.74);color: #fff;font-size: var(--fs-xs);font-weight: 700;backdrop-filter: blur(6px);-webkit-backdrop-filter: blur(6px)}.sd-cap span:empty{display: none}.sd-arrow{position: absolute;top: 50%;z-index: 2;display: none;place-items: center;width: 48px;height: 48px;margin-top: -24px;border: 0;border-radius: 50%;background: color-mix(in srgb,var(--paper) 90%,transparent);box-shadow: var(--sh-2);color: var(--text)}.sd-arrow:hover:not(:disabled){background: var(--paper)}.sd-arrow:disabled{opacity: .3;cursor: default}.sd-prev{left: 14px}.sd-next{right: 14px}@media (hover: hover) and (pointer: fine){.sd-arrow{display: grid}}.sd-thumbs{display: flex;gap: 8px;overflow-x: auto;padding: 10px 14px 14px;scrollbar-width: thin}.sd-thumbs button{flex: none;width: 46px;height: 62px;padding: 0;border: 2px solid transparent;border-radius: var(--r-sm);overflow: hidden;background: var(--paper);opacity: .7;transition: opacity var(--t-fast),border-color var(--t-fast)}.sd-thumbs button img{width: 100%;height: 100%;object-fit: cover}.sd-thumbs button[aria-current="true"]{border-color: var(--gold);opacity: 1}.sd-thumbs button:hover{opacity: 1}.sd-info{padding: var(--s-4) var(--gutter) 0}@media (min-width: 900px){.sd-info{padding: var(--s-7) var(--s-6) var(--s-6)}}@media (max-width: 899px){.sd-info .eyebrow{display: none}}.sd-info .eyebrow{margin-bottom: var(--s-3)}.sd-info h2{font-size: var(--fs-xl);margin-bottom: .45em;padding-right: 2.5em}.sd-price{display: flex;align-items: baseline;flex-wrap: wrap;gap: .2em .6em;margin: 0 0 var(--s-3)}.sd-price .price{font-size: 2.3rem}.sd-chips{display: flex;flex-wrap: wrap;gap: var(--s-2);margin-bottom: var(--s-4)}.sd-sum{color: var(--text-2)}.sd-specs{margin: var(--s-4) 0;padding: var(--s-4);background: var(--paper);border: 1px solid var(--hair);border-radius: var(--r-md)}.sd-block{margin: var(--s-4) 0;font-size: var(--fs-sm);color: var(--text-2);line-height: 1.75}.sd-block h3{font-size: var(--fs-md);color: var(--text);margin-bottom: .35em}.sd-block ul{margin: 0;padding-left: 1.15em}.sd-block a{color: var(--gold-dk);font-weight: 700}.sd-buy{position: sticky;bottom: 0;margin: var(--s-5) calc(-1 * var(--gutter)) 0;padding: var(--s-4) var(--gutter) calc(var(--s-4) + env(safe-area-inset-bottom));background: color-mix(in srgb,var(--ivory) 94%,transparent);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);border-top: 1px solid var(--hair);display: grid;gap: var(--s-3)}@media (min-width: 900px){.sd-buy{margin: var(--s-5) calc(-1 * var(--s-6)) calc(-1 * var(--s-6));padding: var(--s-4) var(--s-6) var(--s-5)}}.sd-row{display: flex;gap: var(--s-3);align-items: center}.sd-row .btn{flex: 1}.sd-qty{flex: none;display: inline-flex;align-items: center;border: 1px solid var(--hair);border-radius: var(--r-pill);background: var(--paper);height: 56px}.sd-qty button{width: 46px;height: 54px;border: 0;background: none;border-radius: 50%;font-size: 1.3rem}.sd-qty button:disabled{opacity: .35;cursor: default}.sd-qty output{min-width: 1.8em;text-align: center;font-weight: 700;font-variant-numeric: tabular-nums}.sd-more{display: inline-flex;margin-top: var(--s-4)}@media (prefers-reduced-motion: reduce){.pc:hover,.pc:hover .pc-pic img{transform: none}}.shop-order{display: inline-flex;align-items: center;gap: .45em;min-height: 48px;margin-top: var(--s-3);color: var(--gold-lt);font-weight: 700;font-size: var(--fs-sm);text-decoration: underline;text-underline-offset: .25em;text-decoration-thickness: 1px}.shop-order:hover{color: #fff}.shop-sec > .wrap{display: flex;flex-direction: column}.shop-sec-hd{margin-bottom: 0}.shop-sec-intro{max-width: 50rem;margin-bottom: var(--s-6)}.sd-colors{margin: 0 0 var(--s-4);padding: 0;border: 0;min-width: 0}.sd-colors legend{padding: 0;margin-bottom: var(--s-2);font-weight: 700;display: flex;align-items: baseline;gap: .6em;flex-wrap: wrap}.sd-colors legend b{color: var(--gold-dk);font-size: var(--fs-lg);font-family: var(--f-serif)}.sd-colors legend span{font: 500 var(--fs-xs)/1 var(--f-sans);color: var(--text-3)}.sd-sw{display: grid;grid-template-columns: repeat(auto-fill,minmax(64px,1fr));gap: var(--s-2)}.sd-sw button{display: flex;flex-direction: column;align-items: center;gap: 4px;min-height: 48px;padding: 4px 2px 6px;border: 2px solid transparent;border-radius: var(--r-sm);background: var(--paper);font-size: var(--fs-xs);line-height: 1.3;color: var(--text-2);text-align: center;transition: border-color var(--t-fast),background var(--t-fast)}.sd-sw button img{width: 48px;height: 64px;object-fit: cover;border-radius: 6px}.sd-sw button:hover{border-color: var(--hair)}.sd-sw button[aria-checked="true"]{border-color: var(--gold);background: rgba(201,160,78,.12);color: var(--text);font-weight: 700}.sd-cnote{margin: var(--s-2) 0 0;font-size: var(--fs-xs);color: var(--text-3);line-height: 1.6}.sd-x{margin: var(--s-5) 0 0}.sd-x h3{font-size: var(--fs-md);margin-bottom: var(--s-3)}.sd-x .hhc-xadd:disabled{border-color: var(--hair);color: var(--text-3);background: none;cursor: default}.shop-course-note{display: flex;align-items: flex-start;gap: .5em;max-width: 50rem;margin: 0 0 var(--s-5);padding: var(--s-3) var(--s-4);border-radius: var(--r-md);background: rgba(6,138,60,.08);border: 1px solid rgba(6,138,60,.2);color: var(--text);font-size: var(--fs-sm);font-weight: 500;line-height: 1.7}.shop-course-note .ic{color: #068A3C;margin-top: .2em}.pgrid-course{grid-template-columns: 1fr}@media (min-width: 720px){.pgrid-course{grid-template-columns: repeat(3,minmax(0,1fr))}}.pc-course .pc-pic{aspect-ratio: 4 / 3}.pc-course .pc-pic img{object-position: 50% 25%}.pc-course .pc-name{font-size: var(--fs-lg)}.pc-cprice{margin: .1em 0 .2em;display: flex;align-items: baseline;flex-wrap: wrap;gap: 0 .15em}.pc-cprice .price{font-size: 1.75rem}.pc-per{font-size: var(--fs-sm);color: var(--text-2)}.pc-ask{font-weight: 700;font-size: var(--fs-md);color: var(--gold-dk)}.pc-crows{margin: 0;padding: 0;list-style: none;font-size: var(--fs-sm);line-height: 1.65;color: var(--text-2)}.pc-crows li{position: relative;padding-left: 1em}.pc-crows li + li{margin-top: .3em}.pc-crows li::before{content: "";position: absolute;left: 0;top: .72em;width: 5px;height: 5px;border-radius: 50%;background: var(--gold)}.pc-crows b{color: var(--text)}.pc-cnote{margin: .3em 0 0;font-size: var(--fs-xs);line-height: 1.6;color: var(--text-3)}.pc-cnote strong{color: var(--text)}.pc-clinks{margin: .3em 0 0;font-size: var(--fs-xs);line-height: 1.7;color: var(--text-3)}.pc-clinks a{color: var(--gold-dk);font-weight: 700}.pc-course .pc-foot{gap: .3em}.pc-more{justify-content: center;min-height: 48px;font-size: var(--fs-sm)}@media (max-width: 719px){.shop-hero{padding: calc(var(--hd-h) + .75rem) 0 1.1rem}.shop-hero .eyebrow{display: none}.shop-hero h1{font-size: 2rem;margin-bottom: .2em}.shop-hero .lead{font-size: var(--fs-sm);line-height: 1.65;margin-bottom: 0}.shop-lead-more{display: none}.shop-facts{margin-top: var(--s-3);gap: 6px}.shop-facts li{padding: .2em .7em;font-size: var(--fs-xs)}.shop-facts .ic{width: 14px;height: 14px}.shop-order{margin-top: var(--s-1);min-height: 44px;font-size: var(--fs-xs)}.shop-bar-in{padding-block: var(--s-2)}.shop-sec{padding-top: var(--s-5)}.shop-sec-hd .eyebrow{display: none}.shop-sec-hd h2{font-size: var(--fs-xl);margin-bottom: var(--s-3)}.shop-sec-intro{order: 2;margin: var(--s-5) 0 0;padding: var(--s-4);border-radius: var(--r-md);background: var(--paper);border: 1px solid var(--hair)}.shop-sec-intro .lead{font-size: var(--fs-sm);line-height: 1.75}.shop-sec-intro > :last-child{margin-bottom: 0}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-pic{aspect-ratio: 1 / 1}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-ph-en{font-size: .95rem}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-meta{display: none}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-name{font-size: .95rem;line-height: 1.4;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;overflow: hidden}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-foot{padding-top: var(--s-2);gap: .35em}.pgrid:not(.pgrid-harp):not(.pgrid-course) .pc-add{min-height: 48px}.pc-harp .pc-sum{-webkit-line-clamp: 2}.pc-harp .pc-body{gap: .25em}.pc-harp .pc-foot{padding-top: var(--s-2)}.sd-sw{grid-template-columns: repeat(auto-fill,minmax(60px,1fr))}.pc-course .pc-pic{aspect-ratio: 16 / 10}.pc-course .pc-body{padding: var(--s-4)}}.shop-hero-photos{position: absolute;z-index: 0;right: max(var(--gutter),calc((100% - var(--maxw)) / 2));top: calc(var(--hd-h) + 1.5rem);bottom: 1.5rem;width: min(34vw,440px);pointer-events: none}.shop-hero-photos img{position: absolute;width: 46%;height: auto;border-radius: var(--r-lg);box-shadow: 0 24px 50px -18px rgba(0,0,0,.65);outline: 1px solid rgba(230,201,135,.35);outline-offset: 6px;object-fit: cover}.shop-hero-photos .sh-p1{left: 0;top: 18%;transform: rotate(-6deg);aspect-ratio: 1}.shop-hero-photos .sh-p3{right: 0;top: 22%;transform: rotate(6deg);aspect-ratio: 1}.shop-hero-photos .sh-p2{left: 27%;top: 4%;width: 48%;z-index: 1;aspect-ratio: 320 / 398}@media (max-width: 719px){.shop-hero-photos{display: none}}@media (min-width: 720px){.shop-hero-in > *{max-width: min(38rem,100vw - 34vw - 2 * var(--gutter) - 3rem)}}