/* Stable card heights: the full review opens in a separate reading dialog. */
body.vsc-site #Content .vsc-review-track{align-items:flex-start;height:auto;min-height:0}
body.vsc-site #Content .vsc-review{height:282px!important;min-height:282px!important;max-height:282px;padding:24px;overflow:hidden}
body.vsc-site #Content .vsc-review header{min-height:48px;flex-shrink:0;margin-bottom:20px}
body.vsc-site #Content .vsc-review header>div{min-width:0}
body.vsc-site #Content .vsc-review h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:19px}
body.vsc-site #Content .vsc-review-text{height:auto;max-height:63px;min-height:0;flex-shrink:0}
body.vsc-site #Content .vsc-review footer{padding-top:16px}
body.vsc-site .vsc-review-dialog{width:min(660px,calc(100vw - 32px));max-height:85vh;max-height:85dvh;margin:auto;padding:30px;border:1px solid #dce9e3;border-radius:22px;background:#fff;color:#243e35;box-shadow:0 24px 90px #08251c40;overflow:auto}
body.vsc-site .vsc-review-dialog::backdrop{background:#102c25b3;backdrop-filter:blur(4px)}
body.vsc-site .vsc-review-dialog h2{padding-right:35px;font-size:27px;line-height:1.3;margin:0 0 18px;color:#214e40}
body.vsc-site .vsc-review-dialog .vsc-review-full{font:16px/1.75 Commissioner,Arial,sans-serif}
body.vsc-site .vsc-review-dialog .vsc-review-full p{text-align:left;margin-bottom:16px}
body.vsc-site .vsc-review-dialog footer{margin-top:24px;font-size:14px}
body.vsc-site .vsc-review-dialog button{position:absolute;right:16px;top:16px;width:36px;height:36px;padding:0;margin:0;border:0;border-radius:50%;background:#eef5f1;color:#235b48;font:28px/36px Arial}
/* Fixed at every breakpoint, including WordPress toolbar offsets. */
@media(min-width:1025px){
 body.vsc-site{--vsc-desktop-header:143px;--vsc-admin-offset:0px;padding-top:var(--vsc-desktop-header)!important}
 body.vsc-site.admin-bar{--vsc-admin-offset:32px}
 body.vsc-site .vsc-header{position:fixed!important;inset:var(--vsc-admin-offset) 0 auto;z-index:10010;width:100%;background:#fffffff5;backdrop-filter:blur(16px);border-bottom:1px solid #e4eeea;box-shadow:0 4px 22px #173e3210}
}
body.vsc-site #Content [id]{scroll-margin-top:calc(var(--vsc-desktop-header,72px) + var(--vsc-admin-offset,0px) + 20px)}
/* Promotion backgrounds fill the whole outer section, with a single content gutter. */
body.vsc-site #Content .section:has(.vesna-promo-section){background:linear-gradient(145deg,#f0f8f3,#f8f6ee)!important;padding:64px 0!important;overflow:hidden}
body.vsc-site #Content .section:has(.vesna-promo-section)>.section_wrapper{background:none!important}
body.vsc-site #Content .vesna-promo-section{background:none!important;padding:0!important;border:0;border-radius:0;box-shadow:none}
body.vsc-site #Content .vesna-promo-section::before,body.vsc-site #Content .vesna-promo-section::after{display:none!important}
body.vsc-site #Content .vesna-promo-head{max-width:850px;margin:0 auto 32px;text-align:center}
body.vsc-site #Content .vesna-promo-head h2{line-height:1.15;letter-spacing:-.8px;color:#1c483a}
body.vsc-site #Content .vesna-promo-section .no_line{display:none}
body.vsc-site #Content .section:has(.vesna-promo-section) .column{margin-bottom:0!important}
body.vsc-site .vsc-offer-section{padding:40px 0;background:#fff}
body.vsc-site .vsc-container.vsc-offer-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:32px;align-items:center;margin-top:0;margin-bottom:0;padding:36px 42px!important;border:1px solid #dce6d8;border-radius:24px;background:linear-gradient(115deg,#f0f6eb,#f7f7ee 65%,#eaf4ef);box-shadow:0 12px 32px #264b3810}
body.vsc-site .vsc-offer-symbol{display:grid;place-items:center;width:72px;height:72px;border:1px solid #bbcab0;border-radius:50%;box-sizing:border-box;padding:0;line-height:1;color:#748b63}
body.vsc-site .vsc-offer-symbol svg{display:block;width:32px;height:32px;max-width:none;margin:0;padding:0}
body.vsc-site .vsc-offer-eyebrow{font-size:11px;letter-spacing:1.7px;text-transform:uppercase;color:#69835c}
body.vsc-site .vsc-offer-copy h2{font-size:30px;line-height:1.2;color:#224a38;margin:10px 0 12px}
body.vsc-site .vsc-offer-copy p{max-width:850px;font-size:16px;line-height:1.7;color:#526855;margin:0;text-align:left}
body.vsc-site a.vsc-offer-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;padding:16px 24px;background:#235740;color:#fff;border-radius:12px;font-size:15px;font-weight:500;white-space:nowrap;text-decoration:none}
body.vsc-site .vsc-offer-button:hover{background:#163c2b}
/* An appointment block has spacing even when it shares a section with prices. */
body.vsc-site #Content .vsc-cta{margin:24px 0 48px}
body.vsc-site #Content .section:has(.vsc-cta) .mcb-wrap-inner{row-gap:24px}
body.vsc-site #Content .section:has(.vsc-cta)+.section{padding-top:48px!important}
body.vsc-site #Content .section:has(.vsc-photo-accordion){padding-bottom:40px!important}
/* Endless work strip: two identical groups meet at an exact seam. */
body.vsc-site .vsc-work-marquee{width:100%;min-width:0;margin:20px 0}
body.vsc-site .vsc-work-window{overflow:hidden;border-radius:20px;width:100%}
body.vsc-site .vsc-work-track{display:flex!important;width:max-content!important;max-width:none!important;gap:0!important;padding:0!important;margin:0!important;overflow:visible!important;scroll-snap-type:none!important;animation:vsc-work-loop var(--vsc-work-duration,90s) linear infinite;will-change:transform}
body.vsc-site .vsc-work-group{display:flex;gap:20px;padding-right:20px;flex-shrink:0}
body.vsc-site .vsc-work-group>figure,body.vsc-site .vsc-work-group>li{display:block!important;flex:0 0 280px!important;width:280px!important;min-width:280px!important;margin:0!important;list-style:none}
body.vsc-site .vsc-work-group img{display:block!important;width:280px!important;height:340px!important;max-width:none;object-fit:cover;border-radius:18px}
body.vsc-site .vsc-work-group .title:empty{display:none}
body.vsc-site .vsc-work-marquee:is(:hover,:focus-within,.is-paused,.is-offscreen) .vsc-work-track{animation-play-state:paused}
body.vsc-site .vsc-work-toggle{display:block;margin:14px 0 0 auto;padding:8px 14px;background:#f1f6f2;color:#325943;border:1px solid #d7e4da;border-radius:20px;font:13px/20px Commissioner,Arial,sans-serif;box-shadow:none}
@keyframes vsc-work-loop{to{transform:translateX(-50%)}}
@media(max-width:767px){
 body.vsc-site #Content .section:has(.vesna-promo-section){padding:40px 0!important}
 body.vsc-site .vsc-offer-section{padding:28px 0}
 body.vsc-site .vsc-container.vsc-offer-card{grid-template-columns:1fr;gap:18px;padding:26px 22px!important;border-radius:20px}
 body.vsc-site .vsc-offer-symbol{width:48px;height:48px}
 body.vsc-site .vsc-offer-symbol svg{width:26px;height:26px}
 body.vsc-site .vsc-offer-copy h2{font-size:27px}
 body.vsc-site a.vsc-offer-button{width:100%}
 body.vsc-site #Content .vsc-cta{margin:12px 0 32px}
 body.vsc-site #Content .section:has(.vsc-cta)+.section{padding-top:28px!important}
 body.vsc-site .vsc-work-group{gap:12px;padding-right:12px}
 body.vsc-site .vsc-work-group>figure,body.vsc-site .vsc-work-group>li{flex-basis:220px!important;width:220px!important;min-width:220px!important}
 body.vsc-site .vsc-work-group img{width:220px!important;height:278px!important}
 body.vsc-site .vsc-review-dialog{padding:24px}
}
@media(prefers-reduced-motion:reduce){body.vsc-site .vsc-work-track{animation:none;transform:none}body.vsc-site .vsc-work-window{overflow-x:auto}body.vsc-site .vsc-work-group[aria-hidden]{display:none}}
