  :root{
    --purple:#7b3fe4;
    --purple-2:#9b5cf0;
    --purple-dark:#5b2bc7;
    --purple-tint:#f4effe;
    --orange:#f2734a;
    --orange-tint:#feefe9;
    --green:#22b57a;
    --green-tint:#e8f9f1;
    --blue:#3a86ff;
    --blue-tint:#eaf2ff;
    --navy:#171233;
    --navy-2:#1f1a40;
    --ink:#1c1730;
    --muted:#6c7280;
    --line:#ececf3;
    --card:#ffffff;
    --cream:#faf9fd;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{font-family:'Segoe UI',-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;}
  img{max-width:100%;display:block;}
  a{text-decoration:none;color:inherit;}
  ul{list-style:none;}
  .wrap{max-width:1280px;margin:0 auto;padding:0 24px;}
  .eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--purple);background:var(--purple-tint);padding:5px 12px;border-radius:20px;margin-bottom:12px;}
  h1,h2,h3{letter-spacing:-.01em; overflow-wrap:break-word; word-break:break-word;}
  .script{font-family:'Brush Script MT','Segoe Script',cursive;color:var(--purple);font-weight:400;}
  .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:30px;font-weight:600;font-size:.88rem;border:1px solid transparent;cursor:pointer;transition:.2s ease;white-space:nowrap;}
  .btn-primary{background:linear-gradient(90deg,var(--purple),var(--purple-2));color:#fff;box-shadow:0 10px 24px rgba(123,63,228,.28);}
  .btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px);}
  .btn-ghost{background:#fff;color:var(--ink);border-color:#e3e3e3;}
  .btn-ghost:hover{background:#f6f6f6;}
  .btn-white{background:#fff;color:var(--purple);}
  .link-arrow{color:var(--purple);font-weight:700;font-size:.82rem;display:inline-flex;align-items:center;gap:6px;}

  /* ---------------- TOP BAR ---------------- */
  .topbar{background:linear-gradient(90deg,var(--purple-dark),var(--purple));color:#f1e9ff;font-size:.75rem;}
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:8px;padding-bottom:8px;}
  .topbar .center-msg{opacity:.9;flex:1;text-align:center;}
  .topbar .right,.topbar .left{display:flex;align-items:center;gap:16px;opacity:.92;}
  .topbar .soc{display:flex;gap:10px;margin-left:6px;}
  .topbar .soc a{color:inherit;}

  /* ---------------- HEADER ---------------- */
  header.main-nav{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;}
  .main-nav .wrap{display:flex;align-items:center;justify-content:space-between;height:82px;gap:20px;}
  .logo-row{display:flex;align-items:center;gap:10px;}
  .logo-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--purple),var(--purple-2));display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;flex:none;}
  .logo-text b{display:block;font-family:'Georgia',serif;font-size:1.15rem;font-weight:700;overflow-wrap:break-word;word-break:break-word;}
  .logo-text small{display:block;color:var(--muted);font-size:.68rem;}
  .brand-logo{height:60px;width:auto;max-width:240px;object-fit:contain;border-radius:4px;}
  nav.links{display:flex;gap:30px;}
  nav.links a{color:#4b4f5c;font-size:.92rem;font-weight:600;padding:8px 2px;border-bottom:2px solid transparent;transition:.2s;}
  nav.links a.active{color:var(--purple);border-color:var(--purple);}
  nav.links a:hover{color:var(--purple);}
  .nav-cta{display:flex;align-items:center;gap:16px;}
  .expert-call{display:flex;align-items:center;gap:10px;}
  .expert-call .ic{width:38px;height:38px;border-radius:50%;background:var(--purple-tint);color:var(--purple);display:flex;align-items:center;justify-content:center;flex:none;}
  .expert-call small{display:block;color:var(--muted);font-size:.68rem;}
  .expert-call b{display:block;font-size:.86rem;}
  .hamburger,.mobile-phone{display:none;}

  /* ---------------- HERO ---------------- */
  .hero-banner-img {
    width: 100%;
    height: 400px;
    border-radius: 0;
  }
  .hero{padding:26px 0 0;}
  .hero-banner{position:relative;border-radius:20px;overflow:hidden;background:var(--navy);height:420px;}
  .hero-banner img{width:100%;height:100%;object-fit:cover;opacity:.55;}
  .hero-overlay{position:absolute;inset:0;display:flex;align-items:center;padding:0 60px;background:linear-gradient(90deg,rgba(20,15,45,.55) 0%,rgba(20,15,45,.1) 60%);}
  .hero-copy{max-width:520px;}
  .hero-copy h1{font-size:2.5rem;line-height:1.18;font-weight:800;color:#fff;}
  .hero-copy h1 .script{font-size:1.05em;}
  .hero-copy p{margin-top:16px;color:#e3ddf5;font-size:.95rem;line-height:1.6;max-width:430px;}
  .hero-copy .cta-row{display:flex;gap:14px;margin-top:26px;}
  .hero-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--ink);cursor:pointer;}
  .hero-arrow.left{left:22px;}
  .hero-arrow.right{right:22px;}
  .hero-dots{display:none;justify-content:center;gap:6px;margin-top:14px;}
  .hero-dots span{width:6px;height:6px;border-radius:50%;background:#d8cff2;}
  .hero-dots span.on{background:var(--purple);width:18px;border-radius:4px;}

  /* ---------------- ABOUT ROW ---------------- */
  .about-row{padding:46px 0;}
  .about-row .wrap{display:grid;grid-template-columns:.85fr 1fr .95fr;gap:22px;align-items:stretch;}
  .about-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 12px 36px rgba(0,0,0,0.05);}
  .about-card h2{font-size:1.4rem;font-weight:800;margin-bottom:10px;}
  .about-card p{color:var(--muted);font-size:.88rem;line-height:1.6;margin-bottom:16px;}
  .about-media{position:relative;border-radius:18px;overflow:hidden;min-height:220px;}
  .about-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
  .about-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.25);z-index:2;}
  .about-play:before{content:"";border-left:14px solid var(--purple);border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:3px;}
  .stat-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .stat-mini{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,0.04);}
  .stat-mini .ic{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;}
  .stat-mini b{font-size:1.1rem;display:block;}
  .stat-mini small{color:var(--muted);font-size:.7rem;}
  .ic-purple{background:var(--purple-tint);color:var(--purple);}
  .ic-orange{background:var(--orange-tint);color:var(--orange);}
  .ic-green{background:var(--green-tint);color:var(--green);}
  .ic-blue{background:var(--blue-tint);color:var(--blue);}

  /* ---------------- SECTION HEAD ---------------- */
  .section{padding:1px 0;}
  .section-head{text-align:center;max-width:560px;margin:0 auto 36px;}
  .section-head h2{font-size:1.9rem;font-weight:800;}
  .section-head p{margin-top:10px;color:var(--muted);font-size:.92rem;}

  /* ---------------- SERVICES + OFFER SIDEBAR ---------------- */
  .offer-row{display:grid;grid-template-columns:1fr .5fr;gap:22px;}
  .svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  .svc-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;gap:14px;transition:.2s;box-shadow:0 12px 36px rgba(0,0,0,0.05);}
  .svc-card:hover{box-shadow:0 18px 40px rgba(30,20,60,.12);transform:translateY(-3px);}
  .svc-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex:none;}
  .svc-thumb{width:100%;height:140px;border-radius:10px;overflow:hidden;margin-top:10px;}
  .svc-thumb img{width:100%;height:100%;object-fit:cover;}
  .svc-body h3{font-size:.98rem;font-weight:700;margin-bottom:4px;}
  .svc-body p{font-size:.8rem;color:var(--muted);line-height:1.5;margin-bottom:8px;}

  .offer-card{background:linear-gradient(160deg,var(--purple-dark),var(--purple) 55%,var(--purple-2));border-radius:18px;padding:26px 22px;color:#fff;display:flex;flex-direction:column;box-shadow:0 12px 36px rgba(123,63,228,.15);}
  .offer-tag{display:inline-block;background:rgba(255,255,255,.16);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:16px;margin-bottom:14px;width:fit-content;}
  .offer-card h3{font-size:1.35rem;font-weight:800;line-height:1.2;margin-bottom:10px;}
  .offer-card p{font-size:.82rem;color:#e6defc;line-height:1.55;margin-bottom:18px;}
  .offer-card img{border-radius:12px;margin-bottom:16px;height:110px;width:100%;object-fit:cover;}
  .offer-card .btn-white{align-self:flex-start;}
  .feature-list{margin-top:18px;display:flex;flex-direction:column;gap:12px;}
  .feature-item{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 24px rgba(0,0,0,0.04);}
  .feature-item .ic{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex:none;}
  .feature-item b{display:block;font-size:.86rem;}
  .feature-item small{color:var(--muted);font-size:.72rem;}
  .feature-item .chev{margin-left:auto;color:#c6c6d4;}

  /* ---------------- TRUST STRIP ---------------- */
  .trust-strip{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 10px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 12px 36px rgba(0,0,0,0.05);}
  .trust-item{display:flex;align-items:center;gap:12px;padding:0 18px;position:relative;}
  .trust-item:not(:last-child):after{content:"";position:absolute;right:0;top:10%;bottom:10%;width:1px;background:var(--line);}
  .trust-item .ic{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex:none;}
  .trust-item b{font-size:.84rem;display:block;}
  .trust-item small{color:var(--muted);font-size:.7rem;}

  /* ---------------- LISTINGS ---------------- */
  .listings-head{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:6px;}
  .of2on{background:var(--ink);color:#fff;font-size:.66rem;font-weight:800;padding:4px 8px;border-radius:6px;display:inline-flex;gap:3px;}
  .of2on span{background:var(--orange);padding:2px 5px;border-radius:4px;}
  .listings-track{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative;}
  .listing-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 12px 36px rgba(0,0,0,0.05);}
  .listing-media{position:relative;height:140px;}
  .listing-media img{width:100%;height:100%;object-fit:cover;}
  .listing-heart{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.9);border-radius:14px;padding:4px 9px;font-size:.7rem;display:flex;align-items:center;gap:4px;}
  .listing-body{padding:14px 16px 18px;}
  .listing-body h4{font-size:.9rem;font-weight:700;line-height:1.3;margin-bottom:6px;}
  .listing-price{color:var(--green);font-weight:800;font-size:.86rem;}
  .listing-loc{color:var(--muted);font-size:.72rem;margin:4px 0 10px;}
  .listing-foot{display:flex;align-items:center;gap:8px;font-size:.7rem;color:var(--muted);border-top:1px solid var(--line);padding-top:10px;}
  .listing-foot .avatar{width:20px;height:20px;border-radius:50%;background:var(--purple-tint);}
  .listing-nav{display:flex;justify-content:center;gap:12px;margin-top:26px;}
  .listing-nav button{width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid var(--line);cursor:pointer;font-size:1rem;}

  /* ---------------- CONTACT ---------------- */
  .contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px;}
  .contact-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 18px;display:flex;align-items:center;gap:14px;box-shadow:0 12px 36px rgba(0,0,0,0.05);}
  .contact-card .ic{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex:none;}
  .contact-card b{display:block;font-size:.9rem;}
  .contact-card small{color:var(--muted);font-size:.74rem;}

  /* ---------------- FOOTER ---------------- */
  footer{background:var(--navy);color:#b7b2cf;padding-top:56px;}
  .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding-bottom:36px;}
  .footer-grid h4{color:#fff;font-size:.9rem;margin-bottom:16px;}
  .footer-grid ul li{margin-bottom:10px;font-size:.85rem;}
  .footer-grid ul li a:hover{color:#fff;}
  .foot-logo{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
  .foot-logo b{color:#fff;font-family:'Georgia',serif;font-size:1.1rem;display:block;overflow-wrap:break-word;word-break:break-word;}
  .foot-logo small{color:#9fc0b9;font-size:.68rem;}
  .foot-logo .brand-logo{height:55px;margin-right:8px;}
  .footer-grid p{font-size:.82rem;line-height:1.6;}
  .qr-box{background:#fff;width:96px;height:96px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:#999;margin-top:8px;text-align:center;}
  .foot-social{display:flex;gap:10px;padding:22px 0;border-top:1px solid rgba(255,255,255,.08);}
  .foot-social a{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;font-size:.85rem;color:#fff;}

  /* ---------------- RESPONSIVE ---------------- */
  @media (max-width: 1000px){
    .topbar .center-msg{display:none;}
    .hero-banner{height:340px;}
    nav.links{display:none;}
    .hamburger{display:flex;align-items:center;justify-content:center;width:34px;height:34px;font-size:1.3rem;cursor:pointer;color:var(--ink);}
    .nav-cta .btn-primary,.expert-call{display:none;}
    .mobile-phone{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--purple-tint);color:var(--purple);}
    .main-nav .wrap{height:64px;}
    .logo-text b{font-size:.95rem;}
    .logo-text small{font-size:.62rem;}
    .logo-icon{width:36px;height:36px;font-size:1rem;}

    .hero-banner img{height:100%;opacity:.5;}
    .hero-overlay{padding:0 22px;background:linear-gradient(180deg,rgba(20,15,45,.15),rgba(20,15,45,.7));align-items:flex-end;padding-bottom:24px;}
    .hero-copy h1{font-size:1.55rem;}
    .hero-copy p{font-size:.82rem;}
    .hero-copy .cta-row .btn{padding:10px 18px;font-size:.8rem;}
    .hero-arrow{display:none !important;}
    .hero-dots{display:flex;}

    .about-row .wrap{grid-template-columns:1fr;gap:16px;}
    .about-media{min-height:180px;}

    .section{padding:36px 0;}
    .section-head{margin-bottom:24px;}
    .section-head h2{font-size:1.35rem;}

    .offer-row{grid-template-columns:1fr;}
    .svc-grid{grid-template-columns:1fr;}
    .svc-card{align-items:center;padding:14px 16px;}
    .svc-thumb{display:none;}
    .svc-card p{display:none;}
    .svc-card:after{content:"›";margin-left:auto;font-size:1.4rem;color:#c8c8c8;}
    .svc-body{flex:1;}
    .view-all{text-align:center;margin-top:16px;}

    .trust-strip{grid-template-columns:1fr 1fr;gap:16px 0;}
    .trust-item:nth-child(2):after{display:none;}
    .trust-item{padding:6px 12px;}

    .listings-track{grid-template-columns:repeat(2,1fr);overflow-x:auto;}
    .listing-nav{display:none;}

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

    .footer-grid{grid-template-columns:1fr 1fr;gap:26px;}
  }
  @media (max-width:767px){
    .hero-banner-img {
      height: 180px;
    }
  }
  @media (max-width:560px){
    .wrap{padding:0 16px;}
    .topbar{display:none;}
    .listings-track{grid-template-columns:repeat(2,minmax(160px,1fr));}
    .contact-grid{grid-template-columns:1fr;}
    .trust-strip{grid-template-columns:1fr; gap:16px;}
    .hero-copy h1{font-size:1.35rem;}
    .hero-banner{height:300px;}
    .footer-grid{grid-template-columns:1fr; gap:36px;}
    .foot-social{flex-direction:column; gap:16px; text-align:center;}
  }
