/* Scoped anniversary promotion styles – independent of Divi modules. */
#mdj-anniversary, .mdj-campaign-page { --mdj-cream:#faf1ea; --mdj-mauve:#8c6460; --mdj-text:#785b57; --mdj-blush:#e5cec5; --mdj-ink:#272222; box-sizing:border-box; }
#mdj-anniversary *, .mdj-campaign-page * { box-sizing:border-box; }
#mdj-anniversary { position:fixed; inset:auto 21px 21px auto; z-index:2147481000; max-width:calc(100vw - 30px); font-family:inherit; line-height:1.4; }
#mdj-anniversary [hidden] { display:none !important; }
#mdj-anniversary .mdj-panel { position:relative; display:flex; flex-direction:row; width:min(628px,calc(100vw - 30px)); min-height:370px; max-height:calc(100dvh - 36px); overflow:hidden; background:var(--mdj-cream); border-radius:7px; box-shadow:0 8px 35px rgba(39,34,34,.18); border:1px solid rgba(100,70,62,.11); animation:mdj-enter .34s ease-out both; }
#mdj-anniversary .mdj-panel-copy { order:0; flex:1 1 57%; min-width:0; display:flex; flex-direction:column; align-items:flex-start; padding:41px 35px 34px 38px; overflow-y:auto; scrollbar-width:thin; }
#mdj-anniversary .mdj-panel-photo { order:1; flex:0 0 39%; background-position:center 27%; background-size:cover; background-repeat:no-repeat; background-color:#d8c8bc; min-height:100%; }
#mdj-anniversary .mdj-eyebrow,.mdj-campaign-page .mdj-eyebrow { color:var(--mdj-mauve); text-transform:uppercase; font-family:inherit; font-weight:600; font-size:10px; line-height:1.5; letter-spacing:1.6px; margin:0 0 19px; }
#mdj-anniversary .mdj-panel-title { color:var(--mdj-mauve); font-family:inherit; font-size:clamp(29px,2.5vw,39px); line-height:1.08; font-weight:300; letter-spacing:-1.25px; margin:0 0 18px; padding:0; text-transform:none; }
#mdj-anniversary .mdj-panel-description { color:var(--mdj-mauve); font-family:inherit; font-size:14px; line-height:1.66; font-weight:400; margin:0 0 26px; }
#mdj-anniversary .mdj-button, .mdj-campaign-page .mdj-button { display:inline-flex; justify-content:center; align-items:center; gap:15px; color:#684e49 !important; background:var(--mdj-blush); border:0; border-radius:3px; font-family:inherit; font-size:12px; font-weight:600; line-height:1.35; letter-spacing:.25px; text-align:center; padding:15px 20px; margin-top:auto; text-decoration:none !important; box-shadow:none; transition:background .18s ease,transform .18s ease; }
#mdj-anniversary .mdj-button:hover,.mdj-campaign-page .mdj-button:hover {background:#dac0b6;transform:translateY(-1px);}
#mdj-anniversary .mdj-button:focus-visible,#mdj-anniversary button:focus-visible,.mdj-campaign-page .mdj-button:focus-visible { outline:3px solid #6b4944; outline-offset:3px; }
#mdj-anniversary .mdj-close { position:absolute; top:12px; right:12px; z-index:3; display:flex; justify-content:center; align-items:center; width:38px; height:38px; background:rgba(37,29,27,.39); color:#fff; border:0; border-radius:50%; padding:0; margin:0; font-size:29px; font-weight:300; line-height:1; cursor:pointer; transition:background .2s ease; }
#mdj-anniversary .mdj-close:hover { background:rgba(37,29,27,.75); }
#mdj-anniversary .mdj-launcher { display:flex; align-items:center; gap:10px; border:1px solid rgba(140,100,96,.2); border-radius:100px; color:var(--mdj-mauve); background:var(--mdj-cream); padding:12px 16px; box-shadow:0 5px 20px rgba(40,29,28,.17); font-family:inherit; font-size:13px; font-weight:600; line-height:1.3; cursor:pointer; }
#mdj-anniversary .mdj-launcher:hover { background:#f5e8de; }
#mdj-anniversary .mdj-launcher-dot { width:8px; height:8px; background:var(--mdj-mauve); border-radius:50%; }
@keyframes mdj-enter { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:670px) {
  #mdj-anniversary { inset:auto 10px 10px 10px; max-width:none; }
  #mdj-anniversary .mdj-panel { flex-direction:column; width:100%; max-height:min(86dvh,720px); overflow-y:auto; min-height:0; }
  #mdj-anniversary .mdj-panel-photo { order:0; flex:none; height:155px; min-height:155px; background-position:center 24%; }
  #mdj-anniversary .mdj-panel-copy { order:1; padding:22px 24px 25px; overflow:visible; }
  #mdj-anniversary .mdj-panel-title { font-size:clamp(27px,6vw,34px); line-height:1.12; letter-spacing:-.7px; margin-bottom:14px; }
  #mdj-anniversary .mdj-eyebrow { font-size:9px; margin-bottom:11px; }
  #mdj-anniversary .mdj-panel-description { font-size:13px; line-height:1.55; margin-bottom:16px; }
  #mdj-anniversary .mdj-button { width:100%; margin-top:0; }
  #mdj-anniversary .mdj-close { top:9px; right:9px; }
  #mdj-anniversary .mdj-launcher { width:max-content; max-width:100%; margin-left:auto; }
}
@media (max-width:380px) and (max-height:700px) { #mdj-anniversary .mdj-panel-photo { height:100px; min-height:100px; } #mdj-anniversary .mdj-panel-copy {padding:16px 20px;} #mdj-anniversary .mdj-panel-title{font-size:26px;} }
@media (prefers-reduced-motion:reduce) { #mdj-anniversary .mdj-panel { animation:none; } #mdj-anniversary .mdj-button { transition:none; } }
/* Campaign page – design isolated from Divi's generic section styles */
.mdj-campaign-page { color:var(--mdj-text); margin:20px auto 80px; max-width:1170px; font-family:inherit; }
.mdj-campaign-hero { background:var(--mdj-cream); display:grid; grid-template-columns:1.25fr .75fr; align-items:stretch; min-height:455px; border-radius:5px; overflow:hidden; }
.mdj-campaign-hero-copy { padding:clamp(30px,5vw,80px); display:flex; flex-direction:column; justify-content:center; }
.mdj-campaign-page .mdj-campaign-hero h1 {font-family:Georgia,'Times New Roman',serif; font-weight:400; color:#312d2b; font-size:clamp(34px,4vw,59px);line-height:1.09; letter-spacing:-1px; margin:0 0 24px; padding:0; }
.mdj-campaign-page .mdj-campaign-lead { font-size:17px; line-height:1.7; margin:0 0 18px; }
.mdj-campaign-page .mdj-campaign-time {font-size:12px;letter-spacing:1.25px;text-transform:uppercase;margin:10px 0 0; font-weight:600;color:var(--mdj-mauve);}
.mdj-campaign-hero-photo {min-height:400px;background:#d9c9c1;overflow:hidden;}
.mdj-campaign-hero-photo img {display:block;width:100%;height:100%;object-fit:cover;object-position:center 26%;}
.mdj-campaign-content {max-width:1050px;margin:0 auto;padding:60px 25px; font-size:16px;line-height:1.72;}
.mdj-campaign-content h2 {font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(29px,3.4vw,41px);line-height:1.2;text-align:center;color:#302a28;margin:28px 0 34px;padding:0;}
.mdj-campaign-content h3 {color:var(--mdj-mauve);font-family:inherit;font-weight:400;font-size:24px;line-height:1.3;margin:0 0 13px;padding:0;}
.mdj-campaign-content .mdj-offers-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:0 auto 70px;}
.mdj-campaign-content .mdj-offer-card {padding:28px 23px;background:var(--mdj-cream);border:1px solid #eaddd4;border-radius:5px;}
.mdj-campaign-content .mdj-offer-card p {font-size:15px;line-height:1.65;margin:0 0 12px;}
.mdj-campaign-content .mdj-offer-card .mdj-offer-tag {font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:var(--mdj-mauve);font-weight:600;margin:0 0 16px;}
.mdj-campaign-content .mdj-price {display:flex;gap:11px;align-items:baseline; flex-wrap:wrap;}
.mdj-campaign-content .mdj-price del { color:#99817a; }
.mdj-campaign-content .mdj-price strong {font-size:23px;color:var(--mdj-mauve);}
.mdj-campaign-content ul {max-width:780px;margin:0 auto;padding-left:25px;}
.mdj-campaign-content li {margin-bottom:9px;}
.mdj-campaign-content > p {max-width:780px;margin:22px auto;}
.mdj-campaign-footer {text-align:center;padding:43px 20px 49px;background:var(--mdj-cream);}
.mdj-campaign-footer p {margin:0 0 22px;font-size:16px;}
.mdj-campaign-page .mdj-button {margin:0;}
@media(max-width:800px) { .mdj-campaign-hero {grid-template-columns:1fr;} .mdj-campaign-hero-photo {min-height:280px; max-height:350px;order:-1;} .mdj-campaign-content .mdj-offers-grid {grid-template-columns:1fr;} .mdj-campaign-content {padding:35px 15px;} .mdj-campaign-hero-copy{padding:30px;} }
