@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Montserrat:wght@200;300;400;500;600&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--gold:#c9a96e;--gold-light:#e0c898;--dark:#0d0d0d;--dark2:#111;--dark3:#181818;--dark4:#1e1e1e;--cream:#f5ead8;--cream2:#ede0c8;--text-mid:#aaa;--text-dim:#e7e7e7;--white:#fff;--transition:.4s cubic-bezier(.4, 0, .2, 1)}html{scroll-behavior:smooth;font-size:16px}body{background:var(--dark);color:var(--cream);font-family:Montserrat,sans-serif;font-weight:300;line-height:1.7;overflow-x:hidden}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--dark)}::-webkit-scrollbar-thumb{background:var(--gold);border-radius:2px}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}ul{list-style:none}.page-wrap{min-height:100vh;padding-top:75px}.container{max-width:1280px;margin:0 auto;padding:0 60px}@media (width<=768px){.container{padding:0 24px}}.serif{font-family:Cormorant Garamond,serif}.label{letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;font-size:.6rem;font-weight:500;display:inline-block}.section-title{color:#000;font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:300;line-height:1.15}.section-titles{color:#fff;font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:300;line-height:1.15}.section-title em,.section-titles em{color:var(--gold);font-style:italic}.section-body{color:#000;max-width:560px;margin-top:16px;font-size:.9rem;line-height:1.9}.gold-bar{background:var(--gold);width:48px;height:1px;margin:20px 0}.btn{letter-spacing:.18em;text-transform:uppercase;transition:all var(--transition);align-items:center;gap:10px;padding:13px 38px;font-family:Montserrat,sans-serif;font-size:.68rem;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn-gold{border:1px solid var(--gold);color:var(--gold)}.btn-gold:before{content:"";background:var(--gold);transition:transform var(--transition);position:absolute;inset:0;transform:translate(-101%)}.btn-gold:hover:before{transform:translate(0)}.btn-gold:hover{color:var(--dark)}.btn-gold span{z-index:1;position:relative}.btn-white{color:var(--white);border:1px solid #ffffff4d}.btn-white:hover{background:#ffffff14}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(36px)}.reveal-left{opacity:0;transition:opacity .8s,transform .8s;transform:translate(-36px)}.reveal-right{opacity:0;transition:opacity .8s,transform .8s;transform:translate(36px)}.reveal.in,.reveal-left.in,.reveal-right.in{opacity:1;transform:none}.divider{background:#c9a96e1f;width:100%;height:1px}.page-hero{text-align:center;justify-content:center;align-items:center;height:55vh;min-height:340px;display:flex;position:relative;overflow:hidden}.page-hero-bg{filter:brightness(.55);background-position:50%;background-size:cover;transition:transform 6s;position:absolute;inset:0}.page-hero:hover .page-hero-bg{transform:scale(1.04)}.page-hero-overlay{position:absolute;inset:0}.page-hero-content{z-index:2;position:relative}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:3px;display:grid}@media (width<=900px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.gallery-grid{grid-template-columns:1fr}}.gallery-item{aspect-ratio:4/3;cursor:pointer;background:var(--dark3);position:relative;overflow:hidden}.gallery-item img{object-fit:cover;filter:brightness(.85)saturate(.9);width:100%;height:100%;transition:transform .7s cubic-bezier(.4,0,.2,1),filter .4s}.gallery-item:hover img{filter:brightness()saturate();transform:scale(1.06)}.gallery-item-overlay{transition:background var(--transition);background:#0d0d0d00;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.gallery-item:hover .gallery-item-overlay{background:#0d0d0d4d}.gallery-zoom{border:1px solid var(--gold);width:48px;height:48px;color:var(--gold);opacity:0;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;transition:opacity .3s,transform .3s;display:flex;transform:scale(.7)}.gallery-item:hover .gallery-zoom{opacity:1;transform:scale(1)}.lightbox{z-index:9000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000f2;justify-content:center;align-items:center;animation:.25s lbIn;display:flex;position:fixed;inset:0}@keyframes lbIn{0%{opacity:0}to{opacity:1}}.lightbox img{object-fit:contain;border:1px solid #c9a96e26;max-width:90vw;max-height:88vh}.lb-close{color:var(--gold);cursor:pointer;transition:transform var(--transition);font-size:1.6rem;line-height:1;position:absolute;top:28px;right:36px}.lb-close:hover{transform:rotate(90deg)}.lb-arrow{color:var(--gold);cursor:pointer;transition:opacity var(--transition);padding:20px;font-size:2rem;position:absolute;top:50%;transform:translateY(-50%)}.lb-arrow:hover{opacity:.7}.lb-prev{left:16px}.lb-next{right:16px}.stats-bar{background:var(--dark2);border-top:1px solid #c9a96e1a;border-bottom:1px solid #c9a96e1a;align-items:center;display:flex}.stat-cell{text-align:center;border-right:1px solid #ffffff1a;flex:1;padding:40px 20px}.stat-cell:last-child{border-right:none}.stat-n{color:var(--gold);font-family:Cormorant Garamond,serif;font-size:clamp(2.8rem,5vw,4.8rem);font-weight:300;line-height:1}.stat-l{letter-spacing:.28em;text-transform:uppercase;color:var(--text-dim);margin-top:8px;font-size:.58rem}.contact-card{transition:border-color var(--transition), background var(--transition);background:#fff;border:1px solid #c9a96e26;padding:36px}.contact-card:hover{background:#c9a96e08;border-color:#c9a96e59}.contact-card-title{color:var(--gold);border-bottom:1px solid #c9a96e1f;margin-bottom:20px;padding-bottom:14px;font-family:Cormorant Garamond,serif;font-size:1.4rem;font-weight:300}.contact-row{color:#555;gap:14px;margin-bottom:10px;font-size:.8rem;line-height:1.7;display:flex}.contact-row-label{color:var(--gold);letter-spacing:.15em;text-transform:uppercase;flex-shrink:0;width:56px;padding-top:2px;font-size:.6rem}.marquee-wrap{white-space:nowrap;padding:36px 0;overflow:hidden}.marquee-track{gap:48px;animation:28s linear infinite marquee;display:inline-flex}.marquee-wrap:hover .marquee-track{animation-play-state:paused}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee-word{color:#1e1e1e;flex-shrink:0;font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4vw,3rem);font-style:italic;font-weight:300}.marquee-dot{color:#705b3540;flex-shrink:0;align-self:center;font-size:.6rem}.form-row{margin-bottom:28px}.form-label{letter-spacing:.22em;text-transform:uppercase;color:#000;margin-bottom:8px;font-size:.6rem;display:block}.form-input{color:#111;width:100%;transition:border-color var(--transition);background:0 0;border:none;border-bottom:1px solid #c9a96e4d;outline:none;padding:10px 0;font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:300}.form-input:focus{border-color:var(--gold)}.form-input::placeholder{color:#aaa}textarea.form-input{resize:none;min-height:90px}@media (width<=920px){.nav-desktop{display:none!important}.nav-mobile-toggle{display:flex!important}}@media (width<=640px){.stats-bar{flex-wrap:wrap}.stat-cell{border-bottom:1px solid #c9a96e1a;border-right:none;flex:0 0 50%;min-width:50%;padding:28px 16px}.stat-cell:nth-child(odd){border-right:1px solid #c9a96e1a}.stat-cell:nth-child(3),.stat-cell:nth-child(4){border-bottom:none}}@media (width<=700px){.hero-bottom-nav{flex-wrap:wrap;height:auto!important}.hero-nav-tab{min-width:33.333%;letter-spacing:.06em!important;flex:0 0 33.333%!important;height:52px!important;font-size:.52rem!important}.hero-nav-tab:nth-child(4),.hero-nav-tab:nth-child(5){min-width:50%;flex:0 0 50%!important}}.products-scroll-wrap{overflow:hidden}.products-scroll-track{gap:14px;width:max-content;padding:0 14px;animation:32s linear infinite products-scroll;display:inline-flex}.products-scroll-wrap:hover .products-scroll-track{animation-play-state:paused}@keyframes products-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (width<=600px){.marquee-word{font-size:clamp(1.2rem,6vw,2rem)!important}.marquee-wrap{padding:22px 0}.page-wrap{padding-top:60px}.container{padding:0 18px}}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr!important;gap:36px!important;padding:36px 32px 28px!important}.footer-bottom{padding:16px 32px!important}}@media (width<=560px){.footer-grid{grid-template-columns:1fr!important;gap:32px!important;padding:32px 20px 24px!important}.footer-bottom{text-align:center;flex-direction:column!important;padding:16px 20px!important}}@media (width<=600px){.page-hero{height:auto;min-height:0;aspect-ratio:var(--hero-ratio,1600 / 700)}.page-hero .label{margin-bottom:6px}.page-hero-content>div{margin-top:10px!important}}@media (width<=900px){.two-col{grid-template-columns:1fr!important;gap:40px!important}.order-img{order:-1!important}.three-col{grid-template-columns:1fr 1fr!important}.four-col{grid-template-columns:repeat(2,1fr)!important}}@media (width<=560px){.three-col,.four-col,.covid-bar{grid-template-columns:1fr!important}}@media (width<=900px){.contact-grid{grid-template-columns:1fr!important}.ct-grid{grid-template-columns:1fr!important;gap:40px!important}.ct-stats-grid{grid-template-columns:1fr!important}.ct-stats-grid>div{border-bottom:1px solid #c9a96e1f;border-right:none!important;padding:28px 20px!important}.ct-stats-grid>div:last-child{border-bottom:none}.ct-ring{display:none}}@media (width<=768px){.proj-grid{grid-template-columns:1fr 1fr!important}}@media (width<=480px){.proj-grid{grid-template-columns:1fr!important}.nav-mobile-panel{padding:24px 20px!important}}@media (width<=600px){.products-cert-bar{gap:20px!important;padding:32px 0!important}}@media (width<=768px){section{padding-top:60px!important;padding-bottom:60px!important}.page-hero+*+section,.page-hero+section{padding-top:60px!important}}@media (width<=480px){section{padding-top:48px!important;padding-bottom:48px!important}.gold-bar{margin:16px 0}.section-title{font-size:clamp(1.6rem,7vw,2.4rem)!important}.label{font-size:.55rem}}
