@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--ink:#3c303c;--plum:#74526d;--paper:#fcf8f4;--pink:#f1d7de;--muted:#766a72;--gold:#b08c54}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #986791;outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;max-width:1480px;margin:auto;padding:27px 5%;border-bottom:1px solid #e9dfdd}.wordmark{font-family:'Playfair Display',Georgia,serif;font-size:32px;font-style:italic;font-weight:600;white-space:nowrap}.wordmark span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:9px;font-weight:500;letter-spacing:3.5px;font-style:normal;margin-top:4px;text-align:center}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav button{background:none;border:0;padding:8px 0}.shop-link{font-size:12px;border-bottom:1px solid #bd9c81;padding:10px 0}.shop-link span{margin-left:18px}.intro{text-align:center;padding:46px 20px 31px}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;color:var(--plum);line-height:1.6}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;margin:0}h1{font-size:clamp(39px,4.2vw,65px);line-height:1.15;margin:15px auto}h1 em,h2 em{font-weight:400;color:var(--plum)}.intro>p:last-child{font-size:13px;color:var(--muted);line-height:1.7;margin:15px 0 0}.experience{max-width:1370px;margin:0 auto;background:radial-gradient(ellipse at 50% 45%,#fff9f4 25%,#eadfe6 100%);border:1px solid #e9dce3;border-radius:7px;overflow:hidden;position:relative}.scene-heading{display:flex;align-items:center;gap:9px;padding:19px 25px;font-size:9px;letter-spacing:1.6px;position:absolute;top:0;left:0;right:0;z-index:2;pointer-events:none}.live-dot{width:5px;height:5px;background:#729f8b;border-radius:50%;box-shadow:0 0 0 4px #729f8b16}.scene-hint{margin-left:auto;letter-spacing:.3px;color:var(--muted);font-size:11px}#scene{height:610px;position:relative;touch-action:pan-y}canvas{width:100%;height:100%;display:block;outline:none;touch-action:pan-y!important}#loading{position:absolute;top:45%;width:100%;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:24px}#fallback{height:100%;padding:60px 15px;text-align:center}#fallback img{height:80%;max-width:100%;object-fit:contain}#fallback p{font-size:12px}.scene-caption{display:flex;justify-content:space-between;align-items:center;padding:0 27px 18px;font-size:11px;color:#786577}.scene-caption>span{font-family:Georgia,serif;font-style:italic;font-size:15px}.scene-caption button{background:#ffffff91;border:1px solid #d9c9d4;border-radius:50px;padding:9px 15px;font-size:11px}.tour-bar{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;padding:15px;background:#fffaf9d9;border-top:1px solid #e2d6dc}.tour-bar button{border:1px solid transparent;border-radius:50px;background:transparent;padding:12px 19px;font-size:11px;white-space:nowrap}.tour-bar button span{font-size:10px;margin-right:7px;opacity:.6}.tour-bar button.active{background:#74526d;color:white;box-shadow:0 4px 15px #74526d22}.tour-bar button:hover{border-color:#bca2b5}.invitation{max-width:1370px;margin:18px auto 70px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.invitation p{margin:0}.invitation strong{font-weight:500;color:var(--ink)}.collections,.story{max-width:1180px;margin:0 auto}.section-title{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.section-title h2{font-size:36px}.section-title>p{font-size:12px;color:var(--muted)}.collection-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.collection{background:none;border:0;text-align:left;padding:0}.photo{height:390px;overflow:hidden;position:relative;border-radius:3px;background:#e9dfe3}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.photo.cups img{object-position:50% 74%}.collection:hover img{transform:scale(1.025)}.photo>span{position:absolute;bottom:18px;left:18px;padding:8px 11px;border-radius:20px;background:#fffcf4e8;font-size:8px;letter-spacing:1.2px}.collection-label{display:flex;justify-content:space-between;align-items:center;margin:21px 0 10px}.collection-label small{font-size:9px;letter-spacing:1.7px;color:var(--plum)}.collection-label h3{font-size:28px;margin-top:8px}.collection-label b{font-size:24px;font-weight:400}.collection>p{font-size:12px;line-height:1.7;color:var(--muted);max-width:400px}.joy-section{max-width:1180px;margin:85px auto;display:flex;align-items:center;justify-content:space-around;border-block:1px solid #dfd4d8;padding:50px 20px;background:radial-gradient(ellipse at 75% 50%,#f3e7e8,transparent 60%)}.joy-section h2{font-size:48px;line-height:1.3;margin:16px 0}.text-button{border:0;border-bottom:1px solid #bda5b0;padding:10px 0;background:none;font-size:12px}.text-button span{margin-left:30px}.joy-seal{width:175px;height:175px;border:1px solid #b79fae;outline:1px solid #cfbac7;outline-offset:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(10deg);font-family:Georgia,serif;font-style:italic;font-size:17px;color:#8b6b80}.joy-seal strong{font-size:45px;font-weight:400;letter-spacing:5px;font-style:normal}.story{display:grid;grid-template-columns: .85fr 1fr;gap:85px;align-items:center;padding-bottom:85px}.story>img{width:100%;height:460px;object-fit:cover;border-radius:180px 180px 3px 3px;object-position:55% center}.story h2{font-size:38px;line-height:1.3;margin:18px 0}.story p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.9}.signature{display:block;font-family:Georgia,serif;font-style:italic;font-size:25px;color:var(--plum);margin:25px 0}.story-links{display:flex;flex-wrap:wrap;gap:15px;font-size:11px}.story-links a{border-bottom:1px solid #dac3cb;padding:4px 0}footer{padding:36px 5%;border-top:1px solid #e4d9dc;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer small{font-size:10px;color:var(--muted)}footer .wordmark{font-size:25px}footer .wordmark span{font-size:7px}dialog{border:1px solid #e4d2da;background:var(--paper);color:var(--ink);border-radius:8px;max-width:800px;width:90%;padding:0;box-shadow:0 25px 100px #3a223c40}dialog::backdrop{background:#30223280;backdrop-filter:blur(7px)}#product-dialog[open]{display:grid;grid-template-columns:1fr 1fr}dialog>img{width:100%;height:100%;min-height:460px;object-fit:cover}dialog h2{font-size:34px;line-height:1.2;margin:15px 0}dialog p:not(.eyebrow){font-size:13px;line-height:1.9;color:var(--muted)}.modal-copy{padding:55px 30px 35px}.modal-copy small{font-size:10px;line-height:1.6;display:block;margin-top:15px;color:var(--muted)}.primary-button{display:inline-block;background:var(--plum);border:0;color:#fff;padding:14px 20px;border-radius:30px;font-size:11px;margin-top:20px}.close{position:absolute;right:12px;top:10px;background:#fff9;border:1px solid #d3bbc7;border-radius:50%;width:32px;height:32px;line-height:25px;font-size:24px;z-index:3}#joy-dialog{max-width:520px;text-align:center;padding:60px 40px;background:radial-gradient(ellipse at top,#efdae8,#fffaf4)}#joy-dialog h2{font-size:43px}.no-scroll{overflow:hidden}
@media(min-width:1500px){#scene{height:660px}}@media(max-width:1420px){.experience,.invitation{margin-left:4%;margin-right:4%}.collections,.story,.joy-section{margin-left:8%;margin-right:8%}}@media(max-width:800px){header{padding:20px 5%}nav{display:none}.wordmark{font-size:28px}.intro{padding-top:33px}h1{font-size:43px}#scene{height:500px}.tour-bar{gap:2px;padding:10px 5px}.tour-bar button{padding:10px;font-size:10px}.scene-heading{padding:18px 16px;letter-spacing:1px}.scene-hint{font-size:9px}.invitation{display:block;line-height:1.8;text-align:center;margin-bottom:45px}.invitation>span{display:none}.section-title{display:block}.section-title h2{font-size:31px}.collection-grid{gap:22px}.photo{height:300px}.collection-label h3{font-size:23px}.joy-section{margin-top:50px;margin-bottom:50px;padding:35px 10px}.joy-section h2{font-size:37px}.joy-seal{width:120px;height:120px;font-size:13px}.joy-seal strong{font-size:32px}.story{gap:30px;grid-template-columns: .8fr 1fr}.story>img{height:380px}.story h2{font-size:29px}footer{flex-wrap:wrap}footer p{display:none}}@media(max-width:520px){.intro h1{font-size:36px}.intro .eyebrow{font-size:8px}.intro>p:last-child{font-size:12px}.shop-link{font-size:10px}#scene{height:405px}.scene-hint{display:none}.scene-caption{padding:0 14px 13px}.scene-caption>span{font-size:12px}.tour-bar button{font-size:9px;padding:10px 8px}.tour-bar button span{margin-right:3px}.collections,.story,.joy-section{margin-left:6%;margin-right:6%}.collection-grid{grid-template-columns:1fr;gap:30px}.photo{height:350px}.section-title h2{font-size:28px}.collection-label h3{font-size:27px}.joy-section h2{font-size:32px}.joy-section .eyebrow{font-size:8px;max-width:180px}.joy-seal{width:92px;height:92px;font-size:11px;margin:0 10px}.joy-seal strong{font-size:25px}.story{grid-template-columns:1fr;gap:24px}.story>img{height:380px}.story h2{font-size:34px}.story{padding-bottom:50px}footer small{max-width:140px;line-height:1.7}#product-dialog[open]{grid-template-columns:1fr;max-height:88vh;overflow:auto}dialog>img{height:240px;min-height:0}.modal-copy{padding:25px}dialog h2{font-size:29px}#joy-dialog{padding:50px 25px}#joy-dialog h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* The detailed room view and the rotatable model are separate, clearly labelled views. */
[hidden]{display:none!important}.view-switch{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 23px;background:#fff9f2}.view-switch>span{font-size:9px;letter-spacing:2px;color:#7e5c6e}.view-switch>div{display:flex;background:#eee2e7;border-radius:30px;padding:3px}.view-switch button{padding:10px 15px;border:0;background:none;border-radius:30px;font-size:11px}.view-switch button.selected{background:#76516a;color:#fff}#cinema{width:100%;max-height:780px;overflow:auto;scrollbar-width:thin;background:#f0dbcf}#cinema-inner{position:relative;width:100%;min-width:100%;line-height:0;transition:width .7s}#cinema-inner>img{display:block;width:100%;height:auto}#hotspots{position:absolute;inset:0;pointer-events:none}.hotspot{position:absolute;transform:translate(-50%,-50%);border:0;background:none;pointer-events:auto;padding:10px;min-width:44px;min-height:44px;display:flex;align-items:center;gap:7px;color:white;z-index:1;line-height:1.3}.spot-dot{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border:1px solid #fff8;background:#714e69bd;border-radius:50%;font-size:20px;box-shadow:0 0 0 5px #fffbef40,0 4px 20px #35162966;backdrop-filter:blur(5px)}.spot-label{position:absolute;left:51px;background:#fffaf3f0;color:#55384d;box-shadow:0 3px 16px #34142c22;border:1px solid #c4a17d88;padding:8px 12px;border-radius:25px;font-size:10px;white-space:nowrap;opacity:0;transform:translateX(-5px);transition:.2s}.hotspot:hover,.hotspot:focus{z-index:5}.hotspot:hover .spot-label,.hotspot:focus .spot-label{opacity:1;transform:none}.hotspot.edge .spot-label{left:auto;right:51px}.hotspot:hover .spot-dot{background:#b87d9b}.scene-caption{padding-top:14px;background:#f9f0ea}#model-container{position:relative}.gallery-intro{max-width:760px;font-size:13px;color:var(--muted);line-height:1.85;margin:-9px 0 27px}.gallery-tools{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:25px 0 8px}#filters{display:flex;gap:5px;flex-wrap:wrap}#filters button{font-size:11px;border:1px solid #dfcfd6;background:transparent;border-radius:25px;padding:9px 14px}#filters button.active{background:#74526d;color:white;border-color:#74526d}.search-label input{width:205px;border:1px solid #dfcfd6;background:#fffaf7;border-radius:25px;padding:11px 15px;font:11px 'DM Sans',Arial}#gallery-count{font-size:10px;color:var(--muted);margin:17px 0}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.product-card{background:none;border:0;padding:0;text-align:left;min-width:0}.product-thumb{height:270px;position:relative;overflow:hidden;border-radius:5px;background:#f0e5df}.product-thumb img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.product-card:hover img{transform:scale(1.04)}.image-tag{position:absolute;left:11px;bottom:11px;background:#fffbf3ed;border-radius:20px;padding:7px 10px;font-size:8px;color:#694b5d}.card-copy{padding:17px 2px 0}.card-copy small{font-size:8px;letter-spacing:1.6px;color:var(--plum)}.card-copy h3{font-size:24px;line-height:1.25;margin:7px 0 12px}.card-cta{font-size:10px;color:#755268}.invitation a{font-size:11px;text-decoration:underline}.product-visual{padding:22px;background:#f1e6e8;display:flex;flex-direction:column;justify-content:center}.product-visual img{width:100%;max-height:520px;object-fit:contain}.product-visual p{font-size:10px!important;margin:12px 0 4px;line-height:1.4!important}.product-visual a{font-size:10px;text-decoration:underline}#product-dialog{max-width:940px;max-height:90vh;overflow:auto}#product-dialog[open]{grid-template-columns:1fr 1.15fr}.modal-copy{padding:40px 30px}.product-actions{display:flex;gap:9px;flex-wrap:wrap}.product-actions button{margin-top:16px}.secondary-button{background:none;border:1px solid #b799ac;border-radius:30px;padding:13px 17px;font-size:11px}.availability-note{font-size:10px;color:#765e6f;padding:10px 0;border-block:1px solid #e3d2db;margin-top:22px}#interest-status,#request-status{font-size:11px!important;color:#76516a!important;line-height:1.6!important}.primary-button:disabled{opacity:.7;cursor:default}#request-form{border-top:1px solid #d5becd;margin-top:24px;padding-top:22px}#request-form h3{font-size:22px;margin-bottom:18px}#request-form>label:not(.consent){display:block;font-size:11px;margin:14px 0;color:#705466}#request-form input:not([type=checkbox]),#request-form textarea{display:block;width:100%;border:1px solid #cbb3c1;background:#fffcf7;padding:11px;margin-top:7px;border-radius:4px;font:13px 'DM Sans',Arial;color:#493448}#request-form textarea{resize:vertical}#request-form .honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.consent{display:flex;gap:8px;font-size:10px;line-height:1.6;margin-top:16px}.consent input{flex-shrink:0;align-self:flex-start;margin-top:3px}.shop-secondary{display:block;font-size:10px;text-decoration:underline;margin-top:25px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#studio-link{display:inline-block;margin-top:8px;text-decoration:underline}@media(max-width:900px){.gallery-tools{display:block}.search-label input{margin-top:15px;width:100%}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-thumb{height:270px}.view-switch>span{font-size:8px;letter-spacing:1px}}@media(max-width:550px){.view-switch{padding:12px 10px;gap:8px}.view-switch>span{max-width:90px;line-height:1.7}.view-switch button{font-size:9px;padding:9px 10px}#cinema{height:400px}#cinema-inner{min-width:600px}.spot-dot{width:24px;height:24px;font-size:17px}.spot-label{font-size:9px;left:45px}.product-grid{gap:24px 14px}.product-thumb{height:190px}.card-copy h3{font-size:20px}.image-tag{font-size:7px;padding:6px}.gallery-intro{font-size:12px}#product-dialog[open]{grid-template-columns:1fr}.product-visual{padding:16px}.product-visual img{height:250px;max-height:250px}.modal-copy{padding:25px}.invitation a{display:block;margin-top:8px}#filters button{font-size:10px;padding:9px 11px}.scene-caption>span{max-width:230px;font-size:11px}}

.listing-link{display:block;text-align:center;text-decoration:none;margin:12px 0}.listing-link[hidden]{display:none}.product-thumb img{object-fit:contain;background:#faf5f1}

.external-link-hint{display:block;font:normal 11px/1.5 Arial,sans-serif;letter-spacing:normal;text-transform:none;margin-top:5px;max-width:300px;opacity:.88}.footer-support{margin:24px auto;max-width:420px}.footer-support p{font-size:13px;line-height:1.7}.footer-support a{display:inline-block}
