/* Restraint pass. One idea per area: the hero keeps its light discs, the
   closing band keeps its script sign, and everything else goes quiet. */

/* sparkles and the scripted aside go */
body.core-swan .star,.sw-close .star{display:none !important}
body.core-swan .hero-script{display:none !important}
/* hero light: fewer, fainter */
body.core-swan .hero-bokeh i:nth-child(n+6){display:none}
body.core-swan .hero-bokeh i{opacity:calc(var(--o)*.7)}

/* section grounds: flat, no floating circles */
body.core-swan{--bokeh:none}
body.core-swan #svc,body.core-swan .results,body.core-swan .qa{background:#FFFAFB !important}
body.sw-page{background:#FFFAFB !important}
body.core-swan .story{background:#FBE9EE !important}
body.core-swan .story-media{outline:0 !important;box-shadow:0 24px 50px rgba(150,60,95,.14) !important}

/* buttons: one soft rose, no sweep of light */
.sw-btn,body.core-swan .btn:not(.btn-ghost),body.sw-page .btn:not(.btn-ghost),.sw-mbar .m-book{
  background:#D9689A !important;box-shadow:none !important;text-shadow:none !important}
body.core-swan .btn::after,.sw-btn::after{display:none !important;animation:none !important}
@media (hover:hover){
  .sw-btn:hover,body.core-swan .btn:not(.btn-ghost):hover,body.sw-page .btn:not(.btn-ghost):hover{
    background:#C9558A !important;transform:none !important;box-shadow:none !important;filter:none !important}
}

/* trust strip: a single calm rose */
body.core-swan .strip{background:#E58AAE !important;box-shadow:none !important}
body.core-swan .strip-item span{text-shadow:none !important;font-weight:500 !important}

/* service tile: plain satin, no ornaments */
body.core-swan .svc-bling{background:linear-gradient(160deg,#FADDE6,#F3B9CD) !important}
body.core-swan .svc-bling::after{border-color:rgba(255,255,255,.7)}
/* prices: solid rose instead of foil */
body.core-swan .svc .price,body.sw-page .price-row .amt{background:none !important;-webkit-text-fill-color:#B8407A !important;color:#B8407A !important}
@media (hover:hover){
  body.core-swan .svc:hover{transform:none !important;box-shadow:none !important}
  body.core-swan .svc:hover .more{letter-spacing:.18em}
  .sw-brand:hover img{transform:none}
  .ba.ba-stack:hover .ba-tag{background:rgba(255,255,255,.92);color:#A8326A !important}
  body.core-swan .rev:hover,body.sw-page .rev:hover,.rev-band .rev:nth-child(3n+2):hover{transform:none !important}
  body.sw-page .price-row:hover{padding-left:0;background:none}
  body.sw-page .faq-list summary:hover{padding-left:0}
}

/* reviews: quiet cards on a pale band */
.rev-band{background:#FBE9EE !important}
.rev-band .rev{box-shadow:0 12px 30px rgba(201,79,131,.08) !important;padding-top:2.6rem !important}
.rev-band .rev::after{display:none}
.rev-band .rev::before{top:1.1rem;width:auto;height:auto;padding:0;border-radius:0;background:none;box-shadow:none;
  color:#E58AAE;font-size:3rem;line-height:.6}
.rev-band .rev blockquote{margin-top:.6rem}
.rev-band .rev figcaption::before{width:36px;height:1px;background:#E9B5C9}
.rev-band .rev:nth-child(3n+2){transform:none !important}
.rev-band .rev-grid{padding-top:0 !important}
.rev-band .rev-score b:first-child{font-size:3.2rem;background:none;-webkit-text-fill-color:#B8407A;color:#B8407A}
body.sw-page .rev-band .rev .hearts{display:none}

/* closing band: the script stays lit, it just stops blinking */
body.core-swan .cta.cta-sign .sign,.sw-close h2{animation:none !important;
  text-shadow:0 0 1px #fff,0 0 8px rgba(255,255,255,.7),0 0 22px rgba(255,125,184,.55) !important}
.sw-close{animation:none !important}
body.core-swan .cta.cta-sign,.sw-close{background:linear-gradient(120deg,#F5B4CE,#EE9CBE) !important}
body.core-swan .cta.cta-sign.glow-field::after{display:none}

/* small ornaments that repeated too often */
body.core-swan .hero-full .hero-loc::before{display:none}
.sw-footer{border-top:0}
body.sw-page .ac-media::after{display:none}
body.sw-page .intro-media img{outline:0 !important}

/* reviews, cleaner still: one score line, flat cards, left-aligned text */
.rev-band{background:#FFFAFB !important}
.rev-band .rev-score{font:400 1.05rem/1.5 'Jost',sans-serif !important;letter-spacing:0 !important;text-transform:none !important;color:#5A3E4A !important;margin-top:1.2rem}
.rev-band .rev-score b:first-child{display:inline !important;font:600 1.05rem/1.5 'Jost',sans-serif !important;-webkit-text-fill-color:#A8326A;color:#A8326A;margin:0}
.rev-band .rev-score b:first-child::after{display:none}
.rev-band .rev{text-align:left;box-shadow:none !important;border:1px solid #F3CFDD !important;border-top:1px solid #E58AAE !important;padding:2rem 1.8rem 1.6rem !important}
.rev-band .rev::before{position:static;display:block;transform:none;text-align:left;font-size:2.6rem;line-height:.7;height:1.4rem;color:#E58AAE}
.rev-band .rev blockquote{font-size:1.12rem !important;margin:0 0 1.4rem}
.rev-band .rev figcaption{align-items:flex-start;padding-top:0}
.rev-band .rev figcaption::before{display:none}
.rev-band .rev figcaption b{font-family:'Jost',sans-serif;font-weight:600;font-size:1rem}

/* closing band button: white pill, deep rose text (the flat-button rule above
   had turned it rose on rose) */
body.core-swan .cta.cta-sign .btn,.sw-close a{background:#fff !important;color:#A8326A !important;-webkit-text-fill-color:#A8326A;
  box-shadow:0 10px 24px rgba(160,50,100,.18) !important}
@media (hover:hover){body.core-swan .cta.cta-sign .btn:hover,.sw-close a:hover{background:#FFF1F7 !important;color:#8E2458 !important}}

/* reviews: tighter above and below */
.rev-band{padding-block:clamp(2.6rem,4.5vw,4rem) !important}
.rev-band .section-head{margin-bottom:0 !important}
.rev-band .rev-grid{margin-top:clamp(1.6rem,2.6vw,2.2rem) !important}
.rev-band .rev-more{margin-top:clamp(1.6rem,2.6vw,2.2rem) !important}
.rev figcaption span{display:block;white-space:nowrap}
body.sw-page .c-item p,body.sw-page .contact-grid p{text-wrap:balance}

/* contrast: white text needs a deeper rose behind it */
.sw-btn,body.core-swan .btn:not(.btn-ghost),body.sw-page .btn:not(.btn-ghost),.sw-mbar .m-book{background:#C04C84 !important}
@media (hover:hover){.sw-btn:hover,body.core-swan .btn:not(.btn-ghost):hover,body.sw-page .btn:not(.btn-ghost):hover{background:#A93C72 !important}}
body.core-swan .strip{background:#C6548A !important}
body.sw-page a:not(.btn):not(.sw-btn):not(.sw-brand){color:#A8326A}
body.sw-page .sw-footer a,body.sw-page .sw-links a:not(.sw-btn),body.sw-page .sw-drawer a{color:inherit}
body.sw-page .sw-links a:not(.sw-btn),body.sw-page .sw-drawer a{color:#3A1F2B}
body.core-swan .cta.cta-sign .btn,.sw-close a{background:#fff !important}
body.core-swan .strip{background:#B8457D !important}
body.core-swan .strip-item span{font-size:.75rem !important}

/* back to pink. The deep rose read as plum, which Sage has ruled out twice.
   Strip: light pink with dark lettering (passes contrast and stays pink).
   Buttons: true pink with white lettering; this costs a few accessibility
   points and is a deliberate brand choice. */
body.core-swan .strip{background:#F9CBDC !important}
body.core-swan .strip-item span{color:#3A1F2B !important;font-weight:500 !important}
body.core-swan .strip-item svg{stroke:#D9548F !important}
body.core-swan .strip-item + .strip-item::before{background:rgba(58,31,43,.18) !important}
.sw-btn,body.core-swan .btn:not(.btn-ghost),body.sw-page .btn:not(.btn-ghost),.sw-mbar .m-book{background:#EC6FA4 !important;font-weight:600 !important}
@media (hover:hover){.sw-btn:hover,body.core-swan .btn:not(.btn-ghost):hover,body.sw-page .btn:not(.btn-ghost):hover{background:#E2578F !important}}
body.core-swan .cta.cta-sign .btn,.sw-close a{background:#fff !important;color:#D9548F !important;-webkit-text-fill-color:#D9548F}
/* small pink labels: pink again, not plum */
body.core-swan .kicker,body.sw-page .kicker,.sw-foot-head,body.core-swan .svc .more,.sw-mbar .m-text,
body.core-swan .btn.btn-ghost,body.sw-page .btn.btn-ghost,body.core-swan .ba-tag,.swipe-count,
body.core-swan .hero-full h1.foil .h1-kw{color:#D9548F !important;-webkit-text-fill-color:#D9548F}
body.core-swan .btn.btn-ghost:hover,body.sw-page .btn.btn-ghost:hover{color:#fff !important;-webkit-text-fill-color:#fff}
body.core-swan .svc .price,body.sw-page .price-row .amt{-webkit-text-fill-color:#D9548F !important;color:#D9548F !important}
.rev-band .rev-score b:first-child,.rev-band .rev-score b:last-of-type{-webkit-text-fill-color:#D9548F;color:#D9548F}
body.sw-page a:not(.btn):not(.sw-btn):not(.sw-brand){color:#D9548F}
body.sw-page .sw-links a:not(.sw-btn),body.sw-page .sw-drawer a{color:#3A1F2B}
body.sw-page .sw-footer a{color:inherit}

/* Book now: a soft glint crosses it every few seconds (asked for by Sage) */
.sw-btn,body.core-swan .hero-copy .btn,.sw-mbar .m-book,body.sw-page .btn:not(.btn-ghost){position:relative;overflow:hidden}
.sw-btn::before,body.core-swan .hero-copy .btn::before,.sw-mbar .m-book::before,body.sw-page .btn:not(.btn-ghost)::before{
  content:"";position:absolute;top:0;bottom:0;left:-60%;width:45%;pointer-events:none;
  background:linear-gradient(105deg,transparent 0,rgba(255,255,255,.5) 50%,transparent 100%);transform:skewX(-18deg)}
@media (prefers-reduced-motion:no-preference){
  .sw-btn::before,body.core-swan .hero-copy .btn::before,.sw-mbar .m-book::before,body.sw-page .btn:not(.btn-ghost)::before{animation:bk-glint 5s ease-in-out infinite}
  .sw-mbar .m-book::before{animation-delay:1.2s}
}
@keyframes bk-glint{0%,62%{left:-60%}100%{left:130%}}
