html[data-hydrated=true] .ssr-description{display:none}.product-page-container{z-index:10;box-sizing:border-box;grid-template-columns:1fr;gap:1rem;width:100%;max-width:100%;margin:0 auto;padding:0;display:grid;position:relative;overflow-x:hidden}.mobile-product-selection{z-index:20;display:none;position:relative}.product-picker{z-index:30;position:relative}@media (max-width:767px){.mobile-product-selection{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-sizing:border-box;background:#fff9;border-radius:.75rem;width:100%;max-width:100%;margin-bottom:.75rem;padding:.75rem;display:block;box-shadow:0 2px 4px #0000001a}.product-info-section .product-picker{display:none}.product-image-section-container,.product-details-container{box-sizing:border-box;width:100%;max-width:100%;padding:0}.product-image-section{box-sizing:border-box;margin-left:-3px;margin-right:-3px;overflow:hidden;width:100vw!important;max-width:100vw!important;padding:0!important}.product-image-container{overflow:hidden;border-radius:0!important}@media (max-width:375px){.product-info-section{padding:0!important}.product-details-container{font-size:.9rem}.text-truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}}}html[data-theme=dark] .mobile-product-selection{background:#1f293799}.product-page-with-background{width:100%;max-width:100vw;min-height:100vh;position:relative;overflow:hidden visible}.bg-cycle-animation{will-change:background-color;backface-visibility:hidden;perspective:1000px;z-index:1;background-color:#202020;width:100%;height:100%;position:fixed;inset:0;overflow-y:visible;transform:translateZ(0)}.city-page-name-title{z-index:1;pointer-events:none;justify-content:center;align-items:center;width:100%;height:100vh;margin:0;padding:0;display:flex;position:fixed;top:0;left:0;overflow:hidden}.city-page-name-title h1,.city-page-name-title h2{color:#00000030;text-align:center;text-transform:uppercase;white-space:normal;word-break:break-word;overflow-wrap:break-word;-webkit-user-select:none;user-select:none;mix-blend-mode:difference;text-shadow:none;font-weight:900;line-height:.75;font-size:var(--city-font-size,12vw);letter-spacing:-.05em;opacity:.17;filter:blur(.5px);background:linear-gradient(#0006 0%,#0003 100%);-webkit-text-fill-color:transparent;box-sizing:border-box;-webkit-background-clip:text;background-clip:text;padding-top:2vw;position:absolute;top:65%;transform:translateY(-50%)rotate(-5deg)}html[data-theme=dark] .city-page-name-title h1,html[data-theme=dark] .city-page-name-title h2{color:#ffffff30;text-align:center;text-transform:uppercase;white-space:normal;word-break:break-word;overflow-wrap:break-word;-webkit-user-select:none;user-select:none;mix-blend-mode:difference;text-shadow:none;font-weight:900;line-height:.75;font-size:var(--city-font-size,12vw);letter-spacing:-.05em;opacity:.17;filter:blur(.5px);background:linear-gradient(#fff6 0%,#fff3 100%);-webkit-text-fill-color:transparent;box-sizing:border-box;-webkit-background-clip:text;background-clip:text;padding-top:2vw;position:absolute;top:65%;transform:translateY(-50%)rotate(-5deg)}@media (min-width:768px){.product-page-container{grid-template-columns:1fr 1fr;gap:2rem;padding:2rem}.mockup-thumbnails{grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:.5rem;width:100%;padding:.5rem;display:grid;overflow-x:hidden}.mockup-thumbnail{aspect-ratio:1;width:100%;max-width:none}@media (min-width:1024px){.mockup-thumbnails{grid-template-columns:repeat(5,1fr)}}}.product-image-section-container{z-index:10;box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;max-width:100%;display:flex;position:relative}.product-image-container{background-color:var(--bg-secondary);aspect-ratio:1;backface-visibility:hidden;will-change:transform,opacity;perspective:1000px;box-sizing:border-box;border-radius:.75rem;width:100%;max-width:100%;animation:.2s fadeIn;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 1px 3px #0000001a}@keyframes fadeIn{0%{opacity:.5}to{opacity:1}}.mockup-thumbnails-container{z-index:20;box-sizing:border-box;background:0 0;width:100%;max-width:100%;position:relative}.mockup-thumbnails{scrollbar-width:thin;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;box-sizing:border-box;gap:.5rem;width:100%;max-width:100%;padding:.5rem;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10px 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10px 90%,#0000)}.mockup-thumbnail{cursor:pointer;background-color:var(--bg-secondary);border-radius:.5rem;flex:0 0 64px;width:64px;height:64px;transition:all .2s ease-in-out;position:relative;overflow:hidden}.mockup-thumbnail .product-image-transition-container,.mockup-thumbnail .product-image{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}@media (min-width:768px){.product-page-container{grid-template-columns:1fr 1fr;padding:2rem 0}.mockup-thumbnails-container{margin-top:1rem;padding:0}.mockup-thumbnails{grid-template-columns:repeat(5,1fr);gap:1rem;width:100%;padding:0;display:grid;overflow-x:visible;-webkit-mask-image:none;mask-image:none}.mockup-thumbnail{aspect-ratio:1;flex:none;width:100%;height:auto}}.mockup-thumbnail:hover{transform:translateY(-2px)}.mockup-thumbnail.active{border:2px solid var(--primary-color)}.mockup-thumbnail.custom-thumbnail{position:relative}.mockup-thumbnail.custom-thumbnail:after{content:"";background-color:#10b981;border-radius:50%;width:8px;height:8px;position:absolute;top:4px;right:4px;box-shadow:0 0 0 2px #ffffffe6}.mockup-nav-button{z-index:5}.style-toggle-section .active{background-color:var(--primary-bg-subtle);border-color:var(--primary-border-subtle);color:var(--primary-text)}.style-toggle-section{z-index:15;position:relative}.style-toggle-section button{min-height:44px;position:relative}.style-toggle-section button.cursor-pointer,.style-toggle-section button.cursor-pointer:hover{cursor:pointer!important}.style-toggle-section button.cursor-not-allowed{opacity:.8;cursor:not-allowed!important}.style-toggle-section button.cursor-not-allowed:hover{cursor:not-allowed!important}@media (max-width:767px){.style-toggle-section button:active{transform:scale(.98)}}.product-details-container{box-sizing:border-box;flex-direction:column;width:100%;max-width:100%;display:flex}.section-header{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.price-container{align-items:center;margin-bottom:.5rem;display:flex}.fullscreen-viewer-overlay{z-index:50;background-color:#000000f2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.fullscreen-controls{z-index:60;align-items:center;gap:.5rem;display:flex;position:absolute;top:1rem}.fullscreen-controls button{color:#fff;cursor:pointer;background-color:#00000080;border:none;border-radius:9999px;padding:.5rem;transition:background-color .2s}.fullscreen-controls button:hover{background-color:#000000b3}.fullscreen-image-container{justify-content:center;align-items:center;width:90%;height:90%;display:flex;position:relative}.fullscreen-thumbnails-container{background-color:#0000004d;border-radius:8px;flex-direction:column;gap:8px;max-height:60vh;padding:6px;display:flex;overflow-y:auto}@media (max-width:767px){.fullscreen-thumbnails-container{max-width:80vw;max-height:unset;flex-direction:row;overflow-x:auto}}.fullscreen-thumbnail{cursor:pointer;opacity:.7;border:2px solid #0000;border-radius:6px;width:70px;height:70px;transition:all .2s;overflow:hidden}.fullscreen-thumbnail:hover{opacity:.9;transform:translateY(-2px)}.fullscreen-thumbnail.active{opacity:1;border-color:#fff;box-shadow:0 0 0 2px #ffffff80}.related-products{margin-top:3rem}.related-products-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.same-city-products-section,.random-products-section{margin-bottom:2rem}@media (min-width:768px){.related-products-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}}@media (max-width:768px){.product-page-container{width:100%;max-width:100%;margin:0 auto;padding:0;overflow-x:hidden}.product-image-container{border-radius:0;width:100%;max-width:100%}.product-details-container{width:100%;max-width:100%;padding:.5rem}.product-info-section{padding:0 .5rem}}.design-fade-enter{opacity:0}.design-fade-enter-active{opacity:1;transition:opacity .3s ease-in}.design-fade-exit{opacity:1}.design-fade-exit-active{opacity:0;transition:opacity .3s ease-out}.mockup-transition-container{width:100%;height:100%;position:relative}.mockup-image{transition:opacity .3s}.featured-mockup-section{width:100%;position:relative;overflow:hidden}.featured-mockup-container{will-change:transform;border-radius:0;width:100%;min-height:700px;position:relative;overflow:hidden;transform:translateZ(0)}.mockup-featured-content{z-index:10;flex-direction:column;width:100%;height:100%;padding:3rem 1rem;display:flex;position:relative}.mockup-featured-content h2{margin-bottom:2rem}.featured-cards-layout{flex-direction:column;gap:1.5rem;width:100%;display:flex;position:relative}.map-composition-card{will-change:transform;z-index:20;align-self:flex-start;width:100%;max-width:280px;margin-left:1rem;transition:max-width .3s,width .3s;transform:translateZ(0)}.map-composition-card:has(.city-feature-stats.expanded){max-width:340px}@media (min-width:768px){.map-composition-card:has(.city-feature-stats.expanded){z-index:20;max-width:380px}}.city-description-card{will-change:transform;align-self:flex-end;width:100%;max-width:400px;margin-right:1rem;transform:translateZ(0)}.featured-content-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff73;border-radius:1rem;height:100%;overflow:hidden;box-shadow:0 4px 20px #0000001a,0 2px 8px #0000000d,0 0 0 1px #ffffff1a}.city-feature-stats{cursor:pointer;height:100%;transition:all .3s}.city-feature-stats:hover{background-color:#00000008}html[data-theme=dark] .city-feature-stats:hover{background-color:#ffffff08}.city-feature-stats.expanded{max-height:none}.stats-header{-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.expand-toggle-button{color:#00000080;cursor:pointer;background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:.25rem;transition:all .2s;display:flex}html[data-theme=dark] .expand-toggle-button{color:#ffffff80}.expand-toggle-button:hover{color:#000c;background-color:#0000000d}html[data-theme=dark] .expand-toggle-button:hover{color:#fffc;background-color:#ffffff1a}.city-feature-stats .map-composition-title{color:#000000d9;margin-bottom:0;font-size:1.125rem;font-weight:600}html[data-theme=dark] .city-feature-stats .map-composition-title{color:#fffffff2}.city-feature-stats .feature-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.city-feature-stats .feature-item{align-items:center;gap:.75rem;display:flex}.city-feature-stats .icon-container{border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.city-feature-stats .feature-details{flex-direction:column;display:flex}.city-feature-stats .feature-name{color:#0009;font-size:.75rem}html[data-theme=dark] .city-feature-stats .feature-name{color:#fff9}.city-feature-stats .feature-value{color:#000000d9;font-size:1.125rem;font-weight:600}html[data-theme=dark] .city-feature-stats .feature-value{color:#fffffff2}.city-feature-stats .feature-count{color:#00000080;opacity:0;max-height:0;margin-top:.25rem;font-size:.7rem;transition:all .3s;overflow:hidden;transform:translateY(-5px)}html[data-theme=dark] .city-feature-stats .feature-count{color:#ffffff80}.city-feature-stats .feature-count.visible{opacity:1;max-height:2rem;transform:translateY(0)}.city-feature-stats .progress-bar{border-radius:3px;width:100%;height:6px;margin-top:.75rem;display:flex;overflow:hidden}.city-feature-stats .progress-segment{height:100%;transition:width .5s}.expanded-content{opacity:0;max-height:0;margin-top:0;transition:max-height .5s,opacity .3s,margin-top .3s;overflow:hidden}.expanded-content.visible{opacity:1;border-top:1px solid #0000001a;max-height:1000px;margin-top:1rem;padding-top:1rem}html[data-theme=dark] .expanded-content.visible{border-top-color:#ffffff1a}.section-title{color:#000000bf;margin-bottom:.75rem;font-size:.875rem;font-weight:600}html[data-theme=dark] .section-title{color:#ffffffd9}.object-counts-section{margin-bottom:1.5rem}.object-counts-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.object-count-item{flex-direction:column;display:flex}.count-label{color:#0009;font-size:.75rem}html[data-theme=dark] .count-label{color:#fff9}.count-value{color:#000000d9;font-size:1rem;font-weight:500}html[data-theme=dark] .count-value{color:#ffffffe6}.colors-by-type-section{margin-bottom:.5rem}.colors-grid{grid-template-columns:1fr;gap:1rem;display:grid}.color-type-container{margin-bottom:.5rem}.color-type-label{color:#0009;margin-bottom:.25rem;font-size:.75rem}html[data-theme=dark] .color-type-label{color:#fff9}.color-swatches-grid{grid-template-columns:repeat(auto-fill,minmax(1.5rem,1fr));gap:.25rem;display:grid}html[data-theme=dark] .featured-content-card{background:#11182773;border-color:#ffffff0d}@media (min-width:640px){.featured-mockup-container{border-radius:1.5rem;min-height:800px}.mockup-featured-content{padding:4rem 1.5rem}.map-composition-card{max-width:320px;margin-left:2rem}.city-description-card{max-width:450px;margin-right:2rem}}@media (min-width:768px){.featured-cards-layout{flex-flow:wrap;justify-content:space-between;gap:0}.map-composition-card{align-self:flex-start;width:30%;margin-left:0}.city-description-card{align-self:flex-end;width:45%;margin-right:0}.featured-mockup-container{min-height:800px}}@media (min-width:1024px){.featured-mockup-container{min-height:900px}.mockup-featured-content{padding:5rem 2rem}.map-composition-card{width:25%;margin-left:1.5rem}.city-description-card{width:40%;margin-right:1.5rem}}@media (min-width:1280px){.featured-mockup-container{min-height:950px}.mockup-featured-content{padding:6rem 3rem}.map-composition-card{width:22%;margin-left:3rem}.city-description-card{width:35%;margin-right:3rem}}@media (min-width:1536px){.map-composition-card{width:18%;margin-left:5rem}.city-description-card{width:30%;margin-right:5rem}}.info-panel{-webkit-backdrop-filter:blur(8px);border:1px solid #ffffff1a;transition:transform .3s,box-shadow .3s}.info-panel:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.info-panel h3{color:#000000d9}.dark .info-panel h3{color:#fffffff2}.info-panel p{color:#000000bf}.dark .info-panel p{color:#ffffffd9}@media (min-width:768px){.featured-mockup-info{max-height:560px;overflow-y:auto}}.city-description-section{flex-direction:column;height:100%;display:flex}.city-info-title{color:#000000d9;margin-bottom:.75rem;font-size:1.125rem;font-weight:600}html[data-theme=dark] .city-info-title{color:#fffffff2}.city-info-content{flex:1;overflow-y:auto}.collapsible-info-panel{flex-direction:column;gap:.75rem;display:flex}.collapsible-section-header{cursor:pointer;-webkit-user-select:none;user-select:none;background-color:#00000008;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem .75rem;transition:all .2s;display:flex}html[data-theme=dark] .collapsible-section-header{background-color:#ffffff0d}.collapsible-section-header:hover{background-color:#0000000d}html[data-theme=dark] .collapsible-section-header:hover{background-color:#ffffff14}.collapsible-section-title{flex:1;font-size:.875rem;font-weight:600}.collapsible-section-content{padding:0 .75rem .75rem;transition:all .3s;overflow:hidden}.text-primary{color:#d42e12}.print-area-editor-overlay{background:#3b82f61a;border:2px dashed #3b82f6;box-shadow:0 0 0 9999px #00000080}.print-area-editor-overlay:hover{background:#3b82f626;border-color:#2563eb}.print-area-editor-handle{cursor:pointer;background:#3b82f6;border:2px solid #fff;border-radius:50%;width:12px;height:12px;transition:transform .2s;position:absolute}.print-area-editor-handle:hover{background:#2563eb;transform:scale(1.2)}.print-area-editor-shortcuts{color:#fff;opacity:.7;background:#000c;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;transition:opacity .2s;position:absolute;bottom:6rem;left:50%;transform:translate(-50%)}.print-area-editor-shortcuts:hover{opacity:1}
