@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Italiana&display=swap');

:root { --ink:#261d18; --cream:#f4efe7; --paper:#fbf8f2; --bronze:#aa7b50; --wine:#4a241f; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:'DM Sans',sans-serif; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1280px,calc(100% - 80px)); margin-inline:auto; }
.hero { min-height:100svh; position:relative; color:white; background:linear-gradient(135deg,#4a3b31,#261d18) center/cover no-repeat; display:flex; flex-direction:column; }
.siteHeader { position:fixed;top:18px;left:0;right:0;z-index:80;color:var(--ink);pointer-events:none;transition:top .35s ease; }
.hero>.siteHeader,.imageHero>.siteHeader { color:white; }
.siteHeader .nav { pointer-events:auto;width:min(1280px,calc(100% - 48px));height:78px;padding:0 24px;border:1px solid rgba(38,29,24,.16);border-radius:3px;background:rgba(251,248,242,.88);box-shadow:0 14px 38px rgba(38,29,24,.10);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:background .35s ease,color .35s ease,box-shadow .35s ease,border-color .35s ease; }
.hero>.siteHeader:not(.scrolled) .nav,.imageHero>.siteHeader:not(.scrolled) .nav { background:rgba(27,18,14,.22);border-color:rgba(255,255,255,.28);box-shadow:0 14px 38px rgba(0,0,0,.12); }
.siteHeader.scrolled { top:12px;color:var(--ink); }
.hero>.siteHeader.scrolled,.imageHero>.siteHeader.scrolled { color:var(--ink); }
.siteHeader.scrolled .nav { background:rgba(251,248,242,.95);box-shadow:0 18px 45px rgba(38,29,24,.16); }
.siteHeader:not(.headerDark) .navCta{border-color:rgba(38,29,24,.45)}
.siteHeader:not(.headerDark) .menuButton span{background:var(--ink)}
.siteHeader.scrolled .navCta{border-color:rgba(38,29,24,.45)}
.siteHeader.scrolled .menuButton span{background:var(--ink)}
.heroShade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(23,14,10,.80) 0%,rgba(30,18,13,.38) 50%,rgba(0,0,0,.12) 100%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 45%); }
.nav { display:flex; align-items:center; justify-content:space-between; position:relative; z-index:3; }
.brand { display:flex; gap:13px; align-items:center; }
.brandMark { width:38px;height:38px;border:1px solid currentColor;display:grid;place-items:center;font-family:'Italiana';font-size:11px;letter-spacing:.08em; }
.brand strong,.brand small { display:block; letter-spacing:.26em; font-size:15px; line-height:1.2; }
.brand small { font-size:7px; opacity:.72; margin-top:3px; }
.navLinks { display:flex; align-items:center; gap:34px; font-size:12px; letter-spacing:.08em; }
.navLinks>a:not(.navCta){ position:relative; }
.navLinks>a:not(.navCta)::after { content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:currentColor;transition:.3s; }
.navLinks>a:hover::after { right:0; }
.navCta { border:1px solid rgba(255,255,255,.7); padding:14px 20px; }
.menuButton { display:none;background:none;border:0;padding:10px; }
.menuButton span { display:block;width:25px;height:1px;background:white;margin:6px; }
.heroContent { position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:center;padding-block:80px; }
.eyebrow { margin:0 0 28px; text-transform:uppercase;letter-spacing:.25em;font-size:10px;font-weight:600;color:var(--bronze); }
.eyebrow.light { color:#e6c6a6; }
h1,h2 { font-family:'Italiana',serif;font-weight:400;margin:0;letter-spacing:-.03em; }
h1 { font-size:clamp(62px,7.6vw,118px);line-height:.89;max-width:980px; }
h1 em,h2 em { font-weight:400; }
.heroCopy { max-width:540px;font-size:17px;line-height:1.75;font-weight:300;margin:34px 0 38px;opacity:.88; }
.heroActions { display:flex;gap:34px;align-items:center; }
.button { display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.16em;font-size:10px;min-height:54px;padding:0 27px;transition:.3s; }
.button.filled { background:#f2e8da;color:var(--ink); }
.button.filled:hover { background:white;transform:translateY(-2px); }
.button.outline { color:white;border:1px solid rgba(255,255,255,.65); }
.button.dark { background:var(--ink);color:white; }
.textLink { display:inline-flex;gap:14px;align-items:center;text-transform:uppercase;letter-spacing:.13em;font-size:10px;border-bottom:1px solid rgba(38,29,24,.35);padding-bottom:8px; }
.lightLink { border-color:rgba(255,255,255,.5); }
.heroFoot { position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:23px 0;font-size:9px;text-transform:uppercase;letter-spacing:.18em;border-top:1px solid rgba(255,255,255,.22); }
.scrollCue i { display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.4);border-radius:50%;margin-left:10px;font-style:normal; }
.intro { padding:150px 0; }
.introGrid { display:grid;grid-template-columns:1fr 2fr;gap:70px; }
.intro h2,.contactTeaser h2 { font-size:clamp(54px,6vw,88px);line-height:1; }
.intro p:not(.eyebrow) { max-width:570px;color:#6e625a;font-size:16px;line-height:1.85;margin:38px 0 30px; }
.residencePreview { min-height:760px;display:grid;grid-template-columns:1.3fr 1fr;background:var(--wine);color:white; }
.buildingCard { background:url('/luxe-residences.jpg') center/cover no-repeat;min-height:560px; }
.previewCopy { padding:100px 9vw;display:flex;flex-direction:column;justify-content:center;align-items:flex-start; }
.previewCopy h2 { font-size:clamp(50px,5vw,76px);line-height:1; }
.previewCopy>p:not(.eyebrow) { color:#d7c7bb;line-height:1.85;max-width:430px;margin:34px 0; }
.contactTeaser { padding:150px 30px;text-align:center;background:var(--cream); }
.contactTeaser .button { margin-top:42px; }
.sectionHead { display:flex;justify-content:space-between;gap:40px;align-items:flex-start;margin-bottom:80px; }
.sectionHead h2 { font-size:clamp(50px,5.5vw,82px);line-height:1; }
.editorialSplit { display:grid;grid-template-columns:1.06fr .94fr;min-height:820px;background:var(--cream); }
.photoPanel { background:linear-gradient(135deg,#4a3b31,#261d18) center/cover no-repeat; }
.tallPhoto { margin:70px 0 70px 6vw; }
.editorialCopy { padding:110px 8vw;display:flex;flex-direction:column;justify-content:center;align-items:flex-start; }
.editorialCopy h2 { font-size:clamp(50px,5vw,78px);line-height:1; }
.editorialCopy>p:not(.eyebrow) { color:#6e625a;line-height:1.9;max-width:500px;margin:34px 0; }
.stats { display:flex;gap:60px;margin:10px 0 45px; }
.stats div { display:flex;flex-direction:column;gap:8px; }
.stats strong { font-family:'Italiana';font-size:32px;font-weight:400; }
.stats span { font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#7f7167; }
.featureSection { padding:145px 0;background:var(--paper); }
.featureGrid { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d8cec2; }
.featureGrid article { padding:38px 44px 20px 0;border-right:1px solid #d8cec2; }
.featureGrid article+article { padding-left:44px; }.featureGrid article:last-child{border-right:0}
.featureGrid span,.valuesGrid span { color:var(--bronze);font-size:10px;letter-spacing:.16em; }
.featureGrid h3,.valuesGrid h3 { font-family:'Italiana';font-size:32px;font-weight:400;margin:55px 0 17px; }
.featureGrid p,.valuesGrid p { color:#756960;line-height:1.8;font-size:14px; }
.experienceBand { min-height:720px;display:grid;grid-template-columns:1.2fr .8fr;background:#331d18;color:white; }
.experienceImage { background:linear-gradient(rgba(20,10,7,.1),rgba(20,10,7,.28)),linear-gradient(135deg,#4a3b31,#261d18) center/cover no-repeat;filter:saturate(.8); }
.experienceCopy { padding:90px 8vw;display:flex;flex-direction:column;justify-content:center;align-items:flex-start; }
.experienceCopy blockquote { font-family:'Italiana';font-size:clamp(42px,4.5vw,67px);line-height:1.08;margin:15px 0 55px; }
.filmSection{padding:145px 0;background:#201713;color:white;scroll-margin-top:30px}.filmIntro{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;margin-bottom:70px}.filmIntro h2{font-size:clamp(52px,5.5vw,82px);line-height:1}.filmIntro p:not(.eyebrow){max-width:560px;color:#baa99e;line-height:1.8}.filmGrid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.filmGrid article{display:grid;grid-template-columns:minmax(230px,.72fr) 1fr;background:#2d211c;min-height:560px}.filmGrid video{width:100%;height:100%;object-fit:cover;background:#120d0b}.filmGrid article>div{padding:55px 40px;align-self:end}.filmGrid span{color:#d0a67f;font-size:10px;letter-spacing:.16em}.filmGrid h3{font-family:'Italiana';font-weight:400;font-size:34px;margin:35px 0 18px}.filmGrid p{color:#ad9e93;line-height:1.8;font-size:13px}
.locationSection { padding:150px 0 0;background:var(--paper); }
.locationGrid { display:grid;grid-template-columns:1.3fr .7fr;gap:100px;align-items:end; }
.locationGrid h2 { font-size:clamp(48px,5vw,76px);line-height:1; }
.locationGrid>div:last-child p { color:#71645c;line-height:1.8;margin:0 0 32px; }
.mapAbstract { height:290px;margin-top:100px;background:#c9b9a4;display:flex;align-items:center;justify-content:center;gap:35px;color:#5d4b3c;font-size:9px;letter-spacing:.2em; }
.mapAbstract i { height:1px;width:min(170px,12vw);background:#8f7c68; }.mapAbstract b { width:70px;height:70px;border-radius:50%;background:var(--wine);color:white;display:grid;place-items:center;font-size:10px;letter-spacing:.14em; }
.closingCta { padding:150px 30px;text-align:center;background:var(--cream); }.closingCta h2{font-size:clamp(54px,6vw,90px);line-height:1}.closingCta .button{margin-top:45px}
.footer { background:#201713;color:#ddd0c5;padding-top:100px; }
.footerTop { display:flex;align-items:flex-end;justify-content:space-between;gap:50px;padding-bottom:80px;border-bottom:1px solid #4b3f38; }
.footerTop h2 { font-size:clamp(38px,4vw,62px);line-height:1;margin-right:auto;margin-left:6vw; }
.footerBrand { display:flex;align-items:center;gap:15px; }.footerBrand strong,.footerBrand small{display:block;letter-spacing:.24em}.footerBrand small{font-size:7px;margin-top:4px}.cream{background:#efe3d4;color:var(--ink)}
.footerGrid { display:grid;grid-template-columns:1.3fr 1.3fr 1fr 1fr;gap:50px;padding:65px 0; }.footerGrid p{font-size:13px;line-height:2;color:#ad9e93}.footerLabel{color:#e5d6ca!important;text-transform:uppercase;letter-spacing:.18em;font-size:9px!important}
.footerBottom { display:flex;justify-content:space-between;padding:25px 0;border-top:1px solid #4b3f38;color:#7f7169;text-transform:uppercase;font-size:8px;letter-spacing:.15em; }
.pageHero { min-height:720px;background:var(--cream);display:flex;flex-direction:column; }.pageHero.imageHero{background:linear-gradient(rgba(25,14,10,.58),rgba(25,14,10,.45)),linear-gradient(135deg,#4a3b31,#261d18) center/cover no-repeat;color:white}.pageHeroShade{display:none}
.pageHeroInner { flex:1;display:flex;flex-direction:column;justify-content:center;padding:170px 0 110px; }.pageHeroInner h1{font-size:clamp(64px,8vw,112px);line-height:.92;max-width:1100px}.pageHeroInner>p:last-child{max-width:580px;line-height:1.8;font-size:17px;margin:34px 0 0;color:#75675e}.imageHero .pageHeroInner>p:last-child{color:#e2d7cf}
.storySection{padding:150px 0}.storyGrid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.storyGrid h2{font-size:clamp(52px,5vw,80px);line-height:1}.storyGrid p{max-width:650px;line-height:1.9;color:#6d6159}.storyGrid .lead{font-family:'Italiana';font-size:28px;color:var(--ink);line-height:1.45;margin:40px 0}
.values{background:var(--wine);color:white;padding:130px 0}.valuesGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #79554c}.valuesGrid article{padding:45px 55px 20px 0;border-right:1px solid #79554c}.valuesGrid article+article{padding-left:55px}.valuesGrid article:last-child{border-right:0}.valuesGrid p{color:#cbb8b0}
.quoteSection{min-height:720px;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--cream)}.photoFrame{height:580px;background:linear-gradient(135deg,#4a3b31,#261d18) center/cover no-repeat;margin-left:6vw}.quoteSection blockquote{font-family:'Italiana';font-size:clamp(48px,5vw,76px);line-height:1.1;padding:7vw;margin:0}
.homesList{padding:130px 0}.homeCard{display:grid;grid-template-columns:1.05fr .95fr;min-height:560px;margin-bottom:80px;background:var(--cream)}.homeCard:nth-child(even){grid-template-columns:.95fr 1.05fr}.homeCard:nth-child(even) .homeVisual{order:2}.homeVisual{background-size:cover;position:relative}.homeVisual span{position:absolute;top:25px;left:25px;width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:rgba(30,20,15,.82);color:white;font-size:10px}.crop1{background-image:linear-gradient(135deg,#4a3b31,#261d18);background-position:center}.crop2{background-image:linear-gradient(135deg,#4a3b31,#261d18);background-position:center}.crop3{background-image:linear-gradient(135deg,#4a3b31,#261d18);background-position:center}.homeCopy{padding:80px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.homeCopy h2{font-size:clamp(42px,4vw,62px)}.homeCopy>p:not(.eyebrow){color:#70635b;line-height:1.8}.homeCopy small{font-size:9px;text-transform:uppercase;letter-spacing:.15em;margin:15px 0 40px;color:var(--bronze)}
.included{padding:110px 0;background:#e7ddcf}.includedGrid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #c7b8a6}.includedGrid div{padding:32px;border-bottom:1px solid #c7b8a6;font-size:13px}.includedGrid span{color:var(--bronze);margin-right:18px}
.galleryGrid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;padding:110px 0}.galleryItem{margin:0;grid-column:span 5}.galleryItem:nth-child(2),.galleryItem:nth-child(5){grid-column:span 7}.galleryItem:nth-child(3){grid-column:span 7}.galleryItem:nth-child(4),.galleryItem:nth-child(6){grid-column:span 5}.galleryItem:last-child{grid-column:span 12}.galleryItem img{display:block;width:100%;height:430px;object-fit:cover}.galleryItem:nth-child(2n) img{object-position:right center}.galleryItem:nth-child(3n) img{object-position:left bottom}.galleryItem:last-child img{height:650px}.galleryItem figcaption{text-transform:uppercase;letter-spacing:.15em;font-size:9px;margin-top:14px;color:#74665d}
.contactSection{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;padding:130px 0}.contactDetails h2{font-size:clamp(42px,4vw,62px)}.contactDetails>p:not(.eyebrow){color:#71655d;line-height:1.8}.contactDetails dl{margin-top:55px}.contactDetails dl div{padding:22px 0;border-top:1px solid #d5cbc0;display:grid;grid-template-columns:120px 1fr}.contactDetails dt{text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:var(--bronze)}.contactDetails dd{margin:0;font-size:13px}.enquiryCard{background:var(--cream);padding:70px}.field{display:flex;flex-direction:column;gap:10px;margin-bottom:25px}.field label{text-transform:uppercase;letter-spacing:.14em;font-size:9px}.field input,.field textarea,.field select{width:100%;background:transparent;border:0;border-bottom:1px solid #bdae9f;padding:13px 0;font:inherit;color:var(--ink);outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--bronze)}.formRow{display:grid;grid-template-columns:1fr 1fr;gap:30px}.success{text-align:center;padding:70px 0}.success>span{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--wine);color:white;margin:0 auto 35px}.success h2{font-size:60px}.success p:not(.eyebrow){color:#71655d}.success button{background:none;margin-top:30px}
@media(max-width:850px){
 .shell{width:min(100% - 38px,1280px)} .siteHeader{top:10px}.siteHeader.scrolled{top:8px}.siteHeader .nav{width:calc(100% - 20px);height:70px;padding:0 17px}.menuButton{display:block;z-index:4;cursor:pointer}.menuButton span{transition:transform .3s ease,opacity .2s ease}.menuOpen .menuButton span:first-child{transform:translateY(3.5px) rotate(45deg)}.menuOpen .menuButton span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.navLinks{display:flex;position:fixed;top:90px;left:10px;right:10px;max-height:calc(100svh - 100px);overflow:auto;background:rgba(32,23,19,.98);color:white;padding:38px 28px 30px;flex-direction:column;align-items:stretch;gap:0;border-radius:3px;box-shadow:0 24px 60px rgba(20,12,9,.28);opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .25s ease,transform .25s ease,visibility .25s}.navLinks.open{opacity:1;visibility:visible;transform:translateY(0)}.navLinks a{padding:17px 0;border-bottom:1px solid rgba(255,255,255,.13);font-family:'Italiana';font-size:25px;letter-spacing:0}.navLinks>a:not(.navCta)::after{display:none}.navLinks .navCta{margin-top:22px;padding:17px 20px;border:1px solid rgba(255,255,255,.5);font-family:'DM Sans';font-size:10px;letter-spacing:.16em;text-align:center}.siteHeader.menuOpen{color:white}.siteHeader.menuOpen .menuButton span{background:white}.menuLocked{overflow:hidden}
 h1{font-size:clamp(52px,16vw,76px)}.heroFoot span:nth-child(2){display:none}.intro{padding:100px 0}.introGrid{grid-template-columns:1fr;gap:35px}.residencePreview{grid-template-columns:1fr}.buildingCard{min-height:430px}.previewCopy{padding:80px 32px}.heroActions{align-items:flex-start;flex-direction:column;gap:24px}
 .editorialSplit,.experienceBand,.quoteSection,.homeCard,.homeCard:nth-child(even),.contactSection{grid-template-columns:1fr}.tallPhoto{margin:30px 19px;min-height:500px}.editorialCopy{padding:80px 32px}.featureGrid,.valuesGrid{grid-template-columns:1fr}.featureGrid article,.featureGrid article+article,.valuesGrid article,.valuesGrid article+article{padding:35px 0;border-right:0;border-bottom:1px solid #d8cec2}.experienceImage{min-height:500px}.filmIntro{grid-template-columns:1fr;gap:30px}.filmGrid{grid-template-columns:1fr}.filmGrid article{grid-template-columns:minmax(180px,.75fr) 1fr}.locationGrid,.storyGrid{grid-template-columns:1fr;gap:45px}.footerTop{align-items:flex-start;flex-direction:column}.footerTop h2{margin:0}.footerGrid{grid-template-columns:1fr 1fr}.homeCard:nth-child(even) .homeVisual{order:0}.homeVisual{min-height:430px}.homeCopy{padding:60px 32px}.quoteSection{padding:50px 0}.photoFrame{margin:0 19px;height:460px}.galleryGrid{display:block}.galleryItem{margin-bottom:35px}.galleryItem img,.galleryItem:last-child img{height:430px}.contactSection{gap:45px}.enquiryCard{padding:45px 28px}.pageHero{min-height:640px}
}
@media(max-width:520px){.heroFoot span:last-child{display:none}.heroContent{padding-block:65px}.heroCopy{font-size:15px}.intro h2,.contactTeaser h2{font-size:48px}.sectionHead{display:block}.sectionHead h2{margin-top:25px}.stats{gap:28px}.filmSection{padding:100px 0}.filmGrid article{grid-template-columns:1fr}.filmGrid video{height:560px}.filmGrid article>div{padding:38px 28px}.footerGrid{grid-template-columns:1fr}.footerBottom{flex-direction:column;gap:12px}.formRow{grid-template-columns:1fr}.mapAbstract span{display:none}.homeVisual{min-height:340px}}
