*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--gold:#c5973a;--gold-light:#d4af5a;--turquoise:#00aeae;--turquoise-light:#00cfcf;--black:#0a0a0a;--dark:#111;--dark-2:#1c1c1c;--off-white:#f8f5f0;--white:#fff;--text:#2a2a2a;--text-mid:#555;--text-light:#888;--border:#c5973a40;color:var(--text);background:var(--black);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-family:Montserrat,system-ui,sans-serif;font-size:16px;line-height:1.6}body{overflow-x:hidden}#root{width:100%;min-height:100svh}h1,h2,h3,h4{font-family:Cormorant Garamond,Georgia,serif;font-weight:500;line-height:1.2}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.navbar{z-index:1000;padding:28px 48px;transition:background .4s,padding .4s,box-shadow .4s;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(12px);background:#0a0a0af5;padding:18px 48px;box-shadow:0 2px 24px #00000080}.nav-container{justify-content:space-between;align-items:center;max-width:1280px;margin:0 auto;display:flex}.nav-logo{letter-spacing:6px;color:var(--gold);cursor:pointer;white-space:nowrap;font-family:Cormorant Garamond,Georgia,serif;font-size:26px;font-weight:500;transition:color .3s}.nav-logo:hover{color:var(--gold-light)}.nav-links{align-items:center;gap:40px;list-style:none;display:flex}.nav-links button{letter-spacing:2.5px;text-transform:uppercase;color:#ffffffd9;padding:4px 0;font-family:Montserrat,sans-serif;font-size:11px;font-weight:600;transition:color .3s;position:relative}.nav-links button:after{content:"";background:var(--gold);height:1px;transition:transform .3s;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.nav-links button:hover{color:var(--gold)}.nav-links button:hover:after{transform:scaleX(1)}.hamburger{z-index:1001;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--white);width:26px;height:2px;transition:transform .3s,opacity .3s;display:block}@media (width<=768px){.navbar{padding:20px 24px}.navbar.scrolled{padding:14px 24px}.hamburger{display:flex}.nav-links{background:#0a0a0afa;flex-direction:column;justify-content:center;gap:36px;transition:transform .4s;position:fixed;inset:0;transform:translate(100%)}.nav-links.open{transform:translate(0)}.nav-links button{letter-spacing:3px;font-size:13px}}.section-label{letter-spacing:4px;text-transform:uppercase;color:var(--turquoise);margin-bottom:16px;font-size:10px;font-weight:700;display:inline-block}.section-header{text-align:center;max-width:640px;margin:0 auto 64px}.section-header h2{color:var(--white);margin-bottom:16px;font-size:clamp(36px,5vw,54px)}.section-header p{color:var(--text-light);letter-spacing:.3px;font-size:15px;font-weight:300}.btn-primary{border:1px solid var(--gold);color:var(--white);letter-spacing:3px;text-transform:uppercase;cursor:pointer;background:0 0;padding:16px 42px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:600;text-decoration:none;transition:background .35s,color .35s;display:inline-block}.btn-primary:hover{background:var(--gold);color:var(--black)}.hero{justify-content:center;align-items:center;height:100svh;min-height:600px;display:flex;position:relative;overflow:hidden}.hero-slideshow{z-index:0;position:absolute;inset:0}.hero-slide{opacity:0;background-position:50%;background-size:cover;transition:opacity 1.2s ease-in-out;position:absolute;inset:0}.hero-slide.active{opacity:1}.hero-overlay{z-index:1;background:linear-gradient(#0a0a0a80 0%,#0a0a0a99 60%,#0a0a0ae0 100%);position:absolute;inset:0}.hero-content{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:20px;padding:0 24px;display:flex;position:relative}.hero-eyebrow{letter-spacing:5px;text-transform:uppercase;color:var(--turquoise);font-size:10px;font-weight:600}.hero-content h1{letter-spacing:16px;color:var(--white);text-indent:16px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(64px,12vw,130px);font-weight:300;line-height:1}.hero-tagline{letter-spacing:3.5px;text-transform:uppercase;color:#ffffffa6;margin-bottom:12px;font-size:13px;font-weight:300}.hero-scroll{z-index:2;color:#fff6;letter-spacing:3px;text-transform:uppercase;flex-direction:column;align-items:center;gap:10px;font-size:9px;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.hero-scroll-line{background:linear-gradient(to bottom, var(--gold), transparent);width:1px;height:48px;animation:2s ease-in-out infinite scrollPulse}@keyframes scrollPulse{0%,to{opacity:.4}50%{opacity:1}}.about{background:var(--off-white);padding:120px 48px}.about-container{grid-template-columns:1fr 1fr;align-items:center;gap:80px;max-width:1200px;margin:0 auto;display:grid}.about-text .section-label{margin-bottom:16px}.about-text h2{color:var(--dark);margin-bottom:28px;font-size:clamp(36px,4vw,52px);line-height:1.15}.about-text p{color:var(--text-mid);margin-bottom:20px;font-size:15px;font-weight:300;line-height:1.9}.about-details{border-top:1px solid #c5973a40;flex-direction:column;gap:14px;margin-top:36px;padding-top:36px;display:flex}.detail{color:var(--text);align-items:center;gap:14px;font-size:13px;font-weight:400;display:flex}.detail-icon{text-align:center;flex-shrink:0;width:24px;font-size:16px}.about-image{padding-bottom:16px;padding-right:16px;position:relative}.about-image img{object-fit:cover;z-index:1;width:100%;height:560px;position:relative}.about-image:after{content:"";border:1px solid var(--gold);z-index:0;position:absolute;inset:16px 0 0 16px}@media (width<=900px){.about{padding:80px 24px}.about-container{grid-template-columns:1fr;gap:48px}.about-image:after{display:none}.about-image{padding:0}.about-image img{height:380px}}.services{background:var(--dark);padding:120px 48px}.services-grid{grid-template-columns:repeat(4,1fr);gap:2px;max-width:1200px;margin:0 auto;display:grid}.service-card{background:var(--dark-2);flex-direction:column;gap:16px;padding:48px 36px;transition:background .35s;display:flex;position:relative;overflow:hidden}.service-card:before{content:"";background:var(--turquoise);height:2px;transition:transform .35s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.service-card:hover{background:#222}.service-card:hover:before{transform:scaleX(1)}.service-icon{margin-bottom:8px;font-size:32px}.service-card h3{color:var(--gold);font-size:26px;font-weight:500}.service-card p{color:var(--text-light);font-size:13px;font-weight:300;line-height:1.8}@media (width<=900px){.services{padding:80px 24px}.services-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.services-grid{grid-template-columns:1fr}}.gallery{background:var(--black);padding:120px 48px}.gallery-grid{columns:4;column-gap:8px;max-width:1280px;margin:0 auto}.gallery-item{break-inside:avoid;cursor:pointer;margin-bottom:8px;position:relative;overflow:hidden}.gallery-item img{width:100%;transition:transform .6s;display:block}.gallery-overlay{background:#c5973a00;justify-content:center;align-items:center;transition:background .4s;display:flex;position:absolute;inset:0}.gallery-overlay:after{content:"+";color:#fff;opacity:0;font-size:32px;font-weight:200;transition:opacity .4s}.gallery-item:hover img{transform:scale(1.05)}.gallery-item:hover .gallery-overlay{background:#00aeae4d}.gallery-item:hover .gallery-overlay:after{opacity:1}.lightbox{z-index:2000;cursor:pointer;background:#000000f2;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;cursor:default;max-width:90vw;max-height:90vh}.lightbox-close{color:#fff9;cursor:pointer;font-size:40px;font-weight:200;line-height:1;transition:color .2s;position:absolute;top:24px;right:32px}.lightbox-close:hover{color:var(--gold)}@media (width<=1100px){.gallery-grid{columns:3}}@media (width<=768px){.gallery{padding:80px 16px}.gallery-grid{columns:2}}@media (width<=480px){.gallery-grid{columns:2;column-gap:4px}.gallery-item{margin-bottom:4px}}.contact{background:var(--dark);padding:120px 48px}.contact-cards{grid-template-columns:repeat(4,1fr);gap:24px;max-width:1100px;margin:0 auto;display:grid}.contact-card{text-align:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:2px;padding:40px 32px;transition:border-color .3s,background .3s}.contact-card:hover{border-color:var(--gold);background:#ffffff12}.contact-card-icon{margin-bottom:20px;font-size:28px}.contact-card strong{letter-spacing:2.5px;text-transform:uppercase;color:var(--turquoise);margin-bottom:12px;font-size:10px;font-weight:700;display:block}.contact-card p{color:#ffffffa6;font-size:14px;font-weight:300;line-height:1.8}.contact-card a{color:#ffffffa6;transition:color .3s}.contact-card a:hover{color:var(--gold)}.contact-form{flex-direction:column;gap:16px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form input,.contact-form select,.contact-form textarea{width:100%;color:var(--white);appearance:none;background:#ffffff0d;border:1px solid #ffffff1a;outline:none;padding:14px 18px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:300;transition:border-color .3s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#ffffff4d}.contact-form select{color:#ffffff80}.contact-form select option{background:var(--dark-2);color:var(--white)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--turquoise)}.contact-form textarea{resize:vertical;min-height:130px}.contact-form .btn-primary{align-self:flex-start;margin-top:8px}.form-success{text-align:center;border:1px solid #c5973a40;padding:60px 40px}.success-icon{border:2px solid var(--turquoise);width:64px;height:64px;color:var(--turquoise);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;font-size:28px;display:flex}.form-success h3{color:var(--gold);margin-bottom:12px;font-size:32px}.form-success p{color:var(--text-light);font-size:14px;font-weight:300}@media (width<=900px){.contact{padding:80px 24px}.contact-cards{grid-template-columns:repeat(2,1fr)}}@media (width<=500px){.contact-cards{grid-template-columns:1fr}}.footer{background:var(--black);text-align:center;border-top:1px solid #c5973a26;padding:56px 48px}.footer-logo{letter-spacing:8px;color:var(--gold);margin-bottom:8px;font-family:Cormorant Garamond,Georgia,serif;font-size:28px;font-weight:400}.footer-tagline{letter-spacing:3px;text-transform:uppercase;color:var(--turquoise);margin-bottom:20px;font-size:11px;font-weight:300}.footer p{color:#ffffff4d;letter-spacing:.5px;font-size:12px;font-weight:300;line-height:2.2}
