:root{--navy:#07162b;--blue:#0c2f55;--copper:#eaa15c;--gold:#d6ab63;--ice:#edf5f7;--white:#fff;--ink:#10223b;--muted:#627083;--line:#d9e3e7}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Manrope,sans-serif;color:var(--ink);background:#f7fafb}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
.topbar{height:88px;display:flex;align-items:center;gap:30px;padding:0 4vw;background:var(--navy);color:#fff;position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center}
.brand-logo{width:100px;height:76px;object-fit:cover}
.topbar nav{display:flex;gap:22px;margin-left:auto}
.nav-cta{border:1px solid var(--copper);padding:12px 17px;border-radius:3px;font-size:.86rem;font-weight:800;white-space:nowrap}
.menu{display:none}
.hero{height:calc(100svh - 88px);min-height:600px;background:var(--navy);color:#fff;display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}
.hero-copy{padding:70px 5.5vw 55px;display:flex;flex-direction:column;justify-content:center}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:.75rem;color:#c77731;margin:0 0 22px}
.hero h1{font-size:clamp(3.1rem,5.3vw,6.3rem);line-height:.98;letter-spacing:-.055em;margin:0;max-width:720px}
.hero h1 em{font-family:'Playfair Display',serif;font-weight:700;color:var(--copper)}
.lead{font-size:1.05rem;line-height:1.75;color:#bbc9d6;max-width:590px;margin:28px 0 24px}
.hero-price{display:flex;flex-direction:column;border-left:3px solid var(--copper);padding:2px 0 2px 18px;margin-bottom:28px}
.hero-price span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#94a7ba;font-weight:700}
.hero-price strong{font-size:1.7rem;margin-top:4px;color:#fff}
.hero-price small{font-size:.7rem;color:#c8d2dc}
.hero-actions,.sale-actions{display:flex;align-items:center;gap:26px}
.btn{display:inline-flex;justify-content:center;border:0;padding:16px 23px;border-radius:3px;font:700 .92rem Manrope;cursor:pointer}
.primary{background:var(--copper);color:#14263c}
.text-link{font-weight:700;color:#fff}
.text-link span{color:var(--copper);font-size:1.2rem}
.text-link.dark{color:var(--ink)}
.hero-visual{position:relative;min-height:0;background:#111}
.hero-visual img{width:100%;height:100%;object-fit:contain;object-position:center}
.strip{background:var(--copper);display:flex;justify-content:center;align-items:center;gap:25px;padding:18px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.strip i{width:5px;height:5px;background:var(--navy);border-radius:50%}
.process,.locations{padding:105px 6vw}
.section-intro{display:grid;grid-template-columns:1fr 2fr;align-items:start}
.section-intro h2,.locations>h2,.rental h2,.sale h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1.08;letter-spacing:-.04em;margin:0;max-width:850px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:65px}
.steps article{background:#fff;padding:35px;min-height:285px;border-top:3px solid var(--line)}
.steps .featured{background:var(--blue);color:#fff;border-color:var(--copper);transform:translateY(-18px)}
.steps span{color:var(--copper);font-size:.78rem;font-weight:800}
.steps h3{font-size:1.4rem;margin:45px 0 12px}
.steps p{color:var(--muted);line-height:1.7;margin-bottom:0}
.steps .featured p{color:#bdcbd7}
.rental{display:grid;grid-template-columns:.86fr 1.14fr;background:var(--navy);color:#fff;min-height:720px}
.rental-copy{padding:90px 6vw;align-self:center}
.rental-copy>p:not(.eyebrow){color:#bdcbd7;line-height:1.8;max-width:620px}
.rental-copy strong{color:#fff}
.check-list{list-style:none;padding:0;margin:27px 0 32px;display:grid;gap:13px}
.check-list li{position:relative;padding-left:28px;color:#dce5ec}
.check-list li:before{content:'✓';position:absolute;left:0;color:var(--copper);font-weight:800}
.revenue-image{position:relative;display:block;overflow:hidden;background:#0c1015}
.revenue-image img{width:100%;height:100%;object-fit:contain;object-position:center}
.sale{display:grid;grid-template-columns:1.05fr .95fr;background:#fff}
.sale-image{min-height:670px;overflow:hidden}
.sale-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.sale-copy{padding:90px 6vw;align-self:center}
.sale-copy>p:not(.eyebrow){color:var(--muted);line-height:1.8;max-width:560px}
.sale-price{display:flex;flex-direction:column;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:30px 0}
.sale-price span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:800}
.sale-price strong{font-size:2rem;margin-top:5px;color:var(--blue)}
.locations>h2{max-width:900px}
.location-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.location-grid article{padding:30px;min-height:245px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.location-grid b{color:var(--copper);font-size:.75rem}
.location-grid h3{margin:50px 0 10px;font-size:1.15rem}
.location-grid p{font-size:.9rem;color:var(--muted);line-height:1.6}
.showcase{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);gap:3px}
.showcase figure{margin:0;height:440px;overflow:hidden}
.showcase img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.showcase figure:hover img{transform:scale(1.025)}
.contact{background:var(--navy);color:#fff;padding:100px 8vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}
.contact h2{font-size:clamp(2.7rem,5vw,5rem);line-height:1;margin:0 0 25px}
.contact>div>p:not(.eyebrow){color:#aebdca;line-height:1.8;max-width:500px}
.direct-contact{display:flex;flex-direction:column;gap:9px;margin-top:30px}
.direct-contact a{font-size:1.2rem;font-weight:800;color:var(--copper)}
.contact form{display:grid;gap:20px}
.contact label{font-size:.8rem;font-weight:700;color:#c6d2de}
.contact input,.contact textarea,.contact select{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #4c6279;color:#fff;padding:13px 0;font:1rem Manrope;outline:none;border-radius:0}
.contact select option{color:#10223b;background:#fff}
.contact input:focus,.contact textarea:focus,.contact select:focus{border-color:var(--copper)}
.contact textarea{min-height:80px;resize:vertical}
.contact button{justify-self:start}
.form-status{margin:0;color:#aad1b6;font-size:.9rem}
footer{display:flex;align-items:center;gap:30px;padding:27px 6vw;background:#04101f;color:#9cabb9}
.footer-logo{width:92px;height:64px;object-fit:cover}
footer>p{margin:auto}
.footer-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.footer-meta small{color:#d1b27d}
.footer-meta span{font-size:.78rem}

/* Product detail page */
.subpage-hero{background:var(--navy);color:#fff;display:grid;grid-template-columns:.82fr 1.18fr;min-height:640px}
.subpage-copy{padding:100px 6vw;display:flex;flex-direction:column;justify-content:center}
.subpage-copy h1{font-size:clamp(3rem,5vw,6rem);line-height:1;letter-spacing:-.05em;margin:0}
.subpage-copy .lead{max-width:540px}
.subpage-image{min-height:640px}
.subpage-image img{width:100%;height:100%;object-fit:cover}
.feature-section{padding:105px 6vw}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:55px}
.feature-grid article{background:#fff;border-top:3px solid var(--copper);padding:30px;min-height:210px}
.feature-grid strong{display:block;color:var(--copper);font-size:.75rem;letter-spacing:.12em}
.feature-grid h3{margin:28px 0 10px}
.feature-grid p{color:var(--muted);line-height:1.65;margin:0}
.specs{display:grid;grid-template-columns:1fr 1fr;background:var(--ice)}
.specs-copy{padding:90px 7vw}
.spec-list{display:grid;gap:0;margin-top:35px}
.spec-list div{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid #c9d6dc;padding:15px 0}
.spec-list dt{font-weight:800}
.spec-list dd{margin:0;text-align:right;color:var(--muted)}
.specs-image{min-height:620px}
.specs-image img{width:100%;height:100%;object-fit:cover}
.detail-cta{padding:80px 7vw;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:40px}
.detail-cta h2{font-size:clamp(2rem,4vw,3.8rem);margin:0;max-width:760px;line-height:1.08}

@media(max-width:1100px){.topbar{gap:18px}.topbar nav{gap:14px}.topbar nav a{font-size:.78rem}.nav-cta{display:none}}
@media(max-width:900px){
  .topbar{height:72px}.topbar nav{display:none}.menu{display:block;margin-left:auto;background:transparent;border:1px solid #4c6279;color:#fff;padding:9px 13px}
  .topbar.open nav{position:absolute;display:flex;flex-direction:column;top:72px;left:0;right:0;background:var(--navy);padding:25px 6vw;box-shadow:0 12px 24px rgba(0,0,0,.2)}
  .brand-logo{width:88px;height:64px}.hero,.rental,.sale,.contact,.subpage-hero,.specs{grid-template-columns:1fr}.hero{height:auto;min-height:0}.hero-copy{padding-top:70px}.hero-visual{min-height:520px}
  .section-intro{grid-template-columns:1fr}.steps,.location-grid,.feature-grid{grid-template-columns:1fr 1fr}.steps .featured{transform:none}.rental{min-height:0}.revenue-image{height:auto}.revenue-image img{width:100%;height:auto;object-fit:initial}.sale-image{min-height:0;height:auto}.sale-image img{height:auto;object-fit:contain}.showcase figure{height:350px}
  .subpage-hero,.specs{grid-template-columns:minmax(0,1fr)}
  .subpage-image,.specs-image{min-width:0;min-height:0}
  .subpage-image img,.specs-image img{width:100%;height:auto;object-fit:contain}
}
@media(max-width:560px){
  .hero-copy,.process,.locations,.feature-section{padding-left:5vw;padding-right:5vw}.hero h1{font-size:3rem}.hero-actions,.sale-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero-visual{min-height:480px}.strip{overflow:hidden;justify-content:flex-start;white-space:nowrap}
  .steps,.location-grid,.feature-grid{grid-template-columns:1fr}.process,.locations,.feature-section{padding-top:75px;padding-bottom:75px}.contact{padding:75px 6vw}.rental-copy,.sale-copy,.subpage-copy,.specs-copy{padding:70px 6vw}.showcase{grid-template-columns:1fr}.showcase figure{height:300px}
  .detail-cta{align-items:flex-start;flex-direction:column}.spec-list div{flex-direction:column;gap:5px}.spec-list dd{text-align:left}footer{align-items:flex-start;flex-direction:column}footer>p{margin:0}.footer-meta{align-items:flex-start}
}
