/* Body Sculpt 360° SMS & Privacy suite. Scoped to SMS pages only. */
.bs360-sms-shell{--sms-espresso:#241916;--sms-wine:#603c35;--sms-champagne:#bb9e77;--sms-cream:#faf6ef;--sms-ink:#342823;max-width:1680px;margin:0 auto 70px;padding:0 20px;color:var(--sms-ink);font-family:Montserrat,Arial,sans-serif;box-sizing:border-box}
.bs360-sms-shell *, .bs360-sms-shell *:before,.bs360-sms-shell *:after{box-sizing:border-box}
.bs360-sms-hero{margin:24px 0 0;padding:clamp(35px,6vw,82px) clamp(22px,5vw,70px);border-radius:6px;text-align:center;color:#fff;background:linear-gradient(130deg,rgba(30,18,16,.97),rgba(87,47,43,.93) 65%,rgba(58,35,30,.99));border-top:4px solid #c9a774;box-shadow:0 24px 40px rgba(41,22,20,.14)}
.bs360-sms-kicker,.bs360-sms-eyebrow{font-size:11px;letter-spacing:.22em;color:#e5c79a;text-transform:uppercase;font-weight:700}
.bs360-sms-hero h1{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:clamp(40px,5.4vw,70px)!important;line-height:1.05!important;font-weight:600;margin:14px 0!important;color:#fff!important;letter-spacing:.012em}
.bs360-sms-hero p:last-child{font-size:clamp(14px,2vw,17px);max-width:760px;margin:0 auto;line-height:1.85;color:#f4eae0}
.bs360-sms-body{padding:clamp(22px,4.5vw,55px);background:#faf7f2;border:1px solid #e7dcd0;border-top:0;box-shadow:0 12px 38px rgba(44,29,25,.06)}
.bs360-sms-article{max-width:1280px;margin:0 auto}
.bs360-sms-updated{font-size:12px;color:#7d6d62;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid #e4d8ca;padding-bottom:16px}
.bs360-sms-article section{margin:34px 0}.bs360-sms-article h2,.bs360-sms-form-wrap h2,.bs360-sms-choice h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(26px,3.2vw,36px)!important;font-weight:600;color:#3d2521!important;line-height:1.2;margin:0 0 11px}.bs360-sms-article p,.bs360-sms-form-wrap p,.bs360-sms-choice p{font-size:15px;line-height:1.9;color:#594942;margin:0}
.bs360-sms-article a,.bs360-sms-form-wrap a,.bs360-sms-footnote a{color:#80553b;text-decoration:underline;text-underline-offset:2px}
.bs360-sms-note{padding:20px 24px;border-left:4px solid #b99a69;background:#f1e8dc;line-height:1.7;font-size:14px}
.bs360-sms-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1050px;margin:0 auto}
.bs360-sms-choice{padding:clamp(22px,4vw,38px);border:1px solid #e3d5c5;background:#fff;border-radius:5px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 8px 25px rgba(30,16,14,.04)}
.bs360-sms-choice .bs360-sms-eyebrow{color:#967047;margin-bottom:17px}
.bs360-sms-choice p{margin:0 0 25px;flex:1}
.bs360-sms-button{display:inline-block;width:auto;max-width:100%;padding:14px 25px!important;background:#3f2b26!important;color:#fff!important;text-decoration:none!important;font-weight:700!important;border:1px solid #3f2b26!important;border-radius:3px!important;font-size:12px!important;letter-spacing:.085em;text-transform:uppercase;cursor:pointer;text-align:center;line-height:1.5!important;transition:background .2s ease}
.bs360-sms-button:hover,.bs360-sms-button:focus{background:#6d4b3e!important;color:#fff!important}
.bs360-sms-button.is-ghost{background:transparent!important;color:#4b332a!important;border:1px solid #997c5c!important}
.bs360-sms-button.is-ghost:hover{background:#f2e6d7!important}
.bs360-sms-form-wrap{max-width:1080px;margin:auto;background:#fff;border:1px solid #e4d6c7;box-shadow:0 12px 25px rgba(41,26,23,.04);padding:clamp(20px,5vw,47px)}
.bs360-sms-form-wrap>p{margin:6px 0 25px}
.bs360-sms-form{display:flex;flex-direction:column;gap:20px;margin-top:24px}
.bs360-sms-form label:not(.bs360-sms-check){display:flex;flex-direction:column;font-size:13px;font-weight:700;color:#4c3730;gap:8px}
.bs360-sms-form input:not([type=checkbox]){width:100%;height:48px;padding:11px 13px;border:1px solid #cdbdac;border-radius:3px;background:#fff;color:#352522;font-size:16px;min-width:0;box-shadow:none}
.bs360-sms-form input:not([type=checkbox]):focus{outline:2px solid #bca179;outline-offset:1px}
.bs360-sms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.bs360-sms-check{display:flex!important;align-items:flex-start!important;gap:14px!important;padding:19px!important;border:1px solid #c8b399!important;background:#f8f1e7!important;color:#433028!important;font-size:14px!important;line-height:1.85!important;font-weight:500!important;border-radius:4px;cursor:pointer}
.bs360-sms-check input{appearance:auto!important;min-width:21px!important;width:21px!important;height:21px!important;flex:0 0 21px!important;margin:4px 0 0!important;accent-color:#4d342d!important}
.bs360-sms-form-links{font-size:13px!important;margin:0!important}
.bs360-sms-form-links a{color:#62453b!important;text-decoration:underline!important}
.bs360-sms-footnote{max-width:1040px;margin:22px auto!important;font-size:12px!important;line-height:1.85!important;color:#695b51!important}
.bs360-sms-form .bs360-sms-footnote{margin:0!important}
.bs360-sms-alert{max-width:780px;margin:0 auto 18px;padding:14px 19px;border-left:4px solid #a18a5d;background:#f2e8d9;font-size:14px;line-height:1.65}
.bs360-sms-alert.is-error{border-color:#a54f45;background:#f9ecea}
.bs360-sms-alert.is-success{border-color:#49775a;background:#e9f4ed}
.bs360-sms-hidden{position:absolute!important;left:-9999px!important;opacity:0!important;max-height:0;overflow:hidden}
.bs360-sms-bottom{text-align:center;padding-top:45px;margin-top:43px;border-top:1px solid #e2d3c2}
.bs360-sms-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 27px;margin-bottom:17px}.bs360-sms-links a{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.045em;color:#6b4734;text-decoration:none}.bs360-sms-links a:hover{text-decoration:underline}.bs360-sms-bottom p{font-size:12px;color:#766457;margin:0}
@media (max-width:700px){.bs360-sms-shell{padding:0 12px;margin-bottom:30px}.bs360-sms-hero{margin-top:12px}.bs360-sms-body{padding:24px 15px}.bs360-sms-choice-grid,.bs360-sms-grid{grid-template-columns:1fr}.bs360-sms-form-wrap{padding:22px 16px}.bs360-sms-choice{padding:25px}.bs360-sms-button{width:100%}.bs360-sms-article section{margin:26px 0}}


/* =============================================================
   v2.5.6 — FIVE SMS PAGES: TRUE WIDE DESKTOP + RESPONSIVE MOBILE
   Limits scope to pages tagged by the SMS module's body_class.
   Do not widen global .site-container or any other WP pages.
   ============================================================= */
/* Kadence / WordPress page wrappers: remove theme's boxed 12xxpx limit. */
body.bs360-sms-wide-page #primary,
body.bs360-sms-wide-page .site-content,
body.bs360-sms-wide-page .site-content .content-container,
body.bs360-sms-wide-page .site-content .site-container,
body.bs360-sms-wide-page .site-content .content-area,
body.bs360-sms-wide-page .site-content .site-main,
body.bs360-sms-wide-page .site-content article.entry,
body.bs360-sms-wide-page .site-content .entry-content-wrap,
body.bs360-sms-wide-page .site-content .entry-content,
body.bs360-sms-wide-page .site-content .single-content,
body.bs360-sms-wide-page .site-content .wp-block-post-content {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
body.bs360-sms-wide-page .site-content .entry-content-wrap,
body.bs360-sms-wide-page .site-content .entry-content {
    padding-top: 0 !important;
    margin-top: 0 !important;
}
/* Remove Kadence's default background card padding on these policy pages. */
body.bs360-sms-wide-page .site-content .entry-content-wrap { background: transparent !important; }
/* If the shortcode lives within an otherwise constrained Gutenberg block,
   center its wider layout against the viewport without affecting other blocks. */
body.bs360-sms-wide-page .bs360-sms-shell {
    display: block;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: min(calc(100vw - 48px), 1680px) !important;
    max-width: none !important;
    margin: 0 0 64px !important;
    padding: 0 !important;
    overflow-wrap: anywhere;
}
body.bs360-sms-wide-page .bs360-sms-hero {
    width: 100%;
    max-width: none;
    margin: 24px 0 0 !important;
    padding: clamp(44px, 5.5vw, 88px) clamp(28px, 5vw, 88px) !important;
    border-radius: 8px 8px 0 0;
}
body.bs360-sms-wide-page .bs360-sms-body {
    width: 100%;
    max-width: none;
    padding: clamp(32px, 4vw, 64px) clamp(22px, 4.5vw, 74px) !important;
}
body.bs360-sms-wide-page .bs360-sms-article {
    width: 100%;
    max-width: 1340px !important;
    margin: 0 auto !important;
}
body.bs360-sms-wide-page .bs360-sms-article p,
body.bs360-sms-wide-page .bs360-sms-form-wrap p,
body.bs360-sms-wide-page .bs360-sms-choice p {
    font-size: clamp(15px, 1.2vw, 17px) !important;
    line-height: 1.85 !important;
}
body.bs360-sms-wide-page .bs360-sms-article section { margin: 32px 0 !important; }
body.bs360-sms-wide-page .bs360-sms-article h2,
body.bs360-sms-wide-page .bs360-sms-form-wrap h2,
body.bs360-sms-wide-page .bs360-sms-choice h2 {
    font-size: clamp(28px, 2.5vw, 40px) !important;
    line-height: 1.2 !important;
}
body.bs360-sms-wide-page .bs360-sms-choice-grid { max-width: 1340px !important; }
body.bs360-sms-wide-page .bs360-sms-form-wrap { width: 100%; max-width: 1120px !important; }
body.bs360-sms-wide-page .bs360-sms-note,
body.bs360-sms-wide-page .bs360-sms-footnote { max-width: 1340px; }
body.bs360-sms-wide-page .bs360-sms-form input:not([type=checkbox]) { max-width: 100%; }
body.bs360-sms-wide-page .bs360-sms-button { min-height: 48px; }

@media (max-width: 900px) {
    body.bs360-sms-wide-page .bs360-sms-shell { width: calc(100vw - 30px) !important; margin-bottom: 40px !important; }
    body.bs360-sms-wide-page .bs360-sms-hero { margin-top: 15px !important; padding: 48px 28px !important; }
    body.bs360-sms-wide-page .bs360-sms-body { padding: 32px 26px !important; }
    body.bs360-sms-wide-page .bs360-sms-article { max-width: 100% !important; }
    body.bs360-sms-wide-page .bs360-sms-choice-grid { gap: 16px; }
}
@media (max-width: 700px) {
    body.bs360-sms-wide-page .bs360-sms-shell { width: calc(100vw - 16px) !important; margin-bottom: 28px !important; }
    body.bs360-sms-wide-page .bs360-sms-hero { margin-top: 8px !important; padding: 34px 20px !important; border-radius: 5px 5px 0 0; }
    body.bs360-sms-wide-page .bs360-sms-hero h1 { font-size: clamp(35px, 9vw, 50px) !important; line-height: 1.08 !important; }
    body.bs360-sms-wide-page .bs360-sms-hero p:last-child { font-size: 15px !important; line-height: 1.65 !important; }
    body.bs360-sms-wide-page .bs360-sms-body { padding: 25px 19px !important; }
    body.bs360-sms-wide-page .bs360-sms-article section { margin: 24px 0 !important; }
    body.bs360-sms-wide-page .bs360-sms-article h2,
    body.bs360-sms-wide-page .bs360-sms-form-wrap h2,
    body.bs360-sms-wide-page .bs360-sms-choice h2 { font-size: clamp(27px, 7vw, 34px) !important; }
    body.bs360-sms-wide-page .bs360-sms-choice-grid,
    body.bs360-sms-wide-page .bs360-sms-grid { grid-template-columns: minmax(0,1fr) !important; gap: 16px; }
    body.bs360-sms-wide-page .bs360-sms-form-wrap { padding: 24px 17px !important; }
    body.bs360-sms-wide-page .bs360-sms-choice { padding: 25px 20px !important; }
    body.bs360-sms-wide-page .bs360-sms-check { gap: 11px !important; padding: 16px !important; }
    body.bs360-sms-wide-page .bs360-sms-button { width: 100%; }
    body.bs360-sms-wide-page .bs360-sms-form input:not([type=checkbox]) { min-height: 48px; font-size: 16px !important; }
    body.bs360-sms-wide-page .bs360-sms-note { padding: 17px 16px; }
    body.bs360-sms-wide-page .bs360-sms-bottom { padding-top: 28px; margin-top: 30px; }
    body.bs360-sms-wide-page .bs360-sms-links { flex-direction: column; align-items: center; gap: 14px; }
}
@media (max-width: 375px) {
    body.bs360-sms-wide-page .bs360-sms-body { padding: 21px 13px !important; }
    body.bs360-sms-wide-page .bs360-sms-hero { padding: 28px 14px !important; }
    body.bs360-sms-wide-page .bs360-sms-hero h1 { font-size: 33px !important; }
    body.bs360-sms-wide-page .bs360-sms-form-wrap { padding: 20px 13px !important; }
}

/* v2.5.7 — A2P public proof page: both independent opt-in forms visible */
.bs360-sms-proof-intro{max-width:1340px;margin:0 auto 28px;padding:20px 24px;background:#f2e9dd;border-left:4px solid #bb9e77;color:#48362c}
.bs360-sms-proof-intro p{margin:0;font-size:15px;line-height:1.8}
.bs360-sms-live-forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;max-width:1340px;margin:0 auto}
.bs360-sms-live-form{min-width:0;background:#fff;border:1px solid #e0d2be;border-top:4px solid #bb9e77;border-radius:5px;padding:clamp(20px,2.6vw,36px);box-shadow:0 12px 28px rgba(45,27,20,.05)}
.bs360-sms-live-form .bs360-sms-eyebrow{margin-bottom:15px;color:#8d6749}
.bs360-sms-live-form h2{margin:0 0 10px!important;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(27px,3vw,40px)!important;line-height:1.15!important;color:#3d2521!important}
.bs360-sms-live-form .bs360-sms-form-intro{min-height:80px;margin:0 0 17px;font-size:15px;line-height:1.7;color:#594942}
.bs360-sms-live-form .bs360-sms-form{margin-top:15px;gap:15px}
.bs360-sms-live-form .bs360-sms-grid{grid-template-columns:minmax(0,1fr);gap:15px}
.bs360-sms-live-form .bs360-sms-check{padding:17px!important}
.bs360-sms-live-form .bs360-sms-button{width:100%}
.bs360-sms-live-form .bs360-sms-footnote{font-size:12px!important;line-height:1.65!important}
.bs360-sms-shell .bs360-sms-live-forms + .bs360-sms-footnote{max-width:1340px}
@media(max-width:1000px){.bs360-sms-live-forms{grid-template-columns:minmax(0,1fr);gap:21px}.bs360-sms-live-form .bs360-sms-form-intro{min-height:0}.bs360-sms-live-form .bs360-sms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.bs360-sms-proof-intro{padding:17px;margin-bottom:18px}.bs360-sms-live-form{padding:20px 15px}.bs360-sms-live-form .bs360-sms-grid{grid-template-columns:minmax(0,1fr)}.bs360-sms-live-form h2{font-size:30px!important}.bs360-sms-live-form .bs360-sms-form-intro{font-size:14px}}
