.rotation-experience{--orbit-depth:355px;--panel-width:560px;position:relative;padding:30px 0 26px;background:radial-gradient(ellipse at center,#f8f3e9 20%,#e9e2d6 80%);border:1px solid #ddd1c0;overflow:hidden;border-radius:12px}.rotation-heading{text-align:center;padding:0 20px}.rotation-heading .eyebrow{margin-bottom:12px;color:#124e4d}.rotation-heading>p:last-child{font-size:16px;color:#71665a}.orbit-viewport{height:440px;perspective:1300px;position:relative;touch-action:pan-y;cursor:grab;overflow:hidden}.orbit-viewport:active{cursor:grabbing}.orbit-ring{position:absolute;width:var(--panel-width);height:375px;left:calc(50% - var(--panel-width) / 2);top:25px;transform-style:preserve-3d;transition:transform 1s cubic-bezier(.22,.7,.2,1)}.orbit-panel{position:absolute!important;inset:0;width:100%;height:100%;transform:rotateY(var(--panel-angle)) translateZ(var(--orbit-depth));backface-visibility:hidden;transition:opacity .7s;opacity:.28;pointer-events:none}.orbit-panel.orbit-active{opacity:1;pointer-events:auto}.mall-orbit .boutique{display:flex;flex-direction:column;background:#faf7ef;border:1px solid #b9ac96;border-radius:4px;padding:0 20px 18px;box-shadow:0 24px 35px #43382b25;text-align:center}.mall-orbit .store-sign{order:0;margin:0 -20px;font-size:25px;height:60px;background:#114c4b;color:#fff;border:0}.mall-orbit .store-awning{order:1;margin:0 -24px 10px;height:22px;background:repeating-linear-gradient(90deg,#efaa87 0 28px,#faf4e8 28px 56px)}.mall-orbit .store-window{order:2;height:180px;flex-shrink:0;border:7px solid #b6a48a}.mall-orbit .boutique h3{order:3;font:22px Georgia;margin:12px 0 5px}.mall-orbit .boutique p{order:4;font-size:16px;color:#756756;margin:0 0 10px}.mall-orbit .enter-shop{order:5;font-size:16px;color:#124e4d;border-top:1px solid #ded1bf;padding-top:10px}.mall-orbit .boutique:hover{transform:rotateY(var(--panel-angle)) translateZ(var(--orbit-depth))}.orbit-floor{position:absolute;bottom:-75px;left:-20%;width:140%;height:190px;background:repeating-linear-gradient(90deg,#d8cdbb 0 89px,#c9bba3 90px,#d8cdbb 91px);transform:rotateX(60deg);box-shadow:0 -15px 70px #c2b29950}.orbit-controls{display:flex;align-items:center;justify-content:center;gap:15px;padding:0 18px}.orbit-controls button{width:44px;height:44px;border:1px solid #bdad98;background:#faf7ef;border-radius:50%;color:#124e4d;font-size:21px}.orbit-controls .orbit-play{width:auto;border-radius:24px;font-size:16px;padding:0 20px}.orbit-status{min-width:145px;text-align:center;font-size:16px}.orbit-dots{display:flex;gap:12px;justify-content:center;margin-top:20px}.orbit-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#b5a68f}.orbit-dots button[aria-pressed=true]{background:#124e4d}.showroom{margin-bottom:40px;--panel-width:580px;--orbit-depth:370px;background:radial-gradient(ellipse,#f7f2e7,#dfd5c5)}.showroom .orbit-viewport{height:500px}.showroom .orbit-ring{height:440px;top:20px}.room-wall{background:linear-gradient(90deg,#d6c8b4,#faf5e9 35%,#f8f1e3 65%,#d6c8b4);border:12px solid #b6a38a;border-bottom:24px solid #a48b6b;box-shadow:0 25px 40px #4d3c2925;display:flex;flex-direction:column;align-items:center;padding:0 25px}.room-cornice{text-align:center;font:18px Georgia;letter-spacing:1px;padding:14px 0;width:100%;border-bottom:1px solid #d2c0a7}.room-light{width:110px;height:5px;background:#876f4d;box-shadow:0 18px 35px 16px #fff9d7aa;margin:15px 0 0}.room-product{background:transparent;border:0;width:220px;padding:8px 0;color:#302c27;position:relative;z-index:1}.room-product svg{display:block;width:100%;height:230px;box-shadow:0 4px 10px #55432e20}.room-product>span{display:block;font:19px Georgia;margin-top:10px}.room-product small{display:block;margin-top:5px;font-size:16px}.room-product .room-view-label{font:16px Arial;color:#124e4d;margin-top:9px}.room-plinth{position:absolute;bottom:0;width:260px;height:50px;background:linear-gradient(90deg,#beac91,#e5d7bf,#beac91);border-top:6px solid #f6ecda}.room-atmosphere>img{width:100%;height:310px;object-fit:cover;margin-top:17px;border:6px solid #947d60}.room-caption{font:23px Georgia;padding:10px}.room-entry{justify-content:center;gap:15px}.room-entry>img{width:240px;height:240px;object-fit:contain;mix-blend-mode:multiply}.room-entry .primary{margin-top:0;font-size:16px}.showroom .orbit-status{min-width:180px}@media(max-width:700px){.rotation-experience{--panel-width:280px;--orbit-depth:190px;padding:24px 0}.orbit-viewport{height:450px;perspective:900px}.orbit-ring{height:395px}.mall-orbit .store-window{height:185px}.mall-orbit .store-sign{font-size:21px}.orbit-controls{gap:8px;flex-wrap:wrap}.orbit-status{min-width:125px;font-size:16px}.orbit-controls .orbit-play{padding:0 14px}.showroom{--panel-width:285px;--orbit-depth:195px}.showroom .orbit-ring{height:430px}.room-wall{padding:0 12px;border-width:8px;border-bottom-width:20px}.room-product{width:185px}.room-product svg{height:220px}.room-entry>img{width:220px;height:220px}.showroom .orbit-status{min-width:130px;max-width:150px}.room-cornice{font-size:16px}}@media(prefers-reduced-motion:reduce){.orbit-ring{transition:none}}

/* Spacious entrance: mall first, with narrow outer margins. */
body:not(.inside-boutique) #collections{padding:28px 2% 38px}
body:not(.inside-boutique) #collections .section-heading{margin-bottom:22px}
header .brand-image{width:210px;height:210px}
header{min-height:220px;padding-top:0;padding-bottom:0}
.mall-orbit{--panel-width:min(780px,calc(100vw - 120px));--orbit-depth:480px;border-radius:8px;padding-top:22px}
.mall-orbit .orbit-viewport{height:530px;perspective:1600px}
.mall-orbit .orbit-ring{height:460px;top:25px}
.mall-orbit .store-sign{height:68px;font-size:30px}
.mall-orbit .store-window{height:255px}
.mall-orbit .boutique h3{font-size:25px;margin-top:13px}
.mall-orbit .enter-shop{font-size:16px}
body:not(.inside-boutique) .mall-welcome{padding:35px 20px 40px}
body:not(.inside-boutique) .mall-welcome h1{font-size:42px}
@media(max-width:1000px){header{padding-top:5px;padding-bottom:15px;gap:12px}header .brand-image{width:175px;height:175px}.mall-orbit{--orbit-depth:360px}}
@media(max-width:650px){header .brand-image{width:155px;height:155px}header{min-height:0}body:not(.inside-boutique) #collections{padding:22px 12px 30px}#collections .section-heading{display:block}#collections .section-heading h2{font-size:29px}.mall-orbit{--panel-width:calc(100vw - 70px);--orbit-depth:205px}.mall-orbit .orbit-viewport{height:465px;perspective:1000px}.mall-orbit .orbit-ring{height:400px}.mall-orbit .store-sign{height:58px;font-size:24px}.mall-orbit .store-window{height:200px}.mall-orbit .boutique h3{font-size:22px}.mall-orbit .boutique p{font-size:16px}.mall-orbit .enter-shop{font-size:16px}body:not(.inside-boutique) .mall-welcome h1{font-size:34px}}

/* Wide storefront, matching the requested mall entrance. */
.mall-orbit{--panel-width:calc(96vw - 80px);--orbit-depth:calc(48vw - 20px)}
.mall-orbit .orbit-viewport{perspective:2400px;height:560px}
.mall-orbit .orbit-ring{height:490px}
.mall-orbit .store-window{height:285px}
.mall-orbit .rotation-heading .eyebrow{font:normal 38px Georgia,serif;letter-spacing:2px;margin:0 0 12px;color:#124e4d}
@media(max-width:650px){.mall-orbit{--panel-width:calc(100vw - 62px);--orbit-depth:calc(50vw - 15px)}.mall-orbit .orbit-viewport{height:465px;perspective:1000px}.mall-orbit .orbit-ring{height:400px}.mall-orbit .store-window{height:200px}.mall-orbit .rotation-heading .eyebrow{font-size:28px;letter-spacing:1px}}

.boutique-choices{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:20px 18px}.boutique-choices a{padding:12px 20px;border:1px solid #b7a88f;border-radius:4px;background:#faf6eb;color:#124e4d;font:16px Georgia,serif}.boutique-choices a:hover{background:#124e4d;color:white}.mall-entrance .store-sign{letter-spacing:3px;color:#f7edd8;font-size:34px}.inside-mall #collections{padding-top:28px}.inside-mall .mall-orbit .store-sign{letter-spacing:1px}@media(max-width:650px){.mall-entrance .store-sign{font-size:24px;letter-spacing:2px}.boutique-choices{gap:8px}.boutique-choices a{font-size:16px;padding:10px 14px}}

.mall-entrance .store-awning{display:none}.mall-entrance .store-window{border:0;height:330px;margin-top:0}.mall-entrance .store-window:before,.mall-entrance .store-window:after{display:none}.mall-entrance .store-window img{object-position:center}.mall-entrance .store-window>span{display:none}.mall-entrance .boutique{padding:0 0 18px;border-color:#bca57f}.mall-entrance .store-sign{margin:0;font-family:Georgia,serif}.mall-entrance .enter-shop{margin:0 20px}.mall-entrance .boutique h3{margin-top:12px}.mall-entrance .orbit-status{display:none}@media(max-width:650px){.mall-entrance .store-window{height:245px}.mall-entrance .store-window img{object-fit:cover}.mall-entrance .boutique h3{font-size:20px}.mall-entrance .store-sign{font-size:24px}}

.grand-mall-facade{border:1px solid #c5b398;border-radius:6px;overflow:hidden;background:#eee5d5}.grand-mall-sign{background:#114c4b;color:#f7edd8;text-align:center;font:36px Georgia,serif;letter-spacing:5px;padding:22px}.mall-building{position:relative}.mall-building>img{display:block;width:100%;height:auto;min-height:460px;object-fit:cover}.facade-shop{position:absolute;background:#124e4df2;color:#fff7e6;border:1px solid #d6b980;padding:12px 10px;text-align:center;width:16%;box-shadow:0 5px 16px #0003;transition:background .2s,transform .2s}.facade-shop:hover{background:#997846;transform:translateY(-3px)}.facade-shop>span{font:19px Georgia,serif;display:block}.facade-shop small{display:block;font-size:16px;margin-top:7px;letter-spacing:.5px}.facade-shop-0{left:1%;top:26%}.facade-shop-1{left:19%;top:26%}.facade-shop-2{right:19%;top:26%}.facade-shop-3{right:1%;top:26%}.facade-shop-4{left:4%;top:63%}.facade-shop-5{right:4%;top:63%}.mall-central-door{position:absolute;bottom:10%;left:50%;transform:translateX(-50%);padding:17px 25px;background:#124e4deb;color:#fff7e6;border:1px solid #d6b980;font-size:16px;white-space:nowrap}.facade-note{text-align:center;font-size:16px;color:#78664c;padding:8px 15px}.inside-mall .mall-orbit{--orbit-depth:calc((96vw - 80px) * .88)}@media(max-width:650px){.grand-mall-sign{font-size:26px;padding:17px;letter-spacing:2px}.mall-building>img{min-height:340px}.facade-shops{position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:9px;padding:14px;background:#e9dfcc}.facade-shop{position:static;width:auto;padding:13px 8px}.facade-shop>span{font-size:17px}.mall-central-door{top:265px;bottom:auto;font-size:16px;padding:13px 16px}.inside-mall .mall-orbit{--orbit-depth:calc((100vw - 62px) * .88)}}

.library-showroom{--panel-width:min(850px,calc(100vw - 100px));--orbit-depth:440px}.library-showroom .room-product{width:275px}.library-showroom .room-product svg{height:270px}.library-showroom .orbit-ring{height:490px}.library-showroom .orbit-viewport{height:550px}.library-showroom .room-product>span{font-size:23px}.book-dialog{max-width:1100px;padding:50px}.book-dialog[open]{animation:book-come-forward .25s ease-out}.book-dialog #product-detail{grid-template-columns:minmax(260px,.95fr) minmax(280px,1.05fr);align-items:start;gap:50px}.book-cover-zoom{border:0;background:transparent;color:#79644c;padding:0;cursor:zoom-in;width:100%}.book-dialog .book-cover-zoom svg{display:block;width:100%;max-height:65vh;object-fit:contain}.book-cover-zoom>span{display:block;font-size:16px;letter-spacing:.3px;margin-top:12px}.book-dialog .book-author-line{font-size:17px!important;margin:16px 0 25px}.book-about{margin-top:24px}.book-about h3{font:24px Georgia,serif;margin:0 0 10px}.book-dialog #product-detail p{font-size:16px}.book-dialog #product-detail h2{font-size:38px}.book-dialog.cover-expanded #product-detail{display:block}.book-dialog.cover-expanded .product-copy{display:none}.book-dialog.cover-expanded .book-cover-zoom{cursor:zoom-out}.book-dialog.cover-expanded .book-cover-zoom svg{height:73vh;max-height:73vh}.book-dialog.cover-expanded{max-width:950px}@keyframes book-come-forward{from{opacity:0;transform:scale(.92) translateY(15px)}to{opacity:1;transform:none}}@media(max-width:650px){.library-showroom{--panel-width:calc(100vw - 65px);--orbit-depth:205px}.library-showroom .room-product{width:220px}.library-showroom .room-product svg{height:250px}.library-showroom .room-product>span{font-size:19px}.book-dialog{padding:40px 22px 25px}.book-dialog #product-detail{grid-template-columns:1fr;gap:25px}.book-dialog .book-cover-zoom svg{height:360px;max-height:55vh}.book-dialog #product-detail h2{font-size:30px}}@media(prefers-reduced-motion:reduce){.book-dialog[open]{animation:none}}

.gallery-store #shop{padding-top:35px}.gallery-store .products{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.gallery-store .product-image{aspect-ratio:4/5}.gallery-introduction{font-size:17px;color:#777268;line-height:1.8;margin:0 0 28px;max-width:650px}.gallery-store .filters{display:none}.gallery-store .shop-controls{justify-content:flex-end}.art-dialog .art-specifications{margin:25px 0;border-top:1px solid #ddd2c0;font-size:16px}.art-specifications>div{display:grid;grid-template-columns:100px 1fr;gap:15px;padding:11px 0;border-bottom:1px solid #ddd2c0}.art-specifications dt{font-weight:600}.art-specifications dd{margin:0;color:#777268}.art-delivery{margin-top:20px;border-bottom:1px solid #ddd2c0;padding-bottom:13px}.art-delivery summary{cursor:pointer;font-size:16px}.artist-credit{font-size:16px;color:#79644c}.art-dialog #product-detail .book-cover-zoom svg{max-height:68vh}.art-dialog .book-about h3{font-size:23px}@media(max-width:900px){.gallery-store .products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.gallery-store .products{grid-template-columns:1fr}.art-specifications>div{grid-template-columns:90px 1fr}.gallery-store .product-image{aspect-ratio:1/1.1}}

.artist-profiles{margin:0 0 28px}.artist-profiles>.eyebrow{margin-bottom:14px}.artist-profile-links{display:flex;gap:12px;flex-wrap:wrap}.artist-profile-links a{border:1px solid #c8b99f;padding:13px 21px;color:#124e4d;background:#f7f0e3;font-size:16px}.artist-profile-links a.selected{color:#fff;background:#124e4d;border-color:#124e4d}.artist-profile-bio{padding:24px 0 0;max-width:650px}.artist-profile-bio h3{font:27px Georgia,serif;margin:0 0 12px}.artist-profile-bio p{color:#777268;line-height:1.8;font-size:16px}

.artwork-photo{display:block;width:100%;object-fit:contain;background:#f5f0e7}.product-image .artwork-photo{height:100%}.library-showroom .room-product:has(.artwork-photo){width:min(580px,85%)}.library-showroom .room-product .artwork-photo{height:270px}.book-dialog .book-cover-zoom .artwork-photo{width:100%;height:auto;max-height:65vh;object-fit:contain}.book-dialog.cover-expanded .book-cover-zoom .artwork-photo{height:73vh;max-height:73vh}.cart-item .artwork-photo{width:70px;height:80px}.quick-add:disabled{opacity:.3;cursor:default}@media(max-width:650px){.library-showroom .room-product .artwork-photo{height:250px}.book-dialog .book-cover-zoom .artwork-photo{max-height:55vh}}

/* Readable navigation and boutique introduction. */
header nav{font-size:17px;line-height:1.5;flex-wrap:wrap}
header .tools{font-size:16px;line-height:1.5;flex-wrap:wrap}
header #language{font-size:16px;max-width:130px}
#inside-shop>p{font-size:17px;line-height:1.6}
#inside-shop .text-link{font-size:17px;line-height:1.5}
.inside-boutique #shop .section-heading .eyebrow{font-size:16px;line-height:1.5}
.inside-boutique #shop-title{font-size:56px}
.inside-boutique #shop .sample-tag{font-size:16px;line-height:1.5}
.showroom .rotation-heading .eyebrow{font-size:16px;line-height:1.5}
.showroom .rotation-heading>p:last-child{font-size:16px;line-height:1.6}
@media(max-width:1000px){header nav{gap:20px}header .tools{gap:14px}}
@media(max-width:650px){header nav{font-size:16px;gap:12px 18px;justify-content:center}header .tools{font-size:16px;gap:10px}header #language{font-size:16px}#inside-shop>p{font-size:16px}#inside-shop .text-link{font-size:16px}.inside-boutique #shop-title{font-size:40px}.inside-boutique #shop .section-heading{flex-wrap:wrap;gap:16px}.showroom .rotation-heading>p:last-child{font-size:17px}}

/* Keep larger supporting text comfortable at every screen width. */
body{line-height:1.5}.eyebrow,.sample-tag,.product-meta,.collection-note,.copyright,.dialog-note{line-height:1.6}.copyright{flex-wrap:wrap;gap:12px}.tools{flex-wrap:wrap}.orbit-controls{flex-wrap:wrap}.orbit-status{white-space:normal}.room-product small{line-height:1.5}.room-product .room-view-label{line-height:1.5}.facade-shop small{letter-spacing:0;line-height:1.4}.payment-methods>li{min-height:52px}.payment-methods .payment-amex{line-height:1.25}.search-label input{min-height:44px}.book-cover-zoom>span{line-height:1.5}.filters button{line-height:1.5}.product-image .label{max-width:calc(100% - 24px);line-height:1.4;letter-spacing:0}.footer-note>span{letter-spacing:1px}@media(max-width:1250px){header{flex-wrap:wrap}header nav{order:3;width:100%;justify-content:center}}@media(max-width:650px){.shop-controls{flex-wrap:wrap}.section-heading{flex-wrap:wrap}.copyright>span{width:100%}.facade-shops{gap:12px}.facade-shop{padding:15px 8px}.payment-methods>li{min-width:90px}}

/* Place the mall entrance just below the header divider. */
body.mall-home #collections{padding-top:8px}body.mall-home #collections>.section-heading{display:none}@media(max-width:650px){body.mall-home #collections{padding-top:8px}}

body:not(.inside-boutique):not(.inside-mall) #collections{padding-top:0!important}.mall-home .grand-mall-facade{border-top:0;border-top-left-radius:0;border-top-right-radius:0}

/* Show the complete boutique image instead of cropping it across the wide window. */
.inside-mall .mall-orbit .store-window{background:#eee8dd;display:flex;align-items:center;justify-content:center}
.inside-mall .mall-orbit .store-window img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
.inside-mall .mall-orbit .boutique:hover .store-window img{transform:none}
.inside-mall .mall-orbit .enter-shop{display:block;flex-shrink:0;margin-top:4px;padding:10px 18px;background:#124e4d;color:#fff7e6;border:1px solid #b89b62;border-radius:3px;line-height:1.4}
.inside-mall .mall-orbit .boutique:hover .enter-shop{background:#195e5c}
@media(max-width:650px){.inside-mall .mall-orbit .store-window{height:175px}.inside-mall .mall-orbit .boutique p{line-height:1.4}.inside-mall .mall-orbit .enter-shop{padding:9px 12px}}

/* Align the inside mall and every boutique with the compact home entrance. */
body.inside-boutique #shop{padding-top:0}
body.inside-boutique #inside-shop{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px 20px;margin:0;padding:8px 0}
body.inside-boutique #inside-shop>p{margin:0}
body.inside-boutique #inside-shop .text-link{padding:6px 0}
body.inside-boutique #shop>.section-heading{padding:10px 0 12px;margin-bottom:12px;gap:12px 20px}
body.inside-boutique #shop>.section-heading .eyebrow{display:none}
body.inside-boutique #shop>.section-heading .sample-tag{margin-top:0}
body.inside-boutique .showroom{padding-top:14px}
body.inside-mall #collections{padding-top:0}
body.inside-mall #collections>.section-heading{display:none}
body.inside-mall .mall-orbit{padding-top:14px}
body.inside-mall .boutique-choices{margin-top:12px;margin-bottom:12px}
@media(max-width:650px){body.inside-boutique #shop,body.inside-mall #collections{padding-top:0}body.inside-boutique #shop>.section-heading{padding:8px 0 12px;margin-bottom:10px}body.inside-boutique #inside-shop{gap:4px 14px;padding:6px 0}}

/* Tighten the space above the view without moving navigation or controls. */
body.inside-mall .mall-orbit,body.inside-boutique .showroom{padding-top:0;border-top-left-radius:0;border-top-right-radius:0}
body.inside-mall .rotation-heading,body.inside-boutique .rotation-heading{padding-top:0}
body.inside-mall .rotation-heading .eyebrow,body.inside-boutique .rotation-heading .eyebrow{margin-top:0;margin-bottom:4px}
body.inside-mall .rotation-heading>p:last-child,body.inside-boutique .rotation-heading>p:last-child{margin-top:4px;margin-bottom:4px}
body.inside-mall .boutique-choices{margin-top:6px;margin-bottom:6px}
body.inside-mall .orbit-ring,body.inside-boutique .showroom .orbit-ring{top:0}
body.inside-boutique #inside-shop{padding-top:0;padding-bottom:2px}
body.inside-boutique #inside-shop .text-link{padding-top:2px;padding-bottom:2px}
body.inside-boutique #shop>.section-heading{padding-top:2px;padding-bottom:6px;margin-bottom:4px}
@media(max-width:650px){body.inside-boutique #shop>.section-heading{padding-top:2px;padding-bottom:6px;margin-bottom:4px}body.inside-boutique #inside-shop{padding-top:0;padding-bottom:2px}}
