/*
Theme Name: Meaghan Skin Co
Theme URI: https://meaghanskinco.com
Description: Clinical-warm child theme for Meaghan Skin Co (Flatsome parent). Rose pink + peach + off-white, Fraunces + Work Sans. Built for meaghanskinco.com.
Author: Simon Painter
Template: flatsome
Version: 1.0
*/

:root{
  --msc-rose:#E89CAE; --msc-peach:#F3C6A0; --msc-off-white:#FDFAF7; --msc-black:#1C1B19;
  --msc-grey:#6E6A66; --msc-line:#E7E1DB; --msc-rose-dark:#d97f95; --msc-blush:#FBEDE9;
}

/* ---------- Typography ---------- */
body,.stat-number,input,select,textarea,button,.button{font-family:"Work Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
body{color:var(--msc-grey);font-size:16px;line-height:1.65;}
h1,h2,h3,h4,h5,.is-serif,.msc-serif,.heading-font,blockquote{font-family:"Fraunces",Georgia,"Times New Roman",serif !important;color:var(--msc-black);font-weight:500;letter-spacing:-.01em;line-height:1.15;}
h1{font-size:2.8rem;} h2{font-size:2.1rem;}
.uppercase,.nav-uppercase>li>a,.label,.msc-eyebrow{font-family:"Work Sans",sans-serif !important;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:600;}
a{color:var(--msc-rose-dark);} a:hover{color:var(--msc-rose);}

/* ---------- Header ---------- */
.header-main{min-height:78px;}
#logo a,#logo{font-family:"Fraunces",serif !important;font-weight:500;font-size:1.75rem;letter-spacing:.02em;color:var(--msc-black) !important;text-transform:none;}
.header:not(.transparent) #logo a{color:var(--msc-black) !important;}
.header-nav a{color:var(--msc-black) !important;}
.top-bar{background:var(--msc-black) !important;} .top-bar,.top-bar a{color:var(--msc-off-white) !important;letter-spacing:.14em;font-size:.72rem;text-transform:uppercase;}
.header-top{border-bottom:1px solid var(--msc-line);}

/* ---------- Logo wordmark (uploaded image; text rules kept as fallback) ---------- */
.msc-logo{display:inline-flex;flex-direction:column;line-height:1;vertical-align:middle;}
.msc-logo img,.msc-logo-img{display:block;max-width:190px;width:100%;height:auto;}
.msc-logo-first{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;font-size:1.65rem;color:var(--msc-black);letter-spacing:.01em;}
.msc-logo-second{font-family:"Work Sans",sans-serif;font-weight:600;font-size:.62rem;color:var(--msc-rose-dark);text-transform:uppercase;letter-spacing:.32em;margin-top:2px;}

/* ---------- Buttons (pill) ---------- */
.button,button,input[type=submit],.add_to_cart_button,.single_add_to_cart_button{
  text-transform:none;letter-spacing:.02em;font-weight:600;font-family:"Work Sans",sans-serif !important;}
.button.primary,.button.checkout,button.primary,.single_add_to_cart_button,.add_to_cart_button{
  background-color:var(--msc-rose) !important;border-color:var(--msc-rose) !important;color:#fff !important;}
.button.primary:hover,.single_add_to_cart_button:hover,.add_to_cart_button:hover{background-color:var(--msc-rose-dark) !important;border-color:var(--msc-rose-dark) !important;}
.button.secondary,.button.is-outline{color:var(--msc-black) !important;border-color:var(--msc-black) !important;}
.button.is-outline:hover{background:var(--msc-black) !important;color:#fff !important;}

/* ---------- Product cards ---------- */
.product-small .box-text{padding-top:.6em;}
.product-title,.product-small .name a,.woocommerce-loop-product__title{font-family:"Work Sans",sans-serif !important;font-weight:600;color:var(--msc-black) !important;font-size:.98rem;letter-spacing:0;}
.price,.woocommerce-Price-amount,.amount{color:var(--msc-black);font-weight:600;}
.star-rating:before,.star-rating span:before,.woocommerce .star-rating span:before{color:var(--msc-peach) !important;}
.box-image img{transition:transform .5s ease;}
.col-inner:hover .box-image img{transform:scale(1.04);}
ul.products li.product,.product-small{background:#fff;}
.badge-inner{background:var(--msc-rose);color:#fff;}
.badge.on-sale .badge-inner{background:var(--msc-black);}

/* ---------- Sections / bands ---------- */
.msc-off-white,.section.msc-off-white{background-color:var(--msc-off-white) !important;}
.msc-black-band{background-color:var(--msc-black) !important;}
.msc-black-band, .msc-black-band h1,.msc-black-band h2,.msc-black-band h3,.msc-black-band p{color:var(--msc-off-white) !important;}
.msc-black-band h1,.msc-black-band h2,.msc-black-band h3{color:#fff !important;}
.msc-eyebrow{color:var(--msc-rose-dark);display:block;margin-bottom:.5em;}
.msc-black-band .msc-eyebrow{color:var(--msc-peach);}
.msc-rule{width:56px;height:2px;background:var(--msc-rose);margin:0 auto 1.2em;border:0;}

/* ---------- Trust row ---------- */
.msc-trust .icon-box-img svg,.msc-trust .icon-box .icon svg{stroke:var(--msc-black);}
.msc-trust .icon-box-text p{margin:0;font-size:.9rem;}

/* ---------- Accordion (FAQ) ---------- */
.accordion-title{font-family:"Fraunces",serif !important;color:var(--msc-black);font-size:1.05rem;font-weight:600;border-bottom:1px solid var(--msc-line);}
.accordion-title.active{color:var(--msc-rose-dark);}

/* ---------- Footer ---------- */
.footer-1,.footer-2,footer#footer .footer-wrapper,.absolute-footer{background-color:var(--msc-black) !important;}
#footer,.footer-1,.footer-2{color:var(--msc-line);}
#footer h1,#footer h2,#footer h3,#footer h4,#footer .widget-title{color:#fff !important;}
#footer a{color:var(--msc-line) !important;} #footer a:hover{color:var(--msc-peach) !important;}
.absolute-footer{color:#8f8a84;}

/* ---------- Misc ---------- */
.page-title{background-color:var(--msc-off-white) !important;}
.page-title-inner{background-color:transparent !important;}
mark,.highlight{background:transparent;color:var(--msc-rose-dark);}

.msc-blush,.section.msc-blush{background-color:var(--msc-blush) !important;}

/* ---------- FULL-BLEED 1600px content width ---------- */
.home #content .row.row-main{max-width:100%!important;width:100%!important;margin-left:0!important;margin-right:0!important;}
.home #content .row.row-main > .col{padding-left:0!important;padding-right:0!important;width:100%!important;max-width:100%!important;}
.home #content .row.row-main > .col > .col-inner{padding-left:0!important;padding-right:0!important;}
.home #content .section > .section-content{padding-left:clamp(24px,5vw,80px)!important;padding-right:clamp(24px,5vw,80px)!important;box-sizing:border-box;}
.home #content .section .row{max-width:1600px!important;margin-left:auto!important;margin-right:auto!important;}
body:not(.home) #content .row.row-main{max-width:1600px!important;}
@media(max-width:849px){
  .section,.row,.row-collapse{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;transform:none!important;}
  .section > .section-content{padding-left:16px!important;padding-right:16px!important;box-sizing:border-box;}
}

/* ---------- Outline button fix: transparent bg so text is visible ---------- */
.button.primary.is-outline{background:transparent!important;color:var(--msc-black)!important;}
.button.primary.is-outline:hover{background:var(--msc-black)!important;color:#fff!important;}
/* ============================================================
   MEAGHAN SKIN CO POLISH v1.3
   Type system, element sizing, spacing rhythm, category tiles,
   sticky header, footer columns, newsletter form.
   ============================================================ */

/* 1. TYPE SYSTEM: Work Sans for UI/body, Fraunces stays on headings ---- */
body,
button, input, select, textarea, optgroup,
.nav, .nav a, .header-nav a, ul.nav > li > a, .menu a, .header a,
p, li, td, th, dd, dt, blockquote, label,
.widget, .widget a, #footer, .absolute-footer, .msc-footer,
.woocommerce-Price-amount, .price, .amount,
.woocommerce-loop-product__title, .cart_totals, .checkout,
.msc-eyebrow, .cart-item {
  font-family: 'Work Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
}
h1, h2, h3, h4, h5, .heading-font,
.entry-title, .product-title, .title-inner, .box-category .name {
  font-family: 'Fraunces', Georgia, 'Times New Roman', serif;
}
body { font-size: 16px; line-height: 1.65; color: #6E6A66; }
.msc-eyebrow { font-weight: 600; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: #d97f95; }

/* 2. BUTTONS: right-sized + consistent ------- */
.button, a.button,
.button.is-large, .button.is-larger,
.add_to_cart_button, .single_add_to_cart_button,
button[type="submit"], input[type="submit"] {
  font-family: 'Work Sans', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  letter-spacing: .03em !important;
  line-height: 1.1 !important;
  padding: 15px 30px !important;
  min-height: 0 !important;
  text-transform: none !important;
}
.msc-off-white .button, .banner .button { font-size: 15px !important; padding: 16px 34px !important; }
.button.is-outline { border-width: 1.5px; }

/* 3. HEADINGS: responsive scale, no mobile stacking --------------- */
h1 { font-size: clamp(2.1rem, 1.25rem + 2.7vw, 3.15rem) !important; line-height: 1.12 !important; letter-spacing: -.012em; }
h2 { font-size: clamp(1.65rem, 1.15rem + 1.7vw, 2.3rem) !important; line-height: 1.18 !important; }
h3 { font-size: clamp(1.2rem, 1rem + .6vw, 1.5rem) !important; line-height: 1.25 !important; }
.msc-off-white p, .banner p { font-size: clamp(1rem, .96rem + .3vw, 1.12rem) !important; line-height: 1.6; }

/* 4. SECTION SPACING RHYTHM: one scale -- */
#content .section { padding-top: clamp(52px, 6vw, 88px) !important; padding-bottom: clamp(52px, 6vw, 88px) !important; }
@media (max-width: 849px){
  .msc-off-white.section { min-height: 0 !important; height: auto !important; }
  .msc-off-white .col + .col { padding-top: 8px; }
}

/* 5. CATEGORY TILES: square boxes, product fully visible ----------- */
.box-category .box-image .image-cover { padding-top: 100% !important; background: #FDFAF7; border-radius: 12px; overflow: hidden; }
.box-category .box-image img, .box-category .image-cover img { object-fit: contain !important; padding: 12%; }
.box-category .box-text { padding-top: 14px; text-align: center; }
.box-category .box-text .name a { font-family: 'Fraunces', serif; font-weight: 600; font-size: 17px; color: #1C1B19; }

/* 6. STICKY HEADER: solid bg, constrained logo, no collision ------- */
.header-main .logo img, .header-logo img { max-height: 54px; width: auto; height: auto; }
.stuck .header-main, .header-wrapper.stuck, .stuck .header-inner, .stuck { background: #ffffff !important; }
.stuck { box-shadow: 0 2px 16px rgba(28,27,25,.08); }
.stuck .header-main .logo img { max-height: 42px; }
.stuck .msc-logo-first{font-size:1.35rem;}
.stuck .msc-logo img,.stuck .msc-logo-img{max-width:150px;}

/* 7. FOOTER columns (above the copyright bar) --------------------- */
.msc-footer { background: #23211e; color: #d8d2ca; padding: clamp(48px,6vw,76px) 0 clamp(34px,4vw,50px); }
.msc-footer .container { max-width: 1600px; }
.msc-footer-grid { display: grid; grid-template-columns: 1.7fr 1fr 1fr 1.2fr; gap: 40px; align-items: start; }
.msc-footer-word { margin-bottom: 14px; }
.msc-footer-word .msc-logo-first{color:#fff;}
.msc-footer-word .msc-logo-second{color:var(--msc-peach);}
.msc-footer-word .msc-logo img,.msc-footer-word .msc-logo-img{max-width:160px;height:auto;}
.msc-footer-brand p { font-size: 14px; line-height: 1.75; color: #b3aca3; max-width: 38ch; margin: 0; }
.msc-footer-col h4 { font-family: 'Work Sans', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #F3C6A0; margin: 3px 0 15px; }
.msc-footer-col a, .msc-footer-note { display: block; font-size: 14.5px; line-height: 2.05; color: #d8d2ca; text-decoration: none; }
.msc-footer-col a:hover { color: #fff; }
.msc-footer-note { color: #948d84; }
@media (max-width: 849px){ .msc-footer-grid { grid-template-columns: 1fr 1fr; gap: 28px 20px; } .msc-footer-brand { grid-column: 1 / -1; } }

/* 8. NEWSLETTER signup form -------------------------------------- */
.msc-news { display: flex; gap: 10px; max-width: 470px; margin: 24px auto 0; flex-wrap: wrap; justify-content: center; }
.msc-news input[type=email] { flex: 1 1 240px; min-width: 220px; height: 52px; padding: 0 22px; border: 1px solid rgba(255,255,255,.28); background: rgba(255,255,255,.06); color: #fff; border-radius: 999px; font-size: 15px; }
.msc-news input::placeholder { color: rgba(255,255,255,.55); }
.msc-news input:focus { outline: none; border-color: #F3C6A0; background: rgba(255,255,255,.1); }
.msc-news button { height: 52px; padding: 0 30px; border: 0; background: #F3C6A0; color: #1C1B19; font-family: 'Work Sans',sans-serif; font-weight: 700; font-size: 14.5px !important; letter-spacing: .03em; cursor: pointer; }
.msc-news button:hover { background: #e8b483; }
.msc-news-msg { flex-basis: 100%; text-align: center; font-size: 13.5px; color: #F3C6A0; min-height: 18px; margin-top: 6px; }

/* ============================================================
   MEAGHAN SKIN CO POLISH v1.4 — verification fixes
   ============================================================ */

/* A. Remaining font holdouts -> Work Sans (FAQ answers, quick-view, dropdowns) */
.accordion-inner, .accordion-inner *, .accordion-title,
.quick-view, .nav-dropdown a, .nav-dropdown li a,
.box-text, .box-text *, .product-small .name a, .cart-icon strong {
  font-family: 'Work Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif !important;
}
/* keep product/category titles serif */
.box-category .box-text .name a, .product-title, .product-small .name a.woocommerce-loop-product__link {
  font-family: 'Fraunces', Georgia, serif !important;
}

/* B. Footer: columns ABOVE the copyright bar + continuous background (no white gaps) */
#footer { display: flex; flex-direction: column; background: #23211e; }
#footer .msc-footer { order: 1; }
#footer .absolute-footer { order: 2; background: #171614 !important; border-top: 1px solid rgba(255,255,255,.06); }
#footer .back-to-top { order: 3; }
/* kill any gap between the last page section and the footer */
#main, #content { margin-bottom: 0 !important; }
.msc-black-band { margin-bottom: 0 !important; }

/* ============================================================
   MEAGHAN SKIN CO POLISH v1.5 — final verification fixes
   ============================================================ */

/* A. Shop / category: remove the empty sidebar column, full-width products
   (theme_mod route doesn't take on this build; hide the column + widen content) */
.category-page-row > .col.large-3 { display: none !important; }
.category-page-row > .col.large-9 { max-width: 100% !important; flex-basis: 100% !important; width: 100% !important; }
#shop-sidebar { display: none !important; }

/* B. Close the 30px white strip between the last section and the footer */
#content { padding-bottom: 0 !important; }

/* C. Mobile: keep the wordmark from getting wide on small phones */
@media (max-width: 549px){
  .header-logo img, .logo img { max-width: 168px !important; }
  .msc-logo-first{font-size:1.3rem;}
}

/* ============================================================
   MEAGHAN SKIN CO POLISH v1.6 — footer seam
   ============================================================ */
/* The homepage content column carries a 30px bottom gutter that showed as a
   white seam between the last full-bleed (dark) section and the footer. */
.home .row-main > .col,
.home .content-area .row-main > .col.large-12 { padding-bottom: 0 !important; }

/* ============================================================
   MEAGHAN SKIN CO POLISH v1.7 — PDP quantity/CTA pairing,
   trust line, share icon cleanup
   ============================================================ */

/* 1. Quantity stepper: pill container, thin border, same height
   as the Add to Cart button, no individual boxed borders on the
   plus/minus inputs. Real markup on this build is
   <div class="ux-quantity quantity buttons_added"> with
   input.minus / input.qty / input.plus inside. */
.quantity.ux-quantity{
  display:inline-flex;align-items:stretch;height:48px;box-sizing:border-box;
  border:1px solid var(--msc-line);border-radius:999px;overflow:hidden;
  background:#fff;vertical-align:middle;margin-right:10px;
}
.quantity.ux-quantity .qty{
  border:0!important;box-shadow:none!important;background:transparent!important;
  width:48px;height:46px!important;line-height:46px!important;padding:0!important;
  text-align:center;font-family:'Work Sans',sans-serif;font-weight:600;color:var(--msc-black);
}
.quantity.ux-quantity .minus,.quantity.ux-quantity .plus{
  border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;
  width:40px;height:46px!important;color:var(--msc-black);font-size:13px;
}
.quantity.ux-quantity .minus:hover,.quantity.ux-quantity .plus:hover{
  background:var(--msc-blush)!important;color:var(--msc-rose-dark)!important;
}
form.cart .single_add_to_cart_button{
  height:48px!important;box-sizing:border-box;display:inline-flex!important;
  align-items:center;justify-content:center;vertical-align:middle;
}

/* 2. Trust line under Add to Cart (echoed via woocommerce_single_product_summary @35) */
.msc-trust-line{
  font-family:'Work Sans',sans-serif;font-size:.72rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--msc-rose-dark);
  margin:16px 0 0;
}

/* 3. Share icons: restyled as outline circles instead of the default flat
   Flatsome fill, scoped to the PDP share row. */
.share-icons.social-icons a.linkedin{display:none!important;}
.share-icons.social-icons .icon.circle.is-outline{
  border:1.5px solid var(--msc-black)!important;color:var(--msc-black)!important;
  background:transparent!important;
  transition:background .25s ease,color .25s ease,border-color .25s ease;
}
.share-icons.social-icons .icon.circle.is-outline:hover{
  background:var(--msc-black)!important;border-color:var(--msc-black)!important;color:#fff!important;
}
.share-icons.social-icons .icon.circle.is-outline.pinterest:hover,
.share-icons.social-icons .icon.circle.is-outline.email:hover{
  background:var(--msc-rose-dark)!important;border-color:var(--msc-rose-dark)!important;
}

/* ============================================================
   MEAGHAN SKIN CO — Founder slide badge treatment (2026-09-22)
   Placeholder photo (200x200, no IG ring artifact) shown as a
   small framed circular badge near her name, NOT as a full-bleed
   banner background. Slide bg is a soft brand-token gradient.
   ============================================================ */
.msc-founder-slide{background:linear-gradient(135deg, var(--msc-peach) 0%, var(--msc-off-white) 100%) !important;}
.msc-founder-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:.5em;}
.msc-founder-badge{width:200px;height:200px;max-width:200px;flex:0 0 200px;border-radius:50%;overflow:hidden;border:4px solid var(--msc-off-white);box-shadow:0 6px 20px rgba(28,27,25,.16);}
.msc-founder-badge .img,.msc-founder-badge .img-inner{width:100%;height:100%;}
.msc-founder-badge img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%;}
@media (max-width:549px){
  .msc-founder-badge{width:140px;height:140px;flex:0 0 140px;}
}

/* ============================================================
   MEAGHAN SKIN CO — Unified purchase-flow buttons (2026-09-22)
   Add to Cart (PDP), mini-cart "View cart"/"Checkout", cart page
   "Proceed to Checkout", and checkout "#place_order" all share
   one style: subtle rounded corners (not a pill, not square),
   brand pink background, accessible dark-grey text (4.6:1
   against the pink), normal font-weight. Scoped tightly so the
   homepage hero CTAs (.button.primary etc.) are NOT touched.
   ============================================================ */
:root{--msc-btn-text:#454340;}

.single_add_to_cart_button.button.alt,
.woocommerce-mini-cart__buttons .button,
.wc-proceed-to-checkout .checkout-button,
.wc-block-cart__submit-container .wc-block-cart__submit-button,
#place_order{
  border-radius:5% !important;
  background-color:var(--msc-rose) !important;
  border-color:var(--msc-rose) !important;
  color:var(--msc-btn-text) !important;
  font-weight:400 !important;
}
.single_add_to_cart_button.button.alt:hover,
.woocommerce-mini-cart__buttons .button:hover,
.wc-proceed-to-checkout .checkout-button:hover,
.wc-block-cart__submit-container .wc-block-cart__submit-button:hover,
#place_order:hover{
  background-color:var(--msc-rose-dark) !important;
  border-color:var(--msc-rose-dark) !important;
  color:var(--msc-btn-text) !important;
}

/* ============================================================
   MEAGHAN SKIN CO FOOTER v2 (2026-10-05)
   Blush band, centered logo + tagline, four columns, newsletter +
   social row, hairline, bottom row. Calligraphic art frames the left
   and right edges (desktop only). Markup: functions.php flatsome_footer
   hook (.msc-ft). Replaces the dark .msc-footer styling above.
   ============================================================ */
#footer.footer-wrapper{position:relative;overflow:hidden;background:#FCEFEE !important;color:#3a3330;border-radius:28px 28px 0 0;}
#footer .footer-1,#footer .footer-2{display:none !important;}
/* Flatsome copyright folded into the bottom row of .msc-ft; keep the payment icons only */
#footer .absolute-footer{background:transparent !important;border-top:0 !important;position:relative;z-index:1;order:3;padding:0 0 22px;}
#footer .absolute-footer .footer-primary{display:none !important;}
#footer .absolute-footer .footer-secondary{float:none !important;text-align:center;}
#footer .absolute-footer .payment-icons{opacity:.5;}
#footer .absolute-footer .payment-icon{background:transparent !important;}
#footer .absolute-footer .payment-icon svg{fill:#3a3330 !important;}
#footer .back-to-top{order:4;}
#footer .msc-ft{order:1;position:relative;z-index:1;padding:clamp(44px,6vw,72px) 20px 26px;font-family:'Work Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;}
#footer .msc-ft-inner{max-width:960px;margin:0 auto;}
#footer .msc-ft-brand{text-align:center;margin-bottom:clamp(30px,4vw,48px);}
#footer .msc-ft-brand .msc-logo img,#footer .msc-ft-brand .msc-logo-img{display:inline-block;width:100%;max-width:340px;height:auto;}
#footer .msc-ft-tag{margin:10px 0 0;font-size:12px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:#3a3330;}
#footer .msc-ft h4{font-family:'Work Sans',sans-serif !important;font-size:11.5px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:#3a3330 !important;margin:0 0 14px;line-height:1.4;}
#footer .msc-ft a{color:#3a3330 !important;text-decoration:none;}
#footer .msc-ft a:hover{color:#FF1F7D !important;}
#footer .msc-ft-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 28px;padding-bottom:34px;border-bottom:1px solid rgba(58,51,48,.16);}
#footer .msc-ft-col a,#footer .msc-ft-note{display:block;font-size:14.5px;line-height:2;color:#3a3330;}
#footer .msc-ft-note{color:#6b605b;}
#footer .msc-ft-join{display:grid;grid-template-columns:1.9fr 1fr;gap:0;padding:30px 0;border-bottom:1px solid rgba(58,51,48,.16);}
#footer .msc-ft-glow{padding-right:36px;border-right:1px solid rgba(58,51,48,.16);}
#footer .msc-ft-glow p{margin:0 0 14px;font-size:14px;line-height:1.6;color:#5a4f4a;}
#footer .msc-ft-connect{padding-left:36px;}
#footer .msc-ft a.msc-ft-ig{display:inline-flex;color:#FF1F7D !important;}
#footer .msc-ft a.msc-ft-ig:hover{opacity:.7;}
#footer .msc-ft .msc-news{display:flex;flex-wrap:wrap;gap:0;max-width:none;margin:0;justify-content:flex-start;position:relative;}
#footer .msc-ft .msc-news input[type=email]{flex:1 1 220px;min-width:0;height:46px;margin:0;padding:0 16px;border:1px solid rgba(58,51,48,.22);border-right:0;border-radius:0;background:rgba(255,255,255,.7);color:#3a3330;font-size:14px;box-shadow:none;}
#footer .msc-ft .msc-news input[type=email]::placeholder{color:#8a7f79;}
#footer .msc-ft .msc-news input[type=email]:focus{outline:none;border-color:#FF1F7D;background:#fff;}
#footer .msc-ft .msc-news button{flex:0 0 auto;height:46px;margin:0;padding:0 22px;border:1px solid #FF1F7D;border-radius:0;background:#FF1F7D;color:#fff;font-size:11.5px !important;font-weight:600;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;line-height:1;}
#footer .msc-ft .msc-news button:hover{background:#e0156b;border-color:#e0156b;}
#footer .msc-ft .msc-news-msg{flex-basis:100%;text-align:left;font-size:13px;color:#FF1F7D;min-height:18px;margin-top:8px;}
#footer .msc-ft-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;padding-top:22px;font-size:12.5px;color:#6b605b;}
#footer .msc-ft-legal{display:flex;flex-wrap:wrap;gap:8px 26px;}
#footer .msc-ft-legal a{font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;}
/* Calligraphic pattern frames the left and right edges (desktop only, never behind text) */
@media (min-width:1100px){
  #footer.footer-wrapper::before,#footer.footer-wrapper::after{content:"";position:absolute;top:0;bottom:0;z-index:0;pointer-events:none;width:calc((100% - 960px)/2 + 40px);max-width:380px;background-image:url(/wp-content/uploads/2026/09/msc-footer-pattern.webp);background-repeat:no-repeat;background-size:auto 80%;opacity:.42;}
  #footer.footer-wrapper::before{left:0;background-position:100% 50%;-webkit-mask-image:linear-gradient(to right,#000 0,#000 40%,transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 40%,transparent 100%);}
  #footer.footer-wrapper::after{right:0;background-position:0 50%;-webkit-mask-image:linear-gradient(to left,#000 0,#000 40%,transparent 100%);mask-image:linear-gradient(to left,#000 0,#000 40%,transparent 100%);}
}
@media (max-width:849px){
  #footer .msc-ft-cols{grid-template-columns:1fr 1fr;}
  #footer .msc-ft-join{grid-template-columns:1fr;gap:26px;}
  #footer .msc-ft-glow{padding-right:0;border-right:0;padding-bottom:26px;border-bottom:1px solid rgba(58,51,48,.16);}
  #footer .msc-ft-connect{padding-left:0;}
}
@media (max-width:479px){
  #footer.footer-wrapper{border-radius:20px 20px 0 0;}
  #footer .msc-ft-cols{grid-template-columns:1fr;gap:24px;}
  #footer .msc-ft-tag{letter-spacing:.22em;font-size:11px;}
  #footer .msc-ft-bottom{flex-direction:column;align-items:flex-start;}
}

/* ---------- Ultimate Member: match UM's own buttons to brand pink -------
   UM ships its own default blue (rgb(59,161,218)) on .um-button. Override
   to the same --msc-rose / --msc-rose-dark pink pill buttons used sitewide
   (see .button.primary above). Primary submit buttons (Login/Register) get
   the solid pink fill; the secondary toggle button UM renders next to it
   (.um-button.um-alt, e.g. "Register"/"Login" links beside the submit
   button) gets the outline treatment matching .button.secondary. Scoped to
   UM's own classes only, never touches Flatsome/WooCommerce buttons. */
.um-button{background-color:var(--msc-rose) !important;border-color:var(--msc-rose) !important;color:#fff !important;border-radius:999px !important;}
.um-button:hover{background-color:var(--msc-rose-dark) !important;border-color:var(--msc-rose-dark) !important;}
.um-button.um-alt{background:transparent !important;border:1.5px solid var(--msc-black) !important;color:var(--msc-black) !important;}
.um-button.um-alt:hover{background:var(--msc-black) !important;color:#fff !important;}
/* 2026-10-24: hide UM's own "switch form" secondary toggle buttons
   (.um-alt) on forms 207/208 specifically - redundant now that /my-account/
   shows Login and Register side by side already. Real submit buttons
   (#um-submit-btn, no .um-alt class) are untouched. */
.um-207 .um-button.um-alt,.um-208 .um-button.um-alt{display:none !important;}

/* ---------- My Account page: UM login+register side-by-side layout -----
   Injected via msc_myaccount_um_forms_for_logged_out() (functions.php) as
   raw wp-block-columns markup. Page 8's own post_content is just the
   [woocommerce_my_account] shortcode (not block-authored), so WordPress
   never enqueues wp-block-library CSS here and the .wp-block-columns flex
   layout has no effect - these explicit rules replace it. */
.msc-um-account-forms{display:flex;gap:56px;flex-wrap:wrap;align-items:flex-start;}
.msc-um-account-forms > div{flex:1 1 320px;min-width:280px;}
@media (max-width:767px){.msc-um-account-forms{flex-direction:column;gap:36px;}}

/* ---------- Affiliate brand panel (msc_affiliate_panel shortcode) -------
   Kept for reuse (e.g. by /my-account/) even though page 190 no longer
   renders it directly - 2026-10-23: page 190/191 now redirect logged-out
   visitors to /my-account/ instead of showing their own login forms, so
   the .msc-aff-split wrapper that used to pair this panel with the SliceWP
   form on page 190 was removed. Panel styling itself stays intact. */
.msc-aff-panel{flex:1 1 420px;position:relative;overflow:hidden;background:var(--msc-blush);display:flex;align-items:center;justify-content:center;text-align:center;padding:48px;}
.msc-aff-panel-inner{position:relative;z-index:1;max-width:320px;}
.msc-aff-panel .msc-logo{display:inline-block;margin-bottom:18px;}
.msc-aff-panel-tag{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--msc-rose-dark);margin:0 0 18px;}
.msc-aff-panel-copy{font-size:15px;line-height:1.7;color:var(--msc-grey);margin:0;}
.msc-aff-panel::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:url(/wp-content/uploads/2026/09/msc-footer-pattern.webp);background-repeat:no-repeat;background-position:center;background-size:140% auto;opacity:.14;-webkit-mask-image:radial-gradient(ellipse 60% 55% at center,#000 0%,transparent 72%);mask-image:radial-gradient(ellipse 60% 55% at center,#000 0%,transparent 72%);}
@media (max-width:849px){
  .msc-aff-panel{padding:40px 24px;min-height:260px;}
}
