body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{background-color:var(--bg-color);transition:background-color .3s ease}body{overflow-x:hidden;width:100%}#root{background-color:var(--bg-color);min-height:100vh;position:relative;z-index:0}.page-content{flex:1 1}.app-container,.page-content{display:flex;flex-direction:column}.app-container{min-height:100vh;width:100%}.text-side-by-side{justify-content:space-between;margin-bottom:2rem}:root{--mainColor:var(--accent-color);--textColor:var(--text-color)}.title{color:var(--text-color)}.navbar{height:4rem;justify-content:space-between;padding:.5rem 3rem;transition:background-color .3s ease}.desktop-nav,.navbar{align-items:center;display:flex}.desktop-nav{gap:1rem}.desktop-nav a{color:var(--text-color);font-size:1.1rem;margin-bottom:.5rem;transition:color .3s ease}.desktop-nav a:hover{color:var(--link-hover)}.mobile-controls{align-items:center;display:none;gap:.5rem}.theme-toggle{background:#0000;border:none;border-radius:4px;color:var(--text-color);cursor:pointer;font-size:1.3rem;padding:.5rem;transition:transform .2s ease}.theme-toggle:hover{transform:scale(1.1)}header .nav-btn{background:#0000;border:none;color:var(--text-color);cursor:pointer;font-size:1rem;outline:none;padding:0 5px;scale:130%;transition:all .3s ease}.rotate{transform:rotate(-45deg)}.rotate,.rotate-back{transition:transform .3s ease}.rotate-back{transform:rotate(0deg)}img{object-fit:fill;width:9.5rem}nav{align-items:center;background-color:var(--navbar-bg);display:flex;flex-direction:column;gap:2rem;height:75%;justify-content:center;left:0;opacity:0;position:fixed;top:4rem;transform:scale(.9);transition:opacity .3s ease,transform .3s ease;visibility:hidden;width:100%;z-index:-1}nav a{color:var(--text-color);font-size:2rem;text-decoration:none;transition:color .3s ease}nav a:hover{color:var(--link-hover)}@media only screen and (max-width:700px){.desktop-nav{display:none}.mobile-controls{display:flex}nav{visibility:visible}header .responsive_nav{opacity:1;transform:scale(1);z-index:1}.navbar{padding:.5rem}img{object-fit:fill;width:8rem}}body{background-color:var(--bg-color);color:var(--text-color);margin:0;padding:0;transition:background-color .3s ease,color .3s ease}body,html{height:100%}.text-side-by-side{align-items:center;display:flex;margin-bottom:3.5vh}.structure{display:flex;flex-direction:column;height:calc(100vh - 7rem);margin-top:1rem;max-width:100vw;overflow-x:hidden}.text-align-start{font-size:var(--font-size);justify-content:flex-start;line-height:calc(var(--font-size)*1.15);margin-left:3rem;width:75%}.text-align-center{justify-content:center;margin-right:6rem;width:50%}.empty-align-center{justify-content:center;width:40%}.text-align-end{justify-content:flex-end;line-height:calc(var(--font-size)*1.2);width:50%}.empty-align-mid{justify-content:flex-end;width:1%}.contact-button-container{margin-bottom:1rem;margin-right:3rem;opacity:0;text-align:right;visibility:hidden}.contact-button{background-color:var(--bg-color);border:2px solid var(--accent-color);border-radius:5px;color:var(--text-color);cursor:pointer;display:inline-block;font-size:1.1rem;padding:1rem;text-decoration:none;transition:all .3s ease}.contact-button:hover{background-color:var(--hover-bg);color:var(--hover-text)}@media only screen and (max-width:768px){.structure{height:auto;margin-top:1rem}.text-align-start{margin-left:2.5rem;width:75%}.text-align-center{margin-right:4rem;width:70%}.empty-align-center{width:30%}.text-align-end{width:75%}}@media only screen and (max-width:700px){.contact-button-container{margin-bottom:2rem;margin-right:4rem;opacity:1;text-align:right;visibility:visible}}@media only screen and (max-width:576px){.structure{margin-top:.5rem}.text-side-by-side{margin-bottom:2vh}.text-align-start{margin-left:1.75rem;width:85%}.text-align-center{margin-right:3rem;width:75%}.empty-align-center{width:25%}.text-align-end{width:90%}.contact-button-container{margin-bottom:2rem;margin-right:4rem;opacity:1;text-align:right;visibility:visible}}@media only screen and (max-width:400px){.structure{margin-top:0}.text-side-by-side{margin-bottom:2vh}.text-align-start{margin-left:1rem;width:95%}.text-align-center{margin-left:1rem;margin-right:1.5rem;width:75%}.empty-align-center{width:25%}.text-align-end{width:95%}.contact-button-container{margin-bottom:2rem;margin-right:3rem;opacity:1;text-align:right;visibility:visible}}.container-structure{color:var(--text-color);font-family:Helvetica Neue,sans-serif;font-weight:350;transition:color .3s ease}.custom-link{-webkit-text-decoration-skip:ink;color:var(--text-color);position:relative;text-decoration:underline;text-decoration-skip-ink:auto;text-decoration-thickness:3px;text-underline-offset:4px;transition:color .1s ease}.custom-link:before{background-color:var(--link-highlight);border-radius:2px;content:"";height:85%;left:-3px;opacity:0;position:absolute;top:15%;transition:opacity .3s ease;width:calc(100% + 6px);z-index:-1}.custom-link:hover{color:var(--text-color)}.custom-link:hover:before{opacity:1}.contact-container{margin-bottom:70px;margin-right:10rem;text-align:left}.contact-container:last-child{margin-bottom:70px;margin-right:0;text-align:left}.contact-links{align-items:flex-start;display:flex;flex-direction:column;font-size:20px;margin-top:20px}.contact-links a{color:var(--text-color);margin-bottom:10px}.contact-links a:hover{color:var(--link-hover)}.caption{color:var(--text-color);font-size:18px;font-weight:700}.contact-wrapper{display:flex;justify-content:center;margin-top:10rem}.inform-message{font-size:clamp(30px,3.5vw,8rem);margin-left:5rem;margin-top:8rem}.contact-wrapper a,.inform-message{color:var(--text-color);transition:color .3s ease}.contact-wrapper a{-webkit-text-decoration-skip:ink;position:relative;text-decoration:underline;text-decoration-skip-ink:auto;text-decoration-thickness:2px;text-underline-offset:2px}.contact-wrapper a:before{background-color:var(--link-highlight);border-radius:2px;content:"";height:100%;left:-3px;opacity:0;position:absolute;top:5%;transition:opacity .3s ease;width:calc(100% + 6px);z-index:-1}.contact-wrapper a:hover{color:var(--text-color)}.contact-wrapper a:hover:before{opacity:1}@media only screen and (max-width:600px){.contact-wrapper{align-items:center;flex-direction:column;margin-top:4rem}.contact-container{margin-bottom:3rem;margin-right:0;text-align:center}.contact-links{align-items:center}.contact-container:last-child{margin-bottom:0}.inform-message{align-items:center;display:flex;flex-direction:column;margin-left:0;margin-top:3rem}}.shop-page{box-sizing:border-box;margin:0 auto;max-width:1200px;padding:3rem 3rem 4rem;width:100%}.shop-header{margin-bottom:3rem}.shop-title{font-size:clamp(30px,3.5vw,4rem);font-weight:400;margin:0 0 .5rem}.shop-subtitle,.shop-title{color:var(--text-color);transition:color .3s ease}.shop-subtitle{font-size:clamp(16px,1.5vw,1.25rem);margin:0;opacity:.6}.product-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}@media only screen and (max-width:768px){.shop-page{padding:2rem 2rem 3rem}}@media only screen and (max-width:576px){.shop-page{padding:1.5rem 1.5rem 3rem}.product-grid{grid-template-columns:1fr}.shop-header{margin-bottom:2rem}}@media only screen and (max-width:400px){.shop-page{padding:1rem 1rem 2rem}}.product-card{border-radius:6px;color:var(--text-color);cursor:pointer;display:block;overflow:hidden;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}@media (hover:hover){.product-card:hover{box-shadow:0 6px 20px var(--card-shadow);transform:translateY(-3px)}.product-card:hover .product-image-placeholder{transform:scale(1.03)}}.product-image-container{background-color:#f0f0f0;background-color:var(--card-bg,#f0f0f0);border-radius:6px;overflow:hidden;padding-top:125%;position:relative;width:100%}.product-image{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform .3s ease;width:100%}.product-image-placeholder{background-color:#e0e0e0;background-color:var(--card-bg,#e0e0e0);height:100%;left:0;position:absolute;top:0;transition:transform .3s ease;width:100%}.product-image-container.sold-out:after{background-color:#b4b4b499;content:"";inset:0;position:absolute;z-index:1}.last-one-badge,.sold-out-badge{background-color:var(--text-color);border-radius:3px;color:var(--bg-color);font-size:.75rem;font-weight:600;left:12px;letter-spacing:.5px;padding:4px 10px;position:absolute;text-transform:uppercase;top:12px;transition:background-color .3s ease,color .3s ease;z-index:2}.product-info{align-items:baseline;display:flex;justify-content:space-between;padding:.75rem .25rem}.product-name{font-size:1rem}.product-name,.product-price{color:var(--text-color);transition:color .3s ease}.product-price{font-size:.95rem;opacity:.7}.product-detail-page{box-sizing:border-box;margin:0 auto;max-width:1100px;padding:3rem 3rem 4rem;width:100%}.back-link{color:var(--text-color);display:inline-block;font-size:1rem;margin-bottom:2rem;opacity:.6;text-decoration:none;transition:opacity .3s ease,color .3s ease}@media (hover:hover){.back-link:hover{opacity:1}}.product-detail-layout{grid-gap:3rem;align-items:start;display:grid;gap:3rem;grid-template-columns:1fr 1fr}.product-detail-image-col{position:relative}.product-detail-image-container{border-radius:6px;overflow:hidden;padding-top:125%;position:relative}.product-detail-image-container,.product-detail-image-placeholder{background-color:#e0e0e0;background-color:var(--card-bg,#e0e0e0);width:100%}.product-detail-image-placeholder{height:100%;left:0;position:absolute;top:0}.product-detail-badge{border-radius:3px;font-size:.75rem;font-weight:600;left:12px;letter-spacing:.5px;padding:4px 10px;position:absolute;text-transform:uppercase;top:12px;transition:background-color .3s ease,color .3s ease;z-index:3}.product-detail-badge,.product-detail-badge--last-one{background-color:var(--text-color);color:var(--bg-color)}.product-detail-info{padding-top:.5rem}.product-not-found{margin-top:3rem;text-align:center}.product-not-found h2{font-size:clamp(24px,2.5vw,2rem);font-weight:400;margin:0 0 .75rem}.product-not-found h2,.product-not-found p{color:var(--text-color);transition:color .3s ease}.product-not-found p{font-size:1rem;opacity:.6}.product-detail-name{font-size:clamp(28px,3vw,3rem);font-weight:400;margin:0 0 .5rem}.product-detail-name,.product-detail-price{color:var(--text-color);transition:color .3s ease}.product-detail-price{font-size:1.25rem;margin:0 0 1.5rem;opacity:.7}.product-detail-description{color:var(--text-color);font-size:1rem;line-height:1.6;margin:0 0 2rem;transition:color .3s ease;white-space:pre-line}.purchase-link{background-color:var(--bg-color);border:2px solid var(--accent-color);border-radius:5px;color:var(--text-color);cursor:pointer;display:inline-block;font-size:1rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}@media (hover:hover){.purchase-link:hover{background-color:var(--hover-bg);color:var(--hover-text)}}.product-detail-sold-out{background-color:var(--text-color);border-radius:5px;color:var(--bg-color);display:inline-block;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.75rem 1.5rem;text-transform:uppercase;transition:background-color .3s ease,color .3s ease}@media only screen and (max-width:768px){.product-detail-page{padding:2rem 2rem 3rem}.product-detail-layout{gap:2rem;grid-template-columns:1fr}}@media only screen and (max-width:576px){.product-detail-page{padding:1.5rem 1.5rem 3rem}}@media only screen and (max-width:400px){.product-detail-page{padding:1rem 1rem 2rem}}.carousel{background-color:#e0e0e0;background-color:var(--card-bg,#e0e0e0);border-radius:6px;overflow:hidden;padding-top:125%;position:relative;width:100%}.carousel-track{display:flex;height:100%;left:0;position:absolute;top:0;transition:transform .4s ease;width:100%}.carousel-slide{height:100%;min-width:100%}.carousel-image{height:100%;object-fit:cover;width:100%}.carousel-arrow{align-items:center;background:#0000004d;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;height:36px;justify-content:center;line-height:1;opacity:0;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .25s ease;width:36px;z-index:2}.carousel-arrow-left{left:10px}.carousel-arrow-right{right:10px}@media (hover:hover){.carousel:hover .carousel-arrow{opacity:1}.carousel-arrow:hover{background:#0000008c}}.carousel-dots{bottom:12px;display:flex;gap:8px;left:50%;position:absolute;transform:translateX(-50%);z-index:2}.carousel-dot{background:#ffffff80;border:none;border-radius:50%;cursor:pointer;height:8px;padding:0;transition:background .25s ease;width:8px}.carousel-dot.active{background:#fff}.carousel-dot:hover{background:#fffc}.purchase-form{animation:formSlideIn .3s ease;border:1px solid var(--accent-color);border-radius:6px;margin-top:1.5rem;padding:1.5rem}@keyframes formSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.purchase-form-title{color:var(--text-color);font-size:.95rem;margin:0 0 1rem;opacity:.7;transition:color .3s ease}.purchase-form-field{margin-bottom:.75rem}.purchase-form-field input,.purchase-form-field textarea{background:#0000;border:1px solid var(--accent-color);border-radius:4px;box-sizing:border-box;color:var(--text-color);font-family:inherit;font-size:.95rem;outline:none;padding:.6rem .75rem;resize:vertical;transition:border-color .3s ease,color .3s ease;width:100%}.purchase-form-field input::placeholder,.purchase-form-field textarea::placeholder{color:var(--text-color);opacity:.4}.purchase-form-field input:focus,.purchase-form-field textarea:focus{border-color:var(--link-hover)}.purchase-form-actions{display:flex;gap:.75rem;margin-top:1rem}.purchase-form-btn{border:2px solid var(--accent-color);border-radius:5px;cursor:pointer;flex:1 1;font-size:.9rem;padding:.65rem 1rem;text-decoration:none;transition:all .3s ease}.purchase-form-btn:disabled{cursor:not-allowed;opacity:.35}.purchase-form-btn-email{background-color:var(--bg-color);color:var(--text-color)}@media (hover:hover){.purchase-form-btn-email:not(:disabled):hover{background-color:var(--hover-bg);color:var(--hover-text)}}.purchase-form-field-error{color:#e53935;font-size:.8rem;margin:.3rem 0 0}.purchase-form-status{font-size:.9rem;margin:.5rem 0 .75rem}.purchase-form-status--success{color:#4caf50}.purchase-form-status--error{color:#e53935}@media only screen and (max-width:576px){.purchase-form-actions{flex-direction:column}.purchase-form{padding:1rem}}