@font-face{font-family:caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/caveat.woff2)format('woff2')}@font-face{font-family:dm serif display;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/dm-serif-display.woff2)format('woff2')}@font-face{font-family:inter;font-style:normal;font-weight:300 500;font-display:swap;src:url(../fonts/inter.woff2)format('woff2')}:root{--color-cream:#FDF8F3;--color-orange:#E8734A;--color-yellow:#F4C542;--color-blue:#4A90D9;--color-turquoise:#5BBFBA;--color-red:#D94E5D;--color-purple:#8B6BAF;--color-dark:#2C2C2C}*{margin:0;padding:0;box-sizing:border-box}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:inter,sans-serif;background-color:var(--color-cream);color:var(--color-dark);overflow-x:hidden}.handwritten{font-family:caveat,cursive}.serif{font-family:dm serif display,serif}.blob{position:fixed;border-radius:50% 40% 60% 50%;filter:blur(60px);opacity:.4;z-index:-1;animation:float 20s ease-in-out infinite;pointer-events:none}.blob-1{width:400px;height:400px;background:var(--color-orange);top:-100px;right:-100px;animation-delay:0s}.blob-2{width:300px;height:300px;background:var(--color-turquoise);top:50%;left:-150px;animation-delay:-5s}.blob-3{width:250px;height:250px;background:var(--color-yellow);bottom:20%;right:10%;animation-delay:-10s}@keyframes float{0%,100%{transform:translate(0,0)rotate(0)scale(1)}25%{transform:translate(30px,-30px)rotate(5deg)scale(1.05)}50%{transform:translate(-20px,20px)rotate(-5deg)scale(.95)}75%{transform:translate(20px,10px)rotate(3deg)scale(1.02)}}nav{position:fixed;top:0;width:100%;padding:1.5rem 3rem;display:flex;justify-content:space-between;align-items:center;z-index:100;background:linear-gradient(to bottom,var(--color-cream),transparent)}.logo{font-family:caveat,cursive;font-size:2rem;font-weight:700;color:var(--color-dark);text-decoration:none;transition:transform .3s ease}.logo:hover{transform:rotate(-3deg)scale(1.05)}.nav-links{display:flex;gap:2.5rem;list-style:none}.nav-links a{font-family:caveat,cursive;font-size:1.4rem;color:var(--color-dark);text-decoration:none;position:relative;transition:color .3s ease}.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:3px;background:var(--color-orange);border-radius:2px;transition:width .3s ease}.nav-links a:hover::after{width:100%}.nav-links a:hover{color:var(--color-orange)}.nav-toggle{display:none;flex-direction:column;gap:5px;background:0 0;border:none;cursor:pointer;padding:5px}.nav-toggle span{width:25px;height:2px;background:var(--color-dark);transition:all .3s ease}.nav-right{display:flex;align-items:center;gap:2rem}.lang-switcher{display:flex;gap:.5rem}.lang-link{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;text-decoration:none;transition:all .3s ease;opacity:.6}.lang-link:hover{transform:scale(1.15);opacity:1}.lang-link.active{opacity:1;transform:scale(1.1)}.lang-icon{width:28px;height:28px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.hero{min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:6rem 3rem;position:relative}.hero-content{text-align:center;max-width:100%;padding:0 2rem}.hero h1{font-family:caveat,cursive;font-size:clamp(2.5rem,7vw,6rem);font-weight:700;line-height:1.2;margin-bottom:1rem;padding:0 1rem;background:linear-gradient(135deg,var(--color-orange),var(--color-red),var(--color-purple),var(--color-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 8s ease infinite;background-size:300% 300%}@keyframes gradient-shift{0%,100%{background-position:0}50%{background-position:100%}}.hero-subtitle{font-family:dm serif display,serif;font-size:1.5rem;color:var(--color-dark);opacity:.8;margin-bottom:3rem}.hero-cta{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:linear-gradient(135deg,var(--color-orange),var(--color-red),var(--color-purple),var(--color-blue));background-size:200% 200%;color:#fff;font-family:caveat,cursive;font-size:1.4rem;border:none;border-radius:50px;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease,background-position .5s ease;text-decoration:none;-webkit-transform:translateZ(0);transform:translateZ(0)}.hero-cta:hover{transform:translateY(-3px)rotate(2deg);box-shadow:0 10px 30px rgba(232,115,74,.4);background-position:100% 100%}.hero-cta svg{width:20px;height:20px}.scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;animation:bounce 2s ease infinite}.scroll-indicator span{font-family:caveat,cursive;font-size:1rem;color:var(--color-dark);opacity:.8;padding:0 .25rem}.scroll-indicator svg{width:24px;height:24px;stroke:var(--color-dark);opacity:.8}@keyframes bounce{0%,100%{transform:translateX(-50%)translateY(0)}50%{transform:translateX(-50%)translateY(10px)}}.section-title{font-family:caveat,cursive;font-size:3.5rem;text-align:center;margin:0 auto 4rem;position:relative;display:block;width:fit-content}.section-title::before{content:'';position:absolute;bottom:-10px;left:0;width:100%;height:8px;background:linear-gradient(135deg,var(--color-orange),var(--color-red),var(--color-purple),var(--color-blue));border-radius:4px;transform:rotate(-2deg)}.categories{padding:6rem 3rem;position:relative;text-align:center}.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:2rem;max-width:1400px;margin:0 auto;text-align:left}.category-card{position:relative;aspect-ratio:4/5;border-radius:20px;overflow:hidden;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);text-decoration:none}.category-card:nth-child(even){transform:rotate(2deg)}.category-card:nth-child(odd){transform:rotate(-2deg)}.category-card:hover{transform:rotate(0)scale(1.05);z-index:10}.category-card picture{display:block;width:100%;height:100%}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.category-card:hover img{transform:scale(1.1)}.category-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 60%);display:flex;align-items:flex-end;padding:2rem}.category-card-title{font-family:caveat,cursive;font-size:2.5rem;color:#fff;transform:translateY(10px);transition:transform .3s ease}.category-card:hover .category-card-title{transform:translateY(0)}.accent-dot{position:absolute;width:20px;height:20px;border-radius:50%;z-index:20;top:20px;right:20px}.accent-dot.orange{background:var(--color-orange)}.accent-dot.turquoise{background:var(--color-turquoise)}.accent-dot.yellow{background:var(--color-yellow)}.accent-dot.purple{background:var(--color-purple)}.about{padding:8rem 3rem;position:relative}.about-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:center}.about-image-wrapper{position:relative}.about-image-wrapper picture{display:block;width:100%}.about-image{width:100%;border-radius:30% 70% 70% 30%/30% 30% 70% 70%;box-shadow:0 20px 60px rgba(0,0,0,.1);transition:border-radius .6s ease}.about-image-wrapper:hover .about-image{border-radius:70% 30% 30% 70%/70% 70% 30% 30%}.about-decoration{position:absolute;width:150px;height:150px;border:4px solid var(--color-orange);border-radius:50%;top:-30px;right:-30px;z-index:-1}.about-title-mobile{display:none}.about-content h2{font-family:caveat,cursive;font-size:4rem;margin-bottom:1.5rem;color:var(--color-dark)}.about-content p{font-size:1.1rem;line-height:1.8;color:var(--color-dark);opacity:.8;margin-bottom:1.5rem}.about-content ul{list-style:none;padding-left:0;margin:0}.about-content li{padding-left:1.6em;text-indent:-1.6em;font-size:1.1rem;line-height:1.8;color:var(--color-dark);opacity:.8;margin-bottom:.4em}.about-highlight,.about-content strong{display:inline;background:linear-gradient(to top,var(--color-yellow) 40%,transparent 40%);padding:0 4px;font-weight:600}.contact{padding:8rem 3rem;position:relative}.contact-container{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:start}.contact-info{position:relative}.contact-info h2{font-family:caveat,cursive;font-size:4rem;margin-bottom:1rem;color:var(--color-dark)}.contact-info p{font-size:1.1rem;line-height:1.7;opacity:.8}.contact-decoration{position:absolute;width:150px;height:150px;bottom:-50px;left:-30px;z-index:-1;opacity:.6;animation:float 15s ease-in-out infinite}.contact-decoration svg{width:100%;height:100%}.contact-form{background:#fff;padding:2.5rem;border-radius:30px;box-shadow:0 20px 60px rgba(0,0,0,8%);position:relative;overflow:hidden}.contact-form::before{content:'';position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,var(--color-orange),var(--color-yellow),var(--color-turquoise),var(--color-purple))}.form-group{position:relative;margin-bottom:1.5rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:1rem 1.2rem;font-family:inter,sans-serif;font-size:1rem;border:2px solid #eee;border-radius:15px;background:#fafafa;transition:all .3s ease;outline:none}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-orange);background:#fff;box-shadow:0 0 0 4px rgba(232,115,74,.1)}.form-group label{position:absolute;left:1.2rem;top:1rem;font-family:inter,sans-serif;font-size:1rem;color:#666;pointer-events:none;transition:all .3s ease}.form-group input:focus+label,.form-group input:not(:placeholder-shown)+label,.form-group textarea:focus+label,.form-group textarea:not(:placeholder-shown)+label{top:-.6rem;left:.8rem;font-size:.8rem;color:var(--color-orange);background:#fff;padding:0 .4rem}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.2rem}.form-group textarea{resize:vertical;min-height:120px}.form-highlight{display:none}.form-submit{display:inline-flex;align-items:center;gap:.8rem;padding:1rem 2rem;font-family:caveat,cursive;font-size:1.5rem;color:#fff;background:linear-gradient(135deg,var(--color-orange),var(--color-red));border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;margin-top:.5rem}.form-submit:hover{transform:translateY(-3px)rotate(2deg);box-shadow:0 10px 30px rgba(232,115,74,.4)}.form-submit svg{width:20px;height:20px;transition:transform .3s ease}.form-submit:hover svg{transform:translate(3px,-3px)}.form-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.form-message{display:none;justify-content:center;align-items:center;min-height:300px;animation:fadeIn .5s ease}.form-message-content{text-align:center;padding:2rem}.form-message-icon{width:80px;height:80px;margin:0 auto 1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.form-message-icon svg{width:40px;height:40px}.form-message.success .form-message-icon{background:linear-gradient(135deg,#a8e6cf,#88d8b0)}.form-message.success .form-message-icon svg{stroke:#fff}.form-message.error .form-message-icon{background:linear-gradient(135deg,var(--color-orange),var(--color-red))}.form-message.error .form-message-icon svg{stroke:#fff}.form-message-title{font-family:caveat,cursive;font-size:2.5rem;margin-bottom:.5rem}.form-message.success .form-message-title{color:#2d6a4f}.form-message.error .form-message-title{color:var(--color-red)}.form-message-text{font-size:1.1rem;color:var(--color-text);opacity:.8}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}footer{padding:3rem;text-align:center;border-top:1px solid rgba(0,0,0,.1)}footer p{font-family:caveat,cursive;font-size:1.2rem;opacity:.8}.page-header{padding:10rem 3rem 4rem;text-align:center}.page-header h1{font-family:caveat,cursive;font-size:5rem;margin-bottom:1rem;background:linear-gradient(135deg,var(--color-orange),var(--color-red),var(--color-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-header p{font-family:dm serif display,serif;font-size:1.3rem;opacity:.7}.gallery{padding:2rem 3rem 6rem;max-width:1400px;margin:0 auto}.gallery-grid{columns:3;column-gap:1.5rem}.gallery-item{break-inside:avoid;margin-bottom:1.5rem;border-radius:15px;overflow:hidden;cursor:pointer;transition:transform .3s ease}.gallery-item:hover{transform:scale(1.02)}.gallery-item picture{display:block;width:100%}.gallery-item img{width:100%;height:auto;display:block}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s ease}.lightbox.active{opacity:1;visibility:visible}.lightbox img{max-width:90%;max-height:90vh;border-radius:10px}.lightbox-close{position:absolute;top:2rem;right:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.3);border:none;border-radius:50%;cursor:pointer;transition:all .3s ease}.lightbox-close:hover{background:rgba(0,0,0,.6);transform:scale(1.1)}.lightbox-close svg{width:24px;height:24px}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);width:60px;height:60px;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.3);border:none;border-radius:50%;cursor:pointer;transition:all .3s ease;z-index:10}.lightbox-prev{left:2rem}.lightbox-next{right:2rem}.lightbox-prev:hover,.lightbox-next:hover{background:rgba(0,0,0,.6);transform:translateY(-50%)scale(1.1)}.lightbox-prev svg,.lightbox-next svg{width:30px;height:30px}@media(max-width:1024px) and (min-width:769px){nav{padding:1rem 2rem}.nav-links{gap:1.5rem}.nav-links a{font-size:.95rem}.hero h1{font-size:4rem}.hero-subtitle{font-size:1.1rem}.categories{padding:4rem 2rem}.section-title{margin-bottom:2.5rem}.category-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:900px}.category-card{aspect-ratio:4/5}.category-card:nth-child(even){transform:translateY(20px)}.category-card:nth-child(odd){transform:translateY(0)}.section-title{font-size:3rem}.gallery-grid{columns:2;gap:1rem}.about{padding:4rem 2rem}.about-container{grid-template-columns:1fr 1.2fr;gap:3rem}.about-title-mobile{display:block;grid-column:1/-1;text-align:center;font-family:caveat,cursive;font-size:3.5rem;color:var(--color-dark);margin-bottom:0}.about-content h2{display:none}.about-image-wrapper{max-width:350px}.contact{padding:4rem 2rem}.contact-container{grid-template-columns:1fr;gap:2rem;max-width:700px}.contact-info{text-align:center}.contact-info h2{font-size:3rem}.contact-decoration{display:none}.contact-form{padding:2rem}footer{padding:2rem}}@media(max-width:768px){nav{padding:1rem 1.5rem}.nav-links{position:fixed;top:0;right:-100%;width:70%;height:100vh;background:var(--color-cream);flex-direction:column;justify-content:center;align-items:center;gap:2rem;transition:right .3s ease;box-shadow:-10px 0 30px rgba(0,0,0,.1)}.nav-links.active{right:0}.nav-toggle{display:flex;z-index:101}.hero h1{font-size:3rem;white-space:normal}.hero-subtitle{font-size:1.1rem}.about-container{grid-template-columns:1fr;text-align:center;gap:.5rem}.about-title-mobile{display:block;font-family:caveat,cursive;font-size:3rem;color:var(--color-dark);margin-bottom:0}.about-content h2{display:none}.about-content ul{display:inline-block;text-align:left}.about-decoration{display:none}.categories{padding:6rem 1.5rem}.category-grid{grid-template-columns:1fr;gap:1.5rem}.category-card:nth-child(even),.category-card:nth-child(odd){transform:none}.section-title{font-size:2.5rem}.gallery-grid{columns:1}.page-header h1{font-size:3.5rem}.contact-container{grid-template-columns:1fr;gap:2rem}.contact-info{text-align:center}.contact-info h2{font-size:3rem}.contact-decoration{display:none}.contact-form{padding:2rem}}.cursor{position:fixed;width:20px;height:20px;border-radius:50%;background:var(--color-orange);pointer-events:none;z-index:9999;mix-blend-mode:difference;transition:transform .15s ease,width .2s ease,height .2s ease,opacity .3s ease;transform:translate(-50%,-50%);opacity:0}.cursor-follower{position:fixed;width:40px;height:40px;border-radius:50%;border:2px solid var(--color-orange);pointer-events:none;z-index:9998;transition:transform .3s ease,width .2s ease,height .2s ease,opacity .3s ease;transform:translate(-50%,-50%);opacity:0}.cursor.hover{transform:translate(-50%,-50%)scale(2);background:var(--color-turquoise)}.cursor-follower.hover{transform:translate(-50%,-50%)scale(1.5);border-color:var(--color-turquoise);opacity:.8}@media(max-width:768px){.cursor,.cursor-follower{display:none}}.loader{position:fixed;inset:0;background:var(--color-cream);z-index:10000;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity .5s ease,visibility .5s ease}.loader.hidden{opacity:0;visibility:hidden}.loader-blobs{position:relative;width:120px;height:120px}.loader-blob{position:absolute;width:60px;height:60px;border-radius:50%;animation:loader-bounce 1.5s ease-in-out infinite}.loader-blob:nth-child(1){background:var(--color-orange);top:0;left:30px;animation-delay:0s}.loader-blob:nth-child(2){background:var(--color-turquoise);bottom:0;left:0;animation-delay:.2s}.loader-blob:nth-child(3){background:var(--color-yellow);bottom:0;right:0;animation-delay:.4s}.loader-blob:nth-child(4){background:var(--color-purple);top:30px;left:30px;animation-delay:.6s}@keyframes loader-bounce{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.5);opacity:.5}}.loader-text{font-family:caveat,cursive;font-size:1.5rem;color:var(--color-dark);margin-top:2rem;opacity:.7}.error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;text-align:center}.error-content{max-width:600px}.error-canvas{margin:0 auto 2.5rem;perspective:600px}.error-canvas-frame{position:relative;width:280px;height:280px;margin:0 auto;background:#fff;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,8%),inset 0 0 0 6px var(--color-cream),inset 0 0 0 8px var(--color-dark);overflow:hidden;animation:error-tilt 6s ease-in-out infinite}@keyframes error-tilt{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}.error-paint{position:absolute;border-radius:60% 40% 50% 70%;animation:error-spread 5s ease-in-out infinite}.error-paint-1{width:180px;height:160px;background:var(--color-orange);opacity:.85;top:20px;left:50px}.error-paint-2{width:140px;height:130px;background:var(--color-turquoise);opacity:.7;top:80px;left:10px;border-radius:40% 60% 50% 45%;animation-delay:-1.5s}.error-paint-3{width:120px;height:110px;background:var(--color-yellow);opacity:.8;bottom:20px;right:20px;border-radius:50% 35% 60% 45%;animation-delay:-3s}@keyframes error-spread{0%,100%{transform:scale(1)rotate(0)}33%{transform:scale(1.05)rotate(3deg)}66%{transform:scale(.97)rotate(-2deg)}}.error-drip{position:absolute;bottom:-1px;width:12px;border-radius:0 0 50% 50%;animation:error-drip-down 3s ease-in infinite;transform-origin:top center}.error-drip-1{left:70px;height:0;background:var(--color-orange);animation-delay:.5s}.error-drip-2{left:140px;height:0;background:var(--color-turquoise);animation-delay:1.5s}.error-drip-3{right:60px;height:0;background:var(--color-yellow);animation-delay:2.5s}@keyframes error-drip-down{0%{height:0;opacity:.8}40%{height:35px;opacity:.8}80%{height:35px;opacity:0}100%{height:0;opacity:0}}.error-number{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:caveat,cursive;font-size:7rem;font-weight:700;color:#fff;text-shadow:2px 3px 0 rgba(0,0,0,.1);z-index:10;letter-spacing:.05em}.error-title{font-family:caveat,cursive;font-size:2.8rem;margin-bottom:1rem;color:var(--color-dark)}.error-message{font-size:1.1rem;opacity:.7;margin-bottom:2.5rem;line-height:1.7}.error-redirect{font-size:.95rem;opacity:.5;margin-bottom:1.5rem}.error-redirect #countdown{font-family:caveat,cursive;font-size:1.2rem;font-weight:700}.error-link{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:var(--color-dark);color:var(--color-cream);font-family:caveat,cursive;font-size:1.4rem;border-radius:50px;text-decoration:none;transition:all .3s ease}.error-link:hover{transform:translateY(-3px)rotate(2deg);box-shadow:0 10px 30px rgba(0,0,0,.2);background:var(--color-orange)}.error-link svg{width:20px;height:20px}.legal-page{padding:8rem 2rem 4rem;max-width:800px;margin:0 auto}.legal-header{text-align:center;margin-bottom:3rem}.legal-icon{width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,var(--color-orange),var(--color-red));border-radius:50%;display:flex;align-items:center;justify-content:center}.legal-icon svg{width:40px;height:40px;stroke:#fff}.legal-header h1{font-family:caveat,cursive;font-size:4rem;margin-bottom:.5rem;background:linear-gradient(135deg,var(--color-orange),var(--color-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.legal-subtitle{font-family:dm serif display,serif;font-size:1.1rem;opacity:.6}.legal-content{position:relative;background:#fff;padding:3rem;border-radius:30px;box-shadow:0 20px 60px rgba(0,0,0,8%)}.legal-content::before{content:'';position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,var(--color-orange),var(--color-yellow),var(--color-turquoise));border-radius:30px 30px 0 0}.legal-decoration{position:absolute;width:100px;height:100px;border-radius:50%;opacity:.1;z-index:-1}.legal-decoration.left{background:var(--color-orange);top:-30px;left:-30px}.legal-decoration.right{background:var(--color-turquoise);bottom:-30px;right:-30px}.legal-content h2{font-family:caveat,cursive;font-size:2rem;color:var(--color-orange);margin:2rem 0 1rem;padding-top:1rem;border-top:1px solid #eee}.legal-content h2:first-child{margin-top:0;padding-top:0;border-top:none}.legal-content h3{font-family:dm serif display,serif;font-size:1.2rem;margin:1.5rem 0 .5rem;color:var(--color-dark)}.legal-content p{font-size:1rem;line-height:1.8;color:var(--color-dark);opacity:.8;margin-bottom:1rem}.legal-content ul,.legal-content ol{margin:1rem 0;padding-left:1.5rem}.legal-content li{line-height:1.8;opacity:.8;margin-bottom:.5rem}.legal-content a{color:var(--color-orange);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s ease}.legal-content a:hover{border-bottom-color:var(--color-orange)}.legal-content hr{border:none;height:1px;background:#eee;margin:2rem 0}.legal-content em{opacity:.6;font-style:italic}.legal-content strong{color:var(--color-dark);opacity:1}.legal-back{text-align:center;margin-top:3rem}.back-link{display:inline-flex;align-items:center;gap:.5rem;font-family:caveat,cursive;font-size:1.3rem;color:var(--color-dark);text-decoration:none;opacity:.7;transition:all .3s ease}.back-link:hover{opacity:1;color:var(--color-orange)}.back-link svg{width:20px;height:20px;transition:transform .3s ease}.back-link:hover svg{transform:translateX(-5px)}footer{padding:2rem 3rem;text-align:center;border-top:1px solid rgba(0,0,0,.1)}.footer-content{display:flex;flex-direction:column;align-items:center;gap:.8rem}.footer-copy{font-family:caveat,cursive;font-size:1.2rem;opacity:.8;margin:0}.footer-links{display:flex;align-items:center;gap:.5rem}.footer-links a{font-size:.9rem;color:var(--color-dark);text-decoration:none;opacity:.7;transition:all .3s ease}.footer-links a:hover{opacity:1;color:var(--color-orange)}.footer-divider{opacity:.5}@media(max-width:768px){.legal-page{padding:6rem 1rem 3rem}.legal-header h1{font-size:3rem}.legal-content{padding:2rem 1.5rem}.error-canvas-frame{width:220px;height:220px}.error-number{font-size:5rem}.error-title{font-size:2rem}.error-paint-1{width:140px;height:130px}.error-paint-2{width:110px;height:100px}.error-paint-3{width:90px;height:85px}}.scroll-hidden{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.scroll-visible{opacity:1;transform:translateY(0)}.category-card.scroll-hidden{transform:translateY(60px)rotate(0)}.category-card:nth-child(odd).scroll-visible{transform:rotate(-2deg)}.category-card:nth-child(even).scroll-visible{transform:rotate(2deg)}.about-image-wrapper.scroll-hidden{transform:translateX(-60px);opacity:0}.about-image-wrapper.scroll-visible{transform:translateX(0);opacity:1}.about-content.scroll-hidden{transform:translateX(60px);opacity:0}.about-content.scroll-visible{transform:translateX(0);opacity:1}.contact-info.scroll-hidden{transform:translateX(-40px)rotate(-3deg)}.contact-info.scroll-visible{transform:translateX(0)rotate(0)}.contact-form.scroll-hidden{transform:translateY(40px)scale(.95)}.contact-form.scroll-visible{transform:translateY(0)scale(1)}.section-title.scroll-hidden{transform:translateY(30px)scale(.9)}.section-title.scroll-visible{transform:none}.nav-scrolled{background:rgba(253,248,243,.95);backdrop-filter:blur(10px);box-shadow:0 2px 20px rgba(0,0,0,5%)}.hero-content{will-change:transform,opacity}@media(max-width:768px){.scroll-hidden{transform:translateY(30px)}.about-image-wrapper.scroll-hidden,.about-content.scroll-hidden{transform:translateY(30px)}.category-card.scroll-hidden{transform:translateY(30px)}.category-card.scroll-visible{transform:none}}.back-to-top{position:fixed;bottom:2rem;right:2rem;width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--color-orange),var(--color-red));border:none;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(20px)rotate(-45deg);transition:all .4s cubic-bezier(.175,.885,.32,1.275);z-index:1000;box-shadow:0 4px 20px rgba(232,115,74,.4)}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)rotate(0)}.back-to-top:hover{transform:translateY(-5px)scale(1.1);box-shadow:0 8px 30px rgba(232,115,74,.5)}.back-to-top svg{width:24px;height:24px;color:#fff}.category-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at center,transparent 0%,transparent 100%);opacity:0;transition:opacity .4s ease;z-index:1;pointer-events:none;border-radius:20px}.category-card[data-color=orange]:hover::before{background:radial-gradient(circle at center,var(--color-orange) 0%,transparent 70%);opacity:.3}.category-card[data-color=turquoise]:hover::before{background:radial-gradient(circle at center,var(--color-turquoise) 0%,transparent 70%);opacity:.3}.category-card[data-color=yellow]:hover::before{background:radial-gradient(circle at center,var(--color-yellow) 0%,transparent 70%);opacity:.3}.category-card[data-color=purple]:hover::before{background:radial-gradient(circle at center,var(--color-purple) 0%,transparent 70%);opacity:.3}.category-card:hover .accent-dot{transform:scale(1.5);box-shadow:0 0 20px currentColor}.accent-dot{transition:transform .3s ease,box-shadow .3s ease}.accent-dot.orange{color:var(--color-orange)}.accent-dot.turquoise{color:var(--color-turquoise)}.accent-dot.yellow{color:var(--color-yellow)}.accent-dot.purple{color:var(--color-purple)}.typewriter{white-space:nowrap;overflow:hidden}.lightbox img{transition:transform .3s ease,opacity .2s ease;cursor:zoom-in}.lightbox.zoomed img{transform:scale(2);cursor:zoom-out}.lightbox::before,.lightbox::after{content:none}@media print{.blob,.cursor,.cursor-follower,.loader,.back-to-top,nav,.hero-cta,.scroll-indicator,.lightbox,.contact-form,.contact-decoration{display:none!important}body{background:#fff!important;color:#000!important;font-size:12pt}*{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}.hero{min-height:auto;padding:2rem 0}.hero h1{font-size:24pt;color:#000!important;-webkit-text-fill-color:black!important;background:0 0!important}section{padding:1rem 0;page-break-inside:avoid}.section-title{font-size:18pt;color:#000!important}img{max-width:100%;page-break-inside:avoid}.category-card,.gallery-item{break-inside:avoid}.contact-info{padding:1rem;border:1px solid #ccc}.contact-info h2{font-size:16pt}footer{margin-top:2rem;padding-top:1rem;border-top:1px solid #ccc}a[href]::after{content:" (" attr(href)")";font-size:10pt;color:#666}a[href^="#"]::after,a[href^=javascript]::after{content:""}}@media(max-width:480px){.hero h1{font-size:2.2rem}.hero-subtitle{font-size:1rem}.section-title{font-size:2rem}.category-grid{grid-template-columns:1fr;gap:1.5rem;padding:0 1rem}.category-card{aspect-ratio:3/4}.about-content h2{font-size:2.5rem}.contact-info h2{font-size:2.5rem}.contact-form{padding:1.5rem}.form-submit{width:100%;justify-content:center}}@media(hover:none) and (pointer:coarse){.nav-links a{padding:1rem 1.5rem;min-height:48px;display:flex;align-items:center}.hero-cta{padding:1.2rem 2.5rem;min-height:56px}.form-submit{padding:1.2rem 2.5rem;min-height:56px}.form-group input,.form-group textarea,.form-group select{font-size:16px;padding:1.2rem 1rem;min-height:56px}.form-group textarea{min-height:150px}.category-card:hover{transform:none}.category-card:active{transform:scale(.98)}.lightbox img{cursor:default}.lightbox.zoomed img{transform:none}.back-to-top{width:56px;height:56px;bottom:1.5rem;right:1.5rem}.footer-links a{padding:.5rem;min-height:44px;display:inline-flex;align-items:center}}@media(max-width:768px){.nav-links::before{content:'';position:fixed;inset:0;background:rgba(0,0,0,.3);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;z-index:-1}.nav-links.active::before{opacity:1;visibility:visible}.nav-links a{font-size:1.5rem;padding:1rem 2rem}.nav-toggle.active span:nth-child(1){transform:rotate(45deg)translate(5px,5px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.hero{padding:0 1.5rem}.hero-content{padding-top:5rem}.scroll-indicator{bottom:2rem}.about{padding:4rem 1.5rem}.about-image-wrapper{max-width:280px;margin:0 auto 1.5rem}.contact{padding:4rem 1.5rem}footer{padding:2rem 1rem}.footer-content{flex-direction:column;gap:1rem;text-align:center}}@supports(padding:env(safe-area-inset-bottom)){.back-to-top{bottom:calc(1.5rem + env(safe-area-inset-bottom))}footer{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom))}.nav-links{padding-bottom:env(safe-area-inset-bottom)}}@media(max-height:500px) and (orientation:landscape){.hero{min-height:auto;padding:4rem 2rem}.hero h1{font-size:2.5rem}.scroll-indicator{display:none}.loader{padding:1rem}.loader-blobs{width:80px;height:80px}}.skip-link{position:fixed;top:0;left:50%;transform:translate(-50%,-100%);background:var(--color-orange);color:#000;padding:1rem 2rem;border-radius:0 0 12px 12px;text-decoration:none;font-weight:600;z-index:10001;transition:transform .3s ease}.skip-link:focus{transform:translate(-50%,0);outline:none}*:focus{outline:none}*:focus-visible{outline:3px solid var(--color-orange)!important;outline-offset:3px}a:focus-visible{outline-color:var(--color-orange)!important;border-radius:4px}button:focus-visible{outline-color:var(--color-orange)!important}.nav-links a:focus-visible{outline-offset:6px}.category-card:focus-visible,.gallery-item:focus-visible{outline-offset:6px;border-radius:20px}.hero-cta:focus-visible{outline-offset:4px;outline-color:#fff!important}.form-submit:focus-visible{outline-offset:4px}.back-to-top:focus-visible{outline-color:#fff!important}.lang-link:focus-visible{outline-offset:4px;border-radius:50%}.lightbox-close:focus-visible,.lightbox-prev:focus-visible,.lightbox-next:focus-visible{outline-color:#fff!important;outline-offset:4px}@view-transition{navigation: auto;
}::view-transition-old(root){animation:fade-out .2s ease-out}::view-transition-new(root){animation:fade-in .3s ease-in}@keyframes fade-out{from{opacity:1}to{opacity:0}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none!important}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.loader{display:none!important}.blob{transform:none!important}.cursor,.cursor-follower{display:none!important}.scroll-hidden{opacity:1!important;transform:none!important}.hero-content{opacity:1!important;transform:none!important;will-change:auto}.typewriter::after{display:none}.category-card:hover,.gallery-item:hover{transform:none!important}.lightbox{transition:none!important}.lightbox img{transition:none!important}}