  :root{
    /* These will be dynamic, but I'll add fallbacks here */
    --ink:#0e1320;
    --ink-2:#161c2c;
    --coral:#f4694a;
    --coral-2:#f2947a;
    --pink:#ff6f91;
    --cream:#faf7f2;
    --card:#ffffff;
    --muted:#6b7280;
    --line:#ececec;
    --purple:#8b7cf6;
    --green:#22c08a;
    --blue:#4c8dff;
    --gold:#e0a95e;
  }
  *{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:1200px;margin:0 auto;padding:0 24px;}
  .eyebrow{
    font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
    color:var(--coral);margin-bottom:10px;
  }
  h1,h2,h3{font-family:'Georgia',serif !important;letter-spacing:-.01em;}
  h1 { word-break: break-word; }
  .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:13px 26px;border-radius:30px;font-weight:600;font-size:.92rem;
    border:1px solid transparent;cursor:pointer;transition:.2s ease;white-space:nowrap;
  }
  .btn-primary{background:linear-gradient(90deg,var(--coral),var(--pink));color:#fff;box-shadow:0 10px 24px rgba(244,105,74,.28);}
  .btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px);}
  .btn-ghost{background:#fff;color:var(--ink);border-color:#c62e2e;}
  .btn-ghost:hover{background:#f4f4f4;}
  .btn-outline-dark{background:transparent;color:#fff;border-color:rgba(255,255,255,.35);}

  /* ---------------- HEADER ---------------- */
  .topbar{background:var(--ink);color:#cfd3dc;font-size:.78rem;}
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:22px;padding-top:9px;padding-bottom:9px;}
  .topbar span{display:flex;align-items:center;gap:6px;opacity:.85;}
  .topbar .soc{display:flex;gap:12px;margin-left:6px;opacity:.7;}
  header.main-nav{background:var(--ink);position:sticky;top:0;z-index:1050;     height: 82px;}
  .main-nav .wrap{display:flex;align-items:center;justify-content:space-between;height:86px;}
  .logo{display:flex;align-items:center;gap:8px;font-family:'Georgia',serif;font-size:1.3rem;color:#fff;font-weight:700;}
  .brand-logo{height:76px;width:auto;max-width:240px;object-fit:contain;border-radius:4px;}
  .logo .mark{color:var(--gold);font-style:italic;}
  nav.links{display:flex;gap:34px;}
  nav.links a{color:#cfd3dc;font-size:.92rem;font-weight:500;padding:6px 2px;border-bottom:2px solid transparent;transition:.2s;}
  nav.links a.active{color:#fff;border-color:var(--coral);}
  nav.links a:hover{color:#fff;}
  .nav-cta{display:flex;align-items:center;}
  .hamburger,.mobile-phone{display:none;}

  /* ---------------- HERO ---------------- */
  .hero{background:var(--cream);position:relative;overflow:hidden;min-height:550px;}
  .hero .wrap{z-index:2;display:flex;align-items:center;min-height:550px;padding-top:80px;padding-bottom:80px;}
  .hero-copy{width:45%;position:relative;z-index:2;}
  .hero h1{font-size:3.2rem;line-height:1.15;font-weight:800;color:var(--ink);font-family:'Georgia',serif !important;margin-bottom:12px;}
  .hero h1 .hl{color:var(--coral);}
  .hero p{margin-top:14px;color:var(--muted);font-size:1.02rem;max-width:440px;line-height:1.6;}
  .hero .cta-row{display:flex;gap:14px;margin-top:28px;}
  
  .hero-media{
    position:absolute;
    top:0;
    right:0;
    width:65%;
    height:100%;
    z-index:1;
    -webkit-mask-image: linear-gradient(to right, transparent, black 25%);
    mask-image: linear-gradient(to right, transparent, black 25%);
  }
  .hero-media .owl-carousel, .hero-media .owl-stage-outer, .hero-media .owl-stage, .hero-media .item { height:100%; }
  .hero-media img{width:100%;height:100%;object-fit:cover;border-radius:0;box-shadow:none;}
  
  .play-btn{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.9);
    display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(0,0,0,.25);
    z-index:10;
  }
  .play-btn:before{content:"";border-left:16px solid var(--coral);border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px;}

  /* ---------------- STATS STRIP ---------------- */
  .stats-strip{margin-top:0px;position:relative;z-index:5;}
  .stats-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
  .stat-card{background:var(--card);border-radius:14px;padding:20px 22px;display:flex;align-items:center;gap:14px;box-shadow:0 14px 34px rgba(20,20,40,.07);}
  .stat-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex:none;}
  .stat-card b{display:block;font-size:1.2rem;}
  .stat-card small{color:var(--muted);font-size:.78rem;}
  .ic-purple{background:#efeaff;color:var(--purple);}
  .ic-coral{background:#ffede9;color:var(--coral);}
  .ic-green{background:#e8f8f2;color:var(--green);}
  .ic-blue{background:#eff4ff;color:var(--blue);}

  /* ---------------- WELCOME TEXT ---------------- */
  .welcome-text-section { padding: 0px 0 20px; position:relative; z-index:10; }
  .welcome-card {
    background: var(--card);
    border-radius: 16px;
    padding: 20px 40px;
    text-align: center;
    box-shadow: 0 14px 34px rgba(20,20,40,.07);
    display: inline-block;
  }
  .welcome-card h2 {
    font-size: 2.2rem;
    font-family: 'Georgia', serif;
    font-weight: 700;
    color: var(--ink);
    margin: 0;
  }
  .shining-text {
    font-weight: 800;
    text-transform: capitalize;
    background: linear-gradient(90deg, var(--coral), var(--pink), var(--gold), var(--coral));
    background-size: 300% 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: shine 3s infinite linear, blinkStroke 2s infinite alternate;
  }
  @keyframes shine {
    0% { background-position: 0% 50%; }
    100% { background-position: 100% 50%; }
  }
  @keyframes blinkStroke {
    0% { filter: drop-shadow(0 0 2px rgba(244, 105, 74, 0.2)); }
    100% { filter: drop-shadow(0 0 12px rgba(244, 105, 74, 0.7)); }
  }
  @media(max-width: 768px){ 
    .welcome-card h2{font-size: 1.6rem;}
    .welcome-card{padding: 20px;}
  }

  /* ---------------- SECTION HEAD ---------------- */
  .section{padding:30px 0 70px;}
  .section-head{text-align:center;max-width:560px;margin:0 auto 44px;}
  .section-head h2{font-size:2.1rem;font-weight:700;}
  .section-head p{margin-top:12px;color:var(--muted);font-size:.98rem;}
  .section-head.light .eyebrow{color:var(--coral-2);}
  .section-head.light h2{color:#fff;}
  .section-head.light p{color:#a7abb8;}

  /* ---------------- SERVICES ---------------- */
  .services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
  .svc-card{background:var(--card);border-radius:16px;padding:28px 24px;border:1px solid var(--line);transition:.25s;}
  .svc-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(20,20,40,.09);}
  .svc-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:18px;}
  .svc-card h3{font-family:inherit;font-size:1.05rem;font-weight:700;margin-bottom:8px;}
  .svc-card p{color:var(--muted);font-size:.88rem;line-height:1.55;margin-bottom:14px;}
  .svc-link{color:var(--coral);font-size:.85rem;font-weight:700;}
  .i1{background:#f1ecff;color:var(--purple);}
  .i2{background:#ffe9ec;color:var(--pink);}
  .i3{background:#fff1e2;color:var(--gold);}
  .i4{background:#fff1e2;color:#e39c4a;}

  /* ---------------- RECENT WORK (dark) ---------------- */
  .work-section{background:var(--ink);}
  .work-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
  .work-grid a{border-radius:12px;overflow:hidden;aspect-ratio:1/1.05;position:relative;}
  .work-grid img{width:100%;height:100%;object-fit:cover;transition:.4s;}
  .hero-media img{width:100%;height:100%;object-fit:cover;border-radius:24px;box-shadow:0 20px 40px rgba(0,0,0,0.1);}
  .work-grid a:hover img{transform:scale(1.07);}
  .work-cta{text-align:center;margin-top:38px;}

  /* ---------------- LISTING CARD OVERRIDES ---------------- */
  #vendorListingsContainer .modern-card { transform: scale(0.92); margin: -10px; }
  #vendorListingsContainer .modern-card-image { aspect-ratio: 16/10 !important; }
  #vendorListingsContainer .modern-card:hover { transform: scale(0.92) translateY(-8px); }
  #vendorListingsContainer .modern-card-title { font-size: 0.9rem !important; white-space: normal; line-height: 1.3; }
  #vendorListingsContainer .modern-card-price { font-size: 0.9rem !important; }
  #vendorListingsContainer .modern-card-date { font-size: 0.8rem !important; }

  /* ---------------- QUALITY SECTION ---------------- */
  .quality{padding:40px 0;}
  .quality .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center;}
  .quality-media{position:relative;}
  .quality-media img{border-radius:18px;width:100%;aspect-ratio:4/5;object-fit:cover;}
  .bubble{position:absolute;width:96px;height:96px;border-radius:50%;overflow:hidden;border:5px solid #fff;box-shadow:0 12px 26px rgba(0,0,0,.18);}
  .bubble img{width:100%;height:100%;object-fit:cover;}
  .bubble.b1{top:8%;right:-14%;}
  .bubble.b2{bottom:6%;right:-6%;}
  .quality-copy h2{font-size:2.15rem;font-weight:700;line-height:1.2;}
  .quality-copy > p.eyebrow{margin-bottom:8px;}
  .check-list{margin-top:24px;display:flex;flex-direction:column;gap:12px;}
  .check-list li{display:flex;align-items:center;gap:12px;font-size:.96rem;color:#2b2f3a;}
  .check-list li .dot{width:22px;height:22px;border-radius:50%;background:#ffe9e4;color:var(--coral);display:flex;align-items:center;justify-content:center;font-size:.7rem;flex:none;}
  .mini-stats{margin-top:34px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
  .mini-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 14px;display:flex;align-items:center;gap:10px;}
  .mini-stat b{display:block;font-size:1.1rem;}
  .mini-stat small{color:var(--muted);font-size:.74rem;}

  /* ---------------- TESTIMONIAL ---------------- */
  .testi-card{max-width:640px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px 36px;box-shadow:0 16px 40px rgba(20,20,40,.06);}
  .testi-top{display:flex;align-items:center;gap:14px;margin-bottom:16px;}
  .testi-avatar{width:50px;height:50px;border-radius:50%;object-fit:cover;}
  .testi-name{font-weight:700;font-size:.98rem;}
  .testi-role{color:var(--muted);font-size:.8rem;}
  .stars{color:var(--gold);font-size:.85rem;letter-spacing:2px;margin-top:2px;}
  .testi-card p{color:#4a4f5c;font-size:1rem;line-height:1.65;font-style:italic;}
  .dots{display:flex;justify-content:center;gap:8px;margin-top:26px;}
  .dots span{width:7px;height:7px;border-radius:50%;background:#e3c9c1;}
  .dots span.on{background:var(--coral);width:22px;border-radius:5px;}

  /* ---------------- OFFERS ---------------- */
  .offers{background:var(--ink);border-radius:26px;overflow:hidden;}
  .offers .wrap{max-width:1200px;}
  .offer-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding:52px 54px;}
  .offer-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(244,105,74,.14);color:var(--coral-2);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 14px;border-radius:20px;margin-bottom:18px;}
  .offer-inner h2{color:#fff;font-size:2rem;line-height:1.2;}
  .offer-inner h2 span{color:var(--coral-2);}
  .offer-inner p{color:#a7abb8;margin:14px 0 24px;max-width:400px;}
  .offer-imgs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
  .offer-imgs img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;border:3px solid rgba(255,255,255,.12);}

  /* ---------------- CONTACT ---------------- */
  .contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .contact-card{text-align:center;background:#fff;    border: 1px solid #c35252;border-radius:16px;padding:10px 18px;}
  .contact-icon{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin:0 auto 14px;}
  .contact-card h3{font-size:.98rem;font-weight:700;margin-bottom:4px;font-family:inherit;}
  .contact-card small{color:var(--muted);font-size:.8rem;}

  /* ---------------- FOOTER ---------------- */
  footer{background:var(--ink);color:#a7abb8;padding-top:40px;}
  .footer-grid{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:40px;padding-bottom:40px;}
  .footer-grid h4{color:#fff;font-size:.92rem;margin-bottom:16px;font-family:inherit;}
  .footer-grid ul li{margin-bottom:10px;font-size:.86rem;}
  .footer-grid ul li a:hover{color:var(--coral);padding-left:4px;}
  .foot-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
  .foot-logo .brand-logo{height:126px;margin-right:8px;}
  .foot-logo .mark{color:var(--gold);font-style:italic;}
  .footer-grid p{font-size:.85rem;line-height:1.6;}
  .foot-social{display:flex;gap:10px;margin-top:18px;}
  .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;}
  .newsletter-form{display:flex;margin-top:6px;border-radius:24px;overflow:hidden;background:rgba(255,255,255,.06);padding:4px;}
  .newsletter-form input{flex:1;background:transparent;border:none;padding:10px 14px;color:#fff;font-size:.85rem;outline:none;}
  .newsletter-form button{background:linear-gradient(90deg,var(--coral),var(--pink));border:none;color:#fff;width:40px;border-radius:20px;cursor:pointer;font-size:1rem;}
  .footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:20px 0 26px;display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#7a7f8c;}
  .footer-bottom .heart{color:var(--coral);}

  /* ---------------- RESPONSIVE ---------------- */
  @media (max-width: 980px){
    .topbar{display:none;}
    .main-nav .wrap{height:77px;}
    .logo{font-size:1.12rem;}
    nav.links{display:none;}
    nav.links.nav-active {
      display:flex;
      flex-direction:column;
      position:absolute;
      top:100%;
      left:0;
      width:100%;
      background:var(--ink);
      padding:20px;
      gap:16px;
      box-shadow:0 10px 20px rgba(0,0,0,.2);
      border-top:1px solid rgba(255,255,255,.1);
    }
    .hamburger{
      display:flex;align-items:center;justify-content:center;
      width:34px;height:34px;color:#fff;font-size:1.3rem;cursor:pointer;
    }
    .nav-cta .btn-primary{display:none;}
    .mobile-phone{
      display:flex;align-items:center;justify-content:center;
      width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;margin-left:auto;
    }
    .main-nav .wrap{gap:14px; height: 77px;}
    .brand-logo{height: 78px; margin-top:3px;}

    .hero { min-height: 500px; }
    .hero .wrap{align-items:flex-end; padding-top:220px; padding-bottom:60px;}
    .hero-copy { width: 100%; text-align:center; }
    .hero h1{font-size:1.8rem;}
    .hero p{font-size:.92rem; max-width:100%; margin:14px auto;}
    .hero .cta-row{justify-content:center;}
    .hero-media {
        width: 100vw;
        height: 55%;
        left: 0;
        right: auto;
        -webkit-mask-image: linear-gradient(to bottom, black 50%, transparent);
        mask-image: linear-gradient(to bottom, black 50%, transparent);
    }
    
    .stats-strip{margin-top:-30px;}
    .stats-strip .wrap{grid-template-columns:repeat(2,1fr);gap:14px;}
    .stat-card{flex-direction:column;text-align:center;padding:16px 10px;gap:8px;border-radius:12px;}
    .stat-card b{font-size:1.1rem;}
    .stat-card small{font-size:.7rem;}
    .stat-icon{width:40px;height:40px;font-size:1rem;}

    .section{padding:56px 0 40px;}
    .section-head{margin-bottom:30px;}
    .section-head h2{font-size:1.5rem;}

    .services-grid{grid-template-columns:1fr;gap:14px;}
    .svc-card{padding:18px 18px;display:flex;align-items:center;gap:16px;}
    .svc-icon{margin-bottom:0;width:46px;height:46px;flex:none;}
    .svc-card .svc-body{flex:1;}
    .svc-card p{display:none;}
    .svc-card h3{margin-bottom:2px;}
    .svc-card:after{content:"›";margin-left:auto;font-size:1.4rem;color:#c8c8c8;}

    .work-grid{grid-template-columns:repeat(2,1fr);}
    .work-grid a:nth-child(5){display:none;}

    .quality .wrap{grid-template-columns:1fr;gap:36px;}
    .quality-media{max-width:280px;margin:0 auto 30px;}
    .bubble{width:70px;height:70px;}
    .quality-copy h2{font-size:1.5rem;}
    .mini-stats{grid-template-columns:repeat(2,1fr);}

    .testi-card{padding:22px 20px;}

    .offer-inner{grid-template-columns:1fr;padding:34px 24px;gap:24px;}
    .offer-inner h2{font-size:1.5rem;}
    .offer-imgs{max-width:340px;}

    .contact-grid{grid-template-columns:repeat(2,1fr);}

    .footer-grid{grid-template-columns:1fr;gap:35px;text-align:center;}
    .foot-logo { justify-content:center; }
    .foot-social { justify-content:center; }
    .footer-bottom{flex-direction:column;gap:15px;text-align:center;}
  }

  @media (max-width:520px){
    .wrap{padding:0 18px;}
    .hero h1{font-size:1.6rem;}
    .hero .wrap{padding-top:200px;}
    .stat-card{padding:12px 6px;}
    .contact-grid{grid-template-columns:1fr;}
  }
