*{margin:0;padding:0;box-sizing:border-box}
:root{--ink:#151311;--cream:#f4f0e8;--muted:#77716a;--gold:#c7a36a;--line:rgba(21,19,17,.13);--dark:#11100f}
html{scroll-behavior:smooth}
body{font-family:"DM Sans",sans-serif;background:var(--cream);color:var(--ink);overflow-x:hidden}
a{text-decoration:none;color:inherit}
button{font:inherit}
.loader{position:fixed;inset:0;background:var(--dark);color:var(--cream);z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity .8s,visibility .8s}.loader.hide{opacity:0;visibility:hidden}.loader-mark,.brand-mark{font-family:"Cormorant Garamond",serif;border:1px solid var(--gold);width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:27px;color:var(--gold)}.loader span{font-size:10px;letter-spacing:4px}
.site-header{position:fixed;top:0;left:0;width:100%;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:26px 5vw;color:#fff;transition:.35s}.site-header.scrolled{background:rgba(17,16,15,.92);backdrop-filter:blur(12px);padding:17px 5vw;box-shadow:0 1px 0 rgba(255,255,255,.08)}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;font-size:21px}.brand strong,.brand small{display:block}.brand strong{font-size:12px;letter-spacing:2px}.brand small{font-size:7px;letter-spacing:3px;margin-top:2px;opacity:.7}
.nav{display:flex;align-items:center;gap:30px;font-size:11px;letter-spacing:1.3px;text-transform:uppercase}.nav a{opacity:.82;transition:.25s}.nav a:hover{opacity:1;color:var(--gold)}.nav-cta{border:1px solid rgba(255,255,255,.35);padding:12px 17px!important;opacity:1!important}
.menu-toggle{display:none;background:none;border:0;color:#fff;width:34px}.menu-toggle span{height:1px;background:#fff;display:block;margin:7px 0}
.hero{height:100svh;min-height:650px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;background-image:url("https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=2200&q=85");background-size:cover;background-position:center;transform:scale(1.06);animation:heroZoom 12s ease-out forwards}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.25) 65%,rgba(0,0,0,.4))}
.hero-content{position:relative;z-index:2;margin-left:9vw;max-width:760px;padding-top:70px}.eyebrow{font-size:10px;letter-spacing:3px;font-weight:600;color:#d6c7af;margin-bottom:24px}.eyebrow.dark{color:#8d7451}.hero h1{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(64px,8vw,122px);line-height:.84;letter-spacing:-3px}.hero h1 em,h1 em,h2 em{font-style:italic;color:#d5b27a}.hero-copy{max-width:520px;line-height:1.8;font-size:14px;color:rgba(255,255,255,.78);margin:32px 0}.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;padding:0 23px;text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:600;transition:.3s}.btn-gold{background:var(--gold);color:#17130e}.btn-gold:hover{background:#e0c18c;transform:translateY(-2px)}.btn-outline{border:1px solid rgba(255,255,255,.45);color:#fff}.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08);transform:translateY(-2px)}
.hero-bottom{position:absolute;z-index:2;bottom:34px;left:5vw;right:5vw;display:flex;align-items:center;gap:15px;font-size:8px;letter-spacing:2px;color:rgba(255,255,255,.65)}.scroll-line{height:1px;width:70px;background:var(--gold)}
.section{padding:120px 9vw;position:relative}.section-number{position:absolute;left:4vw;top:125px;font-size:9px;letter-spacing:2px;color:#a09a91}.section-number.light{color:#70685d}.intro-grid,.location-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:12vw}.intro h2,.section-head h2,.location h2{font-family:"Cormorant Garamond",serif;font-size:clamp(52px,6vw,90px);font-weight:500;line-height:.9;letter-spacing:-2px}.intro-copy{padding-top:15px;max-width:510px}.intro-copy p{font-size:15px;line-height:1.9;color:#625d57;margin-bottom:22px}.text-link{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;border-bottom:1px solid var(--gold);padding-bottom:8px;display:inline-flex;gap:20px}.text-link span{color:#a07b47;font-size:15px}
.stats{margin-top:100px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr)}.stats div{padding:28px 20px 0;border-right:1px solid var(--line)}.stats div:last-child{border:0}.stats strong{font-family:"Cormorant Garamond";font-size:50px;font-weight:500;display:block}.stats span{font-size:9px;text-transform:uppercase;letter-spacing:1.8px;color:var(--muted)}
.dark-section{background:var(--dark);color:var(--cream)}.services{padding-top:125px}.section-head{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:70px}.section-head>p{max-width:330px;color:#918b83;font-size:13px;line-height:1.8}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.12)}.service-card{padding:34px 28px 42px 0;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);min-height:235px;transition:.35s}.service-card:nth-child(3n){border-right:0;padding-left:28px}.service-card:nth-child(3n+2){padding-left:28px}.service-card span{font-size:9px;color:var(--gold);letter-spacing:2px}.service-card h3{font-family:"Cormorant Garamond";font-size:31px;font-weight:500;margin:45px 0 15px}.service-card p{font-size:12px;line-height:1.8;color:#8d8881;max-width:290px}.service-card:hover{background:rgba(255,255,255,.025);transform:translateY(-4px)}
.portfolio{padding-top:120px}.portfolio-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.portfolio-item{position:relative;min-height:400px;overflow:hidden;background:#ddd;display:block}.portfolio-item.item-tall{grid-row:span 2;min-height:820px}.portfolio-item.item-wide{grid-column:1/-1;min-height:460px}.portfolio-image{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .8s cubic-bezier(.2,.6,.2,1)}.image-1{background-image:url("https://images.unsplash.com/photo-1511285560929-80b456fea0bc?auto=format&fit=crop&w=1400&q=85")}.image-2{background-image:url("https://images.unsplash.com/photo-1606800052052-a08af7148866?auto=format&fit=crop&w=1200&q=85")}.image-3{background-image:url("https://images.unsplash.com/photo-1532712938310-34cb3982ef74?auto=format&fit=crop&w=1200&q=85")}.image-4{background-image:url("https://images.unsplash.com/photo-1465495976277-4387d4b0e4a6?auto=format&fit=crop&w=1800&q=85")}.portfolio-item:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.75))}.portfolio-item:hover .portfolio-image{transform:scale(1.06)}.portfolio-caption{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;color:#fff}.portfolio-caption span{font-size:8px;letter-spacing:2px;color:#dec28f}.portfolio-caption h3{font-family:"Cormorant Garamond";font-size:32px;font-weight:500;margin-top:7px}
.experience{padding:140px 9vw;background:#171513}.experience-inner{max-width:1100px;margin:auto}.experience h2{font-family:"Cormorant Garamond";font-size:clamp(60px,8vw,110px);line-height:.85;font-weight:500;letter-spacing:-3px;margin-bottom:100px}.experience-points{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.experience-points>div{border-top:1px solid rgba(255,255,255,.16);padding-top:22px}.experience-points span{color:var(--gold);font-size:9px;letter-spacing:2px}.experience-points p{font-size:12px;line-height:1.8;color:#99928a;margin-top:40px}.experience-points strong{color:#eee;font-size:13px}
.rating{display:flex;align-items:center;gap:18px}.rating strong{font-family:"Cormorant Garamond";font-size:60px;font-weight:500}.rating span{font-size:15px;letter-spacing:2px;color:#b28d58}.rating small{display:block;font-family:"DM Sans";font-size:8px;letter-spacing:1.3px;color:#777;margin-top:5px;text-align:right}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{background:#eee9df;padding:40px 32px;min-height:280px;display:flex;flex-direction:column}.stars{color:#a37b42;letter-spacing:3px;font-size:11px}.review-card p{font-family:"Cormorant Garamond";font-size:28px;line-height:1.15;margin:auto 0 30px}.review-card cite{font-style:normal;font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:#777}
.contact{position:relative;min-height:720px;display:grid;place-items:center;text-align:center;overflow:hidden}.contact-bg{position:absolute;inset:0;background:linear-gradient(rgba(17,16,15,.7),rgba(17,16,15,.86)),url("https://images.unsplash.com/photo-1519225421980-715cb0215aed?auto=format&fit=crop&w=2200&q=85") center/cover}.contact-content{position:relative;z-index:2;max-width:850px;padding:80px 20px}.contact h2{font-family:"Cormorant Garamond";font-size:clamp(60px,8vw,110px);font-weight:500;line-height:.84;letter-spacing:-3px}.contact-copy{color:#b2ada5;max-width:500px;margin:30px auto;line-height:1.8;font-size:13px}.contact-actions{justify-content:center}
.location{padding-top:115px;padding-bottom:115px}.location-details{padding-top:12px}.location-details p{font-size:14px;line-height:1.9;color:#625d57;margin-bottom:25px}.location-details strong{font-size:20px;color:var(--ink)}
footer{background:#0f0e0d;color:#aaa;padding:30px 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1px}.footer-brand{display:flex;align-items:center;gap:10px;color:#eee}.footer-brand .brand-mark{width:32px;height:32px;font-size:18px}.footer-brand strong,.footer-brand small{display:block}.footer-brand strong{font-size:10px;letter-spacing:2px}.footer-brand small{font-size:6px;letter-spacing:2px;color:#777;margin-top:2px}.floating-whatsapp{position:fixed;right:25px;bottom:25px;width:53px;height:53px;border-radius:50%;background:#2cae67;color:#fff;z-index:45;display:grid;place-items:center;font-size:10px;font-weight:700;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:.3s}.floating-whatsapp:hover{transform:scale(1.08)}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s ease}.reveal.visible{opacity:1;transform:none}
@keyframes heroZoom{to{transform:scale(1)}}@media(max-width:850px){.nav{position:fixed;inset:0 0 0 28%;background:#151311;flex-direction:column;justify-content:center;align-items:flex-start;padding:40px;gap:24px;transform:translateX(100%);transition:.4s}.nav.open{transform:none}.nav a{font-size:14px}.nav-cta{margin-top:10px}.menu-toggle{display:block;z-index:5}.hero-content{margin-left:7vw;margin-right:7vw}.hero h1{font-size:clamp(58px,15vw,95px)}.section{padding:90px 7vw}.section-number{display:none}.intro-grid,.location-grid{grid-template-columns:1fr;gap:45px}.intro-copy{padding:0}.stats{margin-top:65px}.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(3n),.service-card:nth-child(3n+2){padding-left:0;padding-right:20px;border-right:1px solid rgba(255,255,255,.12)}.service-card:nth-child(even){padding-left:20px;border-right:0}.section-head{align-items:flex-start;flex-direction:column;margin-bottom:50px}.portfolio-grid{grid-template-columns:1fr}.portfolio-item.item-tall{min-height:650px;grid-row:auto}.portfolio-item.item-wide{grid-column:auto;min-height:400px}.experience-points,.review-grid{grid-template-columns:1fr}.experience{padding:100px 7vw}.experience h2{margin-bottom:65px}.experience-points>div{padding-bottom:20px}.contact{min-height:650px}footer{flex-direction:column;align-items:flex-start}.footer-brand{margin-bottom:5px}}
@media(max-width:520px){.site-header{padding:18px 6vw}.brand strong{font-size:10px}.hero{min-height:620px}.hero-content{padding-top:40px}.hero-copy{font-size:13px}.hero-bottom{left:7vw;right:7vw}.hero-bottom span:last-child{display:none}.stats{grid-template-columns:1fr 1fr}.stats div{padding:20px 10px 0}.stats div:last-child{grid-column:1/-1;border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.stats strong{font-size:42px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(even),.service-card:nth-child(3n),.service-card:nth-child(3n+2){padding:25px 0;border-right:0}.service-card h3{margin-top:30px}.portfolio-item.item-tall{min-height:560px}.portfolio-item{min-height:360px}.rating{align-self:flex-start}.rating strong{font-size:48px}.contact h2{font-size:62px}.btn{width:100%}.contact-actions{width:100%}}
