    *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
    :root {
      --gold:#B8902A;
      --gold-l:#D4AA50;
      --gold-d:#8A6A10;
      --gold-soft:#F5EDD6;
      --gold-pale:#FBF7EE;

      --black:#1A1A1A;
      --dark:#2C2C2C;
      --dark2:#3A3A3A;
      --dark3:#444444;

      --white:#FFFFFF;
      --off-white:#FAFAF8;
      --cream:#F7F4EE;
      --cream2:#F0EBE0;

      --gray:#888888;
      --gray-l:#555555;
      --gray-xl:#CCCCCC;

      --border:#E8E0D0;
      --border-gold:rgba(184,144,42,0.25);
      --shadow:rgba(0,0,0,0.08);
      --shadow-md:rgba(0,0,0,0.13);
      --shadow-lg:rgba(0,0,0,0.18);

      --serif:'Playfair Display',serif;
      --sans:'Inter',sans-serif;
    }

    html { scroll-behavior:smooth; }
    body {
      font-family:var(--sans);
      background:var(--white);
      color:var(--black);
      overflow-x:hidden;
      cursor:none;
    }
    ::-webkit-scrollbar { width:4px; }
    ::-webkit-scrollbar-track { background:var(--cream); }
    ::-webkit-scrollbar-thumb { background:var(--gold); border-radius:2px; }

    /* ── CUSTOM CURSOR ── */
    #cursor {
      position:fixed; width:10px; height:10px;
      background:var(--gold); border-radius:50%;
      pointer-events:none; z-index:99999;
      transform:translate(-50%,-50%);
      transition:transform .15s ease, background .2s;
    }
    #cursor-ring {
      position:fixed; width:34px; height:34px;
      border:1.5px solid rgba(184,144,42,0.55);
      border-radius:50%; pointer-events:none; z-index:99998;
      transform:translate(-50%,-50%);
      transition:transform .4s cubic-bezier(.17,.67,.83,.67), width .3s, height .3s, opacity .3s;
    }

    /* ── PRELOADER ── */
    #preloader {
      position:fixed; inset:0;
      background:var(--white);
      z-index:99999;
      display:flex; flex-direction:column;
      align-items:center; justify-content:center; gap:32px;
    }
    .pre-logo {
      font-family:var(--serif);
      font-size:48px; font-weight:900;
      color:var(--black); opacity:0;
    }
    .pre-logo span { color:var(--gold); }
    .pre-bar-wrap {
      width:200px; height:1px;
      background:var(--cream2);
    }
    .pre-bar {
      height:100%;
      background:linear-gradient(90deg,var(--gold-d),var(--gold),var(--gold-l));
      width:0%;
    }
    .pre-suit {
      position:absolute; font-size:120px;
      opacity:.04; color:var(--gold);
    }
    .pre-suit:nth-child(1){top:10%;left:5%;}
    .pre-suit:nth-child(2){top:10%;right:5%;}
    .pre-suit:nth-child(3){bottom:10%;left:5%;}
    .pre-suit:nth-child(4){bottom:10%;right:5%;}

    /* ── PARTICLES ── */
    #particles {
      position:fixed; inset:0;
      pointer-events:none; z-index:0;
    }

    /* ── NAVBAR ── */
    #navbar {
      position:fixed; top:0; left:0; right:0;
      z-index:1000;
      transition:all .4s ease;
    }
    #navbar.scrolled {
      background:rgba(255,255,255,0.96);
      backdrop-filter:blur(20px);
      -webkit-backdrop-filter:blur(20px);
      border-bottom:1px solid var(--border);
      box-shadow:0 2px 24px var(--shadow);
    }
    .nav-inner {
      display:flex; align-items:center;
      justify-content:space-between;
      padding:22px 48px;
      max-width:1400px; margin:0 auto;
    }
    .nav-logo {
      display:flex; align-items:center;
      gap:14px; text-decoration:none;
    }
    .logo-icon {
      width:auto; 
        height:110px;
      background:linear-gradient(135deg,var(--gold),var(--gold-d));
      border-radius:50%;
      display:flex; align-items:center;
      justify-content:center;
      font-size:22px; color:var(--white);
      flex-shrink:0; position:relative;
    }
    .logo-icon::after {
      content:''; position:absolute; inset:-2px;
      border-radius:50%;
      border:1px solid rgba(184,144,42,0.35);
      animation:logoPulse 2.5s ease-in-out infinite;
    }
.logo-icon img{
        height: 120px;
}
    @keyframes logoPulse {
      0%,100%{transform:scale(1);opacity:.4}
      50%{transform:scale(1.15);opacity:0}
    }
    .logo-text { display:flex; flex-direction:column; }
    .logo-name {
      font-family:var(--serif);
      font-size:18px; font-weight:700;
      color:var(--black); line-height:1.1;
    }
    .logo-tag {
      font-size:9px; letter-spacing:3px;
      text-transform:uppercase; color:var(--gold);
    }
    .nav-links {
      display:flex; align-items:center;
      gap:4px; list-style:none;
    }
    .nav-links a {
      display:block; padding:8px 16px;
      font-size:13px; font-weight:500;
      letter-spacing:.5px; color:var(--gray-l);
      text-decoration:none;
      position:relative; overflow:hidden; border-radius:2px;
    }
    .nav-links a .link-text {
      display:block; transition:transform .3s ease;
    }
    .nav-links a .link-hover {
      position:absolute; top:100%; left:0; right:0;
      text-align:center; color:var(--gold);
      transition:transform .3s ease;
      font-size:13px; font-weight:600;
    }
    .nav-links a:hover .link-text { transform:translateY(-100%); }
    .nav-links a:hover .link-hover { transform:translateY(-100%); }
    .nav-links a.active { color:var(--gold); }
    .nav-btn {
      background:transparent;
      border:1.5px solid rgba(184,144,42,0.6);
      color:var(--gold); padding:10px 24px;
      border-radius:2px; font-size:13px;
      font-weight:600; letter-spacing:1px;
      cursor:none; transition:all .3s ease;
      text-decoration:none; position:relative; overflow:hidden;
    }
    .nav-btn::before {
      content:''; position:absolute; inset:0;
      background:linear-gradient(135deg,var(--gold),var(--gold-l));
      transform:translateY(101%);
      transition:transform .3s cubic-bezier(.77,0,.175,1);
    }
    .nav-btn:hover::before { transform:translateY(0); }
    .nav-btn span { position:relative; z-index:1; transition:color .3s; }
    .nav-btn:hover span { color:var(--white); }
    .hamburger {
      display:none; flex-direction:column;
      gap:5px; cursor:none; padding:4px;
    }
    .hamburger span {
      display:block; width:24px; height:2px;
      background:var(--black); transition:all .3s ease;
    }

    /* ── HERO ── */
    #hero {
      position:relative; min-height:100vh;
      display:flex; align-items:center; overflow:hidden;
      background:var(--cream);
    }
    .hero-bg-canvas {
      position:absolute; inset:0;
      background:
        radial-gradient(ellipse at 65% 40%,rgba(184,144,42,0.09) 0,transparent 55%),
        radial-gradient(ellipse at 15% 75%,rgba(184,144,42,0.06) 0,transparent 45%),
        var(--cream);
    }
    .hero-grid-lines {
      position:absolute; inset:0;
      background-image:
        linear-gradient(rgba(184,144,42,0.06) 1px,transparent 1px),
        linear-gradient(90deg,rgba(184,144,42,0.06) 1px,transparent 1px);
      background-size:80px 80px;
    }
    .hero-content {
      position:relative; z-index:2;
      display:grid; grid-template-columns:1fr 1fr;
      gap:60px; align-items:center;
      max-width:1400px; margin:0 auto;
      padding:140px 48px 80px; width:100%;
    }
    .hero-eyebrow {
      display:inline-flex; align-items:center; gap:10px;
      padding:8px 18px;
      background:rgba(184,144,42,0.1);
      border:1px solid rgba(184,144,42,0.3);
      border-radius:100px;
      font-size:11px; font-weight:600;
      letter-spacing:2px; text-transform:uppercase;
      color:var(--gold); margin-bottom:28px; overflow:hidden;
    }
    .hero-eyebrow .dot {
      width:6px; height:6px; border-radius:50%;
      background:var(--gold);
      animation:dotBlink 1.5s ease-in-out infinite;
    }
    @keyframes dotBlink {
      0%,100%{opacity:1;transform:scale(1)}
      50%{opacity:.3;transform:scale(.6)}
    }
    .hero-title {
      font-family:var(--serif);
      font-size:clamp(44px,5.5vw,76px);
      font-weight:900; line-height:1.06;
      color:var(--black); margin-bottom:26px;
    }
    .hero-title .word { display:inline-block; overflow:hidden; }
    .hero-title .gold { color:var(--gold); }
    .hero-title .stroke {
      -webkit-text-stroke:2px var(--gold);
      color:transparent;
    }
    .hero-desc {
      font-size:16px; line-height:1.8;
      color:var(--gray); margin-bottom:40px; max-width:460px;
    }
    .hero-btns {
      display:flex; gap:16px;
      flex-wrap:wrap; margin-bottom:52px;
    }
    .btn-primary {
      display:inline-flex; align-items:center; gap:10px;
      padding:15px 34px;
      background:linear-gradient(135deg,var(--gold),var(--gold-l));
      color:var(--white);
      font-weight:700; font-size:13px; letter-spacing:1px;
      border-radius:2px; cursor:none; border:none;
      text-decoration:none; position:relative; overflow:hidden;
      transition:transform .3s ease, box-shadow .3s ease;
      box-shadow:0 4px 20px rgba(184,144,42,0.3);
    }
    .btn-primary::after {
      content:''; position:absolute; inset:0;
      background:linear-gradient(135deg,var(--gold-l),var(--gold));
      opacity:0; transition:opacity .3s;
    }
    .btn-primary:hover {
      transform:translateY(-3px);
      box-shadow:0 12px 35px rgba(184,144,42,0.4);
    }
    .btn-primary:hover::after { opacity:1; }
    .btn-primary span, .btn-primary i { position:relative; z-index:1; }
    .btn-secondary {
      display:inline-flex; align-items:center; gap:10px;
      padding:14px 34px; background:var(--white);
      color:#695117; font-weight:600; font-size:13px;
      letter-spacing:1px;
      border:1.5px solid rgba(184,144,42,0.45);
      border-radius:2px; cursor:none; text-decoration:none;
      transition:all .3s ease;
      box-shadow:0 2px 12px var(--shadow);
    }
    .btn-secondary:hover {
      background:var(--gold-pale);
      border-color:var(--gold);
      transform:translateY(-3px);
      box-shadow:0 8px 25px rgba(184,144,42,0.15);
    }
    .hero-stats { display:flex; gap:0; }
    .hstat { padding:0 32px; border-right:1px solid var(--border-gold); }
    .hstat:first-child { padding-left:0; }
    .hstat:last-child { border-right:none; }
    .hstat-num {
      font-family:var(--serif);
      font-size:32px; font-weight:700;
      color:var(--gold); line-height:1;
    }
    .hstat-lbl {
      font-size:10px; letter-spacing:1.5px;
      text-transform:uppercase; color:var(--gray); margin-top:5px;
    }

    /* Hero Visual */
    .hero-visual {
      position:relative; height:520px;
      display:flex; align-items:center; justify-content:center;
    }
    .hv-glow {
      position:absolute; width:350px; height:350px;
      border-radius:50%;
      background:radial-gradient(circle,rgba(184,144,42,0.1) 0,transparent 70%);
      animation:glowPulse 3s ease-in-out infinite;
    }
    @keyframes glowPulse {
      0%,100%{transform:scale(1);opacity:1}
      50%{transform:scale(1.15);opacity:.5}
    }
    .hv-ring {
      position:absolute; border-radius:50%;
      border:1px solid rgba(184,144,42,0.12);
      animation:ringExpand 3s ease-in-out infinite;
    }
    .hv-ring:nth-child(2){width:280px;height:280px;animation-delay:.5s;}
    .hv-ring:nth-child(3){width:380px;height:380px;animation-delay:1s;}
    .hv-ring:nth-child(4){width:480px;height:480px;animation-delay:1.5s;}
    @keyframes ringExpand {
      0%,100%{opacity:.15;transform:scale(1)}
      50%{opacity:.05;transform:scale(1.05)}
    }
    .playing-cards { position:absolute; width:100%; height:100%; }
    .pcard-hero {
      position:absolute; width:130px; height:190px;
      background:var(--white);
      border:1px solid var(--border);
      border-radius:12px;
      display:flex; flex-direction:column;
      align-items:center; justify-content:center;
      box-shadow:0 16px 50px var(--shadow-md), 0 2px 8px var(--shadow);
    }
    .pcard-hero .pc-rank {
      font-family:var(--serif);
      font-size:36px; font-weight:700; line-height:1;
    }
.pcard {
    position: absolute;
    width: 130px;
    height: 190px;
    background: linear-gradient(145deg, #d9b049, #876510);
    border: 1px solid rgba(201, 168, 76, .35);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .6), inset 0 1px 0 rgba(255, 255, 255, .05);
}
    .pcard-hero .pc-suit { font-size:54px; line-height:1; margin-top:4px; }
    .pcard-1 {top:10%;left:2%;transform:rotate(-18deg);color: #000000;animation:cardFloat1 5s ease-in-out infinite;}
    .pcard-2 { top:20%; left:22%; transform:rotate(-6deg); color:var(--white); animation:cardFloat2 5s ease-in-out infinite .6s; }
    .pcard-3 {top:15%;right:8%;transform:rotate(14deg);color: #000000;animation:cardFloat3 5s ease-in-out infinite 1.2s;}
    .pcard-4 { bottom:10%; left:10%; transform:rotate(10deg); color:var(--white); animation:cardFloat1 5s ease-in-out infinite 1.8s; }
    .pcard-5 {bottom:15%;right:5%;transform:rotate(-8deg);color: #000000;animation:cardFloat2 5s ease-in-out infinite 2.4s;}
    @keyframes cardFloat1 {
      0%,100%{transform:rotate(-18deg) translateY(0)}
      50%{transform:rotate(-18deg) translateY(-16px)}
    }
    @keyframes cardFloat2 {
      0%,100%{transform:rotate(-6deg) translateY(0)}
      50%{transform:rotate(-6deg) translateY(-20px)}
    }
    @keyframes cardFloat3 {
      0%,100%{transform:rotate(14deg) translateY(0)}
      50%{transform:rotate(14deg) translateY(-12px)}
    }
    .chip {
      position:absolute; font-size:28px;
      animation:chipSpin 4s ease-in-out infinite;
      filter:drop-shadow(0 4px 8px var(--shadow-md));
    }
    .chip:nth-of-type(1){top:5%;right:35%;animation-delay:0s;}
    .chip:nth-of-type(2){bottom:5%;left:35%;animation-delay:1s;}
    .chip:nth-of-type(3){top:50%;left:0;animation-delay:2s;}
    @keyframes chipSpin {
      0%,100%{transform:translateY(0) rotate(0)}
      50%{transform:translateY(-14px) rotate(20deg)}
    }
    .center-dice {
      font-size:72px; position:relative; z-index:2;
      animation:diceBounce 2s ease-in-out infinite;
      filter:drop-shadow(0 8px 16px rgba(184,144,42,0.25));
    }
    @keyframes diceBounce {
      0%,100%{transform:translateY(0) rotate(0)}
      50%{transform:translateY(-10px) rotate(5deg)}
    }

    /* Scroll indicator */
    .scroll-ind {
      position:absolute; bottom:40px; left:50%;
      transform:translateX(-50%); z-index:2;
      display:flex; flex-direction:column;
      align-items:center; gap:10px;
      color:var(--gray); font-size:10px;
      letter-spacing:3px; text-transform:uppercase;
    }
    .scroll-line {
      width:1px; height:50px;
      background:linear-gradient(180deg,var(--gold),transparent);
      animation:scrollLine 1.8s ease-in-out infinite;
    }
    @keyframes scrollLine {
      0%{transform:scaleY(0);transform-origin:top}
      50%{transform:scaleY(1);transform-origin:top}
      51%{transform:scaleY(1);transform-origin:bottom}
      100%{transform:scaleY(0);transform-origin:bottom}
    }
.pcard .pc-rank {
    font-family: var(--serif);
    font-size: 36px;
    font-weight: 700;
    line-height: 1;
}
.pcard .pc-suit {
    font-size: 54px;
    line-height: 1;
    margin-top: 4px;
}
    /* ── MARQUEE ── */
    .marquee-strip {
      background:linear-gradient(90deg,var(--gold-d),var(--gold),var(--gold-l),var(--gold),var(--gold-d));
      padding:14px 0; overflow:hidden; position:relative; z-index:1;
    }
    .marquee-track {
      display:flex; gap:48px;
      animation:marquee 20s linear infinite; width:max-content;
    }
    .mi {
      display:flex; align-items:center; gap:10px;
      font-size:12px; font-weight:700; letter-spacing:2px;
      text-transform:uppercase; color:var(--white); white-space:nowrap;
    }
    .mi i { font-size:12px; }
    @keyframes marquee {
      from{transform:translateX(0)}
      to{transform:translateX(-50%)}
    }

    /* ── SECTION UTILITIES ── */
    .container { max-width:1200px; margin:0 auto; padding:0 32px; }
    .container-wide { max-width:1400px; margin:0 auto; padding:0 32px; }
    section { padding:110px 0; position:relative; z-index:1; }
    .s-label {
      display:inline-flex; align-items:center; gap:12px;
      font-size:10px; font-weight:700; letter-spacing:4px;
      text-transform:uppercase; color:#695117; margin-bottom:16px;
    }
    .s-label::before {
      content:''; width:28px; height:1px;
      background:linear-gradient(90deg,var(--gold),transparent); display:block;
    }
    .s-label::after {
      content:''; width:28px; height:1px;
      background:linear-gradient(90deg,transparent,var(--gold)); display:block;
    }
    .s-title {
      font-family:var(--serif);
      font-size:clamp(30px,4vw,52px);
      font-weight:700; line-height:1.12;
      color:var(--black); margin-bottom:18px;
    }
    .s-title span { color:#644D16; }
    .s-sub {
      font-size:15px; color:#545454;
      line-height:1.8; max-width:540px;
    }
    .text-center { text-align:center; }
    .text-center .s-sub { margin:0 auto; }
    .gold-bar {
      width:50px; height:2px;
      background:linear-gradient(90deg,var(--gold),var(--gold-l),transparent);
      margin:20px 0;
    }
    .gold-bar.center { margin:20px auto; }

    /* ── ABOUT ── */
    #about { background:var(--off-white); }
    .about-wrap {
      display:grid; grid-template-columns:1fr 1fr;
      gap:80px; align-items:center;
    }
    .about-visual { position:relative; }
    .about-img-frame {
      position:relative; border-radius:4px;
      overflow:hidden; aspect-ratio:3/4;
      box-shadow:0 24px 60px var(--shadow-lg);
    }
    .about-img-frame img {
      width:100%; height:100%; object-fit:cover;
      filter:brightness(.95) saturate(.95);
      transition:transform .8s cubic-bezier(.25,.46,.45,.94);
    }
    .about-img-frame:hover img { transform:scale(1.05); }
    .about-img-frame::after {
      content:''; position:absolute; inset:0;
      border:1px solid rgba(184,144,42,0.2); border-radius:4px;
    }
    .about-badge {
      position:absolute; bottom:-16px; right:-16px;
      background:linear-gradient(135deg,var(--gold),var(--gold-d));
      border-radius:4px; padding:28px 24px;
      text-align:center; min-width:130px;
      box-shadow:0 16px 40px rgba(184,144,42,0.35);
    }
    .about-badge .num {
      font-family:var(--serif);
      font-size:40px; font-weight:700;
      color:var(--white); line-height:1;
    }
    .about-badge .lbl {
      font-size:10px; font-weight:700;
      letter-spacing:1px; color:rgba(255,255,255,0.75);
      text-transform:uppercase; margin-top:4px;
    }
    .about-corner {
      position:absolute; top:-16px; left:-16px;
      width:60px; height:60px;
      border-top:2px solid var(--gold);
      border-left:2px solid var(--gold);
      border-radius:2px 0 0 0;
    }
    .about-info { }
    .about-stats {
      display:grid; grid-template-columns:repeat(3,1fr);
      gap:12px; margin:36px 0;
    }
    .astat {
      background:var(--white);
      border:1px solid var(--border);
      border-radius:4px; padding:22px 16px;
      text-align:center;
      transition:all .35s ease; cursor:default;
      box-shadow:0 2px 12px var(--shadow);
    }
    .astat:hover {
      border-color:rgba(184,144,42,0.4);
      transform:translateY(-4px);
      box-shadow:0 12px 30px var(--shadow-md);
    }
    .astat i { font-size:20px; color:var(--gold); display:block; margin-bottom:10px; }
    .astat .n { font-family:var(--serif); font-size:26px; font-weight:700; color:var(--black); }
    .astat .l { font-size:10px; color:var(--gray); letter-spacing:.5px; margin-top:4px; }
    .about-list { list-style:none; margin-bottom:36px; }
    .about-list li {
      display:flex; align-items:center; gap:14px;
      padding:12px 0; font-size:14px; color:#545454;
      border-bottom:1px solid var(--border);
    }
    .about-list li i { color:var(--gold); font-size:13px; flex-shrink:0; }

    /* ── SERVICES ── */
    #services { background:var(--white); overflow:hidden; }
    .services-wrap {
      display:grid; grid-template-columns:repeat(3,1fr);
      gap:1px; background:var(--border);
      border:1px solid var(--border);
      margin-top:60px;
    }
    .svc {
      background:var(--white); padding:44px 36px;
      position:relative; overflow:hidden;
      transition:all .4s ease; cursor:default;
    }
    .svc::before {
      content:''; position:absolute; inset:0;
      background:linear-gradient(135deg,var(--gold-pale),transparent 60%);
      opacity:0; transition:opacity .4s;
    }
    .svc::after {
      content:''; position:absolute;
      bottom:0; left:0; right:0; height:2px;
      background:linear-gradient(90deg,var(--gold),var(--gold-l));
      transform:scaleX(0); transform-origin:left;
      transition:transform .4s cubic-bezier(.77,0,.175,1);
    }
    .svc:hover { background:var(--cream); }
    .svc:hover::before { opacity:1; }
    .svc:hover::after { transform:scaleX(1); }
    .svc-num {
      font-family:var(--serif); font-size:56px;
      font-weight:900; color:rgba(184,144,42,0.07);
      position:absolute; top:20px; right:24px;
      line-height:1; transition:color .4s;
    }
    .svc:hover .svc-num { color:rgba(184,144,42,0.14); }
    .svc-icon {
      width:56px; height:56px;
      background:var(--gold-pale);
      border-radius:50%;
      display:flex; align-items:center; justify-content:center;
      font-size:22px; color:var(--gold); margin-bottom:24px;
      transition:all .4s; border:1px solid var(--border-gold);
    }
    .svc:hover .svc-icon {
      background:rgba(184,144,42,0.15);
      transform:scale(1.1) rotate(5deg);
    }
    .svc h3 {
      font-family:var(--serif); font-size:20px; font-weight:600;
      color:var(--black); margin-bottom:12px;
    }
    .svc p { font-size:13px; color:var(--gray); line-height:1.75; }
    .svc-link {
      display:inline-flex; align-items:center; gap:6px;
      margin-top:20px; font-size:12px; font-weight:600;
      color:var(--gold); text-decoration:none;
      letter-spacing:1px; text-transform:uppercase;
      opacity:0; transform:translateY(8px);
      transition:all .3s ease;
    }
    .svc:hover .svc-link { opacity:1; transform:translateY(0); }
    .svc-link i { transition:transform .3s; }
    .svc-link:hover i { transform:translateX(4px); }

    /* ── WE SERVE ── */
    #we-serve { background:var(--cream); }
    .serve-intro {
      display:grid; grid-template-columns:1fr 1fr;
      gap:60px; align-items:end; margin-bottom:56px;
    }
    .serve-grid {
      display:grid; grid-template-columns:repeat(3,1fr); gap:20px;
    }
    .serve-card {
      position:relative; border-radius:4px;
      overflow:hidden; cursor:default;
    }
    .serve-card.tall { grid-row:span 2; }
    .serve-card .sc-img {
      width:100%; height:280px;
      background-size:cover; background-position:center;
      transition:transform .6s cubic-bezier(.25,.46,.45,.94);
    }
    .serve-card.tall .sc-img { height:100%; min-height:580px; }
    .serve-card:hover .sc-img { transform:scale(1.07); }
    .sc-overlay {
      position:absolute; inset:0;
      background:linear-gradient(to top,rgba(0,0,0,0.82) 0,rgba(0,0,0,0.25) 45%,transparent 100%);
      transition:background .4s;
    }
    .serve-card:hover .sc-overlay {
      background:linear-gradient(to top,rgba(10,6,0,0.9) 0,rgba(184,144,42,0.12) 50%,rgba(0,0,0,0.05) 100%);
    }
    .sc-content {
      position:absolute; bottom:0; left:0; right:0; padding:28px 24px;
    }
    .sc-tag {
      display:inline-block; padding:4px 10px;
      background:rgba(184,144,42,0.2);
      border:1px solid rgba(184,144,42,0.45);
      border-radius:100px; font-size:9px; font-weight:700;
      letter-spacing:2px; color:var(--gold-l);
      text-transform:uppercase; margin-bottom:8px;
    }
    .sc-icon {
      font-size:24px; color:var(--gold-l); display:block;
      margin-bottom:8px; transform:translateY(4px);
      transition:transform .4s ease;
    }
    .serve-card:hover .sc-icon { transform:translateY(0); }
    .sc-content h3 {
      font-family:var(--serif); font-size:20px; font-weight:600;
      color:var(--white); margin-bottom:6px;
    }
    .sc-content p {
      font-size:12px; color:rgba(255,255,255,0.7);
      line-height:1.65; max-height:0; overflow:hidden;
      transition:max-height .45s ease, opacity .4s ease; opacity:0;
    }
    .serve-card:hover .sc-content p { max-height:80px; opacity:1; }

    /* ── PACKAGES & PRICING ── */
    #pricing { background:var(--off-white); overflow:hidden; }

    #pricing .pricing-toggle-wrap {
      display:flex; align-items:center;
      justify-content:center; gap:16px;
      margin:36px 0 52px;
    }
    #pricing .ptog-label {
      font-size:13px; font-weight:600; letter-spacing:1px;
      color:var(--gray); transition:color .3s;
      cursor:default; user-select:none;
    }
    #pricing .ptog-label.active { color:var(--gold); }
    #pricing .ptog-track {
      width:52px; height:28px;
      background:var(--cream2);
      border:1.5px solid var(--border-gold);
      border-radius:100px; position:relative;
      cursor:pointer; transition:background .3s;
    }
    #pricing .ptog-track:hover { background:var(--gold-pale); }
    #pricing .ptog-thumb {
      position:absolute; top:3px; left:3px;
      width:20px; height:20px;
      background:linear-gradient(135deg,var(--gold),var(--gold-d));
      border-radius:50%;
      transition:transform .4s cubic-bezier(.77,0,.175,1);
      box-shadow:0 2px 8px rgba(184,144,42,0.4);
    }
    #pricing .ptog-track.on .ptog-thumb { transform:translateX(24px); }

    #pricing .pricing-grid {
      display:grid;
      grid-template-columns: repeat(4,1fr);
      gap:24px;
      align-items:start;
      margin-bottom:60px;
      margin-top:60px;
    }
    #pricing .pcard {
      background:var(--white);
      border:1px solid var(--border);
      border-radius:6px;
      padding:40px 36px;
      position:relative;
      overflow:hidden;
      transition:all .4s ease;
      cursor:default;
      box-shadow:0 4px 20px var(--shadow);
      width: 100%;
      height: 100%;
    }
#pricing .pcard:hover {
    animation: diceBounce 2s ease-in-out infinite;
    filter: drop-shadow(0 0 20px rgba(201, 168, 76, .5));
}
    #pricing .pcard::before {
      content:''; position:absolute; inset:0;
      background:linear-gradient(145deg,var(--gold-pale),transparent 60%);
      opacity:0; transition:opacity .4s;
    }
    #pricing .pcard:hover {
      transform:translateY(-8px);
      border-color:rgba(184,144,42,0.4);
      box-shadow:0 24px 60px var(--shadow-lg);
    }
    .pcard:hover::before { opacity:1; }

    #pricing .pcard.featured {
      background:linear-gradient(155deg,var(--gold-pale) 0%,var(--white) 50%);
      border-color:rgba(184,144,42,0.55);
      transform:translateY(-12px);
      box-shadow:0 28px 70px var(--shadow-lg),
                 0 0 0 1px rgba(184,144,42,0.2),
                 0 0 40px rgba(184,144,42,0.08);
    }
    #pricing .pcard.featured:hover { transform:translateY(-20px); }

    #pricing .pcard-popular {
      position:absolute; top:0; right:0;
      background:linear-gradient(135deg,var(--gold),var(--gold-l));
      color:var(--white); font-size:10px; font-weight:800;
      letter-spacing:2px; text-transform:uppercase;
      padding:7px 18px; border-radius:0 6px 0 8px;
    }
    #pricing .pcard-header { margin-bottom:28px; }
    #pricing .pcard-suit {
      font-size:40px; line-height:1;
      color:rgba(184,144,42,0.2); margin-bottom:10px;
      transition:color .3s;
    }
    #pricing .pcard:hover .pcard-suit { color:rgba(184,144,42,0.4); }
    #pricing .pcard.featured .pcard-suit,
    #pricing .gold-suit { color:var(--gold) !important; }
    #pricing .pcard-tier {
      font-family:var(--serif); font-size:26px;
      font-weight:700; color:var(--black); line-height:1;
    }
    #pricing .pcard.featured .pcard-tier { color:var(--gold); }
    #pricing .pcard-tagline { font-size:12px; color:var(--gray); margin-top:6px; }
    #pricing .pcard-price-wrap {
      padding:24px 0;
      border-top:1px solid var(--border);
      border-bottom:1px solid var(--border);
      margin-bottom:28px;
    }
    #pricing .pcard-price {
      display:flex; align-items:flex-start;
      gap:4px; line-height:1; margin-bottom:8px;
    }
    #pricing .p-currency {
      font-size:22px; font-weight:700;
      color:var(--gold); margin-top:8px;
    }
    #pricing .p-amount {
      font-family:var(--serif); font-size:52px;
      font-weight:900; color:var(--black); line-height:1;
      transition:all .4s ease;
    }
    #pricing .pcard.featured .p-amount { color:var(--gold); }
    #pricing .p-per { font-size:13px; color:var(--gray); align-self:flex-end; margin-bottom:8px; }
    #pricing .pcard-guests { font-size:12px; color:var(--gray); }
    #pricing .pcard-features { list-style:none; margin-bottom:32px; }
    #pricing .pcard-features li {
      display:flex; align-items:center; gap:12px;
      padding:9px 0; font-size:13px;
      border-bottom:1px solid var(--border);
      transition:padding-left .25s ease;
    }
    #pricing .pcard-features li:hover { padding-left:4px; }
    #pricing .pcard-features li.inc { color:var(--gray-l); }
    #pricing .pcard-features li.exc { color:var(--gray-xl); text-decoration:line-through; }
    #pricing .pcard-features li.inc i { color:var(--gold); font-size:11px; flex-shrink:0; }
    #pricing .pcard-features li.exc i { color:var(--gray-xl); font-size:11px; flex-shrink:0; }
    #pricing .pcard-btn {
      display:flex; align-items:center; justify-content:center;
      gap:10px; width:100%; padding:14px; border-radius:2px;
      font-size:13px; font-weight:700; letter-spacing:1px;
      text-decoration:none; cursor:none;
      transition:all .35s ease; margin-bottom:14px;
      position:relative; overflow:hidden;
    }
    #pricing .pcard-btn.filled {
      background:linear-gradient(135deg,var(--gold),var(--gold-l));
      color:var(--white); border:none;
    }
    #pricing .pcard-btn.filled::after {
      content:''; position:absolute; inset:0;
      background:linear-gradient(135deg,var(--gold-l),var(--gold));
      opacity:0; transition:opacity .3s;
    }
    #pricing .pcard-btn.filled:hover::after { opacity:1; }
    #pricing .pcard-btn.filled:hover {
      transform:translateY(-2px);
      box-shadow:0 10px 30px rgba(184,144,42,0.35);
    }
    #pricing .pcard-btn.filled span, .pcard-btn.filled i { position:relative; z-index:1; }
    #pricing .pcard-btn.outline {
      background:transparent; color:var(--gold);
      border:1.5px solid rgba(184,144,42,0.4);
    }
    #pricing .pcard-btn.outline:hover {
      background:var(--gold-pale);
      border-color:var(--gold);
      transform:translateY(-2px);
      box-shadow:0 6px 20px rgba(184,144,42,0.12);
    }
    #pricing .pcard-note { text-align:center; font-size:11px; color:var(--gray-xl); letter-spacing:.5px; }
    #pricing .pcard.featured::after {
      content:''; position:absolute; top:-60%; left:-60%;
      width:40%; height:200%;
      background:linear-gradient(105deg,transparent 40%,rgba(184,144,42,0.06) 50%,transparent 60%);
      transform:rotate(25deg);
      animation:cardShine 4s ease-in-out infinite 2s;
    }
    @keyframes cardShine {
      0%{left:-60%} 40%,100%{left:160%}
    }

    /* Add-ons */
    #pricing .addons-wrap {
      background:var(--white); border:1px solid var(--border);
      border-radius:6px; padding:48px 40px;
      margin-bottom:32px;
      box-shadow:0 4px 20px var(--shadow);
    }
    #pricing .addons-header {
      display:flex; align-items:center;
      justify-content:space-between;
      margin-bottom:32px; flex-wrap:wrap; gap:12px;
    }
    #pricing .addons-title {
      font-family:var(--serif); font-size:24px;
      font-weight:700; color:var(--black);
    }
    #pricing .addons-title span { color:var(--gold); }
    #pricing .addons-grid {
      display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
    }
    #pricing .addon-item {
      display:flex; align-items:center; gap:16px;
      background:var(--cream); border:1px solid var(--border);
      border-radius:4px; padding:18px 20px;
      transition:all .35s ease; cursor:default;
    }
    #pricing .addon-item:hover {
      border-color:rgba(184,144,42,0.4);
      transform:translateY(-3px);
      box-shadow:0 12px 30px var(--shadow-md);
      background:var(--gold-pale);
    }
    #pricing .addon-item > i {
      font-size:22px; color:var(--gold); flex-shrink:0;
      width:40px; text-align:center; transition:transform .3s ease;
    }
    #pricing .addon-item:hover > i { transform:scale(1.2) rotate(5deg); }
    #pricing .addon-info { flex:1; }
    #pricing .addon-info strong {
      display:block; font-size:13px; font-weight:600;
      color:var(--black); margin-bottom:3px;
    }
    #pricing .addon-info span { font-size:11px; color:var(--gray); }
    #pricing .addon-price {
      font-family:var(--serif); font-size:16px;
      font-weight:700; color:var(--gold); white-space:nowrap; flex-shrink:0;
    }

    /* Pricing CTA */
    .pricing-cta { }
    .pcta-inner {
      display:flex; align-items:center;
      justify-content:space-between; gap:24px;
      background:var(--gold-pale);
      border:1.5px solid rgba(184,144,42,0.3);
      border-radius:6px; padding:32px 40px; flex-wrap:wrap;
    }
    .pcta-text {
      display:flex; align-items:center; gap:20px; flex:1;
    }
    .pcta-icon {
      font-size:32px; color:var(--gold); flex-shrink:0;
      animation:iconPulse 2.5s ease-in-out infinite;
    }
    @keyframes iconPulse {
      0%,100%{transform:scale(1)}
      50%{transform:scale(1.1)}
    }
    .pcta-text strong {
      display:block; font-size:16px; font-weight:700;
      color:var(--black); margin-bottom:4px;
    }
    .pcta-text span { font-size:13px; color:var(--gray); }

    /* ── GALLERY ── */
    #gallery { background:var(--white); }
    .gallery-intro {
      display:flex; justify-content:space-between;
      align-items:flex-end; margin-bottom:48px;
    }
    .gallery-mosaic {
      display:grid;
      grid-template-columns:repeat(12,1fr);
      grid-template-rows:220px 220px; gap:12px;
    }
    .gitem { border-radius:4px; overflow:hidden; position:relative; cursor:pointer; }
    .gitem:nth-child(1){grid-column:span 5;grid-row:span 2;}
    .gitem:nth-child(2){grid-column:span 4;}
    .gitem:nth-child(3){grid-column:span 3;}
    .gitem:nth-child(4){grid-column:span 3;}
    .gitem:nth-child(5){grid-column:span 4;}
    .gitem img {
      width:100%; height:100%; object-fit:cover;
      transition:transform .6s cubic-bezier(.25,.46,.45,.94);
      display:block; filter:brightness(.98);
    }
    .gitem:hover img { transform:scale(1.07); }
    .g-overlay {
      position:absolute; inset:0; background:rgba(0,0,0,0);
      display:flex; align-items:center; justify-content:center;
      transition:background .35s;
    }
    .gitem:hover .g-overlay { background:rgba(0,0,0,0.38); }
    .g-icon {
      font-size:24px; color:var(--white);
      transform:scale(0) rotate(-15deg);
      transition:transform .35s cubic-bezier(.34,1.56,.64,1);
    }
    .gitem:hover .g-icon { transform:scale(1) rotate(0); }
    .gallery-label {
      position:absolute; bottom:16px; left:16px;
      font-size:11px; font-weight:600; letter-spacing:1px;
      text-transform:uppercase; color:rgba(255,255,255,.85);
      opacity:0; transform:translateY(6px);
      transition:all .35s ease;
    }
    .gitem:hover .gallery-label { opacity:1; transform:translateY(0); }

    /* ── PROCESS ── */
    #process { background:var(--cream); }
    .process-line {
      display:flex; gap:0; position:relative; margin-top:60px;
    }
    .process-line::before {
      content:''; position:absolute; top:36px;
      left:80px; right:80px; height:1px;
      background:linear-gradient(90deg,transparent,var(--border-gold),var(--border-gold),var(--border-gold),transparent);
    }
    .pstep { flex:1; text-align:center; padding:0 20px; }
    .pstep-circle {
      width:72px; height:72px; margin:0 auto 28px;
      background:var(--white);
      border:1px solid var(--border);
      border-radius:50%;
      display:flex; align-items:center; justify-content:center;
      position:relative; z-index:1;
      transition:all .4s ease;
      box-shadow:0 4px 16px var(--shadow);
    }
    .pstep:hover .pstep-circle {
      background:linear-gradient(135deg,var(--gold),var(--gold-d));
      border-color:var(--gold);
      box-shadow:0 8px 30px rgba(184,144,42,0.3);
    }
    .pstep-circle .n {
      font-family:var(--serif); font-size:22px;
      font-weight:700; color:var(--gold); transition:color .3s;
    }
    .pstep:hover .pstep-circle .n { color:var(--white); }
    .pstep h3 {
      font-family:var(--serif); font-size:18px;
      font-weight:600; color:var(--black); margin-bottom:12px;
    }
    .pstep p { font-size:13px; color:var(--gray); line-height:1.7; }

    /* ── TESTIMONIALS ── */
    #testimonials { background:var(--off-white); }
    .testi-wrap {
      display:grid; grid-template-columns:repeat(3,1fr);
      gap:24px; margin-top:56px;
    }
    .tcard {
      background:var(--white);
      border:1px solid var(--border);
      border-radius:4px; padding:36px;
      position:relative; overflow:hidden;
      transition:all .4s ease; cursor:default;
      box-shadow:0 4px 18px var(--shadow);
    }
    .tcard::before {
      content:''; position:absolute; top:0;
      left:0; right:0; height:2px;
      background:linear-gradient(90deg,transparent,var(--gold),transparent);
      transform:scaleX(0); transition:transform .5s ease;
    }
    .tcard:hover {
      transform:translateY(-6px);
      border-color:rgba(184,144,42,0.35);
      box-shadow:0 24px 60px var(--shadow-lg);
    }
    .tcard:hover::before { transform:scaleX(1); }
    .tcard-quote {
      font-size:72px; font-family:var(--serif);
      color:rgba(184,144,42,0.15); line-height:.5; margin-bottom:20px;
    }
    .tcard-stars { color:var(--gold); font-size:13px; letter-spacing:2px; margin-bottom:16px; }
    .tcard-text {
      font-size:14px; color:var(--gray-l);
      line-height:1.8; font-style:italic; margin-bottom:28px;
    }
    .tcard-author { display:flex; align-items:center; gap:14px; }
    .tcard-av {
      width:46px; height:46px; border-radius:50%;
      background:linear-gradient(135deg,var(--gold-d),var(--gold));
      display:flex; align-items:center; justify-content:center;
      font-family:var(--serif); font-size:15px; font-weight:700;
      color:var(--white); flex-shrink:0;
    }
    .tcard-name { font-size:14px; font-weight:600; color:var(--black); }
    .tcard-ev { font-size:11px; color:var(--gold); margin-top:3px; }

    /* ── CTA BANNER ── */
    #cta { padding:0; }
    .cta-inner {
      position:relative; overflow:hidden;
      padding:90px 48px;
      background:linear-gradient(135deg,var(--gold-pale) 0%,var(--cream2) 100%);
      border-top:1px solid var(--border-gold);
      border-bottom:1px solid var(--border-gold);
      text-align:center;
    }
    .cta-inner::before {
      content:'♠'; position:absolute;
      font-size:400px; font-family:var(--serif);
      color:rgba(184,144,42,0.05);
      top:50%; left:50%;
      transform:translate(-50%,-50%);
    }
    .cta-inner h2 {
      font-family:var(--serif);
      font-size:clamp(28px,4vw,50px);
      font-weight:700; color:var(--black); margin-bottom:16px;
    }
    .cta-inner h2 span { color:var(--gold); }
    .cta-inner p { font-size:16px; color:var(--gray); margin-bottom:36px; }
    .cta-btns { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }

    /* ── CONTACT ── */
    #contact { background:var(--white); }
    .contact-wrap {
      display:grid; grid-template-columns:1fr 1.5fr;
      gap:64px; align-items:start; margin-top:56px;
    }
    .cinfo h3 {
      font-family:var(--serif); font-size:26px;
      font-weight:600; color:var(--black); margin-bottom:16px;
    }
.cinfo h2 {
      font-family:var(--serif); font-size:26px;
      font-weight:600; color:var(--black); margin-bottom:16px;
    }
    .cinfo p { font-size:14px; color:var(--gray); line-height:1.8; margin-bottom:36px; }
    .cinfo-items { list-style:none; }
    .cinfo-items li {
      display:flex; align-items:flex-start; gap:16px;
      padding:18px 0; border-bottom:1px solid var(--border);
    }
    .ci-ico {
      width:44px; height:44px;
      background:var(--gold-pale);
      border-radius:50%;
      display:flex; align-items:center; justify-content:center;
      color:var(--gold); font-size:16px; flex-shrink:0;
      border:1px solid var(--border-gold);
    }
    .ci-txt strong {
      display:block; font-size:12px; font-weight:700;
      letter-spacing:1px; text-transform:uppercase;
      color:var(--gold); margin-bottom:4px;
    }
    .ci-txt span { font-size:13px; color:var(--gray); }
    .cform {
      background:var(--off-white);
      border:1px solid var(--border);
      border-radius:4px; padding:48px 40px;
      box-shadow:0 8px 32px var(--shadow);
    }
    .form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
    .fg { margin-bottom:18px; }
    .fg label {
      display:block; font-size:10px; font-weight:700;
      letter-spacing:2px; text-transform:uppercase;
      color:var(--gray); margin-bottom:8px;
    }
    .fg input, .fg select, .fg textarea {
      width:100%; padding:13px 16px;
      background:var(--white);
      border:1px solid var(--border);
      border-radius:2px; color:var(--black);
      font-family:var(--sans); font-size:13px;
      outline:none;
      transition:border-color .3s ease, box-shadow .3s ease;
      -webkit-appearance:none;
    }
    .fg input:focus, .fg select:focus, .fg textarea:focus {
      border-color:var(--gold);
      box-shadow:0 0 0 3px rgba(184,144,42,0.1);
    }
    .fg input::placeholder, .fg textarea::placeholder { color:var(--gray-xl); }
    .fg select { cursor:pointer; color:var(--black); }
    .fg select option { background:var(--white); color:var(--black); }
    .fg textarea { resize:vertical; min-height:100px; }
    .fg.full { grid-column:1/-1; }
    .fsubmit { margin-top:8px; }
    .fsubmit .btn-primary { width:100%; justify-content:center; font-size:14px; padding:16px; }

    /* ── FOOTER ── */
    footer {
      background:var(--black);
      border-top:1px solid rgba(255,255,255,0.06);
      padding-top:72px;
    }
    .footer-grid {
      display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr;
      gap:48px; padding-bottom:56px;
      border-bottom:1px solid rgba(255,255,255,0.06);
    }
    .fbrand .logo-name { font-size:20px; color:var(--white); }
    .fbrand .logo-tag { color:var(--gold); }
    .fbrand p {
      font-size:13px; color:#A6A6A6;
      line-height:1.85; margin:18px 0 28px; max-width:270px;
    }
    .socials { display:flex; gap:10px; }
    .soc {
      width:36px; height:36px;
      background:rgba(255,255,255,0.05);
      border:1px solid rgba(255,255,255,0.1);
      border-radius:50%;
      display:flex; align-items:center; justify-content:center;
      color:rgba(255,255,255,0.5); font-size:13px;
      text-decoration:none; transition:all .3s ease; cursor:none;
    }
    .soc:hover {
      background:var(--gold); color:var(--white);
      border-color:var(--gold);
      transform:translateY(-3px);
      box-shadow:0 6px 20px rgba(184,144,42,0.4);
    }
    .fcol h4 {
      font-size:10px; font-weight:700; letter-spacing:3px;
      text-transform:uppercase; color:var(--gold); margin-bottom:22px;
    }

.fcol h2{
      font-size:10px; font-weight:700; letter-spacing:3px;
      text-transform:uppercase; color:var(--gold); margin-bottom:22px;
    }

    .fcol ul { list-style:none; }
    .fcol ul li { margin-bottom:10px; }
    .fcol ul li a {
      font-size:13px; color:#A6A6A6;
      text-decoration:none; transition:all .25s ease;
      display:inline-flex; align-items:center; gap:0; cursor:none;
    }
    .fcol ul li a::before {
      content:'›'; color:var(--gold); font-size:16px;
      opacity:0; width:0; transition:all .25s ease; overflow:hidden;
    }
    .fcol ul li a:hover { color:var(--gold-l); padding-left:8px; }
    .fcol ul li a:hover::before { opacity:1; width:14px; }
    .fbot {
      display:flex; align-items:center;
      justify-content:space-between;
      padding:24px 0; flex-wrap:wrap; gap:12px;
    }
    .fbot p { font-size:12px; color:#A6A6A6; }
    .fbot a { color:var(--gold); text-decoration:none; }
    .fbot-links { display:flex; gap:24px; }
    .fbot-links a {
      font-size:12px; color:#A6A6A6;
      text-decoration:none; transition:color .25s; cursor:none;
    }
    .fbot-links a:hover { color:var(--gold); }

    /* ── BACK TO TOP ── */
    #btt {
      position:fixed; bottom:32px; right:32px;
      width:46px; height:46px;
      background:linear-gradient(135deg,var(--gold),var(--gold-d));
      border-radius:50%;
      display:flex; align-items:center; justify-content:center;
      color:var(--white); font-size:16px; cursor:none;
      z-index:900; opacity:0; transform:translateY(20px);
      transition:all .4s ease; border:none;
      box-shadow:0 6px 24px rgba(184,144,42,0.35);
    }
    #btt.show { opacity:1; transform:translateY(0); }
    #btt:hover { transform:translateY(-4px); box-shadow:0 12px 32px rgba(184,144,42,0.45); }

    /* ── MOBILE MENU ── */
    #mob-menu {
      position:fixed; inset:0;
      background:rgba(255,255,255,0.99);
      backdrop-filter:blur(24px); z-index:5000;
      display:flex; flex-direction:column;
      align-items:center; justify-content:center; gap:8px;
      transform:translateX(100%);
      transition:transform .5s cubic-bezier(.77,0,.175,1);
    }
    #mob-menu.open { transform:translateX(0); }
    #mob-menu a {
      font-family:var(--serif); font-size:25px;
      font-weight:600; color:var(--black);
      text-decoration:none; padding:10px 40px;
      transition:color .25s;
      display: flex;
	 align-items: center;
     justify-content: center;
    }

    #mob-close {
      position:absolute; top:24px; right:24px;
      background:none; border:none; color:var(--gold);
      font-size:26px; cursor:pointer;
		    justify-content: center;
    }

    /* ── GSAP INITIAL STATES ── */
    .gsap-hero-badge,
    .gsap-hero-title .word,
    .gsap-hero-desc,
    .gsap-hero-btns,
    .gsap-hero-stats { opacity:0; }
    .gsap-hero-visual { opacity:0; }
    .gsap-section { opacity:0; transform:translateY(40px); }
    .gsap-card { opacity:0; transform:translateY(30px); }
    .gsap-left { opacity:0; transform:translateX(-40px); }
    .gsap-right { opacity:0; transform:translateX(40px); }
    .gsap-scale { opacity:0; transform:scale(.94); }

    /* ── RESPONSIVE ── */
    @media(max-width:1100px){
      .hero-content{grid-template-columns:1fr;padding-top:130px;}
      .hero-visual{display:none;}
      .about-wrap{grid-template-columns:1fr;gap:48px;}
      .about-visual{max-width:480px;margin:0 auto;}
      .services-wrap{grid-template-columns:repeat(2,1fr);}
      .serve-grid{grid-template-columns:repeat(2,1fr);}
      .serve-card.tall{grid-row:span 1;}
      .serve-card.tall .sc-img{min-height:280px;}
      .testi-wrap{grid-template-columns:1fr;}
      .footer-grid{grid-template-columns:1fr 1fr;}
      .contact-wrap{grid-template-columns:1fr;}
      .process-line{flex-wrap:wrap;gap:32px;}
      .process-line::before{display:none;}
      .pstep{flex:0 0 calc(50% - 16px);}
      .pricing-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto 60px;}
      .pcard.featured{transform:none;}
      .pcard.featured:hover{transform:translateY(-8px);}
      .addons-grid{grid-template-columns:repeat(2,1fr);}
        .nav-links,.nav-btn{display:none;}
      .hamburger{display:flex;}
    }
    @media(max-width:768px){
      
      section{padding:80px 0;}
      .services-wrap{grid-template-columns:1fr;}
      .serve-grid{grid-template-columns:1fr;}
      .gallery-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto;}
      .gitem:nth-child(1){grid-column:span 2;grid-row:span 1;}
      .gitem:nth-child(n){grid-column:span 1;}
      .footer-grid{grid-template-columns:1fr;}
      .form-row{grid-template-columns:1fr;}
      .serve-intro{grid-template-columns:1fr;gap:24px;}
      .gallery-intro{flex-direction:column;align-items:flex-start;gap:24px;}
      .addons-wrap{padding:32px 20px;}
      .addons-grid{grid-template-columns:1fr;}
      .addons-header{flex-direction:column;align-items:flex-start;}
      .pcta-inner{flex-direction:column;align-items:flex-start;padding:28px 24px;}
      .pcta-text{flex-direction:column;align-items:flex-start;gap:12px;}
      body{cursor:auto;}
      #cursor,#cursor-ring{display:none;}
    }
    @media(max-width:480px){
      .about-stats{grid-template-columns:1fr 1fr;}
      .hstat{padding:0 16px;}
      .pstep{flex:0 0 100%;}
      .fbot{flex-direction:column;text-align:center;}
    }
/********************ADD*********************/
.hero-content.inner-sec{
    grid-template-columns: auto;
}
.inner-sec .hero-title {
    line-height: inherit;
    text-align: center;
}
.inner-sec .hero-desc {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
    padding-bottom: 40px;
}
.inner-sec .hero-btns {
    justify-content: center;
}
#hero.innerBnr{
    padding-bottom: 0;
    min-height: auto;
}
.mt-0{
    margin-top: 0 !important;
}
.innerBnr .hero-left{
    text-align: center;
}
#mob-menu ul{
    padding: 0;
    margin: 0;
        text-align: center;
}
#mob-menu ul li{
    list-style: none;
}
/********Dropdown***********/
/* ---------- Areas We Serve dropdown (desktop) ---------- */
.nav-links li.has-dropdown{ position:relative; display:flex; align-items:center; gap:4px; }
.has-dropdown .dropdown-toggle{
  background:none; border:none; cursor:pointer; padding:4px;
  color:var(--gold); display:flex; align-items:center;
}
.has-dropdown .dropdown-toggle svg{ transition:transform .35s ease; }
.has-dropdown.is-open .dropdown-toggle svg{ transform:rotate(180deg); }

.has-dropdown .dropdown{
  list-style:none; margin:0; padding:12px 0;
  position:absolute; top:calc(100% + 20px); left:50%;
  transform:translateX(-50%) translateY(-8px);
  min-width:200px;
  background:var(--black);
  border:1px solid rgba(212,175,55,.3);
  border-radius:2px;
  box-shadow:0 24px 50px -20px rgba(0,0,0,.8);
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .3s ease, transform .3s ease, visibility 0s linear .3s;
  z-index:950;
}
.has-dropdown:hover .dropdown,
.has-dropdown.is-open .dropdown{
  opacity:1; visibility:visible; pointer-events:auto;
  transform:translateX(-50%) translateY(0);
  transition:opacity .3s ease, transform .3s ease;
}
.has-dropdown .dropdown li{ list-style:none; }
.has-dropdown .dropdown a{
  display:block; padding:9px 22px; font-size:13px; color:#e5d9b6; white-space:nowrap;
}
.has-dropdown .dropdown a:hover{ color:var(--gold); background:rgba(212,175,55,.08); }

/* ---------- Areas We Serve dropdown (mobile) ---------- */
#mob-menu li.mob-has-dropdown{ width:100%; }
.mob-drop-row{ display:flex; align-items:center; justify-content:center; gap:8px; }
.mob-dropdown-toggle{
  background:none; border:none; cursor:pointer; color:var(--gold); padding:4px; display:flex; align-items:center;
}
.mob-dropdown-toggle svg{ transition:transform .35s ease; }
.mob-has-dropdown.is-open .mob-dropdown-toggle svg{ transform:rotate(180deg); }
.mob-dropdown{
  list-style:none; margin:0; padding:0; max-height:0; overflow:hidden;
  transition:max-height .4s ease;
}
.mob-has-dropdown.is-open .mob-dropdown{ max-height:300px; padding-top:15px; padding-bottom: 15px; }
.mob-dropdown li{ list-style:none; }
.mob-dropdown a{ display:block; padding:8px 0; font-size:14px; text-align:center; }
.mob-has-dropdown .mob-dropdown{
    position: absolute;
    background: #fff;
    padding: 0px 35px;
}
#mob-menu .has-dropdown .dropdown{
  width: 100%;
    max-width: 100%;
    transform: unset;
    height: unset;
    min-height: unset;
    position: static;
    /* display: none; */
    visibility: inherit;
    min-width: 100%;
    background: transparent;
    box-shadow: none;
    border: none;
}
#mob-menu .has-dropdown.is-open .dropdown{
    display: block;
}
#mob-menu .has-dropdown .dropdown{
    display: none;
}
#mob-menu ul li.has-dropdown a{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
#navbar ul.nav-links .mob-drop-row {
    gap: 0;
}
#navbar ul.nav-links li.mob-has-dropdown a{
    padding-right: 0;
}
#OccasioninFlorence{
    background: var(--off-white);
}
#OccasioninFlorence .serve-intro {
    align-items: self-start;
    margin-bottom: 0;
}
section.ptb-0{
    padding-top: 0;
    padding-bottom: 0;
}
/*****************************/
.menu-item-has-children .sub-menu {
    display: none;
	position: absolute;
    background: #fff;
    padding: 12px 15px;
    list-style: none;
}
.menu-item-has-children > .sub-menu {
    display: block;
}
.menu-item-has-children{
    position: relative;
}
.menu-item-has-children > .sub-menu {
    position: absolute;
    top: calc(100% + 0px);
    left: 0;
    min-width: 220px;
    background: #fff;
    border-radius: 0px;
    box-shadow: 0 15px 40px rgba(0,0,0,.12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px) scale(.98);
    transition:
        opacity .35s ease,
        transform .35s cubic-bezier(.22,1,.36,1),
        visibility .35s;
    pointer-events: none;
}
.menu-item-has-children:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}
.menu-item-has-children > a {
    display: flex;
    align-items: center;
    gap: 8px;
}
.menu-item-has-children > a::after {
    content: "";
    width: 7px;
    height: 7px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
}
/* Rotate when hovered */
.menu-item-has-children:hover > a::after {
    transform: rotate(225deg);
}
.nav-links .menu-item-has-children a .link-hover{
	padding-right:15px;
}
#mob-menu .menu-item-has-children {
    position: relative;
}

#mob-menu .menu-item-has-children > .sub-menu {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    min-width: 240px;
    padding: 12px 0;
        background: transparent;
    border-radius: 0px;
    box-shadow: none;
    opacity: 0;
    visibility: auto;
    transform: translateY(12px) scale(.98);
    transition: all .35s cubic-bezier(.175,.885,.32,1.1);
    pointer-events: none;
	width: 100%;
    padding: 15px;
}
#mob-menu .menu-item-has-children.active > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    pointer-events: auto;
	position: relative;
}

#mob-menu .menu-item-has-children:active > a::after {
    transform: rotate(225deg) !important;
}

.btnwrap{
	display:flex;
	justify-content:center;
}

.price-bitton{
	margin-bottom:40px;
}

.error404 header{
	display:none;
}

.error404 footer{
	display:none;
}
/********06.08.2026**********/
.bg-white{
	background:#fff;
}
.service-main-page{
       background: var(--cream) !important;
}
.p-tb-10{
	padding:10px 0;
}
.pt-10{padding-top:10px;} 
.pb-20{padding-bottom:20px;}
.mt-30{margin-top:30px;}
.WhyBusinessesChoose{
	gap: 30px;
    display: grid;
    margin-top: 50px;
    grid-template-columns: repeat(5, 1fr);
}
.borderTop{
	border-top:1px solid #ddd;
}

.accordion {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    margin-top: 50px;
}

.accordion-item {
  border-bottom: 1px solid #ddd;
}

.accordion-header {
  width: 100%;
  padding: 20px 0;
  background: none;
  border: 0;
  outline: none;
  cursor: pointer;

  display: flex;
  align-items: center;
  justify-content: space-between;

  font-size: 20px;
  font-weight: 600;
  text-align: left;
  color: #222;
}

.accordion-icon {
  font-size: 28px;
  font-weight: 300;
  transition: transform 0.3s ease;
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}

.accordion-content p {
  margin: 0;
  padding: 0 0 20px;
  font-size: 16px;
  line-height: 1.7;
  color: #666;
}

/* Active */
.accordion-item.active .accordion-icon {
  transform: rotate(45deg);
}
.pt-50{
	padding-top:50px;
}
.blogpage .gallery-label{
	text-transform:inherit;
	letter-spacing: 0;
	font-weight:normal;
}
.blogpage .gallery-label h3{
	margin-bottom: 8px;
    font-size: 18px;
}
.blogpage .gallery-label p{
    font-size: 15px;
}
#blog-details{
	background:#fff;
}
.blog-details-page .dFlx{
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	gap:50px;
}
.blog-details-page .dFlx .blog-D-Left{
	width: 70%;
}
.blog-details-page .dFlx .blog-D-Right{
	width: 30%;
	position: sticky;
}
.blog-form-heading{
	font-family: var(--serif);
    font-size: 26px;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 16px;
}
.wid-content{
	margin-top:30px;
}
.wid-content h2{
	font-family: var(--serif);
    font-size: 35px;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 16px;
}
.wid-content h3{
	font-family: var(--serif);
    font-size: 28px;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 16px;
}
.wid-content p{
	font-size: 14px;
    color: var(--gray);
    line-height: 1.8;
    margin-bottom: 36px;
}
.wid-content p:last-child{
	margin-bottom:0;
}
.wid-content h4{
	font-family: var(--serif);
    font-size: 25px;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 16px;
}
.wid-content h5{
	font-family: var(--serif);
    font-size: 18px;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 16px;
}
.RecentPost{
	border:1px solid #ddd;
	padding:15px;
}
.widget-title{
	font-family: var(--serif);
    font-size: 26px;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 16px;
}
.media{
	display: flex;
    border-bottom: 1px solid #ddd;
    margin-bottom: 25px;
    padding-bottom: 15px;
}
.media:last-child{
	padding-bottom:0;
	margin-bottom:0;
	border:none;
}
.media .media-left {
    margin-right: 11px;
    position: relative;
    flex: none;
    width: 35%;
}
.media .media-body {
    width: 65%;
}
.media .media-left img{
	width:100%;
}
.media .title{
	font-family: var(--serif);
    font-size: 18px;
    font-weight: 600;
    color: var(--black);
    margin-bottom: 0;
}
.media .title a{
	color:#000;
	text-decoration:none;
}
.post-info{
    font-size: 14px;
    color: var(--gray);
    line-height: 1.8;
}
.Catagory{
	border: 1px solid #ddd;
    padding: 15px;
	margin-top:50px;
}
.Catagory ul{
	padding:0;
	margin:0;
}
.Catagory ul li{
	list-style:none;
	font-size: 14px;
    color: var(--gray);
    line-height: 1.8;
    margin-bottom: 10px;
}
.Catagory ul li:last-child{
	margin-bottom:0;
}
.Catagory ul li a{
	color: var(--gray);
	text-decoration:none;
}
.table-of-content{
	border: 1px solid #ddd;
    padding: 15px;
	margin-bottom:50px;
}
.table-of-content ul{
	padding:0;
	margin:0;
	padding-left:20px;
}
.table-of-content ul li{
    list-style: auto;
    padding-bottom: 15px;
    font-size: 16px;
    color: #000;
    line-height: 1.8;
    text-decoration: none;
	font-family: var(--serif);
}
.table-of-content ul li a{
    color: #000;
    text-decoration: none;
}
.blogpage .dFlx{
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
	justify-content: space-between;
}
.blog-grid{flex: 1 1 calc(33% - 20px);}
.blog-grid img{
    width: 100%;
}
.blog-grid .blog-content{
    box-shadow: 0px 5px 9px #00000021;
    padding: 15px;
}
.blog-grid .blog-content .date{
	    font-size: 13px;
	    color: var(--gray);
	    line-height: 1.8;
	    margin-bottom: 2px;
	    margin-top: 5px;
}
.blog-grid .blog-content h3{
	    font-family: var(--serif);
	    font-size: 18px;
	    font-weight: 600;
	    color: var(--black);
	    margin-bottom: 8px;
}
.blog-grid .blog-content p{
	    font-size: 14px;
	    color: var(--gray);
	    line-height: 1.8;
	    margin-bottom: 15px;
}
.blog-grid .blog-content .readmore-btn{display: block;font-size: 12px;font-weight: 700;letter-spacing: 1px;text-transform: uppercase;color: var(--gold);text-decoration: none;}
.F-Img{
	margin-bottom:30px;
}
.F-Img img{
	width:100%;
}
.blog-form{
	background:#fff;
	padding:0;
}
.blog-form .form-row {
    grid-template-columns: 4fr 4fr;
    gap: 16px;
    flex: 1 1 calc(33% - 20px);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}
.blog-form .cform{
	margin-top: -91px;
    z-index: 100;
    position: relative;
	padding: 15px 30px;
}

/* Pagination */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 40px 0 0 0;
}

.pagination a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid #ddd;
    border-radius: 6px;
    color: #333;
    background: #fff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    transition: all 0.3s ease;
}

.pagination a:hover,
.pagination a.active {
    background: var(--gold);
    color: #fff;
    border-color: var(--gold);
}

.pagination .prev,
.pagination .next {
    font-size: 22px;
}

@media (min-width: 992px) {

    .blog-D-Right {
        position: -webkit-sticky !important;
        position: sticky !important;
        top: 30px !important;
        align-self: flex-start !important;
        height: auto !important;
        max-height: calc(100vh - 60px);
        overflow-y: auto;
    }

}


/* Mobile */
@media (max-width: 575px) {
    .pagination {
        gap: 5px;
    }

    .pagination a {
        width: 36px;
        height: 36px;
        font-size: 14px;
    }

    .pagination .prev,
    .pagination .next {
        font-size: 18px;
    }
}








@media (max-width: 767px) {
  .accordion-header {
    font-size: 17px;
    padding: 16px 0;
  }

  .accordion-content p {
    font-size: 15px;
  }
	.blog-details-page .dFlx{
		flex-wrap: wrap;
        justify-content: space-between;
	}
	.blog-details-page .dFlx .blog-D-Left {
    width: 100%;
}
	.blog-details-page .dFlx .blog-D-Right {
    width: 100%;
}
	.blog-grid {
    flex: 1 1 calc(100% - 20px);
}
	.blog-form .form-row {
    gap: 0;
    grid-template-columns: repeat(1, 1fr);
}
}






@media(max-width:1100px){
	.WhyBusinessesChoose {
   gap: 30px;
    display: grid;
    margin-top: 50px;
    grid-template-columns: repeat(2, 1fr);
}
}
@media(max-width:991px){
	.WhyBusinessesChoose {
    gap: 30px;
    display: grid;
    grid-template-columns: 1fr;
}
}