.hero{color:#fff;background-position:50%;background-size:cover;justify-content:center;align-items:center;min-height:100svh;display:flex;position:relative}.hero:after{content:"";background:linear-gradient(#1e140f40,#1e140f0d 40%,#1e140f59);position:absolute;inset:0}.hero-inner{z-index:2;text-align:center;margin-top:-3rem;padding-inline:1rem;animation:1.4s both hero-in;position:relative}@keyframes hero-in{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.hero h1{font-family:var(--serif);letter-spacing:.09em;text-transform:uppercase;text-shadow:0 2px 30px #00000059;font-size:clamp(2.7rem,7.6vw,5.6rem);font-weight:300;line-height:1.14}.hero-sub{letter-spacing:.22em;text-transform:uppercase;text-shadow:0 1px 14px #0006;margin-top:1.4rem;font-size:clamp(.8rem,1.4vw,1.05rem)}.hero-cta{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.06em;background:#ffffff24;border:1px solid #ffffffa6;border-radius:999px;margin-top:2.6rem;padding:.95rem 3.4rem;font-size:1.02rem;transition:background .35s,color .35s,border-color .35s;display:inline-block}.hero-cta:hover{color:var(--ink);background:#fff;border-color:#fff}.hero-social{z-index:3;flex-direction:column;align-items:center;gap:1.15rem;display:flex;position:absolute;top:50%;right:clamp(1rem,3vw,2.6rem);transform:translateY(-58%)}.hero-social a{color:#33302c;background:#ffffffeb;border-radius:50%;place-items:center;width:34px;height:34px;font-size:.95rem;transition:background .3s,color .3s,transform .3s;display:grid}.hero-social a:hover{background:var(--gold);color:#fff;transform:translateY(-3px)}.hero-social-label{writing-mode:vertical-rl;letter-spacing:.32em;text-transform:uppercase;color:#ffffffe6;align-items:center;gap:.9rem;margin-top:1.4rem;font-size:.72rem;display:flex}.hero-social-label i{background:#ffffffbf;width:1px;height:74px}.hero-stats{z-index:3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(#18100c52,#18100cc7);grid-template-columns:repeat(4,1fr);padding:1.6rem clamp(1rem,6vw,5.5rem);display:grid;position:absolute;bottom:0;left:0;right:0}.hero-stat{justify-content:center;align-items:center;gap:.9rem;display:flex;position:relative}.hero-stat+.hero-stat:before{content:"";background:#ffffff59;width:1px;height:46px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.hero-stat strong{font-family:var(--serif);color:var(--gold);letter-spacing:.03em;font-size:clamp(1.9rem,3.4vw,2.9rem);font-weight:500}.hero-stat span{flex-direction:column;line-height:1.35;display:flex}.hero-stat em{color:#f0ebe4;font-size:.92rem;font-style:normal}@media (width<=860px){.hero-stats{grid-template-columns:repeat(2,1fr);row-gap:1.2rem}.hero-stat:nth-child(3):before{display:none}}@media (width<=520px){.hero-social{display:none}.hero-stat{text-align:center;flex-direction:column;gap:.1rem}.hero-stat em{font-size:.8rem}}.heritage{background:linear-gradient(to bottom, #efe7e2, var(--cream) 26%);padding:clamp(4.5rem,9vw,8.5rem) 0 clamp(6rem,12vw,11rem)}.heritage-grid{grid-template-columns:1fr 1.15fr;align-items:center;gap:clamp(2.5rem,6vw,5.5rem);display:grid}.heritage-ornament{background:repeating-linear-gradient(#9d8f83 0 1.5px,#0000 1.5px 6px);width:250px;height:26px;margin-bottom:1.7rem;-webkit-mask-image:linear-gradient(90deg,#000 40%,#0000);mask-image:linear-gradient(90deg,#000 40%,#0000)}.heritage-text p{color:var(--ink-soft);text-align:justify;margin-top:1.15rem;font-size:.98rem}.heritage-text p:first-of-type{margin-top:1.9rem}.heritage-cta{background:var(--taupe);color:#fff;letter-spacing:.2em;text-transform:uppercase;margin-top:2.2rem;padding:.78rem 2.4rem;font-size:.92rem;transition:background .35s,letter-spacing .35s;display:inline-block}.heritage-cta:hover{letter-spacing:.26em;background:#8f7d6f}.heritage-carousel{aspect-ratio:10/7.2;border-radius:14px;position:relative;overflow:hidden;box-shadow:0 24px 60px #3c2d232e}.heritage-carousel img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .8s;position:absolute;inset:0}.heritage-carousel img.active{opacity:1}.carousel-arrow{z-index:2;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e191440;border-radius:50%;place-items:center;width:42px;height:42px;font-size:1.35rem;transition:background .3s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.carousel-arrow:hover{background:#1e19148c}.carousel-arrow.left{left:14px}.carousel-arrow.right{right:14px}.carousel-progress{z-index:2;background:#fff6;width:42%;height:2px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.carousel-progress i{background:#fff;height:100%;transition:width .5s;display:block}@media (width<=900px){.heritage-grid{grid-template-columns:1fr}.heritage{padding-bottom:clamp(8rem,20vw,11rem)}}.features{background:var(--taupe);padding:clamp(3rem,5vw,4.2rem) 0 clamp(3.4rem,6vw,5rem);position:relative}.features-bg{opacity:.18;mix-blend-mode:luminosity;background-position:50% 30%;background-size:cover;position:absolute;inset:0}.features-statue{z-index:2;filter:drop-shadow(0 18px 28px #32261c4d);pointer-events:none;width:auto;height:138%;position:absolute;bottom:0;left:clamp(.5rem,5vw,5.5rem)}.features-grid{z-index:3;color:#fff;grid-template-columns:repeat(4,1fr);gap:clamp(1.4rem,3vw,2.6rem);width:min(1010px,90%);margin-left:auto;margin-right:clamp(1rem,6vw,5rem);display:grid;position:relative}.feature img{width:auto;height:44px;margin-bottom:.9rem}.feature-design img{height:64px}.feature h3{font-family:var(--serif);letter-spacing:.04em;margin-bottom:.55rem;padding-bottom:.55rem;font-size:1.55rem;font-weight:500;position:relative}.feature h3:after{content:"";background:#fff6;width:100%;height:1px;position:absolute;bottom:0;left:0}.feature p{color:#ffffffeb;font-size:.85rem;line-height:1.55}@media (width<=1100px){.features-grid{grid-template-columns:repeat(2,1fr);width:min(760px,88%)}}@media (width<=760px){.features-statue{display:none}.features-grid{margin-inline:auto}}@media (width<=480px){.features-grid{text-align:center;grid-template-columns:1fr}.feature img{margin-inline:auto}}.vision{padding-top:var(--head-gap);background:var(--cream)}.vision-head{text-align:center}.vision-head p{max-width:760px;color:var(--ink-soft);margin:1.6rem auto 0;font-size:.96rem}.vision-signature{flex-direction:column;align-items:center;gap:.15rem;margin-top:2.4rem;display:flex}.vision-signature strong{font-family:var(--serif);letter-spacing:.32em;text-transform:uppercase;margin-inline-end:-.32em;font-size:1.15rem;font-weight:600}.vision-signature span{color:var(--gray);text-align:center;font-size:.82rem}.vision-signature i{background:#9a9089;width:44px;height:1px;margin-top:1.4rem}.vision-carousel{margin-top:var(--head-gap);height:clamp(320px,55vw,640px);position:relative;overflow:hidden}.vision-carousel img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .8s;position:absolute;inset:0}.vision-carousel img.active{opacity:1}.vision-controls{z-index:2;align-items:center;gap:1.2rem;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.vision-controls button{color:#fff;filter:drop-shadow(0 1px 6px #00000080);place-items:center;font-size:1.5rem;transition:transform .3s;display:grid}.vision-controls button:hover{transform:scale(1.2)}.vision-controls .carousel-progress{width:clamp(120px,22vw,260px);position:static;transform:none}.projects{padding-top:var(--head-gap);background:var(--cream)}.projects-head{text-align:center}.projects-filters{flex-wrap:wrap;justify-content:center;gap:clamp(1.4rem,4vw,3.6rem);margin-top:2.1rem;display:flex}.projects-filters button{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#a49d96;border-bottom:1px solid #0000;padding-bottom:5px;font-size:.98rem;transition:color .3s,border-color .3s}.projects-filters button:hover{color:var(--ink-soft)}.projects-filters button.active{color:var(--ink);border-color:var(--gold-soft)}.projects-grid{margin-top:var(--head-gap);grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.project-card{cursor:pointer;height:clamp(420px,60vw,850px);animation:.5s both projectReveal;position:relative;overflow:hidden}.project-card:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform .9s}.project-card:hover img{transform:scale(1.05)}.projects-grid.is-expanded{grid-template-columns:minmax(260px,1fr) 2fr;align-items:stretch}@keyframes projectReveal{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}.project-card.is-active figcaption{opacity:1;transform:none}.project-card-close{z-index:3;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#140f0a73;border-radius:50%;place-items:center;width:40px;height:40px;font-size:1.25rem;transition:background .3s;display:grid;position:absolute;top:16px;right:16px}.project-card-close:hover{background:#140f0ac7}.project-details{background:var(--cream-dark);flex-direction:column;gap:1.15rem;height:clamp(420px,60vw,850px);padding:clamp(2rem,4vw,3.5rem);animation:.65s cubic-bezier(.16,1,.3,1) .1s both projectReveal;display:flex;overflow-y:auto}.project-details>*{opacity:0;animation:.6s .28s both projectReveal}.project-details h3{font-family:var(--serif);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:500}.project-details>p{color:var(--ink-soft);font-size:.98rem;line-height:1.75;animation-delay:.36s}.project-details ul{flex-direction:column;gap:.55rem;list-style:none;animation-delay:.44s;display:flex}.project-details ul li{color:var(--ink-soft);padding-left:1.4rem;font-size:.95rem;position:relative}.project-details ul li:before{content:"";background:var(--gold-soft);width:10px;height:1px;position:absolute;top:.6em;left:0}.project-details-area{letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-size:.92rem;animation-delay:.52s}.project-details-gallery{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:auto;padding-top:.6rem;animation-delay:.6s;display:grid}.project-details-gallery img{object-fit:cover;border-radius:4px;width:100%;height:clamp(140px,18vw,220px)}.project-details-soon{color:var(--ink-soft);font-style:italic}.project-card figcaption{color:#fff;opacity:0;background:linear-gradient(#0000,#140f0ab8);flex-direction:column;gap:.1rem;padding:2.4rem 1.6rem 1.5rem;transition:opacity .45s,transform .45s;display:flex;position:absolute;inset:auto 0 0;transform:translateY(12px)}.project-card:hover figcaption{opacity:1;transform:none}.project-card strong{font-family:var(--serif);letter-spacing:.08em;text-transform:uppercase;font-size:1.5rem;font-weight:500}.project-card span{color:#ffffffd9;font-size:.85rem}@media (width<=760px){.projects-grid,.projects-grid.is-expanded{grid-template-columns:1fr}.project-card{height:clamp(320px,90vw,480px)}.project-card figcaption{opacity:1;transform:none}.project-details{height:auto}.project-details-gallery img{height:clamp(120px,32vw,190px)}}.realisations{padding-top:var(--head-gap);background:var(--cream)}.realisations-head{text-align:center}.realisations-media{margin-top:var(--head-gap);height:clamp(340px,58vw,660px);position:relative;overflow:hidden}.realisations-media img{object-fit:cover;width:100%;height:100%}.play-button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff52;border-radius:50%;place-items:center;width:clamp(74px,9vw,104px);height:clamp(74px,9vw,104px);transition:transform .35s,background .35s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.play-button:hover{background:#ffffff80;transform:translate(-50%,-50%)scale(1.08)}.play-triangle{border:15px solid #0000;border-left:25px solid #fff;border-right-width:0;width:0;height:0;margin-left:6px}.video-lightbox{z-index:100;background:#0c0a08eb;place-items:center;padding:clamp(1rem,4vw,3rem);animation:.35s lightbox-in;display:grid;position:fixed;inset:0}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.video-lightbox video{width:min(1080px,100%);max-height:82vh;box-shadow:0 30px 80px #0009}.video-close{color:#fff;font-size:2.1rem;transition:transform .3s,color .3s;position:absolute;top:1.4rem;right:1.8rem}.video-close:hover{color:var(--gold);transform:rotate(90deg)}.philosophy-top{background:var(--taupe);color:#fff;text-align:center;padding:clamp(4.5rem,8vw,7rem) 0 clamp(13rem,22vw,17rem)}.philosophy-bottom{background:#fff}.philosophy-cards{text-align:center;grid-template-columns:repeat(3,1fr);gap:clamp(1.6rem,4vw,3.4rem);margin-top:clamp(-11rem,-18vw,-14rem);display:grid}.philosophy-card img{aspect-ratio:10/11.4;object-fit:cover;width:100%;box-shadow:0 20px 45px #3c2d232e}.philosophy-card h3{font-family:var(--serif);letter-spacing:.08em;text-transform:uppercase;margin-top:1.5rem;font-size:1.35rem;font-weight:600}.philosophy-card p{color:var(--gray);margin-top:.45rem;padding-inline:.6rem;font-size:.9rem}.philosophy-lobby{margin-top:clamp(3.4rem,7vw,6rem)}.philosophy-lobby img{object-fit:cover;width:100%;height:clamp(300px,46vw,560px)}.visit-cta{width:100%;font-family:var(--serif);letter-spacing:.05em;color:var(--ink);background:#f1eeea;justify-content:center;align-items:center;gap:.7rem;margin:clamp(2rem,4vw,3rem) 0 0;padding:1.35rem 1rem;font-size:1.25rem;font-weight:500;transition:background .35s,gap .35s;display:flex}.visit-cta:hover{background:#e7e1da;gap:1.2rem}.philosophy-bottom .container{padding-bottom:clamp(4rem,8vw,7rem)}@media (width<=820px){.philosophy-cards{grid-template-columns:1fr;max-width:460px;margin-inline:auto}.philosophy-top{padding-bottom:14rem}.philosophy-cards{margin-top:-11rem}}.explore{color:#fff;text-align:center;justify-content:center;align-items:center;min-height:clamp(420px,60vh,560px);display:flex;position:relative;overflow:hidden}.explore-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.explore-overlay{background:#0a1e3247;position:absolute;inset:0}.explore-content{z-index:2;padding:4rem 1rem;position:relative}.explore-content h2{font-family:var(--serif);letter-spacing:.1em;text-transform:uppercase;text-shadow:0 2px 24px #00000059;font-size:clamp(2rem,5vw,3.4rem);font-weight:400}.explore-content p{letter-spacing:.2em;text-transform:uppercase;color:#ffffffeb;margin-top:.7rem;font-size:.86rem}.explore-label{letter-spacing:.24em;text-transform:uppercase;margin-top:3.2rem;font-size:.86rem;display:block}.explore-phones{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1.3rem;display:flex}.explore-phones a{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);letter-spacing:.08em;background:#ffffff1a;border:1px solid #ffffff8c;align-items:center;gap:.6rem;padding:.8rem 2.2rem;font-size:.95rem;font-weight:600;transition:background .35s,color .35s;display:flex}.explore-phones a:hover{color:var(--ink);background:#fff}
