
:root{--paper:#f4f5f3;--ink:#586168;--muted:#89939a;--line:rgba(85,97,104,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Noto Sans TC",sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}
.site-header{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:30px clamp(24px,4vw,70px)}.logo{font-size:26px;letter-spacing:.22em;white-space:nowrap}.back{font-size:11px;letter-spacing:.13em;border-bottom:1px solid currentColor;padding-bottom:5px;text-align:right}
.product-page{display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);min-height:100svh}.visual{position:relative;margin:0;min-height:100svh;background:#e5e8e7;overflow:hidden}.visual img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.visual.stone{background:#f8f8f6}.visual.stone img{object-fit:contain}.image-fallback{display:none}.image-missing .image-fallback{display:flex;position:absolute;inset:0;flex-direction:column;justify-content:center;align-items:center;text-align:center;line-height:2;color:#929aa0}.image-fallback small{font-size:12px}
.copy{align-self:center;padding:130px clamp(35px,6.5vw,115px) 90px}.eyebrow{font-size:10px;letter-spacing:.25em;color:#a3aab0;margin:0 0 30px}.status{font-size:11px;letter-spacing:.11em;color:#758d80;margin:0 0 22px}.status:before{content:"";display:inline-block;vertical-align:middle;width:5px;height:5px;border-radius:50%;background:#83a08e;margin-right:9px}.status.sold{color:#98928e}.status.sold:before{background:#a69d98}h1{font-family:"Cormorant Garamond","Noto Serif TC",serif;font-weight:400;font-size:clamp(38px,4.2vw,66px);line-height:1.15;letter-spacing:.015em;margin:0 0 35px}.spec{font-size:14px;line-height:2.1;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 25px}.description{font-size:14px;line-height:2;margin:0 0 24px}.notice,.inquiry-hint{font-size:12px;line-height:1.9;color:var(--muted)}.notice{margin:0 0 32px}.inquire{display:inline-block;font-size:12px;letter-spacing:.12em;border-bottom:1px solid #89959d;padding:9px 0}.inquiry-hint{margin:16px 0 42px}.return-link{display:inline-block;color:var(--muted);font-size:12px;text-decoration:underline;text-underline-offset:5px}a:focus-visible{outline:2px solid #718998;outline-offset:5px}footer{display:flex;justify-content:space-between;gap:20px;padding:30px 5vw;border-top:1px solid var(--line);font-size:10px;letter-spacing:.16em;color:#a1a9ad}
@media(max-width:800px){.site-header{position:relative;padding:22px 22px}.logo{font-size:21px}.back{font-size:10px}.product-page{display:block}.visual{min-height:0;height:min(75svh,690px);aspect-ratio:4/4.5}.copy{padding:52px 26px 75px}h1{font-size:clamp(38px,10vw,54px)}footer{padding:24px}}

[hidden]{display:none!important}
.site-header{position:relative;max-width:1400px;margin:auto;padding:28px 5%;border-bottom:1px solid var(--line)}
.product-page{max-width:1400px;min-height:0;margin:auto;padding:52px 5% 86px;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(32px,5vw,90px);align-items:start}
.gallery{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:start}
.gallery:has(.thumbnails[hidden]){display:block}
.thumbnails{display:flex;flex-direction:column;gap:12px;max-height:640px;overflow:auto}
.thumbnails button{width:72px;aspect-ratio:1;background:#edece9;border:1px solid transparent;padding:0;cursor:pointer}
.thumbnails button[aria-pressed=true]{border-color:#6a7478}
.thumbnails img{width:100%;height:100%;object-fit:cover}
/* Keep the thumbnail rail scrollable without showing browser scrollbars. */
.thumbnails{scrollbar-width:none;-ms-overflow-style:none}
.thumbnails::-webkit-scrollbar{display:none}
.thumbnails button{flex:none;border:0;opacity:.65;transition:opacity .2s ease}
.thumbnails button:hover,.thumbnails button[aria-pressed=true]{border:0;opacity:1}
.thumbnails button:focus-visible{outline:2px solid #8096a6;outline-offset:3px}
.visual{min-height:0;height:auto;aspect-ratio:4/4.5;background:#e8e7e4}
.visual img{object-fit:contain}
.copy{align-self:start;padding:9px 0 0}
.eyebrow{margin:0 0 12px}.status{margin:0 0 18px}
h1{font-size:clamp(26px,2.4vw,37px);line-height:1.4;margin:0 0 12px;letter-spacing:.025em}
.product-code{font-size:11px;letter-spacing:.08em;color:var(--muted);margin:0 0 30px}
.info-heading{font-size:12px;font-weight:500;letter-spacing:.1em;margin:0 0 7px;color:#667279}
.spec{font-size:13px;line-height:1.8;white-space:pre-line;padding:0 0 20px;border:0;border-bottom:1px solid var(--line);margin:0 0 22px}
.description-block{border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:16px}
.description{font-size:13px;line-height:1.9;margin:0}.notice,.inquiry-hint{font-size:11px;line-height:1.8}.notice{margin:0 0 18px}
.inquire{font-size:12px;margin:0}.inquiry-hint{margin:12px 0 27px}
.not-found{min-height:65svh;padding:120px 8vw 70px}.not-found h1{font-size:34px}.not-found a{border-bottom:1px solid currentColor}
@media(max-width:800px){.site-header{padding:20px 5%}.product-page{padding:25px 5% 65px;display:block}.gallery{grid-template-columns:1fr}.visual{aspect-ratio:1/1;max-height:580px}.thumbnails{order:2;flex-direction:row;max-height:none;overflow-x:auto;padding-top:10px}.thumbnails button{width:62px;min-width:62px}.copy{padding:36px 0 0}h1{font-size:clamp(26px,6.5vw,34px)}footer{padding:24px 5%}}
/* Product detail: a compact, centered editorial spread. */
body{background:#f8f8f6;color:#505b60}
.site-header{max-width:1240px;padding:18px 4%;min-height:78px}
.site-header .logo{font-size:22px}
.site-header .back{font-size:13px;letter-spacing:.04em;border-bottom:0;padding:9px 0}
.site-header .back:hover{text-decoration:underline;text-underline-offset:5px}
.product-page{max-width:1240px;min-height:calc(100svh - 78px);padding:28px 4% 48px;grid-template-columns:minmax(0,1fr) minmax(0,.88fr);gap:clamp(35px,5vw,74px);align-items:center}
.gallery{width:100%;max-width:590px;align-self:center}
.visual{aspect-ratio:1/1;max-height:min(67svh,590px)}
.visual img{object-fit:contain}
.copy{align-self:center;padding:0}
.eyebrow{font-size:11px;letter-spacing:.22em;margin-bottom:14px;color:#737e83}
h1{font-size:clamp(29px,2.35vw,36px);line-height:1.42;letter-spacing:0;margin:0 0 20px}
.product-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px 19px;padding:0 0 21px;border-bottom:1px solid var(--line);margin-bottom:22px}
.product-code,.status{font-size:13px;line-height:1.5;margin:0;letter-spacing:0;color:#79848a}
.status{color:#6d7e76}.status.sold{color:#817c76}
.info-heading{font-size:13px;letter-spacing:.06em;margin:0 0 9px;color:#536066}
.spec,.description{font-size:15px;line-height:1.75;color:#5d686c}
.spec{padding:0 0 21px;margin:0 0 21px}
.description-block{padding:0 0 19px;margin:0 0 25px}
.ordering-block{border-bottom:1px solid var(--line);padding:0 0 16px;margin:0 0 17px}
.ordering{font-size:13px;line-height:1.85;color:#5d686c;margin:0}
.included{font-size:12px;line-height:1.75;color:#667176;margin:0 0 20px}
.inquire{display:inline-flex;align-items:center;justify-content:space-between;gap:55px;min-height:46px;border:1px solid #818e91;padding:11px 19px;font-size:13px;letter-spacing:.05em;transition:background .2s,color .2s}
.inquire:hover{background:#606d72;color:#fff}
@media(max-width:800px){.site-header{min-height:68px}.product-page{min-height:0;padding:20px 5% 60px;display:block}.gallery{max-width:none}.visual{aspect-ratio:1/1;max-height:none}.copy{padding:34px 0 0}h1{font-size:clamp(26px,6vw,34px)}.product-meta{gap:8px 13px}.spec,.description{font-size:14px}}
.more-information{margin-top:26px;border-top:1px solid var(--line)}
.more-information details{border-bottom:1px solid var(--line)}
.more-information summary{list-style:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:15px 1px;font-size:13px;letter-spacing:.05em}
.more-information summary::-webkit-details-marker{display:none}
.more-information summary span{font-size:19px;font-weight:300;line-height:1}
.more-information details[open] summary span{transform:rotate(45deg)}
.more-information details p{font-size:13px;line-height:1.85;color:#667176;margin:0 0 18px}
.faq-link{display:inline-block;font-size:12px;margin-top:17px;text-decoration:underline;text-underline-offset:5px}
.faq-page{max-width:860px;margin:0 auto;padding:70px 6% 110px}
.faq-page h1{font:400 clamp(38px,5vw,60px) 'Cormorant Garamond','Noto Serif TC',serif;margin:0 0 14px}
.faq-intro{font-size:14px;line-height:1.9;color:#727b7f;margin:0 0 42px}
.faq-page section{border-top:1px solid var(--line)}
.faq-page details{border-bottom:1px solid var(--line)}
.faq-page summary{cursor:pointer;list-style:none;padding:22px 28px 22px 0;font-size:16px;line-height:1.6;position:relative}
.faq-page summary::-webkit-details-marker{display:none}
.faq-page summary:after{content:'+';position:absolute;right:2px;top:20px;font-size:21px;font-weight:300}
.faq-page details[open] summary:after{content:'−'}
.faq-page details p{font-size:14px;line-height:1.9;margin:0 24px 24px 0;color:#687378}
.faq-contact{display:inline-block;margin-top:42px;padding-bottom:6px;border-bottom:1px solid currentColor;font-size:13px}
.faq-group-title{font:400 22px/1.5 'Noto Serif TC','Songti TC',serif;color:#5b7380;margin:62px 0 22px}
.faq-page details p+p{margin-top:-10px}
.faq-page details ul{margin:-10px 0 24px;padding-left:1.4em;color:#687378;font-size:14px;line-height:1.9}
.faq-page details strong{font-weight:500;color:#425b68}
@media(max-width:800px){.faq-page{padding:52px 6% 80px}.faq-page summary{font-size:15px}}
/* Zoey.W's cool grey and restrained blue, echoed in the brand documents. */
body{background:#f3f4f4;color:#59646a}
.site-header{border-bottom-color:#dfe3e5}
.site-header .logo,.site-header .back{color:#647783}
.product-page{padding-top:28px;padding-bottom:40px;align-items:start}
.gallery,.copy{align-self:start}
.eyebrow{color:#8095a4}
h1{color:#53636c}
.product-meta{border-bottom-color:#dfe3e5;padding-bottom:17px;margin-bottom:18px}
.product-code,.status,.status.sold{color:#82929d}
.info-heading{color:#60727d}
.spec,.description,.ordering{color:#657177}
.spec{border-bottom-color:#dfe3e5;padding-bottom:16px;margin-bottom:17px}
.description-block{border-bottom:0;padding-bottom:0;margin-bottom:18px}
.ordering-block{border-top:1px solid #dfe3e5;border-bottom:0;padding:18px 0 0;margin:0 0 16px}
.included{color:#738690;font-size:12px;margin:0 0 18px}
.inquire{border-color:#8096a6;color:#5a7180;background:transparent}
.inquire:hover{background:#748b9b;color:#fff}
@media(max-width:800px){.product-page{padding-top:20px;padding-bottom:55px}}
/* Keep the information column open; colour belongs in small brand accents. */
body{background:#f7f8f8}
.copy{background:transparent;padding:0}
.site-header .logo{color:#506b7e}
.eyebrow{color:#69859a}
h1{color:#4e606c}
.product-meta{border-color:#dce2e5}
.product-code,.status,.status.sold{color:#728795}
.spec{border-color:#dce2e5}
.ordering-block{border-color:#dce2e5}
.info-heading{color:#587184}
.included{color:#6a8190}
.inquire{background:transparent;color:#587185;border-color:#8498a5}
.inquire:hover{background:#718798;border-color:#718798;color:#fff}
.visual,.visual.stone{background:transparent}
.visual img,.visual.stone img{
  inset:auto;
  top:50%;left:50%;
  width:auto;height:auto;
  max-width:100%;max-height:100%;
  transform:translate(-50%,-50%);
  object-fit:contain;
  border-radius:20px;
  -webkit-mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent),linear-gradient(to bottom,transparent,#000 3%,#000 97%,transparent);
  mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent),linear-gradient(to bottom,transparent,#000 3%,#000 97%,transparent);
  -webkit-mask-composite:source-in;
  mask-composite:intersect;
}
body{background-color:#f7f8f8;background-image:linear-gradient(rgba(249,250,250,.70),rgba(249,250,250,.70)),url('paper-texture.jpg');background-position:center top;background-size:cover;background-attachment:fixed}
.spec,.description,.ordering{color:#56646c}
@media(max-width:800px){body{background-attachment:scroll;background-size:auto 100%}}
/* Let visitors see the action after the essential facts. Keep supporting detail readable below. */
.copy>.inquire{margin:2px 0 30px}
.description-block{border-top:1px solid #dce2e5;padding-top:20px;margin-bottom:20px}
.secondary-information{border-top:1px solid #dce2e5}
.secondary-information details{border-bottom:1px solid #dce2e5}
.secondary-information summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:16px 0;color:#587184;font-size:13px;letter-spacing:.04em}
.secondary-information summary::-webkit-details-marker{display:none}
.secondary-information summary span[aria-hidden="true"]{font-size:17px;line-height:1;font-weight:300;transition:transform .2s}
.secondary-information details[open] summary span[aria-hidden="true"]{transform:rotate(45deg)}
.secondary-information .ordering,.secondary-information .included{font-size:13px;line-height:1.85;margin:0 0 18px;color:#56646c}
.secondary-information .ordering-block{margin:0;padding:0;border-top:0}
.art-note{position:relative;border:0;background:transparent;padding:0;color:#60707a;font-family:Inter,'Noto Sans TC','Microsoft JhengHei',sans-serif;font-size:14px;font-weight:300;line-height:1.85;letter-spacing:.025em}
.art-note::after{content:'';position:absolute;right:72px;bottom:-37px;width:92px;height:86px;background-image:url('note-botanical.jpg');background-size:240px 240px;background-position:-136px -120px;background-repeat:no-repeat;mix-blend-mode:multiply;opacity:.32;transform:rotate(18deg)}
.gallery-note{grid-column:2;max-width:590px;margin:16px 0 0;text-align:left}
.gallery:has(.thumbnails[hidden]) .gallery-note{margin-top:24px}
.mobile-note{display:none}
@media(max-width:800px){
  .gallery-note{display:none}
  .mobile-note:not([hidden]){display:block;margin:0 0 22px;text-align:left}
  .mobile-note::after{right:28px;bottom:-23px;width:80px;height:75px;background-size:210px 210px;background-position:-119px -105px}
}
.product-price{margin:0 0 3px;color:#4e6877;font-size:21px;line-height:1.45;font-weight:400;letter-spacing:.02em}
.product-price del{margin-right:13px;color:#9ba6aa;font-size:15px;font-weight:300}
.product-price .sale-price{color:#96585d}
.price-note{margin:0 0 21px;color:#8a979d;font-size:11px;line-height:1.6}
@media(max-width:800px){.product-price{font-size:19px}}

/* Match the compact slate footer used by the catalog and service pages. */
footer{min-height:0;display:flex;align-items:center;justify-content:space-between;background:#607888;color:#f8f8f6;border:0;padding:15px 5.5%;font-size:11px;line-height:1.4;letter-spacing:.16em}
@media(max-width:800px){footer{padding:14px 5%;font-size:10px}}
