/* Approved two-screen phone product layout; desktop keeps its current presentation. */
.cmm-mobile-purchase-summary,.cmm-mobile-saving,.cmm-mobile-title-favorite,.cmm-mobile-quantity-step,.cmm-mobile-configuration{display:none}
@media(max-width:760px){
body.page-template-product-presentation{background:#fcfbf8}
body.page-template-product-presentation .announcement,body.page-template-product-presentation .cmm-header-search{display:none}
body.page-template-product-presentation .cmm-header-top{padding-bottom:8px}
body .cmm-immersive.cmm-product-mobile-ready{background:#fcfbf8;color:#14241c}
body .cmm-product-mobile-ready .cmm-product-gallery{height:var(--cmm-mobile-photo-height,calc(100svh - 250px));min-height:260px;max-height:780px;background:#eeebe4}
body .cmm-product-mobile-ready .cmm-gallery-main img{object-fit:contain}
body .cmm-product-mobile-ready .cmm-gallery-main:has(img[src*="dimensions"]) img{object-fit:contain}
body .cmm-product-mobile-ready .cmm-gallery-thumbnails{display:none}
body .cmm-product-mobile-ready .cmm-gallery-counter{left:16px;bottom:16px;font-size:13px;padding:7px 12px;background:#213f32b3}
body .cmm-product-mobile-ready .cmm-gallery-arrow{width:40px;height:40px;top:46%;font-size:28px}
body .cmm-product-mobile-ready .cmm-gallery-arrow.prev{left:12px}body .cmm-product-mobile-ready .cmm-gallery-arrow.next{right:12px}
body .cmm-product-mobile-ready .cmm-product-details{padding:16px 20px 24px;background:#fcfbf8;display:block}
body .cmm-product-mobile-ready .cmm-product-breadcrumb{display:none}
body .cmm-product-mobile-ready .cmm-product-heading{position:relative;margin:0}
body .cmm-product-mobile-ready .cmm-product-heading h1{font:400 clamp(28px,8.3vw,38px)/1.02 'CMM Caslon',Georgia,serif;letter-spacing:-.025em;color:#111a15;margin:0 40px 8px 0;text-wrap:initial}
body .cmm-product-mobile-ready .cmm-immersive-subtitle{font-size:.7em}
body .cmm-product-mobile-ready .cmm-product-heading>div>p{font-size:14px;line-height:1.4;color:#757971;margin:0 0 12px}
body .cmm-product-mobile-ready .cmm-mobile-title-favorite{display:grid;position:absolute!important;right:-6px;top:0;width:40px;height:40px;background:none;border:0;border-radius:0}
body .cmm-product-mobile-ready .cmm-configuration-content{margin:0;padding:0}
body .cmm-product-mobile-ready .cmm-product-options{margin:0;padding:0}
body .cmm-product-mobile-ready .cmm-variant-choices{margin:0;padding:0;border:0}
body .cmm-product-mobile-ready .cmm-color-choices legend{display:none}
body .cmm-product-mobile-ready .cmm-color-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px}
body .cmm-product-mobile-ready .cmm-color-choices .cmm-variant-choice,body .cmm-product-mobile-ready .cmm-color-option{width:auto;min-width:48px;min-height:54px;padding:5px 6px;gap:5px;border:0;background:none;flex:0 0 auto;box-shadow:none}
body .cmm-product-mobile-ready .cmm-sofa-swatch{width:25px;height:25px;min-width:25px;border-width:2px}
body .cmm-product-mobile-ready .cmm-sofa-color-copy strong,body .cmm-product-mobile-ready .cmm-color-option>span:last-child{font-size:11px;font-weight:400;line-height:1.2}
body .cmm-product-mobile-ready .cmm-config-options{gap:6px}
body .cmm-product-mobile-ready .cmm-config-step legend{font-size:12px}
body .cmm-product-mobile-ready .cmm-mobile-purchase-summary{display:block;padding-top:26px;margin-top:18px;border-top:1px solid #e1e3dc;scroll-margin-top:76px}
.cmm-mobile-purchase-name{font-size:10px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px}
.cmm-mobile-selected{font-size:14px;margin:0 0 18px;color:#424c45}
body .cmm-product-mobile-ready .cmm-product-price-row{display:block;margin:0;padding:0}
body .cmm-product-mobile-ready .cmm-sofa-price{margin:0;width:100%}
body .cmm-product-mobile-ready .cmm-product-price-row .cmm-price{font:400 clamp(28px,8.8vw,38px)/1.15 'CMM Caslon',Georgia,serif!important;display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#101c16}
body .cmm-product-mobile-ready .cmm-price-comparison{margin:0;gap:8px}
body .cmm-product-mobile-ready .cmm-price-public del{font-size:14px;color:#878a84}
body .cmm-product-mobile-ready .cmm-member-discount{font-size:12px;border-radius:20px;padding:6px 9px;background:#e3ecdf;color:#203f30}
body .cmm-product-mobile-ready .cmm-product-member-invite{display:none}
body .cmm-product-mobile-ready .cmm-mobile-saving{display:block;font-size:14px;color:#203f30;margin:8px 0 18px}
body .cmm-product-mobile-ready .cmm-mobile-saving[hidden]{display:none}
body .cmm-product-mobile-ready .cmm-sofa-order-row{grid-template-columns:minmax(0,1fr) 44px;gap:12px;margin:12px 0 18px}
body .cmm-product-mobile-ready .cmm-sofa-quantity{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:0;align-items:center}
body .cmm-product-mobile-ready .cmm-sofa-quantity label{flex:0 0 100%;font-size:14px;margin:0 0 9px}
body .cmm-product-mobile-ready .cmm-mobile-quantity-step{display:block;height:44px;width:44px;border:1px solid #cdd2ca;background:#fff;color:#203b2d;font-size:22px;border-radius:0}
body .cmm-product-mobile-ready .cmm-mobile-quantity-step:first-of-type{border-radius:7px 0 0 7px;border-right:0}
body .cmm-product-mobile-ready .cmm-mobile-quantity-step:last-of-type{border-radius:0 7px 7px 0;border-left:0}
body .cmm-product-mobile-ready .cmm-mobile-quantity-step:disabled{opacity:.4}
body .cmm-product-mobile-ready .cmm-sofa-quantity select.cmm-quantity{height:44px;width:54px;border:1px solid #cdd2ca;border-left:0;border-right:0;border-radius:0;text-align:center;padding:0;background:#fff;appearance:none;font-size:16px}
body .cmm-product-mobile-ready .cmm-configuration-favorite{align-self:end;width:44px;height:44px;background:none;border:1px solid #cdd2ca}
body .cmm-product-mobile-ready .cmm-sofa-order-row .cmm-buy-button{min-height:48px;border-radius:8px;font:400 18px/1.3 'CMM Sans',Arial;background:#203f30;padding:12px}
body .cmm-product-mobile-ready .cmm-delivery{margin:16px 0 20px;padding:18px 0;border-block:1px solid #dadfd6}
body .cmm-product-mobile-ready .cmm-delivery>strong{font-size:14px;line-height:1.5}
body .cmm-product-mobile-ready .cmm-delivery p,body .cmm-product-mobile-ready .cmm-sofa-delivery-details summary{font-size:12px;line-height:1.5}
body .cmm-product-mobile-ready .cmm-product-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 20px;padding:8px 0 20px;border-top:0}
body .cmm-product-mobile-ready .cmm-product-facts li{padding:32px 5px 0;text-align:center;font-size:12px;border-right:1px solid #dadfd6}
body .cmm-product-mobile-ready .cmm-product-facts li:last-child{border-right:0}
body .cmm-product-mobile-ready .cmm-product-facts li:before{left:calc(50% - 13px);background:none;color:#203f30}
body .cmm-product-mobile-ready .cmm-product-facts li strong{font-size:12px}
body .cmm-product-mobile-ready .cmm-product-facts li span{display:none}
body .cmm-product-mobile-ready .cmm-immersive-description{position:static;margin:20px 0;font-size:13px;line-height:1.65}
body .cmm-product-mobile-ready .cmm-immersive-description summary{font:400 28px/1.1 'CMM Caslon',Georgia,serif;text-decoration:none;color:#15231a}
body .cmm-product-mobile-ready .cmm-description-copy{position:static;width:auto;max-height:none;overflow:visible;padding:12px 0 0;background:none;border:0;border-radius:0;box-shadow:none;font-size:13px;line-height:1.65}
body .cmm-product-mobile-ready .cmm-mobile-configuration{display:block;border-block:1px solid #dadfd6;padding:14px 0;font-size:13px;line-height:1.6}
.cmm-mobile-configuration summary{cursor:pointer;font-size:15px}
.cmm-mobile-configuration button{background:none;border:0;color:#203f30;text-decoration:underline;font:inherit;padding:10px 0;cursor:pointer}
body .cmm-product-mobile-ready .cmm-stock-notice{font-size:12px}
}
@media(max-width:760px){
body .cmm-product-mobile-ready .cmm-mobile-title-favorite svg{width:26px;height:26px}
body .cmm-product-mobile-ready .cmm-product-price-row .cmm-price{font-size:38px!important}
body .cmm-product-mobile-ready .cmm-gallery-main{scroll-margin-top:64px}
body .cmm-product-mobile-ready .cmm-immersive-description summary{list-style:none}
body .cmm-product-mobile-ready .cmm-immersive-description summary::-webkit-details-marker{display:none}
}
@media(max-width:350px){body .cmm-product-mobile-ready .cmm-product-price-row .cmm-price{font-size:32px!important}}

/* Description at the selected-color/price junction; compact, evenly spaced swatches. */
@media(max-width:760px){
body .cmm-product-mobile-ready .cmm-mobile-selected{margin-bottom:5px}
body .cmm-product-mobile-ready .cmm-mobile-purchase-summary .cmm-immersive-description{margin:0 0 16px}
body .cmm-product-mobile-ready .cmm-mobile-purchase-summary .cmm-immersive-description summary{display:flex;align-items:center;gap:10px;min-height:36px;font:13px/1.4 'CMM Sans',Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;color:#344d3d}
body .cmm-product-mobile-ready .cmm-mobile-purchase-summary .cmm-immersive-description summary:after{content:'';display:block;flex:0 0 8px;width:8px;height:8px;margin-left:3px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
body .cmm-product-mobile-ready .cmm-mobile-purchase-summary .cmm-immersive-description[open] summary:after{transform:rotate(225deg) translate(-1px,-1px)}
body .cmm-product-mobile-ready .cmm-mobile-purchase-summary .cmm-description-copy{padding:8px 0 12px}
body .cmm-product-mobile-ready .cmm-color-choices,body .cmm-product-mobile-ready .cmm-config-colors .cmm-config-options{display:grid;grid-template-columns:repeat(auto-fill,64px);justify-content:start;align-items:start;gap:12px 8px;margin:0;width:100%;min-width:0}
body .cmm-product-mobile-ready .cmm-color-choices .cmm-variant-choice,body .cmm-product-mobile-ready .cmm-color-option{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;min-width:0;min-height:58px;padding:6px 2px;gap:8px;text-align:center;border:0;background:none;box-shadow:none}
body .cmm-product-mobile-ready .cmm-sofa-swatch{position:relative;box-sizing:border-box;flex:0 0 26px;width:26px;height:26px;min-width:26px;max-width:26px;aspect-ratio:1;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #d5d8d0}
body .cmm-product-mobile-ready .cmm-sofa-swatch:after{display:none!important}
body .cmm-product-mobile-ready .cmm-sofa-color-copy{padding:0;width:100%;text-align:center}
body .cmm-product-mobile-ready .cmm-sofa-color-copy strong{font:400 11px/1.3 'CMM Sans',Arial,sans-serif;margin:0}
body .cmm-product-mobile-ready .cmm-color-choices .cmm-variant-choice:has(input:checked),body .cmm-product-mobile-ready .cmm-color-option:has(input:checked){background:none;border:0;box-shadow:none}
body .cmm-product-mobile-ready .cmm-color-choices .cmm-variant-choice:has(input:checked) .cmm-sofa-swatch,body .cmm-product-mobile-ready .cmm-color-option:has(input:checked) .cmm-sofa-swatch{box-shadow:0 0 0 2px #203f30}
body .cmm-product-mobile-ready .cmm-variant-choice:has(input:checked) .cmm-sofa-color-copy strong{font-weight:600}
}

@media(max-width:760px){body .cmm-product-mobile-ready .cmm-sofa-swatch{transform:none!important}}

@media(max-width:760px){body .cmm-product-mobile-ready .cmm-mobile-purchase-summary .cmm-immersive-description summary{text-decoration:none}}
@media(prefers-reduced-motion:reduce){body .cmm-product-mobile-ready .cmm-immersive-description summary:after{transition:none}}

/* Full product visible in a stable square frame on phones. */
@media(max-width:760px){body .cmm-product-mobile-ready .cmm-product-gallery{height:auto;min-height:0;max-height:none;aspect-ratio:1}body .cmm-product-mobile-ready .cmm-gallery-main{height:100%;aspect-ratio:1}}

/* Phone galleries use swipe navigation; desktop keeps its arrows. */
@media(max-width:760px){body .cmm-immersive .cmm-gallery-arrow{display:none}}

/* Match color labels in simple and multi-option phone selectors. */
@media(max-width:760px){body .cmm-product-mobile-ready .cmm-color-option>span:last-child{font:400 11px/1.3 'CMM Sans',Arial,sans-serif;width:100%;overflow-wrap:anywhere}body .cmm-product-mobile-ready .cmm-color-option:has(input:checked)>span:last-child{font-weight:600}}

/* Keep the real purchase button available throughout phone product pages. */
@media(max-width:760px){
 body:has(.cmm-product-mobile-ready [data-cmm-purchase] button[type="submit"]){padding-bottom:calc(84px + env(safe-area-inset-bottom, 0px))}
 body .cmm-product-mobile-ready [data-cmm-purchase]:has(button[type="submit"])::after{
  content:'';position:fixed;inset:auto 0 0;height:calc(80px + env(safe-area-inset-bottom, 0px));
  background:#fff;border-top:1px solid #e4e8e1;box-shadow:0 -3px 16px #203f300a;z-index:40;pointer-events:none;
 }
 body .cmm-product-mobile-ready [data-cmm-purchase] .cmm-sofa-order-row button.cmm-buy-button[type="submit"]{
  position:fixed;left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom, 0px));
  z-index:41;width:calc(100% - 32px);max-width:none;min-height:54px;height:auto;margin:0;
  padding:14px 20px;border-radius:9px;font-size:16px;line-height:1.5;
 }
}
