.home .container,section.section .container,section.hero .container,section.featured-products .container,section.gallery .container,section.contact .container{max-width:1200px;margin:0 auto;padding:0 20px}section.section{padding:80px 0}.section-header{text-align:center;margin-bottom:3rem;margin-top:2rem}.section-title{font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem;color:var(--color-primary);font-weight:700;line-height:1.2}.section-subtitle{color:var(--color-ink-soft);font-size:1.1rem}section.hero{height:100vh;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2c3e50,#3498db);color:#fff;background-size:cover;background-position:center;background-repeat:no-repeat;margin-top:0;padding:0}.hero-video-bg{position:absolute;inset:0;z-index:0;background:#000;overflow:hidden}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .4s ease;display:block;background:#000}.hero-video.is-playing{opacity:1;visibility:visible}video.hero-video::-webkit-media-controls,video.hero-video::-webkit-media-controls-enclosure,video.hero-video::-webkit-media-controls-panel,video.hero-video::-webkit-media-controls-play-button,video.hero-video::-webkit-media-controls-start-playback-button,video.hero-video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none}@supports (-webkit-touch-callout: none){.hero-video{height:100vh;height:100svh}}.hero-overlay{position:absolute;inset:0;width:100%;height:100%;background:#0000004d;z-index:1}.hero-content{text-align:center;z-index:2;position:relative;animation:heroFadeInUp 1s ease;color:#fff}.hero-title{font-family:Playfair Display,serif;font-size:clamp(2.5rem,5vw,4rem);margin:0 0 1rem;font-weight:700;line-height:1.2;color:#fff}.hero-subtitle{font-size:1.25rem;margin:0 0 2rem;font-weight:300;color:#fff}@keyframes heroFadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.btn{display:inline-block;padding:12px 30px;text-decoration:none;border-radius:30px;font-weight:500;text-transform:uppercase;letter-spacing:1px;font-size:.9rem;border:none;cursor:pointer;font-family:Inter,sans-serif;transform:translateZ(0);transition:transform .2s var(--ease-luxury),box-shadow .2s var(--ease-luxury),background .2s var(--ease-luxury)}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:#b89951;transform:translateY(-2px);box-shadow:0 5px 15px #c9a9614d}.btn:active{transform:translateY(0);box-shadow:none}.featured-products{background:#fff;padding:6rem 0;position:relative}.featured-products:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:80px;height:4px;background:var(--color-accent);border-radius:2px}.featured-products .section-header{text-align:center;margin-bottom:4rem;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.featured-products .section-title{font-size:2.5rem;margin-bottom:.8rem;color:var(--color-primary)}.featured-products .section-subtitle{font-size:1.1rem;color:#666;font-weight:400}.view-all-btn{margin-top:20px;background:var(--color-accent);border:2px solid var(--color-accent);color:#fff;padding:.7rem 2rem;border-radius:30px;text-decoration:none;font-weight:500;transition:background .3s ease,color .3s ease,box-shadow .3s ease;font-size:.95rem;box-shadow:0 4px 15px #0000001a;display:inline-block}.view-all-btn:hover{background:transparent;color:var(--color-accent);box-shadow:0 6px 20px #00000026}.products-carousel{position:relative;overflow:hidden;display:flex;justify-content:center;padding:0 0 30px;margin:0 auto;max-width:460px;contain:layout style}.products-carousel .carousel-track{display:flex;transition:opacity .3s ease;gap:2rem;justify-content:flex-start;align-items:center;padding:10px 0;width:100%;will-change:transform;opacity:0}.products-carousel.is-ready .carousel-track{opacity:1;transition:opacity .3s ease,transform .5s ease}.featured-products .product-card{flex:0 0 100%;height:450px;background:#fafafa;border-radius:20px;overflow:hidden;box-shadow:0 2px 15px #00000014;transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1),border-color .4s ease;cursor:pointer;position:relative;display:flex;flex-direction:column;border:1px solid #f0f0f0;contain:layout style}.featured-products .product-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #0000001f;border-color:#e0e0e0}.featured-products .product-image{position:relative;height:280px;overflow:hidden;flex-shrink:0;background:#f5f5f5}.featured-products .product-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.featured-products .product-card:hover .product-image img{transform:scale(1.08)}.product-tag{position:absolute;top:15px;left:15px;background:var(--color-accent);color:#fff;padding:.4rem 1rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.8px;box-shadow:0 4px 10px #00000026}.product-tag.best-seller{background:linear-gradient(135deg,#d4af37,#f4cf47)}.product-tag.new-arrival{background:linear-gradient(135deg,var(--color-accent),#d9534f)}.featured-products .product-info{padding:1.5rem;flex:1;display:flex;flex-direction:column;justify-content:center;background:#fff;height:170px;text-align:center;border-radius:0 0 20px 20px}.featured-products .product-details{text-align:center;margin:0}.featured-products .product-name{font-size:1.1rem;font-weight:600;color:var(--color-primary);margin-bottom:.5rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;transition:color .3s ease;font-family:Inter,sans-serif}.featured-products .product-card:hover .product-name{color:var(--color-accent)}.featured-products .product-category{font-size:.8rem;color:#999;margin-bottom:.8rem;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.featured-products .product-price{font-size:1.25rem;font-weight:700;color:var(--color-primary);margin:0;text-align:center}.products-carousel .carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffeb;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--color-primary);border:none;width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:1.4rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000002e;transition:background .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease,opacity .3s ease;z-index:2}.products-carousel .carousel-btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-accent);color:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 8px 25px #0003}.products-carousel .carousel-btn:disabled,.products-carousel .carousel-btn[aria-disabled=true]{opacity:.35;cursor:not-allowed;pointer-events:none}.products-carousel .prev{left:8px}.products-carousel .next{right:8px}@media(max-width:640px){.featured-products{padding:4rem 0}.featured-products .section-title{font-size:2rem}.view-all-btn{position:static;transform:none;margin-top:1.5rem;display:inline-block}.products-carousel{max-width:100%;padding:0 0 20px;justify-content:flex-start}.products-carousel .carousel-track{justify-content:flex-start;transform-origin:left center}.featured-products .product-card{flex:0 0 100%;height:420px}.featured-products .product-image{height:250px}.featured-products .product-info{height:170px}.products-carousel .carousel-btn{width:40px;height:40px;font-size:1.2rem}}.skeleton-card{pointer-events:none}.skeleton-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:skeletonPulse 1.5s ease infinite}.skeleton-line{background:#f0f0f0;border-radius:4px;animation:skeletonPulse 1.5s ease infinite}@keyframes skeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.gallery{position:relative;height:100vh;height:100svh;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0}.gallery-background{position:absolute;inset:0;z-index:0;background:#000;overflow:hidden}.gallery-carousel{position:absolute;inset:0;width:100%;height:100%}.gallery-carousel .carousel-track{display:flex;height:100%;transition:transform .5s ease}.gallery-carousel .carousel-slide{min-width:100%;height:100%;-webkit-user-select:none;user-select:none;position:relative}.gallery-carousel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.gallery-carousel .carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#0009;color:#fff;border:none;width:50px;height:50px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;z-index:10;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.gallery-carousel .carousel-btn:hover{background:#000c;transform:translateY(-50%) scale(1.1)}.gallery-carousel .prev{left:2rem}.gallery-carousel .next{right:2rem}.gallery-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0006,#0000001a,#0009);z-index:1}.gallery-content{position:relative;z-index:2;color:#fff;text-align:center;width:100%;pointer-events:none}.carousel-dots{display:flex;gap:12px;justify-content:center;margin-top:2rem;pointer-events:all}.gallery .carousel-dots{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);z-index:3;margin-top:0}.carousel-dots .dot{width:12px;height:12px;border-radius:50%;background:#fff6;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.carousel-dots .dot.active{background:var(--color-accent);border-color:#fff;transform:scale(1.2)}.carousel-dots .dot:hover{background:#ffffffb3}section.contact{background:#f8f8f8}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-top:3rem;align-items:start}.contact-form{background:#fff;padding:2rem;border-radius:10px;box-shadow:0 5px 20px #0000001a;height:fit-content}.contact-form .form-group{margin-bottom:1rem}.contact-form input,.contact-form textarea{width:100%;padding:12px 20px;border:1px solid #ddd;border-radius:5px;font-family:inherit;font-size:1rem;transition:border-color .3s ease}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--color-accent)}.contact-form .btn-primary{width:100%}.contact-info{background:#fff;padding:2rem;border-radius:10px;box-shadow:0 5px 20px #0000000d}.contact-info h3{font-family:Playfair Display,serif;color:var(--color-primary);margin:0 0 1.5rem;font-weight:700}.info-item{margin-bottom:1rem;color:var(--color-ink-soft)}.contact .social-links{display:flex;gap:1rem;margin-top:1.5rem}.contact .social-links a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border-radius:50%;color:var(--color-primary);transition:all .3s ease;box-shadow:0 2px 5px #0000001a;text-decoration:none}.contact .social-links a:hover{background:var(--color-accent);color:#fff;transform:translateY(-2px);box-shadow:0 4px 10px #0003}.map-container{margin-top:2rem}.map-block{margin-bottom:1.5rem;border-radius:8px;overflow:hidden;box-shadow:0 3px 10px #0000001a}.map-block:last-child{margin-bottom:0}.map-block-label{font-size:.78rem;letter-spacing:.15em;text-transform:uppercase;color:#777;padding:.6rem .75rem;background:#fafafa;border-bottom:1px solid #f0f0f0}.map-directions-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.7rem 1rem;background:linear-gradient(135deg,#c9a961,#b8953f);color:#fff;font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transition:filter .3s,box-shadow .3s}.map-directions-btn:hover{filter:brightness(1.08);box-shadow:0 4px 14px #c9a96159}.map-directions-btn svg{flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){.contact-content{grid-template-columns:1fr;gap:2rem}}main#main-content:has(>section.hero:first-child){padding-top:0}
