:root {
  --navy: #03152f;
  --navy-soft: #082449;
  --gold: #d7aa4a;
  --gold-light: #f0d285;
  --ivory: #f8f5ee;
  --white: #fff;
  --ink: #172033;
  --muted: #657083;
  --line: rgba(215,170,74,.35);
  --serif: "Cormorant Garamond", Georgia, serif;
  --sans: "Montserrat", Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);line-height:1.7}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.site-header{position:fixed;z-index:20;top:0;left:0;right:0;height:110px;padding:12px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(3,21,47,.94);border-bottom:1px solid rgba(215,170,74,.25);backdrop-filter:blur(14px)}
.brand{height:86px;width:min(270px,42vw);display:block;flex:0 0 auto}
.brand img{width:100%;height:100%;object-fit:contain;object-position:left center;display:block}
.site-nav{display:flex;align-items:center;gap:28px;color:#fff;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
.site-nav a{transition:.2s}.site-nav a:hover{color:var(--gold-light)}
.nav-cta{border:1px solid var(--gold);padding:12px 17px}
.menu-toggle{display:none;border:1px solid var(--gold);background:transparent;color:#fff;padding:9px 12px}
.hero{min-height:100vh;position:relative;background:
 linear-gradient(90deg,rgba(2,13,31,.96) 0%,rgba(3,21,47,.81) 48%,rgba(3,21,47,.28) 100%),
 radial-gradient(circle at 79% 43%,rgba(215,170,74,.35),transparent 19%),
 linear-gradient(145deg,#07152c 20%,#163c67 54%,#c9a35d 155%);display:grid;align-items:center;padding:170px clamp(25px,8vw,120px) 125px;color:#fff;overflow:hidden}
.hero:after{content:"";position:absolute;right:7%;top:18%;width:34vw;height:56vh;border:1px solid rgba(215,170,74,.4);box-shadow:32px 32px 0 rgba(215,170,74,.08);transform:skewY(-4deg);z-index:1}
.hero:before{content:"";position:absolute;right:7%;top:18%;width:34vw;height:56vh;background-image:url("assets/final-sovereign-s-watermark-transparent.png");background-repeat:no-repeat;background-position:center;background-size:62% auto;opacity:.14;transform:skewY(-4deg);z-index:1;pointer-events:none}
.hero-content{position:relative;z-index:2;max-width:760px}
.eyebrow{margin:0 0 12px;color:var(--gold-light);font-size:.72rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase}.eyebrow.dark{color:#9a6f18}
h1,h2,h3{font-family:var(--serif);line-height:1.05;margin-top:0}
h1{font-size:clamp(3.2rem,7vw,6.7rem);font-weight:600;letter-spacing:-.035em;margin-bottom:24px}
h2{font-size:clamp(2.5rem,5vw,4.3rem);font-weight:600;margin-bottom:22px}
h3{font-size:1.75rem;margin-bottom:14px}
.hero-copy{font-size:clamp(1rem,1.4vw,1.25rem);max-width:670px;color:rgba(255,255,255,.82)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 24px;border:1px solid transparent;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.button-gold{background:var(--gold);color:var(--navy)}.button-gold:hover{background:var(--gold-light)}.button-outline{border-color:rgba(255,255,255,.65);color:#fff}.button-outline:hover{background:#fff;color:var(--navy)}
.hero-stats{position:absolute;z-index:2;left:clamp(25px,8vw,120px);right:clamp(25px,8vw,120px);bottom:25px;display:flex;gap:0;border-top:1px solid rgba(255,255,255,.22);padding-top:22px}.hero-stats div{padding-right:55px;margin-right:55px;border-right:1px solid rgba(255,255,255,.2)}.hero-stats div:last-child{border:0}.hero-stats strong,.hero-stats span{display:block}.hero-stats strong{font-family:var(--serif);font-size:1.45rem;color:var(--gold-light)}.hero-stats span{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.65)}
.section-shell{width:min(1180px,calc(100% - 40px));margin:auto}.intro{padding:110px 0;display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.intro p:last-child{font-size:1.08rem;color:var(--muted)}
.services{padding:110px 0;background:var(--navy);color:#fff}.section-heading{max-width:720px;margin-bottom:55px}.section-heading.dark{color:var(--ink)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-card{padding:40px 35px;border-right:1px solid var(--line)}.service-card:last-child{border:0}.service-card span{font-family:var(--serif);font-size:2rem;color:var(--gold)}.service-card p{color:rgba(255,255,255,.65)}.service-card a{color:var(--gold-light);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.properties{padding:115px 0}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.property-card{background:#fff;box-shadow:0 18px 50px rgba(10,22,45,.09)}.property-art{height:275px;position:relative;overflow:hidden;background-size:cover}.property-art:before,.property-art:after{content:"";position:absolute}.property-art span{position:absolute;z-index:2;top:18px;left:18px;background:rgba(3,21,47,.9);color:var(--gold-light);font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;padding:7px 10px}.art-one{background:linear-gradient(145deg,#c3b59d,#eee7d9 42%,#5a6470)}.art-one:before{inset:70px 35px 0;background:#f3efe7;clip-path:polygon(8% 40%,48% 0,92% 40%,92% 100%,8% 100%)}.art-one:after{width:70px;height:90px;right:68px;bottom:0;background:#293c52;box-shadow:-120px 30px 0 #a37f4b}.art-two{background:linear-gradient(150deg,#aec5d5,#f6f1e5 44%,#49653f)}.art-two:before{inset:72px 25px 0;background:#fff9ea;clip-path:polygon(0 35%,48% 4%,100% 35%,100% 100%,0 100%)}.art-two:after{width:95px;height:110px;left:50%;bottom:0;background:#334b62;transform:translateX(-50%);box-shadow:-125px 30px 0 #b18e56,125px 30px 0 #b18e56}.art-three{background:linear-gradient(150deg,#88725f,#efe6d6 44%,#3f514c)}.art-three:before{inset:55px 42px 0;background:#d9c8aa;clip-path:polygon(0 45%,20% 25%,20% 0,35% 0,35% 13%,52% 0,100% 43%,100% 100%,0 100%)}.art-three:after{width:62px;height:100px;left:50%;bottom:0;background:#162a3d;transform:translateX(-50%)}
.property-body{padding:28px}.property-type{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:#9a6f18}.property-body p:not(.property-type){color:var(--muted);font-size:.9rem}.text-button{padding:0;border:0;background:none;color:#9a6f18;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.demo-note{text-align:center;color:var(--muted);font-size:.75rem;margin-top:28px}
.about{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff;min-height:690px}.about-visual{display:grid;place-items:center;background:linear-gradient(145deg,#0d315b,#06162f)}.about-logo-card{width:min(520px,82%);padding:22px;border:1px solid rgba(215,170,74,.35);background:rgba(255,255,255,.04);box-shadow:25px 25px 0 rgba(215,170,74,.09)}.about-logo-card img{display:block;width:100%;height:auto}.about-copy{padding:100px clamp(35px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.about-copy p{color:rgba(255,255,255,.7)}.about-copy .button{align-self:flex-start;margin-top:20px}
.process{padding:115px 0}.process-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.process-grid li{border-top:2px solid var(--gold);padding-top:25px}.process-grid span{font-family:var(--serif);font-size:2rem;color:#9a6f18}.process-grid p{color:var(--muted);font-size:.9rem}
.contact{display:grid;grid-template-columns:1fr 1fr;background:#e9e2d5}.contact-copy{padding:100px clamp(35px,7vw,110px)}.contact-details{margin-top:35px;padding-top:25px;border-top:1px solid rgba(3,21,47,.15);display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact-form{background:#fff;padding:80px clamp(30px,6vw,85px);display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:grid;gap:7px;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.contact-form label:nth-of-type(4),.contact-form label:nth-of-type(5){grid-column:1/-1}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #d4d8de;background:#fbfbfa;padding:13px;color:var(--ink);text-transform:none;letter-spacing:0}.contact-form textarea{resize:vertical}.contact-form button{justify-self:start}.form-status{grid-column:1/-1;margin:0;color:#476044;font-size:.85rem}
footer{background:#020e20;color:rgba(255,255,255,.68);padding:48px clamp(25px,7vw,100px);display:grid;grid-template-columns:1fr 1.4fr auto;gap:40px;align-items:center;border-top:1px solid var(--line);font-size:.78rem}.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.footer-brand img{width:180px;height:180px;object-fit:contain;display:block}.fine-print{font-size:.68rem;max-width:560px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:92px}.brand{height:70px;width:210px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--navy);padding:25px;flex-direction:column;align-items:flex-start}.site-nav.open{display:flex}.hero{padding-top:145px}.hero:after,.hero:before{display:none}.hero-stats{position:relative;left:auto;right:auto;bottom:auto;margin-top:65px}.intro,.about,.contact{grid-template-columns:1fr}.service-grid,.property-grid{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--line)}.service-card:last-child{border-bottom:0}.process-grid{grid-template-columns:1fr 1fr}.about-visual{min-height:520px}.contact-form{padding:60px 30px}.hero-stats div{padding-right:22px;margin-right:22px}footer{grid-template-columns:1fr;gap:24px}.footer-brand img{width:160px;height:160px}}
@media(max-width:600px){h1{font-size:3.4rem}.hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hero-stats div{border:0;margin:0;padding:0}.intro{grid-template-columns:1fr;gap:20px;padding:80px 0}.process-grid{grid-template-columns:1fr}.contact-details,.contact-form{grid-template-columns:1fr}.contact-form label{grid-column:1!important}footer{grid-template-columns:1fr}.about-copy{padding:75px 25px}.about-logo-card{width:min(420px,88%);padding:14px}.brand{width:180px;height:62px}.site-header{height:84px}.site-nav{top:84px}}
