.page-transition{height:100%;min-height:100vh;position:relative;transition:opacity 1.2s ease;width:100%}.page-transition.fadeIn,.page-transition.fadeOut{opacity:1}.page-loader{background-color:#fffffff2;height:100%;left:0;position:fixed;top:0;width:100%;z-index:9999}.loader-container,.page-loader{align-items:center;display:flex;justify-content:center}.loader-container{flex-direction:column}.loader-logo{height:auto;margin-bottom:20px;width:400px}.loader-logo,.loader-text{animation:pulse 1.2s ease-in-out 1}.loader-text{color:#e67e22;font-family:Bebas Neue,cursive;font-size:2.5rem;font-weight:700;letter-spacing:2px;margin-top:20px;text-shadow:0 0 10px #e67e2280}@media (max-width:768px){.loader-logo{width:300px}.loader-text{font-size:1.8rem}}.landing-page{align-items:center;background-color:initial;display:flex;flex-direction:column;height:100vh;justify-content:center;margin:0;overflow:hidden;padding:0;position:relative}.logo.animated{animation:pulse var(--transition-slower) ease-in-out}@keyframes pulse{0%{filter:drop-shadow(0 0 10px rgba(230,126,34,.5));transform:scale(1)}to{filter:drop-shadow(0 0 20px rgba(230,126,34,.8));transform:scale(1.05)}}.logo-link{display:block;text-align:center;transition:transform var(--transition-base);width:100%}.logo-link:hover{transform:scale(1.02)}.logo-caption{animation:pulse-text 1s infinite alternate;color:var(--color-accent);font-family:var(--font-accent);font-size:var(--text-2xl);letter-spacing:var(--tracking-wide);margin-top:var(--space-md);text-shadow:0 1px 2px #0000001a}@keyframes pulse-text{0%{opacity:.7}to{opacity:1}}.logo-hint{color:var(--color-accent);font-family:var(--font-accent);font-size:var(--text-base);letter-spacing:var(--tracking-wide);margin-top:var(--space-sm);opacity:.8;text-shadow:0 1px 2px #0000001a}@media (max-width:768px){.logo-link:hover{transform:scale(1.01)}.logo-caption{font-size:var(--text-xl);margin-top:var(--space-md)}.logo-hint{font-size:var(--text-sm);margin-top:var(--space-xs)}}@media (max-width:480px){.logo-link:hover{transform:none}.logo-caption{font-size:var(--text-lg);margin-top:var(--space-md)}.logo-hint{font-size:var(--text-xs);margin-top:var(--space-xs)}.mobile-tagline{animation:pulse-text 1.5s infinite alternate;color:var(--color-primary);font-family:var(--font-accent);font-size:var(--text-xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-wide);margin-top:var(--space-md);text-shadow:0 1px 2px #0003}}.home-page h1,.home-page h2,.home-page h3{font-family:var(--font-heading);letter-spacing:var(--tracking-wider)}.hero{background-color:var(--bg-overlay-light);border-bottom:3px solid var(--color-primary);padding:clamp(var(--space-xl),5vw,var(--space-3xl)) 0;text-align:center}.hero-content{margin:0 auto;max-width:800px}.hero-title{color:var(--color-secondary-dark);display:inline-block;font-family:var(--font-heading);font-size:4rem;font-weight:var(--font-bold);letter-spacing:var(--tracking-widest);margin-bottom:var(--space-md);position:relative}.hero-title:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.hero-description{color:var(--color-text);font-family:var(--font-body);line-height:var(--leading-relaxed);margin-bottom:var(--space-xl);padding:0 var(--space-md)}.cta-container{display:flex;gap:var(--space-md);justify-content:center;margin-top:var(--space-xl)}.features{background-color:var(--bg-overlay-light);padding:clamp(var(--space-xl),5vw,var(--space-3xl)) 0}.section-title{color:var(--color-secondary-dark);font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--font-medium);letter-spacing:var(--tracking-wider);margin-bottom:clamp(var(--space-lg),5vw,var(--space-2xl));margin-top:var(--space-xl);padding-top:var(--space-lg);position:relative;text-align:center}.section-title:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.features-grid{grid-gap:var(--space-xl);display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.feature-card{background-color:var(--bg-card);border:var(--card-border);border-radius:var(--card-border-radius);box-shadow:var(--card-shadow);padding:var(--space-xl);text-align:center;transition:transform var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base)}.feature-card:hover{background-color:var(--bg-card-hover);border-color:var(--color-primary);box-shadow:var(--card-shadow-hover);transform:translateY(-5px)}.feature-image{height:auto;margin-bottom:var(--space-lg);max-width:150px}.feature-card h3{color:var(--color-secondary-dark);font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);margin-bottom:var(--space-md)}.feature-card p{color:var(--color-text);font-family:var(--font-body);line-height:var(--leading-relaxed)}.cta-section{background-color:#e67e22e6;color:var(--color-text-inverse);padding:clamp(var(--space-xl),5vw,var(--space-3xl)) 0;text-align:center}.cta-section h2{font-family:var(--font-heading);font-size:var(--text-4xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);margin-bottom:var(--space-md)}.cta-section p{font-family:var(--font-body);line-height:var(--leading-relaxed);margin-bottom:var(--space-xl);margin-left:auto;margin-right:auto;max-width:600px;padding:0 var(--space-md)}.cta-buttons{display:flex;gap:var(--space-lg);justify-content:center}@media (max-width:768px){.hero{margin-bottom:var(--space-2xl);margin-top:var(--space-lg);padding:var(--space-xl) 0;padding-top:var(--space-md)}.hero-title{font-size:var(--text-3xl)}.cta-buttons{flex-direction:column;gap:var(--space-md);padding:0 var(--space-md)}.features-grid{gap:var(--space-lg);grid-template-columns:1fr}.feature-card{padding:var(--space-lg)}.feature-image{max-width:120px}}@media (max-width:480px){.hero{margin-bottom:var(--space-xl);margin-top:var(--space-md);padding:var(--space-lg) 0;padding-top:var(--space-md)}.hero-title{font-size:var(--text-2xl)}.hero-description{margin-bottom:var(--space-lg)}.cta-container{align-items:center;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}.features{padding:var(--space-lg) 0}.feature-card{padding:var(--space-lg)}.feature-image{margin-bottom:var(--space-md);max-width:100px}.cta-section{padding:var(--space-lg) 0}}.gallery-page{padding:clamp(var(--space-lg),4vw,var(--space-xl)) 0 clamp(var(--space-xl),5vw,var(--space-3xl))}.gallery-page h1,.gallery-page h2,.gallery-page h3{font-family:var(--font-heading);letter-spacing:var(--tracking-wider)}.gallery-header{margin-bottom:var(--space-3xl);margin-top:var(--space-xl);padding-top:var(--space-lg);position:relative;text-align:center;z-index:var(--z-base)}.gallery-header h1{color:var(--color-secondary-dark);font-size:var(--text-5xl);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wider);margin-bottom:var(--space-lg);position:relative}.gallery-header h1:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.gallery-header p{color:var(--color-text);font-family:var(--font-body);line-height:var(--leading-relaxed);margin:var(--space-xl) auto var(--space-md);max-width:600px;padding:0 var(--space-md)}.photo-grid{padding:var(--space-xl) 0}.photo-item{aspect-ratio:4/3;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);cursor:pointer;overflow:hidden;position:relative;transition:transform var(--transition-base),box-shadow var(--transition-base)}.photo-item:hover{box-shadow:var(--shadow-xl);transform:translateY(-5px)}.photo-item img{height:100%;object-fit:cover;transition:transform var(--transition-base);width:100%}.photo-item:hover img{transform:scale(1.05)}.photo-overlay{background:linear-gradient(#0000,#000000b3);bottom:0;color:var(--color-text-inverse);left:0;padding:var(--space-md);position:absolute;right:0;transform:translateY(100%);transition:transform var(--transition-base)}.photo-item:hover .photo-overlay{transform:translateY(0)}.photo-name{font-size:var(--text-sm);font-weight:var(--font-medium)}.photo-count{color:var(--color-primary);font-style:italic;margin-top:var(--space-sm)}.loading-container{padding:var(--space-3xl) var(--space-xl);text-align:center}.loading-spinner{animation:spin 1s linear infinite;border-top:4px solid var(--border-color);border:4px solid var(--border-color);border-radius:var(--radius-full);border-top-color:var(--color-primary);height:50px;margin:0 auto var(--space-xl);width:50px}.no-images-container{color:var(--color-text);padding:var(--space-3xl) var(--space-xl);text-align:center}.lightbox{animation:fadeIn var(--transition-base);background:var(--bg-overlay);height:100%;left:0;position:fixed;top:0;touch-action:none;width:100%;z-index:var(--z-modal)}.lightbox,.lightbox-content{align-items:center;display:flex;justify-content:center}.lightbox-content{max-height:90%;max-width:90%;position:relative;transition:transform var(--transition-fast);-webkit-user-select:none;user-select:none}.lightbox-content img{border-radius:var(--radius-md);max-height:100%;max-width:100%;object-fit:contain}.lightbox-close{align-items:center;background:#fff3;border:none;border-radius:var(--radius-full);color:var(--color-text-inverse);cursor:pointer;display:flex;font-size:var(--text-3xl);height:40px;justify-content:center;position:absolute;right:-10px;top:-50px;transition:background-color var(--transition-base);width:40px}.lightbox-close:hover{background:#ffffff4d}.lightbox-nav{align-items:center;background:#fff3;border:none;border-radius:var(--radius-full);color:var(--color-text-inverse);cursor:pointer;display:flex;font-size:var(--text-3xl);height:50px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:background-color var(--transition-base);width:50px}.lightbox-nav:hover{background:#ffffff4d}.lightbox-prev{left:-70px}.lightbox-next{right:-70px}.swipe-hint{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:var(--radius-2xl);bottom:-60px;left:50%;opacity:0;padding:var(--space-sm) var(--space-md);pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity var(--transition-base)}.swipe-hint span{color:var(--color-text-inverse);font-size:var(--text-sm);font-weight:var(--font-medium)}.lightbox-content:hover .swipe-hint{opacity:1}.gallery-grid{grid-gap:var(--space-xl);display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.gallery-item{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--card-shadow);overflow:hidden;padding:0;transition:transform var(--transition-base),box-shadow var(--transition-base)}.gallery-item:hover{border-color:var(--color-primary);box-shadow:var(--card-shadow-hover);transform:translateY(-5px)}.gallery-image-container{background-color:var(--bg-overlay-light);border-bottom:2px solid var(--border-color);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);height:220px;overflow:hidden}.gallery-item:hover .gallery-image-container{border-bottom-color:var(--color-primary)}.gallery-image{height:100%;object-fit:cover;transition:transform var(--transition-slower);width:100%}.gallery-item:hover .gallery-image{transform:scale(1.05)}.gallery-item-content{padding:var(--space-lg)}.gallery-item-content h3{color:var(--color-secondary-dark);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-medium);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-sm)}.gallery-item-content p{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal)}.coming-soon-container{align-items:center;display:flex;justify-content:center;padding:var(--space-xl) 0}.coming-soon-card{background-color:var(--bg-card);border:1px solid var(--border-color-dark);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);margin:0 auto;max-width:800px;overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base);width:100%}.coming-soon-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-2xl);transform:translateY(-5px)}.coming-soon-content{padding:var(--space-2xl) var(--space-xl);text-align:center}.coming-soon-logo{margin-bottom:var(--space-xl);max-width:200px}.coming-soon-content h2{color:var(--color-primary);font-family:var(--font-display);font-size:var(--text-4xl);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wider);margin-bottom:var(--space-lg)}.coming-soon-content p{font-family:var(--font-body);font-size:var(--text-lg);line-height:var(--leading-relaxed);margin-bottom:var(--space-lg);margin-left:auto;margin-right:auto;max-width:600px}.coming-soon-date{border-top:2px dashed var(--border-color);display:inline-block;margin-top:var(--space-2xl);padding-top:var(--space-lg)}.coming-soon-date h3{color:var(--color-secondary-dark);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-medium);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-sm)}.coming-soon-date p{color:var(--color-primary);font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:0}@media (max-width:768px){.gallery-page{padding:var(--space-lg) 0 var(--space-2xl)}.gallery-header{margin-bottom:var(--space-2xl);margin-top:var(--space-lg);padding-top:var(--space-md)}.gallery-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));padding:0 var(--space-sm)}.gallery-item-content{padding:var(--space-lg)}.gallery-image-container{height:200px}.coming-soon-content{padding:var(--space-xl) var(--space-lg)}.coming-soon-logo{margin-bottom:var(--space-lg);max-width:150px}.coming-soon-content h2{font-size:var(--text-3xl);margin-bottom:var(--space-md)}.coming-soon-content p{font-size:var(--text-base)}.coming-soon-date{margin-top:var(--space-xl);padding-top:var(--space-md)}.lightbox-nav{font-size:var(--text-2xl);height:40px;opacity:.3;width:40px}.lightbox-prev{left:-50px}.lightbox-next{right:-50px}.lightbox-close{font-size:var(--text-2xl);height:35px;right:-5px;top:-40px;width:35px}.swipe-hint{animation:pulseHint 2s infinite;opacity:1}}@media (max-width:480px){.gallery-page{padding:var(--space-md) 0 var(--space-xl)}.gallery-header{margin-bottom:var(--space-xl);margin-top:var(--space-md);padding-top:var(--space-md)}.gallery-grid{gap:var(--space-lg);grid-template-columns:1fr}.gallery-item-content{padding:var(--space-md)}.gallery-image-container{height:180px}.gallery-header p{margin-top:var(--space-md)}.coming-soon-content{padding:var(--space-lg) var(--space-md)}.coming-soon-logo{margin-bottom:var(--space-md);max-width:120px}.coming-soon-content h2{font-size:var(--text-2xl);margin-bottom:var(--space-md)}.coming-soon-content p{font-size:var(--text-sm);margin-bottom:var(--space-md)}.coming-soon-date{margin-top:var(--space-lg);padding-top:var(--space-md)}.coming-soon-date h3{font-size:var(--text-xl)}.coming-soon-date p{font-size:var(--text-lg)}.lightbox-content{max-height:85%;max-width:95%}.lightbox-nav{display:none}.swipe-hint{bottom:-45px;font-size:var(--text-xs)}}@keyframes pulseHint{0%,to{opacity:.7}50%{opacity:1}}.lightbox-content.swiping{transform:scale(.95)}.lightbox-content img{transition:opacity var(--transition-base),transform var(--transition-base)}.lightbox-content.changing img{opacity:0;transform:scale(.95)}.contact-page{padding:clamp(var(--space-lg),4vw,var(--space-xl)) 0 clamp(var(--space-xl),5vw,var(--space-3xl))}.contact-page h1,.contact-page h2,.contact-page h3{font-family:var(--font-heading);letter-spacing:var(--tracking-wider)}.contact-header{margin-bottom:var(--space-3xl);margin-top:var(--space-xl);padding-top:var(--space-lg);position:relative;text-align:center;z-index:var(--z-base)}.contact-header h1{color:var(--color-secondary-dark);font-size:var(--text-5xl);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wider);margin-bottom:var(--space-lg);position:relative}.contact-header h1:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.contact-header p{color:var(--color-text);font-family:var(--font-body);line-height:var(--leading-relaxed);margin:var(--space-xl) auto var(--space-md);max-width:700px;padding:0 var(--space-md)}.contact-content{grid-gap:var(--space-2xl);display:grid;gap:var(--space-2xl);grid-template-columns:3fr 2fr}.contact-form-container{background-color:var(--bg-card);border:var(--card-border);border-radius:var(--card-border-radius);box-shadow:var(--card-shadow);padding:var(--space-xl)}.form-success{padding:var(--space-2xl) var(--space-md)}.form-success h3{color:var(--color-success);margin-bottom:var(--space-md)}.form-error{padding:var(--space-md)}.contact-form{display:flex;flex-direction:column;gap:var(--space-lg)}.form-group input,.form-group select,.form-group textarea{background-color:var(--bg-overlay-light);border:var(--input-border);border-radius:var(--input-border-radius);font-family:var(--font-body);font-size:var(--text-base);padding:var(--input-padding);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background-color:var(--bg-card-hover);border-color:var(--color-primary);box-shadow:var(--input-focus-ring);outline:none}.qr-code-container{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.qr-code-container h2{color:var(--color-secondary-dark);font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-medium);margin-bottom:var(--space-md)}.qr-code-container p{font-family:var(--font-body);margin-bottom:var(--space-lg);max-width:500px}.qr-code-link{color:inherit;display:block;margin-bottom:var(--space-lg);text-decoration:none;transition:transform var(--transition-base)}.qr-code-link:hover{transform:scale(1.05)}.whatsapp-qr-code{border:2px solid var(--color-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);height:auto;max-width:250px}.qr-code-caption{color:var(--color-primary);font-family:var(--font-accent);font-size:var(--text-xl);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);margin-top:var(--space-md)}.qr-instructions{background-color:var(--bg-overlay-light);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);margin:0 auto;max-width:500px;padding:var(--space-lg);text-align:left}.qr-instructions h3{color:var(--color-secondary-dark);font-size:var(--text-xl);margin-bottom:var(--space-md)}.qr-instructions ol{padding-left:var(--space-lg)}.qr-instructions li{margin-bottom:var(--space-sm)}.contact-info{display:flex;flex-direction:column;gap:var(--space-lg)}.info-card{background-color:var(--bg-card);border:var(--card-border);border-radius:var(--card-border-radius);box-shadow:var(--card-shadow);padding:var(--space-lg)}.info-card h3{border-bottom:2px solid var(--border-color);color:var(--color-secondary-dark);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-medium);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-md);padding-bottom:var(--space-sm)}.info-card p{color:var(--color-text);font-family:var(--font-body);margin-bottom:var(--space-sm)}.social-links{display:flex;flex-wrap:wrap;gap:var(--space-md)}.social-link{background-color:var(--bg-overlay-light);border-radius:var(--radius-sm);color:var(--color-text);display:inline-block;font-family:var(--font-accent);font-size:var(--text-lg);letter-spacing:var(--tracking-wide);padding:var(--space-sm) var(--space-md);transition:background-color var(--transition-base),color var(--transition-base)}.social-link:hover{background-color:var(--color-primary);color:var(--color-text-inverse)}@media (max-width:992px){.contact-page{padding:var(--space-lg) 0 var(--space-2xl)}.contact-header{margin-bottom:var(--space-2xl);margin-top:var(--space-lg);padding-top:var(--space-md)}.contact-content{gap:var(--space-xl);grid-template-columns:1fr}.contact-info{flex-direction:row;flex-wrap:wrap;gap:var(--space-md)}.info-card{flex:1 1 300px}.submit-button{width:100%}}@media (max-width:768px){.contact-page{padding:var(--space-lg) 0 var(--space-2xl)}.contact-header{margin-bottom:var(--space-xl);margin-top:var(--space-md);padding-top:var(--space-md)}.contact-form-container,.info-card{padding:var(--space-lg)}.contact-info{flex-direction:column;gap:var(--space-md)}.form-group{gap:var(--space-xs)}.form-group input,.form-group select,.form-group textarea{padding:var(--space-md)}.social-links{gap:var(--space-sm)}.social-link{font-size:var(--text-sm);padding:var(--space-xs) var(--space-md)}.qr-code-container h2{font-size:var(--text-2xl)}.whatsapp-qr-code{max-width:200px}.qr-instructions{padding:var(--space-lg)}}@media (max-width:480px){.contact-page{padding:var(--space-md) 0 var(--space-xl)}.contact-header{margin-bottom:var(--space-lg);margin-top:var(--space-md);padding-top:var(--space-sm)}.contact-header p{margin:var(--space-lg) auto var(--space-md)}.contact-form-container,.info-card{border-radius:var(--radius-sm);padding:var(--space-md)}.contact-content{gap:var(--space-lg)}.info-card h3{margin-bottom:var(--space-md)}.info-card h3,.qr-code-container h2{font-size:var(--text-xl)}.qr-code-container p{font-size:var(--text-sm)}.whatsapp-qr-code{max-width:180px}.qr-code-caption{font-size:var(--text-base)}.qr-instructions{padding:var(--space-md)}.qr-instructions h3{font-size:var(--text-lg)}.qr-instructions li{font-size:var(--text-sm)}}.reviews-page{padding:clamp(var(--space-lg),4vw,var(--space-xl)) 0 clamp(var(--space-xl),5vw,var(--space-3xl))}.reviews-page h1,.reviews-page h2,.reviews-page h3{font-family:var(--font-heading);letter-spacing:var(--tracking-wider)}.reviews-header{margin-bottom:var(--space-3xl);margin-top:var(--space-xl);padding-top:var(--space-lg);position:relative;text-align:center;z-index:var(--z-base)}.reviews-header h1{color:var(--color-secondary-dark);font-size:var(--text-5xl);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wider);margin-bottom:var(--space-lg);position:relative}.reviews-header h1:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.reviews-header p{color:var(--color-text);font-family:var(--font-body);line-height:var(--leading-relaxed);margin:var(--space-xl) auto var(--space-md);max-width:700px;padding:0 var(--space-md)}.reviews-container{grid-gap:var(--space-xl);display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:var(--space-2xl)}.review-card{border:var(--card-border);border-radius:var(--card-border-radius);box-shadow:var(--card-shadow);transition:var(--btn-transition)}.review-card:hover{box-shadow:var(--card-shadow-hover)}.review-header{margin-bottom:var(--space-md)}.review-avatar{font-size:var(--text-xl)}.review-info h3{font-weight:var(--font-medium)}.review-date{color:var(--color-text-light)}.review-rating{font-size:var(--text-xl)}.review-content{font-family:var(--font-body)}.error-message,.loading-message,.no-reviews-message{border-radius:var(--card-border-radius);box-shadow:var(--shadow-sm);margin-bottom:var(--space-xl)}.review-form-container{background-color:var(--bg-card);border:var(--card-border);border-radius:var(--card-border-radius);box-shadow:var(--card-shadow);padding:var(--space-xl)}.review-form-container h2{color:var(--color-secondary-dark);font-size:var(--text-4xl);font-weight:var(--font-medium);letter-spacing:var(--tracking-wider);margin-bottom:var(--space-lg);position:relative;text-align:center}.review-form-container h2:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.form-success{background-color:var(--color-success-light);border-left:4px solid var(--color-success);border-radius:var(--radius-sm);margin-bottom:var(--space-lg);padding:var(--space-lg);text-align:center}.form-success h3{color:var(--color-success-dark);font-size:var(--text-2xl);margin-bottom:var(--space-sm)}.form-error{background-color:var(--color-error-light);border-left:4px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error-dark);margin-bottom:var(--space-lg);padding:var(--space-lg)}.form-error h3{font-size:var(--text-2xl);margin-bottom:var(--space-sm)}.form-note{background-color:var(--color-warning-light);border-left:4px solid var(--color-warning);border-radius:var(--radius-sm);color:var(--color-warning-dark);font-size:var(--text-sm);margin-bottom:var(--space-lg);padding:var(--space-md)}.review-form{gap:var(--space-lg)}.form-group,.review-form{display:flex;flex-direction:column}.form-group{gap:var(--space-sm)}.form-group label{color:var(--color-text);font-family:var(--font-body);font-weight:var(--font-medium)}.form-group input,.form-group textarea{background-color:var(--bg-overlay-light);border:var(--input-border);border-radius:var(--input-border-radius);font-family:var(--font-body);font-size:var(--text-base);padding:var(--input-padding);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.form-group input:focus,.form-group textarea:focus{background-color:var(--bg-card-hover);border-color:var(--color-primary);box-shadow:var(--input-focus-ring);outline:none}.rating-select{display:flex;font-size:var(--text-3xl);gap:var(--space-sm)}.rating-option{color:#ccc;cursor:pointer;transition:color var(--transition-base)}.rating-option.selected,.rating-option:hover{color:var(--color-warning)}.review-form .submit-button{align-self:flex-start;min-width:200px;width:auto}@media (max-width:992px){.reviews-container{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width:480px){.review-form .submit-button{width:100%}}@media (max-width:768px){.reviews-page{padding:var(--space-lg) 0 var(--space-2xl)}.reviews-header{margin-bottom:var(--space-2xl);margin-top:var(--space-lg);padding-top:var(--space-md)}.reviews-container{gap:var(--space-lg);grid-template-columns:1fr}.review-form-container{padding:var(--space-lg)}.rating-select{font-size:var(--text-2xl)}}@media (max-width:480px){.reviews-page{padding:var(--space-md) 0 var(--space-xl)}.reviews-header{margin-bottom:var(--space-xl);margin-top:var(--space-md);padding-top:var(--space-md)}.reviews-header h1{font-size:var(--text-4xl)}.review-form-container{padding:var(--space-lg)}.review-form-container h2{font-size:var(--text-3xl)}.form-group{gap:var(--space-xs)}.rating-select{font-size:var(--text-2xl)}}.card-spotlight{--mouse-x:50%;--mouse-y:50%;--spotlight-color:#e67e224d;background-color:#fffc;border:1px solid #2222224d;border-radius:1.5rem;overflow:hidden;padding:2rem;position:relative;transition:transform .3s ease,box-shadow .3s ease}.card-spotlight:before{background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),var(--spotlight-color),#0000 80%);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .5s ease}.card-spotlight:focus-within:before,.card-spotlight:hover:before{opacity:.8}.card-spotlight:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-5px)}.congratulatory-overlay{align-items:center;animation:fadeIn .5s ease-in-out;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.congratulatory-card{animation:scaleIn .5s ease-in-out;background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000004d;max-height:80vh;max-width:700px;overflow-y:auto;padding:2rem;text-align:center;width:90%}.congratulatory-content{align-items:center;display:flex;flex-direction:column}@media (min-width:992px){.congratulatory-content{flex-direction:row;flex-wrap:wrap;justify-content:center;text-align:center}.congratulatory-content h2{margin-bottom:.5rem;width:100%}.congratulatory-logo{margin:.5rem 1.5rem;width:120px}.congratulatory-text-container{flex:1 1;max-width:500px;min-width:300px;padding:0 1rem}.congratulatory-close-button{margin-top:1rem;width:100%}}.congratulatory-content h2{color:#e67e22;font-family:Bebas Neue,sans-serif;font-size:2rem;margin-bottom:1rem}.congratulatory-logo{margin:1rem 0;width:130px}.congratulatory-content p{color:#333;font-size:1.1rem;line-height:1.5;margin-bottom:1rem}.congratulatory-close-button{background-color:#e67e22;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1.5rem;padding:.75rem 2rem;transition:background-color .3s ease}.congratulatory-close-button:hover{background-color:#d35400}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.congratulatory-card{padding:1.5rem;width:85%}.congratulatory-content h2{font-size:1.75rem}.congratulatory-logo{width:120px}.congratulatory-content p{font-size:1rem}}@media (max-width:480px){.congratulatory-card{padding:1rem;width:90%}.congratulatory-content h2{font-size:1.5rem}.congratulatory-logo{width:100px}.congratulatory-content p{font-size:.9rem}.congratulatory-close-button{font-size:.9rem;padding:.6rem 1.5rem}}.admin-login-page{min-height:calc(100vh - 120px);padding:var(--space-xl) 0}.admin-login-page h1,.admin-login-page h2,.admin-login-page h3{font-family:var(--font-heading);letter-spacing:var(--tracking-wider)}.admin-login-page .admin-header{margin-bottom:var(--space-xl);text-align:center}.admin-login-page .admin-header h1{color:var(--color-primary);font-size:var(--text-5xl);margin-bottom:var(--space-md);position:relative}.admin-login-page .admin-header h1:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.login-form-container{background-color:var(--bg-card);border:var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:0 auto;max-width:500px;padding:var(--space-xl)}.login-form{display:flex;flex-direction:column;gap:var(--space-lg)}.login-form .form-group{display:flex;flex-direction:column;gap:var(--space-sm)}.login-form .form-group label{color:var(--color-text);font-family:var(--font-body);font-weight:var(--font-semibold)}.login-form .form-group input{background-color:var(--bg-overlay-light);border:var(--input-border);border-radius:var(--input-border-radius);font-family:var(--font-body);font-size:var(--text-base);padding:var(--input-padding);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.login-form .form-group input:focus{background-color:var(--bg-card-hover);border-color:var(--color-primary);box-shadow:var(--input-focus-ring);outline:none}.login-button{background-color:var(--color-primary);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);margin-top:var(--space-md);padding:var(--space-md) var(--space-lg);text-transform:uppercase;transition:all var(--transition-base)}.login-button:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.login-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.5}.admin-login-page .error-message{background-color:var(--color-error-light);border-left:4px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error-dark);font-family:var(--font-body);margin-bottom:var(--space-lg);padding:var(--space-md)}@media (max-width:768px){.login-form-container{max-width:90%;padding:var(--space-lg)}.admin-login-page .admin-header h1{font-size:var(--text-4xl)}}@media (max-width:480px){.admin-login-page{padding:var(--space-lg) 0}.admin-login-page .admin-header h1{font-size:var(--text-3xl)}.login-form-container{padding:var(--space-lg)}}.admin-reviews-page{min-height:calc(100vh - 120px);padding:clamp(var(--space-lg),4vw,var(--space-xl)) 0 clamp(var(--space-xl),5vw,var(--space-3xl))}.admin-reviews-page h1,.admin-reviews-page h2,.admin-reviews-page h3{font-family:var(--font-heading);letter-spacing:var(--tracking-wider)}.admin-header{margin-bottom:var(--space-3xl);margin-top:var(--space-xl);padding-top:var(--space-lg);position:relative;text-align:center;z-index:var(--z-base)}.admin-header h1{color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-5xl);letter-spacing:var(--tracking-widest);margin-bottom:var(--space-md);position:relative}.admin-header h1:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.admin-header p{color:var(--color-text);margin:var(--space-lg) auto 0;max-width:700px;padding:0 var(--space-md)}.logout-button{background-color:var(--color-error);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-base);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);position:absolute;right:0;text-transform:uppercase;top:0;transition:var(--btn-transition)}.logout-button:hover{background-color:var(--color-error-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.logout-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.logout-button:disabled{cursor:not-allowed;opacity:.5}.admin-reviews-container{grid-gap:var(--space-xl);display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:0 auto var(--space-3xl);max-width:1200px}.sort-controls{align-items:center;background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;gap:var(--space-md);grid-column:1/-1;justify-content:flex-end;margin-bottom:var(--space-lg);padding:var(--space-md) var(--space-lg)}.sort-controls label{color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-lg);letter-spacing:var(--tracking-wide);margin-right:var(--space-sm)}.sort-select{background-color:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);min-width:200px;padding:var(--space-sm) var(--space-md);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.sort-select:focus,.sort-select:hover{border-color:var(--color-primary)}.sort-select:focus{box-shadow:var(--input-focus-ring);outline:none}.reviews-count{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-lg);font-weight:var(--font-semibold);grid-column:1/-1;letter-spacing:var(--tracking-wide);margin-bottom:var(--space-lg);padding:var(--space-md) var(--space-lg)}.reviews-stats{display:flex;flex-direction:column;gap:var(--space-md)}.stats-total{border-bottom:1px solid #0000001a;font-size:var(--text-2xl);padding-bottom:var(--space-sm);text-align:center}.stats-sentiment{display:flex;flex-wrap:wrap;gap:var(--space-md);justify-content:space-around;padding:var(--space-sm) 0}.sentiment-stat{align-items:center;display:flex;flex-direction:column;gap:var(--space-sm)}.sentiment-badge-small{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);padding:var(--space-xs) var(--space-sm);position:relative;text-align:center;transition:all var(--transition-base)}.sentiment-badge-small.active,.sentiment-badge-small:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.sentiment-badge-small.active{padding-right:var(--space-lg)}.filter-indicator{font-size:var(--text-xs);position:absolute;right:5px;top:50%;transform:translateY(-50%)}.sentiment-badge-small.positive{background-color:var(--color-success)}.sentiment-badge-small.negative{background-color:var(--color-error)}.sentiment-badge-small.neutral{background-color:var(--color-text-lighter)}.sentiment-badge-small.mixed{background-color:var(--color-warning)}.filter-active-indicator{align-items:center;background-color:#f8f9fa;border-left:1px solid var(--color-primary);border:1px solid var(--color-primary);border-left-width:4px;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);display:flex;grid-column:1/-1;justify-content:space-between;margin-bottom:var(--space-lg);padding:var(--space-sm) var(--space-md)}.filter-active-indicator span{font-family:var(--font-accent);font-size:var(--text-lg);letter-spacing:var(--tracking-wide)}.filter-active-indicator strong{color:var(--color-primary)}.clear-filter-button{background-color:var(--color-primary);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-sm);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-sm) var(--space-md);text-transform:uppercase;transition:all var(--transition-base)}.clear-filter-button:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.clear-filter-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.clear-filter-button:disabled{cursor:not-allowed;opacity:.5}.stats-rating{align-items:center;border-top:1px solid #0000001a;display:flex;flex-direction:column;font-size:var(--text-xl);gap:var(--space-sm);padding-top:var(--space-sm)}.filtered-indicator{color:var(--color-primary);font-size:var(--text-sm);font-style:italic}.average-stars{font-size:var(--text-2xl);letter-spacing:var(--tracking-wide)}.review-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;min-height:200px;padding:var(--space-lg);transition:transform var(--transition-base),box-shadow var(--transition-base)}.review-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-5px)}.review-header{border-bottom:1px solid #0000001a;margin-bottom:var(--space-lg);min-height:80px;padding-bottom:var(--space-md);position:relative}.review-actions,.review-header{display:flex;gap:var(--space-md)}.review-actions{border-top:1px solid #0000001a;justify-content:flex-end;margin-top:auto;padding-top:var(--space-lg)}.edit-sentiment-button{background-color:var(--color-primary)}.delete-review-button,.edit-sentiment-button{align-items:center;border:none;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--color-text-inverse);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all var(--transition-base);width:40px;z-index:5}.delete-review-button{background-color:var(--color-secondary)}.icon{stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:20px;width:20px}.delete-review-button:hover{background-color:var(--color-error);box-shadow:var(--shadow-md);transform:scale(1.1)}.edit-sentiment-button:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:scale(1.1)}.review-avatar{align-items:center;background-color:var(--color-primary);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--color-text-inverse);display:flex;flex-shrink:0;font-family:var(--font-accent);font-size:var(--text-lg);font-weight:var(--font-bold);height:50px;justify-content:center;letter-spacing:var(--tracking-wide);position:relative;width:50px;z-index:3}.review-info{flex:1 1;min-height:70px;padding-right:110px;position:relative;z-index:2}.review-info h3{color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-2xl);letter-spacing:var(--tracking-wide);margin:0 0 var(--space-xs)}.review-date{color:var(--color-text-lighter);font-size:var(--text-sm);margin-bottom:var(--space-xs)}.review-rating{font-size:var(--text-lg)}.review-rating,.sentiment-badge{letter-spacing:var(--tracking-wide)}.sentiment-badge{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--color-text-inverse);font-family:var(--font-accent);font-size:var(--text-xs);font-weight:var(--font-semibold);max-width:100px;overflow:hidden;padding:var(--space-xs) var(--space-sm);position:absolute;right:0;text-align:center;text-overflow:ellipsis;top:0;white-space:nowrap;z-index:4}.review-content{color:var(--color-text);flex:1 1;line-height:var(--leading-relaxed);margin-bottom:var(--space-lg);min-height:80px;position:relative;z-index:1}.error-message,.loading-message,.no-reviews-message{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);font-family:var(--font-body);margin:var(--space-xl) auto;max-width:600px;padding:var(--space-xl);text-align:center}.modal-review-content{background-color:#f9f9f9;border-left:4px solid var(--color-primary);border-radius:var(--radius-sm);margin:var(--space-md) 0;max-height:150px;overflow-y:auto;padding:var(--space-md)}.sentiment-options{margin:var(--space-lg) 0}.sentiment-option-label{font-weight:var(--font-semibold);margin-bottom:var(--space-sm)}.sentiment-radio-group{display:flex;flex-wrap:wrap;gap:var(--space-md)}.sentiment-radio{align-items:center;cursor:pointer;display:flex}.sentiment-label{border-radius:var(--radius-sm);font-family:var(--font-accent);font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);margin-left:var(--space-sm);padding:var(--space-xs) var(--space-sm)}.sentiment-label.positive{background-color:var(--color-success);color:var(--color-text-inverse)}.sentiment-label.negative{background-color:var(--color-error);color:var(--color-text-inverse)}.sentiment-label.neutral{background-color:var(--color-text-lighter);color:var(--color-text-inverse)}.sentiment-label.mixed{background-color:var(--color-warning);color:var(--color-text-inverse)}.update-success{background-color:var(--color-success-light);border-left:4px solid var(--color-success);border-radius:var(--radius-sm);margin:var(--space-lg) 0;padding:var(--space-lg);text-align:center}.update-success h3{color:var(--color-success-dark);font-family:var(--font-accent);font-size:var(--text-2xl);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-sm)}.update-error{background-color:var(--color-error-light);border-left:4px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error-dark);margin:var(--space-lg) 0;padding:var(--space-lg)}.update-error h3{font-family:var(--font-accent);font-size:var(--text-2xl);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-sm)}.modal-buttons{margin-top:var(--space-lg)}.update-button{background-color:var(--color-info)}.update-button:hover{background-color:var(--color-info-dark)}.delete-warning{border-left:4px solid var(--color-warning);color:var(--color-warning-dark)}@media (max-width:992px){.admin-reviews-container{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.sort-controls{align-items:flex-start;flex-direction:column;gap:var(--space-sm)}.cancel-button,.sort-select,.update-button{width:100%}}@media (max-width:768px){.admin-reviews-container{padding:0 var(--space-md)}.admin-reviews-page{padding:var(--space-lg) 0 var(--space-2xl)}.sort-controls{margin-bottom:var(--space-md);padding:var(--space-sm) var(--space-md)}.sort-controls label{font-size:var(--text-base)}.sort-select{font-size:var(--text-xs);padding:var(--space-xs) var(--space-sm)}.stats-sentiment{flex-direction:column;gap:var(--space-sm)}.sentiment-stat{flex-direction:row;justify-content:space-between;padding:0 var(--space-md);width:100%}.filter-active-indicator{align-items:flex-start;flex-direction:column;gap:var(--space-sm)}.clear-filter-button{width:100%}.admin-header{margin-bottom:var(--space-3xl);margin-top:var(--space-lg);padding-top:var(--space-md)}.admin-header h1{font-size:var(--text-3xl)}.logout-button{margin-top:var(--space-md);position:static}.admin-reviews-container{gap:var(--space-lg);grid-template-columns:1fr}.review-header{flex-direction:column;margin-bottom:var(--space-lg);min-height:auto}.review-info{min-height:auto;padding-right:0}.review-avatar{margin-bottom:var(--space-md)}.sentiment-badge{display:block;margin-bottom:var(--space-sm);margin-top:var(--space-sm);max-width:none;position:static;width:auto}.review-actions{flex-direction:row;gap:0;justify-content:space-between;width:100%}.delete-review-button,.edit-sentiment-button{height:40px;margin:0;width:40px}.review-content{margin-bottom:var(--space-md);min-height:60px}.modal-content{padding:var(--space-lg);width:95%}.modal-buttons,.sentiment-radio-group{flex-direction:column;gap:var(--space-sm)}.cancel-button,.update-button{width:100%}}@media (max-width:480px){.admin-reviews-page{padding:var(--space-md) 0 var(--space-xl)}.admin-header{margin-bottom:var(--space-xl);margin-top:var(--space-md);padding-top:var(--space-sm)}.admin-header h1{font-size:var(--text-2xl)}.sort-controls{padding:var(--space-sm) var(--space-sm)}.sort-controls label{font-size:var(--text-sm);margin-bottom:var(--space-xs)}.sort-select{font-size:var(--text-xs);padding:var(--space-xs) var(--space-sm)}.modal-content{padding:var(--space-lg)}.modal-content h2{font-size:var(--text-3xl)}.sentiment-radio-group{gap:var(--space-xs)}}.admin-photos-page{min-height:calc(100vh - 120px);padding:clamp(var(--space-lg),4vw,var(--space-xl)) 0 clamp(var(--space-xl),5vw,var(--space-3xl))}.admin-photos-page h1,.admin-photos-page h2,.admin-photos-page h3{font-family:var(--font-heading);letter-spacing:var(--tracking-wider)}.admin-photos-page .admin-header{margin-bottom:var(--space-xl);margin-top:var(--space-xl);padding-top:var(--space-lg);position:relative;text-align:center;z-index:var(--z-base)}.admin-photos-page .admin-header h1{color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-5xl);letter-spacing:var(--tracking-widest);margin-bottom:var(--space-md);position:relative}.admin-photos-page .admin-header h1:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.admin-photos-page .admin-header p{color:var(--color-text);margin:var(--space-lg) auto 0;max-width:700px;padding:0 var(--space-md)}.admin-photos-page .logout-button{background-color:var(--color-error);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-base);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);position:absolute;right:0;text-transform:uppercase;top:0;transition:var(--btn-transition)}.admin-photos-page .logout-button:hover{background-color:var(--color-error-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.admin-photos-page .logout-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.admin-photos-page .logout-button:disabled{cursor:not-allowed;opacity:.5}.admin-nav{display:flex;gap:var(--space-md);justify-content:center;margin-bottom:var(--space-xl)}.admin-nav-link{background-color:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-accent);font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-decoration:none;text-transform:uppercase;transition:all var(--transition-base)}.admin-nav-link:hover{border-color:var(--color-primary);color:var(--color-primary)}.admin-nav-link.active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-inverse)}.notification{align-items:center;animation:slideIn var(--transition-base) ease;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);display:flex;font-family:var(--font-body);gap:var(--space-md);padding:var(--space-md) var(--space-xl);position:fixed;right:20px;top:20px;z-index:var(--z-modal)}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.notification.success{background-color:var(--color-success-light);border-left:4px solid var(--color-success);color:var(--color-success-dark)}.notification.error{background-color:var(--color-error-light);border-left:4px solid var(--color-error);color:var(--color-error-dark)}.notification button{background:none;border:none;color:inherit;cursor:pointer;font-size:var(--text-lg);opacity:.7;transition:opacity var(--transition-base)}.notification button:hover{opacity:1}.photos-stats{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;gap:var(--space-2xl);justify-content:center;margin-bottom:var(--space-xl);padding:var(--space-lg)}.stat-item{align-items:center;display:flex;flex-direction:column;gap:var(--space-xs);padding:0 var(--space-md)}.stat-item:not(:last-child){border-right:1px solid var(--border-color)}.stat-value{color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-4xl);letter-spacing:var(--tracking-wide)}.stat-label{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:var(--tracking-widest);text-transform:uppercase}.stat-item.visible .stat-value{color:var(--color-success)}.stat-item.hidden .stat-value{color:var(--color-text-lighter)}.upload-section{margin-bottom:var(--space-xl)}.upload-section h2{color:var(--color-secondary-dark);display:inline-block;font-size:var(--text-3xl);margin-bottom:var(--space-md);position:relative}.upload-section h2:after{background-color:var(--color-primary);bottom:-5px;content:"";height:3px;left:0;position:absolute;width:50px}.photo-uploader{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-lg)}.upload-dropzone{background-color:#ffffff80;border:2px dashed var(--border-color);border-radius:var(--radius-lg);cursor:pointer;padding:var(--space-3xl) var(--space-xl);text-align:center;transition:all var(--transition-base)}.upload-dropzone:hover{background-color:#e67e220d;border-color:var(--color-primary)}.upload-dropzone.drag-over{background-color:#e67e221a;border-color:var(--color-primary);transform:scale(1.01)}.upload-dropzone.disabled{cursor:not-allowed;opacity:.6}.upload-icon{color:var(--color-primary);height:64px;margin:0 auto var(--space-md);width:64px}.upload-icon svg{height:100%;width:100%}.upload-text{color:var(--color-text);font-size:var(--text-lg);margin-bottom:var(--space-sm)}.upload-text strong{color:var(--color-primary)}.upload-hint{color:var(--color-text-lighter);font-size:var(--text-sm)}.upload-loading{align-items:center;display:flex;flex-direction:column;gap:var(--space-md)}.upload-spinner{animation:spin 1s linear infinite;border:4px solid #e67e2233;border-radius:var(--radius-full);border-top:4px solid var(--color-primary);height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.upload-progress-bar{background-color:#e67e2233;border-radius:var(--radius-sm);height:4px;margin-top:var(--space-md);overflow:hidden}.upload-progress-fill{background-color:var(--color-primary);height:100%;transition:width var(--transition-base)}.upload-preview-section{border-top:1px solid var(--border-color);margin-top:var(--space-lg);padding-top:var(--space-lg)}.upload-preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-md)}.upload-preview-header h4{color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-2xl);letter-spacing:var(--tracking-wide);margin:0}.upload-clear-btn{background-color:var(--color-error);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase;transition:all var(--transition-base)}.upload-clear-btn:hover{background-color:var(--color-error-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.upload-clear-btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.upload-clear-btn:disabled{cursor:not-allowed;opacity:.5}.upload-preview-grid{grid-gap:var(--space-md);display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-bottom:var(--space-md)}.upload-preview-item{background-color:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden;position:relative}.upload-preview-image{height:100px;object-fit:cover;width:100%}.upload-preview-info{font-size:var(--text-xs);padding:var(--space-sm)}.upload-preview-name{color:var(--color-text);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-preview-size{color:var(--color-text-lighter);display:block;margin-top:var(--space-xs)}.upload-preview-remove{background-color:#dc3545e6;border:none;border-radius:var(--radius-full);color:var(--color-text-inverse);cursor:pointer;font-size:var(--text-base);height:24px;line-height:1;position:absolute;right:4px;top:4px;transition:all var(--transition-base);width:24px}.upload-preview-remove:hover{background-color:var(--color-error-dark);transform:scale(1.1)}.upload-submit-btn{background-color:var(--color-primary);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase;transition:all var(--transition-base);width:100%}.upload-submit-btn:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.upload-submit-btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.upload-submit-btn:disabled{cursor:not-allowed;opacity:.5}.photos-section{margin-bottom:var(--space-xl)}.photos-section h2{color:var(--color-secondary-dark);display:inline-block;font-size:var(--text-3xl);margin-bottom:var(--space-md);position:relative}.photos-section h2:after{background-color:var(--color-primary);bottom:-5px;content:"";height:3px;left:0;position:absolute;width:50px}.photo-grid{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.photo-grid-item{transition:transform var(--transition-fast)}.photo-grid-item.drag-over{transform:scale(1.02)}.photo-grid-empty{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-3xl) var(--space-xl);text-align:center}.photo-grid-empty .empty-icon{color:var(--border-color);height:80px;margin:0 auto var(--space-md);width:80px}.photo-grid-empty p{color:var(--color-text);font-size:var(--text-xl);margin-bottom:var(--space-sm)}.photo-grid-empty .empty-hint{color:var(--color-text-lighter);font-size:var(--text-sm)}.photo-card-wrapper{cursor:grab;transition:opacity var(--transition-fast)}.photo-card-wrapper:active{cursor:grabbing}.photo-card-wrapper.dragging{opacity:.5}.photo-card{background-color:#ffffffe6;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;padding:0;position:relative;transition:transform var(--transition-base),box-shadow var(--transition-base)}.photo-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-5px)}.photo-drag-handle{align-items:center;background-color:#ffffffe6;border-radius:var(--radius-sm);cursor:grab;display:flex;height:24px;justify-content:center;left:8px;opacity:.7;position:absolute;top:8px;transition:opacity var(--transition-base);width:24px;z-index:5}.photo-drag-handle:hover{opacity:1}.photo-drag-handle svg{color:var(--color-text);height:16px;width:16px}.photo-visibility-badge{align-items:center;border-radius:var(--radius-full);display:flex;height:28px;justify-content:center;position:absolute;right:8px;top:8px;width:28px;z-index:5}.photo-visibility-badge.visible{background-color:#27ae60e6;color:var(--color-text-inverse)}.photo-visibility-badge.hidden{background-color:#95a5a6e6;color:var(--color-text-inverse)}.photo-visibility-badge svg{height:16px;width:16px}.photo-thumbnail-container{background-color:#f5f5f5;height:180px;overflow:hidden;width:100%}.photo-thumbnail{height:100%;object-fit:cover;transition:transform var(--transition-base);width:100%}.photo-card:hover .photo-thumbnail{transform:scale(1.05)}.photo-info{padding:var(--space-md)}.photo-filename{color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-lg);letter-spacing:var(--tracking-normal)}.photo-caption,.photo-filename{margin-bottom:var(--space-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-caption{color:var(--color-text);font-size:var(--text-sm);font-style:italic}.photo-order{color:var(--color-text-lighter);font-size:var(--text-xs)}.photo-actions{background-color:#ffffff80;border-top:1px solid var(--border-color);display:flex;gap:var(--space-sm);justify-content:flex-end;padding:var(--space-sm) var(--space-md)}.photo-action-btn{align-items:center;border:none;border-radius:var(--radius-full);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all var(--transition-base);width:36px}.photo-action-btn svg{height:18px;width:18px}.photo-action-btn.visibility-btn{background-color:var(--color-text-lighter);color:var(--color-text-inverse)}.photo-action-btn.visibility-btn:hover{background-color:var(--color-secondary);transform:scale(1.1)}.photo-action-btn.edit-btn{background-color:var(--color-primary);color:var(--color-text-inverse)}.photo-action-btn.edit-btn:hover{background-color:var(--color-primary-dark);transform:scale(1.1)}.photo-action-btn.delete-btn{background-color:var(--color-error);color:var(--color-text-inverse)}.photo-action-btn.delete-btn:hover{background-color:var(--color-error-dark);transform:scale(1.1)}.error-message,.loading-message{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);font-family:var(--font-body);margin:var(--space-xl) auto;max-width:600px;padding:var(--space-xl);text-align:center}.error-message{background-color:var(--color-error-light);color:var(--color-error-dark)}.modal-overlay{align-items:center;background-color:var(--bg-overlay);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--z-modal-backdrop)}.modal-content{background-color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-height:90vh;max-width:600px;overflow-y:auto;padding:var(--space-xl);width:90%}.modal-content h2{color:var(--color-secondary-dark);font-family:var(--font-accent);font-size:var(--text-4xl);letter-spacing:var(--tracking-widest);margin-bottom:var(--space-lg);margin-top:0;position:relative;text-align:center}.modal-content h2:after{background-color:var(--color-primary);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.modal-photo-preview{margin:var(--space-lg) 0;text-align:center}.modal-photo-preview.delete-preview{border:2px solid var(--color-error);border-radius:var(--radius-lg);overflow:hidden}.modal-photo-image{border-radius:var(--radius-sm);max-height:300px;max-width:100%;object-fit:contain}.modal-photo-info{background-color:#f9f9f9;border-radius:var(--radius-sm);font-size:var(--text-sm);margin:var(--space-md) 0;padding:var(--space-md)}.modal-photo-info p{margin:var(--space-xs) 0}.modal-photo-name{color:var(--color-secondary-dark);font-weight:var(--font-bold);margin:var(--space-md) 0;text-align:center}.modal-form-group{margin:var(--space-lg) 0}.modal-form-group label{color:var(--color-secondary-dark);display:block;font-family:var(--font-accent);font-size:var(--text-lg);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-sm)}.modal-textarea{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);padding:var(--space-sm);resize:vertical;transition:border-color var(--transition-base),box-shadow var(--transition-base);width:100%}.modal-textarea:focus{border-color:var(--color-primary);box-shadow:var(--input-focus-ring);outline:none}.modal-help-text{color:var(--color-text-lighter);font-size:var(--text-xs);margin-top:var(--space-sm)}.delete-warning{align-items:flex-start;background-color:var(--color-warning-light);border-left:1px solid var(--color-warning);border:1px solid var(--color-warning);border-left-width:4px;border-radius:var(--radius-sm);display:flex;gap:var(--space-sm);margin:var(--space-lg) 0;padding:var(--space-md)}.delete-warning .warning-icon{color:var(--color-warning-dark);flex-shrink:0;height:24px;width:24px}.delete-warning p{color:var(--color-warning-dark);font-size:var(--text-sm);margin:0}.modal-success{background-color:var(--color-success-light);border-left:4px solid var(--color-success);border-radius:var(--radius-sm);color:var(--color-success-dark);margin:var(--space-lg) 0;padding:var(--space-lg);text-align:center}.modal-success h3{font-family:var(--font-accent);font-size:var(--text-2xl);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-sm)}.modal-error{background-color:var(--color-error-light);border-left:4px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error-dark);margin:var(--space-lg) 0;padding:var(--space-lg)}.modal-error h3{font-family:var(--font-accent);font-size:var(--text-2xl);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-sm)}.modal-buttons{display:flex;gap:var(--space-md);justify-content:flex-end;margin-top:var(--space-xl)}.cancel-button{background-color:var(--color-text-lighter);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase;transition:all var(--transition-base)}.cancel-button:hover{background-color:var(--color-secondary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.cancel-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.cancel-button:disabled{cursor:not-allowed;opacity:.5}.update-button{background-color:var(--color-primary);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase;transition:all var(--transition-base)}.update-button:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.update-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.update-button:disabled{cursor:not-allowed;opacity:.5}.delete-button{background-color:var(--color-error);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase;transition:all var(--transition-base)}.delete-button:hover{background-color:var(--color-error-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.delete-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.delete-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:992px){.photos-stats{flex-wrap:wrap}.stat-item{flex:1 1 auto;min-width:100px}.stat-item:not(:last-child){border-right:none}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:768px){.admin-photos-page .admin-header{padding-top:var(--space-3xl)}.admin-photos-page .logout-button{margin-top:var(--space-md);position:relative}.admin-nav{align-items:center;flex-direction:column;gap:var(--space-sm)}.admin-nav-link{max-width:200px;text-align:center;width:100%}.photos-stats{flex-direction:column;gap:var(--space-md)}.stat-item{border-bottom:1px solid var(--border-color);flex-direction:row;justify-content:space-between;padding:var(--space-sm) 0}.stat-item:not(:last-child){border-right:none}.photo-grid{grid-template-columns:1fr}.modal-buttons{flex-direction:column}.modal-buttons button{width:100%}.notification{left:10px;right:10px;width:auto}}@media (max-width:480px){.admin-photos-page .admin-header h1{font-size:var(--text-3xl)}.upload-dropzone{padding:var(--space-xl) var(--space-md)}.upload-icon{height:48px;width:48px}.upload-preview-grid{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.upload-preview-image{height:80px}.photo-thumbnail-container{height:150px}.modal-content{padding:var(--space-lg)}.modal-content h2{font-size:var(--text-3xl)}}.simple-photo-grid{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.simple-photo-card{background-color:#ffffffe6;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base)}.simple-photo-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-3px)}.simple-photo-card .photo-image-container{background-color:#f0f0f0;height:200px;overflow:hidden;width:100%}.simple-photo-card .photo-image-container img{height:100%;object-fit:cover;transition:transform var(--transition-base);width:100%}.simple-photo-card:hover .photo-image-container img{transform:scale(1.05)}.simple-photo-card .photo-info{align-items:center;background-color:#ffffff80;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding:var(--space-sm) var(--space-md)}.simple-photo-card .photo-filename{color:var(--color-text);font-size:var(--text-sm);max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simple-photo-card .delete-button{background-color:var(--color-error);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-sm);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-sm) var(--space-md);text-transform:uppercase;transition:all var(--transition-base)}.simple-photo-card .delete-button:hover{background-color:var(--color-error-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.simple-photo-card .delete-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.simple-photo-card .delete-button:disabled{cursor:not-allowed;opacity:.5}.empty-message,.error-message,.loading-message{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:var(--color-text);font-size:var(--text-lg);padding:var(--space-3xl) var(--space-xl);text-align:center}.error-message{border:1px solid var(--color-error);color:var(--color-error)}.modal-preview{margin:var(--space-md) 0;text-align:center}.modal-preview img{border-radius:var(--radius-sm);box-shadow:var(--shadow-md);max-height:200px;max-width:100%}.delete-confirm-button{background-color:var(--color-error);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-family:var(--font-accent);font-size:var(--text-base);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase;transition:all var(--transition-base)}.delete-confirm-button:hover{background-color:var(--color-error-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.delete-confirm-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}@media (max-width:576px){.simple-photo-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.simple-photo-card .photo-image-container{height:150px}.simple-photo-card .photo-info{align-items:stretch;flex-direction:column;gap:var(--space-sm)}.simple-photo-card .photo-filename{max-width:100%;text-align:center}.simple-photo-card .delete-button{width:100%}}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;padding:0 0 var(--space-xl) 0}.main-content.full-height{min-height:100vh;padding:0}header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:var(--bg-overlay-light);border-bottom:2px solid var(--color-primary);box-shadow:var(--shadow-sm);padding:var(--space-xs) 0;position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.header-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:2000px;padding:0;position:relative}.logo-container{max-width:200px}.logo{display:block;width:100%}.hamburger-menu{cursor:pointer;display:none;flex-direction:column;height:21px;justify-content:space-between;width:30px;z-index:calc(var(--z-sticky) + 10)}.hamburger-bar{background-color:var(--color-text);border-radius:var(--radius-sm);height:3px;transition:all var(--transition-base);width:100%}.hamburger-bar.open:first-child{background-color:var(--color-primary);transform:translateY(9px) rotate(45deg)}.hamburger-bar.open:nth-child(2){opacity:0}.hamburger-bar.open:nth-child(3){background-color:var(--color-primary);transform:translateY(-9px) rotate(-45deg)}nav ul{display:flex;gap:var(--space-md)}nav a{color:var(--color-text);font-family:var(--font-accent);font-size:var(--text-xl);font-weight:var(--font-medium);letter-spacing:var(--tracking-wide);padding:var(--space-xs) var(--space-sm);transition:color var(--transition-base)}nav a.active,nav a:hover{color:var(--color-primary)}nav a.active{border-bottom:2px solid var(--color-primary)}footer{background-color:#5e2f00f2;color:var(--color-text-inverse);font-family:var(--font-heading);letter-spacing:var(--tracking-wider);padding:var(--space-xl) 0}.footer-container{align-items:center;display:flex;flex-direction:column;gap:var(--space-md)}.footer-container .tagline{color:var(--color-accent);font-size:var(--text-sm);font-style:italic;margin-top:calc(var(--space-sm)*-1)}.footer-links{display:flex;gap:var(--space-lg)}.footer-links a{color:var(--color-text-inverse);transition:color var(--transition-base)}.footer-links a:hover{color:var(--color-accent)}.powered-by{border-top:1px solid #fff3;margin-top:var(--space-lg);padding-top:var(--space-md);text-align:center;width:100%}.powered-by span{color:#fffc;font-size:var(--text-base);font-style:italic}.btn{border:none;border-radius:var(--btn-border-radius);cursor:pointer;display:inline-block;font-family:var(--font-accent);font-size:var(--btn-font-size);min-height:var(--touch-target-min);text-align:center;transition:var(--btn-transition)}.btn,.btn-primary,.cta-button,.primary-button{font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase}.btn-primary,.cta-button,.primary-button{background-color:var(--color-primary);border-radius:var(--btn-border-radius);box-shadow:var(--shadow-sm);color:var(--color-text-inverse)}.btn-primary:hover,.cta-button:hover,.primary-button:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary,.secondary-button{background-color:initial;border:2px solid var(--color-text-inverse);border-radius:var(--btn-border-radius);box-shadow:none;color:var(--color-text-inverse);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase}.btn-secondary:hover,.secondary-button:hover{background-color:var(--color-text-inverse);color:var(--color-secondary-dark)}.btn-outline{background-color:initial;border:2px solid var(--color-primary);border-radius:var(--btn-border-radius);color:var(--color-primary);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase}.btn-outline:hover,.submit-button{background-color:var(--color-primary);color:var(--color-text-inverse)}.submit-button{border-radius:var(--btn-border-radius);font-family:var(--font-accent);font-size:var(--btn-font-size);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);padding:var(--space-md) var(--space-lg);text-transform:uppercase}.submit-button:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.submit-button:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.submit-button:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.submit-button:disabled:hover{background-color:#ccc;transform:none}.btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.btn:disabled{cursor:not-allowed;opacity:.5}.form-group{margin-bottom:var(--space-md)}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:var(--color-error);box-shadow:0 0 0 2px #dc354533}.form-group.has-error .error-message{color:var(--color-error);display:block;font-size:var(--text-sm);margin-top:var(--space-xs)}@media (max-width:768px){.hamburger-menu{display:flex}.header-container{flex-direction:row;justify-content:space-between;padding:var(--space-sm) var(--space-md)}.logo-container{max-width:100px}nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fff8f0fa;box-shadow:-2px 0 5px #0000001a;height:100vh;padding-top:var(--space-3xl);position:fixed;right:-100%;top:0;transition:right var(--transition-base);width:70%;z-index:var(--z-dropdown)}nav.open{right:0}nav ul{flex-direction:column;gap:var(--space-lg);padding:var(--space-md)}nav li{border-bottom:1px solid var(--border-color);padding-bottom:var(--space-md);text-align:center;width:100%}nav li:last-child{border-bottom:none}nav a{display:block;font-family:var(--font-body);font-size:var(--text-xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-wide);padding:var(--space-sm)}footer{padding:var(--space-lg) 0}.footer-links{flex-wrap:wrap;gap:var(--space-md);justify-content:center}.btn,.cta-button,.primary-button,.secondary-button{font-size:var(--text-base);padding:var(--space-md) var(--space-lg);width:100%}}@media (max-width:480px){.header-container{padding:var(--space-xs) var(--space-md)}.logo-container{max-width:80px}nav{width:80%}nav a{font-size:var(--text-lg)}footer{padding:var(--space-lg) 0}.footer-container{gap:var(--space-sm)}.footer-container .tagline{font-size:var(--text-xs)}.powered-by span{font-size:var(--text-sm)}}@font-face{font-display:swap;font-family:MariDavid;font-style:normal;font-weight:700;src:url(/static/media/MariDavid-Bold.1747cc3606c42158a782.woff) format("woff")}:root{--font-display:"MariDavid",Georgia,serif;--font-heading:"MariDavid","Bebas Neue",Impact,sans-serif;--font-accent:"Nunito",Impact,sans-serif;--font-body:"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto",sans-serif;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3rem;--font-light:300;--font-regular:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--tracking-tight:-0.025em;--tracking-normal:0;--tracking-wide:0.025em;--tracking-wider:0.05em;--tracking-widest:0.1em;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px #8b45130d;--shadow-md:0 4px 8px #8b451314;--shadow-lg:0 8px 16px #8b45131a;--shadow-xl:0 12px 24px #8b45131f;--shadow-2xl:0 20px 40px #8b451326;--shadow-inner:inset 0 2px 4px #8b45130f;--color-primary:#e77e23;--color-primary-light:#ec9951;--color-primary-dark:#c16515;--color-secondary:#603a20;--color-secondary-light:#86522d;--color-secondary-dark:#392313;--color-accent:#f49d25;--color-accent-light:#f6b355;--color-accent-dark:#da840b;--color-success:#28a745;--color-success-light:#d4edda;--color-success-dark:#155724;--color-error:#dc3545;--color-error-light:#f8d7da;--color-error-dark:#721c24;--color-warning:#f39c12;--color-warning-light:#fff3cd;--color-warning-dark:#856404;--color-info:#3498db;--color-info-light:#d1ecf1;--color-info-dark:#0c5460;--color-text:#3d2c14;--color-text-light:#777;--color-text-lighter:#999;--color-text-inverse:#fff;--bg-cream:#fff8f0;--bg-warm:linen;--bg-card:#ffffffd9;--bg-card-hover:#fffffff2;--bg-overlay:#000000b3;--bg-overlay-light:#fff8f0b3;--border-color:#d9a679;--border-color-light:#d9a67980;--border-color-dark:#d9a679cc;--transition-fast:150ms ease;--transition-base:200ms ease;--transition-slow:300ms ease;--transition-slower:500ms ease;--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--z-base:1;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:1000;--z-modal:1100;--z-popover:1200;--z-tooltip:1300;--btn-padding-sm:var(--space-sm) var(--space-md);--btn-padding-md:var(--space-md) var(--space-lg);--btn-padding-lg:var(--space-lg) var(--space-xl);--btn-font-size:var(--text-xl);--btn-border-radius:var(--radius-md);--btn-transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base);--card-padding:var(--space-lg);--card-border-radius:var(--radius-md);--card-shadow:var(--shadow-md);--card-shadow-hover:var(--shadow-lg);--card-border:1px solid var(--border-color);--card-bg:var(--bg-card);--input-padding:var(--space-md);--input-border-radius:var(--radius-sm);--input-border:1px solid var(--border-color);--input-focus-ring:0 0 0 2px #e67e2233;--touch-target-min:44px;--primary-dark:var(--color-primary-dark);--text-light:var(--color-text-inverse);--background-light:var(--bg-cream);--background-medium:var(--bg-warm)}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;overflow-x:hidden;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);position:relative}body:not(.landing-page-active){overflow-y:auto}body.landing-page-active{overflow:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a{color:inherit;text-decoration:none}ul{list-style:none}img{height:auto;max-width:100%}.container{margin:0 auto;max-width:1200px;padding:0 20px;width:100%}h1{font-size:clamp(var(--text-3xl),5vw,var(--text-5xl))}h1,h2{font-family:var(--font-heading);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);line-height:var(--leading-tight)}h2{font-size:clamp(var(--text-2xl),4vw,var(--text-4xl))}h3{font-family:var(--font-heading);font-size:clamp(var(--text-xl),3vw,var(--text-2xl));font-weight:var(--font-bold);letter-spacing:var(--tracking-wide);line-height:var(--leading-snug)}p{font-family:var(--font-body);font-size:clamp(var(--text-sm),2vw,var(--text-lg));line-height:var(--leading-relaxed)}@media (max-width:480px){.container{padding:0 15px}}button{cursor:pointer}
/*# sourceMappingURL=main.751a2111.css.map*/