@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Inter:wght@300;400;500;600;700;800&display=swap";*,:before,:after{box-sizing:border-box}:root{--color-marble:#fafaf8;--color-marble-warm:#f5f0eb;--color-champagne:#c4a35a;--color-champagne-light:#d4b96e;--color-champagne-dark:#a68b42;--color-carbon:#1a1a2e;--color-carbon-light:#2d2d44;--color-stone-gray:#8a8a9a;--color-stone-light:#c5c5d0;--color-warm-white:#fdf9f3;--color-cream:#f0e6d3;--color-travertine:#e8dcc8;--color-onyx:#2c2c2c;--font-serif:"Cormorant Garamond", "Georgia", serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--space-5xl:8rem;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.5s cubic-bezier(.4, 0, .2, 1);--transition-elegant:.7s cubic-bezier(.16, 1, .3, 1);--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 30px #0000001f;--shadow-xl:0 20px 60px #00000026;--shadow-glow:0 0 40px #c4a35a26;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:20px;--radius-full:9999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);background-color:var(--color-warm-white);color:var(--color-carbon);margin:0;line-height:1.6;overflow-x:hidden}.desktop-only{display:block}.sticky-desktop{position:sticky;top:120px}@media (width<=768px){.desktop-only{display:none!important}.sticky-desktop{position:static!important}}img{max-width:100%;display:block}button{cursor:pointer;background:0 0;border:none;font-family:inherit}a{color:inherit;text-decoration:none}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:-.02em;font-weight:400;line-height:1.15}.heading-hero{letter-spacing:-.03em;font-size:clamp(2.5rem,6vw,5.5rem);font-weight:300;line-height:1.05}.heading-section{font-size:clamp(2rem,4vw,3.5rem);font-weight:400}.heading-card{font-size:clamp(1.25rem,2vw,1.75rem);font-weight:500}.text-body{color:var(--color-stone-gray);font-size:1rem;line-height:1.7}.text-label{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;font-size:.625rem;font-weight:700}.text-champagne{color:var(--color-champagne)}.container{max-width:1280px;padding:0 var(--space-xl);margin:0 auto}.section{padding:var(--space-5xl) 0}.section-dark{background:var(--color-carbon);color:#fff}.section-warm{background:var(--color-warm-white)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;padding:var(--space-md) var(--space-2xl);border-radius:var(--radius-full);transition:all var(--transition-base);white-space:nowrap;font-size:.6875rem;font-weight:700;display:inline-flex}.btn-primary{background:var(--color-champagne);color:#fff;box-shadow:0 4px 20px #c4a35a4d}.btn-primary:hover{background:var(--color-champagne-light);transform:translateY(-2px);box-shadow:0 8px 30px #c4a35a66}.btn-outline{border:1.5px solid var(--color-champagne);color:var(--color-champagne)}.btn-outline:hover{background:var(--color-champagne);color:#fff}.btn-white{color:var(--color-carbon);background:#fff}.btn-white:hover{background:var(--color-marble-warm);transform:translateY(-2px)}.btn-dark{background:var(--color-carbon);color:#fff}.btn-dark:hover{background:var(--color-carbon-light)}.btn-icon{transition:transform var(--transition-fast)}.btn:hover .btn-icon{transform:translate(4px)}.navbar{z-index:100;height:80px;padding:0 var(--space-2xl);transition:all var(--transition-slow);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(20px)saturate(180%);background:#1a1a2eeb;box-shadow:0 1px #ffffff0d}.navbar-logo{font-family:var(--font-serif);color:#fff;letter-spacing:-.02em;align-items:center;gap:var(--space-sm);font-size:1.5rem;font-weight:400;display:flex}.navbar-logo img,.navbar-logo-img{object-fit:contain;filter:brightness();max-width:200px;height:30px;transition:filter .3s}.navbar-logo:hover img,.navbar-logo:hover .navbar-logo-img{filter:brightness(1.15)}.navbar-links{align-items:center;gap:var(--space-2xl);list-style:none;display:flex}.navbar-link{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:#ffffffb3;transition:color var(--transition-fast);padding:var(--space-xs) 0;font-size:.6875rem;font-weight:600;position:relative}.navbar-link:after{content:"";background:var(--color-champagne);width:0;height:1px;transition:width var(--transition-base);position:absolute;bottom:-2px;left:0}.navbar-link:hover,.navbar-link.active{color:#fff}.navbar-link:hover:after,.navbar-link.active:after{width:100%}.navbar-cta{padding:var(--space-sm) var(--space-lg);font-size:.625rem}.navbar-mobile-toggle{color:#fff;padding:var(--space-sm);display:none}.mobile-menu{background:var(--color-carbon);z-index:99;justify-content:center;align-items:center;gap:var(--space-2xl);flex-direction:column;display:none;position:fixed;inset:0}.mobile-menu.open{display:flex}.mobile-menu-link{font-family:var(--font-serif);color:#fff;opacity:0;font-size:2rem;animation:.4s forwards fadeSlideUp}.hero{background:var(--color-carbon);align-items:center;height:100vh;min-height:700px;display:flex;position:relative;overflow:hidden}.hero-media{z-index:1;position:absolute;inset:0}.hero-media img,.hero-media video{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1.2s,transform 6s;position:absolute;inset:0;transform:scale(1.05)}.hero-media img.hero-slide.active,.hero-media video.active{opacity:.45;transform:scale(1)}.hero-overlay{z-index:2;background:linear-gradient(135deg,#1a1a2ed9 0%,#1a1a2e66 50%,#1a1a2e33 100%);position:absolute;inset:0}.hero-overlay:after{content:"";background:linear-gradient(to top, var(--color-marble), transparent);height:200px;position:absolute;bottom:0;left:0;right:0}.hero-content{z-index:3;max-width:var(--container-max,1200px);width:90%;margin:0 auto;position:relative}.hero-label{font-family:var(--font-sans);letter-spacing:.35em;text-transform:uppercase;color:var(--color-champagne);margin-bottom:var(--space-lg);font-size:.5625rem;font-weight:700;animation:.8s .2s both fadeSlideUp;display:inline-block}.hero-title{color:#fff;margin-bottom:var(--space-lg);animation:.8s .4s both fadeSlideUp}.hero-subtitle{color:#ffffffa6;max-width:540px;margin-bottom:var(--space-2xl);font-size:1.125rem;line-height:1.7;animation:.8s .6s both fadeSlideUp}.hero-actions{gap:var(--space-md);flex-wrap:wrap;animation:.8s .8s both fadeSlideUp;display:flex}.hero-scroll-indicator{z-index:3;align-items:center;gap:var(--space-sm);color:#fff6;flex-direction:column;animation:2s infinite bounce;display:flex;position:absolute;bottom:80px;left:50%;transform:translate(-50%)}.navbar-mega-trigger{position:relative}.mega-menu{pointer-events:none;opacity:0;visibility:hidden;z-index:1000;width:720px;padding-top:12px;transition:opacity .35s cubic-bezier(.16,1,.3,1),visibility .35s;position:absolute;top:100%;left:50%;transform:translate(-50%)}.mega-menu.open{pointer-events:auto;opacity:1;visibility:visible}.mega-menu-inner{-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-lg);padding:var(--space-xl);background:#1a1a2ef7;border:1px solid #ffffff0f;box-shadow:0 25px 60px #0006,0 0 0 1px #c4a35a14}.mega-menu-header{margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:flex-end;display:flex}.mega-menu-viewall{color:var(--color-champagne);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-full);border:1px solid #c4a35a4d;align-items:center;gap:6px;padding:8px 16px;font-size:.75rem;font-weight:600;transition:all .3s;display:flex}.mega-menu-viewall:hover{background:var(--color-champagne);color:#fff;border-color:var(--color-champagne)}.mega-menu-grid{gap:var(--space-md);grid-template-columns:repeat(4,1fr);display:grid}.mega-menu-item{gap:var(--space-sm);border-radius:var(--radius-md);padding:var(--space-sm);text-align:left;flex-direction:column;transition:all .3s cubic-bezier(.16,1,.3,1);animation:.4s both megaFadeIn;display:flex}@keyframes megaFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mega-menu-item:hover{background:#ffffff0f}.mega-menu-item-img{aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid #ffffff0d;width:100%;overflow:hidden}.mega-menu-item-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1)}.mega-menu-item:hover .mega-menu-item-img img{transform:scale(1.12)}.mega-menu-item-info{flex-direction:column;gap:2px;display:flex}.mega-menu-item-name{font-family:var(--font-serif);color:#fff;font-size:.8125rem;transition:color .25s}.mega-menu-item:hover .mega-menu-item-name{color:var(--color-champagne)}.mega-menu-item-type{text-transform:uppercase;letter-spacing:.12em;color:#ffffff59;font-size:.5625rem;font-weight:600}.material-grid{gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.material-card{border-radius:var(--radius-lg);cursor:pointer;border:1px solid #0000000a;transition:transform .6s cubic-bezier(.16,1,.3,1),box-shadow .6s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.material-card:hover{transform:translateY(-10px)scale(1.015);box-shadow:0 20px 50px #0000001f,0 0 0 1px #c4a35a26,0 0 30px #c4a35a14}.material-card-image{aspect-ratio:4/5;background:var(--color-marble-warm);position:relative;overflow:hidden}.material-card-image:after{content:"";z-index:3;pointer-events:none;background:linear-gradient(105deg,#0000 40%,#fff6 45%,#fff9 50%,#fff6 55%,#0000 60%);transition:none;position:absolute;inset:0;transform:translate(-150%)}.material-card:hover .material-card-image:after{transition:transform .9s cubic-bezier(.16,1,.3,1);transform:translate(150%)}.material-card-image img{object-fit:cover;filter:saturate(.95)brightness();width:100%;height:100%;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .6s}.material-card:hover .material-card-image img{filter:saturate(1.1)brightness(1.02);transform:scale(1.1)}.material-card-overlay{opacity:0;z-index:2;pointer-events:none;background:#1a1a2e59;justify-content:center;align-items:center;height:100%;transition:opacity .4s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:0;left:0;right:0}.material-card:hover .material-card-overlay{opacity:1}.material-card-overlay span{letter-spacing:.08em;text-transform:uppercase;opacity:0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;border-radius:100px;padding:10px 22px;font-size:.75rem;font-weight:700;transition:transform .4s cubic-bezier(.16,1,.3,1) .1s,opacity .3s .1s;transform:translateY(8px);color:var(--color-stone-dark,#1a1a2e)!important}.material-card:hover .material-card-overlay span{opacity:1;transform:translateY(0)}.material-card-info{padding:var(--space-lg) var(--space-md);transition:background .3s}.material-card:hover .material-card-info{background:#c4a35a08}.material-card-name{font-family:var(--font-serif);margin-bottom:var(--space-xs);font-size:1.25rem;transition:color .3s,transform .4s cubic-bezier(.16,1,.3,1)}.material-card:hover .material-card-name{color:var(--color-champagne);transform:translate(4px)}.material-card-type{text-transform:uppercase;letter-spacing:.15em;color:var(--color-stone-gray);font-size:.625rem;font-weight:700;transition:color .3s,transform .4s cubic-bezier(.16,1,.3,1) 50ms}.material-card:hover .material-card-type{color:var(--color-champagne-dark);transform:translate(4px)}.material-card-badge{top:var(--space-md);left:var(--space-md);-webkit-backdrop-filter:blur(12px);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.1em;color:var(--color-carbon);z-index:4;background:#ffffffeb;border:1px solid #ffffff80;font-size:.5625rem;font-weight:800;transition:all .4s cubic-bezier(.16,1,.3,1);position:absolute}.material-card:hover .material-card-badge{color:#fff;background:#c4a35af2;border-color:#c4a35a80;box-shadow:0 4px 15px #c4a35a4d}.finish-selector{gap:var(--space-sm);flex-wrap:wrap;display:flex}.finish-option{padding:var(--space-sm) var(--space-lg);border:1.5px solid var(--color-stone-light);border-radius:var(--radius-full);color:var(--color-stone-gray);transition:all var(--transition-fast);font-size:.75rem;font-weight:600}.finish-option:hover{border-color:var(--color-champagne);color:var(--color-champagne)}.finish-option.active{border-color:var(--color-champagne);background:var(--color-champagne);color:#fff}.projects-grid{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.project-card{border-radius:var(--radius-md);cursor:pointer;aspect-ratio:1;position:relative;overflow:hidden}.project-card:first-child{aspect-ratio:auto;grid-area:span 2/span 2}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-elegant)}.project-card:hover img{transform:scale(1.05)}.project-card-info{padding:var(--space-xl);opacity:0;transition:opacity var(--transition-base);background:linear-gradient(#0000 40%,#1a1a2ecc 100%);flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.project-card:hover .project-card-info{opacity:1}.project-card-title{font-family:var(--font-serif);color:#fff;margin-bottom:var(--space-xs);font-size:1.25rem}.project-card-material{text-transform:uppercase;letter-spacing:.15em;color:var(--color-champagne);font-size:.625rem;font-weight:700}.quote-cart-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200;background:#1a1a2e99;justify-content:flex-end;display:flex;position:fixed;inset:0}.quote-cart-panel{background:#fff;flex-direction:column;width:480px;max-width:100%;height:100%;animation:.4s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;box-shadow:-20px 0 60px #00000026}.quote-cart-header{padding:var(--space-xl) var(--space-xl);border-bottom:1px solid #0000000f;justify-content:space-between;align-items:center;display:flex}.quote-cart-items{padding:var(--space-md);flex:1;overflow-y:auto}.quote-cart-item{gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);transition:background var(--transition-fast);display:flex}.quote-cart-item:hover{background:var(--color-marble-warm)}.quote-cart-item-image{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:64px;height:64px}.quote-cart-footer{padding:var(--space-xl);border-top:1px solid #0000000f}.contact-grid{gap:var(--space-3xl);grid-template-columns:1fr 1fr;display:grid}.contact-form{gap:var(--space-md);flex-direction:column;display:flex}.form-input,.form-textarea{font-family:var(--font-sans);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);transition:border-color var(--transition-fast);background:#fff;border:1.5px solid #00000014;outline:none;font-size:.875rem}.form-input:focus,.form-textarea:focus{border-color:var(--color-champagne)}.form-textarea{resize:vertical;min-height:140px}.footer{background:var(--color-carbon);color:#ffffff80;padding:var(--space-4xl) 0 var(--space-xl)}.footer-grid{gap:var(--space-3xl);padding-bottom:var(--space-3xl);margin-bottom:var(--space-xl);border-bottom:1px solid #ffffff0f;grid-template-columns:2fr 1fr 1fr 1fr;display:grid}.footer-brand{font-family:var(--font-serif);color:#fff;margin-bottom:var(--space-md);font-size:1.5rem}.footer-heading{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.2em;color:#fff;margin-bottom:var(--space-lg);font-size:.625rem;font-weight:700}.footer-link{margin-bottom:var(--space-sm);color:#ffffff80;transition:color var(--transition-fast);font-size:.875rem;text-decoration:none;display:block}.footer-link:hover{color:var(--color-champagne)}.footer-bottom{justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.footer-social-icon{color:#ffffff80;background:#ffffff0f;border:1px solid #ffffff0f;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .3s;display:flex}.footer-social-icon:hover{background:var(--color-champagne);color:#fff;border-color:var(--color-champagne);transform:translateY(-2px)}.footer-policy-link{color:#ffffff59;font-size:.6875rem;text-decoration:none;transition:color .25s}.footer-policy-link:hover{color:var(--color-champagne)}.footer-admin-link{text-transform:uppercase;letter-spacing:.1em;color:#fff3;border-radius:var(--radius-full);border:1px solid #ffffff14;align-items:center;gap:4px;padding:4px 10px;font-size:.625rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex}.footer-admin-link:hover{color:var(--color-champagne);background:#c4a35a0f;border-color:#c4a35a4d}.whatsapp-btn{bottom:var(--space-xl);right:var(--space-xl);z-index:90;color:#fff;width:56px;height:56px;transition:transform var(--transition-fast);background:#25d366;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;box-shadow:0 4px 20px #25d36666}.whatsapp-btn:hover{transform:scale(1.1)}.stats-grid{gap:var(--space-xl);text-align:center;grid-template-columns:repeat(4,1fr);display:grid}.stat-number{font-family:var(--font-serif);color:var(--color-champagne);margin-bottom:var(--space-xs);font-size:3rem;font-weight:300;line-height:1}.stat-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-stone-gray);font-size:.6875rem;font-weight:600}.filter-bar{gap:var(--space-sm);margin-bottom:var(--space-2xl);flex-wrap:wrap;display:flex}.filter-chip{padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-full);color:var(--color-stone-gray);transition:all var(--transition-fast);background:#fff;border:1.5px solid #00000014;font-size:.75rem;font-weight:600}.filter-chip:hover{border-color:var(--color-champagne);color:var(--color-champagne)}.filter-chip.active{background:var(--color-carbon);border-color:var(--color-carbon);color:#fff}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes bounce{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(8px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:.6s both fadeIn}.animate-slide-up{animation:.6s both fadeSlideUp}@media (width<=1024px){.footer-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}.stats-grid,.projects-grid{grid-template-columns:repeat(2,1fr)}.project-card:first-child{grid-area:span 1/span 1}}.detail-grid{gap:var(--space-3xl);grid-template-columns:1.2fr 1fr;align-items:start;display:grid}.about-grid{gap:var(--space-3xl);align-items:center;display:grid}@media (width<=768px){:root{--space-xl:1.5rem;--space-2xl:2rem;--space-3xl:2.5rem;--space-4xl:3rem;--space-5xl:4rem}.navbar-links{display:none}.navbar-mobile-toggle{display:block}.hero{min-height:600px}.section{padding:var(--space-3xl) 0}.heading-hero{font-size:2.5rem}.text-paragraph{max-width:100%!important}.material-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr)}.detail-grid,.about-grid{grid-template-columns:1fr!important}.projects-grid{grid-template-columns:1fr}.project-card:first-child{grid-area:span 1/span 1}.footer-grid{gap:var(--space-xl);grid-template-columns:1fr}.footer-bottom{gap:var(--space-sm);flex-direction:column}.footer-logo-img{height:20px!important}.quote-cart-panel{width:100%;height:100dvh!important;max-height:100dvh!important}}@media (width<=480px){.material-grid{grid-template-columns:1fr}.stats-grid{gap:var(--space-md);grid-template-columns:1fr 1fr}}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}.text-left{text-align:left}.mx-auto{margin-left:auto;margin-right:auto}.relative{position:relative}.overflow-hidden{overflow:hidden}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}
