/* =========================================================
   THE MIDLIFE GAL SINGLE PRODUCT EXPERIENCE v1.0.0
   Flat premium layout: editorial spacing, minimal boxes,
   clean alignment, responsive gallery, compact AI sections.
========================================================= */

.tmgsp-page,
.tmgsp-page *,
.tmgsp-lightbox,
.tmgsp-lightbox *{box-sizing:border-box}

html.tmgsp-lightbox-open,
html.tmgsp-lightbox-open body{overflow:hidden!important}

body.tmgsp-custom-product-page{background:#fff!important}

.tmgsp-page{
    --tmgsp-pink:#9A9B86;
    --tmgsp-pink-dark:#81836F;
    --tmgsp-raspberry:#81836F;
    --tmgsp-berry:#171615;
    --tmgsp-purple:#9A9B86;
    --tmgsp-purple-dark:#81836F;
    --tmgsp-coral:#DEB7AD;
    --tmgsp-orange:#CDA59B;
    --tmgsp-teal:#9A9B86;
    --tmgsp-blush:#F5F1EE;
    --tmgsp-blush-light:#FAF8F6;
    --tmgsp-pink-soft:#F0EBE8;
    --tmgsp-white:#FFFFFF;
    --tmgsp-text:#171615;
    --tmgsp-body:#55514E;
    --tmgsp-muted:#77716D;
    --tmgsp-border:#EAE4E0;
    --tmgsp-border-strong:#D8CFCA;
    width:100%;
    padding:24px 20px 64px;
    color:var(--tmgsp-body);
    background:#fff;
    font-family:Arial,Helvetica,sans-serif;
    -webkit-font-smoothing:antialiased;
}

.tmgsp-wrap{width:min(1480px,100%);margin:0 auto}

.tmgsp-notices .woocommerce-message,
.tmgsp-notices .woocommerce-error,
.tmgsp-notices .woocommerce-info{
    border:1px solid var(--tmgsp-border)!important;
    border-radius:10px!important;
    background:var(--tmgsp-blush)!important;
    color:var(--tmgsp-berry)!important;
    box-shadow:none!important;
}

/* Breadcrumbs */
.tmgsp-breadcrumbs{
    display:flex;align-items:center;flex-wrap:wrap;gap:6px;
    margin:0 0 17px;color:var(--tmgsp-muted);font-size:10px;line-height:1.4
}
.tmgsp-breadcrumbs a{color:var(--tmgsp-muted)!important;text-decoration:none!important}
.tmgsp-breadcrumbs a:hover{color:var(--tmgsp-pink-dark)!important}
.tmgsp-breadcrumbs i{opacity:.42;font-style:normal}
.tmgsp-breadcrumbs span{color:var(--tmgsp-berry)}

/* =========================================================
   TOP PRODUCT AREA - NO OUTER CARD
========================================================= */
.tmgsp-product-shell{
    display:grid;
    grid-template-columns:minmax(0,1.16fr) minmax(390px,.84fr);
    gap:clamp(34px,4.4vw,68px);
    align-items:start;
    padding:0 0 34px;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
    border-bottom:1px solid var(--tmgsp-border);
}

/* Gallery */
.tmgsp-gallery{
    min-width:0;
    display:grid;
    grid-template-columns:82px minmax(0,1fr);
    grid-template-areas:"thumbs main";
    gap:14px;
    align-items:start;
}
.tmgsp-main-image-wrap{
    grid-area:main;
    position:relative;
    width:100%;
    aspect-ratio:1/1;
    display:flex;align-items:center;justify-content:center;
    overflow:hidden;
    background:#fff;
    border:0;
    border-radius:0;
}
.tmgsp-main-image{
    display:block;
    width:100%!important;height:100%!important;max-width:none!important;
    padding:2px!important;
    object-fit:contain!important;object-position:center;
    cursor:zoom-in;
}
.tmgsp-zoom{
    position:absolute;right:10px;top:10px;
    width:36px;height:36px;padding:0;
    display:flex;align-items:center;justify-content:center;
    background:rgba(255,255,255,.94);
    border:1px solid var(--tmgsp-border);
    border-radius:50%;
    cursor:pointer;
    box-shadow:0 4px 12px rgba(35,29,26,.06)
}
.tmgsp-zoom img{width:15px;height:15px;display:block;opacity:.7}

.tmgsp-thumbs{
    grid-area:thumbs;
    display:flex;flex-direction:column;gap:8px;
    max-height:700px;overflow:auto;scrollbar-width:thin
}
.tmgsp-thumb{
    width:80px;height:80px;flex:0 0 80px;padding:4px;
    display:flex;align-items:center;justify-content:center;
    background:#fff;border:1px solid var(--tmgsp-pink-soft);border-radius:10px;
    overflow:hidden;cursor:pointer;
    transition:border-color .16s ease,box-shadow .16s ease
}
.tmgsp-thumb img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.tmgsp-thumb:hover,.tmgsp-thumb.is-active{border-color:var(--tmgsp-pink);box-shadow:0 3px 10px rgba(35,29,26,.05)}

/* Summary */
.tmgsp-summary{min-width:0;padding:8px 0 0}
.tmgsp-category-pill{
    display:inline-flex;align-items:center;min-height:26px;
    margin-bottom:12px;padding:6px 10px;
    color:var(--tmgsp-pink-dark);background:var(--tmgsp-blush-light);
    border:1px solid #EAE4E0;border-radius:999px;
    font-size:8px;line-height:1;font-weight:600;letter-spacing:.08em;text-transform:uppercase
}
.tmgsp-title{
    max-width:690px;margin:0!important;
    color:var(--tmgsp-berry)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(37px,3.35vw,52px)!important;
    line-height:1.01!important;font-weight:600!important;letter-spacing:-.025em!important
}
.tmgsp-price{
    margin:15px 0 0;color:var(--tmgsp-berry)!important;
    font-size:23px;line-height:1.15;font-weight:600
}
.tmgsp-price del{font-size:14px;color:var(--tmgsp-muted);font-weight:400}
.tmgsp-price ins{text-decoration:none;color:var(--tmgsp-berry)}
.tmgsp-short-description{
    max-width:680px;margin:15px 0 0;color:var(--tmgsp-body);
    font-size:12.5px;line-height:1.75
}

/* Purchase area - flat, not card-like */
.tmgsp-buy-card{
    margin-top:22px!important;
    padding:19px 0 0!important;
    background:transparent!important;
    border:0!important;
    border-top:1px solid var(--tmgsp-border)!important;
    border-radius:0!important;
}
.tmgsp-buy-heading{margin:0 0 12px!important;padding:0!important;border:0!important}
.tmgsp-buy-heading>span{
    display:block!important;margin:0 0 4px!important;
    color:var(--tmgsp-pink-dark)!important;
    font-size:8.5px!important;line-height:1!important;font-weight:600!important;
    letter-spacing:.1em!important;text-transform:uppercase!important
}
.tmgsp-buy-heading>strong{
    display:block!important;margin:0!important;color:var(--tmgsp-berry)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:24px!important;line-height:1.05!important;font-weight:600!important
}
.tmgsp-buy-heading>p{display:none!important}

.tmgsp-store-buy-button,
.tmgsp-buy-area .single_add_to_cart_button,
.tmgsp-buy-area a.single_add_to_cart_button,
.tmgsp-buy-area button.single_add_to_cart_button{
    min-height:50px!important;padding:0 22px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
    color:#fff!important;background:var(--tmgsp-pink)!important;
    border:1px solid var(--tmgsp-pink)!important;border-radius:9px!important;
    box-shadow:none!important;
    font-family:Arial,Helvetica,sans-serif!important;font-size:10.5px!important;font-weight:600!important;
    text-decoration:none!important;text-transform:none!important;
    transition:background-color .18s ease,transform .18s ease!important
}
.tmgsp-store-buy-button{width:100%!important}
.tmgsp-store-buy-button i{font-style:normal!important;font-size:14px!important}
.tmgsp-store-buy-button:hover,
.tmgsp-buy-area .single_add_to_cart_button:hover{
    color:#fff!important;background:var(--tmgsp-pink-dark)!important;border-color:var(--tmgsp-pink-dark)!important;transform:translateY(-1px)!important
}
.tmgsp-buy-area form.cart{margin:0!important;display:flex!important;align-items:stretch!important;gap:8px!important;flex-wrap:wrap!important}
.tmgsp-buy-area .quantity{margin:0!important}
.tmgsp-buy-area .quantity .qty{height:50px!important;min-width:70px!important;border:1px solid var(--tmgsp-border)!important;border-radius:9px!important;background:#fff!important}
.tmgsp-buy-area .variations{width:100%!important;margin:0 0 10px!important}
.tmgsp-buy-area .variations th,.tmgsp-buy-area .variations td{padding:5px 0!important}
.tmgsp-buy-area select{min-height:42px;border:1px solid var(--tmgsp-border)!important;border-radius:8px;background:#fff;padding:0 10px}
.tmgsp-buy-area .stock{margin:8px 0;color:var(--tmgsp-body);font-size:11px}
.tmgsp-wishlist-wrap{margin-top:9px}

/* Native The Midlife Gal Product Experience wishlist, expanded for the single-product purchase area. */
.tmgsp-wishlist-wrap .tmg-product-wishlist{
    position:relative!important;top:auto!important;right:auto!important;inset:auto!important;
    width:100%!important;height:42px!important;margin:0!important;padding:0!important;
    display:block!important;overflow:visible!important;border-radius:9px!important
}
.tmgsp-wishlist-wrap .tmg-product-wishlist-ui{
    position:relative!important;inset:auto!important;width:100%!important;height:42px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
    color:var(--tmgsp-pink)!important;background:#fff!important;
    border:1px solid var(--tmgsp-border)!important;border-radius:9px!important;box-shadow:none!important;
    font-family:Arial,Helvetica,sans-serif!important;font-size:10px!important;font-weight:700!important
}
.tmgsp-wishlist-wrap .tmg-product-wishlist-ui::after{content:"Save to Wishlist"}
.tmgsp-wishlist-wrap .tmg-product-wishlist.is-added .tmg-product-wishlist-ui{
    color:#fff!important;background:var(--tmgsp-raspberry)!important;border-color:var(--tmgsp-raspberry)!important
}
.tmgsp-wishlist-wrap .tmg-product-wishlist.is-added .tmg-product-wishlist-ui::after{content:"Saved to Wishlist"}
.tmgsp-wishlist-wrap .tmg-product-wishlist-heart{width:14px!important;height:14px!important;flex:0 0 14px!important}

/* Share */
.tmgsp-share{margin-top:15px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tmgsp-share-label{color:var(--tmgsp-berry);font-size:9.5px;font-weight:600}
.tmgsp-share-actions{display:flex;align-items:center;gap:6px}
.tmgsp-share-button{
    width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;
    background:#fff;border:1px solid var(--tmgsp-pink-soft);border-radius:50%;
    cursor:pointer;text-decoration:none!important;transition:.16s ease
}
.tmgsp-share-button:hover{background:var(--tmgsp-blush);border-color:#D8CFCA;transform:translateY(-1px)}
.tmgsp-share-button img{width:13px;height:13px;display:block;opacity:.72}
.tmgsp-share-status{font-size:9px;color:var(--tmgsp-pink-dark)}

/* =========================================================
   WHY PICKED + FAQ - ONE ALIGNED EDITORIAL ROW
   68% / 32%, no card shells
========================================================= */
.tmgsp-insights-grid{
    display:grid;
    grid-template-columns:minmax(0,2.15fr) minmax(300px,1fr);
    gap:clamp(30px,3.3vw,48px);
    align-items:start;
    margin:30px 0 0;
    padding:0 0 30px;
    border-bottom:1px solid var(--tmgsp-border)
}
.tmgsp-insights-grid.has-one-panel{grid-template-columns:1fr}
.tmgsp-why-column,.tmgsp-faq-column{min-width:0;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
.tmgsp-faq-column{padding-left:clamp(20px,2.4vw,34px);border-left:1px solid var(--tmgsp-border)!important;overflow:hidden!important}
.tmgsp-why-wrap{margin:0!important}
/* Desktop height is synchronized to Why We Picked by frontend.js.
   Extra FAQ questions stay inside this column instead of making the whole row taller. */
.tmgsp-faq-scroll{width:100%;height:auto;max-height:none;overflow-y:auto;overflow-x:hidden;padding-right:7px;scrollbar-width:thin;scrollbar-color:var(--tmgsp-pink) transparent}
.tmgsp-faq-scroll::-webkit-scrollbar{width:5px}
.tmgsp-faq-scroll::-webkit-scrollbar-track{background:transparent}
.tmgsp-faq-scroll::-webkit-scrollbar-thumb{background:rgba(154,155,134,.62);border-radius:99px}
.tmgsp-faq-scroll::-webkit-scrollbar-thumb:hover{background:var(--tmgsp-pink-dark)}

/* Why We Picked integration - flat list */
.tmgsp-page .gtd-whypicked,
.tmgsp-page .gtd-whypicked-loader{
    margin:0!important;padding:0!important;background:transparent!important;
    border:0!important;border-radius:0!important;box-shadow:none!important
}
.tmgsp-page .gtd-whypicked-hd{
    padding:0 0 13px!important;background:transparent!important;
    border:0!important;border-bottom:1px solid var(--tmgsp-pink-soft)!important
}
.tmgsp-page .gtd-whypicked-title,
.tmgsp-page .gtd-whypicked-loader-title{
    margin:0!important;color:var(--tmgsp-berry)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:28px!important;line-height:1.05!important;font-weight:600!important
}
.tmgsp-page .gtd-whypicked-sub{margin-top:4px!important;color:var(--tmgsp-muted)!important;font-size:10px!important}
.tmgsp-page .gtd-whypicked-bd{padding:3px 0 0!important}
.tmgsp-page .gtd-whypicked-grid{display:block!important;gap:0!important}
.tmgsp-page .gtd-whypicked-item{
    margin:0!important;padding:12px 0!important;gap:11px!important;
    background:transparent!important;background-image:none!important;
    border:0!important;border-bottom:1px solid var(--tmgsp-pink-soft)!important;
    border-radius:0!important;box-shadow:none!important
}
.tmgsp-page .gtd-whypicked-item:last-child{border-bottom:0!important}
.tmgsp-page .gtd-whypicked-ic{
    width:38px!important;height:38px!important;flex:0 0 38px!important;
    background:var(--tmgsp-blush-light)!important;color:var(--tmgsp-pink-dark)!important;border-radius:10px!important
}
.tmgsp-page .gtd-whypicked-txt strong{color:var(--tmgsp-berry)!important;font-size:10.5px!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:600!important}
.tmgsp-page .gtd-whypicked-txt div{color:var(--tmgsp-body)!important;font-size:10px!important;line-height:1.55!important}
.tmgsp-page .gtd-whypicked-note{color:var(--tmgsp-muted)!important;font-size:8px!important}
.tmgsp-page .gtd-whypicked-loader-inner{padding:0!important}
.tmgsp-page .gtd-whypicked-loader-text{color:var(--tmgsp-body)!important}
.tmgsp-page .gtd-whypicked-progress{background:var(--tmgsp-blush-light)!important}
.tmgsp-page .gtd-whypicked-progress-bar{background:var(--tmgsp-pink)!important}

/* Smart FAQ - flat, internally scrollable */
.tmgsp-page .gtd-sfaq,
.tmgsp-page .gtd-sfaq-loader{
    margin:0!important;padding:0!important;background:transparent!important;
    border:0!important;border-radius:0!important;box-shadow:none!important
}
.tmgsp-page .gtd-sfaq-inner{padding:0!important}
.tmgsp-page .gtd-sfaq h2,
.tmgsp-page .gtd-sfaq-loader-title{
    margin:0 0 11px!important;padding:0 0 13px!important;
    color:var(--tmgsp-berry)!important;
    border-bottom:1px solid var(--tmgsp-pink-soft)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:28px!important;line-height:1.05!important;font-weight:600!important
}
.tmgsp-page .gtd-sfaq details{padding:10px 0!important;border:0!important;border-bottom:1px solid var(--tmgsp-pink-soft)!important}
.tmgsp-page .gtd-sfaq summary{color:var(--tmgsp-berry)!important;font-size:10px!important;line-height:1.45!important;font-weight:600!important}
.tmgsp-page .gtd-sfaq summary::after{color:var(--tmgsp-pink-dark)!important}
.tmgsp-page .gtd-sfaq-a{color:var(--tmgsp-body)!important;font-size:9.8px!important;line-height:1.6!important}
.tmgsp-page .gtd-sfaq-note{margin-top:10px!important;color:var(--tmgsp-muted)!important;font-size:7.5px!important;line-height:1.5!important}
.tmgsp-page .gtd-sfaq-loader{padding:0!important}
.tmgsp-page .gtd-sfaq-loader-text{color:var(--tmgsp-body)!important;font-size:10px!important}
.tmgsp-page .gtd-sfaq-progress{background:var(--tmgsp-blush-light)!important}
.tmgsp-page .gtd-sfaq-progress span{background:var(--tmgsp-pink)!important}

/* =========================================================
   PRODUCT DETAILS - FULL WIDTH, NO OUTER CARD
========================================================= */
.tmgsp-details-full{
    width:100%;
    margin:0;
    padding:30px 0 34px;
    background:transparent!important;
    border:0!important;
    border-bottom:1px solid var(--tmgsp-border)!important;
    border-radius:0!important;
    box-shadow:none!important;
}
.tmgsp-page .gtd-pdesc,
.tmgsp-page .gtd-pdesc-loader{
    margin:0!important;border:0!important;border-radius:0!important;
    background:transparent!important;box-shadow:none!important
}
.tmgsp-page .gtd-pdesc-inner,
.tmgsp-page .gtd-pdesc-loader-inner{padding:0!important}
.tmgsp-page .gtd-pdesc h2,
.tmgsp-page .gtd-pdesc-loader h2,
.tmgsp-fallback-description h2{
    margin:0 0 14px!important;color:var(--tmgsp-berry)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:31px!important;line-height:1.05!important;font-weight:600!important
}
.tmgsp-page .gtd-pdesc .gtd-pdesc-text,
.tmgsp-fallback-description{
    max-width:none!important;color:var(--tmgsp-body)!important;
    font-size:12px!important;line-height:1.75!important
}
.tmgsp-page .gtd-pdesc .gtd-pdesc-text p{margin:0 0 11px!important}
.tmgsp-page .gtd-pdesc .gtd-pdesc-text ul{margin:8px 0 13px 20px!important}
.tmgsp-fallback-description{padding:0!important}

/* Pros / Cons: editorial split, not two floating cards */
.tmgsp-page .gtd-proscons{
    margin-top:22px!important;padding:20px 0 0!important;
    background:transparent!important;border:0!important;border-top:1px solid var(--tmgsp-pink-soft)!important;
    border-radius:0!important
}
.tmgsp-page .gtd-proscons h3{
    margin:0 0 13px!important;color:var(--tmgsp-berry)!important;
    font-family:Georgia,"Times New Roman",serif!important;font-size:24px!important;font-weight:600!important
}
.tmgsp-page .gtd-proscons-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:32px!important}
.tmgsp-page .gtd-proscons-box{
    padding:12px 0 0!important;background:transparent!important;border:0!important;border-radius:0!important
}
.tmgsp-page .gtd-pros-box{border-top:2px solid var(--tmgsp-teal)!important}
.tmgsp-page .gtd-cons-box{border-top:2px solid var(--tmgsp-coral)!important}
.tmgsp-page .gtd-proscons-box strong{color:var(--tmgsp-berry)!important;font-size:10.5px!important;font-weight:600!important}
.tmgsp-page .gtd-proscons-box li{font-size:10.5px!important;line-height:1.55!important;margin-bottom:5px!important}
.tmgsp-page .gtd-pdesc-note{color:var(--tmgsp-muted)!important;font-size:8px!important}
.tmgsp-page .gtd-pdesc-bar{background:var(--tmgsp-blush-light)!important}
.tmgsp-page .gtd-pdesc-bar span{background:var(--tmgsp-pink)!important;background-image:none!important}

/* =========================================================
   RELATED PRODUCTS - OPEN EDITORIAL GRID
========================================================= */
.tmgsp-related{margin-top:30px;padding-top:0}
.tmgsp-section-head{
    width:100%;margin:0 0 18px!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
    align-items:end!important;gap:12px 24px!important;text-align:left!important
}
.tmgsp-section-head>span{display:block!important;grid-column:1;margin:0 0 2px!important;color:var(--tmgsp-pink-dark)!important;font-size:8px!important;font-weight:600!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.tmgsp-section-head h2{grid-column:1;margin:0!important;color:var(--tmgsp-berry)!important;font-family:Georgia,"Times New Roman",serif!important;font-size:34px!important;line-height:1.03!important;font-weight:600!important;letter-spacing:-.02em!important}
.tmgsp-section-head p{grid-column:1;max-width:640px!important;margin:5px 0 0!important;color:var(--tmgsp-body)!important;font-size:10px!important;line-height:1.55!important}
.tmgsp-section-head__bar{display:none!important}
.tmgsp-related-collection-link{grid-column:2;grid-row:1/4;align-self:end;display:inline-flex!important;margin:0!important;color:var(--tmgsp-pink-dark)!important;font-size:9.5px!important;font-weight:600!important;text-decoration:none!important}

.tmgsp-related-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.tmgsp-related-card{
    min-width:0;overflow:visible;background:transparent!important;
    border:0!important;border-radius:0!important;box-shadow:none!important;
    transition:transform .18s ease
}
.tmgsp-related-card:hover{transform:translateY(-2px)!important;box-shadow:none!important}
.tmgsp-related-image{
    display:flex;width:100%;aspect-ratio:1/1;align-items:center;justify-content:center;
    padding:5px;background:#fff;border:1px solid var(--tmgsp-pink-soft);border-radius:10px;overflow:hidden
}
.tmgsp-related-image img{display:block;width:100%;height:100%;object-fit:contain;background:#fff;transition:transform .22s ease}
.tmgsp-related-card:hover .tmgsp-related-image img{transform:scale(1.02)}
.tmgsp-related-body{padding:9px 1px 0!important}
.tmgsp-related-cat{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--tmgsp-pink-dark);font-size:6.8px;line-height:1.2;font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.tmgsp-related-body h3{height:36px!important;min-height:36px!important;max-height:36px!important;margin:5px 0 8px!important;overflow:hidden!important;font-family:Arial,Helvetica,sans-serif!important;font-size:9.5px!important;line-height:18px!important;font-weight:600!important}
.tmgsp-related-body h3 a{display:block!important;height:36px!important;max-height:36px!important;overflow:hidden!important;color:var(--tmgsp-berry)!important;text-decoration:none!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;white-space:normal!important;text-overflow:ellipsis!important}
.tmgsp-related-bottom{display:flex;align-items:center;justify-content:space-between;gap:7px}
.tmgsp-related-price{color:var(--tmgsp-berry);font-size:9.5px;font-weight:600}
.tmgsp-related-price del{font-size:7.5px;color:var(--tmgsp-muted);font-weight:400}
.tmgsp-related-price ins{text-decoration:none}
.tmgsp-related-arrow{width:25px;height:25px;display:flex;align-items:center;justify-content:center;flex:0 0 25px;color:#fff!important;background:var(--tmgsp-pink);border-radius:50%;text-decoration:none!important;font-size:10px}

/* Lightbox */
.tmgsp-lightbox{
    position:fixed;z-index:999999;inset:0;
    display:flex;align-items:center;justify-content:center;padding:30px;
    background:rgba(53,24,39,.92);opacity:0;visibility:hidden;pointer-events:none;transition:.18s ease
}
.tmgsp-lightbox.is-open{opacity:1;visibility:visible;pointer-events:auto}
.tmgsp-lightbox__stage{width:min(900px,88vw);height:min(820px,82vh);display:flex;align-items:center;justify-content:center;background:#fff;border-radius:14px;overflow:hidden}
.tmgsp-lightbox__stage img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.tmgsp-lightbox__close,.tmgsp-lightbox__prev,.tmgsp-lightbox__next{position:absolute;padding:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:50%;cursor:pointer}
.tmgsp-lightbox__close{top:18px;right:18px;width:43px;height:43px;font-size:24px}
.tmgsp-lightbox__prev,.tmgsp-lightbox__next{top:50%;width:48px;height:48px;transform:translateY(-50%);font-size:32px}
.tmgsp-lightbox__prev{left:18px}.tmgsp-lightbox__next{right:18px}

.tmgsp-mobile-sticky{display:none}

/* Tablet */
@media(max-width:1100px){
    .tmgsp-product-shell{grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);gap:30px}
    .tmgsp-insights-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:28px}
    .tmgsp-related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
}

@media(max-width:900px){
    .tmgsp-page{padding:18px 14px 86px}
    .tmgsp-product-shell{grid-template-columns:1fr;gap:24px;padding-bottom:26px}
    .tmgsp-gallery{max-width:760px;width:100%;margin:0 auto;grid-template-columns:1fr;grid-template-areas:"main" "thumbs";gap:9px}
    .tmgsp-thumbs{width:100%;flex-direction:row;max-height:none;overflow-x:auto;padding-bottom:2px}
    .tmgsp-thumb{width:67px;height:67px;flex-basis:67px}
    .tmgsp-summary{padding:0}
    .tmgsp-insights-grid{grid-template-columns:1fr;gap:0;padding-bottom:26px}
    .tmgsp-faq-column{height:auto!important;padding:24px 0 0;border-left:0!important;border-top:1px solid var(--tmgsp-border)!important;overflow:visible!important}
    .tmgsp-faq-scroll{height:auto!important;max-height:340px!important;overflow-y:auto!important}
}

@media(max-width:640px){
    .tmgsp-page{padding:12px 10px 88px}
    .tmgsp-breadcrumbs{margin-bottom:10px;font-size:8.5px;gap:4px}
    .tmgsp-product-shell{gap:18px;padding-bottom:22px}
    .tmgsp-main-image-wrap{aspect-ratio:1/1}
    .tmgsp-main-image{padding:2px!important}
    .tmgsp-zoom{right:7px;top:7px;width:33px;height:33px}
    .tmgsp-thumbs{gap:6px}
    .tmgsp-thumb{width:58px;height:58px;flex-basis:58px;border-radius:8px}
    .tmgsp-category-pill{margin-bottom:9px;font-size:7.2px;padding:5px 8px}
    .tmgsp-title{font-size:32px!important;line-height:1.02!important}
    .tmgsp-price{margin-top:11px;font-size:20px}
    .tmgsp-short-description{margin-top:11px;font-size:11px;line-height:1.65}
    .tmgsp-buy-card{margin-top:16px!important;padding-top:15px!important}
    .tmgsp-buy-heading>strong{font-size:22px!important}
    .tmgsp-store-buy-button,.tmgsp-buy-area .single_add_to_cart_button,.tmgsp-buy-area a.single_add_to_cart_button,.tmgsp-buy-area button.single_add_to_cart_button{width:100%!important;min-height:48px!important;flex:1 1 100%!important}
    .tmgsp-buy-area .quantity{width:100%!important}
    .tmgsp-buy-area .quantity .qty{width:100%!important}
    .tmgsp-share{margin-top:12px}

    .tmgsp-insights-grid{margin-top:22px}
    .tmgsp-page .gtd-whypicked-title,.tmgsp-page .gtd-whypicked-loader-title,
    .tmgsp-page .gtd-sfaq h2,.tmgsp-page .gtd-sfaq-loader-title{font-size:24px!important}
    .tmgsp-page .gtd-whypicked-item{padding:10px 0!important}
    .tmgsp-page .gtd-whypicked-ic{width:34px!important;height:34px!important;flex-basis:34px!important}
    .tmgsp-faq-column{height:auto!important;padding-top:20px}
    .tmgsp-faq-scroll{height:auto!important;max-height:315px!important}

    .tmgsp-details-full{padding:24px 0 27px}
    .tmgsp-page .gtd-pdesc h2,.tmgsp-page .gtd-pdesc-loader h2,.tmgsp-fallback-description h2{font-size:27px!important}
    .tmgsp-page .gtd-pdesc .gtd-pdesc-text,.tmgsp-fallback-description{font-size:11.3px!important;line-height:1.7!important}
    .tmgsp-page .gtd-proscons{margin-top:18px!important;padding-top:17px!important}
    .tmgsp-page .gtd-proscons h3{font-size:22px!important}
    .tmgsp-page .gtd-proscons-grid{grid-template-columns:1fr!important;gap:18px!important}

    .tmgsp-related{margin-top:24px}
    .tmgsp-section-head{display:block!important;margin-bottom:14px!important}
    .tmgsp-section-head h2{font-size:29px!important}
    .tmgsp-section-head p{font-size:9.5px!important}
    .tmgsp-related-collection-link{display:inline-flex!important;margin-top:8px!important}
    .tmgsp-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 9px}
    .tmgsp-related-body{padding-top:7px!important}
    .tmgsp-related-body h3{height:34px!important;min-height:34px!important;max-height:34px!important;font-size:9.2px!important;line-height:17px!important}
    .tmgsp-related-body h3 a{height:34px!important;max-height:34px!important}
    .tmgsp-related-price{font-size:9.2px}
    .tmgsp-related-arrow{width:24px;height:24px;flex-basis:24px}

    .tmgsp-lightbox{padding:12px}
    .tmgsp-lightbox__stage{width:92vw;height:76vh;border-radius:12px}
    .tmgsp-lightbox__prev,.tmgsp-lightbox__next{width:39px;height:39px;font-size:26px}
    .tmgsp-lightbox__prev{left:8px}.tmgsp-lightbox__next{right:8px}
    .tmgsp-lightbox__close{top:8px;right:8px;width:38px;height:38px}

    .tmgsp-mobile-sticky{
        position:fixed;z-index:99990;left:0;right:0;bottom:0;
        min-height:64px;padding:9px 11px calc(9px + env(safe-area-inset-bottom));
        display:flex;align-items:center;gap:9px;
        background:rgba(255,255,255,.97);border-top:1px solid var(--tmgsp-border);
        box-shadow:0 -8px 24px rgba(35,29,26,.09);backdrop-filter:blur(8px)
    }
    .tmgsp-mobile-sticky__price{flex:0 1 auto;color:var(--tmgsp-berry);font-size:14px;font-weight:600;white-space:nowrap}
    .tmgsp-mobile-sticky__button{min-height:45px;flex:1 1 auto;padding:0 14px;display:flex;align-items:center;justify-content:center;color:#fff!important;background:var(--tmgsp-pink);border:1px solid var(--tmgsp-pink);border-radius:9px;text-decoration:none!important;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:600;cursor:pointer}
}

@media(prefers-reduced-motion:reduce){
    .tmgsp-page *, .tmgsp-lightbox *{transition:none!important;scroll-behavior:auto!important}
}
\n\n/* =========================================================
   THE MIDLIFE GAL FINAL DESIGN OVERRIDES
   Site palette: sage / blush / cream / soft neutral borders.
   ========================================================= */
.tmgsp-page{
    --tmgsp-pink:#9a9b86;
    --tmgsp-pink-dark:#81836f;
    --tmgsp-raspberry:#81836f;
    --tmgsp-berry:#171615;
    --tmgsp-purple:#9a9b86;
    --tmgsp-purple-dark:#81836f;
    --tmgsp-coral:#deb7ad;
    --tmgsp-orange:#cda59b;
    --tmgsp-teal:#9a9b86;
    --tmgsp-blush:#f5f1ee;
    --tmgsp-blush-light:#faf8f6;
    --tmgsp-pink-soft:#eae4e0;
    --tmgsp-white:#fff;
    --tmgsp-text:#171615;
    --tmgsp-body:#55514e;
    --tmgsp-muted:#77716d;
    --tmgsp-border:#eae4e0;
    --tmgsp-border-strong:#d8cfca;
    background:#fff!important;
    color:var(--tmgsp-body)!important;
    font-family:Arial,Helvetica,sans-serif!important;
}
.tmgsp-title,
.tmgsp-buy-heading>strong,
.tmgsp-page .gtd-whypicked-title,
.tmgsp-page .gtd-whypicked-loader-title,
.tmgsp-page .gtd-sfaq h2,
.tmgsp-page .gtd-sfaq-loader-title,
.tmgsp-page .gtd-pdesc h2,
.tmgsp-page .gtd-pdesc-loader h2,
.tmgsp-fallback-description h2,
.tmgsp-page .gtd-proscons h3,
.tmgsp-section-head h2{
    color:#171615!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-weight:500!important;
}
.tmgsp-breadcrumbs a:hover,
.tmgsp-category-pill,
.tmgsp-buy-heading>span,
.tmgsp-share-label,
.tmgsp-section-head>span,
.tmgsp-related-collection-link,
.tmgsp-related-cat{color:#81836f!important}
.tmgsp-category-pill{background:#f5f1ee!important;border-color:#eae4e0!important}
.tmgsp-product-shell,.tmgsp-buy-card,.tmgsp-insights-grid,.tmgsp-details-full{border-color:#eae4e0!important}
.tmgsp-thumb,.tmgsp-zoom,.tmgsp-share-button{border-color:#eae4e0!important}
.tmgsp-thumb:hover,.tmgsp-thumb.is-active{border-color:#9a9b86!important}
.tmgsp-store-buy-button,
.tmgsp-buy-area .single_add_to_cart_button,
.tmgsp-buy-area a.single_add_to_cart_button,
.tmgsp-buy-area button.single_add_to_cart_button,
.tmgsp-mobile-sticky__button{
    background:#9a9b86!important;
    border-color:#9a9b86!important;
    color:#fff!important;
}
.tmgsp-store-buy-button:hover,
.tmgsp-buy-area .single_add_to_cart_button:hover,
.tmgsp-buy-area a.single_add_to_cart_button:hover,
.tmgsp-buy-area button.single_add_to_cart_button:hover,
.tmgsp-mobile-sticky__button:hover{
    background:#81836f!important;
    border-color:#81836f!important;
}

/* Native wishlist from The Midlife Gal Product Experience */
.tmgsp-wishlist-wrap .tmg-product-wishlist{position:static!important;width:100%!important}
.tmgsp-wishlist-wrap .tmg-product-wishlist-ui{
    width:100%!important;min-height:44px!important;padding:0 14px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
    background:#fff!important;border:1px solid #eae4e0!important;border-radius:5px!important;
    color:#171615!important;cursor:pointer!important;font-family:Arial,Helvetica,sans-serif!important;
    font-size:10.5px!important;font-weight:700!important;
}
.tmgsp-wishlist-wrap .tmg-product-wishlist-ui::after{content:"Save to Wishlist"!important}
.tmgsp-wishlist-wrap .tmg-product-wishlist.is-added .tmg-product-wishlist-ui{background:#f5f1ee!important;border-color:#9a9b86!important;color:#171615!important}
.tmgsp-wishlist-wrap .tmg-product-wishlist.is-added .tmg-product-wishlist-ui::after{content:"Saved to Wishlist"!important}
.tmgsp-wishlist-wrap .tmg-product-wishlist-heart{width:15px!important;height:15px!important;flex:0 0 15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
.tmgsp-wishlist-wrap .tmg-product-wishlist.is-added .tmg-product-wishlist-heart{fill:#deb7ad!important;stroke:#81836f!important}

/* Related recommendations intentionally mirror the homepage product cards. */
.tmgsp-related-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}
.tmgsp-related-card{
    overflow:hidden!important;background:#fff!important;border:1px solid #eae4e0!important;
    border-radius:8px!important;box-shadow:0 3px 16px rgba(42,35,31,.025)!important;
    padding:16px!important;display:flex!important;flex-direction:column!important;height:100%!important;
}
.tmgsp-related-card:hover{transform:translateY(-3px)!important;border-color:rgba(154,155,134,.34)!important;box-shadow:0 12px 28px rgba(42,35,31,.065)!important}
.tmgsp-related-image{aspect-ratio:1/1!important;padding:3px!important;border:0!important;border-radius:0!important;background:#fff!important}
.tmgsp-related-body{padding:12px 0 0!important;display:flex!important;flex:1!important;flex-direction:column!important;text-align:center!important}
.tmgsp-related-cat{font-size:8px!important;letter-spacing:.08em!important}
.tmgsp-related-body h3{height:44px!important;min-height:44px!important;max-height:44px!important;margin:6px 0 8px!important;font-family:Georgia,"Times New Roman",serif!important;font-size:15.5px!important;line-height:22px!important;font-weight:500!important}
.tmgsp-related-body h3 a{height:44px!important;max-height:44px!important;color:#171615!important}
.tmgsp-related-price{font-size:12px!important;color:#171615!important}
.tmgsp-related-bottom{margin-top:auto!important;justify-content:center!important;gap:10px!important}
.tmgsp-related-arrow{width:28px!important;height:28px!important;flex-basis:28px!important;background:#deb7ad!important;border-radius:50%!important}
.tmgsp-related-card:hover .tmgsp-related-arrow{background:#cda59b!important}

/* AI blocks use the same calm palette without medical-looking alarm colors. */
.tmgsp-page .gtd-pros-box{border-top-color:#9a9b86!important}
.tmgsp-page .gtd-cons-box{border-top-color:#deb7ad!important}
.tmgsp-page .gtd-whypicked-progress-bar,
.tmgsp-page .gtd-sfaq-progress span,
.tmgsp-page .gtd-pdesc-bar span{background:#9a9b86!important}
.tmgsp-page .gtd-whypicked-progress,
.tmgsp-page .gtd-sfaq-progress,
.tmgsp-page .gtd-pdesc-bar{background:#eae4e0!important}

.tmgsp-lightbox{background:rgba(23,22,21,.90)!important}
.tmgsp-mobile-sticky{border-top-color:#eae4e0!important;box-shadow:0 -8px 24px rgba(35,29,26,.08)!important}

@media(max-width:1100px){.tmgsp-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){
    .tmgsp-page{padding-left:12px!important;padding-right:12px!important}
    .tmgsp-title{font-size:31px!important;line-height:1.08!important}
    .tmgsp-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
    .tmgsp-related-card{padding:10px!important;border-radius:7px!important}
    .tmgsp-related-body h3{height:38px!important;min-height:38px!important;max-height:38px!important;font-size:13.5px!important;line-height:19px!important}
    .tmgsp-related-body h3 a{height:38px!important;max-height:38px!important}
    .tmgsp-related-price{font-size:10.5px!important}
}
