/* Customshop storefront refinements. Keep imagery true to the catalogue. */
.cs-hero-vibrant {
  background: radial-gradient(ellipse at 78% 48%, #303239 0, #202227 32%, #191b1f 65%);
  min-height: 540px;
}
.cs-hero-layout { gap: 48px; padding-top: 46px; padding-bottom: 48px; }
.cs-hero-vibrant h1 { font-size: clamp(46px, 4.7vw, 70px); letter-spacing: -2.8px; }
.cs-hero-vibrant p { font-size: 15px; line-height: 1.85; }
.cs-hero-vibrant .cs-eyebrow { color: #dedfe3; }
.cs-hero-tile { transition: transform .25s, box-shadow .25s; border-radius: 22px; }
.cs-hero-tile-0 { transform: rotate(-5deg); }
.cs-hero-tile-1 { transform: rotate(5deg); }
.cs-hero-tile-2 { transform: rotate(3deg); }
.cs-hero-tile:hover { transform: translateY(-5px) rotate(0); box-shadow: 0 22px 40px #0005; }
.cs-hero-tile span { display: flex; align-items: center; min-height: 43px; font-size: 12px; }
.cs-hero-showcase:before { background: #34363e60; border-color: #62646e45; }
.cs-hero-tags a {
  padding: 8px 12px; border: 1px solid #62646e; border-radius: 24px;
  font-size: 10px; color: #e8e9ec; transition: background .2s, border-color .2s;
}
.cs-hero-tags a:hover { background: #353840; border-color: #a2a4ae; }
.cs-discover-strip { gap: 42px; padding-top: 13px; padding-bottom: 13px; }
.cs-benefits { border-radius: 0 0 18px 18px; }
.cs-benefits strong { font-size: 13px; }
.cs-benefits p { font-size: 12px; line-height: 1.7; }
.cs-section-top .cs-eyebrow { color: #a7242a; }
.cs-primary-categories { gap: 22px; }
.cs-primary-categories .cs-visual-category {
  border-radius: 19px; border-color: #e7e7e4; box-shadow: 0 5px 20px #191b1f05;
}
.cs-primary-categories .cs-category-photo { height: 216px; padding: 23px 26px 12px; }
.cs-primary-categories .cs-category-photo img { transition: transform .3s; }
.cs-primary-categories .cs-visual-category:hover .cs-category-photo img { transform: scale(1.05); }
.cs-primary-categories .cs-visual-category h3 {
  border-top: 0; padding: 16px 19px 8px; min-height: 0; font-size: 15px; letter-spacing: -.4px;
}
.cs-primary-categories .cs-visual-category h3 span {
  display: inline-flex; justify-content: center; align-items: center; width: 27px; height: 27px;
  border-radius: 50%; background: #f8eeee; flex-shrink: 0;
}
.cs-category-description { padding: 0 19px 20px; margin: 0; font-size: 11px; line-height: 1.65; color: #666b73; }
.cs-category-family-grid { gap: 18px; }
.cs-category-family .cs-visual-category { border-radius: 14px; box-shadow: none; }
.cs-category-family .cs-category-photo { height: 164px; padding: 20px; }
.cs-category-family h3 { font-size: 12px; line-height: 1.55; }
.cs-product-card { border-radius: 17px; border-color: #e5e5e2; box-shadow: none; }
.cs-product-info { padding: 19px; }
body.cs-home .cs-product-info h3 { font-weight: 600; line-height: 1.55; font-size: 14px; }
.cs-product-price { font-size: 19px; padding-top: 16px; }
.cs-ukulele-spotlight { overflow: hidden; background: #ececea; border-block: 1px solid #e1e2de; }
.cs-spotlight-layout { display: grid; grid-template-columns: 1fr 1.05fr; gap: 50px; align-items: center; padding-block: 66px; }
.cs-spotlight-copy .cs-eyebrow { color: #a7242a; letter-spacing: 1.4px; font-size: 10px; }
.cs-spotlight-copy h2 { font-size: clamp(34px, 3.6vw, 52px); line-height: 1.13; letter-spacing: -2px; margin: 20px 0; }
.cs-spotlight-copy h2 em { font-style: normal; color: #b9252d; }
.cs-spotlight-copy p { font-size: 14px; line-height: 1.9; color: #5d6269; max-width: 390px; margin-bottom: 26px; }
.cs-spotlight-copy .cs-button { border-radius: 28px; }
.cs-spotlight-note { display: block; margin-top: 17px; font-size: 11px; color: #666b73; }
.cs-spotlight-art { position: relative; min-height: 350px; display: grid; grid-template-columns: 1fr 1.15fr 1fr; gap: 14px; align-items: center; padding: 20px 6px 40px; }
.cs-spotlight-art:before { content: ''; position: absolute; width: 290px; height: 290px; border-radius: 50%; background: #d9d9d4; left: 50%; top: 45%; transform: translate(-50%, -50%); }
.cs-spotlight-instrument { position: relative; padding: 12px; background: #fff; border-radius: 80px 80px 15px 15px; height: 265px; box-shadow: 0 12px 30px #191b1f0b; transition: transform .3s; }
.cs-spotlight-instrument img { display: block; width: 100%; height: 100%; object-fit: contain; }
.cs-spotlight-instrument-0 { transform: rotate(-9deg) translateY(12px); }
.cs-spotlight-instrument-1 { height: 320px; z-index: 1; }
.cs-spotlight-instrument-2 { transform: rotate(9deg) translateY(12px); }
.cs-spotlight-art:hover .cs-spotlight-instrument-0 { transform: rotate(-5deg) translateY(6px); }
.cs-spotlight-art:hover .cs-spotlight-instrument-2 { transform: rotate(5deg) translateY(6px); }
.cs-spotlight-caption { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); display: flex; gap: 30px; white-space: nowrap; align-items: center; font-size: 11px; font-weight: 600; }
.cs-spotlight-caption>span { color: #b9252d; font-size: 19px; }
.cs-editorial article { background: #fff; padding: 26px; border: 1px solid #e3e4e0; border-radius: 16px; }
.cs-editorial p { font-size: 13px; }
.cs-contact-strip { border: 1px solid #e3e4e0; border-radius: 20px; margin-bottom: 45px; }
@media (max-width: 1000px) {
  .cs-hero-layout { gap: 30px; }
  .cs-primary-categories { gap: 14px; }
  .cs-primary-categories .cs-category-photo { height: 180px; padding: 20px 16px 10px; }
  .cs-primary-categories .cs-visual-category h3 { font-size: 13px; padding-inline: 14px; }
  .cs-category-description { padding-inline: 14px; font-size: 10px; }
  .cs-spotlight-layout { gap: 30px; }
  .cs-spotlight-instrument { height: 225px; padding: 8px; }
  .cs-spotlight-instrument-1 { height: 280px; }
}
@media (max-width: 600px) {
  .cs-head { padding-top: 17px; gap: 14px; }
  .cs-hero-layout { padding-top: 27px; padding-bottom: 26px; gap: 12px; }
  .cs-hero-vibrant h1 { font-size: 42px; line-height: 1.06; letter-spacing: -1.8px; margin: 15px 0; }
  .cs-hero-vibrant h1 em:after { margin-top: 13px; height: 3px; }
  .cs-hero-vibrant p { font-size: 12px; line-height: 1.8; margin-bottom: 19px; }
  .cs-hero-actions { gap: 13px; }
  .cs-hero-actions .cs-button { padding: 14px 17px; font-size: 11px; }
  .cs-hero-actions .cs-textlink { font-size: 9px; }
  .cs-hero-tags { display: none; }
  .cs-hero-showcase { min-height: 285px; width: 92%; gap: 12px; padding-top: 12px; }
  .cs-hero-showcase:before { width: 225px; height: 225px; top: 25px; }
  .cs-hero-tile-0 img { height: 192px; }
  .cs-hero-tile-1 img, .cs-hero-tile-2 img { height: 89px; }
  .cs-hero-tile span { font-size: 9px; min-height: 31px; padding: 8px; }
  .cs-hero-stamp { width: 67px; height: 67px; font-size: 9px; left: -12px; bottom: 6px; }
  .cs-discover-strip { gap: 20px; font-size: 8px; }
  .cs-benefits { padding-block: 13px; }
  .cs-benefits>div, .cs-benefits>div:first-child { padding-block: 13px; }
  .cs-benefits strong { font-size: 12px; }
  .cs-benefits p { font-size: 11px; }
  .cs-primary-categories { gap: 13px; }
  .cs-primary-categories .cs-category-photo { height: 160px; padding: 20px 15px 5px; }
  .cs-primary-categories .cs-visual-category h3 { font-size: 12px; padding: 13px 13px 6px; min-height: 45px; }
  .cs-primary-categories .cs-visual-category h3 span { width: 23px; height: 23px; }
  .cs-category-description { font-size: 10px; padding: 0 13px 16px; min-height: 48px; }
  .cs-category-family-grid { gap: 12px; }
  .cs-category-family .cs-category-photo { height: 145px; padding: 17px; }
  .cs-category-family h3 { font-size: 11px; }
  .cs-spotlight-layout { grid-template-columns: 1fr; gap: 28px; padding-block: 44px; }
  .cs-spotlight-copy .cs-eyebrow { font-size: 8px; letter-spacing: 1px; }
  .cs-spotlight-copy h2 { font-size: 35px; letter-spacing: -1.5px; margin-block: 15px; }
  .cs-spotlight-copy p { font-size: 12px; margin-bottom: 21px; }
  .cs-spotlight-art { min-height: 285px; gap: 11px; padding: 10px 4px 38px; }
  .cs-spotlight-art:before { width: 235px; height: 235px; }
  .cs-spotlight-instrument { height: 205px; padding: 7px; }
  .cs-spotlight-instrument-1 { height: 245px; }
  .cs-spotlight-caption { font-size: 10px; }
  .cs-product-info { padding: 13px; }
  .cs-product-price { font-size: 16px; }
  .cs-editorial article { padding: 23px; }
  .cs-contact-strip { border-radius: 0; margin-bottom: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .cs-hero-tile, .cs-primary-categories .cs-category-photo img, .cs-spotlight-instrument { transition: none; }
}
/* Category articles follow the catalogue; FAQ answers remain server-rendered. */
body.single-product .related.products .owl-stage{display:flex}
body.single-product .related.products .owl-item{display:flex;float:none;flex-shrink:0}
body.single-product .related.products li.product{width:100%;height:100%;margin-bottom:0!important}
body.single-product .related.products li.product>.inner{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #e3e4e7;border-radius:12px;overflow:hidden}
body.single-product .related.products .left-content{width:100%;float:none!important;flex-shrink:0}
body.single-product .related.products .product-thumbnail{height:260px!important;width:100%!important;padding:0!important;background:#fff;overflow:hidden}
body.single-product .related.products .product-thumbnail>a.woocommerce_loop_product_link{display:flex!important;align-items:center;justify-content:center;width:100%!important;height:260px!important;padding:20px;box-sizing:border-box}
body.single-product .related.products .product-thumbnail>a img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center;aspect-ratio:auto!important;margin:0!important}
body.single-product .related.products .product-content{width:100%!important;float:none!important;flex:1;padding:18px!important;min-height:185px}
body.single-product .related.products .woocommerce-loop-product__title{font:550 13px/1.65 Montserrat,Arial,sans-serif!important;min-height:65px;margin:10px 0 15px!important;letter-spacing:-.2px!important}
body.single-product .related.products .product-category{font-size:10px}
body.single-product .related.products .price{font:750 17px/1.5 Montserrat,Arial,sans-serif;color:#202329}
@media(max-width:600px){body.single-product .related.products .product-thumbnail,body.single-product .related.products .product-thumbnail>a.woocommerce_loop_product_link{height:220px!important}}
.cs-blog-page h1{font:750 clamp(38px,5vw,66px)/1.08 Montserrat,Arial,sans-serif;letter-spacing:-2px;margin:18px 0 24px;color:#202329}
.cs-guide-topics{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 35px}
.cs-guide-topics a{border:1px solid #dcdde0;border-radius:24px;background:#fff;padding:11px 17px;font-size:12px;font-weight:600}
.cs-guide-topics a[aria-current=page]{background:#bd242d;color:#fff;border-color:#bd242d}
.cs-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.cs-guide-card{min-width:0;border:1px solid #e1e2e5;border-radius:13px;background:#fff;overflow:hidden;transition:transform .18s,box-shadow .18s}
.cs-guide-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #20232910}
.cs-guide-card>a{display:block;height:100%}
.cs-guide-photo{height:230px;background:#fff;padding:26px;border-bottom:1px solid #eee}
.cs-guide-photo img{height:100%;width:100%;object-fit:contain}
.cs-guide-card-copy{padding:25px}
.cs-guide-card-copy small{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#bd242d;font-weight:600}
.cs-guide-card-copy h2{font:650 21px/1.45 Montserrat,Arial,sans-serif!important;letter-spacing:-.5px!important;margin:12px 0!important}
.cs-guide-card-copy p{font-size:12px;line-height:1.85;color:#676b73;margin:0 0 22px}
.cs-guide-card-copy>span{font-size:12px;font-weight:650;color:#bd242d}
.cs-guide-breadcrumb{font-size:11px;color:#676b73;margin-bottom:32px}
.cs-guide-heading{max-width:950px;margin:0 auto 35px;text-align:center}
.cs-guide-heading h1{font:750 clamp(30px,3.8vw,49px)/1.25 Montserrat,Arial,sans-serif;letter-spacing:-1.6px;margin:18px 0;color:#25282e}
.cs-guide-byline{font-size:11px;color:#777b83;margin:16px 0}
.cs-guide-lead{font-size:15px;line-height:1.85;color:#646973;max-width:750px;margin:22px auto 0}
.cs-guide-cover{height:350px;max-width:860px;margin:0 auto 42px;padding:35px;background:#fff;border:1px solid #e1e2e5;border-radius:12px}
.cs-guide-cover img{display:block;width:100%;height:100%;object-fit:contain}
.cs-guide-body{max-width:78ch;margin:0 auto;font-size:14px;line-height:1.95;color:#4d535d}
.cs-guide-body p{font-size:inherit;line-height:inherit;margin:0 0 22px}
.cs-guide-body h2{font:650 25px/1.4 Montserrat,Arial,sans-serif!important;letter-spacing:-.6px!important;margin:36px 0 16px!important;color:#242831}
.cs-guide-body h3{font:600 18px/1.55 Montserrat,Arial,sans-serif!important;letter-spacing:-.25px!important;margin:25px 0 10px!important}
.cs-guide-body a{color:#b3242d;text-decoration:underline;text-underline-offset:3px}
.cs-guide-body li{margin-bottom:10px}
.cs-related-guides{margin-top:70px;padding-top:35px;border-top:1px solid #dfe0e3}
.cs-related-guides>h2{font-size:28px!important;letter-spacing:-.7px!important;margin-bottom:25px!important}
@media(max-width:900px){.cs-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cs-guide-grid{grid-template-columns:1fr;gap:22px}.cs-guide-photo{height:220px}.cs-guide-card-copy{padding:22px}.cs-guide-heading{text-align:left}.cs-guide-heading h1{letter-spacing:-1px}.cs-guide-lead{font-size:13px}.cs-guide-cover{height:260px;padding:25px;margin-bottom:30px}.cs-guide-body{font-size:13px}.cs-guide-body h2{font-size:22px!important}.cs-guide-topics a{font-size:11px;padding:10px 13px}}
.cs-brands-page h1{font:750 clamp(34px,4.5vw,60px)/1.15 Montserrat,Arial,sans-serif;letter-spacing:-2px;margin:18px 0;color:#202329}
.cs-brands-intro{max-width:720px;font-size:15px;line-height:1.9;color:#656972;margin:0 0 44px}
.cs-brands-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.cs-brand-card{min-width:0;background:#fff;border:1px solid #e2e3e5;border-radius:12px;overflow:hidden;transition:transform .18s,border-color .18s,box-shadow .18s}
.cs-brand-logo{height:140px;display:flex;align-items:center;justify-content:center;padding:23px 20px;background:#fff}
.cs-brand-logo img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.cs-brand-card>span{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #eeeeef;padding:15px 17px;font:600 12px/1.5 Montserrat,Arial,sans-serif;color:#30333a}
.cs-brand-card b{color:#bd242d;font-size:17px;font-weight:500}
.cs-brand-card:hover{transform:translateY(-3px);border-color:#bd242d;box-shadow:0 10px 24px #22242a10}
.cs-brand-card:focus-visible{outline:3px solid #bd242d;outline-offset:3px}
.cs-brands-help{margin-top:55px;padding:35px;background:#fff;border:1px solid #e2e3e5;border-radius:12px}
.cs-brands-help h2{font-size:25px!important;line-height:1.5!important;letter-spacing:-.7px!important;margin:0 0 15px!important}
.cs-brands-help p{font-size:13px;line-height:1.9;max-width:840px;color:#656972;margin-bottom:22px}
.cs-brands-help .cs-button{background:#bd242d;color:#fff!important;border-color:#bd242d}
@media(max-width:1050px){.cs-brands-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:767px){.cs-brands-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.cs-brand-logo{height:115px;padding:20px 16px}.cs-brand-card>span{padding:12px;font-size:11px}.cs-brands-page h1{letter-spacing:-1.2px}.cs-brands-help{padding:24px 20px}.cs-brands-intro{font-size:13px;margin-bottom:30px}}
/* Keep favourite controls distinct from the parent theme's dark button style. */
body.cs-home button.cs-favourite-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;background:#fff0f1!important;color:#bd242d!important;border:1px solid #eaa6ac!important;border-radius:50%!important;box-shadow:0 3px 10px #861d2420!important;opacity:1!important;line-height:1!important;transition:background .18s,border-color .18s,transform .18s}
body.cs-home button.cs-favourite-toggle svg{display:block!important;width:24px!important;height:24px!important;min-width:24px!important;flex:0 0 24px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;opacity:1!important}
body.cs-home button.cs-favourite-toggle svg path{fill:inherit!important;stroke:currentColor!important}
body.cs-home button.cs-favourite-toggle:hover,body.cs-home button.cs-favourite-toggle[aria-pressed="true"]{background:#bd242d!important;border-color:#bd242d!important;color:#fff!important}
body.cs-home button.cs-favourite-toggle[aria-pressed="true"] svg{fill:currentColor!important}
body.cs-home button.cs-favourite-toggle:focus-visible{outline:3px solid #bd242d!important;outline-offset:3px!important}
@media(max-width:767px){body.cs-home button.cs-favourite-toggle{width:40px!important;height:40px!important;min-height:40px!important}body.cs-home button.cs-favourite-toggle svg{width:22px!important;height:22px!important;min-width:22px!important;flex-basis:22px!important}}
body.single-product .woocommerce-tabs{clear:both;margin-top:40px}
body.single-product .woocommerce-tabs ul.tabs{display:flex;gap:28px;flex-wrap:wrap;border:0;border-bottom:1px solid #dedfe1;padding:0!important;margin:0 0 30px!important;list-style:none}
body.single-product .woocommerce-tabs ul.tabs li{background:transparent!important;border:0!important;margin:0!important;padding:0!important;float:none!important}
body.single-product .woocommerce-tabs ul.tabs li:before,body.single-product .woocommerce-tabs ul.tabs li:after{display:none!important}
body.single-product .woocommerce-tabs ul.tabs li a{display:block;padding:16px 0!important;font:600 17px/1.5 Montserrat,Arial,sans-serif!important;color:#666b73!important;border-bottom:3px solid transparent}
body.single-product .woocommerce-tabs ul.tabs li.active a{color:#24262b!important;border-bottom-color:#c52b32}
body.single-product .woocommerce-tabs .panel{padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important}
body.single-product #reviews{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:32px;align-items:start;width:100%;float:none!important}
body.single-product #reviews #comments,body.single-product #reviews #review_form_wrapper{float:none!important;width:auto!important;margin:0!important;min-width:0}
body.single-product #reviews #comments{padding:24px 0}
body.single-product #reviews #review_form_wrapper{padding:28px;background:#fff;border:1px solid #e2e3e5;border-radius:12px}
body.single-product #reviews h2,body.single-product #reviews .comment-reply-title{display:block;font:650 21px/1.5 Montserrat,Arial,sans-serif!important;letter-spacing:-.4px;margin:0 0 22px;color:#24262b}
body.single-product #reviews p{font:400 13px/1.8 Montserrat,Arial,sans-serif;color:#646870}
body.single-product #reviews .comment-form{display:block!important;float:none!important;width:100%!important;margin:0!important;padding:0!important}
body.single-product #reviews .comment-form p{display:block;float:none;width:100%;margin:0 0 20px}
body.single-product #reviews .comment-form label{display:block!important;float:none!important;width:auto!important;margin:0 0 9px;font:600 13px/1.7 Montserrat,Arial,sans-serif;color:#30343b}
body.single-product #reviews .required{color:#bc2930}
body.single-product #reviews textarea,body.single-product #reviews input[type=text],body.single-product #reviews input[type=email]{box-sizing:border-box;display:block;width:100%!important;max-width:100%;min-width:0;border:1px solid #d7d9dd!important;border-radius:6px;background:#fafafa;color:#24262b;padding:13px 15px;font:400 13px/1.8 Montserrat,Arial,sans-serif}
body.single-product #reviews textarea{height:auto;min-height:160px;resize:vertical}
body.single-product #reviews textarea:focus,body.single-product #reviews input:focus{outline:2px solid #c52b32;outline-offset:2px}
body.single-product #reviews .comment-form-rating{margin-bottom:20px;display:block}
body.single-product #reviews p.stars{display:block!important;margin:0!important;line-height:1}
body.single-product #reviews p.stars span{display:inline-flex!important;gap:7px}
body.single-product #reviews p.stars a{position:relative!important;display:inline-flex!important;align-items:center;justify-content:center;width:36px!important;height:40px!important;margin:0!important;padding:0!important;font-size:0!important;text-indent:0!important;overflow:hidden;color:#6d727b!important;background:none!important;opacity:1!important;border:0!important;text-decoration:none}
body.single-product #reviews p.stars a:before{display:none!important}
body.single-product #reviews p.stars a:after{content:"☆"!important;position:static!important;font:32px/1 Arial,sans-serif!important;color:#6d727b;opacity:1!important}
body.single-product #reviews p.stars.selected a.active:after,body.single-product #reviews p.stars.selected a:has(~ a.active):after{content:"★"!important;color:#b97b16}
body.single-product #reviews p.stars:hover a:after{content:"★"!important;color:#b97b16}
body.single-product #reviews p.stars a:hover~a:after{content:"☆"!important;color:#6d727b}
body.single-product #reviews p.stars a:focus-visible{outline:2px solid #c52b32;outline-offset:-2px;border-radius:4px}
body.single-product #reviews .form-submit{margin:24px 0 0!important}
body.single-product #reviews .submit{display:inline-flex;width:auto;max-width:100%;padding:14px 21px!important;background:#c52b32!important;color:#fff!important;border:1px solid #c52b32!important;border-radius:6px;font:600 12px/1.6 Montserrat,Arial,sans-serif!important;cursor:pointer;white-space:normal}
body.single-product #reviews .submit:hover{background:#a92128!important}
body.single-product #reviews .commentlist{padding:0;list-style:none}
body.single-product #reviews .clear{display:none}
@media(max-width:767px){body.single-product #reviews{grid-template-columns:1fr!important;gap:12px}body.single-product #reviews #review_form_wrapper{padding:22px 18px}body.single-product #reviews #comments{padding:12px 0}body.single-product .woocommerce-tabs ul.tabs{gap:20px}body.single-product .woocommerce-tabs ul.tabs li a{font-size:14px!important}body.single-product #reviews .submit{width:100%;justify-content:center}}
/* Stretch the existing product title link over its card, keeping hearts separate. */
.cs-product-card{position:relative;isolation:isolate;cursor:pointer}
.cs-product-card .cs-product-info,.cs-product-card .cs-product-info h3,.cs-product-card .cs-product-info h3 a{position:static}
.cs-product-card .cs-product-info h3 a:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.cs-product-card .cs-favourite-toggle{z-index:3}
.cs-product-card .cs-product-info h3 a:focus-visible:after{outline:3px solid #c52b32;outline-offset:-3px;border-radius:16px}
.cs-category-guide{margin-top:72px;padding:44px clamp(20px,4vw,60px);background:#fff;border:1px solid #e4e4e4;border-radius:8px;color:#24262b}
.cs-category-guide>h2{font-family:Montserrat,Arial,sans-serif!important;font-size:clamp(24px,2.3vw,34px)!important;font-weight:650!important;letter-spacing:-.7px!important;line-height:1.35!important;max-width:940px;margin:14px 0 25px!important}
.cs-guide-copy{max-width:86ch;font-size:14px;line-height:1.95;color:#51535a}
.cs-guide-copy p{font-size:inherit;line-height:inherit;margin:0 0 22px}
.cs-guide-copy h3{font:650 18px/1.5 Montserrat,Arial,sans-serif;color:#24262b;letter-spacing:-.25px;margin:30px 0 14px}
.cs-guide-faq{border-top:1px solid #e8e8e9;padding:16px 0}
.cs-guide-faq:last-child{border-bottom:1px solid #e8e8e9}
.cs-guide-faq summary{cursor:pointer;font-weight:600;color:#27292f;line-height:1.7}
.cs-guide-faq p{margin:14px 0 0}
.cs-guide-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.cs-guide-links a{display:inline-flex;gap:16px;align-items:center;border:1px solid #dedfe1;border-radius:4px;padding:10px 14px;font-size:12px;font-weight:600;line-height:1.5}
.cs-guide-links a:hover{border-color:#c52b32;color:#c52b32}
.cs-guide-links a:focus-visible,.cs-guide-faq summary:focus-visible{outline:2px solid #c52b32;outline-offset:4px}
.cs-catalogue-inquiry{margin:20px 0;padding:22px;background:#f5f5f2;border:1px solid #e3e4e7;border-radius:5px}
.cs-catalogue-inquiry p{font-size:13px;line-height:1.8}
@media(max-width:600px){.cs-category-guide{margin-top:42px;padding:28px 20px}.cs-guide-copy{font-size:13px;line-height:1.95}.cs-guide-copy h3{font-size:16px}.cs-guide-links{flex-direction:column}.cs-guide-links a{justify-content:space-between}}

/* Official brand identity in the header. */
.cs-head .cs-logo{width:110px;justify-content:center}.cs-head .cs-header-logo{display:block;width:110px;height:110px;max-width:none;object-fit:contain}.cs-head{padding-top:12px;padding-bottom:12px}@media(max-width:600px){.cs-head .cs-logo{width:80px}.cs-head .cs-header-logo{width:80px;height:80px}}
.cs-heritage .cs-story-content{background:#202124;color:#faf6ef}.cs-heritage .cs-eyebrow,.cs-century{color:#d5b98a}.cs-century{display:block;font-size:11px;letter-spacing:1px;margin:18px 0 28px}.cs-century span{padding:0 8px}.cs-heritage .cs-story-image img{object-fit:cover;object-position:center}.cs-heritage .cs-textlink{color:#faf6ef}.cs-history-page{max-width:1100px}.cs-history-page h1{font-size:clamp(32px,5vw,60px);line-height:1.12;letter-spacing:-2px;margin:20px 0}.cs-history-lead{font-size:16px;line-height:1.8;color:#666}.cs-history-archive{margin:36px 0}.cs-history-archive img{display:block;width:100%;height:auto;border-radius:12px}.cs-history-archive figcaption{font-size:11px;color:#666;margin-top:12px}.cs-history-copy{max-width:780px;margin:auto;font-size:14px;line-height:1.95}.cs-history-copy h2{font-size:24px;line-height:1.4;margin:38px 0 16px}.cs-history-copy a{text-decoration:underline}.cs-history-source{font-size:11px;color:#666}.cs-history-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:36px auto 0;max-width:780px}@media(max-width:600px){.cs-history-copy{font-size:13px}.cs-history-copy h2{font-size:21px}.cs-history-page h1{letter-spacing:-1px}}
/* Expandable homepage carousel. */
.cs-slider{background:#191b1f;color:#fff;position:relative}.cs-slider .cs-slide[hidden]{display:none!important}.cs-slider .cs-slide{min-height:620px}.cs-anniversary-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;min-height:620px;padding-top:48px;padding-bottom:48px}.cs-anniversary-tag{display:inline-block;color:#ead3a7;border:1px solid #a68a58;padding:8px 13px;border-radius:30px;font-size:12px;letter-spacing:1px;margin-top:18px}.cs-anniversary h1,.cs-slide-title{font-size:clamp(40px,4.7vw,70px);line-height:1.08;letter-spacing:-2.8px;font-weight:700;margin:22px 0}.cs-anniversary h1 em{font-style:normal;color:#ead3a7}.cs-anniversary p{font-size:15px;line-height:1.85;max-width:510px;color:#ddd}.cs-anniversary .cs-button{margin-top:18px;background:#c52b32;border-color:#c52b32;color:#fff}.cs-anniversary-art{margin:0;transform:rotate(2deg)}.cs-anniversary-art img{width:100%;height:auto;display:block;border-radius:12px;box-shadow:0 20px 60px #0006}.cs-anniversary-art figcaption{font-size:11px;letter-spacing:.5px;color:#d4c6b0;margin-top:14px}.cs-slider-controls{display:flex;align-items:center;gap:12px;padding-top:16px;padding-bottom:20px;border-top:1px solid #ffffff20}.cs-slider-controls button{border:1px solid #ffffff60;border-radius:24px;background:transparent;color:#fff;min-height:38px;min-width:40px;padding:8px 12px;font:600 11px Montserrat,Arial,sans-serif;cursor:pointer}.cs-slider-controls button:hover,.cs-slider-controls button[aria-current=true]{background:#c52b32;border-color:#c52b32}.cs-slider-controls button:focus-visible{outline:2px solid #ead3a7;outline-offset:4px}.cs-slider-dots{display:flex;gap:8px}.cs-slider-controls [data-cs-pause]{margin-left:auto}.cs-slide-title em{font-style:normal}.cs-hero-vibrant .cs-slide-title{color:#fff}.cs-hero-vibrant .cs-slide-title em:after{content:'';display:block;width:56px;height:4px;background:#c52b32;margin-top:18px}@media(max-width:767px){.cs-anniversary-layout{grid-template-columns:1fr;gap:26px;padding-top:32px;padding-bottom:30px;min-height:0}.cs-slider .cs-slide{min-height:650px}.cs-anniversary h1,.cs-slide-title{font-size:42px;letter-spacing:-1.8px}.cs-anniversary p{font-size:12px;line-height:1.8}.cs-anniversary-art{width:90%;max-width:420px;margin:0 auto;transform:none}.cs-anniversary-art img{max-height:260px;object-fit:contain;box-shadow:none}.cs-anniversary-art figcaption{text-align:center;font-size:10px}.cs-slider-controls{padding-top:12px;padding-bottom:12px}}@media(prefers-reduced-motion:reduce){.cs-slider *{scroll-behavior:auto!important;transition:none!important}}
.cs-anniversary h1{color:#fff}
.cs-home-brands{padding:36px 0 30px;background:#fff;border-bottom:1px solid #e3e4e7;overflow:hidden}.cs-home-brands .cs-section-top{gap:16px;flex-wrap:wrap;margin-bottom:24px}.cs-home-brands h2{font-size:26px;margin:8px 0 0}.cs-brand-window{overflow:hidden;width:100%}.cs-brand-track{display:flex;width:max-content;animation:cs-brands-scroll 150s linear infinite}.cs-brand-run{display:flex;flex-shrink:0}.cs-brand-run a{display:flex;align-items:center;justify-content:center;width:180px;height:100px;padding:12px 22px;border-right:1px solid #eee;background:#fff;flex-shrink:0}.cs-brand-run img{display:block;width:100%;height:100%;object-fit:contain}.cs-brand-run a:hover{background:#faf7f2}.cs-brand-run a:focus-visible{outline:2px solid #c52b32;outline-offset:-4px}.cs-home-brands:hover .cs-brand-track,.cs-home-brands:focus-within .cs-brand-track,.cs-home-brands.is-paused .cs-brand-track{animation-play-state:paused}.cs-brand-motion{border:1px solid #ddd;border-radius:22px;background:#fff;padding:9px 13px;font:600 10px Montserrat,Arial,sans-serif;cursor:pointer}.cs-brand-motion[aria-pressed=true]{background:#191b1f;color:white}.cs-home-brands .cs-textlink{margin-left:auto}@keyframes cs-brands-scroll{to{transform:translateX(-50%)}}@media(max-width:600px){.cs-home-brands{padding-top:26px}.cs-home-brands h2{font-size:22px}.cs-brand-run a{width:145px;height:85px;padding:12px 18px}.cs-home-brands .cs-textlink{font-size:10px}.cs-brand-track{animation-duration:180s}}@media(prefers-reduced-motion:reduce){.cs-brand-track{animation:none!important}.cs-brand-window{overflow-x:auto}.cs-brand-run[aria-hidden=true]{display:none}}
.cs-head{gap:24px}.cs-centennial-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;width:94px;height:94px;border:1px solid #b49a69;border-radius:50%;color:#80632f!important;background:#faf6ed;position:relative}.cs-centennial-badge>span{font-size:8px;letter-spacing:1px;font-weight:700}.cs-centennial-badge strong{font-size:39px;line-height:1.1;letter-spacing:-2px}.cs-centennial-badge sup{font-size:8px;letter-spacing:0;vertical-align:middle;margin-left:2px}.cs-centennial-badge small{font-size:8px;letter-spacing:1px}.cs-campaign-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:45px;min-height:620px;padding-top:45px;padding-bottom:45px}.cs-campaign{background:#23252b;color:white}.cs-campaign-melody{background:#46232d}.cs-campaign-rhythm{background:#283c3c}.cs-campaign .cs-slide-title{color:#fff}.cs-campaign .cs-slide-title em{color:#ead3a7}.cs-campaign p{font-size:14px;line-height:1.9;max-width:500px;color:#eee}.cs-campaign .cs-eyebrow{color:#ead3a7}.cs-campaign .cs-button{margin-top:18px;background:#fff;color:#191b1f!important;border-color:#fff}.cs-campaign-art{display:flex;gap:14px;align-items:center;justify-content:center}.cs-campaign-product{display:block;flex:1;min-width:0;border-radius:100px 100px 14px 14px;background:#fff;padding:18px 12px 16px;color:#191b1f!important;box-shadow:0 16px 40px #0003;transform:rotate(-4deg)}.cs-campaign-product:nth-child(2){transform:rotate(4deg);margin-top:55px}.cs-campaign-product:nth-child(3){transform:rotate(-2deg);margin-top:5px}.cs-campaign-product>div{height:290px;display:flex;align-items:center;justify-content:center}.cs-campaign-product img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;max-height:290px}.cs-campaign-product span{display:block;font-size:11px;font-weight:700;text-align:center;margin-top:15px}.cs-campaign-product .cs-category-composition{height:100%;display:flex}.cs-service-strip>a{display:flex;align-items:center;gap:16px;padding:24px 12px}.cs-service-strip>a>span{font-size:28px;color:#b38847}.cs-service-strip strong{font-size:12px}.cs-service-strip p{font-size:11px}.cs-subcategory-section{margin:10px 0 28px}.cs-subcategory-section>h2{font-size:21px}.cs-subcategory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.cs-subcategory-grid>a{display:block;padding:18px;background:#fff;border:1px solid #e3e4e7;border-radius:12px}.cs-subcategory-grid h3{font-size:13px;margin:0 0 12px}.cs-subcategory-grid span{font-size:11px;color:#666}.cs-subcategory-grid b{float:right;color:#c52b32}.cs-subcategory-grid>a:hover{border-color:#c52b32}.cs-category-advice{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;background:#eeeae1;border-radius:12px;margin:22px 0 30px}.cs-category-advice small{color:#80632f;font-size:10px;text-transform:uppercase;letter-spacing:1px}.cs-category-advice h2{font-size:19px;margin:8px 0}.cs-category-advice p{font-size:12px;margin:0}.cs-category-advice>a{flex-shrink:0;font-size:11px}.cs-slider-controls{gap:8px}.cs-slider-dots{gap:6px}@media(max-width:767px){.cs-head{gap:12px}.cs-centennial-badge{width:68px;height:68px}.cs-centennial-badge strong{font-size:29px}.cs-centennial-badge>span,.cs-centennial-badge small{font-size:6px}.cs-campaign-layout{grid-template-columns:1fr;gap:22px;padding-top:32px;padding-bottom:30px;min-height:650px}.cs-campaign .cs-slide-title{font-size:40px}.cs-campaign p{font-size:12px}.cs-campaign-product>div{height:190px}.cs-campaign-product img{max-height:190px}.cs-campaign-product{padding:14px 10px}.cs-campaign-product span{font-size:9px}.cs-campaign-product:nth-child(2){margin-top:20px}.cs-service-strip>a{padding:12px 0}.cs-subcategory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-category-advice{flex-direction:column;align-items:flex-start}.cs-slider-controls button{padding:7px 8px;min-width:32px}.cs-slider-controls [data-cs-pause]{font-size:9px;padding:8px}.cs-service-strip{gap:8px}}@media(max-width:400px){.cs-slider-controls{gap:5px}.cs-slider-dots{gap:3px}.cs-slider-controls button{min-width:29px;padding:6px}.cs-centennial-badge{width:62px;height:62px}}
.cs-slider .cs-scene-slide{min-height:0;background:#191714}.cs-scene-image{display:block;width:100%}.cs-scene-image img{display:block;width:100%;height:auto;aspect-ratio:1408/768;object-fit:contain}.cs-scene-caption{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:22px;padding-bottom:24px;background:#191b1f}.cs-scene-caption h2{font-size:27px;line-height:1.25;color:#f8eedc;margin:0 0 8px;letter-spacing:-.6px}.cs-scene-caption p{font-size:12px;color:#ddd;margin:0;line-height:1.7}.cs-scene-caption .cs-button{flex-shrink:0;background:#c52b32;border-color:#c52b32;color:#fff}.cs-category-scene{margin:20px 0 30px;overflow:hidden;border-radius:14px;background:#211d18}.cs-category-scene img{display:block;width:100%;height:auto;object-fit:contain}.cs-slider-controls{flex-wrap:wrap}.cs-slider-dots{flex-wrap:wrap}@media(max-width:767px){.cs-slider .cs-scene-slide{min-height:0}.cs-scene-caption{flex-direction:column;align-items:flex-start;gap:16px;padding-top:20px;padding-bottom:24px}.cs-scene-caption h2{font-size:25px}.cs-scene-caption p{font-size:12px}.cs-scene-caption .cs-button{font-size:11px;padding:12px 18px}.cs-slider-controls{gap:5px}.cs-slider-controls button{min-width:29px;padding:6px}.cs-slider-dots{gap:3px}.cs-category-scene{border-radius:8px;margin:16px 0 22px}}@media(max-width:360px){.cs-slider-controls [data-cs-pause]{margin-left:0}}
.cs-head .cs-centennial-badge{display:flex;align-items:center;justify-content:center;width:126px;height:auto;border:0;border-radius:0;background:transparent;flex-shrink:0}.cs-centennial-badge>img{display:block;width:126px;height:auto;max-width:100%;object-fit:contain}.cs-head .cs-centennial-badge:focus-visible{outline:2px solid #b49a69;outline-offset:4px}@media(max-width:767px){.cs-head .cs-centennial-badge{width:100px;height:auto}.cs-centennial-badge>img{width:100px;height:auto}}@media(max-width:400px){.cs-head .cs-centennial-badge{width:90px}.cs-centennial-badge>img{width:90px}}
