/* ---------------------------------------------------------------------------
 * Elementor container reset
 * Containers arrive as flex boxes with their own padding, gap and width. The
 * page's own rules below decide all of that, so clear the defaults first.
 * --------------------------------------------------------------------------- */
.dogge-parties.dogge-parties.e-con, .dogge-parties.dogge-parties .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;

  /* Elementor containers default to flex-direction:column. Several of the page's own rules just
     say `display:flex` and expect CSS's normal default of row — without this the hero's three
     buttons stack and stretch to full width. Rules that want a column state so explicitly. */
  --flex-direction:row; flex-direction:row;
}
/* widgets must not add rhythm of their own */
.dogge-parties .elementor-widget:not(:last-child){margin-block-end:0}


.dogge-parties.dogge-parties.dogge-parties{
  --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; text-align:center;
}
.dogge-parties.dogge-parties.dogge-parties *{box-sizing:border-box}
.dogge-parties.dogge-parties.dogge-parties h1,.dogge-parties.dogge-parties.dogge-parties h2,.dogge-parties.dogge-parties.dogge-parties h3{font-family:"Comic Sans MS","Chalkboard SE","Comic Neue",cursive; line-height:1.08; color:var(--ink); margin:0}
.dogge-parties.dogge-parties.dogge-parties p{margin:0 0 1rem}
.dogge-parties.dogge-parties.dogge-parties a{color:var(--indigo)}
.dogge-parties.dogge-parties.dogge-parties .dp-sec.dp-sec{padding:clamp(2.2rem,5vw,4rem) clamp(1.1rem,4vw,2.4rem)}
.dogge-parties.dogge-parties.dogge-parties .ico{display:inline-block; vertical-align:middle; fill:currentColor}
.dogge-parties.dogge-parties.dogge-parties .dp-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-parties.dogge-parties.dogge-parties .dp-eyebrow .ico{width:15px; color:var(--gold)}
.dogge-parties.dogge-parties.dogge-parties .dp-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-parties.dogge-parties.dogge-parties .dp-btn:hover{transform:translateY(-3px); background:var(--indigo-2)}
.dogge-parties.dogge-parties.dogge-parties .dp-btn .ico{width:18px; color:var(--gold)}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--ghost{background:transparent; color:#fff !important; box-shadow:none; border:2px solid rgba(255,255,255,.5)}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--ghost .ico{color:#fff}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--ghost:hover{background:rgba(255,255,255,.14); border-color:#fff}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--light{background:#fff; color:var(--indigo) !important; box-shadow:0 14px 30px -16px rgba(0,0,0,.4)}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--light .ico{color:var(--gold)}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--light:hover{background:#fff; color:var(--indigo) !important}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--gold{background:var(--gold); color:var(--indigo) !important; box-shadow:0 14px 30px -16px rgba(232,163,61,.7)}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--gold .ico{color:var(--indigo)}
.dogge-parties.dogge-parties.dogge-parties .dp-btn--gold:hover{background:#f2b455; color:var(--indigo) !important}
.dogge-parties.dogge-parties.dogge-parties .dp-lead{font-size:clamp(1.05rem,2.1vw,1.25rem); color:#34324f; max-width:58ch; margin-left:auto; margin-right:auto}
.dogge-parties.dogge-parties.dogge-parties h2{font-size:clamp(1.8rem,4vw,2.7rem)}
.dogge-parties.dogge-parties.dogge-parties .dp-head{max-width:60ch; margin:0 auto 1.8rem}
.dogge-parties.dogge-parties.dogge-parties .dp-cta{display:flex; flex-wrap:wrap; gap:.8rem; justify-content:center; margin-top:1.5rem}
.dogge-parties.dogge-parties.dogge-parties .dp-hero{position:relative; overflow:hidden; border-radius:30px; margin:1rem clamp(.4rem,2vw,1rem) 0; color:#fff;
  background:radial-gradient(120% 130% at 50% 0,#2b2aa6 0,var(--indigo) 55%,var(--indigo-d) 100%);
  padding:clamp(2.6rem,6vw,4.4rem) clamp(1.3rem,5vw,3rem) clamp(2.4rem,5vw,3.4rem)}
.dogge-parties.dogge-parties.dogge-parties .dp-hero::after{content:""; position:absolute; inset:0; pointer-events:none; opacity:.14;
  background-image:none; background-size:90px 90px;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 45%); mask-image:linear-gradient(180deg,transparent,#000 45%)}
.dogge-parties.dogge-parties.dogge-parties .dp-garland{position:relative; z-index:2; display:flex; justify-content:center; align-items:flex-start;
  gap:30px; max-width:430px; margin:0 auto 2.2rem; padding-top:3px}
.dogge-parties.dogge-parties.dogge-parties .dp-garland::before{content:""; position:absolute; left:0; right:0; top:0; height:2px; border-radius:2px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55) 14%,rgba(255,255,255,.55) 86%,transparent)}
.dogge-parties.dogge-parties.dogge-parties .dp-ball{position:relative; flex:0 0 auto; width:var(--sz,30px); height:var(--sz,30px); border-radius:50%;
  margin-top:var(--drop,24px);
  background:repeating-linear-gradient(0deg,rgba(10,10,45,.22) 0 1px,transparent 1px 6px),
    repeating-linear-gradient(90deg,rgba(10,10,45,.22) 0 1px,transparent 1px 6px),
    radial-gradient(circle at 32% 26%,#fff 0 10%,#e7edfb 26%,#a8b8db 58%,#6272a0 100%);
  box-shadow:0 0 16px rgba(190,215,255,.5), 0 8px 16px -8px rgba(0,0,0,.5), inset -4px -6px 12px rgba(20,20,60,.35);
  animation:dp-shimmer 3.2s ease-in-out infinite}
.dogge-parties.dogge-parties.dogge-parties .dp-ball::before{content:""; position:absolute; left:50%; top:calc(-1 * var(--drop,24px)); width:1px;
  height:var(--drop,24px); background:rgba(255,255,255,.45)}
.dogge-parties.dogge-parties.dogge-parties .dp-ball:nth-child(2n){animation-delay:.8s}
.dogge-parties.dogge-parties.dogge-parties .dp-ball:nth-child(3n){animation-delay:1.6s}
@keyframes dp-shimmer{
0%,100%{filter:brightness(1)}
50%{filter:brightness(1.25)}}
.dogge-parties.dogge-parties.dogge-parties .dp-sparkles{position:absolute; inset:0; pointer-events:none; z-index:1}
.dogge-parties.dogge-parties.dogge-parties .dp-sparkles i{position:absolute; width:var(--s,14px); height:var(--s,14px); background:#fff;
  clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%);
  filter:drop-shadow(0 0 6px rgba(255,255,255,.75)); animation:dp-twinkle 2.8s ease-in-out infinite}
.dogge-parties.dogge-parties.dogge-parties .dp-sparkles i.g{background:var(--gold); filter:drop-shadow(0 0 7px rgba(232,163,61,.85))}
@keyframes dp-twinkle{
0%,100%{opacity:.2; transform:scale(.65) rotate(0)}
50%{opacity:1; transform:scale(1) rotate(18deg)}}
.dogge-parties.dogge-parties.dogge-parties .dp-hero__in{position:relative; z-index:2}
.dogge-parties.dogge-parties.dogge-parties .dp-hero .dp-eyebrow{background:rgba(255,255,255,.16); color:#fff}
.dogge-parties.dogge-parties.dogge-parties .dp-hero .dp-eyebrow .ico{color:var(--gold)}
.dogge-parties.dogge-parties.dogge-parties .dp-hero h1{color:#fff; font-size:clamp(2.1rem,5.2vw,3.5rem); max-width:24ch; margin:0 auto .85rem}
.dogge-parties.dogge-parties.dogge-parties .dp-hero .dp-lead{color:#e9e8ff}
.dogge-parties.dogge-parties.dogge-parties .dp-chips{display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; margin-top:1.4rem}
.dogge-parties.dogge-parties.dogge-parties .dp-chip{display:inline-flex; align-items:center; gap:.45rem; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.3);
  color:#fff; font-weight:700; font-size:.85rem; padding:.45rem .9rem; border-radius:var(--pill)}
.dogge-parties.dogge-parties.dogge-parties .dp-chip .ico{width:16px; color:var(--gold)}
.dogge-parties.dogge-parties.dogge-parties .dp-paw-bg{position:absolute; z-index:1; fill:#fff; pointer-events:none}
.dogge-parties.dogge-parties.dogge-parties .dp-paw-bg.a{left:4%; top:16%; width:78px; opacity:.10; transform:rotate(-18deg)}
.dogge-parties.dogge-parties.dogge-parties .dp-paw-bg.b{right:5%; bottom:12%; width:120px; opacity:.08; transform:rotate(14deg)}
@media (max-width:600px){
.dogge-parties.dogge-parties.dogge-parties .dp-paw-bg.a{width:54px}
.dogge-parties.dogge-parties.dogge-parties .dp-paw-bg.b{width:80px} }
.dogge-parties.dogge-parties.dogge-parties .dp-photo{margin:1.2rem clamp(.4rem,2vw,1rem) 0; height:clamp(200px,34vw,360px); border-radius:26px; overflow:hidden;
  background-color:#1b1830; background-size:cover; background-position:center; background-repeat:no-repeat;
  border:1px solid #ece6d8; box-shadow:0 22px 50px -26px rgba(1,0,140,.4)}
.dogge-parties.dogge-parties.dogge-parties .dp-checks{display:grid; gap:1rem; grid-template-columns:repeat(4,1fr)}
.dogge-parties.dogge-parties.dogge-parties .dp-check{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-parties.dogge-parties.dogge-parties .dp-check:hover{transform:translateY(-4px); box-shadow:0 26px 50px -26px rgba(1,0,140,.4)}
.dogge-parties.dogge-parties.dogge-parties .dp-check .badge{width:52px; height:52px; border-radius:16px; display:grid; place-items:center; margin:0 auto .7rem; background:var(--ring)}
.dogge-parties.dogge-parties.dogge-parties .dp-check .badge .ico{width:28px; color:var(--indigo)}
.dogge-parties.dogge-parties.dogge-parties .dp-check h3{font-size:1.1rem; margin-bottom:.25rem; color:var(--indigo)}
.dogge-parties.dogge-parties.dogge-parties .dp-check p{font-size:.93rem; color:#3a3850; margin:0}
.dogge-parties.dogge-parties.dogge-parties .dp-spend{background:linear-gradient(135deg,#fff,#f6f4ff); border:2px solid var(--indigo); border-radius:20px;
  padding:1.5rem 1.2rem; display:flex; flex-direction:column; align-items:center; justify-content:center}
.dogge-parties.dogge-parties.dogge-parties .dp-spend .big{font-family:"Comic Sans MS",cursive; font-size:clamp(1.35rem,2.2vw,1.7rem); color:var(--indigo)}
.dogge-parties.dogge-parties.dogge-parties .dp-spend p{color:#3a3850; font-size:.9rem; margin:.4rem 0 0}
.dogge-parties.dogge-parties.dogge-parties .dp-spend .deposit{display:inline-flex; align-items:center; gap:.4rem; margin-top:.8rem; background:var(--ring); color:var(--indigo);
  font-weight:800; font-size:.78rem; padding:.45rem .8rem; border-radius:var(--pill); text-align:left}
.dogge-parties.dogge-parties.dogge-parties .dp-spend .deposit .ico{width:16px; flex:0 0 auto; color:var(--gold)}
.dogge-parties.dogge-parties.dogge-parties .dp-duo{display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; margin:1.6rem clamp(.4rem,2vw,1rem); align-items:stretch}
.dogge-parties.dogge-parties.dogge-parties .dp-duo>.dp-cake-band,.dogge-parties.dogge-parties.dogge-parties .dp-duo>.dp-band{margin:0; display:flex; flex-direction:column; align-items:center; justify-content:center}
.dogge-parties.dogge-parties.dogge-parties .dp-addons{display:grid; gap:1.2rem; grid-template-columns:repeat(3,1fr)}
.dogge-parties.dogge-parties.dogge-parties .dp-add{background:#fff; border:1px solid #ece6d8; border-radius:22px; overflow:hidden; text-decoration:none; color:var(--ink);
  display:flex; flex-direction:column; box-shadow:0 12px 30px -24px rgba(23,21,50,.6); transition:transform .2s ease, box-shadow .2s ease}
.dogge-parties.dogge-parties.dogge-parties .dp-add:hover{transform:translateY(-5px); box-shadow:0 28px 52px -26px rgba(1,0,140,.42)}
.dogge-parties.dogge-parties.dogge-parties .dp-add .pic{height:150px; background-size:cover; background-position:center; background-color:var(--cream-2)}
.dogge-parties.dogge-parties.dogge-parties .dp-add .body{padding:1.2rem 1.2rem 1.4rem}
.dogge-parties.dogge-parties.dogge-parties .dp-add h3{font-size:1.2rem; color:var(--indigo); margin-bottom:.2rem}
.dogge-parties.dogge-parties.dogge-parties .dp-add p{font-size:.92rem; color:#3a3850; margin:0 0 .5rem}
.dogge-parties.dogge-parties.dogge-parties .dp-add .go{font-weight:800; color:var(--indigo)}
.dogge-parties.dogge-parties.dogge-parties .dp-band{position:relative; overflow:hidden; color:#fff; border-radius:26px; margin:1.6rem clamp(.4rem,2vw,1rem);
  padding:clamp(2.2rem,5vw,3.4rem) 1.4rem; background:radial-gradient(120% 150% at 0 0,#2b2aa6 0,var(--indigo) 60%,var(--indigo-d) 100%)}
.dogge-parties.dogge-parties.dogge-parties .dp-band h2{color:#fff}
.dogge-parties.dogge-parties.dogge-parties .dp-band p{color:#e9e8ff; max-width:48ch; margin:.4rem auto 1.2rem}
.dogge-parties.dogge-parties.dogge-parties .dp-cake-band{background:var(--cream-2); border:1px dashed var(--indigo); color:var(--ink); border-radius:24px; margin:1.6rem clamp(.4rem,2vw,1rem)}
.dogge-parties.dogge-parties.dogge-parties .dp-cake-band h2{color:var(--indigo)}
.dogge-parties.dogge-parties.dogge-parties .dp-cake-band p{color:#3a3850; max-width:50ch; margin:.4rem auto 1.2rem}
.dogge-parties.dogge-parties.dogge-parties .dp-policy{background-color:var(--cream); background-image:none; background-size:120px 120px; border-radius:24px; margin:1.6rem clamp(.4rem,2vw,1rem)}
.dogge-parties.dogge-parties.dogge-parties .dp-policy .callout{background:#fff; border-left:6px solid var(--indigo); border-radius:0 16px 16px 0; text-align:left;
  padding:1.4rem 1.6rem; max-width:680px; margin:0 auto; box-shadow:0 12px 30px -26px rgba(23,21,50,.7)}
.dogge-parties.dogge-parties.dogge-parties .dp-policy .callout p{margin:0 0 .6rem}
.dogge-parties.dogge-parties.dogge-parties .dp-policy .callout p:last-child{margin:0}
.dogge-parties.dogge-parties.dogge-parties .dp-faq{display:grid; gap:.7rem; max-width:760px; margin:0 auto; text-align:left}
.dogge-parties.dogge-parties.dogge-parties details{background:#fff; border:1px solid #ece6d8; border-radius:14px; overflow:hidden}
.dogge-parties.dogge-parties.dogge-parties 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-parties.dogge-parties.dogge-parties summary::-webkit-details-marker{display:none}
.dogge-parties.dogge-parties.dogge-parties summary::after{content:"+"; color:var(--indigo); font-size:1.4rem; font-weight:700; transition:transform .2s ease}
.dogge-parties.dogge-parties.dogge-parties details[open] summary::after{transform:rotate(45deg)}
.dogge-parties.dogge-parties.dogge-parties details .a{padding:0 1.1rem 1.1rem; color:#3a3850}

@media (max-width:1100px){
.dogge-parties.dogge-parties.dogge-parties .dp-checks{grid-template-columns:1fr 1fr} }
@media (max-width:860px){
.dogge-parties.dogge-parties.dogge-parties .dp-checks{grid-template-columns:1fr}
.dogge-parties.dogge-parties.dogge-parties .dp-addons{grid-template-columns:1fr}
.dogge-parties.dogge-parties.dogge-parties .dp-duo{grid-template-columns:1fr} }
@media (max-width:600px){
.dogge-parties.dogge-parties.dogge-parties .dp-sec.dp-sec{padding:2rem 1.1rem}
.dogge-parties.dogge-parties.dogge-parties .dp-hero{border-radius:22px}
.dogge-parties.dogge-parties.dogge-parties .dp-cta .dp-btn{flex:1 1 auto; justify-content:center}
.dogge-parties.dogge-parties.dogge-parties .dp-garland{gap:16px; max-width:100%} }
@media (prefers-reduced-motion:reduce){
.dogge-parties.dogge-parties.dogge-parties *{transition:none!important; animation: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
 *
 * The page is now built from Elementor containers and widgets rather than raw
 * HTML. Everything above still applies because the same class names are on the
 * same elements — these rules only cover the places where Elementor's own
 * markup differs from what the original CSS expected.
 * ========================================================================== */

/* Elementor wraps each widget in a div. Those wrappers must not introduce
   spacing or become flex/grid items in their own right. */
.dogge-parties.dogge-parties.dogge-parties .elementor-widget{margin:0}
.dogge-parties.dogge-parties.dogge-parties .elementor-widget-container{margin:0}

/* Widget wrappers default to full width, which would stack the hero's three
   buttons instead of sitting them in a row. Let them size to their content
   inside the flex rows. */
.dogge-parties.dogge-parties.dogge-parties .dp-cta > .elementor-widget,
.dogge-parties.dogge-parties.dogge-parties .dp-cake-band > .elementor-widget,
.dogge-parties.dogge-parties.dogge-parties .dp-band > .elementor-widget-button{width:auto; flex:0 0 auto}

/* --- buttons -------------------------------------------------------------
   Elementor's Button widget renders <a class="elementor-button">, so the
   .dp-btn styling is re-pointed at it verbatim below. The declarations are
   lifted straight from the original rules rather than retyped, because these
   pages run on an 18px root font-size and hand-copied rem values come out
   wrong. The label stays editable in Elementor. */

/* The original .dp-btn set no font-size or line-height, so it inherited the page's 18px/1.6.
   Elementor's button widget ships its own (15px/1), which made every button 15px shorter — take
   the inherited values back. */
.dogge-parties.dogge-parties.dogge-parties .dp-btn-w .elementor-button{font-size:inherit; line-height:inherit}

/* icons sit before the label, drawn from the sprite as background images.
   18px matches the original `.dp-btn .ico{width:18px}`. */
.dogge-parties.dogge-parties.dogge-parties .dp-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;
}
.dogge-parties.dogge-parties.dogge-parties .dp-btn-w .elementor-button .elementor-button-content-wrapper{align-items:center}
/* The original icons were <svg> inheriting the button's `color`, so on the gold button the star is
   indigo — not gold, which would be invisible against the gold background. */
.dogge-parties.dogge-parties.dogge-parties .dp-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-parties.dogge-parties.dogge-parties .dp-btn-w--light .elementor-button .elementor-button-text::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='%23E8A33D'%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")}
.dogge-parties.dogge-parties.dogge-parties .dp-btn-w--ghost .elementor-button .elementor-button-text::before{content:none}

/* --- eyebrows ------------------------------------------------------------
   The eyebrow's leading icon was an inline <svg class="ico">; it is a ::before
   now so the wording stays a plain editable string. 15px matches the original
   `.dp-eyebrow .ico{width:15px}`. */
.dogge-parties.dogge-parties.dogge-parties .dp-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");
}
.dogge-parties.dogge-parties.dogge-parties .dp-hero .dp-eyebrow::before{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-parties.dogge-parties.dogge-parties .dp-eyebrow--treat::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='%23E8A33D'%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")}
.dogge-parties.dogge-parties.dogge-parties .dp-eyebrow--heart::before{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 21s-8-5.3-8-11a4.5 4.5 0 0 1 8-2.9A4.5 4.5 0 0 1 20 10c0 5.7-8 11-8 11z'/%3E%3C/svg%3E")}

/* the three "what's included" badges */
.dogge-parties.dogge-parties.dogge-parties .dp-check .badge{background-repeat:no-repeat; background-position:center; background-size:28px 28px}
.dogge-parties.dogge-parties.dogge-parties .dp-check--area  .badge{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-parties.dogge-parties.dogge-parties .dp-check--hours .badge{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 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm0 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm1-13h-2v6l5 3 1-1.7-4-2.3z'/%3E%3C/svg%3E")}
.dogge-parties.dogge-parties.dogge-parties .dp-check--decor .badge{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='%2301008C'%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")}
.dogge-parties.dogge-parties.dogge-parties .dp-spend .deposit::before{
  content:""; display:inline-block; width:1em; height:1em; margin-right:.4rem;
  vertical-align:-.14em; 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='%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");
}

/* The two hero paw watermarks were <svg class="dp-paw-bg"><use href="#dg-paw">.
   The sprite does not survive Elementor's editor, so they are drawn from the
   same path as a background instead. .dp-paw-bg keeps its original position,
   size and opacity from the rules above. */
.dogge-parties.dogge-parties.dogge-parties .dg-paw-mark{
  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 widget replaces <details>/<summary>. Same look: white
   card, bold question, a "+" that turns into a "x" when open. */
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-toggle .elementor-toggle-item{
  background:#fff; border:1px solid #ece6d8; border-radius:14px; overflow:hidden; margin-bottom:.7rem;
}
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-toggle .elementor-toggle-item:last-child{margin-bottom:0}
.dogge-parties.dogge-parties.dogge-parties .dp-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-parties.dogge-parties.dogge-parties .dp-faq .elementor-tab-title .elementor-toggle-icon{order:2; float:none; width:auto}
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-tab-title .elementor-toggle-icon svg,
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-tab-title .elementor-toggle-icon i{display:none}
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-tab-title .elementor-toggle-icon::after{
  content:"+"; color:var(--indigo); font-size:1.4rem; font-weight:700;
  /* the original was a <summary>::after inheriting the page's 1.6 line-height; Elementor's icon
     span sets its own, which made every question 6px shorter */
  line-height:1.6;
  display:inline-block; transition:transform .2s ease;
}
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-tab-title.elementor-active .elementor-toggle-icon::after{transform:rotate(45deg)}
/* The original answer was bare text inside a <div class="a">; Elementor's toggle content holds a
   <p>, whose page margins would add 15px that the hand-coded version never had. */
/* inherit the page's type like the original `.a` did — Elementor's toggle sets its own, which
   left each answer 3px short */
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-tab-content{padding:0 1.1rem 1.1rem; color:#3a3850; border:0;
  font-size:inherit; line-height:inherit}
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-tab-content > p{margin:0}
.dogge-parties.dogge-parties.dogge-parties .dp-faq .elementor-tab-content > p:last-child{margin-bottom:0}

/* --- smooth scrolling ----------------------------------------------------
   Replaces the inline <script> the hand-coded page carried. */
@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-parties.dogge-parties.dogge-parties .dg-paw-mark,
.dogge-parties.dogge-parties.dogge-parties .dc-paw-mark,
.dogge-parties.dogge-parties.dogge-parties .dp-paw-bg,
.dogge-parties.dogge-parties.dogge-parties .pawmark{aspect-ratio:1/1; height:auto}
/* The original carried `style="background:transparent"` on this section so the page's watermark
   shows through it. A container cannot bring an inline style across, and the rule underneath paints
   it cream — which hid the watermark. */
.dogge-parties.dogge-parties.dogge-parties .dp-policy{background-color:transparent}