.cursor{width:8px;height:8px;background:var(--gold);border-radius:50%;z-index:9999;transition:transform .1s,width .3s,height .3s,background .3s}.cursor,.cursor-ring{position:fixed;pointer-events:none;transform:translate(-50%,-50%)}.cursor-ring{width:36px;height:36px;border:1px solid var(--gold);border-radius:50%;z-index:9998;transition:transform .12s ease,width .3s,height .3s,opacity .3s;opacity:.6}.brand-logo{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}.brand-icon{flex-shrink:0}.brand-text{display:flex;flex-direction:column;align-items:center;gap:3px}.brand-name{font-family:var(--font-body);font-size:1.05rem;font-weight:100;letter-spacing:.28em;text-transform:uppercase;line-height:1;white-space:nowrap}.brand-builders,.brand-concept,.brand-name{color:var(--white)}.brand-builders{font-weight:100;letter-spacing:.28em}.brand-inc{color:var(--white)}.brand-tagline{font-family:var(--font-body);font-size:.5rem;font-weight:400;letter-spacing:.35em;text-transform:uppercase;color:#8ab5c0;line-height:1}.brand-dot{color:#8ab5c0;margin:0 2px}.brand-logo--small .brand-name{font-size:.85rem;letter-spacing:.22em}.brand-logo--small .brand-tagline{font-size:.42rem;letter-spacing:.3em}@media (max-width:768px){.brand-name{font-size:.8rem;letter-spacing:.18em}.brand-tagline{font-size:.4rem;letter-spacing:.25em}.brand-logo--small .brand-name{font-size:.7rem}}@media (max-width:480px){.brand-name{font-size:.65rem;letter-spacing:.12em}.brand-tagline{font-size:.35rem}}.theme-toggle{display:flex;align-items:center;gap:2px;background:var(--toggle-bg);border:1px solid var(--border-gold);border-radius:20px;padding:4px;cursor:pointer;transition:border-color .3s,background .3s}.theme-toggle:hover{border-color:var(--gold)}.theme-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;color:var(--gray);transition:color .3s,background .3s}.theme-icon.active{background:var(--gold);color:var(--black)}nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:28px 60px;display:flex;justify-content:space-between;align-items:center;transition:background .5s,padding .5s}nav.scrolled{background:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:18px 60px;border-bottom:1px solid var(--border-gold)}.nav-logo-link{text-decoration:none;color:inherit}.nav-actions,.nav-logo-link{display:flex;align-items:center}.nav-actions{gap:24px}.nav-links{display:flex;gap:40px;list-style:none}.nav-links a{font-family:var(--font-body);font-size:.7rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--light-gray);text-decoration:none;transition:color .3s;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .3s}.nav-links a:hover{color:var(--gold)}.nav-links a:hover:after{transform:scaleX(1)}.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:8px;cursor:pointer;z-index:110}.nav-toggle span{display:block;width:24px;height:1.5px;background:var(--gold);transition:transform .3s,opacity .3s}.nav-toggle.open span:first-child{transform:rotate(45deg) translate(4px,4px)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}@media (max-width:1024px){nav{padding:22px 30px}nav.scrolled{padding:16px 30px}}@media (max-width:768px){nav{padding:16px 20px}nav.scrolled{padding:14px 20px}.nav-toggle{display:flex}.nav-links{position:fixed;top:0;right:0;width:280px;height:100vh;background:var(--nav-mobile-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;padding:100px 40px 40px;gap:28px;transform:translateX(100%);transition:transform .4s cubic-bezier(.25,.46,.45,.94);z-index:105;border-left:1px solid var(--border-gold)}.nav-links.open{transform:translateX(0)}.nav-links a{font-size:.8rem}}@media (max-width:480px){.nav-links{width:100%}}[data-theme=light] nav:not(.scrolled) .nav-links a{color:#f5f2ed}[data-theme=light] nav:not(.scrolled) .nav-links a:hover{color:#7c98aa}[data-theme=light] nav:not(.scrolled) .brand-builders,[data-theme=light] nav:not(.scrolled) .brand-concept,[data-theme=light] nav:not(.scrolled) .brand-inc,[data-theme=light] nav:not(.scrolled) .brand-name{color:#f5f2ed}[data-theme=light] nav:not(.scrolled) .theme-icon{color:#bbb}[data-theme=light] nav:not(.scrolled) .theme-icon.active{color:#080808}[data-theme=light] nav:not(.scrolled) .theme-toggle{border-color:rgba(255,255,255,.2)}.hero-stack{position:relative}.hero-slide{position:-webkit-sticky;position:sticky;top:0;height:100vh;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-slide-bg{position:absolute;inset:0;z-index:0}.hero-slide-bg img{width:100%;height:100%;object-fit:cover}.hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,8,.55) 0,rgba(8,8,8,.45) 40%,rgba(8,8,8,.8));z-index:1;pointer-events:none}.hero-slide:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:rgba(124,152,170,.12);z-index:3;opacity:0}.hero-slide:not(:first-child):before{opacity:1}.hero-slide-content{position:relative;z-index:2;text-align:center;padding:0 20px}.hero-slide:first-child .hero-slide-content{animation:fadeUp 1.4s ease both}.hero-eyebrow{font-family:var(--font-body);font-size:.65rem;font-weight:400;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);margin-bottom:24px;text-shadow:0 1px 8px rgba(0,0,0,.5)}.hero-slide:first-child .hero-eyebrow{animation:fadeUp 1.2s ease .2s both}.hero-title{font-family:var(--font-display);font-size:clamp(3.5rem,8vw,8rem);font-weight:300;line-height:1;color:var(--white);text-shadow:0 2px 20px rgba(0,0,0,.6),0 1px 4px rgba(0,0,0,.4)}.hero-slide:first-child .hero-title{animation:fadeUp 1.2s ease .4s both}.hero-title em{font-style:italic;color:var(--gold-light);display:block}.hero-sub{margin-top:28px;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--light-gray);text-shadow:0 1px 8px rgba(0,0,0,.5)}.hero-slide:first-child .hero-sub{animation:fadeUp 1.2s ease .6s both}.hero-cta{margin-top:50px;display:inline-block;padding:16px 48px;border:1px solid var(--gold);color:var(--gold);font-family:var(--font-body);font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;text-decoration:none;transition:background .4s,color .4s;animation:fadeUp 1.2s ease .8s both}.hero-cta:hover{background:var(--gold);color:var(--black)}.hero-trust{margin-top:40px;display:flex;justify-content:center;gap:32px;flex-wrap:wrap;animation:fadeUp 1.2s ease 1s both}.hero-trust-item{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gray);display:flex;align-items:center;gap:8px}.hero-trust-item strong{font-family:var(--font-display);font-size:1.2rem;font-weight:300;color:var(--gold)}.hero-scroll{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;z-index:2;animation:fadeIn 2s ease 1.5s both}.hero-scroll span{font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gray)}.scroll-line{width:1px;height:60px;background:linear-gradient(to bottom,var(--gold),transparent);animation:scrollPulse 2s ease-in-out infinite}.hero-slide-counter{position:absolute;bottom:44px;right:60px;z-index:2;font-family:var(--font-display);font-size:.75rem;letter-spacing:.15em;color:rgba(124,152,170,.4)}@media (max-width:768px){.hero-slide{height:100svh}.hero-title{font-size:clamp(2.5rem,10vw,4rem)}.hero-cta,.hero-sub{font-size:.65rem}.hero-cta{padding:14px 32px;margin-top:30px}.hero-trust{gap:20px;margin-top:28px}.hero-trust-item{font-size:.55rem}.hero-trust-item strong{font-size:1rem}.hero-slide-counter{right:20px;bottom:30px}}@media (max-width:480px){.hero-slide{height:70vh}.hero-eyebrow{font-size:.55rem;letter-spacing:.2em}.hero-title{font-size:2.2rem}}[data-theme=light] .hero-title{color:#f5f2ed}[data-theme=light] .hero-eyebrow{color:#7c98aa}[data-theme=light] .hero-sub{color:#bbb}[data-theme=light] .hero-trust-item{color:#999}[data-theme=light] .hero-trust-item strong{color:#7c98aa}[data-theme=light] .hero-scroll span{color:#999}[data-theme=light] .hero-cta{border-color:#7c98aa;color:#7c98aa}[data-theme=light] .hero-cta:hover{background:#7c98aa;color:#080808}[data-theme=light] .hero-title em{color:#9fb8c8}.stat-bar{background:var(--charcoal);border-top:1px solid var(--border-gold);border-bottom:1px solid var(--border-gold);padding:40px 60px;display:flex;justify-content:space-around;align-items:center;gap:20px}.stat{text-align:center}.stat-number{font-family:var(--font-display);font-size:3rem;font-weight:300;color:var(--gold);line-height:1}.stat-label{font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gray);margin-top:8px}.stat-divider{width:1px;height:60px;background:var(--border-gold)}@media (max-width:1024px){.stat-bar{padding:30px;gap:16px}.stat-number{font-size:2.2rem}.stat-label{font-size:.6rem}.stat-divider{height:40px}}@media (max-width:768px){.stat-bar{display:grid;grid-template-columns:1fr 1fr;padding:24px 20px;grid-gap:20px;gap:20px}.stat-divider{display:none}.stat-number{font-size:2rem}}@media (max-width:480px){.stat-bar{grid-template-columns:1fr}}#about{padding:140px 0;background:var(--dark)}.about-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:80px;gap:80px;align-items:center;margin-top:60px}.about-image-stack{position:relative}.about-img{border:1px solid var(--border-gold);overflow:hidden}.about-img img{width:100%;height:100%;object-fit:cover;display:block}.about-text p{font-size:.9rem;line-height:1.9;color:var(--light-gray);margin-bottom:24px}.about-text .lead{font-family:var(--font-display);font-size:1.4rem;font-weight:300;color:var(--white);line-height:1.5;margin-bottom:32px}.generation-badges{display:flex;gap:16px;margin-top:40px;flex-wrap:wrap}.badge{padding:10px 20px;border:1px solid var(--border-gold-strong);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}@media (max-width:1024px){#about{padding:100px 0}.about-grid{grid-template-columns:1fr;gap:40px}}@media (max-width:768px){#about{padding:80px 0}.about-grid{gap:30px}.about-text .lead{font-size:1.2rem}.generation-badges{gap:10px}.badge{padding:8px 14px;font-size:.6rem}}#timeline{padding:140px 0;background:var(--black)}.timeline-wrap{max-width:900px;margin:80px auto 0;position:relative}.timeline-line{position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--border-gold);transform:translateX(-50%)}.tl-row{display:grid;grid-template-columns:1fr 40px 1fr;grid-gap:0 30px;gap:0 30px;margin-bottom:60px;align-items:start}.tl-row.last{margin-bottom:0}.tl-left .tl-content{grid-column:1;text-align:right}.tl-left .tl-dot{grid-column:2}.tl-left .tl-spacer{grid-column:3}.tl-right .tl-spacer{grid-column:1}.tl-right .tl-dot{grid-column:2}.tl-right .tl-content{grid-column:3;text-align:left}.tl-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--gold);background:var(--black);margin:6px auto 0;position:relative;z-index:2;flex-shrink:0}.tl-dot.highlighted{border-color:var(--gold);background:var(--gold)}.tl-year{font-family:var(--font-display);font-size:2rem;font-weight:300;color:var(--gold);line-height:1;margin-bottom:8px}.tl-year.italic{color:var(--gold-light);font-style:italic}.tl-title{font-family:var(--font-display);font-size:1.25rem;font-weight:300;color:var(--white);margin-bottom:10px}.tl-body{font-size:.8rem;line-height:1.8;color:var(--light-gray)}@media (max-width:1024px){.tl-row{grid-template-columns:30px 1fr;gap:0 20px}.tl-left .tl-content,.tl-right .tl-content{grid-column:2;grid-row:1;text-align:left}.tl-left .tl-dot,.tl-right .tl-dot{grid-column:1;grid-row:1}.tl-spacer{display:none}.timeline-line{left:15px}}@media (max-width:768px){#timeline{padding:80px 0}.timeline-wrap{margin-top:50px}.tl-year{font-size:1.6rem}.tl-title{font-size:1.1rem}.tl-row{margin-bottom:40px}}.parallax-divider{height:60vh;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.parallax-bg{position:absolute;inset:-30%;background:linear-gradient(135deg,#15120a,#1e1a10 50%,#0d0c0a);background-size:cover;background-position:50%;will-change:transform}.parallax-bg:before{content:"";position:absolute;inset:0;background:url(/images/parallax-interior.jpg) 50%/cover no-repeat;opacity:.4}.parallax-bg:after{content:"";position:absolute;inset:0;background:rgba(8,8,8,.5)}.parallax-quote{position:relative;z-index:2;text-align:center;padding:0 40px}.parallax-quote blockquote{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,3.5rem);font-style:italic;font-weight:300;color:var(--white);line-height:1.3;max-width:900px}.parallax-quote cite{display:block;margin-top:20px;font-family:var(--font-body);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-style:normal}@media (max-width:768px){.parallax-divider{height:40vh}.parallax-quote blockquote{font-size:clamp(1.3rem,4vw,2rem)}}[data-theme=light] .parallax-bg{background:linear-gradient(135deg,#e8e2d6,#d9d0c0 50%,#ede8df)}[data-theme=light] .parallax-bg:before{opacity:.2}[data-theme=light] .parallax-bg:after{background:rgba(245,242,237,.6)}[data-theme=light] .parallax-quote blockquote{color:#1a1a1a}[data-theme=light] .parallax-quote cite{color:#4a7089}#portfolio{padding-top:140px;background:var(--black)}.portfolio-intro{padding:0 0 60px}.portfolio-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px}.portfolio-header-desc{max-width:300px;font-size:.8rem;color:var(--gray);line-height:1.7}.portfolio-showcase{position:relative}.showcase-card{position:-webkit-sticky;position:sticky;top:0;height:100vh;width:100%;overflow:hidden;cursor:pointer}.showcase-card-img{position:absolute;inset:0;z-index:0}.showcase-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 8s cubic-bezier(.25,.46,.45,.94)}.showcase-card:hover .showcase-card-img img{transform:scale(1.03)}.showcase-card:after{bottom:0;height:50%;background:linear-gradient(0deg,rgba(8,8,8,.85) 0,rgba(8,8,8,.3) 50%,transparent);z-index:1;pointer-events:none}.showcase-card:after,.showcase-card:before{content:"";position:absolute;left:0;right:0}.showcase-card:before{top:0;height:4px;background:var(--border-gold);z-index:3;opacity:0}.showcase-card:not(:first-child):before{opacity:1}.showcase-card-info{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:50px 60px;display:flex;justify-content:space-between;align-items:flex-end}.showcase-card-text h3{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--white);text-transform:uppercase;letter-spacing:.08em;margin:0 0 6px}.showcase-card-text .showcase-location{font-family:var(--font-body);font-size:.75rem;font-weight:300;color:rgba(255,255,255,.6);font-style:italic;margin:0}.showcase-card-counter{font-family:var(--font-display);font-size:.75rem;letter-spacing:.15em;color:rgba(124,152,170,.5)}.showcase-scroll-hint{position:absolute;bottom:50px;right:60px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;animation:scrollPulse 2s ease-in-out infinite}.showcase-scroll-hint span{font-family:var(--font-body);font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(124,152,170,.5)}.showcase-scroll-hint svg{width:16px;height:16px;color:rgba(124,152,170,.5)}@keyframes scrollPulse{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(4px)}}.portfolio-grid-section{padding:80px 0 140px}.portfolio-toggle{text-align:center;padding:60px 0}.gallery-toggle-btn{background:transparent;border:1px solid var(--gold);color:var(--gold);padding:14px 40px;font-family:var(--font-body);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:all .3s}.gallery-toggle-btn:hover{background:var(--gold);color:var(--black)}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:2px;gap:2px}.portfolio-item{position:relative;overflow:hidden;cursor:pointer}.portfolio-item .port-img{width:100%;aspect-ratio:4/3;background:var(--charcoal);overflow:hidden}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.25,.46,.45,.94),filter .5s;filter:brightness(.85)}.portfolio-item:hover img{transform:scale(1.06);filter:brightness(1)}.port-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,8,8,.9) 0,transparent 50%);opacity:0;transition:opacity .5s;display:flex;align-items:flex-end;padding:30px}.portfolio-item:hover .port-overlay{opacity:1}.port-info h3{font-family:var(--font-display);font-size:1.4rem;font-weight:300;color:var(--white)}.port-info p{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-top:4px}@media (max-width:1024px){.showcase-card-info{padding:40px}.showcase-card-text h3{font-size:1.6rem}}@media (max-width:768px){#portfolio{padding-top:80px}.portfolio-intro{padding:0 0 40px}.portfolio-header{flex-direction:column;align-items:flex-start;gap:20px}.portfolio-grid{grid-template-columns:1fr}.port-overlay{opacity:1}.showcase-card{height:70vh}.showcase-card-info{padding:30px 20px}.showcase-card-text h3{font-size:1.3rem}.showcase-card-text .showcase-location{font-size:.65rem}.showcase-scroll-hint{right:20px;bottom:30px}.portfolio-grid-section{padding:40px 0 80px}}@media (max-width:480px){.showcase-card{height:60vh}.showcase-card-text h3{font-size:1.1rem}}[data-theme=light] .showcase-card-text h3{color:#f5f2ed}[data-theme=light] .showcase-card-text .showcase-location{color:rgba(255,255,255,.6)}[data-theme=light] .port-info h3{color:#f5f2ed}#videos{padding:140px 0;background:var(--charcoal)}.video-featured{margin-top:60px;position:relative;overflow:hidden;border:1px solid var(--border-gold);background:#000}.video-featured video{width:100%;display:block;max-height:600px}.video-grid-2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:30px;gap:30px;margin-top:40px}.video-link-card{display:block;text-decoration:none;border:1px solid var(--border-gold);overflow:hidden;transition:border-color .3s}.video-link-card:hover{border-color:rgba(124,152,170,.5)}.video-thumb-wrap{position:relative;overflow:hidden;aspect-ratio:16/9}.video-link-card img{width:100%;height:100%;object-fit:cover;display:block;opacity:.85;transition:opacity .3s,transform .6s}.video-link-card:hover img{opacity:1;transform:scale(1.03)}.video-play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;color:rgba(255,255,255,.7);transition:color .3s,transform .3s;pointer-events:none}.video-link-card:hover .video-play-icon{color:var(--gold);transform:translate(-50%,-50%) scale(1.1)}.video-link-info{padding:16px 20px;background:var(--dark)}.video-link-info p{color:var(--gold);font-family:var(--font-body);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;margin:0 0 4px}.video-link-info h3{color:var(--white);font-family:var(--font-display);font-size:1.2rem;font-weight:400;margin:0}@media (max-width:1024px){.video-grid-2{grid-template-columns:1fr}}@media (max-width:768px){#videos{padding:80px 0}}[data-theme=light] .video-featured{background:#1a1a1a}[data-theme=light] .video-link-card:hover{border-color:var(--gold)}#process{padding:140px 0;background:var(--dark);position:relative;overflow:hidden}.process-bg{position:absolute;inset:0;background:url(/images/construction-photo.jpg) 50%/cover no-repeat;opacity:.35}.process-steps{margin-top:80px;position:relative;padding-left:40px}.process-line{position:absolute;left:11px;top:0;bottom:0;width:1px;background:linear-gradient(180deg,rgba(124,152,170,.4),transparent)}.process-step{position:relative;margin-bottom:56px;padding-left:32px;opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}.process-step:last-child{margin-bottom:0}.process-step.visible{opacity:1;transform:translateY(0)}.step-dot{position:absolute;left:-40px;top:4px;width:22px;height:22px;border-radius:50%;border:1px solid rgba(124,152,170,.5);background:var(--dark);display:flex;align-items:center;justify-content:center;z-index:2}.step-dot:after{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}.step-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.step-num{font-family:var(--font-display);font-size:.75rem;font-weight:400;letter-spacing:.1em;color:var(--gold);opacity:.6}.step-tag{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.step-content h3{font-family:var(--font-display);font-size:1.6rem;font-weight:300;color:var(--white);margin-bottom:12px}.step-content p{font-size:.85rem;line-height:1.8;color:var(--light-gray);max-width:600px}@media (max-width:768px){#process{padding:80px 0}.process-steps{margin-top:50px;padding-left:32px}.step-dot{left:-32px;width:18px;height:18px}.step-dot:after{width:5px;height:5px}.process-line{left:9px}.process-step{margin-bottom:44px;padding-left:24px}.step-content h3{font-size:1.3rem}}[data-theme=light] .process-bg{opacity:.12}#faq{padding:140px 0;background:var(--black)}.faq-list{margin-top:60px;max-width:800px}.faq-item{border-bottom:1px solid var(--border-gold);overflow:hidden}.faq-question{width:100%;background:none;border:none;padding:28px 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer;text-align:left;gap:20px}.faq-q-text{font-family:var(--font-display);font-size:1.2rem;font-weight:300;color:var(--white);transition:color .3s}.faq-icon,.faq-question:hover .faq-q-text{color:var(--gold)}.faq-icon{width:24px;height:24px;flex-shrink:0;border:1px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:transform .4s,background .3s}.faq-item.open .faq-icon{transform:rotate(45deg);background:var(--gold);color:var(--black)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .5s ease}.faq-answer p{font-size:.85rem;line-height:1.8;color:var(--light-gray);padding-bottom:28px}@media (max-width:768px){#faq{padding:80px 0}.faq-q-text{font-size:1rem}}#contact{padding:140px 0;background:var(--charcoal)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:100px;gap:100px;margin-top:60px;align-items:start}.contact-info p{font-size:.85rem;line-height:1.8;color:var(--light-gray);margin-bottom:40px}.contact-detail{display:flex;align-items:center;gap:16px;margin-bottom:20px;font-size:.8rem;color:var(--light-gray);letter-spacing:.05em}.contact-detail-icon{width:36px;height:36px;border:1px solid var(--border-gold-strong);display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}.form-group input,.form-group select,.form-group textarea{width:100%;background:var(--input-bg);border:1px solid var(--border-gold);color:var(--white);font-family:var(--font-body);font-size:.85rem;padding:14px 18px;outline:none;transition:border-color .3s;-webkit-appearance:none}.form-group select option{background:var(--select-option-bg)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold)}.form-group textarea{min-height:120px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.submit-btn{width:100%;padding:18px;background:transparent;border:1px solid var(--gold);color:var(--gold);font-family:var(--font-body);font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;cursor:pointer;transition:background .4s,color .4s;margin-top:8px}.submit-btn:hover{background:var(--gold);color:var(--black)}.consult-cta{margin-top:40px;padding:32px;border:1px solid var(--border-gold);background:rgba(124,152,170,.04);text-align:center}.consult-cta h3{font-family:var(--font-display);font-size:1.3rem;font-weight:300;color:var(--white);margin-bottom:10px}.consult-cta p{font-size:.8rem;color:var(--gray);margin-bottom:20px;line-height:1.6}.consult-btn{display:inline-block;padding:14px 36px;background:var(--gold);color:var(--black);font-family:var(--font-body);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transition:background .3s,transform .3s}.consult-btn:hover{background:var(--gold-light);transform:translateY(-2px)}@media (max-width:1024px){.contact-grid{grid-template-columns:1fr;gap:50px}}@media (max-width:768px){#contact{padding:80px 0}.contact-grid{gap:40px}.form-row{grid-template-columns:1fr}}footer{background:var(--black);padding:60px;border-top:1px solid var(--border-gold);display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}.footer-copy{font-size:.65rem;letter-spacing:.1em;color:var(--gray);text-align:center}.footer-links{display:flex;gap:30px;list-style:none}.footer-links a{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gray);text-decoration:none;transition:color .3s}.footer-links a:hover{color:var(--gold)}@media (max-width:768px){footer{flex-direction:column;text-align:center;padding:40px 20px;gap:20px}.footer-links{flex-wrap:wrap;justify-content:center;gap:16px}}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s}.modal-overlay.open{opacity:1;pointer-events:all}.modal-close{position:absolute;top:30px;right:40px;background:none;border:none;color:var(--white);font-size:2rem;cursor:pointer;line-height:1;transition:color .3s}.modal-close:hover{color:var(--gold)}.modal-img{max-width:90vw;max-height:85vh;object-fit:contain;border:1px solid var(--border-gold)}@media (max-width:768px){.modal-img{max-width:95vw;max-height:80vh}.modal-close{top:16px;right:16px}}[data-theme=light] .modal-close{color:#f5f2ed}.project-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.97);z-index:1000;overflow-y:auto;opacity:0;pointer-events:none;transition:opacity .4s}.project-modal-overlay.open{opacity:1;pointer-events:all}.project-modal-inner{max-width:1100px;margin:0 auto;padding:80px 40px 60px}.project-modal-close{position:fixed;top:24px;right:32px;background:none;border:1px solid var(--border-gold-strong);color:var(--white);width:44px;height:44px;font-size:1.5rem;cursor:pointer;z-index:1001;display:flex;align-items:center;justify-content:center;transition:border-color .3s,color .3s}.project-modal-close:hover{border-color:var(--gold);color:var(--gold)}.project-modal-header{margin-bottom:40px}.project-modal-header h2{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.5rem);font-weight:300;color:var(--white)}.project-modal-header p{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-top:8px}.project-modal-count{display:inline-block;margin-top:12px;font-family:var(--font-body);font-size:.75rem;color:var(--gray);letter-spacing:.1em}.project-modal-gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:4px;gap:4px}.gallery-thumb-hero{grid-column:1/-1}.gallery-thumb{overflow:hidden;cursor:pointer;position:relative}.gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3;transition:transform .5s,filter .3s;filter:brightness(.85)}.gallery-thumb-hero img{aspect-ratio:16/9}.gallery-thumb:hover img{transform:scale(1.04);filter:brightness(1)}.gallery-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s}.gallery-lightbox.open{opacity:1;pointer-events:all}.gallery-lightbox>img{max-width:90vw;max-height:85vh;object-fit:contain;border:1px solid var(--border-gold)}.gallery-lb-close{position:absolute;top:20px;right:24px;background:none;border:1px solid rgba(124,152,170,.3);color:var(--white);width:44px;height:44px;font-size:1.6rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .3s,color .3s}.gallery-lb-close:hover{border-color:var(--gold);color:var(--gold)}.gallery-lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.5);border:1px solid rgba(124,152,170,.2);color:var(--white);width:48px;height:48px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s,border-color .3s}.gallery-lb-nav:hover{background:rgba(124,152,170,.15);border-color:var(--gold)}.gallery-lb-nav svg{width:24px;height:24px}.gallery-lb-prev{left:20px}.gallery-lb-next{right:20px}.gallery-lb-counter{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);font-family:var(--font-display);font-size:.8rem;letter-spacing:.2em;color:rgba(124,152,170,.6)}@media (max-width:768px){.project-modal-inner{padding:70px 20px 40px}.project-modal-close{top:16px;right:16px;width:38px;height:38px}.project-modal-gallery{grid-template-columns:repeat(2,1fr)}.gallery-lb-prev{left:8px}.gallery-lb-next{right:8px}.gallery-lb-nav{width:40px;height:40px}}@media (max-width:480px){.project-modal-gallery{grid-template-columns:1fr}}[data-theme=light] .project-modal-close,[data-theme=light] .project-modal-header h2{color:#f5f2ed}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:200;background:transparent}.scroll-progress-bar{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-light));transition:width .1s linear;will-change:width}.chatbot-toggle{position:fixed;bottom:40px;right:40px;width:56px;height:56px;background:var(--gold);color:var(--black);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:91;box-shadow:0 4px 24px rgba(124,152,170,.35);transition:background .3s,transform .3s,box-shadow .3s}.chatbot-toggle:hover{background:var(--gold-light);transform:scale(1.08);box-shadow:0 8px 32px rgba(124,152,170,.45)}.chatbot-toggle svg{width:26px;height:26px}.chatbot-panel{position:fixed;bottom:110px;right:40px;width:380px;height:500px;background:var(--dark);border:1px solid var(--border-gold-strong);border-radius:16px;z-index:1000;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 12px 48px rgba(0,0,0,.5),0 0 0 1px var(--border-gold);opacity:0;transform:translateY(20px) scale(.95);pointer-events:none;transition:opacity .3s ease,transform .3s ease}.chatbot-panel.open{opacity:1;transform:translateY(0) scale(1);pointer-events:all}.chatbot-header{padding:16px 20px;background:var(--charcoal);border-bottom:1px solid var(--border-gold);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.chatbot-header-title{font-family:var(--font-display);font-size:1.15rem;font-weight:600;color:var(--gold);letter-spacing:.03em}.chatbot-close{background:none;border:none;color:var(--gray);cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .2s}.chatbot-close:hover{color:var(--white)}.chatbot-messages{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.chatbot-messages::-webkit-scrollbar{width:4px}.chatbot-messages::-webkit-scrollbar-thumb{background:var(--border-gold);border-radius:2px}.chatbot-msg{max-width:85%;padding:10px 14px;border-radius:12px;font-size:.88rem;line-height:1.5;font-family:var(--font-body);font-weight:300}.chatbot-msg.assistant{align-self:flex-start;background:var(--charcoal);color:var(--white);border-bottom-left-radius:4px}.chatbot-msg.user{align-self:flex-end;background:var(--gold);color:var(--black);border-bottom-right-radius:4px;font-weight:400}.chatbot-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 16px}.chatbot-typing span{width:6px;height:6px;background:var(--gray);border-radius:50%;animation:chatBounce 1.2s infinite}.chatbot-typing span:nth-child(2){animation-delay:.15s}.chatbot-typing span:nth-child(3){animation-delay:.3s}@keyframes chatBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.chatbot-input-bar{padding:12px 16px;border-top:1px solid var(--border-gold);background:var(--charcoal);display:flex;gap:8px;flex-shrink:0}.chatbot-input{flex:1 1;background:var(--input-bg);border:1px solid var(--border-gold);border-radius:8px;padding:10px 14px;color:var(--white);font-family:var(--font-body);font-size:.88rem;font-weight:300;outline:none;transition:border-color .2s}.chatbot-input::placeholder{color:var(--gray)}.chatbot-input:focus{border-color:var(--gold)}.chatbot-send{background:var(--gold);color:var(--black);border:none;border-radius:8px;padding:0 14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.chatbot-send:hover{background:var(--gold-light)}.chatbot-send:disabled{opacity:.5;cursor:not-allowed}.chatbot-send svg{width:18px;height:18px}@media (max-width:768px){.chatbot-toggle{bottom:24px;right:24px;width:50px;height:50px}.chatbot-panel{bottom:0;right:0;left:0;width:100%;height:100%;border-radius:0;max-height:100dvh}}.loader-overlay{position:fixed;inset:0;z-index:10000;background:#080808;display:flex;align-items:center;justify-content:center;transition:opacity .6s ease,visibility .6s}.loader-overlay.done{opacity:0;visibility:hidden}.loader-content{display:flex;flex-direction:column;align-items:center;gap:24px;animation:loaderFadeIn .8s ease both}.loader-icon{animation:loaderPulse 1.6s ease-in-out infinite}.loader-text{display:flex;flex-direction:column;align-items:center;gap:8px}.loader-name{font-size:1rem;letter-spacing:.3em;color:#f5f2ed;animation:loaderFadeIn .8s ease .3s both}.loader-name,.loader-tagline{font-family:var(--font-body);font-weight:300;text-transform:uppercase}.loader-tagline{font-size:.5rem;letter-spacing:.35em;color:#7c98aa;animation:loaderFadeIn .8s ease .5s both}.loader-bar{width:120px;height:1px;background:rgba(124,152,170,.2);overflow:hidden;animation:loaderFadeIn .8s ease .6s both}.loader-bar-fill{height:100%;background:#7c98aa;animation:loaderFill 1.6s ease-in-out .2s forwards;width:0}@keyframes loaderFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes loaderPulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes loaderFill{0%{width:0}to{width:100%}}[data-theme=light] .loader-overlay{background:#faf8f5}[data-theme=light] .loader-name{color:#2a2a2a}