
        @import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300;9..144,500;9..144,700&family=Karla:wght@400;500;600&family=Dancing+Script:wght@600;700&display=swap');

        .cb-root{
          --ink:#1B1030; --ink-soft:#5B4E82; --ivory:#F6F2EC; --paper:#FFFFFF;
          --brand-a:#6D28D9; --brand-b:#DB2777;
          --marigold:#F0A22E; --kumkum:#E0433B; --peacock:#0F9C80; --sapphire:#2A63E8;
          --line:rgba(36,16,65,.16); --line-soft:rgba(36,16,65,.09);
          --radius:270px; --cardW:250px; --cardH:330px;
          background:
            radial-gradient(1200px 680px at 80% 4%, rgba(219,39,119,.16), transparent 60%),
            radial-gradient(1000px 640px at 0% 36%, rgba(109,40,217,.20), transparent 58%),
            radial-gradient(900px 520px at 46% 96%, rgba(15,156,128,.12), transparent 60%),
            var(--ivory);
          color:var(--ink); font-family:Karla,system-ui,sans-serif; font-size:16px; line-height:1.6;
          -webkit-font-smoothing:antialiased; overflow-x:hidden;
        }
        .cb-root *,.cb-root *::before,.cb-root *::after{box-sizing:border-box;}
        .cb-root h1,.cb-root h2,.cb-root h3,.cb-root h4{font-family:Fraunces,Georgia,serif;font-weight:500;line-height:1.09;letter-spacing:-.015em;margin:0;}
        .cb-root p{margin:0;} .cb-root a{color:inherit;}
        .cb-wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
        .cb-root :focus-visible{outline:2.5px solid var(--brand-b);outline-offset:3px;border-radius:4px;}

        .cb-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:22px 0 14px;}
        .cb-mark{display:flex;align-items:center;gap:8px;text-decoration:none;justify-self:start;}
        .cb-mark span{font-family:'Dancing Script',cursive;font-size:27px;font-weight:700;color:#1B1030;}
        .cb-nav{display:flex;gap:28px;font-size:15px;justify-self:center;}
        .cb-nav a{text-decoration:none;color:var(--ink-soft);padding-bottom:2px;}
        .cb-nav a:hover{color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink);}
        .cb-head-cta{justify-self:end;}

        .cb-root .cb-btn{display:inline-block;font-family:Karla,sans-serif;font-size:15px;font-weight:600;padding:11px 22px;
          border-radius:999px;background:linear-gradient(135deg,var(--brand-a),var(--brand-b));color:#fff;
          border:1.5px solid transparent;text-decoration:none;cursor:pointer;
          transition:transform .25s,box-shadow .25s,filter .3s;box-shadow:0 12px 28px -14px rgba(109,40,217,.55);}
        .cb-root .cb-btn:hover{filter:brightness(1.08);transform:translateY(-2px);
          box-shadow:0 16px 32px -14px rgba(219,39,119,.5);}
        .cb-root .cb-btn-ghost{background:transparent;color:var(--ink);border-color:var(--line);box-shadow:none;}
        .cb-root .cb-btn-ghost:hover{background:var(--ink);color:var(--ivory);}

        /* ---------- hero ---------- */
        .cb-hero{text-align:center;padding:22px 0 8px;}
        .cb-hero h1{font-size:clamp(38px,5.6vw,68px);max-width:16ch;margin:0 auto;
          background:linear-gradient(100deg,var(--ink) 20%,var(--brand-a) 62%,var(--brand-b) 88%);
          -webkit-background-clip:text;background-clip:text;color:transparent;}
        .cb-root .cb-lede{font-size:18px;color:var(--ink-soft);max-width:58ch;margin:20px auto 0;}
        .cb-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;justify-content:center;}
        .cb-rise{opacity:0;transform:translateY(16px);transition:opacity .8s ease,transform .8s ease;}
        .cb-ready .cb-rise{opacity:1;transform:none;}
        .cb-ready .cb-d1{transition-delay:.05s;} .cb-ready .cb-d2{transition-delay:.16s;}
        .cb-ready .cb-d3{transition-delay:.27s;} .cb-ready .cb-d4{transition-delay:.40s;}

        /* ---------- 3d ring ---------- */
        .cb-stage{height:540px;margin-top:34px;perspective:1750px;perspective-origin:50% 50%;touch-action:pan-y;cursor:grab;position:relative;}
        .cb-stage:active{cursor:grabbing;}
        .cb-ring{position:absolute;left:50%;top:50%;margin-left:calc(var(--cardW) / -2);margin-top:calc(var(--cardH) / -2);
          width:var(--cardW);height:var(--cardH);transform-style:preserve-3d;transition:transform .85s cubic-bezier(.22,.9,.28,1);}
        .cb-ring[data-drag="true"]{transition:none;}
        .cb-face{position:absolute;top:0;left:0;width:var(--cardW);height:var(--cardH);backface-visibility:hidden;
          border-radius:20px;overflow:hidden;background:var(--paper);border:1px solid var(--line-soft);
          box-shadow:0 30px 56px -20px var(--glow,rgba(36,16,65,.4));display:flex;flex-direction:column;text-align:left;
          transition:opacity .5s ease, filter .5s ease;}
        .cb-face-top{height:132px;display:flex;align-items:center;justify-content:center;flex:none;}
        .cb-face-b{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1;}
        .cb-face h3{font-size:19px;line-height:1.16;min-height:2.32em;}
        .cb-face p{font-size:13px;color:var(--ink-soft);margin-top:9px;line-height:1.4;min-height:2.8em;}
        .cb-face-tag{margin-top:auto;font-size:11.5px;font-weight:600;}
        .cb-floor{position:absolute;left:50%;top:calc(50% + (var(--cardH) / 2) + 42px);transform:translateX(-50%);
          width:420px;height:44px;border-radius:50%;
          background:radial-gradient(ellipse at center, rgba(36,16,65,.22), transparent 68%);filter:blur(5px);pointer-events:none;}

        .cb-switch{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:30px;}
        .cb-sw{font-family:Karla,sans-serif;font-size:14px;font-weight:500;padding:8px 15px;border-radius:999px;
          border:1.5px solid var(--line);background:transparent;color:var(--ink-soft);cursor:pointer;
          transition:transform .22s,border-color .22s,color .22s;}
        .cb-sw:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px);}
        .cb-sw[data-on="true"]{color:#fff;}
        .cb-root .cb-now{margin-top:18px;text-align:center;font-size:15px;color:var(--ink-soft);min-height:26px;}
        .cb-root .cb-hint{margin-top:6px;text-align:center;font-size:12.5px;color:rgba(74,50,104,.6);}

        /* ---------- bands ---------- */
        .cb-band{border-top:1px solid var(--line);padding:74px 0;}
        .cb-band h2{font-size:clamp(29px,3.5vw,41px);max-width:22ch;}
        .cb-root .cb-sub{color:var(--ink-soft);margin-top:14px;max-width:56ch;}

        .cb-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;}
        .cb-plan{position:relative;background:var(--paper);border:1px solid var(--line-soft);border-radius:18px;
          padding:30px 28px 28px;display:flex;flex-direction:column;overflow:hidden;
          transition:transform .35s cubic-bezier(.2,.8,.3,1), box-shadow .35s ease;}
        .cb-plan::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--tbar);}
        .cb-plan:hover{transform:translateY(-6px);box-shadow:0 26px 48px -22px var(--glow);}
        .cb-plan h3{font-size:21px;}
        .cb-plan-list{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:9px;flex:1;}
        .cb-plan-list li{font-size:14px;color:var(--ink-soft);padding-left:19px;position:relative;line-height:1.45;}
        .cb-plan-list li::before{content:"";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%;background:var(--tbar);}
        .cb-plan-foot{margin-top:22px;padding-top:18px;border-top:1px solid var(--line-soft);
          display:flex;align-items:center;justify-content:space-between;gap:10px;}

        .cb-six{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;perspective:1200px;}
        .cb-card{position:relative;background:var(--paper);border:1px solid var(--line-soft);border-radius:18px;
          padding:30px 28px 28px;display:flex;flex-direction:column;overflow:hidden;
          transition:transform .35s cubic-bezier(.2,.8,.3,1), box-shadow .35s ease;}
        .cb-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--tbar);}
        .cb-card:hover{transform:translateY(-8px) rotateX(4deg);box-shadow:0 26px 48px -22px var(--glow);}
        .cb-card h3{font-size:22px;min-height:2.18em;}
        .cb-card .cb-cap{font-size:14px;margin-top:10px;font-weight:600;line-height:1.4;min-height:2.8em;}
        .cb-card p.cb-body{color:var(--ink-soft);margin-top:10px;font-size:15px;}
        .cb-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px;}
        .cb-tag{font-size:12px;padding:5px 10px;border-radius:999px;background:rgba(36,16,65,.06);color:var(--ink-soft);}
        .cb-price{font-family:Fraunces,serif;font-size:17px;}
        .cb-price small{display:block;font-family:Karla,sans-serif;font-size:11.5px;font-weight:400;color:var(--ink-soft);}
        .cb-book{font-family:Karla,sans-serif;font-size:13.5px;font-weight:600;padding:9px 16px;border-radius:999px;
          color:#fff;border:none;cursor:pointer;transition:transform .22s,box-shadow .22s;}
        .cb-book:hover{transform:translateY(-2px);box-shadow:0 12px 22px -10px var(--glow);}

        .cb-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:42px;}
        .cb-step{border-top:2px solid var(--ink);padding-top:18px;}
        .cb-num{font-family:Fraunces,serif;font-size:15px;color:var(--kumkum);font-weight:700;}
        .cb-step h3{font-size:21px;margin-top:8px;min-height:2.18em;}
        .cb-step p{color:var(--ink-soft);margin-top:10px;font-size:15.5px;}

        .cb-cta{background:linear-gradient(120deg,var(--marigold),#E67A3C);border-radius:24px;padding:54px 46px;margin:74px 0;
          display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;
          box-shadow:0 34px 64px -30px rgba(214,122,42,.55);}
        .cb-cta h2{font-size:clamp(28px,3.3vw,39px);max-width:18ch;color:#2B1503;}
        .cb-root .cb-cta p{margin-top:14px;max-width:40ch;color:rgba(43,21,3,.78);}
        .cb-cta-side{display:grid;gap:12px;justify-items:start;}
        .cb-mail{font-family:Fraunces,serif;font-size:19px;text-decoration:none;color:#2B1503;box-shadow:inset 0 -1px 0 #2B1503;}
        .cb-cta-note{font-size:14px;color:rgba(43,21,3,.72);}
        .cb-cta .cb-btn{background:#1B1030;box-shadow:0 10px 26px -14px rgba(27,16,48,.5);}
        .cb-cta .cb-btn:hover{background:#100A1E;}

        .cb-terms-page{padding:56px 0 74px;max-width:74ch;}
        .cb-back{font-family:Karla,sans-serif;font-size:14px;font-weight:600;color:var(--ink-soft);
          background:none;border:none;cursor:pointer;padding:0;margin-bottom:24px;}
        .cb-back:hover{color:var(--ink);}
        .cb-terms-page h1{font-size:clamp(30px,3.6vw,42px);}
        .cb-terms-updated{color:var(--ink-soft);margin-top:14px;font-size:15px;}
        .cb-terms-page h3{font-size:19px;margin-top:34px;margin-bottom:4px;}
        .cb-terms-list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:12px;}
        .cb-terms-list li{font-size:15px;color:var(--ink-soft);line-height:1.6;padding-left:20px;position:relative;}
        .cb-terms-list li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--brand-a);}
        .cb-terms-list b{color:var(--ink);font-weight:700;}
        .cb-terms-note{color:var(--ink-soft);font-size:15px;margin-top:14px;}
        .cb-terms-contact{margin-top:14px;font-size:14.5px;font-family:Karla,sans-serif;}
        .cb-terms-contact a{text-decoration:underline;font-weight:600;}
        .cb-terms-sep{margin:0 10px;color:var(--ink-soft);}
        .cb-terms-link{background:none;border:none;padding:0;font:inherit;color:inherit;
          text-decoration:underline;cursor:pointer;}

        .cb-foot{border-top:1px solid var(--line);padding:38px 0 54px;
          display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;
          font-size:14px;color:var(--ink-soft);}
        .cb-foot span:first-child{justify-self:start;}
        .cb-foot span:nth-child(2){justify-self:center;text-align:center;}
        .cb-foot span:last-child{justify-self:end;text-align:right;max-width:34ch;}

        /* ---------- booking modal ---------- */
        .cb-modal-wrap{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:20px;}
        .cb-modal-backdrop{position:absolute;inset:0;background:rgba(36,16,65,.5);backdrop-filter:blur(2px);}
        .cb-modal{position:relative;width:440px;max-width:100%;max-height:88vh;overflow-y:auto;background:var(--paper);
          border-radius:22px;box-shadow:0 40px 80px -30px rgba(36,16,65,.6);animation:cbPop .3s cubic-bezier(.2,.9,.3,1);}
        @keyframes cbPop{from{opacity:0;transform:translateY(14px) scale(.97);}to{opacity:1;transform:none;}}
        .cb-modal-x{position:absolute;top:14px;right:16px;background:rgba(255,255,255,.7);border:none;width:32px;height:32px;
          border-radius:50%;font-size:20px;line-height:1;cursor:pointer;color:var(--ink);z-index:2;}
        .cb-modal-head{display:flex;align-items:center;gap:16px;padding:26px 24px 20px;border-radius:22px 22px 0 0;}
        .cb-modal-eyebrow{font-size:12.5px;font-weight:600;}
        .cb-modal-head h3{font-size:21px;margin-top:2px;}
        .cb-modal-steps{display:flex;gap:6px;justify-content:center;padding:16px 0 4px;}
        .cb-modal-dot{width:24px;height:4px;border-radius:99px;background:var(--line);}
        .cb-modal-body{padding:18px 24px 6px;min-height:180px;}
        .cb-modal-body h4{font-size:17px;}
        .cb-modal-h4-2{margin-top:20px;}
        .cb-modal-note{font-size:13px;color:var(--ink-soft);margin-top:12px;line-height:1.5;}
        .cb-modal-note.cb-muted{opacity:.75;}
        .cb-opt-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
        .cb-opt{font-size:13.5px;padding:9px 14px;border-radius:12px;border:1.5px solid var(--line);background:transparent;
          color:var(--ink-soft);cursor:pointer;}
        .cb-opt[data-on="true"]{font-weight:600;}
        .cb-pack-row{display:flex;gap:10px;margin-top:12px;}
        .cb-pack{flex:1;padding:12px;border-radius:12px;border:1.5px solid var(--line);background:transparent;
          font-family:Fraunces,serif;font-size:16px;cursor:pointer;color:var(--ink);}
        .cb-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px;}
        .cb-span2{grid-column:span 2;}
        .cb-label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-soft);}
        .cb-opt-tag{font-size:11px;opacity:.6;}
        .cb-field{font-family:Karla,sans-serif;font-size:14.5px;padding:11px 13px;border-radius:10px;
          border:1.5px solid var(--line);background:#fff;color:var(--ink);}
        .cb-field:focus{outline:none;border-color:var(--ink);}
        .cb-textarea{resize:vertical;width:100%;}
        .cb-pay-summary{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;
          border:1.5px solid;border-radius:14px;margin-top:12px;font-size:14.5px;}
        .cb-pay-methods{display:flex;gap:8px;margin-top:14px;}
        .cb-pay-chip{font-size:12.5px;padding:7px 13px;border-radius:999px;background:rgba(36,16,65,.06);color:var(--ink-soft);}
        .cb-pay-chip[data-on="true"]{background:var(--ink);color:#fff;}
        .cb-done{text-align:center;padding:10px 0 8px;}
        .cb-done-badge{width:48px;height:48px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;
          font-size:22px;margin:0 auto 14px;}
        .cb-done p{margin-top:8px;font-size:14.5px;color:var(--ink-soft);}
        .cb-modal-foot{display:flex;align-items:center;gap:10px;padding:20px 24px 24px;}
        .cb-modal-spacer{flex:1;}
        .cb-modal-back{padding:10px 16px !important;}
        .cb-modal-next{font-family:Karla,sans-serif;font-size:14.5px;font-weight:600;color:#fff;border:none;
          padding:11px 22px;border-radius:999px;cursor:pointer;transition:transform .2s;}
        .cb-modal-next:hover{transform:translateY(-2px);}
        .cb-modal-next:disabled{opacity:.45;cursor:not-allowed;transform:none;}

        @media (max-width:1040px){
          .cb-foot{grid-template-columns:1fr;gap:8px;}
          .cb-foot span{justify-self:start !important;text-align:left !important;}
        }
        @media (max-width:940px){
          .cb-nav{display:none;}
          .cb-six{grid-template-columns:1fr;}
          .cb-plans{grid-template-columns:1fr;}
          .cb-card h3,.cb-card .cb-cap,.cb-face h3,.cb-face p,.cb-step h3{min-height:0;}
          .cb-steps{grid-template-columns:1fr;gap:28px;}
          .cb-cta{grid-template-columns:1fr;padding:38px 26px;}
        }
        @media (max-width:640px){
          .cb-root{--radius:210px;--cardW:210px;--cardH:300px;}
          .cb-stage{height:470px;perspective:1250px;}
          .cb-face-top{height:112px;}
          .cb-floor{width:300px;}
          .cb-field-grid{grid-template-columns:1fr;}
          .cb-span2{grid-column:span 1;}
        }
        @media (max-width:520px){ .cb-wrap{padding:0 20px;} }

        @media (prefers-reduced-motion:reduce){
          .cb-root *{animation:none !important;transition:none !important;}
          .cb-rise{opacity:1;transform:none;}
          .cb-card:hover{transform:none;}
          .cb-bee-layer{display:none;}
        }

        /* ---------- honeybees ---------- */
        .cb-bee-layer{position:fixed;inset:0;z-index:5;pointer-events:none;overflow:hidden;}
        .cb-bee{position:absolute;top:0;left:0;perspective:280px;will-change:transform;}
        .cb-bee-body{filter:drop-shadow(0 6px 10px rgba(27,16,48,.28));transform-style:preserve-3d;
          animation:cbWobble 2.6s ease-in-out infinite;}
        .cb-wing{transform-style:preserve-3d;}
        .cb-wing-back{animation:cbFlap3D .15s ease-in-out infinite alternate;}
        .cb-wing-front{animation:cbFlap3D .15s ease-in-out infinite alternate;animation-delay:.04s;}
        @keyframes cbFlap3D{from{transform:rotateX(12deg);}to{transform:rotateX(78deg);}}
        @keyframes cbWobble{0%,100%{transform:rotateY(-9deg) rotateZ(-2deg);}50%{transform:rotateY(9deg) rotateZ(2deg);}}

        .cb-bee-1{animation:cbFly1 26s ease-in-out infinite;}
        .cb-bee-2{animation:cbFly2 32s ease-in-out infinite;animation-delay:-9s;}
        .cb-bee-3{animation:cbFly3 29s ease-in-out infinite;animation-delay:-18s;}

        @keyframes cbFly1{
          0%{transform:translate(-8vw,22vh) rotate(-6deg);opacity:0;}
          6%{opacity:.95;}
          25%{transform:translate(30vw,10vh) rotate(8deg);}
          48%{transform:translate(62vw,38vh) rotate(-10deg);}
          70%{transform:translate(85vw,14vh) rotate(6deg);}
          94%{opacity:.95;}
          100%{transform:translate(108vw,26vh) rotate(-6deg);opacity:0;}
        }
        @keyframes cbFly2{
          0%{transform:translate(-10vw,55vh) scale(.92) rotate(-4deg);opacity:0;}
          6%{opacity:.9;}
          25%{transform:translate(28vw,74vh) scale(.92) rotate(7deg);}
          50%{transform:translate(55vw,40vh) scale(.92) rotate(-8deg);}
          75%{transform:translate(80vw,68vh) scale(.92) rotate(6deg);}
          94%{opacity:.9;}
          100%{transform:translate(108vw,50vh) scale(.92) rotate(-4deg);opacity:0;}
        }
        @keyframes cbFly3{
          0%{transform:translate(-12vw,85vh) scale(.82) rotate(5deg);opacity:0;}
          6%{opacity:.85;}
          28%{transform:translate(35vw,62vh) scale(.82) rotate(-7deg);}
          52%{transform:translate(58vw,90vh) scale(.82) rotate(6deg);}
          80%{transform:translate(88vw,58vh) scale(.82) rotate(-5deg);}
          94%{opacity:.85;}
          100%{transform:translate(112vw,78vh) scale(.82) rotate(5deg);opacity:0;}
        }
      