/* ---------- gallery (phone) ---------- */
.pdp-sg .appear-point-mobile{background:transparent!important;min-height:0!important;padding:12px 16px 0;overflow:visible!important}
.pdp-sg .appear-point-mobile .pdp-gallery{
  min-height:0!important;border-radius:20px;overflow:hidden;background:#fff;
  isolation:isolate;-webkit-mask-image:radial-gradient(white,black);transform:translateZ(0);
  box-shadow:0 1px 2px rgba(34,29,38,.05),0 8px 24px -12px rgba(34,29,38,.18);
}
.pdp-sg .appear-point-mobile .pdp-gallery img{min-height:0!important}
/* legacy .wishlist-card CSS sets right:25px too, stretching the heart across
   the image (a wide tap target, and its toast lands off the card) */
.pdp-sg .appear-point-mobile .wishlist-card{top:12px;right:auto!important;width:auto}
/* Touch screens swipe; arrows only where there is a pointer to hover with. */
.pdp-sg .appear-point-mobile .swiper-button-prev,
.pdp-sg .appear-point-mobile .swiper-button-next{display:none}
@media (hover:hover) and (pointer:fine){
  .pdp-sg .appear-point-mobile .swiper-button-prev,
  .pdp-sg .appear-point-mobile .swiper-button-next{
    display:flex;width:36px;height:36px;margin-top:-18px;border-radius:999px;
    background:rgba(255,255,255,.92);color:#221D26;box-shadow:0 1px 4px rgba(34,29,38,.18);
  }
  .pdp-sg .appear-point-mobile .swiper-button-prev:after,
  .pdp-sg .appear-point-mobile .swiper-button-next:after{font-size:13px;font-weight:800;color:#221D26}
  .pdp-sg .appear-point-mobile .swiper-button-disabled{opacity:0;pointer-events:none}
}
.pdp-sg .pdp-gallery-dots{min-height:32px}
.pdp-sg .pdp-gallery-dot{
  width:22px;height:28px;display:inline-flex;align-items:center;justify-content:center;
  background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;
}
.pdp-sg .pdp-gallery-dot span{display:block;width:6px;height:6px;border-radius:999px;background:#D9CFC6;transition:width .25s ease,background-color .25s ease}
.pdp-sg .pdp-gallery-dot[aria-current="true"] span{width:18px;background:#5B2A6E}
.pdp-sg .pdp-gallery-dot:focus-visible{outline:2px solid #5B2A6E;outline-offset:-2px;border-radius:8px}
.pdp-sg .pdp-gallery-count{font-size:12px;font-weight:500;color:#6A6370;letter-spacing:.04em;padding:6px 0}
@media (prefers-reduced-motion:reduce){.pdp-sg .pdp-gallery-dot span{transition:none}}

/* ---------- gallery (tablet / desktop) ---------- */
.pdp-sg .product-display--breadcrumbs{font-size:13px;color:#6A6370}
.pdp-sg .product-display--breadcrumbs a{color:#5B2A6E;text-decoration:none}
.pdp-sg .product-display--breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.pdp-sg .pdp-image-block{border-radius:20px!important;overflow:hidden;isolation:isolate;-webkit-mask-image:radial-gradient(white,black);transform:translateZ(0)}
.pdp-sg .product-display--imagery img{border-radius:16px!important}

/* ---------- details column ---------- */
.pdp-sg .product-display--description{color:#221D26}
@media (max-width:767px){.pdp-sg .product-display--description{padding-top:8px;gap:18px!important}}

/* Sale countdown: a slim ink band, same text and timer logic (SaleBanner). */
.pdp-sg .sale-banner{
  background:#1E1530!important;color:#FBF8F3!important;margin:0!important;border-radius:12px!important;
  flex-direction:row!important;justify-content:space-between!important;align-items:center!important;
  gap:12px;padding:9px 14px!important;font-size:13px!important;box-shadow:none!important;text-align:left!important;
}
.pdp-sg .sale-banner > div:first-child{display:flex;align-items:center;gap:8px;font-weight:600;letter-spacing:.01em;text-align:left!important}
.pdp-sg .sale-banner > div:first-child:before{content:"";flex:none;width:6px;height:6px;border-radius:999px;background:#E8735A}
.pdp-sg .sale-banner > div:last-child{
  margin:0!important;height:auto!important;font-family:inherit!important;font-weight:500!important;
  color:#E9DDF0;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right!important;
}

/* Title */
.pdp-sg .product-display--description h1{
  font-family:"Plus Jakarta Sans",system-ui,sans-serif!important;font-optical-sizing:auto;
  font-size:26px!important;line-height:1.18!important;font-weight:800!important;letter-spacing:-.03em;color:#221D26;
}
@media (min-width:768px){.pdp-sg .product-display--description h1{font-size:32px!important}}

/* Rating: quiet meta under the title */
.pdp-sg .product-display--description > .inline-flex.content-section{margin-top:-8px;padding:0!important;font-size:14px;gap:10px!important;flex-wrap:wrap}
.pdp-sg .product-display--description > .inline-flex.content-section svg{width:15px!important;height:15px!important}
.pdp-sg .product-display--description > .inline-flex.content-section svg.text-\[--primary-color\]{color:#221D26}
.pdp-sg .product-display--description > .inline-flex.content-section .font-semibold{font-weight:600;color:#221D26}
.pdp-sg .product-display--description > .inline-flex.content-section .text-gray-500{color:#6A6370}
.pdp-sg .product-display--description > .inline-flex.content-section .text-sm{font-size:13px;color:#6A6370;text-underline-offset:3px;margin-left:0}
.pdp-sg .product-display--description > .content-section.py-1 > button{font-size:13px;color:#6A6370;text-underline-offset:3px}

/* Buy box */
.pdp-sg #add_to_cart_form{gap:18px!important}

/* Price: sale price leads, compare-at muted underneath, savings as a soft
   coral badge. The compare-at line only exists when it is above the
   price (PricingSection / the server's compare-at rule). */
.pdp-sg #add_to_cart_form > .content-section.text-md{align-items:flex-start;gap:12px!important;flex-wrap:wrap}
.pdp-sg #add_to_cart_form > .content-section.text-md > div:first-child{flex-direction:column-reverse!important;gap:2px!important}
.pdp-sg #price{display:flex;align-items:baseline;gap:8px;font-size:13px!important;font-weight:500!important;color:#6A6370}
.pdp-sg #price .price{font-size:30px!important;line-height:1.1;font-weight:600;color:#5B2A6E;letter-spacing:-.01em}
.pdp-sg #msrp_block{font-size:13px;color:#6A6370;gap:6px!important}
.pdp-sg #msrp_block .strike{font-size:13px!important;color:#8E8792!important}
.pdp-sg #add_to_cart_form > .content-section.text-md > .content-end{align-content:flex-start;padding-top:8px}
.pdp-sg #add_to_cart_form .sb-rugs{
  background:#FCE6E0!important;color:#9A3A25!important;border-radius:8px!important;
  font-size:12px!important;font-weight:600!important;padding:4px 10px!important;letter-spacing:.02em;line-height:1.3;
}
.pdp-sg #add_to_cart_form > .h2-bold{margin:0!important;font-size:30px!important;line-height:1.1;font-weight:600!important;color:#5B2A6E}

/* Selected-size card */
.pdp-sg .interactive-card{width:100%!important;border:1px solid #E6DED6!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important}
.pdp-sg .interactive-card:hover,.pdp-sg .interactive-card:focus-visible{border-color:#5B2A6E!important}
.pdp-sg .interactive-card:focus-visible{outline:2px solid #5B2A6E;outline-offset:2px}
.pdp-sg .interactive-card .text-sm{font-size:12px!important;color:#6A6370!important;letter-spacing:.02em;margin-bottom:2px!important}
.pdp-sg .interactive-card .font-medium{font-size:16px;font-weight:600;color:#221D26}
.pdp-sg .interactive-card .group > div,.pdp-sg .interactive-card .group svg{color:#5B2A6E!important;font-weight:600;font-size:14px}

/* Rug pad upsell */
.pdp-sg .content-section:has(.rugpad-menu) .text-lg{font-size:16px!important;font-weight:600!important;color:#221D26}
.pdp-sg .content-section:has(.rugpad-menu) button.underline{font-size:13px;color:#6A6370;text-underline-offset:3px}
.pdp-sg .overflow-x-auto:has(> .rugpad-menu){padding:4px;margin:-4px;width:calc(100% + 8px)!important;max-width:none!important;scrollbar-width:none}
.pdp-sg .overflow-x-auto:has(> .rugpad-menu)::-webkit-scrollbar{display:none}
/* every buy-column block runs the full column width: one pad fills the row,
   several share it and scroll once they no longer fit */
.pdp-sg .rugpad-menu,.pdp-sg .rugpad-menu > div{width:100%}
.pdp-sg .rugpad-menu .btn-pad{flex:1 0 auto}
/* from md the column is wide enough to show every pad: wrap, never scroll */
@media (min-width:768px){
  .pdp-sg .rugpad-menu > div{flex-wrap:wrap}
  .pdp-sg .rugpad-menu .btn-pad{flex:1 1 calc(50% - 4px);min-width:min(100%,240px);white-space:normal!important;text-align:left;line-height:1.3}
  .pdp-sg .rugpad-menu .btn-pad > span:last-child{white-space:nowrap;margin-left:auto}
}
.pdp-sg .btn-pad{
  min-height:60px;gap:12px!important;padding:8px 16px 8px 8px!important;background:#fff!important;
  border:1px solid #E6DED6!important;border-radius:16px!important;box-shadow:none!important;
  font-size:14px;color:#221D26;transition:border-color .2s ease,background-color .2s ease!important;
}
.pdp-sg .btn-pad:hover{border-color:#5B2A6E!important}
.pdp-sg .btn-pad img{width:44px!important;height:44px!important;border-radius:10px!important}
.pdp-sg .btn-pad > span:last-child{border-left:0!important;padding-left:4px!important;font-weight:600;color:#5B2A6E}
.pdp-sg .btn-pad.ring{
  border:2px solid #5B2A6E!important;background:#F3ECF6!important;padding:7px 15px 7px 7px!important;
  --tw-ring-shadow:0 0 #0000!important;--tw-ring-offset-shadow:0 0 #0000!important;
}
.pdp-sg .btn-pad:focus-visible{outline:2px solid #5B2A6E;outline-offset:2px}

/* Quantity + Add to Basket: one confident row; express pay below it. */
.pdp-sg .content-section:has(#cart_button){
  flex-direction:column!important;background:transparent!important;padding:0!important;
  margin:4px 0 0!important;gap:12px!important;border-radius:0!important;
}
.pdp-sg .content-section:has(#cart_button) > div:first-child{gap:10px!important;flex-basis:auto!important;width:100%}
.pdp-sg .content-section:has(#cart_button) > div:last-child:not(:first-child){flex-basis:auto!important}
.pdp-sg .qtyLabel{margin-right:2px!important;font-size:13px;font-weight:500!important;color:#6A6370}
.pdp-sg .form-group:has(#quantityBox) .form-input{
  height:52px;display:flex;align-items:center;padding:0 4px 0 10px;background:#fff;
  border:1px solid #E6DED6!important;border-radius:14px!important;
}
.pdp-sg .form-group:has(#quantityBox) .form-input:hover{border-color:#5B2A6E!important}
.pdp-sg .form-group:has(#quantityBox) .form-input{padding:0!important}
/* A real pill: our own chevron instead of the native arrow, which left a
   52px select inside the border reading as a lopsided circle. */
.pdp-sg #quantityBox{
  -webkit-appearance:none;appearance:none;height:50px;width:92px;padding:0 34px 0 24px!important;
  background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%235B2A6E' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 16px center/11px 8px!important;
  border:0;border-radius:14px;font-size:16px;font-weight:600;color:#221D26;cursor:pointer;text-align:left;text-align-last:left;
}
.pdp-sg #quantityBox:focus-visible{outline:2px solid #5B2A6E;outline-offset:4px;border-radius:14px}
.pdp-sg #cart_button .main-add-to-cart{
  height:52px!important;border-radius:14px!important;background:#5B2A6E!important;border:1px solid #5B2A6E!important;
  color:#fff!important;font-size:16px!important;font-weight:600!important;letter-spacing:.01em;
  box-shadow:0 1px 2px rgba(30,21,48,.18)!important;transform:none!important;
  --tw-ring-shadow:0 0 #0000!important;
}
.pdp-sg #cart_button .main-add-to-cart:hover{background:#4A2159!important}
.pdp-sg #cart_button .main-add-to-cart:focus-visible{outline:2px solid #5B2A6E;outline-offset:3px}
.pdp-sg #cart_button .main-add-to-cart:disabled{opacity:.7}

/* Reassurance list (UkReassurance.jsx, rendered for irugs_uk only) */
.pdp-sg .pdp-reassure{
  list-style:none;margin:0;padding:14px 16px;display:flex;flex-direction:column;gap:10px;
  background:#fff;border:1px solid #F0EAE3;border-radius:16px;
}
.pdp-sg .pdp-reassure li{display:flex;align-items:center;gap:12px;margin:0;font-size:14px;line-height:1.4;color:#221D26}
.pdp-sg .pdp-reassure-icon{flex:none;width:20px;height:20px;color:#5B2A6E}
.pdp-sg .pdp-reassure a{color:#5B2A6E;font-weight:600;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}

/* Ask a Question | Share */
.pdp-sg .product-display--description > .flex.items-center.gap-4.text-sm{gap:6px!important;color:#6A6370;margin-top:-6px}
.pdp-sg .product-display--description > .flex.items-center.gap-4.text-sm > button{min-height:44px;padding:0 6px;font-size:14px;color:#6A6370}
.pdp-sg .product-display--description > .flex.items-center.gap-4.text-sm > button:hover{color:#5B2A6E}
.pdp-sg .product-display--description > .flex.items-center.gap-4.text-sm > span{color:#E6DED6}

/* Colour + size pickers */
.pdp-sg [name="colorRow"] .sub-title,.pdp-sg #SizeSelector .sub-title,.pdp-sg #SizeSelector .sub-title > .font-medium{font-size:16px;font-weight:600!important;color:#221D26}
.pdp-sg [name="colorRow"] .sub-title .caption,.pdp-sg #SizeSelector .sub-title .caption{font-size:13px;font-weight:400;color:#6A6370;margin-left:8px!important}
.pdp-sg [name="colorRow"]{gap:12px!important}
.pdp-sg [name="colorRow"] > div:last-child{gap:6px!important}
.pdp-sg [name="colorRow"] .rounded-full.p-1\.5{background:transparent!important}
.pdp-sg [name="colorRow"] .color-swatch.ring-2{--tw-ring-color:#5B2A6E!important;--tw-ring-offset-color:#FBF8F3!important}
.pdp-sg [name="colorRow"] .color-swatch a{box-shadow:inset 0 0 0 1px rgba(34,29,38,.08)}
.pdp-sg #SizeSelector{gap:18px!important}
.pdp-sg #SizeSelector .size-option-group{gap:10px!important}
.pdp-sg #SizeSelector .size-option-group > strong{font-size:12px!important;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:#6A6370}
.pdp-sg #SizeSelector .size-option-group > div{gap:8px!important}
.pdp-sg .size-btn{
  min-height:44px;display:inline-flex;align-items:center;padding:0 16px!important;
  background:#fff!important;color:#221D26!important;border:1px solid #E6DED6!important;
  font-size:14px!important;font-weight:500!important;font-variant-numeric:tabular-nums;
  box-shadow:none!important;--tw-ring-shadow:0 0 #0000!important;transform:none!important;
  transition:border-color .15s ease,background-color .15s ease!important;
}
.pdp-sg .size-btn:hover{border-color:#5B2A6E!important;color:#5B2A6E!important}
.pdp-sg .size-btn.text-white{background:#5B2A6E!important;border-color:#5B2A6E!important;color:#fff!important}
.pdp-sg .size-btn:focus-visible{outline:2px solid #5B2A6E;outline-offset:2px}
.pdp-sg #SizeSelector label .text-gray-900{font-weight:500;color:#6A6370}

/* ---------- below the fold ---------- */
/* Details / description / highlights / attributes, and the guides: hairline
   accordions on linen. */
@media (max-width:767px){
  .pdp-sg .accordion-group{gap:0!important}
  .pdp-sg .accordion-group > div,.pdp-sg .accordion-group > div > div{gap:0!important}
}
.pdp-sg .accordion-item{border:0!important;border-bottom:1px solid #EDE5DD!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
.pdp-sg .accordion-header{background:transparent!important;padding:18px 0!important;min-height:58px}
.pdp-sg .accordion-header strong{font-size:16px!important;font-weight:600!important;color:#221D26}
.pdp-sg .accordion-header svg{width:20px!important;height:20px!important;color:#6A6370}
.pdp-sg .accordion-header:focus-visible{outline:2px solid #5B2A6E;outline-offset:2px;border-radius:6px}
.pdp-sg .accordion-content{padding:0 0 20px!important;color:#3A3340}
.pdp-sg .accordion-content .text-gray-800,.pdp-sg .accordion-content .text-gray-700{color:#3A3340!important}
.pdp-sg .accordion-content .bg-white.border{border-color:#F0EAE3!important;box-shadow:none!important;border-radius:14px!important}
.pdp-sg .accordion-content p.text-2xl{
  font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:800!important;font-size:26px!important;letter-spacing:-.03em;color:#221D26;
}
.pdp-sg .accordion-content h4{font-size:14px!important;font-weight:600!important;color:#221D26}
/* top hairline inside the group's 16px phone gutter (px-4 / md:px-0) */
.pdp-sg .accordion-group{position:relative}
.pdp-sg .accordion-group:before{content:"";position:absolute;top:0;left:16px;right:16px;height:1px;background:#EDE5DD}
@media (min-width:768px){
  .pdp-sg .accordion-group:before{left:0;right:0}
  .pdp-sg .accordion-group:not(.accordion-featured-content):before{display:none}
}
@media (min-width:768px){
  .pdp-sg .accordion-group:not(.accordion-featured-content) .accordion-item{border-bottom:0!important}
  .pdp-sg .accordion-group:not(.accordion-featured-content) .accordion-content{padding-bottom:12px!important}
}

/* Designer notes: brand palette, homepage heading style */
.pdp-sg .designer-notes{
  --dn-primary:#5B2A6E;--dn-secondary:#5B2A6E;--dn-price:#5B2A6E;--dn-green:#5B2A6E;
  --dn-red:#B42318;--dn-grey-dark:#221D26;--dn-grey-text:#6A6370;
}
.pdp-sg .designer-notes > .text-center > p:first-child{color:#B3462E!important;font-size:11px!important;font-weight:600!important;letter-spacing:.18em!important}
.pdp-sg #designer-notes-heading{font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:800!important;font-size:30px!important;letter-spacing:-.03em}
@media (min-width:768px){.pdp-sg #designer-notes-heading{font-size:38px!important}}
.pdp-sg .designer-notes .dn-card{border:1px solid #F0EAE3;box-shadow:none!important;border-radius:20px!important}

/* Rail cards (CarouselItem) and the customer-photo strip: softer corners */
.pdp-sg .carousel-card--card-image ~ .carousel-card--card-content{padding:12px 12px 4px!important}
.pdp-sg section.shadow-md.rounded:has(> article .carousel-card--card-image){
  border-radius:16px!important;box-shadow:0 1px 2px rgba(34,29,38,.05),0 6px 18px -10px rgba(34,29,38,.2)!important;
}
.pdp-sg .carousel-card--card-content .bold-title{color:#5B2A6E}
.pdp-sg .customer-photos-scroller{border-radius:14px}

/* Video */
.pdp-sg .video-container{border-radius:20px!important;overflow:hidden;isolation:isolate;-webkit-mask-image:radial-gradient(white,black);transform:translateZ(0)}
.pdp-sg .video-container > div{padding:0!important}
@media (max-width:767px){.pdp-sg .video-container{width:auto!important;margin:12px 16px 0}}

/* Recommendation rails: coral eyebrow + display title (homepage style) */
.pdp-sg .rail-eyebrow{margin:0 0 6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:#B3462E}
.pdp-sg .rail-heading h2,.pdp-sg .carousel-tabs h2{
  font-family:"Plus Jakarta Sans",system-ui,sans-serif!important;font-weight:800!important;font-size:26px!important;
  line-height:1.15!important;letter-spacing:-.03em;color:#221D26;
}
@media (min-width:768px){.pdp-sg .rail-heading h2,.pdp-sg .carousel-tabs h2{font-size:32px!important}}

/* Reviews */
.pdp-sg #reviews-section > div:first-child{align-items:flex-end;gap:6px 12px;flex-wrap:wrap}
@media (max-width:767px){.pdp-sg #reviews-section > div:first-child{flex-direction:column;align-items:flex-start}}
.pdp-sg #reviews-section h2{
  font-family:"Plus Jakarta Sans",system-ui,sans-serif!important;font-weight:800!important;font-size:28px!important;
  line-height:1.15!important;letter-spacing:-.03em;color:#221D26;margin:0!important;
}
@media (min-width:768px){.pdp-sg #reviews-section h2{font-size:34px!important}}
.pdp-sg #reviews-section > div:first-child > div{font-size:14px;white-space:nowrap}
.pdp-sg #reviews-section > div:first-child .text-\[--primary-color\]{color:#221D26}
.pdp-sg #reviews-section h3{
  font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:800!important;font-size:22px!important;color:#221D26;
}
.pdp-sg #reviews-section .text-5xl{font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-weight:800!important}
.pdp-sg #reviews-section article h3{font-family:inherit;font-size:17px!important;font-weight:600!important;line-height:1.35!important;color:#221D26}
.pdp-sg #reviews-section h4{font-size:17px!important;font-weight:600!important;line-height:1.35!important;color:#221D26}
.pdp-sg #reviews-section article .text-green-700{color:#1E6B47}
.pdp-sg #reviews-section .border-y button.rounded-lg{border-radius:12px!important;min-height:40px}
.pdp-sg #reviews-section .bg-gray-900{background:#5B2A6E!important;border-color:#5B2A6E!important;color:#fff!important;border-radius:12px!important}
.pdp-sg #reviews-section .bg-gray-900:hover{background:#4A2159!important}
.pdp-sg #reviews-section .bg-blue-50{background:#fff!important;border:1px solid #F0EAE3;border-radius:20px!important}
.pdp-sg #reviews-section .bg-blue-50 .text-blue-600,.pdp-sg #reviews-section .bg-blue-50 .text-blue-800{color:#5B2A6E!important}
.pdp-sg #reviews-section .bg-blue-50 .text-green-700{color:#5B2A6E!important}
.pdp-sg #reviews-section .bg-blue-50 .text-red-700{color:#9A3A25!important}
.pdp-sg #reviews-section .bg-blue-50 .text-green-500{color:#5B2A6E!important}
.pdp-sg #reviews-section .bg-blue-50 .text-red-500{color:#B3462E!important}
.pdp-sg #reviews-section .rounded-lg.border.p-5{background:#fff!important;border-color:#F0EAE3!important;border-radius:20px!important}
.pdp-sg #reviews-section select,.pdp-sg #reviews-section input[type="search"],.pdp-sg #reviews-section input[type="text"]{border-color:#E6DED6!important;border-radius:12px!important;background:#fff}
.pdp-sg #reviews-section .border-y{border-color:#EDE5DD!important}
.pdp-sg #reviews-section .divide-y > *,.pdp-sg #reviews-section article{border-color:#EDE5DD!important}
.pdp-sg #reviews-section .bg-gray-200.rounded-full{background:#F0EAE3!important}

/* Sticky add-to-basket bar (StickyBar.jsx: same add-to-basket code path) */
.pdp-sg .sticky-bar{
  background:rgba(255,255,255,.97)!important;border:0!important;border-top:1px solid #F0EAE3!important;
  box-shadow:0 -8px 24px -12px rgba(34,29,38,.25)!important;padding-bottom:env(safe-area-inset-bottom);
  -webkit-backdrop-filter:saturate(1.2) blur(8px);backdrop-filter:saturate(1.2) blur(8px);
}
@media (min-width:768px){.pdp-sg .sticky-bar{border-top:0!important;border-bottom:1px solid #F0EAE3!important;box-shadow:0 8px 24px -12px rgba(34,29,38,.25)!important}}
.pdp-sg .sticky-bar img{border-radius:10px}
.pdp-sg .sticky-bar p.font-medium{font-size:13px!important;line-height:1.3!important;color:#221D26;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.pdp-sg .sticky-bar .text-2xl{font-size:17px!important;font-weight:600;color:#5B2A6E!important}
.pdp-sg .sticky-bar .line-through{color:#8E8792}
.pdp-sg .sticky-bar .border.rounded{border-color:#E6DED6!important;border-radius:10px!important;padding:6px 12px!important;font-size:13px!important;color:#221D26}
.pdp-sg .sticky-bar button[type="submit"]{
  min-height:44px;background:#5B2A6E!important;border-radius:12px!important;font-size:15px!important;
  font-weight:600!important;transform:none!important;box-shadow:none!important;--tw-ring-shadow:0 0 #0000!important;
}
.pdp-sg .sticky-bar button[type="submit"]:focus-visible{outline:2px solid #5B2A6E;outline-offset:2px}
/* On phones the chat bubble would sit on top of the bar's Add to Basket
   button: lift it above the bar while the bar is showing. */
@media (max-width:767px){
  body:has(.pdp-sg) .ecom-chat-launcher{transition:transform .15s cubic-bezier(.4,0,.2,1),translate .5s ease-in-out}
  body:has(.pdp-sg .sticky-bar.translate-y-0) .ecom-chat-launcher{translate:0 -128px}
}

/* ==========================================================================
   Tablet / desktop (md+). The page container and the column split apply to
   every SG PDP, one of a kind included (the old one-of-a-kind layout is gone;
   ooak_pdp_layout_v2 is rugscom-only, so an SG PDP is always standard).
   ========================================================================== */
@media (min-width:768px){
  /* Page container: centred, with real side margins, breadcrumb included. */
  .pdp-sg > .max-w-screen-2xl.mx-auto{max-width:1400px!important;padding-left:32px!important;padding-right:32px!important}
  .pdp-sg > .mx-auto > .pdp-below-fold{width:100%;min-width:0;max-width:100%!important}

  /* Breadcrumb: one quiet muted line with chevrons. */
  .pdp-sg .product-display--breadcrumbs{padding:20px 0 16px!important}
  .pdp-sg .product-display--breadcrumbs > div{width:auto!important;max-width:100%;display:flex;flex-wrap:wrap;align-items:center;font-size:0;line-height:1.5}
  .pdp-sg .product-display--breadcrumbs > div > a,
  .pdp-sg .product-display--breadcrumbs > div > span{font-size:13px;color:#6A6370}
  .pdp-sg .product-display--breadcrumbs > div > span:has(> a){font-size:0}
  .pdp-sg .product-display--breadcrumbs > div > span > a{font-size:13px}
  .pdp-sg .product-display--breadcrumbs a{color:#6A6370!important}
  .pdp-sg .product-display--breadcrumbs a:hover{color:#5B2A6E!important}
  .pdp-sg .product-display--breadcrumbs > div > a:first-child:before{content:"\2039";margin-right:6px}
  .pdp-sg .product-display--breadcrumbs > div > span.mx-2{font-size:0;width:1px;height:12px;background:#E6DED6;margin:0 14px!important}
  .pdp-sg .product-display--breadcrumbs > div > span:has(> a):after{content:"\203A";font-size:13px;color:#BDB3AB;margin:0 8px}
  .pdp-sg .product-display--breadcrumbs > div > span:last-child{color:#8E8792}

  /* Gallery | buy column. The buy column is capped; every block in it spans
     its full width. */
  .pdp-sg > .max-w-screen-2xl .product-display--content-container > .grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:32px!important;
  }
  .pdp-sg > .max-w-screen-2xl .product-display--description{padding-left:0!important}

  /* Secondary images: uniform 4:5 tiles; flats sit on white, room shots fill;
     an odd last tile spans both columns. */
  .pdp-sg .product-display--imagery .pdp-imagery-container{padding-top:16px!important}
  .pdp-sg .product-display--imagery .grid{gap:16px!important}
  .pdp-sg .product-display--imagery .grid > div{
    aspect-ratio:4/5;background:#fff;border-radius:16px;overflow:hidden;
    isolation:isolate;-webkit-mask-image:radial-gradient(white,black);transform:translateZ(0);
  }
  .pdp-sg .product-display--imagery .grid > div > img{
    width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;min-height:0!important;
    object-fit:cover;border-radius:0!important;
  }
  .pdp-sg .product-display--imagery .grid > div > img[src*="_main"]{object-fit:contain;padding:8%}
  .pdp-sg .product-display--imagery .grid > div:last-child:nth-child(odd){grid-column:1 / -1;aspect-ratio:3/2}
  .pdp-sg .product-display--imagery .grid > div:last-child:nth-child(odd) > img:not([src*="_main"]){object-position:50% 62%}
  .pdp-sg .product-display--imagery .grid > div > button{bottom:16px!important;font-size:14px!important;font-weight:600!important;color:#221D26!important}
  /* Hero: the block clips the corners; a room shot fills it edge to edge and
     only a flat (main-image-container) sits on white. */
  .pdp-sg .pdp-image-block{background:transparent!important}
  .pdp-sg .pdp-image-block:has(.main-image-container){background:#fff!important}
  .pdp-sg .pdp-image-block .main-product-image{border-radius:0!important;display:block}
  .pdp-sg .pdp-image-block .main-image-container{padding:0!important}

  /* The product video at full container width is a wall: cap it. */
  .pdp-sg .video-container{max-width:960px!important;margin:24px auto 0!important}

  /* Below the fold: Details | Highlights + Attributes with a real gutter. */
  .pdp-sg .accordion-group:not(.accordion-featured-content) > .md\:grid{column-gap:40px!important;row-gap:0!important}
}
@media (min-width:1024px){
  .pdp-sg > .max-w-screen-2xl.mx-auto{padding-left:40px!important;padding-right:40px!important}
  .pdp-sg > .max-w-screen-2xl .product-display--content-container > .grid{
    grid-template-columns:minmax(0,1fr) minmax(0,460px)!important;column-gap:48px!important;
  }
  .pdp-sg .accordion-group:not(.accordion-featured-content) > .md\:grid{grid-template-columns:minmax(0,1fr) minmax(0,460px)!important;column-gap:48px!important}
}
@media (min-width:1280px){
  .pdp-sg > .max-w-screen-2xl .product-display--content-container > .grid{
    grid-template-columns:minmax(0,1fr) minmax(0,540px)!important;column-gap:64px!important;
  }
  .pdp-sg .accordion-group:not(.accordion-featured-content) > .md\:grid{grid-template-columns:minmax(0,1fr) minmax(0,540px)!important;column-gap:64px!important}
}

.pdp-sg #accordion-panel-description p + p{margin-top:12px!important}
.pdp-sg #accordion-panel-description p{line-height:1.7!important}

/* Product Details: one calm card, a hairline definition list (2 columns from md). */
.pdp-sg #accordion-panel-details > .grid{
  background:#fff;border:1px solid #F0EAE3;border-radius:20px;padding:4px 20px;gap:0 32px!important;
}
.pdp-sg #accordion-panel-details > .grid > div{
  min-width:0;background:transparent!important;border:0!important;border-bottom:1px solid #F5EFE9!important;
  border-radius:0!important;box-shadow:none!important;padding:12px 0!important;
}
.pdp-sg #accordion-panel-details > .grid > div:last-child{border-bottom:0!important}
.pdp-sg #accordion-panel-details > .grid > div > strong{
  display:block;margin:0 0 2px!important;font-size:12px!important;font-weight:500!important;
  letter-spacing:.02em;color:#6A6370!important;
}
.pdp-sg #accordion-panel-details > .grid > div > p{margin:0!important;font-size:14px!important;line-height:1.5;color:#221D26!important;overflow-wrap:anywhere}
.pdp-sg #accordion-panel-details > .grid > div > p a{color:#5B2A6E!important;text-underline-offset:3px}
.pdp-sg #accordion-panel-details > .border-green-200{border-color:#F0EAE3!important;border-radius:16px!important;box-shadow:none!important}
@media (min-width:768px){.pdp-sg #accordion-panel-details > .grid{padding:6px 28px}}
/* two columns of facts only where the Details column is wide enough */
@media (min-width:768px) and (max-width:1279px){
  .pdp-sg #accordion-panel-details > .grid{grid-template-columns:minmax(0,1fr)!important}
}
@media (min-width:1280px){
  .pdp-sg #accordion-panel-details > .grid > div:nth-last-child(2):nth-child(odd){border-bottom:0!important}
}

/* Product Highlights: icon discs in a row from the column's left edge; the
   info mark sits on the disc's edge. */
.pdp-sg #accordion-panel-highlights .flex-wrap{gap:12px 4px!important;justify-content:flex-start}
.pdp-sg .product-highlight-container{
  position:relative;display:flex!important;flex-direction:column;align-items:flex-start;
  width:104px;padding:8px 8px 8px 0!important;text-align:left!important;
  background:transparent!important;transform:none!important;box-shadow:none!important;
  --tw-ring-shadow:0 0 #0000!important;--tw-ring-offset-shadow:0 0 #0000!important;
}
.pdp-sg .product-highlight-container .highlight-icon{
  margin:0 0 8px!important;align-self:flex-start!important;width:56px;height:56px;flex:none;border-radius:999px;background:#fff;
  border:1px solid #F0EAE3;display:flex;align-items:center;justify-content:center;transition:border-color .2s ease;
}
.pdp-sg .product-highlight-container .highlight-icon img{width:28px!important;height:28px!important}
.pdp-sg .product-highlight-container > div:nth-child(2){padding:0!important;font-size:13px!important;font-weight:500!important;line-height:1.3;color:#221D26}
.pdp-sg button.product-highlight-container:hover .highlight-icon{border-color:#5B2A6E}
.pdp-sg button.product-highlight-container > span[aria-hidden="true"]{
  top:6px!important;left:44px!important;right:auto!important;width:18px!important;height:18px!important;
  border:2px solid #FBF8F3;background:#CFEDE6!important;color:#5B2A6E!important;font-size:10px!important;
}
.pdp-sg button.product-highlight-container[aria-expanded="true"] .highlight-icon{border-color:#5B2A6E;box-shadow:0 0 0 1px #5B2A6E}
.pdp-sg button.product-highlight-container[aria-expanded="true"] > span[aria-hidden="true"]{background:#5B2A6E!important;color:#fff!important}
.pdp-sg button.product-highlight-container:focus-visible{outline:2px solid #5B2A6E;outline-offset:2px;border-radius:12px}
.pdp-sg #accordion-panel-highlights .rounded-xl.border{border-color:#F0EAE3!important;border-radius:16px!important;box-shadow:none!important}

/* Product Attributes: same card as Details, stone track, green marker. */
.pdp-sg #accordion-panel-attributes > div.bg-white{
  max-width:100%;overflow:hidden;background:#fff!important;border:1px solid #F0EAE3!important;
  border-radius:20px!important;box-shadow:none!important;padding:20px!important;
}
.pdp-sg #accordion-panel-attributes > div.bg-white > .grid{gap:18px 40px!important}
.pdp-sg #accordion-panel-attributes .grid > div{min-width:0;margin:0!important}
.pdp-sg #accordion-panel-attributes .grid > div > div:first-child{justify-content:flex-start!important;padding:0 0 8px!important;color:#5B2A6E}
.pdp-sg #accordion-panel-attributes .grid > div > div:first-child svg{width:22px;height:22px;fill:#5B2A6E}
.pdp-sg #accordion-panel-attributes .grid > div > div:first-child svg [fill]:not([fill="none"]){fill:#5B2A6E}
.pdp-sg #accordion-panel-attributes .grid > div > div:first-child svg [stroke]:not([stroke="none"]){stroke:#5B2A6E}
.pdp-sg #accordion-panel-attributes .grid > div > .rounded-full{background:#F0EAE3!important;gap:2px;height:6px!important;margin:0!important}
.pdp-sg #accordion-panel-attributes .grid > div > .rounded-full > div{height:6px!important;background:#E6DED6!important}
.pdp-sg #accordion-panel-attributes .grid > div > .rounded-full > div.attribute-bar{background:#5B2A6E!important}
.pdp-sg #accordion-panel-attributes .grid > div > div:last-child{margin-top:8px!important;gap:8px;font-size:12px!important}
.pdp-sg #accordion-panel-attributes .grid > div > div:last-child > div{color:#6A6370!important}
.pdp-sg #accordion-panel-attributes .grid > div > div:last-child > div:last-child{text-align:right}
@media (min-width:768px){.pdp-sg #accordion-panel-attributes > div.bg-white{padding:24px 28px!important}}

/* Desktop sticky bar: content in the page container, quieter proportions. */
@media (min-width:768px){
  .pdp-sg .sticky-bar > div{padding:10px 0!important}
  .pdp-sg .sticky-bar > div > div{max-width:1400px!important;padding:0 32px!important;align-items:center}
  .pdp-sg .sticky-bar > div > div > div:first-child > div:first-child{width:auto!important;flex:none}
  .pdp-sg .sticky-bar picture{width:56px!important}
  .pdp-sg .sticky-bar img{width:56px!important;height:56px!important;max-height:none!important;object-fit:cover;border-radius:12px!important}
  .pdp-sg .sticky-bar > div > div > div:first-child > div:last-child{padding-left:16px!important}
  .pdp-sg .sticky-bar p.font-medium{font-size:14px!important}
  .pdp-sg .sticky-bar #stickyAddToCartFormDesktop button[type="submit"]{min-height:48px;padding:0 32px!important;white-space:nowrap}
}
@media (min-width:1024px){.pdp-sg .sticky-bar > div > div{padding:0 40px!important}}
/* ---------- Orchid touches the UK sheet does not have ---------- */
/* Add to Cart: a firm plum key with a soft orchid lift. */
.pdp-sg #cart_button .main-add-to-cart{box-shadow:0 10px 22px -12px rgba(91,42,110,.55)!important}
/* Reassurance card: shell white under a thin Peranakan tile strip, jade icons. */
.pdp-sg .pdp-reassure{
  position:relative;overflow:hidden;background:#FBF8F3;border-color:#F0EAE3;border-radius:16px;padding-top:22px;
}
.pdp-sg .pdp-reassure:before{
  content:"";position:absolute;left:0;right:0;top:0;height:8px;background-color:#5B2A6E;background-repeat:repeat-x;background-size:16px 8px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12' viewBox='0 0 24 12'%3E%3Crect width='24' height='12' fill='%235B2A6E'/%3E%3Cpath d='M6 1.5 10.5 6 6 10.5 1.5 6z' fill='%23CFEDE6'/%3E%3Ccircle cx='6' cy='6' r='1.6' fill='%23E8735A'/%3E%3Ccircle cx='18' cy='6' r='2.4' fill='%23E8735A'/%3E%3Ccircle cx='18' cy='6' r='.9' fill='%23FBF8F3'/%3E%3C/svg%3E");
}
.pdp-sg .pdp-reassure-icon{color:#5B2A6E}
/* Sizes: rounded keys, the chosen one solid plum. */
.pdp-sg .size-btn{border-radius:12px!important}
/* Sale countdown: a night-plum band with a coral dot. */
.pdp-sg .sale-banner{border-radius:12px!important;padding:9px 16px!important}
/* Gallery dots: the active one is plum with a jade-mint halo. */
.pdp-sg .pdp-gallery-dot[aria-current="true"] span{background:#5B2A6E;box-shadow:0 0 0 2px #CFEDE6}
/* Price in plum: the sale price is the brand colour, the compare-at muted. */
.pdp-sg #price .price,.pdp-sg #add_to_cart_form > .h2-bold{color:#5B2A6E}
