/* Elementor container reset — two class repetitions so the page rules (four) still win. */
.dogge-membership.dogge-membership.e-con, .dogge-membership.dogge-membership .e-con{
  --padding-top:0px; --padding-right:0px; --padding-bottom:0px; --padding-left:0px;
  --margin-top:0px; --margin-right:0px; --margin-bottom:0px; --margin-left:0px;
  --gap:0px; --row-gap:0px; --column-gap:0px;
  --width:auto; --content-width:100%; --min-height:0;
  display:block; padding:0; margin:0; gap:0; width:auto; max-width:none; border-radius:0;
  --flex-direction:row; flex-direction:row;
}


.dogge-membership.dogge-membership.dogge-membership{
  --indigo:#01008C; --indigo-2:#3b39c9; --indigo-d:#05044f; --cream:#FBF7EF; --cream-2:#F3ECDD;
  --ink:#171532; --muted:#6f6f76; --gold:#E8A33D; --coral:#FF6F61; --teal:#2DBDB0; --pink:#FF8FB1; --sky:#5AA9E6;
  --ring:rgba(1,0,140,.14); --pill:999px; --shadow:0 18px 44px -20px rgba(1,0,140,.4);
  font-family:europa,"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif; color:var(--ink); line-height:1.6;
  -webkit-font-smoothing:antialiased; margin:0 auto; max-width:1500px;
}
.dogge-membership.dogge-membership.dogge-membership *{box-sizing:border-box}
.dogge-membership.dogge-membership.dogge-membership h1,.dogge-membership.dogge-membership.dogge-membership h2,.dogge-membership.dogge-membership.dogge-membership h3{
  font-family:"Comic Sans MS","Chalkboard SE","Comic Neue",cursive; line-height:1.08; color:var(--ink); margin:0}
.dogge-membership.dogge-membership.dogge-membership p{margin:0 0 1rem}
.dogge-membership.dogge-membership.dogge-membership a{color:var(--indigo)}
.dogge-membership.dogge-membership.dogge-membership .dm-sec.dm-sec{padding:clamp(2.2rem,5vw,4rem) clamp(1.1rem,4vw,2.4rem)}
.dogge-membership.dogge-membership.dogge-membership .ico{display:inline-block; vertical-align:middle; fill:currentColor}
.dogge-membership.dogge-membership.dogge-membership .dm-eyebrow{display:inline-flex; align-items:center; gap:.4rem; font-weight:800; letter-spacing:.13em;
  text-transform:uppercase; font-size:.7rem; color:var(--indigo); background:var(--ring);
  padding:.35rem .8rem; border-radius:var(--pill); margin-bottom:1rem}
.dogge-membership.dogge-membership.dogge-membership .dm-eyebrow .ico{width:15px; color:var(--gold)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn{display:inline-flex; align-items:center; gap:.5rem; cursor:pointer; background:var(--indigo);
  color:#fff !important; text-decoration:none; font-weight:800; padding:.95rem 1.8rem; border-radius:var(--pill);
  border:0; box-shadow:var(--shadow); transition:transform .18s ease, box-shadow .18s ease, background .18s ease}
.dogge-membership.dogge-membership.dogge-membership .dm-btn:hover{transform:translateY(-3px); background:var(--indigo-2); box-shadow:0 24px 48px -18px rgba(1,0,140,.55)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn .ico{width:18px; color:var(--gold)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--ghost{background:transparent; color:#fff !important; box-shadow:none; border:2px solid rgba(255,255,255,.5)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--ghost:hover{background:rgba(255,255,255,.12)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--ghost .ico{color:#fff}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--light{background:#fff; color:var(--indigo) !important; box-shadow:0 14px 30px -16px rgba(0,0,0,.4)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--light:hover{background:#f0efff}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--light .ico{color:var(--gold)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--gold{background:var(--gold); color:var(--indigo) !important; box-shadow:0 14px 30px -16px rgba(232,163,61,.7)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--gold:hover{background:#f2b455; color:var(--indigo) !important; box-shadow:0 24px 48px -18px rgba(232,163,61,.55)}
.dogge-membership.dogge-membership.dogge-membership .dm-btn--gold .ico{color:var(--indigo)}
.dogge-membership.dogge-membership.dogge-membership .dm-lead{font-size:clamp(1.04rem,2vw,1.2rem); color:#34324f; max-width:52ch}
.dogge-membership.dogge-membership.dogge-membership h2{font-size:clamp(1.7rem,3.8vw,2.6rem)}
.dogge-membership.dogge-membership.dogge-membership .dm-head{max-width:60ch; margin-bottom:1.8rem}
.dogge-membership.dogge-membership.dogge-membership .dm-hero{position:relative; overflow:hidden; border-radius:30px; margin:1rem clamp(.4rem,2vw,1rem) 0; color:#fff;
  background:radial-gradient(120% 130% at 100% 0,#2b2aa6 0,var(--indigo) 55%,var(--indigo-d) 100%);
  display:grid; grid-template-columns:1.25fr .95fr; gap:1.8rem; align-items:center;
  padding:clamp(2.4rem,6vw,4.4rem) clamp(1.4rem,5vw,3.4rem)}
.dogge-membership.dogge-membership.dogge-membership .dm-hero::after{content:""; position:absolute; inset:0; pointer-events:none; opacity:.16;
  background-image:radial-gradient(circle at 12px 12px,#fff 2px,transparent 2.4px); background-size:34px 34px;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 40%); mask-image:linear-gradient(180deg,transparent,#000 40%)}
.dogge-membership.dogge-membership.dogge-membership .dm-hero .pawmark{position:absolute; opacity:.10; color:#fff; pointer-events:none}
.dogge-membership.dogge-membership.dogge-membership .dm-hero .pawmark.a{width:90px; left:-14px; top:30%; transform:rotate(-20deg)}
.dogge-membership.dogge-membership.dogge-membership .dm-hero .pawmark.b{width:64px; right:42%; bottom:-12px; transform:rotate(16deg)}
.dogge-membership.dogge-membership.dogge-membership .dm-confetti{position:absolute; inset:0; pointer-events:none}
.dogge-membership.dogge-membership.dogge-membership .dm-confetti i{position:absolute; width:11px; height:11px; border-radius:2px; opacity:.85}
.dogge-membership.dogge-membership.dogge-membership .dm-confetti i.r{border-radius:50%}
.dogge-membership.dogge-membership.dogge-membership .dm-hero__copy{position:relative; z-index:2}
.dogge-membership.dogge-membership.dogge-membership .dm-hero .dm-eyebrow{background:rgba(255,255,255,.16); color:#fff}
.dogge-membership.dogge-membership.dogge-membership .dm-hero .dm-eyebrow .ico{color:var(--gold)}
.dogge-membership.dogge-membership.dogge-membership .dm-hero h1{color:#fff; font-size:clamp(2.1rem,5.2vw,3.5rem); max-width:15ch}
.dogge-membership.dogge-membership.dogge-membership .dm-hero .dm-lead{color:#FEDF7D; margin-top:.6rem; max-width:46ch}
.dogge-membership.dogge-membership.dogge-membership .dm-hero .dm-lead b{color:#fff; font-weight:800}
.dogge-membership.dogge-membership.dogge-membership .dm-cta{display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.5rem}
.dogge-membership.dogge-membership.dogge-membership .dm-photo{position:relative; z-index:2; border-radius:22px; overflow:hidden; aspect-ratio:4/3;
  background-color:#1b1830; background-size:cover; background-position:center; background-repeat:no-repeat;
  border:1px solid rgba(255,255,255,.6); box-shadow:0 30px 60px -24px rgba(0,0,0,.5);
  display:grid; place-items:center}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-ico{display:flex; align-items:flex-end; gap:.2rem; color:var(--indigo); filter:drop-shadow(0 8px 14px rgba(1,0,140,.25))}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-ico .ico.cup{width:64px}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-ico .ico.steam{width:34px; color:var(--coral); margin-bottom:48px}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-cap{position:absolute; left:12px; bottom:12px; background:rgba(255,255,255,.92); color:var(--muted);
  font-size:.72rem; font-weight:700; padding:.28rem .7rem; border-radius:var(--pill); border:1px solid #ece6d8}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-stars{position:absolute; right:-10px; top:-10px; background:#fff; color:var(--ink);
  border-radius:16px; padding:.6rem .75rem; box-shadow:0 18px 34px -16px rgba(0,0,0,.45); transform:rotate(4deg);
  border:1px solid #ece6d8; text-align:center}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-stars b{display:block; font-family:"Comic Sans MS",cursive; font-size:.86rem; color:var(--indigo)}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-stars .row{display:flex; gap:.12rem; margin-top:.2rem; justify-content:center}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-stars .row .ico{width:16px; color:var(--gold)}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-stars .row .ico.off{color:#d9d2c4}
.dogge-membership.dogge-membership.dogge-membership .dm-photo .ph-stars small{display:block; color:var(--muted); font-size:.66rem; margin-top:.15rem}
.dogge-membership.dogge-membership.dogge-membership .dm-perks{display:grid; gap:1rem; grid-template-columns:repeat(4,1fr)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk{background:#fff; border:1px solid #ece6d8; border-radius:20px; padding:1.5rem 1.2rem;
  box-shadow:0 12px 30px -24px rgba(23,21,50,.6); transition:transform .2s ease, box-shadow .2s ease}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:hover{transform:translateY(-5px); box-shadow:0 28px 50px -26px rgba(1,0,140,.42)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk .badge{width:52px; height:52px; border-radius:16px; display:grid; place-items:center; margin-bottom:.7rem;
  background:var(--ring)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk .badge .ico{width:28px; color:var(--indigo)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(1){background:linear-gradient(180deg,#FFF2CC 0%,#FDE49A 100%); border-color:#F3C64B}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(1) .badge{background:#fff; box-shadow:0 6px 14px -8px rgba(120,86,0,.45)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(1) .badge .ico{color:var(--gold)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(1) h3{color:#6B4B00}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(1) p{color:#4a3a12}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(2) .badge{background:#e6f7f4}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(2) .badge .ico{color:var(--teal)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(3) .badge{background:#ffeef0}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(3) .badge .ico{color:var(--coral)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(4) .badge{background:#eaf2fb}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(4) .badge .ico{color:var(--sky)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk h3{font-size:1.12rem; margin-bottom:.25rem; color:var(--indigo)}
.dogge-membership.dogge-membership.dogge-membership .dm-perk p{font-size:.93rem; color:#3a3850; margin:0}
.dogge-membership.dogge-membership.dogge-membership .dm-how{background-color:var(--cream); background-image:radial-gradient(var(--ring) 1.5px,transparent 1.6px); background-size:24px 24px; border-radius:26px; margin:1.6rem clamp(.4rem,2vw,1rem); position:relative; overflow:hidden}
.dogge-membership.dogge-membership.dogge-membership .dm-how::after{content:"🐾"; position:absolute; right:-6px; bottom:-22px; font-size:clamp(5rem,12vw,8rem); opacity:.05; transform:rotate(-12deg)}
.dogge-membership.dogge-membership.dogge-membership .dm-steps{display:grid; gap:1.1rem; grid-template-columns:repeat(3,1fr); position:relative; z-index:1}
.dogge-membership.dogge-membership.dogge-membership .dm-step{position:relative; background:#fff; border:1px solid #ece6d8; border-radius:18px; padding:2rem 1.3rem 1.3rem}
.dogge-membership.dogge-membership.dogge-membership .dm-step .pawnum{position:absolute; top:-22px; left:18px; width:50px; height:50px; filter:drop-shadow(0 6px 10px rgba(1,0,140,.28))}
.dogge-membership.dogge-membership.dogge-membership .dm-step .pawnum .ico{width:50px; color:var(--indigo)}
.dogge-membership.dogge-membership.dogge-membership .dm-step .pawnum span{position:absolute; left:0; right:0; bottom:8px; text-align:center; color:#fff; font-family:"Comic Sans MS",cursive; font-weight:700; font-size:.98rem; line-height:1; text-shadow:0 1px 2px rgba(1,0,140,.5)}
.dogge-membership.dogge-membership.dogge-membership .dm-step h3{font-size:1.1rem; margin:.2rem 0 .3rem; color:var(--ink)}
.dogge-membership.dogge-membership.dogge-membership .dm-step p{font-size:.94rem; color:#3a3850; margin:0}
.dogge-membership.dogge-membership.dogge-membership .dm-progress{display:flex; align-items:center; justify-content:center; gap:.5rem; flex-wrap:wrap; margin-top:1.6rem; position:relative; z-index:1}
.dogge-membership.dogge-membership.dogge-membership .dm-progress .stars{display:flex; gap:.3rem}
.dogge-membership.dogge-membership.dogge-membership .dm-progress .stars .ico{width:34px; color:var(--gold)}
.dogge-membership.dogge-membership.dogge-membership .dm-progress .arrow{color:var(--muted); font-weight:800}
.dogge-membership.dogge-membership.dogge-membership .dm-progress .free{display:inline-flex; align-items:center; gap:.4rem; background:#fff; border:2px dashed var(--indigo);
  color:var(--indigo); font-weight:800; padding:.5rem 1rem; border-radius:var(--pill)}
.dogge-membership.dogge-membership.dogge-membership .dm-progress .free .ico{width:22px; color:var(--indigo)}
.dogge-membership.dogge-membership.dogge-membership .dm-note{display:flex; gap:.7rem; align-items:center; justify-content:center; margin:1.3rem auto 0; max-width:46ch;
  background:#fff7e6; border:1px solid #f1d79a; color:#8a5a00; border-radius:14px; padding:.7rem 1rem; font-size:.9rem}
.dogge-membership.dogge-membership.dogge-membership .dm-join{position:relative}
.dogge-membership.dogge-membership.dogge-membership .dm-joincards{display:grid; gap:1rem; grid-template-columns:1fr 1fr; margin-bottom:1.6rem}
.dogge-membership.dogge-membership.dogge-membership .dm-joincard{background:#fff; border:1px solid #ece6d8; border-radius:20px; padding:1.5rem; box-shadow:0 12px 30px -24px rgba(23,21,50,.6)}
.dogge-membership.dogge-membership.dogge-membership .dm-joincard .tag{display:inline-flex; align-items:center; gap:.4rem; font-weight:800; color:var(--indigo); margin-bottom:.4rem}
.dogge-membership.dogge-membership.dogge-membership .dm-joincard .tag .ico{width:20px; color:var(--gold)}
.dogge-membership.dogge-membership.dogge-membership .dm-joincard p{margin:0; color:#3a3850; font-size:.96rem}
.dogge-membership.dogge-membership.dogge-membership .dm-faq-wrap{background-color:var(--cream); background-image:radial-gradient(var(--ring) 1.5px,transparent 1.6px); background-size:24px 24px; border-radius:26px; margin:1.6rem clamp(.4rem,2vw,1rem)}
.dogge-membership.dogge-membership.dogge-membership .dm-faq{display:grid; gap:.7rem; max-width:780px}
.dogge-membership.dogge-membership.dogge-membership details{background:#fff; border:1px solid #ece6d8; border-radius:14px; overflow:hidden}
.dogge-membership.dogge-membership.dogge-membership summary{cursor:pointer; list-style:none; padding:1rem 1.1rem; font-weight:700; color:var(--ink);
  display:flex; justify-content:space-between; gap:1rem; align-items:center}
.dogge-membership.dogge-membership.dogge-membership summary::-webkit-details-marker{display:none}
.dogge-membership.dogge-membership.dogge-membership summary::after{content:"+"; color:var(--indigo); font-size:1.4rem; font-weight:700; transition:transform .2s ease}
.dogge-membership.dogge-membership.dogge-membership details[open] summary::after{transform:rotate(45deg)}
.dogge-membership.dogge-membership.dogge-membership details .a{padding:0 1.1rem 1.1rem; color:#3a3850}
.dogge-membership.dogge-membership.dogge-membership .dm-placeholder{color:#9b6b00; background:#fff7e6; border-radius:6px; padding:0 .3em; font-size:.86em}
.dogge-membership.dogge-membership.dogge-membership .dm-closing{position:relative; overflow:hidden; text-align:center; color:#fff; border-radius:26px;
  margin:1.6rem clamp(.4rem,2vw,1rem); padding:clamp(2.4rem,5vw,3.6rem) 1.4rem;
  background:radial-gradient(120% 150% at 0 0,#2b2aa6 0,var(--indigo) 60%,var(--indigo-d) 100%)}
.dogge-membership.dogge-membership.dogge-membership .dm-closing h2{color:#fff}
.dogge-membership.dogge-membership.dogge-membership .dm-closing p{color:#e9e8ff; max-width:46ch; margin:.4rem auto 1.2rem}
.dogge-membership.dogge-membership.dogge-membership .dm-closing .pawmark{position:absolute; opacity:.12; color:#fff; width:90px; right:-10px; bottom:-16px; transform:rotate(14deg)}


@keyframes dmUp{
from{opacity:0; transform:translateY(14px)}
to{opacity:1; transform:none}}
.dogge-membership.dogge-membership.dogge-membership [data-up]{animation:dmUp .6s cubic-bezier(.2,.7,.2,1) both}
.dogge-membership.dogge-membership.dogge-membership .dm-hero__copy [data-up]:nth-child(1){animation-delay:.05s}
.dogge-membership.dogge-membership.dogge-membership .dm-hero__copy [data-up]:nth-child(2){animation-delay:.12s}
.dogge-membership.dogge-membership.dogge-membership .dm-hero__copy [data-up]:nth-child(3){animation-delay:.19s}
.dogge-membership.dogge-membership.dogge-membership .dm-hero__copy [data-up]:nth-child(4){animation-delay:.26s}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(2){animation-delay:.06s}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(3){animation-delay:.12s}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(4){animation-delay:.18s}


@media (max-width:860px){
.dogge-membership.dogge-membership.dogge-membership .dm-hero{grid-template-columns:1fr}
.dogge-membership.dogge-membership.dogge-membership .dm-photo{order:-1; aspect-ratio:16/10}
.dogge-membership.dogge-membership.dogge-membership .dm-perks{grid-template-columns:1fr 1fr}
.dogge-membership.dogge-membership.dogge-membership .dm-steps{grid-template-columns:1fr}
.dogge-membership.dogge-membership.dogge-membership .dm-joincards{grid-template-columns:1fr}
}
@media (max-width:600px){
.dogge-membership.dogge-membership.dogge-membership .dm-sec.dm-sec{padding:2rem 1.1rem}
.dogge-membership.dogge-membership.dogge-membership .dm-hero{border-radius:22px}
.dogge-membership.dogge-membership.dogge-membership .dm-perks{grid-template-columns:1fr}
.dogge-membership.dogge-membership.dogge-membership .dm-progress{gap:.35rem}
.dogge-membership.dogge-membership.dogge-membership .dm-cta .dm-btn{flex:1 1 auto; justify-content:center}
}
@media (prefers-reduced-motion:reduce){
.dogge-membership.dogge-membership.dogge-membership *{animation:none!important; transition:none!important} }
.content_wrap > .sidebar{display:none!important}
.content_wrap > .content{width:100%!important;max-width:100%!important;margin:0!important}
.content_wrap{max-width:1500px!important;width:auto!important;margin-left:auto!important;margin-right:auto!important}
.page_content_wrap{padding-top:1.25rem!important}

/* ============================================================================
 * Elementor bridge — only where Elementor's markup differs from the original.
 * ========================================================================== */

.dogge-membership.dogge-membership.dogge-membership .elementor-widget{margin:0}
.dogge-membership.dogge-membership.dogge-membership .elementor-widget-container{margin:0}

.dogge-membership.dogge-membership.dogge-membership .dm-cta > .elementor-widget,
.dogge-membership.dogge-membership.dogge-membership .dm-join > .elementor-widget-button,
.dogge-membership.dogge-membership.dogge-membership .dm-closing > .elementor-widget-button{width:auto; flex:0 0 auto}

/* The hero is a two-column grid; the decorative paws and confetti sit in an HTML widget whose
   wrapper would otherwise claim a column. Take it out of flow like the SVGs were. */
.dogge-membership.dogge-membership.dogge-membership .dm-hero > .elementor-widget-html{position:absolute; inset:0; pointer-events:none; z-index:1}

/* --- buttons ------------------------------------------------------------- */

/* Measured on the original: these buttons render at 18px/28.8 — inherited from the page, unlike
   the Cakes page whose .dc-btn lands on 14px. Elementor's button ships 15px/1, so take the
   inherited values back. */
.dogge-membership.dogge-membership.dogge-membership .dm-btn-w .elementor-button{font-size:inherit; line-height:inherit}
.dogge-membership.dogge-membership.dogge-membership .dm-btn-w .elementor-button .elementor-button-content-wrapper{align-items:center}
.dogge-membership.dogge-membership.dogge-membership .dm-btn-w .elementor-button .elementor-button-text::before{
  content:""; display:inline-block; width:18px; height:18px; flex:0 0 auto;
  margin-right:9px; vertical-align:-.18em; background:no-repeat center/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23E8A33D'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E");
}
/* icons inherit the button's colour in the original: indigo on gold, none on ghost */
.dogge-membership.dogge-membership.dogge-membership .dm-btn-w--gold  .elementor-button .elementor-button-text::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2301008C'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E")}
.dogge-membership.dogge-membership.dogge-membership .dm-btn-w--ghost .elementor-button .elementor-button-text::before{content:none}

/* --- eyebrow ------------------------------------------------------------- */
.dogge-membership.dogge-membership.dogge-membership .dm-eyebrow::before{
  content:""; display:inline-block; width:15px; height:15px; flex:0 0 auto;
  background:no-repeat center/contain; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23E8A33D'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E");
}

/* --- perk badges (each has its own icon and colour) ---------------------- */
.dogge-membership.dogge-membership.dogge-membership .dm-perk .badge{background-repeat:no-repeat; background-position:center; background-size:28px 28px}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(1) .badge{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23E8A33D'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E")}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(2) .badge{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 32' fill='%232DBDB0'%3E%3Ccircle cx='14' cy='10' r='9'/%3E%3Ccircle cx='14' cy='22' r='9'/%3E%3Ccircle cx='66' cy='10' r='9'/%3E%3Ccircle cx='66' cy='22' r='9'/%3E%3Crect x='12' y='11' width='56' height='10' rx='3'/%3E%3C/svg%3E")}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(3) .badge{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FF6F61'%3E%3Cpath d='M20 12a2 2 0 0 1 2-2V6H2v4a2 2 0 0 1 0 4v4h20v-4a2 2 0 0 1-2-2z'/%3E%3C/svg%3E")}
.dogge-membership.dogge-membership.dogge-membership .dm-perk:nth-child(4) .badge{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='%235AA9E6'%3E%3Ccircle cx='24' cy='12' r='4'/%3E%3Cpath d='M10 22c-2.4-8 4-12 9.4-11.4C21.2 5.6 30 5.6 31.6 11.6 39 11 43 17 40 23z'/%3E%3Cpath d='M12 25h24l-2.8 15a3.2 3.2 0 0 1-3.1 2.6H17.9a3.2 3.2 0 0 1-3.1-2.6z'/%3E%3C/svg%3E")}

/* --- the numbered paws on "how it works" -------------------------------- */
.dogge-membership.dogge-membership.dogge-membership .dm-step .pawnum{background:no-repeat center/contain; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='%2301008C'%3E%3Cellipse cx='32' cy='45' rx='15' ry='12'/%3E%3Cellipse cx='13' cy='31' rx='6' ry='8.5'/%3E%3Cellipse cx='24' cy='18' rx='5.5' ry='8'/%3E%3Cellipse cx='40' cy='18' rx='5.5' ry='8'/%3E%3Cellipse cx='51' cy='31' rx='6' ry='8.5'/%3E%3C/svg%3E")}

/* --- the progress strip: five stars, then a cup ------------------------- */
.dogge-membership.dogge-membership.dogge-membership .dm-progress .stars i{
  display:inline-block; width:34px; height:34px; background:no-repeat center/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23E8A33D'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E");
}
/* the cup is 48x64 in the sprite, so it renders 22x29.3 at this width — not square */
.dogge-membership.dogge-membership.dogge-membership .dm-progress .free::before{
  content:""; display:inline-block; width:22px; height:29.3px; margin-right:.4rem; vertical-align:-.45em;
  background:no-repeat center/contain; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 64' fill='%2301008C'%3E%3Crect x='9' y='20' width='30' height='7' rx='3'/%3E%3Cpath d='M12 28h24l-2.5 30a5 5 0 0 1-5 4.5h-9a5 5 0 0 1-5-4.5z'/%3E%3C/svg%3E");
}

/* --- the loyalty-card overlay on the hero photo -------------------------
   The card is absolutely positioned against .dm-photo. Elementor wraps it in a widget div that
   would become the containing block at zero width, which collapsed the card and wrapped its
   caption — so the wrapper is stretched over the photo instead. Star size matches the original's
   rendered 10.4px rather than the 16px its rule asks for. */
.dogge-membership.dogge-membership.dogge-membership .dm-photo > .elementor-widget-html{position:absolute; inset:0; pointer-events:none}
.dogge-membership.dogge-membership.dogge-membership .ph-stars .row i{
  /* The card is rotated 4deg, so a measured box is ~6.7% larger than the CSS size. The original's
     stars measure 10.4px rotated, i.e. 9.74px laid out. */
  display:block; width:9.74px; height:9.74px; flex:0 0 auto;
  background:no-repeat center/contain; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23E8A33D'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E");
}
.dogge-membership.dogge-membership.dogge-membership .ph-stars .row i.off{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23d9d2c4'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E")}

/* --- the "Online" / "In-store" join tags -------------------------------- */
.dogge-membership.dogge-membership.dogge-membership .dm-joincard .tag::before{
  content:""; display:inline-block; width:20px; height:20px; flex:0 0 auto;
  background:no-repeat center/contain; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23E8A33D'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E");
}
.dogge-membership.dogge-membership.dogge-membership .dm-joincard:nth-child(2) .tag::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='%23E8A33D'%3E%3Cellipse cx='32' cy='45' rx='15' ry='12'/%3E%3Cellipse cx='13' cy='31' rx='6' ry='8.5'/%3E%3Cellipse cx='24' cy='18' rx='5.5' ry='8'/%3E%3Cellipse cx='40' cy='18' rx='5.5' ry='8'/%3E%3Cellipse cx='51' cy='31' rx='6' ry='8.5'/%3E%3C/svg%3E")}

/* --- the paw watermarks ------------------------------------------------- */
.dogge-membership.dogge-membership.dogge-membership .dm-pawmark{display:block; background:no-repeat center/contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='%23ffffff'%3E%3Cellipse cx='32' cy='45' rx='15' ry='12'/%3E%3Cellipse cx='13' cy='31' rx='6' ry='8.5'/%3E%3Cellipse cx='24' cy='18' rx='5.5' ry='8'/%3E%3Cellipse cx='40' cy='18' rx='5.5' ry='8'/%3E%3Cellipse cx='51' cy='31' rx='6' ry='8.5'/%3E%3C/svg%3E")}

/* --- FAQ: Elementor's Toggle replaces <details>/<summary> ---------------- */
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-toggle .elementor-toggle-item{
  background:#fff; border:1px solid #ece6d8; border-radius:14px; overflow:hidden; margin-bottom:.7rem;
}
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-toggle .elementor-toggle-item:last-child{margin-bottom:0}
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-tab-title{
  cursor:pointer; padding:1rem 1.1rem; font-weight:700; color:var(--ink);
  display:flex; justify-content:space-between; gap:1rem; align-items:center; border:0;
}
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-tab-title .elementor-toggle-icon{order:2; float:none; width:auto}
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-tab-title .elementor-toggle-icon svg,
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-tab-title .elementor-toggle-icon i{display:none}
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-tab-title .elementor-toggle-icon::after{
  content:"+"; color:var(--indigo); font-size:1.4rem; font-weight:700; line-height:1.6;
  display:inline-block; transition:transform .2s ease;
}
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-tab-title.elementor-active .elementor-toggle-icon::after{transform:rotate(45deg)}
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-tab-content{padding:0 1.1rem 1.1rem; color:#3a3850; border:0;
  font-size:inherit; line-height:inherit}
.dogge-membership.dogge-membership.dogge-membership .dm-faq .elementor-tab-content > p{margin:0}

/* The page's own `.page_content_wrap{padding-top:1.25rem!important}` (carried over above) is a
   single class, and on this fullscreen layout the theme's own rule outranks it — the rebuilt page
   lost the 22.5px gap above the hero that the original has. Match the theme's specificity. */
body.body_style_fullscreen .page_content_wrap{padding-top:1.25rem!important}

@media (prefers-reduced-motion:no-preference){ html{scroll-behavior:smooth} }/* The theme gives any Elementor page side margins:
   `.post_content > .elementor{margin-inline:calc(-1 * var(--theme-var-elm_add_page_margins)/2)}`.
   The hand-coded original had no .elementor wrapper, so it never picked those up — leaving them
   makes every band 30px wider than the page it is replacing. This stylesheet is only enqueued on
   its own page, so an unscoped selector here cannot reach anything else. */
/* Repeated class: the theme's rule is the same specificity and its stylesheet loads after
   this one, so an identical selector would lose the tie. */
.post_content > .elementor.elementor{margin-left:0; margin-right:0}
/* The decorative paws were <svg> elements sized by `width` alone — their 1:1 viewBox supplied the
   height. Here they are <span>s painted with a background image, and an empty span has no height,
   so they kept their width and drew nothing at all. */
.dogge-membership.dogge-membership.dogge-membership .dg-paw-mark,
.dogge-membership.dogge-membership.dogge-membership .dc-paw-mark,
.dogge-membership.dogge-membership.dogge-membership .dp-paw-bg,
.dogge-membership.dogge-membership.dogge-membership .pawmark{aspect-ratio:1/1; height:auto}
/* `.pawnum` is positioned against the step card, but Elementor's HTML-widget wrapper is itself
   positioned and so became the containing block — which dropped the badge on top of the heading. */
.dogge-membership.dogge-membership.dogge-membership .dm-step > .elementor-widget-html{position:static}