/* Party-DJ: locally scoped coastal presentation. */
body.page-id-35 .sunny-prose{max-width:none}
body.sunny-site .sunny-party{font-size:16px;line-height:1.75}
body.sunny-site .sunny-party h2{font-size:clamp(28px,3vw,40px);line-height:1.2;margin:0 0 20px!important}
body.sunny-site .sunny-party h3{font-size:24px;line-height:1.25;margin:0 0 14px!important}
body.sunny-site .sunny-party .sunny-eyebrow{color:var(--sunny-copper);font-size:11px}
body.sunny-site .sunny-party .sunny-button{text-decoration:none!important;font-size:15px}
body.sunny-site .sunny-party .sunny-button.primary{color:var(--sunny-ink)!important}
.sunny-party .sunny-actions{margin-top:25px}
.sp-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center;padding:4px 0 36px}
body.sunny-site .sp-hero h2{font-size:clamp(34px,3.6vw,49px)}
body.sunny-site .sp-hero .sunny-lead{font-size:22px;line-height:1.5}
.sp-hero figure{margin:0!important;border:1px solid #e8a07066;border-radius:14px;overflow:hidden;background:#102b3d}
body.sunny-site .sp-hero img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
body.sunny-site .sp-hero figcaption{font-size:11px;color:#d4dfe6;padding:12px 16px;margin:0}
.sp-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-top:1px solid #e8a07055;border-bottom:1px solid #e8a07055;padding:24px 0;margin-bottom:4px}
body.sunny-site .sp-highlights p{margin:0}
.sp-highlights strong{display:block;font-size:16px;font-weight:600}
.sp-highlights span{display:block;font-size:13px;color:#c6d4de;margin-top:4px}
.sp-section{padding:40px 0;border-bottom:1px solid #ffffff26;scroll-margin-top:115px}
.sp-occasions,.sp-steps,.sp-extras{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}
.sp-occasions article{padding:26px;border:1px solid #e8a07044;border-radius:12px;background:linear-gradient(145deg,#e8a0700d,#061c2c80)}
.sp-occasions article>span{display:block;font:italic 29px Georgia,serif;color:var(--sunny-copper);margin-bottom:20px}
.sp-occasions p,.sp-steps p{font-size:15px;margin:0}
body.sunny-site .sp-note{font-size:12px;color:#c6d4de;line-height:1.6;margin:22px 0 0}
.sp-music{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.sp-music aside,.sp-cta{padding:30px;border:1px solid #e8a07066;border-radius:12px;background:linear-gradient(125deg,#e8a07017,#071e2f)}
.sp-music aside p,.sp-music li{font-size:15px}
.sp-music ul{padding-left:20px}
.sp-steps article{border-top:2px solid #e8a07099;padding-top:22px}
.sp-steps article>span,.sp-extras>a>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--sunny-copper);margin-bottom:14px}
body.sunny-site .sp-extras>a{display:block;padding:26px;border:1px solid #e8a07055;border-radius:12px;background:#051b2966;color:#e4e9ee!important;text-decoration:none!important;transition:background .18s,border-color .18s}
body.sunny-site .sp-extras>a:hover{background:#163749;border-color:#e8a070}
.sp-extras p{font-size:15px}
.sp-extras strong{font-size:14px;color:#ffc49a!important}
.sp-videos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.sp-videos figure{min-width:0;margin:0!important;padding:10px;border:1px solid #e8a07044;border-radius:12px;background:#061b2a}
body.sunny-site .sp-videos video{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;background:#041521;border-radius:7px}
body.sunny-site .sp-videos figcaption{font-size:12px;color:#d4dfe6;padding:12px 4px 3px;line-height:1.5;text-align:center}
.sp-faq details{padding:18px 0;border-bottom:1px solid #ffffff26}
.sp-faq details:last-child{border-bottom:0}
.sp-faq summary{cursor:pointer;font-weight:600;color:#fffaf5;min-height:30px}
body.sunny-site .sp-faq details p{font-size:15px;max-width:850px;margin:14px 0 0}
.sp-cta{margin-top:38px}
body.page-id-35 .sunny-related{display:none}
@media(max-width:1000px){.sp-hero{gap:26px;grid-template-columns:1fr 1fr}.sp-music{gap:26px}.sp-occasions,.sp-steps,.sp-extras{gap:16px}.sp-occasions article,.sp-extras>a{padding:20px}}
@media(max-width:767px){.sp-hero,.sp-music{grid-template-columns:1fr;gap:26px}.sp-occasions,.sp-steps,.sp-extras,.sp-videos{grid-template-columns:1fr}.sp-highlights{grid-template-columns:1fr;gap:17px;padding:23px 0}.sp-hero{padding-bottom:28px}.sp-hero figure{max-width:520px;width:100%}body.sunny-site .sp-hero img{aspect-ratio:4/3;object-position:center}.sp-section{padding:30px 0}.sp-music aside,.sp-cta{padding:24px}.sp-cta{margin-top:28px}.sp-videos{max-width:480px;margin-inline:auto}.sunny-party .sunny-button{white-space:normal;text-align:center}}
@media(prefers-reduced-motion:reduce){body.sunny-site .sp-extras>a{transition:none}}

.sp-occasions{grid-template-columns:repeat(2,minmax(0,1fr))}
body.sunny-site .sp-occasions article>span{font:600 11px/1.5 Arial,sans-serif;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:16px}
.sp-extras{grid-template-columns:repeat(2,minmax(0,1fr))}
.sp-tech{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:center}
.sp-tech figure{margin:0!important;overflow:hidden;border:1px solid #e8a07055;border-radius:12px;background:#071e2f}
.sp-tech figure a{display:block}
body.sunny-site .sp-tech img{display:block;width:100%;height:auto}
body.sunny-site .sp-tech figcaption{padding:12px 16px;margin:0;font-size:12px;color:#d4dfe6}
@media(max-width:767px){.sp-occasions,.sp-extras,.sp-tech{grid-template-columns:1fr}.sp-tech{gap:26px}}

