.cfs-brand-page,.cfs-brand-landing{--cfs-bp-green:#4d403a;--cfs-bp-green2:#3a474d;--cfs-bp-gold:#a3968d;--cfs-bp-page:#faf8f5;--cfs-bp-warm:#dfdacf;--cfs-bp-line:#dfdacf;--cfs-bp-ink:#3a474d;--cfs-bp-body:#3a474d;color:var(--cfs-bp-ink);background:var(--cfs-bp-page);font-family:var(--cfs-font-sans,Inter,"Segoe UI",Arial,sans-serif)}
.cfs-bp-heading,.cfs-bp-hero h1,.cfs-bp-help h2,.cfs-brand-landing-copy h1,.cfs-brand-story-grid h2,.cfs-brand-directory-head h2,.cfs-brand-room strong,.cfs-brand-room-tile strong,.cfs-brand-landing .story-copy h2,.cfs-brand-landing .expert-cta h2,.cfs-brand-landing .about-faq h2,.cfs-brand-landing .faq-list>h2{font-family:var(--cfs-font-editorial,"Instrument Serif",Georgia,"Times New Roman",serif);font-weight:400}
.cfs-brand-page *,.cfs-brand-landing *{box-sizing:border-box}.cfs-brand-page img,.cfs-brand-landing img{display:block;max-width:100%}.cfs-brand-page a,.cfs-brand-landing a{color:inherit}.cfs-bp-inner{width:min(calc(100% - 32px),1502px);max-width:1502px;margin:auto;padding:54px 0}.cfs-bp-white{background:#fff}.cfs-bp-warm{background:var(--cfs-bp-warm)}.cfs-bp-eyebrow{margin:0 0 10px;color:#b68d68;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.cfs-bp-heading{margin:0;font-size:42px;line-height:1.14;font-weight:700}.cfs-bp-intro{max-width:760px;margin:12px 0 0;color:var(--cfs-bp-body);font-size:16px;line-height:1.6}.cfs-bp-breadcrumb{width:min(calc(100% - 32px),1502px);max-width:1502px;margin:auto;padding:15px 0;display:flex;gap:9px;align-items:center;background:#fff;color:#707070;font-size:13px}.cfs-bp-breadcrumb a{text-decoration:none}.cfs-bp-breadcrumb strong{color:var(--cfs-bp-ink)}
.cfs-bp-hero{padding:70px max(80px,calc((100vw - 1280px)/2));color:#fff;background:var(--cfs-bp-green)}.cfs-bp-hero h1{max-width:780px;margin:0;font-size:58px;line-height:1.08}.cfs-bp-hero p:last-child{max-width:720px;margin:18px 0 0;color:rgba(255,255,255,.82);font-size:18px;line-height:1.55}.cfs-bp-trust{padding:28px max(80px,calc((100vw - 1280px)/2));display:grid;grid-template-columns:repeat(4,1fr);gap:22px;color:#fff;background:var(--cfs-bp-green2)}.cfs-bp-trust div{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center}.cfs-bp-trust i{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--cfs-bp-green);font-size:20px;font-style:normal}.cfs-bp-trust .cfs-trust-icon{width:22px;height:22px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cfs-bp-trust strong,.cfs-bp-trust small{display:block}.cfs-bp-trust strong{font-size:15px}.cfs-bp-trust small{color:rgba(255,255,255,.72);font-size:12px}
.cfs-brand-finder{display:grid;gap:20px}.cfs-brand-search{height:54px;max-width:720px;padding:0 17px;border:1px solid var(--cfs-bp-line);border-radius:5px;display:flex;align-items:center;gap:10px;background:#fff}.cfs-brand-search input{width:100%;border:0;outline:0;background:transparent;font-size:16px}.cfs-brand-filter-label{font-size:12px;font-weight:700;letter-spacing:.06em}.cfs-brand-filter-rail,.cfs-brand-letter-rail{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.cfs-brand-filter-rail button,.cfs-brand-letter-rail button,.cfs-range-filters button{min-height:40px;padding:0 16px;border:1px solid var(--cfs-bp-line);border-radius:999px;flex:none;background:#fff;cursor:pointer}.cfs-brand-filter-rail button.is-active,.cfs-brand-letter-rail button.is-active,.cfs-range-filters button.is-active{border-color:var(--cfs-bp-green);color:#fff;background:var(--cfs-bp-green)}.cfs-brand-letter-rail{padding:10px;background:var(--cfs-bp-green)}.cfs-brand-letter-rail button{width:36px;padding:0;border-color:transparent;color:#fff;background:transparent}.cfs-brand-letter-rail button.is-active{color:var(--cfs-bp-green);background:#fff}
.cfs-bp-section-head{margin-bottom:24px;display:flex;align-items:end;justify-content:space-between;gap:20px}.cfs-bp-section-head p{margin:8px 0 0;color:var(--cfs-bp-body)}.cfs-brand-featured-viewport{overflow-x:auto;scroll-snap-type:x mandatory}.cfs-brand-featured-track{display:flex;gap:18px;width:max-content}.cfs-brand-card{width:260px;border:1px solid var(--cfs-bp-line);border-radius:7px;overflow:hidden;display:flex;flex:0 0 260px;flex-direction:column;scroll-snap-align:start;background:#fff;text-decoration:none}.cfs-brand-card-media{height:150px;padding:20px;display:grid;place-items:center;background:#e9e7e0}.cfs-brand-card-media img{max-width:80%;max-height:110px;object-fit:contain;filter:grayscale(1);transition:.2s}.cfs-brand-card:hover .cfs-brand-card-media img{filter:none;transform:scale(1.04)}.cfs-brand-card-copy{padding:16px;display:grid;gap:5px}.cfs-brand-card-copy strong{font-size:18px}.cfs-brand-card-copy small{color:var(--cfs-bp-body);line-height:1.45}.cfs-brand-room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cfs-brand-room{min-height:150px;padding:22px;border:1px solid var(--cfs-bp-line);border-radius:6px;display:flex;flex-direction:column;align-items:flex-start;background:#fff;cursor:pointer}.cfs-brand-room strong{font-size:22px}.cfs-brand-room span{color:#b68d68;font-weight:700}.cfs-brand-room small{margin-top:8px;color:var(--cfs-bp-body)}.cfs-brand-room b{margin-top:auto;color:var(--cfs-bp-green)}.cfs-brand-directory-head{margin-bottom:18px;display:flex;justify-content:space-between;gap:20px}.cfs-brand-directory-head strong{color:#b68d68}.cfs-brand-results{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.cfs-brand-result{min-height:62px;padding:12px 14px;border:1px solid var(--cfs-bp-line);display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;background:#fff;text-decoration:none}.cfs-brand-result img{width:48px;height:38px;object-fit:contain}.cfs-brand-result span{font-weight:600}.cfs-brand-result b{color:var(--cfs-bp-green)}.cfs-brand-empty{padding:24px;border:1px solid var(--cfs-bp-line);background:#fff}.cfs-bp-help{color:#fff;background:var(--cfs-bp-green)}.cfs-bp-help .cfs-bp-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:60px}.cfs-bp-help h2{font-size:42px}.cfs-bp-help p{color:rgba(255,255,255,.78);line-height:1.6}.cfs-bp-contact{display:grid;gap:10px}.cfs-bp-contact a{padding:17px;border:1px solid rgba(255,255,255,.25);display:grid;background:rgba(255,255,255,.06);text-decoration:none}.cfs-bp-contact small{color:rgba(255,255,255,.7)}.cfs-bp-button{min-height:48px;padding:0 22px;border:1px solid var(--cfs-bp-green);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#fff!important;background:var(--cfs-bp-green);font-weight:700;text-decoration:none}.cfs-bp-button.is-gold{border-color:var(--cfs-bp-gold);background:var(--cfs-bp-gold)}
.cfs-brand-anchor{position:sticky;top:0;z-index:30;border-block:1px solid var(--cfs-bp-line);background:#fff}.cfs-brand-anchor div{width:min(calc(100% - 32px),1502px);max-width:1502px;height:56px;margin:auto;display:flex;gap:34px;align-items:center;overflow-x:auto}.cfs-brand-anchor a{height:100%;display:flex;align-items:center;border-bottom:2px solid transparent;flex:none;text-decoration:none}.cfs-brand-anchor a.is-active{border-color:var(--cfs-bp-green);font-weight:700}.cfs-brand-landing-hero{min-height:500px;display:grid;grid-template-columns:minmax(420px,560px) 1fr;color:#fff;background:#1b2017}.cfs-brand-landing-hero picture{grid-column:2}.cfs-brand-landing-hero img{width:100%;height:500px;object-fit:cover}.cfs-brand-landing-copy{grid-column:1;grid-row:1;padding:68px 56px 68px 80px;display:flex;flex-direction:column;justify-content:center}.cfs-brand-landing-copy h1{margin:0;font-size:52px;line-height:1.12}.cfs-brand-landing-copy p{font-size:17px;line-height:1.55}.cfs-brand-landing-actions{display:flex;gap:12px}.cfs-brand-landing-actions .cfs-bp-button:last-child{border-color:#fff;background:transparent}
.cfs-brand-room-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cfs-brand-room-tile{border-radius:6px;overflow:hidden;color:#fff;background:#1b2017;text-decoration:none}.cfs-brand-room-tile img{width:100%;height:250px;object-fit:cover}.cfs-brand-room-tile span{padding:16px 20px;display:flex;justify-content:space-between}.cfs-brand-room-tile strong{font-size:21px}.cfs-range-toolbar{margin:22px 0 14px;display:flex;gap:12px}.cfs-range-search{height:48px;max-width:560px;padding:0 14px;border:1px solid var(--cfs-bp-line);display:flex;flex:1;align-items:center;background:#fff}.cfs-range-search input{width:100%;border:0;outline:0;background:transparent}.cfs-range-sort{height:48px;padding:0 14px;border:1px solid var(--cfs-bp-line);background:#fff}.cfs-range-filters{margin-bottom:18px;display:flex;gap:8px;overflow-x:auto}.cfs-range-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.cfs-range-card{border:1px solid var(--cfs-bp-line);border-radius:6px;overflow:hidden;background:#fff}.cfs-range-card>img{width:100%;height:180px;object-fit:cover}.cfs-range-card>div{min-height:238px;padding:17px;display:flex;flex-direction:column;gap:8px}.cfs-range-card h3{margin:0;font-size:24px}.cfs-range-card p{margin:0;color:var(--cfs-bp-body);line-height:1.45}.cfs-range-card strong{font-size:12px;text-transform:uppercase}.cfs-range-card a{margin-top:auto;color:var(--cfs-bp-green);font-weight:700}.cfs-range-load-wrap{padding-top:28px;text-align:center}.cfs-range-load-wrap [hidden]{display:none}.cfs-brand-featured-products{overflow-x:auto}.cfs-brand-featured-products>ul{min-width:1050px;display:grid!important;grid-template-columns:repeat(4,1fr);gap:18px}.cfs-brand-featured-products .product{width:auto!important;max-width:none!important}.cfs-brand-featured-products .product-card{height:100%}.cfs-brand-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.cfs-brand-story-grid img{width:100%;height:390px;object-fit:cover}.cfs-brand-story-grid h2{font-size:42px}.cfs-brand-story-grid p{color:var(--cfs-bp-body);font-size:16px;line-height:1.65}.cfs-brand-category-links{display:flex;flex-wrap:wrap;gap:10px}.cfs-brand-category-links a{padding:9px 15px;border:1px solid var(--cfs-bp-line);border-radius:999px;background:#fff;text-decoration:none}.cfs-bp-form{padding:30px;border:1px solid var(--cfs-bp-line);display:grid;gap:16px;background:#fff}.cfs-bp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cfs-bp-form label{display:grid;gap:6px;font-weight:600}.cfs-bp-form input,.cfs-bp-form select,.cfs-bp-form textarea{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--cfs-bp-line);background:#fff}.cfs-bp-form textarea{min-height:110px}.cfs-bp-faq{display:grid;grid-template-columns:360px 1fr;gap:45px}.cfs-bp-faq details{border-top:1px solid var(--cfs-bp-line)}.cfs-bp-faq summary{padding:18px 0;font-weight:700;cursor:pointer}.cfs-bp-faq details p{color:var(--cfs-bp-body);line-height:1.6}
@media(max-width:1023px){.cfs-bp-inner{padding:34px 20px}.cfs-bp-breadcrumb{padding:12px 20px}.cfs-bp-hero{padding:40px 20px}.cfs-bp-hero h1{font-size:38px}.cfs-bp-trust{padding:22px 20px;grid-template-columns:1fr 1fr}.cfs-bp-heading{font-size:30px}.cfs-brand-results{grid-template-columns:1fr 1fr}.cfs-brand-room-grid{grid-template-columns:repeat(2,1fr)}.cfs-bp-help .cfs-bp-inner{grid-template-columns:1fr}.cfs-brand-anchor div{padding:0 20px}.cfs-brand-landing-hero{display:flex;flex-direction:column}.cfs-brand-landing-hero picture{order:0}.cfs-brand-landing-hero img{height:250px}.cfs-brand-landing-copy{order:1;padding:32px 20px}.cfs-brand-landing-copy h1{font-size:36px}.cfs-brand-room-tiles{display:flex;overflow-x:auto}.cfs-brand-room-tile{min-width:280px}.cfs-range-grid{grid-template-columns:1fr 1fr}.cfs-brand-story-grid,.cfs-bp-faq{grid-template-columns:1fr}.cfs-brand-story-grid img{height:280px}}

/* Keep the brand section links on their aligned inner track while allowing
   the grey navigation band and borders to span the full viewport width. */
body.cfs2030-shell #main-content .cfs-brand-landing.cfs-brand-landing--brand>.cfs-brand-anchor.brand-anchor-nav{
  width:100%;
  max-width:none;
  margin-inline:0;
  background:var(--cfs-theme-khaki,#dfdacf);
}
@media(max-width:600px){.cfs-bp-trust{grid-template-columns:1fr 1fr}.cfs-bp-trust div{grid-template-columns:34px 1fr}.cfs-bp-trust i{width:34px;height:34px}.cfs-brand-room-grid,.cfs-brand-results,.cfs-range-grid,.cfs-bp-form-grid{grid-template-columns:1fr}.cfs-brand-card{width:232px;flex-basis:232px}.cfs-range-toolbar{flex-direction:column}.cfs-brand-landing-actions{flex-direction:column}.cfs-brand-story-grid img{height:220px}}

/* Full-site annotated pass: match the shared Brands assurance treatment. */
.cfs-brand-landing>.cfs-bp-trust{
  padding-top:24px;
  padding-bottom:24px;
  color:var(--cfs-bp-ink);
  background:#fff;
}

/* Keep both desktop bestseller controls on the same centre line. Global
   disabled-button styling removes transforms, so position them without one. */
@media(min-width:1024px){
  :is(#cfs-brand-carousel-arrows#cfs-brand-carousel-arrows#cfs-brand-carousel-arrows#cfs-brand-carousel-arrows#cfs-brand-carousel-arrows#cfs-brand-carousel-arrows#cfs-brand-carousel-arrows#cfs-brand-carousel-arrows,html)
  body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-control{
    top:calc(50% - 24px)!important;
    transform:none!important
  }
}
.cfs-brand-landing>.cfs-bp-trust i{
  border:1px solid var(--cfs-bp-green);
  color:#fff;
  background:var(--cfs-bp-green);
}
.cfs-brand-landing>.cfs-bp-trust strong{color:var(--cfs-bp-ink);font-size:16px}
.cfs-brand-landing>.cfs-bp-trust small{color:var(--cfs-bp-body);font-size:13px}

@media(max-width:600px){
  .cfs-brand-landing>.cfs-bp-trust{
    padding:18px 16px;
    gap:14px 12px;
  }
  .cfs-brand-landing>.cfs-bp-trust div{grid-template-columns:38px minmax(0,1fr);gap:10px}
  .cfs-brand-landing>.cfs-bp-trust i{width:38px;height:38px}
  .cfs-brand-landing>.cfs-bp-trust strong{font-size:14px;line-height:1.3}
  .cfs-brand-landing>.cfs-bp-trust small{font-size:12px;line-height:1.35}
}

.cfs-brand-featured-products .cfs-card-variants,.cfs-brand-landing .product-scroller .cfs-card-variants{height:32px;min-height:32px;display:flex;align-items:center;gap:8px;overflow:hidden}
/* Featured brand cards: live popular-range imagery behind a protected brand mark. */
.cfs-brand-card-media{position:relative;height:168px;padding:0;overflow:hidden;isolation:isolate}
.cfs-brand-card-media.has-range-image{background:#d9d6ce}
.cfs-brand-card-media.has-range-image:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(20,24,18,.08),rgba(20,24,18,.22));pointer-events:none}
.cfs-brand-card-media .cfs-brand-card-range-image{position:absolute;z-index:0;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center;filter:none;transform:scale(1.001);transition:transform .35s ease}
.cfs-brand-card-logo-panel{position:relative;z-index:2;width:78%;min-height:78px;padding:15px 18px;border:1px solid rgba(255,255,255,.72);border-radius:3px;display:grid;place-items:center;background:rgba(255,255,255,.92);box-shadow:0 8px 24px rgba(18,22,16,.16);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.cfs-brand-card-media .cfs-brand-card-logo{width:auto;height:auto;max-width:100%;max-height:72px;object-fit:contain;filter:none;transform:none;transition:transform .2s ease}
.cfs-brand-card:hover .cfs-brand-card-range-image{filter:none;transform:scale(1.055)}
.cfs-brand-card:hover .cfs-brand-card-logo{filter:none;transform:scale(1.025)}
.cfs-brand-card:focus-visible{outline:3px solid var(--cfs-bp-green);outline-offset:3px}
@media(max-width:600px){.cfs-brand-card-media{height:150px}.cfs-brand-card-logo-panel{width:82%;min-height:70px;padding:12px 15px}.cfs-brand-card-media .cfs-brand-card-logo{max-height:62px}}
.cfs-brand-featured-products .swatchesThumb,.cfs-brand-landing .product-scroller .swatchesThumb{height:24px;margin:0!important;padding:0!important;display:flex;flex:0 0 auto;align-items:center}
.cfs-brand-featured-products .swatchesThumb ul,.cfs-brand-landing .product-scroller .swatchesThumb ul{height:24px;margin:0!important;padding:0!important;display:flex;align-items:center;gap:5px}
.cfs-brand-featured-products .cfs-card-variant-label,.cfs-brand-landing .product-scroller .cfs-card-variant-label{min-width:0;height:24px;display:flex;align-items:center;overflow:hidden;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
/* Clear feedback and reliable destinations for brand/range filtering and in-page navigation. */
.cfs-brand-page #all-brands,.cfs-brand-landing section[id]{scroll-margin-top:112px}
.cfs-brand-page [data-cfs-brand-count],.cfs-brand-landing [data-cfs-range-count]{border-radius:3px;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease}
.cfs-brand-page.is-filter-feedback [data-cfs-brand-count],.cfs-brand-landing.is-filter-feedback [data-cfs-range-count]{padding:4px 8px;color:#fff;background:#262626;box-shadow:0 0 0 4px rgba(38,38,38,.12)}
.cfs-brand-page.is-filter-feedback .cfs-brand-results,.cfs-brand-landing.is-filter-feedback [data-cfs-range-grid]{animation:cfs-brand-results-feedback .42s ease}
@keyframes cfs-brand-results-feedback{0%{opacity:.55;transform:translateY(4px)}100%{opacity:1;transform:none}}
@media(max-width:767px){.cfs-brand-page #all-brands,.cfs-brand-landing section[id]{scroll-margin-top:76px}}
@media(prefers-reduced-motion:reduce){.cfs-brand-page.is-filter-feedback .cfs-brand-results,.cfs-brand-landing.is-filter-feedback [data-cfs-range-grid]{animation:none}}
/* Room tiles use an explicit foreground because the global brand-link rule inherits page ink. */
.cfs-brand-landing a.cfs-brand-room-tile,.cfs-brand-landing a.cfs-brand-room-tile strong,.cfs-brand-landing a.cfs-brand-room-tile b{color:#fff}
.cfs-brand-landing a.cfs-brand-room-tile b{opacity:.82}
.cfs-brand-landing a.cfs-brand-room-tile:hover b,.cfs-brand-landing a.cfs-brand-room-tile:focus-visible b{opacity:1}
.cfs-brand-landing a.cfs-brand-room-tile:focus-visible{outline:3px solid #c4922a;outline-offset:3px}
/* Balanced brand hero and progressively disclosed full description. */
.cfs-brand-landing-hero{min-height:540px;grid-template-columns:minmax(620px,840px) minmax(0,600px);justify-content:space-between}
.cfs-brand-landing-hero picture{min-width:0}
.cfs-brand-landing-hero img{height:100%;min-height:540px}
.cfs-brand-landing-copy{padding:58px clamp(34px,4vw,68px) 58px clamp(48px,5.2vw,82px)}
.cfs-brand-landing-copy h1{max-width:620px;font-size:clamp(42px,3.35vw,56px);line-height:1.08;text-wrap:balance}
.cfs-brand-hero-description{max-width:640px;margin-top:20px;color:rgba(255,255,255,.9);font-size:16px;line-height:1.55}
.cfs-brand-hero-description.is-collapsible:not(.is-expanded){display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}
.cfs-brand-hero-more{width:max-content;margin:8px 0 0;padding:2px 0;border:0;border-bottom:1px solid rgba(255,255,255,.7);display:inline-flex;align-items:center;gap:7px;color:#fff;background:transparent;font:inherit;font-weight:700;cursor:pointer}
.cfs-brand-hero-more i{font-size:18px;font-style:normal;line-height:1}
.cfs-brand-hero-more:hover,.cfs-brand-hero-more:focus-visible{border-color:#fff}
.cfs-brand-hero-more:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:1023px){.cfs-brand-landing-hero{min-height:0}.cfs-brand-landing-hero img{height:280px;min-height:0}.cfs-brand-landing-copy{padding:34px 24px 40px}.cfs-brand-landing-copy h1{font-size:clamp(34px,7vw,44px)}.cfs-brand-hero-description{max-width:720px}}

/* Mobile banner images must remain complete: brand logos and product silhouettes are content, not decorative crops. */
@media(max-width:600px){
  .cfs-brand-landing-hero picture{width:100%;display:block;background:#fff}
  .cfs-brand-landing-hero img{width:100%;height:auto;max-height:none;min-height:0;display:block;object-fit:contain;object-position:center}

  /* Range-page helpers share this hero node and otherwise force a 210px cover crop. */
  section.cfs-brand-landing > section.range-hero.cfs-brand-landing-hero#overview > picture,
  section.cfs-brand-landing > section.range-hero.cfs-brand-landing-hero#overview > picture > img{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  section.cfs-brand-landing > section.range-hero.cfs-brand-landing-hero#overview > picture > img{
    object-fit:contain!important;
    object-position:center!important;
  }
}

/* Brand banners use the approved wide-image proportion on desktop. */
@media(min-width:1024px){
  section.cfs-brand-landing:not(.cfs-brand-landing--brand-215) > .cfs-brand-landing-hero{
    grid-template-columns:minmax(0,40%) minmax(0,60%)!important;
  }
}

/* Brand landing-page rhythm: isolate compaction from shared range-page geometry. */
@media(min-width:1024px){
  .cfs-brand-landing.cfs-brand-landing--brand>.trust-strip{
    height:auto;
    min-height:0;
    padding:24px max(60px,calc((100vw - 1320px)/2));
  }
  .cfs-brand-landing.cfs-brand-landing--brand .room-section,
  .cfs-brand-landing.cfs-brand-landing--brand .room-section>.section-inner{
    height:auto;
    min-height:0;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .room-section>.section-inner{
    padding:24px 80px;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .range-discovery>.section-inner{
    padding-top:32px;
    padding-bottom:24px;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .bestsellers>.section-inner{
    height:auto!important;
    min-height:0!important;
    padding-top:24px!important;
    padding-bottom:24px!important;
  }
  body.cfs2030-shell main#main-content section.cfs-brand-landing.cfs-brand-landing--brand section.bestsellers#featured-products,
  body.cfs2030-shell main#main-content section.cfs-brand-landing.cfs-brand-landing--brand section.bestsellers#featured-products>.section-inner{
    height:auto!important;
    min-height:0!important;
  }
  body.cfs2030-shell main#main-content section.cfs-brand-landing.cfs-brand-landing--brand section.bestsellers#featured-products>.section-inner{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .brand-story>.section-inner.cfs-brand-story-grid{
    height:auto;
    min-height:0;
    padding:32px 80px;
    gap:40px;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .expert-cta,
  .cfs-brand-landing.cfs-brand-landing--brand .expert-cta>.cfs-bp-inner{
    height:auto;
    min-height:0;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .expert-cta>.cfs-bp-inner{
    padding:24px 80px;
    gap:40px;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .contact-routes>.section-inner{
    padding:24px 80px!important;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .range-enquiry>.section-inner{
    height:auto;
    min-height:0;
    padding:32px 80px;
    gap:40px;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .about-faq,
  .cfs-brand-landing.cfs-brand-landing--brand .about-faq>.section-inner{
    height:auto;
    min-height:0;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .about-faq>.section-inner{
    padding:32px 80px 16px;
    gap:48px;
  }
  body.cfs2030-shell .cfs-footer-discovery details{
    border-top-color:rgba(77,64,58,.1);
  }
  body.cfs2030-shell .cfs-footer-discovery summary{
    min-height:36px;
  }
}

@media(max-width:1023px){
  .cfs-brand-landing.cfs-brand-landing--brand .room-section,
  .cfs-brand-landing.cfs-brand-landing--brand .room-section>.section-inner{
    height:auto;
    min-height:0;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .room-section>.section-inner{
    padding-top:16px!important;
    padding-bottom:16px;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .range-discovery>.section-inner{
    padding-top:16px!important;
  }
  body.cfs2030-shell main#main-content section.cfs-brand-landing.cfs-brand-landing--brand section.range-discovery#ranges>.section-inner{
    padding-top:16px!important;
  }
  .cfs-brand-landing.cfs-brand-landing--brand .range-enquiry>.section-inner{
    gap:24px;
  }
}

/* Range thumbnails share one predictable square crop in every card context. */
.cfs-brand-landing .room-tile{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
.cfs-brand-landing .room-tile>img,
.cfs-brand-landing section.range-discovery#ranges article.range-card>img{
  object-fit:cover!important;
  object-position:center!important;
  aspect-ratio:1/1;
}
.cfs-brand-landing .room-tile>img{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  display:block;
}

/* Match the category-listing card proportions while replacing the native
   horizontal scrollbar with explicit, accessible carousel controls. */
.cfs-brand-product-carousel{
  position:relative;
  padding-inline:48px;
}
.cfs-brand-product-carousel .cfs-brand-featured-products{
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.cfs-brand-product-carousel .cfs-brand-featured-products::-webkit-scrollbar{
  display:none;
}
.cfs-brand-product-carousel .cfs-brand-featured-products>ul{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:16px!important;
}
.cfs-brand-product-carousel .cfs-brand-featured-products>ul>.product{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  flex:0 0 calc((100% - 32px)/3)!important;
  scroll-snap-align:start;
}
.cfs-brand-product-control{
  position:absolute;
  z-index:5;
  top:50%;
  width:40px;
  height:48px;
  padding:0;
  border:1px solid var(--cfs-bp-line);
  border-radius:4px;
  display:grid;
  place-items:center;
  color:var(--cfs-bp-ink);
  background:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 3px 12px rgba(58,71,77,.12);
  transform:translateY(-50%);
}
.cfs-brand-product-control--prev{left:0}
.cfs-brand-product-control--next{right:0}
.cfs-brand-product-control:disabled{
  opacity:.35;
  cursor:default;
  box-shadow:none;
}
.cfs-brand-product-control:not(:disabled):hover,
.cfs-brand-product-control:not(:disabled):focus-visible{
  border-color:var(--cfs-bp-green);
  color:#fff;
  background:var(--cfs-bp-green);
}
.cfs-brand-product-control:focus-visible{
  outline:2px solid var(--cfs-bp-green);
  outline-offset:3px;
}
@media(max-width:1023px){
  .cfs-brand-product-carousel{padding-inline:0}
  .cfs-brand-product-carousel .cfs-brand-featured-products>ul{gap:12px!important}
  .cfs-brand-product-carousel .cfs-brand-featured-products>ul>.product{
    flex-basis:calc((100% - 12px)/2)!important;
  }
  .cfs-brand-product-control{
    top:-44px;
    width:36px;
    height:36px;
    font-size:20px;
    transform:none;
  }
  .cfs-brand-product-control--prev{right:44px;left:auto}
  .cfs-brand-product-control--next{right:0}
}
@media(prefers-reduced-motion:reduce){
  .cfs-brand-product-carousel .cfs-brand-featured-products{scroll-behavior:auto}
}

/* Legacy listing bundles intentionally lock non-PLP cards to 374px. This
   higher-specificity scope releases only the brand bestseller carousel. */
:is(#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout,html) body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .cfs-brand-featured-products.listingPg>ul#product.cfs-plp-product-grid{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  grid-template-columns:none!important;
  justify-content:flex-start!important;
  gap:16px!important;
}
:is(#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout,html) body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .cfs-brand-featured-products.listingPg>ul#product.cfs-plp-product-grid>li.product{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  flex:0 0 calc((100% - 32px)/3)!important;
}
:is(#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout,html) body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .cfs-brand-featured-products.listingPg>ul#product.cfs-plp-product-grid>li.product>.product-card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  flex:1 1 auto!important;
}
:is(#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout,html) body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .product-media,
:is(#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout,html) body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .product-media .image{
  width:100%!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  flex:0 0 auto!important;
  aspect-ratio:1/1;
}
@media(max-width:1023px){
  :is(#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout,html) body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .cfs-brand-featured-products.listingPg>ul#product.cfs-plp-product-grid{
    gap:12px!important;
  }
  :is(#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout#cfs-brand-carousel-layout,html) body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .cfs-brand-featured-products.listingPg>ul#product.cfs-plp-product-grid>li.product{
    flex-basis:calc((100% - 12px)/2)!important;
  }
}

/* Let the enquiry form follow its content instead of retaining the legacy
   fixed minimum height, which left a large empty area below the CTA. */
body.cfs2030-shell .cfs-brand-landing.cfs-brand-landing--brand section.range-enquiry#enquire form[data-cfs-range-enquiry]{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding-bottom:24px;
}

/* Highlight the primary brand-category shortcut. */
body.cfs2030-shell .cfs-brand-landing.cfs-brand-landing--brand .cfs-brand-category-links>a:first-child{
  color:var(--cfs-theme-white,#fff);
  background:var(--cfs-theme-cacao,#4d403a);
  border-color:var(--cfs-theme-cacao,#4d403a);
  -webkit-text-fill-color:var(--cfs-theme-white,#fff);
}


/* Compact card controls in the two-column mobile bestseller carousel. */
@media(max-width:600px){
  :is(#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions,html)
  body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .product-card .card-actions{
    top:8px!important;
    right:8px!important;
    gap:6px!important;
  }
  :is(#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions,html)
  body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .product-card :is(.cfs-wishlist-action,.cfs-compare-action){
    box-sizing:border-box!important;
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    padding:0!important;
    font-size:17px!important;
    line-height:1!important;
  }
  :is(#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions#cfs-brand-card-actions,html)
  body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .product-card :is(.cfs-wishlist-action,.cfs-compare-action) svg{
    width:17px!important;
    height:17px!important;
  }
}


/* Align the mobile bestseller rail with its section heading by removing
   inherited Bootstrap row/column gutters from this carousel only. */
@media(max-width:600px){
  :is(#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge,html)
  body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel,
  :is(#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge,html)
  body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-featured-products{
    margin-inline:0!important;
    padding-inline:0!important;
  }
  :is(#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge,html)
  body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-featured-products>ul#product,
  :is(#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge#cfs-brand-carousel-edge,html)
  body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-featured-products>ul#product>li.product{
    margin-inline:0!important;
    padding-inline:0!important;
  }
}


/* Compact the mobile brand-information/FAQ lead card. */
@media(max-width:600px){
  :is(#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact,html)
  body.cfs2030-shell .cfs-brand-landing section.about-faq#brand-faq>.section-inner{
    height:auto!important;
    min-height:0!important;
    padding:14px 16px 12px!important;
    gap:12px!important;
    overflow:visible!important;
  }
  :is(#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact,html)
  body.cfs2030-shell .cfs-brand-landing section.about-faq#brand-faq aside{
    min-height:0!important;
    padding:16px 18px!important;
  }
  :is(#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact,html)
  body.cfs2030-shell .cfs-brand-landing section.about-faq#brand-faq aside .cfs-bp-eyebrow{
    margin-bottom:8px!important;
  }
  :is(#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact,html)
  body.cfs2030-shell .cfs-brand-landing section.about-faq#brand-faq aside .cfs-bp-intro{
    margin-top:10px!important;
  }
  :is(#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact#cfs-brand-info-compact,html)
  body.cfs2030-shell .cfs-brand-landing section.about-faq#brand-faq aside>a{
    margin-top:14px!important;
  }
}


/* Align the mobile consent control with the first line of its copy. */
@media(max-width:600px){
  :is(#cfs-consent-align#cfs-consent-align#cfs-consent-align#cfs-consent-align#cfs-consent-align,html)
  body.cfs2030-shell .cfs-brand-landing section.range-enquiry#enquire form[data-cfs-range-enquiry] label.consent{
    width:100%!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:15px minmax(0,1fr)!important;
    align-items:start!important;
    column-gap:8px!important;
    row-gap:0!important;
  }
  :is(#cfs-consent-align#cfs-consent-align#cfs-consent-align#cfs-consent-align#cfs-consent-align,html)
  body.cfs2030-shell .cfs-brand-landing section.range-enquiry#enquire form[data-cfs-range-enquiry] label.consent>input[type=checkbox]{
    box-sizing:border-box!important;
    width:15px!important;
    min-width:15px!important;
    height:15px!important;
    min-height:15px!important;
    margin:1px 0 0!important;
    padding:0!important;
    align-self:start!important;
  }
  :is(#cfs-consent-align#cfs-consent-align#cfs-consent-align#cfs-consent-align#cfs-consent-align,html)
  body.cfs2030-shell .cfs-brand-landing section.range-enquiry#enquire form[data-cfs-range-enquiry] label.consent>span{
    min-width:0!important;
    margin:0!important;
    line-height:15px!important;
  }
}

/* Brand and collection heroes share the same desktop content measure. */
@media(min-width:1024px){
  :is(#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand>section.cfs-brand-landing-hero#overview{
    width:min(calc(100% - 32px),1502px);
    max-width:1502px;
    min-height:500px;
    margin-inline:auto;
    grid-template-columns:minmax(0,46%) minmax(0,54%);
  }
  :is(#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand>section.cfs-brand-landing-hero#overview>.cfs-brand-landing-copy{
    min-height:500px;
    padding:56px 48px 56px 0;
  }
  :is(#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand>section.cfs-brand-landing-hero#overview>picture,
  :is(#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid#cfs-brand-hero-grid,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand>section.cfs-brand-landing-hero#overview>picture>img{
    height:500px!important;
    min-height:500px!important;
  }
}

/* Give the range tools a clear one-column mobile layout so the search copy,
   sort label and result count do not compete for a narrow row. */
@media(max-width:600px){
  :is(#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing section.range-discovery#ranges .cfs-bp-section-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    gap:12px!important;
    margin-bottom:18px!important;
  }
  :is(#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing section.range-discovery#ranges [data-cfs-range-count]{
    width:max-content!important;
    max-width:100%!important;
    padding:6px 9px!important;
    border:1px solid var(--cfs-bp-line)!important;
    border-radius:999px!important;
    justify-self:start!important;
    background:#fff!important;
    font-size:11px!important;
    line-height:1.25!important;
  }
  :is(#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing section.range-discovery#ranges .cfs-range-toolbar{
    width:100%!important;
    margin:0 0 12px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }
  :is(#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing section.range-discovery#ranges :is(.cfs-range-search,.cfs-range-sort){
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    height:48px!important;
    min-height:48px!important;
  }
  :is(#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing section.range-discovery#ranges .cfs-range-search input{
    min-width:0!important;
    font-size:14px!important;
  }
  :is(#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools#cfs-brand-mobile-tools,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing section.range-discovery#ranges .cfs-range-filters{
    margin-bottom:18px!important;
    flex-wrap:wrap!important;
    overflow:visible!important;
    row-gap:8px!important;
  }
}

/* The shared product-card bundle fixes cards at 448px on mobile; a few brand
   titles need slightly more room, so release that cap inside this carousel. */
@media(max-width:600px){
  :is(#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing #featured-products .cfs-brand-featured-products>ul#product>li.product,
  :is(#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing #featured-products .cfs-brand-featured-products>ul#product>li.product>.product-card{
    height:auto!important;
    min-height:456px!important;
    max-height:none!important;
  }
  :is(#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height#cfs-brand-card-height,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing #featured-products .cfs-brand-featured-products>ul#product>li.product>.product-card{
    overflow:visible!important;
  }
}

/* Giner Y Colomer: full-width CACAO hero treatment. */
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview {
  width:min(calc(100% - 32px),1502px);
  max-width:1502px;
  margin-inline:auto;
  overflow:hidden;
  color:#faf8f5!important;
  background:#4d403a!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview > .cfs-brand-landing-copy {
  color:#faf8f5!important;
  background:#4d403a!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview :is(.cfs-bp-eyebrow,h1) {
  color:#faf8f5!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .cfs-brand-hero-description {
  color:rgba(250,248,245,.88)!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .hero-attributes {
  color:rgba(250,248,245,.84)!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .hero-attributes > span {
  color:rgba(250,248,245,.62)!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .cfs-brand-hero-more {
  border-color:rgba(250,248,245,.68)!important;
  color:#faf8f5!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .cfs-brand-hero-more:hover {
  border-color:#fff!important;
  color:#fff!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .cfs-brand-hero-more:focus-visible {
  border-color:#fff!important;
  outline:3px solid #fff!important;
  outline-offset:4px;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .hero-actions .primary-button {
  border-color:#faf8f5!important;
  color:#4d403a!important;
  background:#faf8f5!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .hero-actions .primary-button:hover {
  border-color:#fff!important;
  background:#fff!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .hero-actions .secondary-button {
  border-color:rgba(250,248,245,.72)!important;
  color:#faf8f5!important;
  background:transparent!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .hero-actions .secondary-button:hover {
  border-color:#fff!important;
  color:#fff!important;
  background:rgba(255,255,255,.1)!important;
}
.cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .hero-actions :is(.primary-button,.secondary-button):focus-visible {
  outline:3px solid #fff!important;
  outline-offset:4px;
}

@media(min-width:1024px) {
  :is(#cfs-giner-hero-full-width#cfs-giner-hero-full-width#cfs-giner-hero-full-width#cfs-giner-hero-full-width#cfs-giner-hero-full-width,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview {
    width:min(calc(100% - 32px),1502px);
    max-width:1502px;
    margin-inline:auto;
    grid-template-columns:minmax(0,46%) minmax(0,54%)!important;
  }
}

/* Win the approved theme-manager cascade without affecting another brand. */
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview,
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview > .cfs-brand-landing-copy {
  color:#faf8f5!important;
  background:#4d403a!important;
  background-color:#4d403a!important;
  background-image:none!important;
  border-color:#4d403a!important;
  -webkit-text-fill-color:#faf8f5!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview > .cfs-brand-landing-copy :is(.cfs-bp-eyebrow,h1,.cfs-brand-hero-more,.cfs-brand-hero-more span) {
  color:#faf8f5!important;
  -webkit-text-fill-color:#faf8f5!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .cfs-brand-hero-description {
  color:rgba(250,248,245,.88)!important;
  -webkit-text-fill-color:rgba(250,248,245,.88)!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-attributes {
  color:rgba(250,248,245,.84)!important;
  -webkit-text-fill-color:rgba(250,248,245,.84)!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-attributes > span {
  color:rgba(250,248,245,.62)!important;
  -webkit-text-fill-color:rgba(250,248,245,.62)!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .primary-button,
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .primary-button :where(span,strong,b) {
  border-color:#faf8f5!important;
  color:#4d403a!important;
  background:#faf8f5!important;
  -webkit-text-fill-color:#4d403a!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .secondary-button,
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .secondary-button :where(span,strong,b) {
  border-color:rgba(250,248,245,.72)!important;
  color:#faf8f5!important;
  background:transparent!important;
  -webkit-text-fill-color:#faf8f5!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .cfs-brand-hero-more {
  border-color:rgba(250,248,245,.68)!important;
  color:#faf8f5!important;
  background:transparent!important;
  -webkit-text-fill-color:#faf8f5!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .cfs-brand-hero-more:hover {
  border-color:#fff!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .primary-button:hover {
  border-color:#fff!important;
  background:#fff!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .secondary-button:hover {
  border-color:#fff!important;
  color:#fff!important;
  background:rgba(255,255,255,.1)!important;
  -webkit-text-fill-color:#fff!important;
}
:is(#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao#cfs-giner-cacao,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview :is(.cfs-brand-hero-more,.hero-actions .primary-button,.hero-actions .secondary-button):focus-visible {
  border-color:#fff!important;
  outline:3px solid #fff!important;
  outline-offset:4px;
}

/* Collection landing pages use the available viewport without changing shared brand pages. */
.cfs-collection-landing {
  width:100%;
  max-width:none;
}
.cfs-collection-landing > .cfs-bp-breadcrumb,
.cfs-collection-landing .cfs-bp-inner {
  max-width:none;
}

/* Range imagery keeps one consistent square crop across mixed source aspect ratios. */
.cfs-collection-landing section.range-discovery#ranges article.range-card > img {
  display:block;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:1 / 1;
  object-fit:cover!important;
  object-position:center!important;
}

@media(min-width:1024px) {
  .cfs-collection-landing > .cfs-bp-breadcrumb,
  .cfs-collection-landing .cfs-bp-inner {
    padding-inline:0;
  }

  :is(#cfs-collection-full-width#cfs-collection-full-width#cfs-collection-full-width#cfs-collection-full-width#cfs-collection-full-width,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand.cfs-collection-landing > section.cfs-brand-landing-hero#overview {
    width:min(calc(100% - 32px),1502px);
    max-width:1502px;
    margin-inline:auto;
  }
}

@media(min-width:1600px) {
  .cfs-collection-landing .cfs-range-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

/* Giner hero primary CTA needs a light surface against CACAO. */
:is(#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .primary-button {
  border-color:#faf8f5!important;
  color:#4d403a!important;
  background:#faf8f5!important;
  background-color:#faf8f5!important;
  background-image:none!important;
  -webkit-text-fill-color:#4d403a!important;
}
:is(#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .primary-button:hover {
  border-color:#fff!important;
  background:#fff!important;
  background-color:#fff!important;
}
:is(#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary#cfs-giner-primary,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .primary-button:focus-visible {
  border-color:#fff!important;
  outline:3px solid #fff!important;
  outline-offset:4px;
}

/* Distinct interaction feedback for the light primary hero action. */
:is(#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction#cfs-giner-interaction,html)
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand-330 > section.cfs-brand-landing-hero#overview .hero-actions .primary-button:hover {
  border-color:#fff!important;
  background:#fff!important;
  background-color:#fff!important;
  box-shadow:0 0 0 3px rgba(250,248,245,.28)!important;
  transform:translateY(-1px)!important;
}

@media(max-width:600px) {
  .cfs-brand-landing--brand-330 > .cfs-brand-landing-hero#overview .hero-actions .primary-button {
    padding-inline:8px!important;
    font-size:11px!important;
    letter-spacing:0!important;
    white-space:nowrap!important;
  }
}

/* Brand-specific themes retain their artwork while using the shared measure. */
@media(min-width:1024px) {
  :is(#cfs-julian-full-width#cfs-julian-full-width#cfs-julian-full-width#cfs-julian-full-width#cfs-julian-full-width,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand.cfs-brand-landing--brand-29 > section.cfs-brand-landing-hero#overview {
    width:min(calc(100% - 32px),1502px);
    max-width:1502px;
    margin-inline:auto;
  }
}

/* Keep Humz copy on the shared content axis and let its artwork reach the right viewport edge. */
@media(min-width:1024px) {
  :is(#cfs-humz-full-width#cfs-humz-full-width#cfs-humz-full-width#cfs-humz-full-width#cfs-humz-full-width,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand.cfs-brand-landing--brand-215 > section.cfs-brand-landing-hero#overview {
    width:calc(100% - max(16px,calc((100vw - 1502px)/2)));
    max-width:none;
    margin-left:max(16px,calc((100vw - 1502px)/2));
    margin-right:0;
    grid-template-columns:minmax(0,min(600.8px,calc(100% - 500px))) minmax(500px,1fr);
  }
}

/* Asiatic's hero fills the desktop viewport; the following content stays on its normal grid. */
@media(min-width:1024px) {
  :is(#cfs-asiatic-full-width#cfs-asiatic-full-width#cfs-asiatic-full-width#cfs-asiatic-full-width#cfs-asiatic-full-width,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand.cfs-brand-landing--brand-324 > section.cfs-brand-landing-hero#overview {
    width:min(calc(100% - 32px),1502px);
    max-width:1502px;
    margin-inline:auto;
  }
}

/* Keep one focus boundary around collection range search, not an inset ring on its input. */
body.cfs2030-shell main#main-content .cfs-collection-landing #ranges .cfs-range-search input:focus-visible {
  outline:none!important;
}
body.cfs2030-shell main#main-content .cfs-collection-landing #ranges .cfs-range-search:focus-within {
  border-color:#262626!important;
}

/* Continue the hero's warm grey surface to the viewport edges while keeping
   the shared 1502px content and image grid unchanged. */
body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand > section.cfs-brand-landing-hero#overview {
  box-shadow:0 0 0 100vmax #dfdacf;
  clip-path:inset(0 -100vmax);
}

/* Indian Hub's desktop hero spans the viewport; other sections keep their normal grid. */
@media(min-width:1024px) {
  :is(#cfs-indian-hub-full-width#cfs-indian-hub-full-width#cfs-indian-hub-full-width#cfs-indian-hub-full-width#cfs-indian-hub-full-width,html)
  body.cfs2030-shell main#main-content .cfs-brand-landing.cfs-brand-landing--brand.cfs-brand-landing--brand-75 > section.cfs-brand-landing-hero#overview {
    width:min(calc(100% - 32px),1502px);
    max-width:1502px;
    margin-inline:auto;
  }
}

/* Keep collection copy on the shared axis and extend only the hero image to
   the right viewport edge. The 16px floor preserves the standard gutter at
   desktop widths where the 1502px content maximum is not yet reached. */
@media(min-width:1024px) {
  body.cfs2030-shell main#main-content .cfs-collection-landing > section.cfs-brand-landing-hero#overview > picture {
    width:calc(100% + max(16px,calc((100vw - 15px - 1502px)/2)));
    max-width:none;
  }
}

/* Range-card primary navigation: make the expected image and title targets clickable. */
:is(#cfs-range-card-links#cfs-range-card-links#cfs-range-card-links,html) body.cfs2030-shell .cfs-range-card > .cfs-range-card-media {
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  background:transparent!important;
  overflow:hidden;
  text-decoration:none!important;
}
:is(#cfs-range-card-links#cfs-range-card-links#cfs-range-card-links,html) body.cfs2030-shell .cfs-range-card > .cfs-range-card-media > img {
  display:block;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:1 / 1;
  object-fit:cover!important;
  object-position:center!important;
  transition:transform .2s ease;
}
:is(#cfs-range-card-links#cfs-range-card-links#cfs-range-card-links,html) body.cfs2030-shell .cfs-range-card > .cfs-range-card-media:hover > img {
  transform:scale(1.02);
}
:is(#cfs-range-card-links#cfs-range-card-links#cfs-range-card-links,html) body.cfs2030-shell .cfs-range-card h3 > .cfs-range-card-title-link {
  display:inline!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
  background:transparent!important;
  font:inherit;
  line-height:inherit;
  text-decoration:none!important;
}
:is(#cfs-range-card-links#cfs-range-card-links#cfs-range-card-links,html) body.cfs2030-shell .cfs-range-card h3 > .cfs-range-card-title-link:hover {
  text-decoration:underline!important;
  text-underline-offset:3px;
}
:is(#cfs-range-card-links#cfs-range-card-links#cfs-range-card-links,html) body.cfs2030-shell .cfs-range-card > .cfs-range-card-media:focus-visible,
:is(#cfs-range-card-links#cfs-range-card-links#cfs-range-card-links,html) body.cfs2030-shell .cfs-range-card h3 > .cfs-range-card-title-link:focus-visible {
  outline:3px solid #262626!important;
  outline-offset:-3px;
}

/* Keep every range in the DOM for filters, links and crawlers while skipping
   off-screen layout/paint work on long collection and brand pages. */
@supports (content-visibility:auto) {
  body.cfs2030-shell .cfs-range-card {
    content-visibility:auto;
    contain-intrinsic-size:auto 560px;
  }
}

/* Brand landing range CTA: outlined pill, scoped away from product and category cards. */
html body.cfs2030-shell #main-content#main-content#main-content#main-content#main-content#main-content .cfs-brand-landing .cfs-range-card.cfs-range-card > div > a {
  display:inline-flex!important;
  min-height:48px;
  padding:0 24px!important;
  align-items:center;
  justify-content:center;
  border:1px solid var(--cfs-bp-green)!important;
  border-radius:999px!important;
  color:var(--cfs-bp-green)!important;
  -webkit-text-fill-color:currentColor!important;
  background:#fff!important;
  font-size:0!important;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1;
  text-decoration:none!important;
  text-transform:uppercase;
}
html body.cfs2030-shell #main-content#main-content#main-content#main-content#main-content#main-content .cfs-brand-landing .cfs-range-card.cfs-range-card > div > a::before {
  content:"View range"!important;
  font-size:12px;
}
html body.cfs2030-shell #main-content#main-content#main-content#main-content#main-content#main-content .cfs-brand-landing .cfs-range-card.cfs-range-card > div > a:hover {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:var(--cfs-bp-green)!important;
}

/* Brand range cards: keep the navigation CTA compact without affecting other site buttons. */
html body.cfs2030-shell #main-content#main-content#main-content#main-content#main-content#main-content .cfs-brand-landing .cfs-range-card.cfs-range-card > div > a {
  min-height:38px!important;
  padding:0 18px!important;
}
html body.cfs2030-shell #main-content#main-content#main-content#main-content#main-content#main-content .cfs-brand-landing .cfs-range-card.cfs-range-card > div > a::before {
  font-size:11px!important;
}

/* Desktop brand bestseller rail: four compact products in view, without changing category grids. */
@media(min-width:1024px){
  :is(#cfs-brand-bestsellers-four-up#cfs-brand-bestsellers-four-up#cfs-brand-bestsellers-four-up#cfs-brand-bestsellers-four-up#cfs-brand-bestsellers-four-up,html) body.cfs2030-shell .cfs-brand-landing #featured-products .cfs-brand-product-carousel .cfs-brand-featured-products.listingPg>ul#product.cfs-plp-product-grid>li.product{
    flex-basis:calc((100% - 48px)/4)!important;
  }
}

/* Keep the range CTA on the card's natural bottom inset rather than reserving space for its former absolute position. */
html body.cfs2030-shell #main-content#main-content#main-content#main-content#main-content#main-content .cfs-brand-landing .cfs-range-card.cfs-range-card > div {
  padding-bottom:14px!important;
}

/* Form QA: keep brand enquiry fields usable on narrow screens. */
@media(max-width:600px){html body.cfs2030-shell section.cfs-brand-landing section.range-enquiry#enquire form[data-cfs-range-enquiry] .form-grid{grid-template-columns:minmax(0,1fr)!important}.range-enquiry form input,.range-enquiry form select,.range-enquiry form textarea{min-width:0;box-sizing:border-box;font-size:16px}}
