:root{--ink:#0a1932;--charcoal:#07162d;--blue:#b88922;--blue-soft:#f3ead8;--paper:#faf9f6;--white:#fff;--muted:#667181;--line:#e5e1d9;--radius:18px;--shadow:0 24px 70px rgba(7,22,45,.14);--shell:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:Arial,"Helvetica Neue",sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}body.nav-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}button,input,textarea{font:inherit}.shell{width:min(calc(100% - 48px),var(--shell));margin:auto}.section{padding:115px 0}.pale{background:var(--paper)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.04em;line-height:1.06}h1{font-size:clamp(3.4rem,6.5vw,7rem)}h2{font-size:clamp(2.5rem,4.5vw,4.5rem)}h3{font-size:1.35rem}.kicker{display:flex;align-items:center;gap:12px;margin-bottom:22px;color:var(--blue);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.kicker:before{width:30px;height:1px;background:currentColor;content:""}.kicker.light{color:#dcb74b}.lead{color:var(--muted);font-size:1.08rem}.skip{position:fixed;z-index:9999;top:8px;left:8px;padding:10px 14px;background:#fff;transform:translateY(-150%)}.skip:focus{transform:none}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s,transform .75s}.reveal.visible{opacity:1;transform:none}
/* Navigation */
.header{position:absolute;z-index:100;top:0;left:0;width:100%;height:88px;color:#fff;border-bottom:1px solid rgba(255,255,255,.22);transition:.25s}.header.dark{position:relative;color:var(--ink);background:#fff;border-color:var(--line)}.header.scrolled{position:fixed;height:74px;color:#fff;background:rgba(7,22,45,.97);border-color:transparent;box-shadow:0 5px 25px rgba(0,0,0,.12)}.nav{display:flex;height:100%;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand-mark{position:relative;display:block;width:52px;height:52px;overflow:hidden;flex:0 0 52px;border:1px solid rgba(184,137,34,.45);border-radius:50%;background:#fff}.brand-mark img{position:absolute;top:-7px;left:-11px;width:74px;height:74px;max-width:none}.brand b{max-width:150px;font-family:Georgia,"Times New Roman",serif;font-size:.78rem;font-weight:400;line-height:1.18;letter-spacing:.1em;text-transform:uppercase}.brand b small{display:block;margin-top:4px;color:#d5ab3c;font-family:Arial,sans-serif;font-size:.46rem;font-weight:700;letter-spacing:.14em}.nav nav{display:flex;align-items:center;gap:30px}.nav nav a{position:relative;font-size:.75rem;font-weight:600;letter-spacing:.07em}.nav nav a:after{position:absolute;bottom:-9px;left:0;width:0;height:1px;background:#d5ab3c;content:"";transition:.25s}.nav nav a:hover:after,.nav nav a.active:after{width:100%}.menu{display:none;border:0;background:none;color:inherit}
/* Buttons and links */
.btn{display:inline-flex;min-height:56px;padding:0 23px;align-items:center;justify-content:space-between;gap:45px;border-radius:50px;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:.25s}.btn:hover{transform:translateY(-3px)}.light-btn{color:var(--ink);background:#fff}.outline-btn{color:#fff;border:1px solid rgba(255,255,255,.5)}.dark-btn{color:#fff;border:0;background:var(--charcoal);cursor:pointer}.arrow-link{display:inline-flex;gap:20px;align-items:center;padding-bottom:4px;border-bottom:1px solid #9eb2bc;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
/* Home */
.home-hero{position:relative;display:flex;min-height:860px;align-items:flex-end;overflow:hidden;color:#fff}.home-hero>img{position:absolute;inset:0;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,22,45,.9),rgba(7,22,45,.24) 70%),linear-gradient(0deg,rgba(7,22,45,.62),transparent 50%)}.hero-copy{position:relative;z-index:2;padding:190px 0 115px}.hero-copy h1{max-width:970px;margin-bottom:28px}.hero-copy>p:not(.kicker){max-width:620px;margin-bottom:37px;color:#e0e4e9;font-size:1.05rem}.scroll-note{position:absolute;z-index:2;right:35px;bottom:100px;color:#d5ab3c;font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;writing-mode:vertical-rl}.intro-grid{display:grid;grid-template-columns:1fr .85fr;gap:120px}.intro-grid h2{margin:0}.intro-grid .arrow-link{margin-top:20px}.stats{padding:70px 0;background:var(--paper);border-block:1px solid var(--line)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat-grid>div{padding:0 35px;border-right:1px solid var(--line)}.stat-grid>div:first-child{padding-left:0}.stat-grid>div:last-child{border:0}.stat-grid strong,.stat-grid span{display:block}.stat-grid strong{color:var(--blue);font-family:Georgia,serif;font-size:3.6rem;font-weight:400;line-height:1}.stat-grid span{margin-top:12px;color:var(--muted);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.section-head{display:flex;margin-bottom:55px;align-items:end;justify-content:space-between;gap:40px}.section-head h2{margin:0}.section-head>p{max-width:340px;color:var(--muted)}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.property-card figure{position:relative;height:430px;margin:0 0 25px;overflow:hidden;border-radius:var(--radius);background:#d8dfe1}.property-card figure img{height:100%;object-fit:cover;transition:transform .6s}.property-card figure:after{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,22,45,.65),transparent 45%);opacity:0;content:"";transition:.3s}.property-card figure span{position:absolute;z-index:2;right:20px;bottom:20px;padding:10px 15px;color:#fff;border:1px solid rgba(213,171,60,.8);border-radius:30px;opacity:0;font-size:.65rem;text-transform:uppercase;transition:.3s}.property-card:hover figure img{transform:scale(1.04)}.property-card:hover figure:after,.property-card:hover figure span{opacity:1}.property-card p{margin-bottom:7px;color:var(--blue);font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.property-card h3{margin-bottom:5px;font-family:Georgia,serif;font-size:1.55rem;font-weight:400}.property-card small{color:var(--muted)}.transformation{padding:115px 0;color:#fff;background:var(--charcoal);border-top:3px solid #b88922}.transform-grid{display:grid;align-items:center;grid-template-columns:.7fr 1.3fr;gap:90px}.transform-grid h2{margin-bottom:25px}.transform-grid p{color:#c0c6d0}.mini-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mini-compare div{position:relative;overflow:hidden;border-radius:var(--radius)}.mini-compare img{height:440px;object-fit:cover}.mini-compare b{position:absolute;bottom:15px;left:15px;padding:7px 12px;color:var(--ink);background:#fff;border-radius:20px;font-size:.65rem;text-transform:uppercase}.quote{text-align:center}.quote .kicker{justify-content:center}.quote blockquote{max-width:950px;margin:30px auto;color:var(--ink);font-family:Georgia,serif;font-size:clamp(2rem,4vw,4rem);line-height:1.25}.quote span{color:var(--muted);font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.cta{padding:90px 0;color:#fff;background:linear-gradient(120deg,#9b7118,#c89a2e)}.cta>.shell{display:flex;align-items:end;justify-content:space-between;gap:50px}.cta h2{max-width:800px;margin:0}
/* Shared inner pages */
.page-hero{padding:120px 0 105px;background:var(--paper)}.page-hero h1{max-width:900px;margin-bottom:25px}.page-hero p:last-child{max-width:650px;color:var(--muted);font-size:1.05rem}.story-grid{display:grid;align-items:center;grid-template-columns:1fr 1fr;gap:100px}.rounded-image{min-height:560px;object-fit:cover;border-radius:var(--radius)}.story-grid p:not(.kicker){color:var(--muted)}.value-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.value-grid article{padding:35px 35px 10px 0;border-right:1px solid var(--line)}.value-grid article+article{padding-left:35px}.value-grid article:last-child{border:0}.value-grid span{color:var(--blue);font-size:.7rem}.value-grid h3{margin:30px 0 12px;font-family:Georgia,serif;font-weight:400}.value-grid p{color:var(--muted);font-size:.9rem}.philosophy{color:#fff;background:var(--charcoal)}.philosophy .lead{color:#bcc8cd}
/* Properties index */
.portfolio-list{display:grid;gap:100px}.portfolio-row{display:grid;align-items:center;grid-template-columns:1.15fr .85fr;gap:80px}.portfolio-row.reverse figure{order:2}.portfolio-row figure{height:530px;margin:0;overflow:hidden;border-radius:var(--radius)}.portfolio-row img{height:100%;object-fit:cover;transition:.6s}.portfolio-row:hover img{transform:scale(1.03)}.portfolio-row h2{margin-bottom:22px}.portfolio-row p:not(.kicker){color:var(--muted)}
/* Projects */
.project-stack{display:grid;gap:120px}.project-images{display:grid;grid-template-columns:1fr 1fr;gap:12px}.project-images img{height:430px;object-fit:cover;border-radius:var(--radius)}.project-copy{display:grid;margin-top:34px;grid-template-columns:.8fr 1fr;gap:80px}.project-copy h2{margin:15px 0 0}.project-copy>p{color:var(--muted)}.status{display:inline-block;padding:7px 12px;border-radius:20px;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.status.complete{color:#386350;background:#e2eee8}.status.active{color:#705e20;background:#f2eac8}.project-copy .kicker{margin-top:18px;margin-bottom:0}
/* Gallery */
.filters{display:flex;margin-bottom:45px;flex-wrap:wrap;gap:10px}.filters button{padding:10px 17px;color:var(--muted);border:1px solid var(--line);border-radius:30px;background:#fff;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.filters button.active,.filters button:hover{color:#fff;background:var(--charcoal);border-color:var(--charcoal)}.masonry{columns:3;column-gap:20px}.masonry figure{position:relative;margin:0 0 20px;overflow:hidden;border-radius:var(--radius);break-inside:avoid;transition:opacity .3s,transform .3s}.masonry figure.hidden{display:none}.masonry img{height:330px;object-fit:cover;transition:.5s}.masonry .tall img{height:470px}.masonry figure:hover img{transform:scale(1.04)}.masonry figcaption{position:absolute;right:0;bottom:0;left:0;padding:45px 20px 18px;color:#fff;background:linear-gradient(0deg,rgba(20,30,35,.85),transparent);font-family:Georgia,serif;font-size:1.1rem}.masonry figcaption span{display:block;font-family:Arial,sans-serif;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase}
/* Property detail */
.property-hero{position:relative;display:flex;height:780px;align-items:flex-end;color:#fff}.property-hero>img{position:absolute;inset:0;height:100%;object-fit:cover}.property-hero>.shell{position:relative;z-index:2;padding-bottom:80px}.property-hero h1{margin-bottom:10px}.property-hero span{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.property-intro dl{display:grid;margin-top:45px;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.property-intro dl div{padding:20px 0;border-bottom:1px solid var(--line)}.property-intro dt{color:var(--muted);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}.property-intro dd{margin:4px 0 0}.comparison{--pos:50%;position:relative;overflow:hidden;aspect-ratio:1.75;border-radius:var(--radius);box-shadow:var(--shadow);touch-action:none;cursor:ew-resize}.comparison img{position:absolute;inset:0;height:100%;object-fit:cover}.comparison .before{position:absolute;inset:0;overflow:hidden;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}.compare-handle{position:absolute;top:0;bottom:0;left:var(--pos);width:3px;padding:0;border:0;background:#fff;transform:translateX(-50%);cursor:ew-resize}.compare-handle i{position:absolute;top:50%;left:50%;display:grid;width:54px;height:54px;place-items:center;color:var(--ink);background:#fff;border-radius:50%;box-shadow:0 5px 20px rgba(0,0,0,.2);font-style:normal;transform:translate(-50%,-50%)}.tag{position:absolute;top:20px;padding:8px 13px;color:#fff;background:rgba(20,30,35,.75);border-radius:20px;font-size:.63rem;text-transform:uppercase}.before-tag{left:20px}.after-tag{right:20px}.renovation-copy{display:grid;padding:55px 0;grid-template-columns:.55fr 1fr;gap:80px}.renovation-copy h3{font-family:Georgia,serif;font-size:2rem;font-weight:400}.renovation-copy p{color:var(--muted)}.progress-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:18px}.progress-grid img{height:360px;object-fit:cover;border-radius:var(--radius)}.next-property{padding:75px 0;background:var(--blue-soft)}.next-property span{display:block;color:var(--blue);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}.next-property a{display:flex;margin-top:12px;align-items:center;justify-content:space-between;font-family:Georgia,serif;font-size:clamp(2rem,5vw,4rem)}
/* Contact */
.contact-grid{display:grid;grid-template-columns:.8fr 1fr;gap:110px}.contact-copy>p:not(.kicker){color:var(--muted)}.contact-lines{margin:35px 0;border-top:1px solid var(--line)}.contact-lines>div{padding:18px 0;border-bottom:1px solid var(--line)}.contact-lines small,.contact-lines a,.contact-lines span{display:block}.contact-lines small{color:var(--blue);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}.contact-copy em{color:var(--muted);font-size:.75rem}.contact-form{padding:45px;background:var(--paper);border-radius:var(--radius)}.contact-form label{display:block;margin-bottom:20px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:7px;padding:13px 0;border:0;border-bottom:1px solid #aeb8bc;border-radius:0;outline:0;background:transparent;font-size:.95rem;text-transform:none}.contact-form textarea{padding:13px;border:1px solid #aeb8bc;border-radius:8px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue)}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.map-wrap iframe{display:block;width:100%;height:470px;border:0;filter:grayscale(.25)}
/* Footer */
.footer{padding:80px 0 20px;color:#aeb7c5;background:#051127;border-top:1px solid #8f6b1e}.footer-grid{display:grid;padding-bottom:60px;grid-template-columns:1.7fr .7fr 1fr;gap:80px}.footer-brand{color:#fff}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:9px}.footer-grid>div>b{margin-bottom:10px;color:#d5ab3c;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.footer-grid p,.footer-grid a,.footer-grid span{font-size:.78rem}.footer-grid p{max-width:350px;margin-top:22px}.footer-grid a:hover{color:#d5ab3c}.footer-bottom{display:flex;padding-top:20px;justify-content:space-between;border-top:1px solid rgba(213,171,60,.22);font-size:.66rem}
/* Responsive */
@media(max-width:980px){.section{padding:90px 0}.menu{position:relative;z-index:3;display:block;width:45px;height:45px;padding:8px}.menu i{display:block;width:100%;height:1px;margin:8px 0;background:currentColor;transition:.25s}.menu[aria-expanded=true] i:first-child{transform:translateY(4.5px) rotate(45deg)}.menu[aria-expanded=true] i:last-child{transform:translateY(-4.5px) rotate(-45deg)}.nav nav{position:fixed;z-index:2;inset:0;display:flex;padding:120px 35px 50px;flex-direction:column;align-items:flex-start;gap:24px;color:#fff;background:var(--charcoal);transform:translateX(100%);transition:.3s}.nav nav.open{transform:none}.nav nav a{font-family:Georgia,serif;font-size:1.7rem;font-weight:400}.intro-grid{gap:60px}.property-grid{grid-template-columns:repeat(2,1fr)}.property-card:last-child{grid-column:1/-1;width:50%}.stat-grid strong{font-size:2.8rem}.transform-grid{gap:50px}.story-grid,.portfolio-row,.contact-grid{gap:60px}.value-grid{grid-template-columns:repeat(2,1fr)}.value-grid article:nth-child(2){border:0}.project-copy{gap:40px}.masonry{columns:2}.progress-grid img{height:280px}}
@media(max-width:700px){.shell{width:min(calc(100% - 32px),var(--shell))}.section{padding:72px 0}h1{font-size:clamp(2.8rem,13vw,4.2rem)}h2{font-size:2.55rem}.header{height:74px}.header.scrolled{height:68px}.brand-mark{width:44px;height:44px;flex-basis:44px}.brand-mark img{top:-6px;left:-9px;width:62px;height:62px}.brand b{font-size:.68rem}.brand b small{font-size:.4rem}.home-hero{min-height:760px}.hero-copy{padding:150px 0 80px}.scroll-note{display:none}.intro-grid,.story-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.stats{padding:40px 0}.stat-grid{grid-template-columns:1fr 1fr;gap:30px 0}.stat-grid>div{padding:0 15px}.stat-grid>div:nth-child(2){border:0}.stat-grid>div:nth-child(3){padding-left:0}.stat-grid strong{font-size:2.4rem}.section-head{align-items:flex-start;flex-direction:column}.property-grid{grid-template-columns:1fr}.property-card:last-child{grid-column:auto;width:auto}.property-card figure{height:380px}.transformation{padding:75px 0}.transform-grid{grid-template-columns:1fr}.mini-compare img{height:270px}.cta>.shell{align-items:flex-start;flex-direction:column}.cta .btn{width:100%}.page-hero{padding:85px 0 70px}.rounded-image{min-height:380px}.value-grid{grid-template-columns:1fr}.value-grid article,.value-grid article+article{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.portfolio-list{gap:70px}.portfolio-row{grid-template-columns:1fr;gap:30px}.portfolio-row.reverse figure{order:0}.portfolio-row figure{height:360px}.project-stack{gap:80px}.project-images{gap:6px}.project-images img{height:250px}.project-copy{grid-template-columns:1fr;gap:10px}.masonry{columns:1}.masonry img,.masonry .tall img{height:330px}.property-hero{height:650px}.property-hero>.shell{padding-bottom:55px}.property-intro dl{grid-template-columns:1fr}.comparison{aspect-ratio:1.15}.renovation-copy{grid-template-columns:1fr;gap:5px}.progress-grid{grid-template-columns:1fr 1fr}.progress-grid img{height:230px}.progress-grid img:first-child{grid-column:1/-1}.field-pair{grid-template-columns:1fr;gap:0}.contact-form{padding:28px 20px}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Roselle project journal */
.featured-project{padding-bottom:70px;border-bottom:1px solid var(--line)}
.roselle-hero{position:relative;display:flex;min-height:760px;align-items:flex-end;overflow:hidden;color:#fff;background:var(--charcoal)}
.roselle-hero>img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 46%}
.roselle-hero>.shell{position:relative;z-index:2;padding-bottom:80px}
.roselle-hero .status{margin-bottom:28px;color:#06142b;background:var(--gold-bright)}
.roselle-hero h1{max-width:850px;margin-bottom:20px}
.roselle-hero p:last-child{max-width:620px;color:#e1e4e9;font-size:1.05rem}
.project-overview dl{display:grid;margin-top:42px;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.project-overview dl div{padding:18px 0;border-bottom:1px solid var(--line)}
.project-overview dt{color:var(--gold);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.project-overview dd{margin:4px 0 0}
.progress-chapter{overflow:hidden}
.chapter-head{display:grid;margin-bottom:52px;grid-template-columns:90px 1fr;align-items:start}
.chapter-head>span{color:var(--gold);font-family:Georgia,serif;font-size:3.5rem;line-height:1}
.chapter-head h2{margin-bottom:12px}
.chapter-head p:last-child{max-width:650px;color:var(--muted)}
.stage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.stage-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 16px 45px rgba(6,20,43,.07)}
.stage-card figure{position:relative;height:340px;margin:0;overflow:hidden;background:#d9d9d4}
.stage-card figure.portrait{height:500px}
.stage-card figure img{height:100%;object-fit:cover;transition:transform .6s}
.stage-card:hover figure img{transform:scale(1.025)}
.stage-card figure b{position:absolute;right:16px;bottom:16px;padding:8px 12px;color:#fff;background:rgba(6,20,43,.84);border:1px solid rgba(217,173,66,.55);border-radius:30px;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}
.stage-card>div:not(.coming-mark){padding:28px}
.stage-card>div>span{color:var(--gold);font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.stage-card h3{margin:12px 0 10px;font-family:Georgia,serif;font-size:1.45rem;font-weight:400}
.stage-card p{margin:0;color:var(--muted);font-size:.88rem}
.coming-soon-card{display:grid;min-height:100%;place-items:center;color:#fff;background:linear-gradient(145deg,#06142b,#10274b);border-color:#836118}
.coming-mark{display:flex;min-height:100%;padding:45px;align-items:flex-start;justify-content:center;flex-direction:column}
.coming-mark i{display:block;width:42px;height:1px;margin-bottom:45px;background:var(--gold-bright)}
.coming-mark span{color:var(--gold-bright)}
.coming-mark strong{margin:18px 0 25px;font-family:Georgia,serif;font-size:clamp(2.6rem,4vw,4.4rem);font-weight:400;line-height:.95;letter-spacing:-.04em}
.coming-mark small{max-width:210px;color:#b8c0cd;font-size:.78rem}
.project-follow{padding:105px 0;color:#fff;background:linear-gradient(120deg,#8d6615,#c2942b)}
.project-follow h2{max-width:850px;margin-bottom:18px}
.project-follow>div>p:not(.kicker){max-width:620px;margin-bottom:32px;color:#fff7e4}

@media(max-width:980px){.stage-grid{grid-template-columns:1fr 1fr}.coming-soon-card{grid-column:1/-1;min-height:330px}.coming-mark{width:100%}.stage-card figure.portrait{height:430px}}
@media(max-width:700px){.roselle-hero{min-height:680px}.roselle-hero>.shell{padding-bottom:55px}.project-overview dl{grid-template-columns:1fr}.chapter-head{grid-template-columns:1fr;gap:20px}.chapter-head>span{font-size:2.4rem}.stage-grid{grid-template-columns:1fr}.coming-soon-card{grid-column:auto;min-height:390px}.stage-card figure,.stage-card figure.portrait{height:390px}.coming-mark{padding:38px}.featured-project{padding-bottom:45px}}

/* Brand alignment and logo-led color system */
:root{--ink:#091831;--charcoal:#06142b;--blue:#b98a21;--blue-soft:#f6edd9;--gold:#b98a21;--gold-bright:#d9ad42;--paper:#fbfaf7;--muted:#657082;--line:#e7dfcf;--shadow:0 24px 70px rgba(6,20,43,.14)}
.header{height:96px;border-bottom-color:rgba(217,173,66,.35)}
.header.scrolled{height:78px;background:rgba(6,20,43,.97);border-color:rgba(217,173,66,.28)}
.nav{position:relative;justify-content:center}
.nav>.brand{position:absolute;z-index:2;left:50%;transform:translateX(-50%)}
.brand{gap:11px}
.brand-mark{width:58px;height:58px;flex-basis:58px;border-color:rgba(185,138,33,.55);box-shadow:0 4px 18px rgba(6,20,43,.12)}
.brand-mark img{top:50%;left:50%;width:82px;height:82px;transform:translate(-50%,-50%)}
.brand b{max-width:145px;font-size:.75rem;letter-spacing:.09em}
.brand b small{color:var(--gold-bright)}
.nav nav{width:100%;justify-content:center;gap:25px}
.nav nav a{font-size:.71rem}
.nav nav a:nth-child(3){margin-right:235px}
.nav nav a:after{background:var(--gold-bright)}
.dark-btn{color:var(--charcoal);background:linear-gradient(120deg,var(--gold-bright),var(--gold))}
.arrow-link{border-bottom-color:rgba(185,138,33,.55)}
.transformation,.footer{border-color:var(--gold)}

@media(max-width:980px){
  .nav{justify-content:space-between}
  .nav>.brand{position:static;transform:none}
  .nav nav{width:auto;justify-content:flex-start}
  .nav nav a:nth-child(3){margin-right:0}
}
@media(max-width:700px){
  .header{height:78px}
  .header.scrolled{height:70px}
  .brand-mark{width:48px;height:48px;flex-basis:48px}
  .brand-mark img{width:68px;height:68px}
  .brand b{font-size:.66rem}
  .brand b small{font-size:.39rem}
}

/* Show the supplied logo in full — no clipping or zoom crop. */
.brand-mark{width:68px;height:68px;flex-basis:68px;overflow:hidden;border-radius:8px;background:#fff}
.brand-mark img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain;transform:none}
@media(max-width:700px){
  .brand-mark{width:52px;height:52px;flex-basis:52px}
  .brand-mark img{width:100%;height:100%}
}

/* Layout safety: let cards and text containers grow naturally without clipping. */
.property-card,
.portfolio-row,
.project,
.featured-project,
.stage-card,
.value-grid article,
.contact-form,
.renovation-copy,
.project-copy,
.footer-grid>div{
  min-width:0;
  height:auto;
  max-height:none;
  overflow-wrap:anywhere;
}

.value-grid{align-items:stretch}
.value-grid article{
  display:flex;
  min-height:0;
  padding-bottom:35px;
  flex-direction:column;
  overflow:visible;
}
.value-grid article p{margin-bottom:0}

.progress-chapter{overflow:visible}
.stage-card{
  display:flex;
  min-height:0;
  flex-direction:column;
  overflow:visible;
}
.stage-card figure{
  flex:0 0 auto;
  border-radius:var(--radius) var(--radius) 0 0;
}
.stage-card>div:not(.coming-mark){flex:1 1 auto}
.coming-soon-card{min-height:0}
.coming-mark{min-height:0}

@media(max-width:980px){
  .value-grid article,
  .value-grid article+article{padding-bottom:35px}
}
@media(max-width:700px){
  .value-grid article,
  .value-grid article+article{padding-bottom:28px}
}
