
    :root{
      --bg: #ffffff;
      --sand: #f3efe8;
      --beige: #e7dccb;
      --ink: #1b1b1b;
      --muted: rgba(27,27,27,.68);
      --gold: #b8902f;
      --gold2: #d6b55a;
      --card: rgba(255,255,255,.86);
      --shadow: 0 14px 38px rgba(20,20,20,.08);
      --radius: 18px;
    }

    html{ scroll-behavior:smooth; }
    body{
      font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
      color: var(--ink);
      background: #fff;
      overflow-x: hidden;
    }

    .marble{
      position: relative;
      isolation: isolate;
      background: linear-gradient(180deg, #fff 0%, var(--sand) 55%, #fff 100%);
    }
    .marble::before{
      content:"";
      position:absolute; inset:-140px;
      z-index:-1;
      background:
        radial-gradient(900px 520px at 18% 18%, rgba(214,181,90,.18), transparent 58%),
        radial-gradient(900px 520px at 82% 22%, rgba(184,144,47,.12), transparent 60%),
        radial-gradient(1000px 580px at 55% 82%, rgba(231,220,203,.55), transparent 62%),
        linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(243,239,232,1) 48%, rgba(255,255,255,1) 100%);
      filter: saturate(1.03);
    }

    .brand-font{
      font-family: Cinzel, serif;
      letter-spacing: .10em;
      text-transform: uppercase;
    }

    .navbar{
      backdrop-filter: blur(10px);
      background: rgba(255,255,255,.78) !important;
      border-bottom: 1px solid rgba(27,27,27,.08);
    }
    .nav-link{
      color: rgba(27,27,27,.72) !important;
      font-weight: 500;
      position: relative;
    }
    .nav-link:hover{ color: rgba(27,27,27,1) !important; }
    .nav-link::after{
      content:"";
      position:absolute;
      left: .6rem; right: .6rem; bottom: .35rem;
      height: 2px;
      background: linear-gradient(90deg, transparent, rgba(214,181,90,.9), transparent);
      transform: scaleX(0);
      transform-origin: center;
      transition: transform .25s ease;
      opacity: .9;
    }
    .nav-link:hover::after{ transform: scaleX(1); }

    .glass-card{
      background: var(--card);
      border: 1px solid rgba(27,27,27,.10);
      border-radius: var(--radius);
      box-shadow: var(--shadow);
    }
    .soft-border{
      border: 1px solid rgba(27,27,27,.10);
      border-radius: var(--radius);
    }

    .gold-divider{
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(214,181,90,.9), transparent);
    }

    .btn-gold{
      --bs-btn-color: #1b1b1b;
      --bs-btn-bg: transparent;
      --bs-btn-border-color: rgba(184,144,47,.55);
      --bs-btn-hover-color: #1b1b1b;
      --bs-btn-hover-bg: rgba(214,181,90,.18);
      --bs-btn-hover-border-color: rgba(184,144,47,.8);
      --bs-btn-active-bg: rgba(214,181,90,.30);
      --bs-btn-active-border-color: rgba(184,144,47,1);
      border-width: 1px;
      border-radius: 999px;
      transition: transform .15s ease, box-shadow .15s ease;
    }
    .btn-gold:hover{
      transform: translateY(-1px);
      box-shadow: 0 10px 24px rgba(20,20,20,.08);
    }
    .btn-gold:active{ transform: translateY(0px) scale(.99); }

    .btn-darksoft{
      border-radius: 999px;
      background: rgba(27,27,27,.92);
      border: 1px solid rgba(27,27,27,.92);
      color: white;
      transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
    }
    .btn-darksoft:hover{
      opacity: .95;
      transform: translateY(-1px);
      box-shadow: 0 12px 26px rgba(20,20,20,.14);
    }
    .btn-darksoft:active{ transform: translateY(0px) scale(.99); }

    .icon-btn{
      width: 52px;
      height: 52px;
      border-radius: 16px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border: 1px solid rgba(184,144,47,.45);
      background: rgba(255,255,255,.78);
      color: rgba(27,27,27,.88);
      text-decoration:none;
      position: relative;
      overflow: hidden;
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
      box-shadow: 0 10px 22px rgba(20,20,20,.06);
    }
    .icon-btn i{ font-size: 1.25rem; }
    .icon-btn:hover{
      transform: translateY(-2px);
      background: linear-gradient(180deg, rgba(255,255,255,.90), rgba(243,239,232,.90));
      border-color: rgba(184,144,47,.85);
      box-shadow: 0 14px 30px rgba(20,20,20,.10);
    }
    .icon-btn:active{ transform: translateY(0px) scale(.98); }

    .icon-btn::after{
      content:"";
      position:absolute;
      inset:-40% -60%;
      transform: translateX(-120%) rotate(20deg);
      background: linear-gradient(90deg, transparent, rgba(214,181,90,.35), transparent);
      transition: transform .45s ease;
      pointer-events:none;
    }
    .icon-btn.clicked::after{
      transform: translateX(120%) rotate(20deg);
    }

    .brand-logo{
      max-height: 46px;
      width: auto;
      object-fit: contain;
      display: block;
    }

    .hero-title{
      font-size: clamp(2rem, 3.2vw, 3.1rem);
      line-height: 1.05;
    }
    .hero-sub{
      color: var(--muted);
      font-size: 1.05rem;
    }

    .reveal{
      opacity: 0;
      transform: translateY(14px);
      transition: opacity .55s ease, transform .55s ease;
    }
    .reveal.show{
      opacity: 1;
      transform: translateY(0);
    }

    .map-wrap{
      border-radius: var(--radius);
      overflow: hidden;
      border: 1px solid rgba(27,27,27,.10);
      box-shadow: var(--shadow);
      background: rgba(255,255,255,.72);
    }
    .map-wrap iframe{
      width: 100%;
      height: 360px;
      border: 0;
    }

    .form-control, .form-select{
      border-radius: 14px;
      border: 1px solid rgba(27,27,27,.12);
      background: rgba(255,255,255,.86);
      transition: border-color .18s ease, box-shadow .18s ease, transform .12s ease;
    }
    .form-control:focus, .form-select:focus{
      border-color: rgba(184,144,47,.7);
      box-shadow: 0 0 0 .25rem rgba(214,181,90,.18);
    }
    .form-control:active{ transform: scale(.997); }

    .accordion-button{
      border-radius: 14px !important;
      background: rgba(255,255,255,.86);
    }
    .accordion-item{
      background: transparent;
      border: 0;
    }
    .accordion-button:not(.collapsed){
      color: var(--ink);
      background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(243,239,232,.92));
      box-shadow: 0 10px 22px rgba(20,20,20,.06);
    }

    footer{
      border-top: 1px solid rgba(27,27,27,.08);
      background: rgba(255,255,255,.72);
      backdrop-filter: blur(10px);
    }
    .small-muted{ color: rgba(27,27,27,.62); }

    .section-kicker{
      font-size:.92rem;
      letter-spacing:.20em;
      text-transform: uppercase;
      color: rgba(27,27,27,.58);
    }

    .price-badge{
      border: 1px solid rgba(184,144,47,.35);
      background: rgba(214,181,90,.12);
      color: rgba(27,27,27,.85);
      font-weight: 600;
      padding: .45rem .7rem;
      border-radius: 999px;
      white-space: nowrap;
    }

    .infinite-gallery{
      position: relative;
      overflow: hidden;
      border-radius: var(--radius);
    }
    .infinite-gallery::before,
    .infinite-gallery::after{
      content:"";
      position:absolute;
      top:0; bottom:0;
      width: 34px;
      z-index: 2;
      pointer-events:none;
    }
    .infinite-gallery::before{
      left:0;
      background: linear-gradient(90deg, rgba(255,255,255,.65), rgba(255,255,255,0));
    }
    .infinite-gallery::after{
      right:0;
      background: linear-gradient(270deg, rgba(255,255,255,.65), rgba(255,255,255,0));
    }

    .infinite-track{
      display:flex;
      align-items: stretch;
      gap: 0;
      width: max-content;
      animation: galleryScroll 24s linear infinite;
      padding: 0;
    }
    .infinite-gallery:hover .infinite-track{
      animation-play-state: paused;
    }

    .g-img{
      flex: 0 0 auto;
      width: clamp(240px, 32vw, 460px);
      height: clamp(220px, 28vw, 340px);
      display:block;
      object-fit: cover;
      object-position: center;
      border: 0;
      border-radius: 0;
      margin: 0;
    }
    .g-img:hover{
      filter: saturate(1.03) contrast(1.02);
    }

    @keyframes galleryScroll{
      from { transform: translateX(0); }
      to   { transform: translateX(-50%); }
    }

    @media (max-width: 576px){
      .g-img{
        width: 78vw;
        height: 54vw;
      }
      .infinite-gallery::before,
      .infinite-gallery::after{
        width: 22px;
      }

	.custom-logo,
	.site-header,
	.site-footer {
  	display: none !important;
    }