
:root{
  --bg:#f5f1e8;
  --card:#ffffff;
  --ink:#1f2a3d;
  --muted:#5c6880;
  --gold:#b98028;
  --gold-light:#e8d3b0;
  --dark:#0f1115;
  --line:#e7dcc9;
  --shadow:0 16px 40px rgba(16,24,40,.08);
  --radius:28px;
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;padding-top:100px;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.container{max-width:var(--max);margin:0 auto;padding:0 22px}
.topbar{position:fixed;top:0;left:0;width:100%;z-index:1000;background:rgba(15,17,21,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.topbar .inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:100px}
.brand{display:flex;align-items:center;gap:14px}
.brand img{height:90px;width:auto;display:block}
.nav{display:flex;gap:28px;align-items:center}
.nav a{color:#fff;font-weight:600;font-size:15px}
.nav a:hover{color:#d89b3c}
.nav a.active{color:#d89b3c}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:700;font-size:15px;transition:.2s ease}
.btn-gold{background:var(--gold);color:#111}
.btn-gold:hover{filter:brightness(1.05)}
.btn-dark{background:#111;color:#fff}
.btn-outline{border:1px solid var(--gold);color:#f3d8a2}
.btn-outline:hover{background:var(--gold);color:#111}
.btn-light-outline{border:1px solid rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.06)}
.hero{
  position:relative;color:#fff;overflow:hidden;
  background:
   linear-gradient(90deg, rgba(10,12,16,.84) 0%, rgba(10,12,16,.56) 52%, rgba(10,12,16,.35) 100%),
   url('assets/images/Background.webp') center/cover no-repeat;
}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;min-height:220px;align-items:center;padding:6px 22px 16px}
.kicker{display:inline-block;margin-bottom:18px;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);font-size:12px;font-weight:700;letter-spacing:.23em;text-transform:uppercase;color:#f2d8a6}
.hero h1{margin:0;font-size:clamp(32px,4vw,48px);line-height:.96;letter-spacing:-.04em;max-width:840px}
.hero p{font-size:clamp(18px,2.1vw,22px);color:rgba(255,255,255,.82);max-width:760px;margin:22px 0 0}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.hero-points{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:860px}
.hero-points .point,.hero-side{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.08);backdrop-filter:blur(10px);border-radius:24px}
.hero-points .point{padding:18px;color:rgba(255,255,255,.92);font-weight:600}
.hero-side{padding:24px}
.hero-side .small{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#f2d8a6;font-weight:700}
.market-tags{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.market-tags span{padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.18);color:#fff;font-size:14px}
.hero-side hr{border:none;height:1px;background:rgba(255,255,255,.10);margin:22px 0}
.hero-side h3{margin:0 0 10px;font-size:30px;letter-spacing:-.03em}
.hero-side p{margin:0;color:rgba(255,255,255,.74);font-size:15px;line-height:1.75}

section{padding:48px 0}
.section-head{max-width:760px;margin-bottom:36px}
.section-head .eyebrow{font-size:12px;font-weight:800;letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}
.section-head h2{margin:10px 0 0;font-size:clamp(34px,4vw,54px);line-height:1.03;letter-spacing:-.04em}
.section-head p{margin:16px 0 0;color:var(--muted);font-size:19px;line-height:1.8}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.service-card{padding:32px}
.service-card .label{font-size:12px;letter-spacing:.23em;text-transform:uppercase;font-weight:800;color:var(--gold)}
.service-card p{margin:16px 0 0;color:var(--muted);font-size:18px;line-height:1.9}

.dark-section{background:#111;color:#fff;padding-top:40px}
.dark-section .section-head p{color:rgba(255,255,255,.72)}
.link-row{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.link-row a{color:#f2d8a6;font-weight:700}
.link-row a:hover{color:#fff}

.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.property-card{
  overflow:hidden;border-radius:30px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);box-shadow:0 18px 45px rgba(0,0,0,.28)
}
.property-card img{width:100%;height:260px;object-fit:cover;background:#222}
.property-card .body{padding:24px}
.pill{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#e0b15a;margin-bottom:10px}
.property-card h3{margin:0;font-size:24px;line-height:1.1;letter-spacing:-.03em}
.property-card p{margin:12px 0 0;color:rgba(255,255,255,.72);font-size:15px;line-height:1.8}
.property-card .cta{margin-top:18px;color:#f0d7a1;font-weight:700}

.about-grid{display:grid;grid-template-columns:1fr .9fr;gap:28px;align-items:start}
.soft-panel{background:#efe6d8;border-radius:28px;padding:28px}
.white-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}
.panel-title{font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:800;color:#9b6a1f}
.soft-panel ul,.white-panel ul{margin:16px 0 0;padding-left:18px;color:#49556e;line-height:1.9}

.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.team-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}
.team-photo-wrap{background:linear-gradient(180deg,#f6f4ef 0%, #ece7dc 100%);padding:20px 20px 0;display:flex;align-items:flex-end;justify-content:center;min-height:380px}
.team-photo{width:100%;max-width:300px;max-height:360px;object-fit:contain;object-position:center bottom}
.team-card .meta{padding:24px 24px 26px}
.team-card h3{margin:0;font-size:22px;letter-spacing:-.02em}
.team-role{margin-top:8px;font-size:12px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#5c6880}
.team-card p{margin:14px 0 0;color:var(--muted);font-size:15px;line-height:1.8}

.social-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:center}
.embed-shell{overflow:hidden;border-radius:32px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);width:100%;display:flex;justify-content:center;}
.embed-shell iframe{display:block;width:100%;max-width:100%;min-height:740px;border:0;background:#000}
.social-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}

.contact-section{background:#efe6d8}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}
.contact-card{background:#fff;border-radius:28px;border:1px solid var(--line);box-shadow:var(--shadow);padding:28px}
.contact-details p{margin:0 0 14px;font-size:18px;color:#44516a}
.contact-details .email-link{font-weight:800;color:#1f2a3d}
.contact-form{display:grid;gap:16px}
.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field, select, textarea{width:100%;border:1px solid #d9cfbe;border-radius:18px;padding:15px 16px;font:inherit;color:#1f2a3d;background:#fff;outline:none}
textarea{min-height:150px;resize:vertical}
.form-note{font-size:14px;color:#6a748b}
.email-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px}

.page-hero{
  background:#111;color:#fff;padding:24px 0 28px;
  background:linear-gradient(90deg, rgba(10,12,16,.88), rgba(10,12,16,.65)), url('assets/images/Background.webp') center/cover no-repeat;
}
.page-hero h1{margin:0;font-size:clamp(38px,5vw,66px);letter-spacing:-.04em}
.page-hero p{max-width:760px;margin:18px 0 0;color:rgba(255,255,255,.8);font-size:20px}

.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.info-card{padding:28px}
.info-card h3{margin:0 0 8px;font-size:26px;letter-spacing:-.03em}
.info-card p{margin:0;color:var(--muted);font-size:16px;line-height:1.8}

.footer{background:#0f1115;color:#fff;padding:26px 0 36px;border-top:1px solid rgba(255,255,255,.08)}
.footer .inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;align-items:center}
.footer small{display:block;color:rgba(255,255,255,.65);line-height:1.7}
.footer-nav{display:flex;flex-wrap:wrap;gap:18px}
.footer-nav a{color:#fff;font-weight:600}
.footer-nav a:hover{color:#d89b3c}
.footer-logo{height:52px;width:auto;display:block}

@media (max-width:1100px){
  .hero .wrap,.about-grid,.social-grid,.contact-grid{grid-template-columns:1fr}
  .team-grid,.grid-3,.property-grid,.info-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:760px){
  .nav{display:none}
  .topbar .inner{min-height:72px}
  .brand img{height:38px}
  .hero .wrap{min-height:auto;padding-top:20px;padding-bottom:40px}
  .hero-points,.team-grid,.grid-3,.property-grid,.info-grid{grid-template-columns:1fr}
  .contact-form .row{grid-template-columns:1fr}
  .team-photo-wrap{min-height:330px}
  .team-photo{max-height:310px}
  .embed-shell iframe{height:620px}
  section{padding:74px 0}
  .link-row{flex-direction:column;align-items:flex-start}
   body{padding-top:72px;}
}

.trust-brand-panel{
  display:grid;
  gap:18px;
}
.trust-brand-panel .trust-strip{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:10px;
  box-shadow:var(--shadow);
}
.trust-brand-panel .trust-strip img{
  width:100%;
  height:auto;
  display:block;
}
.trust-brand-panel .trust-note{
  font-size:16px;
  color:var(--muted);
  line-height:1.8;
}
.view-all-listings{
  text-align:center;
  margin-top:40px;
}
.menu-toggle{
  display:none;
  background:none;
  border:1px solid rgba(255,255,255,.2);
  color:#fff;
  border-radius:12px;
  padding:10px 14px;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}

.mobile-menu{
  display:none;
  flex-direction:column;
  gap:0;
  background:rgba(15,17,21,.98);
  border-top:1px solid rgba(255,255,255,.08);
}

.mobile-menu a{
  color:#fff;
  padding:16px 22px;
  border-bottom:1px solid rgba(255,255,255,.06);
  font-weight:600;
}

.mobile-menu a:hover{
  color:#d89b3c;
}

.mobile-menu a.active{
  color:#d89b3c;
}

.mobile-menu.open{
  display:flex;
}

@media (max-width:760px){
  .nav{
    display:none;
  }

  .menu-toggle{
    display:block;
  }

  .topbar .btn.btn-outline{
    display:none;
  }

  .topbar .inner{
    min-height:72px;
  }

  .brand img{
    height:44px;
  }
}
.social-showcase{
  background:#efece4;
}

.social-showcase-head{
  max-width:820px;
  margin-bottom:22px;
}

.social-topbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:30px;
}

.social-platforms{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.social-note{
  max-width:460px;
  margin:0;
  color:var(--muted);
  font-size:15px;
  line-height:1.8;
}

.video-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr;
  gap:24px;
  align-items:stretch;
}

.video-card{
  display:block;
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--shadow);
  transition:transform .2s ease, box-shadow .2s ease;
}

.video-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 44px rgba(16,24,40,.12);
}

.video-thumb{
  position:relative;
  aspect-ratio:9/16;
  overflow:hidden;
  background:#ddd;
}

.featured-video .video-thumb{
  aspect-ratio:16/10;
}

.video-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.play-btn{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:68px;
  height:68px;
  border-radius:999px;
  background:rgba(15,17,21,.72);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  backdrop-filter:blur(6px);
}

.video-body{
  padding:22px;
}

.video-label{
  display:inline-block;
  font-size:12px;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:10px;
}

.video-card h3{
  margin:0;
  font-size:24px;
  line-height:1.15;
  letter-spacing:-.03em;
  color:var(--ink);
}

.video-card p{
  margin:14px 0 0;
  color:var(--muted);
  font-weight:600;
}

@media (max-width:1100px){
  .social-topbar{
    flex-direction:column;
  }

  .video-grid{
    grid-template-columns:1fr 1fr;
  }

  .featured-video{
    grid-column:1 / -1;
  }
}

@media (max-width:760px){
  .video-grid{
    grid-template-columns:1fr;
  }

  .featured-video{
    grid-column:auto;
  }
}
.social-feature{
  background:#efece4;
}

.social-feature-grid{
  display:grid;
  grid-template-columns:1fr 420px;
  gap:40px;
  align-items:center;
}

.social-feature-copy{
  max-width:720px;
}

.social-links-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:22px;
}

.social-links-list a{
  color:var(--ink);
  font-weight:700;
}

.social-links-list a:hover{
  color:var(--gold);
}

.social-note{
  margin:18px 0 0;
  color:var(--muted);
  font-size:15px;
  line-height:1.8;
}

.social-feature-media{
  display:flex;
  justify-content:center;
}

.social-feature-media .tiktok-embed{
  margin:0 auto !important;
}

@media (max-width:1100px){
  .social-feature-grid{
    grid-template-columns:1fr;
  }

  .social-feature-media{
    justify-content:flex-start;
  }
}

@media (max-width:760px){
  .social-feature-media{
    justify-content:center;
  }
}
.btn-gold{
background:var(--gold);
color:#111;
border:1px solid var(--gold);
}

.btn-gold:hover{
background:#c78c2a;
border-color:#c78c2a;
color:#111;
}
.property-detail-layout {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 32px;
  align-items: start;
}

.property-gallery-wrap {
  position: relative;
}

.property-gallery {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  padding-bottom: 8px;
}

.property-gallery::-webkit-scrollbar {
  height: 10px;
}

.property-gallery::-webkit-scrollbar-thumb {
  background: rgba(243, 216, 162, 0.35);
  border-radius: 999px;
}

.property-gallery-slide {
  min-width: 85%;
  flex: 0 0 85%;
  scroll-snap-align: start;
  border-radius: 24px;
  overflow: hidden;
  background: #111;
}

.property-gallery-slide img {
  width: 100%;
  height: 520px;
  object-fit: cover;
  display: block;
}

.gallery-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  border: 1px solid rgba(243, 216, 162, 0.5);
  background: rgba(0, 0, 0, 0.7);
  color: #f3d8a2;
  font-size: 28px;
  cursor: pointer;
}

.gallery-arrow-left {
  left: 12px;
}

.gallery-arrow-right {
  right: 12px;
}

.property-detail-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(243, 216, 162, 0.18);
  border-radius: 24px;
  padding: 24px;
}

.property-detail-card h2 {
  margin: 12px 0;
}

.property-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}

@media (max-width: 900px) {
  .property-detail-layout {
    grid-template-columns: 1fr;
  }

  .property-gallery-slide {
    min-width: 100%;
    flex: 0 0 100%;
  }

  .property-gallery-slide img {
    height: 320px;
  }
}
.property-card-gallery{
  position:relative;
  overflow:hidden;
}

.card-gallery-scroll{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  gap:0;
}

.card-gallery-scroll img{
  width:100%;
  flex:0 0 100%;
  height:220px;
  object-fit:cover;
  scroll-snap-align:start;
}

.card-gallery-scroll::-webkit-scrollbar{
  display:none;
}

.card-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(0,0,0,0.6);
  border:none;
  color:#fff;
  font-size:22px;
  width:34px;
  height:34px;
  border-radius:50%;
  cursor:pointer;
  z-index:5;
}

.card-left{
  left:10px;
}

.card-right{
  right:10px;
}
.fullscreen-gallery{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.96);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:9999;
  opacity:0;
  transition:opacity 0.25s ease;
}

.fullscreen-gallery.is-open{
  display:flex;
  opacity:1;
}

.fullscreen-open{
  overflow:hidden;
}

.fullscreen-stage{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(92vw, 1400px);
  height:min(88vh, 900px);
}

.fullscreen-gallery img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  border-radius:12px;
}

.fullscreen-close{
  position:absolute;
  top:20px;
  right:24px;
  width:48px;
  height:48px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,0.12);
  color:#fff;
  font-size:32px;
  line-height:1;
  cursor:pointer;
  z-index:10001;
}

.fullscreen-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:56px;
  height:56px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,0.12);
  color:#fff;
  font-size:34px;
  line-height:1;
  cursor:pointer;
  z-index:10001;
}

.fullscreen-prev{
  left:24px;
}

.fullscreen-next{
  right:24px;
}

.fullscreen-counter{
  position:absolute;
  bottom:18px;
  left:50%;
  transform:translateX(-50%);
  padding:8px 14px;
  border-radius:999px;
  background:rgba(0,0,0,0.55);
  color:#fff;
  font-size:14px;
  font-weight:600;
  letter-spacing:0.04em;
}

.fullscreen-close:hover,
.fullscreen-nav:hover{
  background:rgba(255,255,255,0.2);
}

@media (max-width: 768px){
  .fullscreen-close{
    top:14px;
    right:14px;
  }

  .fullscreen-nav{
    width:48px;
    height:48px;
    font-size:30px;
  }

  .fullscreen-prev{
    left:12px;
  }

  .fullscreen-next{
    right:12px;
  }

  .fullscreen-stage{
    width:94vw;
    height:84vh;
  }
}
html, body{
  overflow-x:hidden;
}

.property-detail-layout,
.property-gallery-wrap,
.property-detail-card,
.property-gallery,
.property-gallery-slide{
  min-width:0;
}

.property-detail-card{
  width:100%;
}

.property-gallery-slide img{
  width:100%;
  height:520px;
  object-fit:cover;
  display:block;
}

@media (max-width: 900px){
  .property-detail-layout{
    grid-template-columns:1fr;
    gap:20px;
  }

  .property-gallery-wrap,
  .property-detail-card{
    width:100%;
    min-width:0;
  }

  .property-gallery{
    gap:12px;
  }

  .property-gallery-slide{
    min-width:100%;
    flex:0 0 100%;
  }

  .property-gallery-slide img{
    height:320px;
  }

  .property-detail-actions{
    flex-direction:column;
  }

  .property-detail-actions .btn{
    width:100%;
    max-width:100%;
  }
}
@media (max-width:760px){
  .topbar .inner{
    min-height:72px;
    gap:12px;
  }

  .brand{
    min-width:0;
  }

  .brand img{
    height:44px;
    max-width:160px;
    object-fit:contain;
  }

  .menu-toggle{
    display:block;
    flex:0 0 auto;
  }
}
.property-location {
  margin-top: 24px;
  background: #111;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  padding: 20px;
}

.property-location h3 {
  margin: 0 0 14px;
  color: #fff;
  font-size: 1.2rem;
}

.map-wrap {
  overflow: hidden;
  border-radius: 16px;
}

.map-wrap iframe {
  display: block;
  width: 100%;
  height: 240px;
}

.location-actions {
  margin-top: 14px;
}
.property-left-column {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}
.sell-cta-panel {
  padding: 34px;
}

.sell-contact-row {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.sell-phone-btn,
.sell-email-btn {
  color: var(--ink);
  border-color: var(--line);
}

.sell-phone-btn:hover,
.sell-email-btn:hover {
  background: #f4ead8;
  color: var(--ink);
}

.dark-section .info-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(243,216,162,0.12);
}

.dark-section .info-card p {
  color: rgba(255,255,255,0.72);
}
