*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
    @font-face { font-display: swap; }
    :root {
      --g0:#050f07; --g1:#081409; --g2:#0d2410; --g3:#164a22; --g4:#1e6b30;
      --gold:#c8a84b; --gold2:#e8d48a; --cream:#f4efe6; --muted:rgba(244,239,230,0.6);
    }
    html { scroll-behavior:smooth; }
    body { background:var(--g0); color:var(--cream); font-family:'Outfit',sans-serif; overflow-x:hidden; cursor:none; }
    ::-webkit-scrollbar { width:4px; }
    ::-webkit-scrollbar-track { background:var(--g0); }
    ::-webkit-scrollbar-thumb { background:var(--gold); border-radius:4px; }

    /* CURSOR */
    #cur  { position:fixed; width:10px; height:10px; background:var(--gold); border-radius:50%; pointer-events:none; z-index:9999; transform:translate(-50%,-50%); transition:width .2s,height .2s; }
    #cur2 { position:fixed; width:34px; height:34px; border:1.5px solid rgba(200,168,75,.5); border-radius:50%; pointer-events:none; z-index:9998; transform:translate(-50%,-50%); transition:all .12s; }

    /* LOADER */
    #loader { position:fixed; inset:0; background:radial-gradient(circle at center,#0a1a0e,var(--g0)); z-index:8000; display:flex; flex-direction:column; align-items:center; justify-content:center; transition:opacity .7s ease, visibility .7s ease; }
    #loader.hidden { opacity:0; visibility:hidden; }
    .ld-logo-wrap { position:relative; width:100px; height:100px; display:flex; align-items:center; justify-content:center; }
    .ld-logo-wrap::before { content:''; position:absolute; inset:0; border-radius:50%; background:radial-gradient(circle, rgba(200,168,75,.12), transparent 55%); filter:blur(3px); }
    .ld-tooth { width:72px; max-height:72px; object-fit:contain; z-index:1; animation:pls 1.2s infinite; }
    @keyframes pls { 0%,100%{transform:scale(1)} 50%{transform:scale(1.04)} }
    .ld-text { font-family:'Cormorant Garamond',serif; letter-spacing:.5em; color:var(--gold); margin-top:28px; font-size:1.1rem; }
    .ld-prog { width:200px; height:1px; background:var(--g2); margin-top:24px; overflow:hidden; }
    .ld-fill { width:0; height:100%; background:var(--gold); animation:fillBar 2.4s ease forwards; }
    @keyframes fillBar { to{width:100%} }

    #site { opacity:0; transition:opacity .6s ease; }
    #site.on { opacity:1; }

    /* PAGES — pure opacity fade, no curtain, no blackout */
    .page {
      position:fixed; inset:0; overflow-y:auto; overflow-x:hidden;
      background:var(--g0);
      visibility:hidden; pointer-events:none;
      opacity:0; transform:translateY(12px);
      transition:opacity .35s ease, transform .35s ease;
      z-index:10;
    }
    .page.active {
      visibility:visible; pointer-events:auto;
      opacity:1; transform:translateY(0);
      z-index:20;
    }

    /* NAV */
    nav { position:fixed; top:0; left:0; right:0; z-index:500; padding:22px 6%; display:flex; align-items:center; justify-content:space-between; background:linear-gradient(to bottom,rgba(5,15,7,.96),transparent); backdrop-filter:blur(6px); transition:all .3s ease; }
    nav.sld { padding:12px 6%; background:rgba(5,15,7,.98); border-bottom:1px solid rgba(200,168,75,.15); }
    .logo { display:flex; align-items:center; gap:12px; cursor:pointer; }
    .logo-ico { width:46px; height:46px; border-radius:50%; object-fit:cover; box-shadow:0 0 22px rgba(200,168,75,.4); animation:glow 3s ease-in-out infinite; }
    .logo-img { width:46px; height:46px; object-fit:contain; }
    @keyframes glow { 0%,100%{box-shadow:0 0 22px rgba(200,168,75,.35)} 50%{box-shadow:0 0 40px rgba(200,168,75,.65)} }
    .logo-txt { font-family:'Cormorant Garamond',serif; font-size:1.15rem; font-weight:600; line-height:1.2; }
    .logo-txt span { display:block; font-size:.6rem; letter-spacing:.22em; color:var(--gold); font-weight:300; }
    .nav-links { display:flex; gap:.4rem; list-style:none; align-items:center; }
    .nav-links a { padding:8px 16px; font-size:.7rem; letter-spacing:.15em; text-transform:uppercase; color:rgba(244,239,230,.7); text-decoration:none; cursor:pointer; transition:color .3s; position:relative; }
    .nav-links a::after { content:''; position:absolute; bottom:2px; left:16px; right:16px; height:1px; background:var(--gold); transform:scaleX(0); transition:transform .3s; }
    .nav-links a:hover::after, .nav-links a.al::after { transform:scaleX(1); }
    .nav-links a:hover, .nav-links a.al { color:var(--gold); }
    .nav-book { background:linear-gradient(135deg,var(--gold),var(--gold2)); color:var(--g0)!important; padding:9px 24px!important; border-radius:30px; font-weight:500!important; }
    .nav-book::after { display:none!important; }
    .nav-book:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(200,168,75,.4); }
    .hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:6px; }
    .hamburger div { width:24px; height:2px; background:var(--cream); transition:.3s; }

    /* MOBILE MENU */
    .mm { position:fixed; inset:0; background:rgba(5,15,7,.98); z-index:600; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:26px; transform:translateX(100%); transition:transform .4s cubic-bezier(.77,0,.18,1); }
    .mm.open { transform:translateX(0); }
    .mm a { font-family:'Cormorant Garamond',serif; font-size:2.2rem; color:var(--cream); text-decoration:none; cursor:pointer; transition:color .3s; }
    .mm a:hover { color:var(--gold); }
    .mm-x { position:absolute; top:28px; right:28px; font-size:2rem; background:none; border:none; color:var(--gold); cursor:pointer; }

    /* FLOAT */
    .fcta { position:fixed; bottom:28px; right:28px; z-index:600; display:flex; flex-direction:column; gap:10px; align-items:flex-end; }
    .fb { display:flex; align-items:center; gap:10px; background:linear-gradient(135deg,var(--gold),var(--gold2)); color:var(--g0); padding:12px 22px; border-radius:40px; font-weight:600; font-size:.78rem; text-decoration:none; box-shadow:0 8px 24px rgba(0,0,0,.3); transition:transform .2s,box-shadow .2s; white-space:nowrap; }
    .fb.wa { background:linear-gradient(135deg,#25d366,#128c7e); color:#fff; }
    .fb:hover { transform:translateY(-3px); box-shadow:0 14px 32px rgba(0,0,0,.4); }

    /* SHARED */
    .sec { padding:100px 6%; }
    .sec-tag { font-size:.65rem; letter-spacing:.32em; color:var(--gold); text-transform:uppercase; margin-bottom:18px; display:flex; align-items:center; gap:12px; }
    .sec-tag::before { content:''; width:26px; height:1px; background:var(--gold); }
    .sec-h { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,4vw,3.5rem); font-weight:300; line-height:1.1; }
    .sec-h em { color:var(--gold); font-style:italic; }
    .sec-sub { margin-top:14px; font-size:.9rem; line-height:1.8; color:var(--muted); max-width:520px; }
    .rv { opacity:0; transform:translateY(28px); transition:opacity .75s ease, transform .75s ease; }
    .rv.vis { opacity:1; transform:translateY(0); }
    .d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}

    .btn-g { display:inline-block; padding:14px 32px; font-size:.74rem; letter-spacing:.18em; text-transform:uppercase; text-decoration:none; cursor:pointer; border-radius:2px; font-family:'Outfit',sans-serif; background:linear-gradient(135deg,var(--gold),var(--gold2)); color:var(--g0); font-weight:600; border:none; position:relative; overflow:hidden; transition:transform .3s,box-shadow .3s; }
    .btn-g::before { content:''; position:absolute; inset:0; background:rgba(255,255,255,.18); transform:translateX(-100%) skewX(-15deg); transition:transform .45s; }
    .btn-g:hover::before { transform:translateX(200%) skewX(-15deg); }
    .btn-g:hover { transform:translateY(-3px); box-shadow:0 12px 32px rgba(200,168,75,.4); }
    .btn-o { display:inline-block; padding:14px 32px; font-size:.74rem; letter-spacing:.18em; text-transform:uppercase; text-decoration:none; cursor:pointer; border-radius:2px; font-family:'Outfit',sans-serif; border:1px solid rgba(200,168,75,.45); color:var(--gold); background:transparent; transition:all .3s; }
    .btn-o:hover { background:rgba(200,168,75,.07); transform:translateY(-3px); }

    /* HERO */
    .hero-wrap { min-height:100vh; display:flex; align-items:center; padding:0 6%; background:radial-gradient(ellipse at 65% 48%,rgba(26,107,48,.28) 0%,transparent 62%); position:relative; overflow:hidden; }
    .hero-pts { position:absolute; inset:0; pointer-events:none; }
    .pt { position:absolute; width:2px; height:2px; background:var(--gold); border-radius:50%; animation:ptf linear infinite; opacity:0; }
    @keyframes ptf { 0%{transform:translateY(100vh);opacity:0} 10%{opacity:.7} 90%{opacity:.2} 100%{transform:translateY(-30px);opacity:0} }
    .hero-tooth { position:absolute; right:4%; top:50%; transform:translateY(-50%); width:42vw; max-width:560px; opacity:.05; animation:tth 7s ease-in-out infinite; pointer-events:none; }
    @keyframes tth { 0%,100%{transform:translateY(-50%) rotate(-3deg)} 50%{transform:translateY(-52%) rotate(3deg)} }
    .hero-c { max-width:660px; z-index:2; }
    .hero-tag { display:inline-flex; align-items:center; gap:10px; border:1px solid rgba(200,168,75,.38); padding:7px 20px; border-radius:40px; font-size:.68rem; letter-spacing:.22em; color:var(--gold); margin-bottom:28px; background:rgba(200,168,75,.05); animation:fUp 1s .2s both; }
    .blink { width:6px; height:6px; background:var(--gold); border-radius:50%; animation:bl 2s infinite; }
    @keyframes bl { 0%,100%{opacity:1} 50%{opacity:.2} }
    .hero-h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.8rem,6vw,5.8rem); font-weight:300; line-height:1.05; animation:fUp 1s .4s both; }
    .hero-h1 em { color:var(--gold); font-style:italic; }
    .hero-p { margin-top:18px; font-size:.95rem; color:var(--muted); max-width:470px; line-height:1.75; animation:fUp 1s .6s both; }
    .hero-btns { margin-top:32px; display:flex; gap:16px; flex-wrap:wrap; animation:fUp 1s .8s both; }
    .hero-stats { display:flex; gap:46px; margin-top:58px; animation:fUp 1s 1s both; }
    .stat-n { font-family:'Cormorant Garamond',serif; font-size:2.5rem; color:var(--gold); line-height:1; }
    .stat-l { font-size:.66rem; letter-spacing:.18em; text-transform:uppercase; color:var(--muted); margin-top:4px; }
    @keyframes fUp { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }

    /* MARQUEE */
    .mq { background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold)); padding:18px 0; overflow:hidden; }
    .mq-track { display:flex; animation:mqa 26s linear infinite; white-space:nowrap; }
    .mq-item { display:inline-flex; align-items:center; gap:16px; padding:0 32px; font-size:.7rem; font-weight:500; letter-spacing:.18em; text-transform:uppercase; color:var(--g0); }
    .mq-dot { width:4px; height:4px; background:var(--g2); border-radius:50%; }
    @keyframes mqa { from{transform:translateX(0)} to{transform:translateX(-50%)} }

    /* CARDS */
    .svc-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(270px,1fr)); gap:22px; margin-top:48px; }
    .svc-card { background:rgba(255,255,255,.02); border:1px solid rgba(200,168,75,.1); border-radius:8px; padding:34px 28px; transition:transform .35s,border-color .35s,box-shadow .35s; position:relative; overflow:hidden; }
    .svc-card::after { content:''; position:absolute; left:0; bottom:0; right:0; height:2px; background:linear-gradient(90deg,var(--gold),var(--gold2)); transform:scaleX(0); transform-origin:left; transition:transform .35s; }
    .svc-card:hover { transform:translateY(-7px); border-color:rgba(200,168,75,.3); box-shadow:0 24px 50px rgba(0,0,0,.4); }
    .svc-card:hover::after { transform:scaleX(1); }
    .svc-ico { font-size:2rem; margin-bottom:18px; display:block; }
    .svc-name { font-family:'Cormorant Garamond',serif; font-size:1.35rem; font-weight:600; margin-bottom:10px; }
    .svc-desc { font-size:.84rem; line-height:1.7; color:var(--muted); }

    /* FEATS */
    .feats { display:flex; flex-direction:column; gap:16px; margin-top:34px; }
    .feat { display:flex; gap:18px; align-items:flex-start; padding:20px 22px; border:1px solid rgba(200,168,75,.08); border-radius:8px; transition:border-color .3s,background .3s; }
    .feat:hover { border-color:rgba(200,168,75,.25); background:rgba(200,168,75,.03); }
    .feat-n { font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:700; color:rgba(200,168,75,.22); line-height:1; flex-shrink:0; }
    .feat-ttl { font-size:.9rem; font-weight:500; margin-bottom:5px; }
    .feat-d { font-size:.82rem; line-height:1.7; color:var(--muted); }

    /* ABOUT */
    .about-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; margin-top:50px; }
    .ab-vis { position:relative; aspect-ratio:4/5; }
    .ab-main { position:absolute; top:0; right:0; width:80%; height:73%; background:linear-gradient(135deg,var(--g2),var(--g3)); border-radius:8px; display:flex; align-items:center; justify-content:center; box-shadow:0 36px 72px rgba(0,0,0,.4); }
    .ab-acc { position:absolute; bottom:0; left:0; width:52%; height:44%; background:linear-gradient(135deg,var(--gold),var(--gold2)); border-radius:8px; display:flex; align-items:center; justify-content:center; }
    .ab-acc-txt { font-family:'Cormorant Garamond',serif; font-size:.95rem; font-weight:700; color:var(--g0); text-align:center; padding:16px; line-height:1.3; }

    /* TEAM */
    .team-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:22px; margin-top:48px; }
    .tm-card { border:1px solid rgba(200,168,75,.1); border-radius:8px; overflow:hidden; transition:transform .35s,box-shadow .35s; }
    .tm-card:hover { transform:translateY(-7px); box-shadow:0 24px 50px rgba(0,0,0,.4); }
    .tm-img { height:240px; background:linear-gradient(135deg,var(--g2),var(--g4)); display:flex; align-items:center; justify-content:center; font-size:4.5rem; position:relative; }
    .tm-img::after { content:''; position:absolute; inset:0; background:linear-gradient(to top,rgba(5,15,7,.65),transparent); }
    .tm-body { padding:24px 26px; }
    .tm-name { font-family:'Cormorant Garamond',serif; font-size:1.25rem; font-weight:600; }
    .tm-role { font-size:.68rem; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); margin-top:4px; }
    .tm-bio { font-size:.82rem; line-height:1.7; color:var(--muted); margin-top:10px; }

    /* TECH */
    .tech-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:16px; margin-top:48px; }
    .tc { padding:28px 20px; text-align:center; border:1px solid rgba(200,168,75,.08); border-radius:8px; transition:all .35s; }
    .tc:hover { border-color:rgba(200,168,75,.3); background:rgba(200,168,75,.04); transform:translateY(-5px); }
    .tc-ico { font-size:2.2rem; margin-bottom:14px; display:block; }
    .tc-n { font-size:.85rem; font-weight:500; margin-bottom:7px; }
    .tc-d { font-size:.75rem; color:var(--muted); line-height:1.6; }

    /* TESTIMONIALS */
    .tes-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(290px,1fr)); gap:22px; margin-top:48px; }
    .tes-card { background:rgba(255,255,255,.02); border:1px solid rgba(200,168,75,.1); border-radius:8px; padding:34px 28px; transition:transform .3s,border-color .3s; }
    .tes-card:hover { transform:translateY(-6px); border-color:rgba(200,168,75,.28); }
    .tes-q { font-family:'Cormorant Garamond',serif; font-size:3.8rem; color:var(--gold); line-height:.4; margin-bottom:20px; opacity:.35; }
    .tes-stars { color:var(--gold); font-size:.72rem; letter-spacing:2px; margin-bottom:12px; }
    .tes-txt { font-size:.87rem; line-height:1.8; color:rgba(244,239,230,.72); font-style:italic; }
    .tes-auth { margin-top:24px; display:flex; align-items:center; gap:12px; }
    .tes-av { width:42px; height:42px; border-radius:50%; flex-shrink:0; background:linear-gradient(135deg,var(--gold),var(--gold2)); display:flex; align-items:center; justify-content:center; font-size:17px; }
    .tes-name { font-size:.87rem; font-weight:500; }
    .tes-loc { font-size:.67rem; color:var(--muted); }
    .rating-badge { display:inline-flex; align-items:center; gap:16px; margin-top:22px; padding:14px 26px; background:rgba(200,168,75,.07); border:1px solid rgba(200,168,75,.18); border-radius:40px; }
    .rb-score { font-family:'Cormorant Garamond',serif; font-size:1.55rem; color:var(--gold); line-height:1; }
    .rb-lbl { font-size:.65rem; letter-spacing:.16em; color:var(--muted); text-transform:uppercase; }
    .rb-div { width:1px; height:34px; background:rgba(200,168,75,.2); }
    .rb-stars { color:var(--gold); font-size:.88rem; letter-spacing:2px; }
    .rb-link { font-size:.68rem; color:var(--muted); text-decoration:none; }
    .rb-link:hover { color:var(--gold); }

    /* PROCESS */
    .proc-wrap { position:relative; margin-top:60px; }
    .proc-line { position:absolute; left:38px; top:40px; bottom:40px; width:1px; background:linear-gradient(to bottom,var(--gold),transparent); opacity:.2; }
    .proc-step { display:flex; gap:36px; align-items:flex-start; padding:32px 0; border-bottom:1px solid rgba(200,168,75,.06); }
    .proc-num { width:74px; height:74px; border-radius:50%; flex-shrink:0; border:1.5px solid rgba(200,168,75,.3); display:flex; align-items:center; justify-content:center; font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:600; color:var(--gold); background:var(--g1); position:relative; z-index:1; transition:background .3s,box-shadow .3s; }
    .proc-step:hover .proc-num { background:rgba(200,168,75,.1); box-shadow:0 0 26px rgba(200,168,75,.2); }
    .proc-ttl { font-family:'Cormorant Garamond',serif; font-size:1.45rem; font-weight:600; margin-bottom:8px; }
    .proc-d { font-size:.86rem; line-height:1.75; color:var(--muted); max-width:480px; }

    /* CONTACT */
    .ch { min-height:40vh; display:flex; align-items:center; flex-direction:column; justify-content:center; padding:140px 6% 50px; text-align:center; background:radial-gradient(ellipse at 50% 60%,rgba(26,107,48,.22),transparent 60%); }
    .cg { display:grid; grid-template-columns:1fr 1.2fr; gap:56px; padding:0 6% 90px; align-items:start; }
    .ci-blk { display:flex; align-items:flex-start; gap:16px; padding:22px; border:1px solid rgba(200,168,75,.1); border-radius:8px; transition:border-color .3s; margin-bottom:14px; }
    .ci-blk:hover { border-color:rgba(200,168,75,.28); }
    .ci-ico { width:44px; height:44px; border-radius:50%; flex-shrink:0; background:rgba(200,168,75,.1); border:1px solid rgba(200,168,75,.2); display:flex; align-items:center; justify-content:center; font-size:18px; }
    .ci-lbl { font-size:.64rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); margin-bottom:5px; }
    .ci-val { font-size:.88rem; line-height:1.6; }
    .ci-val a { color:var(--cream); text-decoration:none; transition:color .3s; }
    .ci-val a:hover { color:var(--gold); }
    .hrs-box { padding:26px; background:linear-gradient(135deg,rgba(200,168,75,.07),rgba(200,168,75,.02)); border:1px solid rgba(200,168,75,.12); border-radius:8px; margin-top:18px; }
    .hrs-title { font-family:'Cormorant Garamond',serif; font-size:1.2rem; margin-bottom:16px; }
    .hrs-row { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid rgba(200,168,75,.07); font-size:.83rem; }
    .hrs-day { color:var(--muted); } .hrs-time { color:var(--cream); }
    .map-frame { border:1px solid rgba(200,168,75,.18); border-radius:8px; overflow:hidden; margin-top:20px; }
    .map-frame iframe { display:block; width:100%; filter:invert(.9) hue-rotate(140deg) saturate(.65) brightness(.82); }
    .map-lnk { display:flex; align-items:center; justify-content:center; gap:8px; padding:13px; background:rgba(200,168,75,.06); border-top:1px solid rgba(200,168,75,.12); font-size:.72rem; color:var(--gold); text-decoration:none; letter-spacing:.1em; transition:background .3s; }
    .map-lnk:hover { background:rgba(200,168,75,.13); }

    /* BOOKING PANEL */
    .bp { background:rgba(255,255,255,.02); border:1px solid rgba(200,168,75,.15); border-radius:12px; overflow:hidden; }
    .bp-hdr { background:linear-gradient(135deg,var(--g2),var(--g3)); padding:28px 32px; }
    .bp-ttl { font-family:'Cormorant Garamond',serif; font-size:1.85rem; margin-bottom:8px; }
    .bp-sub { font-size:.82rem; color:var(--muted); line-height:1.6; }
    .bp-body { padding:32px; }
    .step-ind { display:flex; margin-bottom:36px; position:relative; }
    .step-ind::before { content:''; position:absolute; top:19px; left:0; right:0; height:1px; background:rgba(200,168,75,.15); z-index:0; }
    .stp { flex:1; text-align:center; position:relative; z-index:1; }
    .stp-dot { width:38px; height:38px; border-radius:50%; border:1.5px solid rgba(200,168,75,.3); background:var(--g0); display:flex; align-items:center; justify-content:center; margin:0 auto 8px; font-size:.74rem; color:var(--muted); transition:all .4s; }
    .stp.active .stp-dot { border-color:var(--gold); background:rgba(200,168,75,.12); color:var(--gold); box-shadow:0 0 18px rgba(200,168,75,.28); }
    .stp.done .stp-dot { background:var(--gold); border-color:var(--gold); color:var(--g0); font-weight:700; }
    .stp-lbl { font-size:.6rem; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
    .stp.active .stp-lbl, .stp.done .stp-lbl { color:var(--gold); }
    .bstep { display:none; animation:fUp .3s ease; }
    .bstep.show { display:block; }
    .sp-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
    .sp { background:transparent; border:1px solid rgba(200,168,75,.18); padding:12px 14px; border-radius:6px; color:var(--cream); cursor:pointer; text-align:left; font-size:.8rem; display:flex; align-items:center; gap:8px; transition:all .25s; font-family:'Outfit',sans-serif; }
    .sp:hover, .sp.sel { border-color:rgba(200,168,75,.55); background:rgba(200,168,75,.1); color:var(--gold); }
    .call-card { background:linear-gradient(135deg,rgba(200,168,75,.09),rgba(200,168,75,.03)); border:1px solid rgba(200,168,75,.18); border-radius:8px; padding:32px 24px; text-align:center; margin-bottom:20px; }
    .call-ring { width:84px; height:84px; border-radius:50%; background:linear-gradient(135deg,var(--gold),var(--gold2)); display:flex; align-items:center; justify-content:center; font-size:2.2rem; margin:0 auto 20px; animation:ringP 1.8s ease-in-out infinite; cursor:pointer; text-decoration:none; }
    @keyframes ringP { 0%{box-shadow:0 0 0 0 rgba(200,168,75,.45)} 70%{box-shadow:0 0 0 22px rgba(200,168,75,0)} 100%{box-shadow:0 0 0 0 rgba(200,168,75,0)} }
    .call-num { font-family:'Cormorant Garamond',serif; font-size:2rem; color:var(--gold); margin-bottom:8px; }
    .call-sub-txt { font-size:.8rem; color:var(--muted); line-height:1.65; margin-bottom:22px; }
    .cbtn-call { display:flex; align-items:center; justify-content:center; gap:10px; background:linear-gradient(135deg,var(--gold),var(--gold2)); color:var(--g0); padding:15px; border-radius:40px; text-decoration:none; font-weight:600; font-size:.8rem; letter-spacing:.1em; transition:transform .2s,box-shadow .2s; margin-bottom:10px; box-shadow:0 8px 24px rgba(200,168,75,.3); }
    .cbtn-call:hover { transform:translateY(-2px); box-shadow:0 14px 36px rgba(200,168,75,.5); }
    .cbtn-wa { display:flex; align-items:center; justify-content:center; gap:10px; background:#25d366; color:#fff; padding:14px; border-radius:40px; text-decoration:none; font-weight:600; font-size:.8rem; letter-spacing:.1em; transition:transform .2s; }
    .cbtn-wa:hover { transform:translateY(-2px); }
    .or-sep { display:flex; align-items:center; gap:14px; margin:12px 0; font-size:.68rem; letter-spacing:.15em; text-transform:uppercase; color:var(--muted); }
    .or-sep::before,.or-sep::after { content:''; flex:1; height:1px; background:rgba(200,168,75,.15); }
    .chips { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
    .chip { padding:7px 14px; border:1px solid rgba(200,168,75,.18); border-radius:20px; font-size:.7rem; color:var(--muted); }
    .chip span { color:var(--gold); }
    .nav-btns { display:flex; gap:10px; margin-top:24px; }
    .nbtn { flex:1; padding:12px; border-radius:30px; font-size:.75rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; transition:all .25s; font-family:'Outfit',sans-serif; }
    .nbtn-o { border:1px solid rgba(200,168,75,.3); background:transparent; color:var(--gold); }
    .nbtn-o:hover { background:rgba(200,168,75,.08); }
    .nbtn-f { background:linear-gradient(135deg,var(--gold),var(--gold2)); color:var(--g0); border:none; }
    .nbtn-f:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(200,168,75,.4); }
    .conf-ico { width:78px; height:78px; border-radius:50%; background:linear-gradient(135deg,var(--g3),var(--g4)); display:flex; align-items:center; justify-content:center; font-size:2.4rem; margin:0 auto 20px; border:2px solid rgba(200,168,75,.3); animation:popIn .5s cubic-bezier(.18,.89,.32,1.28); }
    @keyframes popIn { from{transform:scale(0)} to{transform:scale(1)} }
    .conf-ttl { font-family:'Cormorant Garamond',serif; font-size:1.75rem; margin-bottom:10px; }
    .conf-svc { margin:18px auto; padding:14px; background:rgba(200,168,75,.07); border:1px solid rgba(200,168,75,.15); border-radius:6px; font-size:.84rem; color:var(--gold); max-width:280px; }
    .conf-sub { font-size:.86rem; line-height:1.75; color:var(--muted); max-width:320px; margin:0 auto; }

    /* FOOTER */
    footer { background:rgba(0,0,0,.5); padding:60px 6% 30px; border-top:1px solid rgba(200,168,75,.1); }
    .ft-grid { display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr; gap:44px; }
    .ft-brand { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:600; margin-bottom:6px; }
    .ft-tag { font-size:.65rem; letter-spacing:.2em; color:var(--gold); text-transform:uppercase; }
    .ft-desc { font-size:.83rem; line-height:1.75; color:rgba(244,239,230,.4); margin-top:16px; max-width:270px; }
    .ft-social { display:flex; gap:10px; margin-top:22px; }
    .soc { width:38px; height:38px; border:1px solid rgba(200,168,75,.2); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; transition:all .3s; text-decoration:none; color:var(--cream); cursor:pointer; }
    .soc:hover { border-color:var(--gold); background:rgba(200,168,75,.1); transform:translateY(-3px); }
    .ft-col-t { font-size:.68rem; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); margin-bottom:18px; }
    .ft-col ul { list-style:none; }
    .ft-col ul li { margin-bottom:10px; }
    .ft-col ul li a { font-size:.83rem; color:rgba(244,239,230,.45); text-decoration:none; transition:color .3s; cursor:pointer; }
    .ft-col ul li a:hover { color:var(--cream); }
    .ft-btm { margin-top:50px; padding-top:20px; border-top:1px solid rgba(200,168,75,.07); display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; font-size:.75rem; color:rgba(244,239,230,.28); }

    /* STACKED CARDS */
    .stack-container { position:relative; width:380px; height:420px; perspective:1000px; }
    .stack-card { position:absolute; width:100%; height:100%; object-fit:cover; border-radius:12px; cursor:pointer; transition:all .4s cubic-bezier(.34,.1,.64,.88); box-shadow:0 8px 24px rgba(0,0,0,0.12); border:1px solid rgba(200,168,75,.1); }
    .stack-card:hover { transform:translateY(-8px); box-shadow:0 16px 40px rgba(200,168,75,0.25); }
    .card-1 { z-index:3; transform:translateY(0px) translateX(0px) rotateZ(0deg); }
    .card-1:hover { transform:translateY(-12px) translateX(-4px) rotateZ(-2deg); }
    .card-2 { z-index:2; transform:translateY(12px) translateX(8px) rotateZ(1.5deg); }
    .card-2:hover { transform:translateY(0px) translateX(4px) rotateZ(-1deg); }
    .card-3 { z-index:1; transform:translateY(24px) translateX(16px) rotateZ(3deg); }
    .card-3:hover { transform:translateY(12px) translateX(12px) rotateZ(1deg); }
    .stack-nav { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; background:rgba(200,168,75,0.15); border:2px solid var(--gold); color:var(--gold); font-size:1.6rem; cursor:pointer; border-radius:50%; transition:all .3s; z-index:10; display:flex; align-items:center; justify-content:center; padding:0; }
    .stack-nav:hover { background:rgba(200,168,75,0.35); transform:translateY(-50%) scale(1.1); }
    .stack-prev { left:-60px; }
    .stack-next { right:-60px; }

    /* IMAGE MODAL */
    .img-modal { position:fixed; inset:0; background:rgba(5,15,7,0.95); z-index:9000; display:none; align-items:center; justify-content:center; backdrop-filter:blur(4px); animation:modalFadeIn .3s ease; }
    .img-modal.active { display:flex; }
    @keyframes modalFadeIn { from{opacity:0;} to{opacity:1;} }
    .img-modal-content { position:relative; max-width:90vw; max-height:90vh; display:flex; align-items:center; justify-content:center; animation:modalZoomIn .4s cubic-bezier(.34,.1,.64,.88); }
    @keyframes modalZoomIn { from{opacity:0;transform:scale(0.8);} to{opacity:1;transform:scale(1);} }
    .img-modal-content img { max-width:100%; max-height:85vh; object-fit:contain; border-radius:8px; box-shadow:0 20px 60px rgba(0,0,0,0.4); }
    .img-modal-close { position:absolute; top:-40px; right:0; width:40px; height:40px; background:none; border:2px solid var(--gold); color:var(--gold); font-size:1.8rem; cursor:pointer; border-radius:50%; transition:all .2s; display:flex; align-items:center; justify-content:center; padding:0; }
    .img-modal-close:hover { background:rgba(200,168,75,0.15); transform:rotate(90deg); }
    .img-modal-nav { position:absolute; top:50%; transform:translateY(-50%); width:50px; height:50px; background:rgba(200,168,75,0.15); border:2px solid var(--gold); color:var(--gold); font-size:2rem; cursor:pointer; border-radius:50%; transition:all .3s; display:flex; align-items:center; justify-content:center; padding:0; z-index:100; }
    .img-modal-nav:hover { background:rgba(200,168,75,0.35); transform:translateY(-50%) scale(1.1); }
    .img-modal-prev { left:-70px; }
    .img-modal-next { right:-70px; }

    /* RESPONSIVE */
    @media(max-width:900px) {
      nav{padding:16px 5%;} nav.sld{padding:12px 5%;}
      .nav-links{display:none;} .hamburger{display:flex;}
      .about-grid,.cg{grid-template-columns:1fr;}
      .ft-grid{grid-template-columns:1fr 1fr;}
      .fcta{bottom:16px;right:14px;}
    }
    @media(max-width:600px) {
      .hero-stats{gap:24px;} .sp-grid{grid-template-columns:1fr;}
      .ft-grid{grid-template-columns:1fr;} .ft-btm{flex-direction:column;text-align:center;}
    }