/* Rawiks original visual styling, adapted to plain CSS. Bootstrap loads first. */
* {
  box-sizing:border-box
}
h1,h2,h3,h4,h5,h6,p,ol,ul,dl,dd,figure {
  margin:0
}
h1,h2,h3,h4,h5,h6 {
  font-size:inherit;
  font-weight:inherit
}
ol,ul {
  padding:0;
  list-style:none
}
button {
  background:transparent;
  border:0;
  padding:0
}
a:hover {
  color:inherit
}
svg {
  vertical-align:middle;
  flex-shrink:0
}
fieldset {
  min-width:0
}
button,input,select,textarea {
  line-height:inherit
}
[hidden] {
  display:none!important
}

:root {
  --background:#fff;
  --foreground:#282421;
  --card:#fff;
  --card-foreground:#282421;
  --popover:#fff;
  --popover-foreground:#282421;
  --primary:#722e41;
  --primary-foreground:#fff;
  --secondary:#f7f3ee;
  --secondary-foreground:#282421;
  --muted:#f7f3ee;
  --muted-foreground:#77716b;
  --accent:#f4e9e9;
  --accent-foreground:#722e41;
  --destructive:#a92838;
  --border:#e6e0da;
  --input:#e6e0da;
  --ring:#722e41;
  --radius:.15rem;
  --sidebar:#fff;
  --sidebar-foreground:#282421;
  --sidebar-primary:#722e41;
  --sidebar-primary-foreground:#fff;
  --sidebar-accent:#f4e9e9;
  --sidebar-accent-foreground:#722e41;
  --sidebar-border:#e6e0da;
  --sidebar-ring:#722e41
}

* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:7rem
}
body {
  margin:0;
  background:#fff;
  color:#282421;
  font:15px/1.5 Arial,"Helvetica Neue",Helvetica,sans-serif
}
button,input,textarea,select {
  font:inherit
}
button,a {
  -webkit-tap-highlight-color:transparent
}
button {
  cursor:pointer
}
a {
  color:inherit;
  text-decoration:none
}
img {
  display:block;
  width:100%;
  object-fit:cover
}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible {
  outline:2px solid #722e41;
  outline-offset:4px
}
button:disabled {
  cursor:wait;
  opacity:.65
}
em {
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400
}
h1,h2,h3,p {
  overflow-wrap:break-word
}
.skip-link {
  position:fixed;
  top:-6rem;
  left:1rem;
  background:#fff;
  padding:1rem;
  z-index:100
}
.skip-link:focus {
  top:1rem
}
.muted {
  color:#969089
}
.eyebrow,.small-label {
  font-size:10px;
  font-weight:700;
  letter-spacing:.2em;
  line-height:1.8;
  margin:0 0 18px;
  color:#722e41
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  min-height:49px;
  padding:14px 23px;
  border:1px solid transparent;
  font-size:12px;
  font-weight:600;
  letter-spacing:.025em;
  transition:background .2s,color .2s
}
.button-dark,.button-blue {
  background:#722e41;
  color:#fff
}
.button-dark:hover,.button-blue:hover {
  background:#532032
}
.button-outline {
  background:#fff;
  border-color:#d8cfc6;
  color:#282421
}
.button-outline:hover {
  border-color:#722e41;
  color:#722e41
}
.text-link {
  border:0;
  background:none;
  padding:0;
  font-size:12px;
  text-decoration:underline;
  text-underline-offset:4px
}
.arrow-link {
  display:inline-flex;
  gap:15px;
  align-items:center;
  font-size:12px;
  font-weight:600
}
.arrow-link:hover {
  color:#722e41
}

/* Navigation */
.store-announcement {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:9px 4%;
  background:#722e41;
  color:#fff;
  font-size:9px;
  letter-spacing:.12em
}
.store-announcement>span:nth-child(2) {
  font-size:11px;
  letter-spacing:.16em
}
.store-announcement>a {
  display:flex;
  gap:6px;
  align-items:center
}
.store-header {
  position:sticky;
  top:0;
  z-index:40;
  background:#fff;
  border-bottom:1px solid #eee8e3;
  box-shadow:0 4px 18px #40301c05
}
.header-main {
  max-width:1800px;
  margin:auto;
  padding:22px 4%;
  display:flex;
  align-items:center;
  gap:34px
}
.store-logo {
  font-size:38px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.07em;
  white-space:nowrap
}
.store-logo span {
  color:#722e41
}
.desktop-category-bar {
  display:flex;
  align-items:center;
  gap:22px;
  white-space:nowrap;
  font-size:11px;
  font-weight:700
}
.desktop-category-bar>button {
  display:inline-flex;
  align-items:center;
  gap:4px;
  background:none;
  border:0;
  padding:13px 0;
  position:relative
}
.desktop-category-bar>button:after {
  content:"";
  position:absolute;
  bottom:-23px;
  left:0;
  right:0;
  height:3px;
  background:transparent
}
.desktop-category-bar>button.active:after {
  background:#722e41
}
.desktop-category-bar>button.active,.desktop-category-bar a:hover {
  color:#722e41
}
.search-wrapper {
  flex:1;
  min-width:150px;
  margin-left:auto;
  position:relative
}
.store-search {
  display:flex;
  align-items:center;
  gap:9px;
  background:#f6f4f2;
  padding:11px 13px;
  border:1px solid transparent
}
.store-search:focus-within {
  background:#fff;
  border-color:#d8c1c4
}
.store-search>button {
  background:none;
  border:0;
  padding:0;
  color:#79726b;
  flex-shrink:0
}
.store-search input {
  width:100%;
  min-width:0;
  background:none;
  border:0;
  font-size:11px;
  outline:none;
  height:20px
}
.header-actions {
  display:flex;
  align-items:center;
  gap:22px
}
.header-shortcut {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:5px;
  font-size:9px;
  font-weight:600
}
.header-shortcut>div {
  position:relative
}
.header-shortcut b {
  position:absolute;
  top:-6px;
  right:-9px;
  background:#722e41;
  color:#fff;
  border:2px solid white;
  border-radius:50%;
  font-size:8px;
  line-height:15px;
  min-width:19px;
  text-align:center
}
.header-shortcut:hover {
  color:#722e41
}
.mobile-category-button,.mobile-category-bar {
  display:none
}
.search-suggestions {
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  min-width:280px;
  padding:16px;
  background:#fff;
  box-shadow:0 12px 40px #27201c20;
  border:1px solid #e6e0da;
  z-index:45
}
.search-suggestions .small-label {
  margin-bottom:8px
}
.search-suggestions>a {
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 0;
  border-top:1px solid #f2ede8;
  font-size:12px
}
.search-suggestions>a>img {
  width:34px;
  height:45px
}
.search-suggestions>a>span {
  flex:1
}
.search-suggestions small {
  display:block;
  color:#847a70;
  font-size:10px;
  margin-top:2px
}
.search-suggestions>a>svg {
  margin-left:auto
}
.search-suggestions .all-search-results {
  color:#722e41;
  font-weight:600;
  padding-bottom:0
}

.women-mega-menu {
  position:absolute;
  top:100%;
  left:4%;
  right:4%;
  display:grid;
  grid-template-columns:1fr 180px;
  gap:28px;
  background:#fff;
  padding:30px 34px 0;
  box-shadow:0 16px 30px #2a221814;
  border-top:1px solid #f0e9e2
}
.mega-columns {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:36px
}
.one-department {
  width:530px;
  right:auto
}
.one-department .mega-columns {
  grid-template-columns:1fr
}
.mega-columns a {
  display:block;
  padding:7px 0;
  font-size:12px;
  color:#716a64
}
.mega-columns a:hover {
  color:#722e41
}
.mega-columns .mega-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:#722e41;
  font-size:12px;
  font-weight:700;
  margin-bottom:7px
}
.mega-columns .mega-view-all {
  border-top:1px solid #ece4dc;
  margin-top:10px;
  font-size:10px;
  font-weight:600
}
.mega-feature>img {
  height:190px;
  object-position:center 17%
}
.mega-feature>span {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:9px;
  font-size:11px
}
.mega-bottom {
  grid-column:1/-1;
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:15px 0;
  border-top:1px solid #e6e0da;
  font-size:10px
}
.mega-bottom>a {
  font-weight:600
}
.mega-bottom>span {
  color:#a2988f;
  letter-spacing:.12em
}

/* Campaign */
.home-main {
  max-width:1800px;
  margin:auto
}
.campaign {
  margin:28px 4% 20px;
  display:grid;
  grid-template-columns:54% 46%;
  background:#f4ede3
}
.campaign-copy {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:50px 10% 28px 10%;
  min-height:530px
}
.campaign-copy>.eyebrow {
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:31px
}
.campaign-copy .eyebrow>span {
  width:6px;
  height:6px;
  border-radius:50%;
  background:#722e41
}
.campaign-copy h1 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(48px,5.6vw,89px);
  font-weight:400;
  letter-spacing:-.055em;
  line-height:1.08;
  margin:0;
  color:#3e302a
}
.campaign-copy h1 em {
  color:#722e41
}
.campaign-description {
  font-size:13px;
  line-height:1.8;
  max-width:260px;
  color:#7d6c5e;
  margin:25px 0 25px
}
.campaign-footnote {
  margin-top:auto;
  padding-top:32px;
  display:flex;
  align-items:center;
  gap:20px;
  width:100%;
  font-size:8px;
  letter-spacing:.13em;
  color:#8b7d71
}
.campaign-footnote>span:last-child {
  margin-left:auto
}
.campaign-image {
  position:relative;
  overflow:hidden;
  min-height:530px;
  background:#e6dac6
}
.campaign-image>img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-position:center 20%
}
.campaign-photo-label {
  position:absolute;
  top:24px;
  right:25px;
  color:#fff;
  background:#29201950;
  padding:6px 9px;
  font-size:8px;
  letter-spacing:.16em
}
.campaign-piece {
  position:absolute;
  bottom:22px;
  left:22px;
  right:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:13px 17px;
  background:#fffffff2;
  color:#3e302a;
  font-size:12px
}
.campaign-piece>span {
  display:flex;
  flex-direction:column;
  gap:3px
}
.campaign-piece small {
  font-size:8px;
  letter-spacing:.12em;
  color:#928170
}
.campaign-controls {
  grid-column:1/-1;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 0 0
}
.campaign-dots {
  display:flex;
  align-items:center;
  gap:7px
}
.campaign-dots>button {
  width:7px;
  height:7px;
  border-radius:50%;
  background:#dcd4cc;
  border:0;
  padding:0;
  position:relative
}
.campaign-dots>button:before {
  content:"";
  position:absolute;
  inset:-7px
}
.campaign-dots>button.active {
  width:22px;
  background:#722e41;
  border-radius:6px
}
.campaign-controls>div:last-child {
  display:flex;
  align-items:center;
  gap:15px;
  font-size:10px
}
.campaign-controls button:not(.campaign-dots>button) {
  background:none;
  border:0;
  padding:0;
  display:flex
}
.campaign-controls .muted {
  margin-left:5px
}
.campaign-western {
  background:#e9edf4
}
.campaign-western .campaign-copy h1 {
  color:#203756
}
.campaign-western .campaign-copy h1 em {
  color:#305587
}
.campaign-everyday {
  background:#eee9e3
}
.style-ribbon {
  display:flex;
  justify-content:space-between;
  gap:28px;
  padding:18px 4%;
  border-top:1px solid #e6e0da;
  border-bottom:1px solid #e6e0da;
  white-space:nowrap;
  overflow:hidden;
  font-size:9px;
  letter-spacing:.14em;
  color:#76685b
}
.style-ribbon>span:nth-child(even) {
  color:#a7816a;
  font-size:13px
}

/* Home collections */
.home-section {
  padding:63px 4% 15px
}
.home-section-heading {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;
  margin-bottom:28px
}
.home-section-heading .eyebrow {
  margin-bottom:12px
}
.home-section h2 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(28px,3vw,45px);
  font-weight:400;
  letter-spacing:-.025em;
  line-height:1.2;
  margin:0
}
.home-section h2 em {
  color:#8e655d
}
.home-section-heading>.arrow-link {
  margin-bottom:6px;
  white-space:nowrap
}
.category-edit-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px
}
.category-edit {
  min-width:0
}
.category-edit-image {
  position:relative;
  overflow:hidden;
  background:#f1ece6
}
.category-edit-image>img {
  aspect-ratio:3/4;
  object-position:center 17%;
  transition:transform .35s
}
.category-edit:hover .category-edit-image>img {
  transform:scale(1.03)
}
.category-edit-image>span {
  position:absolute;
  left:13px;
  top:13px;
  font-size:8px;
  letter-spacing:.12em;
  background:#ffffffe6;
  padding:5px 7px
}
.category-edit-copy {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-top:17px;
  gap:10px
}
.category-edit-copy h3 {
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  font-size:23px;
  margin:0;
  letter-spacing:-.02em
}
.category-edit-copy p {
  font-size:10px;
  color:#8d8177;
  margin:5px 0 0
}
.category-edit-copy>svg {
  color:#856556;
  flex-shrink:0
}
.bottom-art {
  aspect-ratio:3/4;
  background:#eae1d3;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:12%;
  overflow:hidden
}
.bottom-art>span {
  font-size:9px;
  letter-spacing:.18em;
  color:#8c705d;
  margin-bottom:25px
}
.bottom-words {
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(23px,2.65vw,42px);
  line-height:1.18;
  color:#614b3e;
  letter-spacing:-.04em;
  z-index:1
}
.bottom-words em {
  color:#9b7563
}
.bottom-art>svg {
  position:absolute;
  right:16px;
  top:28px;
  color:#b9a594;
  transform:rotate(9deg)
}
.bottom-art>small {
  font-size:7px;
  letter-spacing:.13em;
  color:#816a59;
  margin-top:30px
}
.category-quick-links {
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  padding:24px 0 0;
  font-size:10px
}
.category-quick-links>span {
  color:#9c8d80;
  font-size:9px;
  letter-spacing:.08em
}
.category-quick-links a {
  display:flex;
  align-items:center;
  gap:7px
}
.category-quick-links a:hover {
  color:#722e41
}
.collection-section {
  padding-top:68px
}
.collection-tab-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid #e6e0da;
  margin-bottom:25px
}
.collection-tabs {
  display:flex;
  gap:28px
}
.collection-tabs>button {
  background:none;
  border:0;
  border-bottom:2px solid transparent;
  padding:0 0 13px;
  font-size:11px;
  color:#8c8075
}
.collection-tabs>button.active {
  color:#722e41;
  border-bottom-color:#722e41;
  font-weight:600
}
.collection-tab-row>span {
  font-size:10px;
  color:#9b8b7e;
  padding-bottom:13px
}
.shopping-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:28px 20px
}
.home-product-grid {
  grid-template-columns:repeat(6,minmax(0,1fr))
}
.shop-product {
  min-width:0;
  background:#fff
}
.product-photo-wrapper {
  position:relative
}
.shop-product-photo {
  display:block;
  overflow:hidden;
  position:relative;
  background:#f3efeb
}
.shop-product-photo>img {
  aspect-ratio:3/4;
  object-position:center 24%;
  transition:transform .3s
}
.shop-product:hover .shop-product-photo>img {
  transform:scale(1.025)
}
.product-category-tag {
  position:absolute;
  bottom:10px;
  left:10px;
  font-size:8px;
  letter-spacing:.04em;
  background:#fffffff0;
  padding:4px 7px
}
.wishlist-button {
  position:absolute;
  top:10px;
  right:10px;
  background:#fffffff0;
  border:0;
  width:32px;
  height:32px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#5e5146;
  z-index:2
}
.wishlist-button.saved {
  color:#722e41
}
.quick-bag {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  position:absolute;
  left:9px;
  right:9px;
  bottom:9px;
  background:#fffffff5;
  border:1px solid #ded5cb;
  padding:9px 5px;
  font-size:9px;
  opacity:0;
  transform:translateY(5px);
  transition:opacity .2s,transform .2s;
  z-index:2
}
.product-photo-wrapper:hover .quick-bag,.product-photo-wrapper:focus-within .quick-bag {
  opacity:1;
  transform:translateY(0)
}
.product-photo-wrapper:hover .product-category-tag,.product-photo-wrapper:focus-within .product-category-tag {
  opacity:0
}
.shop-product-copy {
  padding:14px 0 0
}
.product-brand {
  font-size:9px;
  font-weight:700;
  letter-spacing:.15em;
  color:#722e41;
  margin:0 0 5px
}
.shop-product h3 {
  font-size:11px;
  font-weight:400;
  line-height:1.6;
  margin:0;
  min-height:35px
}
.product-color {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:10px;
  color:#9b8d81;
  margin:7px 0
}
.color-dot {
  height:8px;
  width:8px;
  display:inline-block;
  border-radius:50%;
  border:1px solid #d0c5ba;
  flex-shrink:0
}
.color-black {
  background:#242424
}
.color-royal-blue {
  background:#2542df
}
.color-sky-blue {
  background:#8fcce7
}
.product-enquire {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:10px;
  color:#722e41;
  margin-top:10px
}
.product-enquire:hover {
  text-decoration:underline;
  text-underline-offset:4px
}
.editorial-pair {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  padding:63px 4% 0
}
.editorial-banner {
  display:grid;
  grid-template-columns:52% 48%;
  min-height:350px;
  overflow:hidden
}
.editorial-banner>div {
  padding:39px 0 35px 13%;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  z-index:1
}
.editorial-banner h2 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(26px,3vw,44px);
  font-weight:400;
  line-height:1.14;
  letter-spacing:-.035em;
  margin:0 0 38px
}
.editorial-banner>img {
  height:100%;
  object-position:center 13%;
  min-height:0;
  max-height:400px
}
.editorial-banner .arrow-link {
  font-size:10px;
  gap:13px;
  margin-top:auto
}
.editorial-banner .eyebrow {
  font-size:8px;
  letter-spacing:.12em;
  margin-bottom:25px
}
.blue-edit {
  background:#e8ecf0;
  color:#203b68
}
.blue-edit .eyebrow {
  color:#526788
}
.neutral-edit {
  background:#ede8e3;
  color:#564333
}
.neutral-edit .eyebrow {
  color:#8d715d
}
.brand-story {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12%;
  align-items:center;
  padding-top:65px;
  padding-bottom:60px
}
.brand-story>div:last-child>p {
  font-size:13px;
  line-height:1.9;
  max-width:420px;
  color:#88766a;
  margin:0 0 23px
}
.shopping-help {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding:28px 4%;
  background:#f7f4ef;
  border-top:1px solid #e6e0da;
  border-bottom:1px solid #e6e0da;
  gap:30px
}
.shopping-help>div,.shopping-help>a {
  display:flex;
  align-items:center;
  gap:16px;
  color:#836457
}
.shopping-help strong {
  font-size:11px;
  font-weight:600;
  display:block;
  color:#3e302a
}
.shopping-help small {
  display:block;
  font-size:9px;
  color:#928171;
  margin-top:5px
}
.shopping-help>a>svg:last-child {
  margin-left:auto
}

/* Catalog */
.store-main {
  max-width:1800px;
  margin:auto;
  padding:28px 4% 64px;
  min-height:60vh
}
.breadcrumbs ol {
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  font-size:10px;
  color:#93867a;
  line-height:1.7
}
.breadcrumbs li+li:before {
  content:"/";
  margin-right:8px;
  color:#c5b8ab
}
.breadcrumbs a:hover {
  color:#722e41
}
.breadcrumbs [aria-current] {
  color:#443b35
}
.catalog-title-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin:24px 0 30px
}
.catalog-title-row h1 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:34px;
  font-weight:400;
  letter-spacing:-.03em;
  line-height:1.25;
  margin:0
}
.catalog-title-row p:not(.eyebrow) {
  font-size:12px;
  color:#928171;
  margin:10px 0 0;
  line-height:1.7
}
.browse-categories-link {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px;
  font-weight:600;
  white-space:nowrap;
  color:#722e41
}
.subcategory-links {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:26px
}
.subcategory-links a {
  font-size:10px;
  background:#f7f4ef;
  border:1px solid #e6e0da;
  padding:10px 15px
}
.subcategory-links a:hover {
  border-color:#722e41;
  color:#722e41
}
.matching-categories h2 {
  font-size:13px;
  font-weight:600;
  margin:0 0 12px
}
.catalog-layout {
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:30px;
  align-items:start
}
.filter-sidebar {
  min-width:0;
  border-right:1px solid #e6e0da;
  padding-right:25px
}
.filter-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:10px 0 18px;
  border-bottom:1px solid #e6e0da;
  gap:10px
}
.filter-heading h2 {
  font-size:12px;
  letter-spacing:.04em;
  font-weight:700;
  margin:0
}
.filter-heading button {
  border:0;
  background:none;
  color:#722e41;
  font-size:10px;
  padding:0
}
.filter-section {
  padding:21px 0;
  border-bottom:1px solid #e6e0da
}
.filter-section:last-child {
  border-bottom:0
}
.filter-section h3 {
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin:0 0 14px
}
.all-women-link {
  font-size:11px;
  color:#722e41;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:5px 0 8px
}
.category-accordion [data-slot="accordion-trigger"] {
  font-size:11px;
  font-weight:600;
  padding:12px 0;
  border-radius:0
}
.category-accordion [data-slot="accordion-content"] a {
  display:block;
  font-size:11px;
  color:#84786c;
  padding:6px 0 6px 10px;
  border-left:1px solid #e6e0da
}
.category-accordion [data-slot="accordion-content"] a:hover {
  color:#722e41;
  background:#f7f3ee
}
.category-accordion [data-slot="accordion-content"] a.category-all-link {
  font-weight:600;
  color:#722e41
}
.checkbox-filter {
  display:flex;
  align-items:center;
  gap:9px;
  padding:7px 0;
  font-size:11px;
  cursor:pointer
}
.filter-count {
  margin-left:auto;
  color:#a39587;
  font-size:9px
}
.catalog-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  border-bottom:1px solid #e6e0da;
  padding:0 0 18px;
  margin-bottom:24px
}
.catalog-toolbar p {
  font-size:11px;
  margin:0;
  color:#93867a
}
.catalog-toolbar strong {
  color:#443b35
}
.sort-select[data-slot="select-trigger"] {
  height:38px;
  font-size:11px;
  border-radius:0;
  min-width:190px;
  box-shadow:none
}
.sort-select>span:first-child {
  color:#96877a
}
.mobile-filter-button {
  display:none
}
.active-filters {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:-5px 0 20px
}
.active-filters button {
  display:flex;
  align-items:center;
  gap:9px;
  font-size:10px;
  padding:6px 9px;
  border:1px solid #e0cfc7;
  background:#faf6f2
}
.catalog-empty[data-slot="empty"] {
  min-height:350px;
  border:1px solid #e6e0da;
  border-radius:0;
  background:#faf8f5
}
.catalog-empty [data-slot="empty-title"] {
  font-family:Georgia,"Times New Roman",serif;
  font-size:24px;
  font-weight:400
}
.catalog-empty [data-slot="empty-description"] {
  font-size:12px;
  line-height:1.8
}
.category-sheet[data-slot="sheet-content"],.filter-sheet[data-slot="sheet-content"] {
  padding:25px;
  width:min(360px,90vw);
  max-width:90vw;
  overflow-y:auto;
  gap:20px
}
.category-sheet [data-slot="sheet-title"],.filter-sheet [data-slot="sheet-title"] {
  font-size:23px;
  line-height:1.4;
  padding-right:25px
}
.category-sheet [data-slot="sheet-description"],.filter-sheet [data-slot="sheet-description"] {
  font-size:12px
}
.filter-sheet .filter-heading,.filter-sheet .filter-section {
  padding:16px 0
}
.mobile-filter-content {
  flex:1;
  overflow-y:auto
}
.filter-apply {
  position:sticky;
  bottom:0;
  flex-shrink:0
}
.category-sheet .category-accordion [data-slot="accordion-trigger"] {
  font-size:14px
}
.category-sheet .category-accordion [data-slot="accordion-content"] a {
  font-size:13px;
  padding:10px
}
.department-cards {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  margin-bottom:30px
}
.department-card {
  display:flex;
  background:#f3ece3;
  overflow:hidden
}
.department-card>div:first-child {
  width:65%;
  padding:22px
}
.department-card img {
  width:35%;
  object-position:center 15%
}
.department-label {
  font-size:8px;
  letter-spacing:.1em;
  color:#8e7764
}
.department-card h2 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:24px;
  font-weight:400;
  margin:10px 0
}
.department-card p {
  font-size:11px;
  line-height:1.7;
  color:#8e7764
}
.department-action {
  font-size:10px;
  color:#722e41;
  text-decoration:underline;
  text-underline-offset:4px
}
.bottom-category-label {
  padding:20px;
  align-self:center;
  font-size:9px;
  line-height:2;
  color:#907962
}
.directory-root {
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:25px;
  background:#722e41;
  color:white;
  font-size:22px;
  font-family:Georgia,"Times New Roman",serif;
  margin-bottom:24px
}
.directory-root span {
  font-size:11px;
  align-self:center;
  font-family:Arial,sans-serif
}
.directory-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px
}
.directory-grid>section {
  border:1px solid #e6e0da;
  padding:27px
}
.directory-grid h2 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:27px;
  font-weight:400;
  color:#722e41;
  margin:0 0 10px
}
.directory-grid p {
  font-size:11px;
  color:#928171;
  min-height:40px;
  margin:0 0 15px
}
.directory-grid section>div>a {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  border-top:1px solid #eee7df;
  padding:16px 0;
  font-size:12px
}
.directory-grid section>div>a:hover {
  color:#722e41
}
.directory-browse {
  font-size:9px;
  color:#a28d7a
}

/* Product, wishlist and enquiry bag */
.product-detail-layout {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7%;
  margin:28px 0 45px;
  max-width:1300px
}
.detail-main-photo {
  position:relative
}
.main-product-image {
  aspect-ratio:3/4;
  object-position:center 25%;
  background:#f5f0eb;
  max-height:740px
}
.product-thumbnails {
  display:flex;
  gap:12px;
  margin-top:16px
}
.product-thumbnails button {
  border:1px solid #d8cfc6;
  background:none;
  padding:3px;
  width:70px
}
.product-thumbnails button.active {
  border:2px solid #722e41
}
.product-thumbnails img {
  height:86px
}
.product-detail-copy {
  padding:24px 0
}
.product-detail-copy h1 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:38px;
  font-weight:400;
  letter-spacing:-.025em;
  line-height:1.2;
  margin:12px 0
}
.detail-category {
  color:#9a8878;
  font-size:12px
}
.detail-color {
  display:flex;
  align-items:center;
  gap:14px;
  font-size:12px;
  padding:22px 0;
  border-top:1px solid #e6e0da;
  margin-top:28px
}
.detail-color>span:first-child {
  color:#928171
}
.detail-color>.color-dot {
  width:13px;
  height:13px
}
.detail-color strong {
  font-weight:400
}
.detail-shopping-actions {
  display:flex;
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
  margin-bottom:24px
}
.availability-panel {
  background:#f7f3ee;
  padding:25px;
  margin:20px 0 28px
}
.availability-panel h2,.product-description h2 {
  font-size:12px;
  font-weight:600;
  margin:0 0 10px
}
.availability-panel p,.product-description p {
  font-size:12px;
  color:#88776a;
  line-height:1.9;
  margin:8px 0 20px
}
.availability-panel .button {
  font-size:11px;
  padding:12px 16px;
  min-height:43px
}
.availability-panel small {
  display:block;
  font-size:9px;
  color:#a08f7e;
  line-height:1.7;
  margin-top:13px
}
.product-description {
  border-top:1px solid #e6e0da;
  padding:25px 0 10px
}
.product-detail-line {
  font-size:10px!important
}
.related-products>h2 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:30px;
  font-weight:400;
  margin:0 0 28px
}
.saved-count {
  font-size:12px;
  color:#928171;
  white-space:nowrap
}
.saved-collection {
  min-height:70vh
}
.saved-empty {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  background:#faf8f5;
  padding:70px 20px;
  border:1px solid #eee7df;
  margin:40px 0
}
.saved-empty>svg {
  color:#9b7667;
  margin-bottom:22px
}
.saved-empty h2 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:31px;
  font-weight:400;
  letter-spacing:-.025em;
  margin:0
}
.saved-empty p {
  font-size:12px;
  color:#a08b78;
  margin:16px 0 28px;
  max-width:330px;
  line-height:1.8
}
.saved-device-note {
  font-size:10px;
  color:#9a8878;
  text-align:center;
  margin-top:35px
}
.saved-loading {
  padding:70px;
  text-align:center;
  font-size:12px;
  color:#9a8878
}
.shopping-notice {
  position:fixed;
  bottom:25px;
  left:50%;
  transform:translate(-50%,15px);
  display:flex;
  align-items:center;
  gap:11px;
  padding:14px 20px;
  background:#382b24;
  color:#fff;
  font-size:11px;
  box-shadow:0 8px 25px #0002;
  z-index:60;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s,transform .2s;
  max-width:calc(100vw - 30px);
  white-space:nowrap
}
.shopping-notice.visible {
  opacity:1;
  transform:translate(-50%,0);
  pointer-events:auto
}
.shopping-notice button {
  border:0;
  background:none;
  color:#fff;
  padding:0 0 0 10px
}
.bag-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:40px
}
.bag-item {
  display:flex;
  position:relative;
  align-items:flex-start;
  gap:24px;
  border:1px solid #e6e0da;
  padding:18px;
  margin-bottom:18px
}
.bag-item>a {
  width:110px;
  flex-shrink:0
}
.bag-item>a>img {
  aspect-ratio:3/4;
  object-position:center 20%
}
.bag-item>div {
  padding:8px 25px 0 0
}
.bag-item h2 {
  font-size:14px;
  font-weight:400;
  margin:7px 0
}
.bag-item>div>p:not(.product-brand) {
  font-size:11px;
  color:#9a8878;
  margin:8px 0
}
.bag-availability {
  font-size:9px;
  color:#9a8878;
  display:block;
  margin:10px 0 18px
}
.bag-item .text-link {
  font-size:10px;
  color:#722e41
}
.bag-remove {
  position:absolute;
  right:15px;
  top:15px;
  border:0;
  background:none;
  color:#a69585;
  padding:4px
}
.bag-summary {
  background:#f7f3ee;
  padding:28px;
  height:fit-content;
  position:sticky;
  top:120px
}
.bag-summary .eyebrow {
  font-size:8px
}
.bag-summary h2 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:29px;
  font-weight:400;
  margin:0 0 22px
}
.bag-summary>div {
  display:flex;
  justify-content:space-between;
  border-top:1px solid #ded3c9;
  border-bottom:1px solid #ded3c9;
  padding:18px 0;
  font-size:11px
}
.bag-summary>p:not(.eyebrow) {
  font-size:11px;
  line-height:1.9;
  color:#928171;
  margin:23px 0
}
.bag-summary>.button {
  width:100%;
  font-size:10px;
  gap:10px;
  padding:14px
}
.bag-summary>small {
  display:block;
  font-size:9px;
  line-height:1.7;
  color:#a69585;
  margin:13px 0 22px
}
.bag-summary>.text-link {
  display:block;
  text-align:center;
  font-size:10px
}

/* Contact and brand pages */
.contact-page {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10%;
  padding-top:56px;
  max-width:1300px
}
.contact-page h1,.about-page h1 {
  font-family:Georgia,"Times New Roman",serif;
  font-size:53px;
  font-weight:400;
  letter-spacing:-.035em;
  line-height:1.1;
  margin:20px 0
}
.contact-page h1 em {
  color:#8e655d
}
.contact-page>div:first-child>p:not(.small-label),.about-page p:not(.small-label) {
  font-size:13px;
  line-height:1.9;
  color:#928171;
  max-width:390px
}
.contact-how {
  display:flex;
  gap:18px;
  margin:25px 0
}
.contact-how>span {
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
  color:#bca38d
}
.contact-how h2 {
  font-size:12px;
  font-weight:600;
  margin:0 0 5px
}
.contact-how p {
  font-size:11px;
  color:#928171;
  margin:0;
  line-height:1.8
}
.contact-page .arrow-link {
  margin-top:15px
}
.enquiry-form {
  padding:28px;
  background:#faf8f5;
  border:1px solid #e6e0da
}
.enquiry-form label {
  display:block;
  font-size:11px;
  font-weight:600;
  margin-bottom:20px
}
.enquiry-form input,.enquiry-form textarea {
  display:block;
  width:100%;
  margin-top:8px;
  border:1px solid #ded5cb;
  background:#fff;
  padding:12px;
  font-size:12px;
  font-weight:400;
  border-radius:0;
  min-width:0
}
.enquiry-form textarea {
  resize:vertical;
  line-height:1.8
}
.enquiry-form input:focus,.enquiry-form textarea:focus {
  border-color:#722e41
}
.form-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px
}
.optional {
  font-weight:400;
  color:#9c8c7e
}
.privacy-note {
  font-size:9px;
  color:#9a8878;
  line-height:1.7;
  margin:0 0 18px
}
.submit-button {
  width:100%
}
.chosen-product {
  display:flex;
  align-items:center;
  gap:13px;
  border-bottom:1px solid #e6e0da;
  padding-bottom:22px;
  margin-bottom:22px
}
.chosen-product>img {
  width:48px;
  height:64px;
  object-position:center 20%
}
.chosen-product>div {
  flex:1;
  font-size:11px
}
.chosen-product span {
  display:block;
  font-size:9px;
  color:#a08f7e;
  margin-bottom:4px
}
.chosen-product strong {
  font-weight:500
}
.chosen-product button {
  background:none;
  border:0;
  padding:5px;
  color:#9c8c7e
}
.form-feedback {
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:11px;
  line-height:1.8;
  margin-top:20px;
  padding:12px;
  border:1px solid
}
.form-feedback.success {
  background:#f0f5ee;
  border-color:#c9d8c2;
  color:#38502d
}
.form-feedback.error {
  background:#fff0f0;
  border-color:#e9c5c5;
  color:#9c2730
}
.form-feedback svg {
  flex-shrink:0;
  margin-top:3px
}
.about-page {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10%;
  align-items:center;
  padding-top:45px
}
.about-page>img {
  max-height:650px;
  object-position:center 18%
}
.about-page .button {
  margin-top:25px
}

/* Footer */
.store-footer {
  background:#faf8f5;
  padding:56px 4% 22px
}
.footer-grid {
  max-width:1650px;
  margin:0 auto 40px;
  display:grid;
  grid-template-columns:1.6fr repeat(4,1fr);
  gap:35px
}
.footer-grid .store-logo {
  font-size:45px
}
.footer-grid h2 {
  font-size:10px;
  font-weight:600;
  margin:0 0 16px;
  color:#685447
}
.footer-grid a:not(.store-logo) {
  display:block;
  color:#968474;
  font-size:10px;
  padding:5px 0
}
.footer-grid a:hover {
  color:#722e41
}
.footer-grid p {
  font-size:11px;
  line-height:1.9;
  color:#968474;
  max-width:220px;
  margin:20px 0
}
.footer-grid .footer-brand-link {
  display:flex!important;
  align-items:center;
  gap:10px;
  color:#722e41!important
}
.footer-bottom {
  max-width:1650px;
  margin:auto;
  border-top:1px solid #e6e0da;
  padding-top:21px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  font-size:9px;
  color:#a08d7c
}
.footer-bottom>span:last-child {
  letter-spacing:.12em
}

/* Responsive layouts */
@media(min-width:1800px) {
  .campaign-copy {
    min-height:640px
  }
  .campaign-image {
    min-height:640px
  }
  
}

@media(max-width:1250px) {
  .header-main {
    gap:24px
  }
  .desktop-category-bar {
    gap:15px;
    font-size:10px
  }
  .header-actions {
    gap:17px
  }
  .store-search input {
    font-size:10px
  }
  .contact-shortcut {
    display:none
  }
  .campaign-copy {
    padding:42px 9% 25px;
    min-height:490px
  }
  .campaign-image {
    min-height:490px
  }
  .home-product-grid {
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .category-edit-grid {
    gap:15px
  }
  .category-edit-copy h3 {
    font-size:21px
  }
  .category-edit-copy p {
    font-size:9px
  }
  .catalog-layout {
    grid-template-columns:180px minmax(0,1fr);
    gap:25px
  }
  .catalog-results .shopping-grid {
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .shopping-grid {
    gap:26px 18px
  }
  .editorial-banner {
    min-height:320px
  }
  .editorial-banner>div {
    padding:32px 0 30px 12%
  }
  .footer-grid {
    gap:25px
  }
  .shopping-help {
    gap:18px
  }
  
}

@media(max-width:1000px) {
  .header-main {
    gap:24px;
    flex-wrap:wrap;
    padding:18px 4%
  }
  .desktop-category-bar {
    order:5;
    width:100%;
    justify-content:center;
    gap:32px;
    border-top:1px solid #eee8e3;
    padding-top:6px
  }
  .desktop-category-bar>button {
    padding:8px 0;
    font-size:11px
  }
  .desktop-category-bar>button:after {
    bottom:-19px
  }
  .header-actions {
    gap:24px
  }
  .search-wrapper {
    max-width:440px
  }
  .women-mega-menu {
    left:4%;
    right:4%;
    width:auto
  }
  .campaign-copy h1 {
    font-size:58px
  }
  .campaign-copy {
    min-height:460px;
    padding:40px 9% 22px
  }
  .campaign-image {
    min-height:460px
  }
  .campaign-footnote {
    font-size:7px;
    gap:10px
  }
  .home-section h2 {
    font-size:32px
  }
  .category-edit-copy h3 {
    font-size:19px
  }
  .category-edit-copy p {
    font-size:9px
  }
  .category-edit-copy>svg {
    width:18px
  }
  .bottom-art {
    padding:12%
  }
  .bottom-words {
    font-size:30px
  }
  .bottom-art>small {
    font-size:6px
  }
  .editorial-banner h2 {
    font-size:31px
  }
  .editorial-banner .eyebrow {
    font-size:6px
  }
  .shopping-help>div,.shopping-help>a {
    gap:10px
  }
  .shopping-help small {
    font-size:8px
  }
  .shopping-help strong {
    font-size:10px
  }
  .shopping-help>div>svg,.shopping-help>a>svg {
    width:22px
  }
  .bag-layout {
    grid-template-columns:1fr 290px;
    gap:25px
  }
  .bag-summary {
    padding:22px
  }
  .product-detail-copy h1 {
    font-size:32px
  }
  .contact-page {
    gap:6%
  }
  .footer-grid {
    grid-template-columns:1.4fr repeat(3,1fr)
  }
  .footer-grid>div:last-child {
    grid-column:2/-1;
    display:flex;
    gap:22px;
    align-items:center;
    flex-wrap:wrap
  }
  .footer-grid>div:last-child h2 {
    margin:0
  }
  
}

@media(max-width:760px) {
  .store-announcement {
    justify-content:center;
    padding:8px 4%
  }
  .store-announcement>span:first-child,.store-announcement>a {
    display:none
  }
  .store-announcement>span:nth-child(2) {
    font-size:10px
  }
  .header-main {
    gap:16px;
    padding:14px 5%
  }
  .store-logo {
    font-size:33px
  }
  .mobile-category-button {
    display:block;
    background:none;
    border:0;
    padding:3px
  }
  .desktop-category-bar {
    display:none
  }
  .header-actions {
    margin-left:auto;
    gap:19px
  }
  .header-shortcut {
    font-size:8px
  }
  .header-shortcut>span {
    display:none
  }
  .header-shortcut svg {
    width:21px;
    height:21px
  }
  .search-wrapper {
    order:5;
    flex-basis:100%;
    max-width:none;
    margin:0
  }
  .store-search {
    padding:9px 12px
  }
  .store-search input {
    font-size:11px
  }
  .search-suggestions {
    min-width:0
  }
  .women-mega-menu {
    display:none
  }
  .mobile-category-bar {
    display:flex;
    gap:22px;
    overflow-x:auto;
    white-space:nowrap;
    padding:10px 5%;
    border-top:1px solid #eee8e3;
    scrollbar-width:none;
    font-size:10px
  }
  .mobile-category-bar>a {
    padding:2px 0
  }
  .campaign {
    margin:20px 5% 18px;
    grid-template-columns:51% 49%
  }
  .campaign-copy {
    padding:28px 10% 20px;
    min-height:365px
  }
  .campaign-image {
    min-height:365px
  }
  .campaign-copy>.eyebrow {
    font-size:7px;
    letter-spacing:.11em;
    gap:6px;
    margin-bottom:25px
  }
  .campaign-copy .eyebrow>span {
    width:4px;
    height:4px
  }
  .campaign-copy h1 {
    font-size:42px;
    letter-spacing:-.04em
  }
  .campaign-description {
    font-size:10px;
    line-height:1.8;
    max-width:210px;
    margin:18px 0 20px
  }
  .campaign-copy>.button {
    padding:11px 13px;
    font-size:9px;
    gap:12px;
    min-height:39px
  }
  .campaign-copy>.button svg {
    width:15px
  }
  .campaign-footnote {
    font-size:6px;
    padding-top:25px;
    line-height:1.8
  }
  .campaign-footnote>span:last-child {
    display:none
  }
  .campaign-piece {
    bottom:12px;
    left:12px;
    right:12px;
    padding:10px;
    font-size:9px;
    gap:10px
  }
  .campaign-piece small {
    font-size:6px
  }
  .campaign-piece>svg {
    width:16px;
    flex-shrink:0
  }
  .campaign-photo-label {
    top:15px;
    right:15px;
    font-size:6px;
    padding:4px 6px
  }
  .campaign-controls {
    padding-top:12px
  }
  .style-ribbon {
    gap:24px;
    padding:15px 5%;
    font-size:8px;
    justify-content:flex-start
  }
  .style-ribbon>span:nth-child(even) {
    font-size:10px
  }
  .home-section {
    padding:43px 5% 5px
  }
  .home-section-heading {
    gap:15px;
    margin-bottom:22px
  }
  .home-section-heading .eyebrow {
    font-size:8px;
    margin-bottom:10px
  }
  .home-section h2 {
    font-size:29px
  }
  .home-section-heading>.arrow-link {
    font-size:9px;
    gap:6px
  }
  .home-section-heading>.arrow-link svg {
    width:14px
  }
  .category-edit-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px 15px
  }
  .category-edit-copy h3 {
    font-size:23px
  }
  .category-edit-copy p {
    font-size:9px
  }
  .category-edit-copy {
    padding-top:12px
  }
  .bottom-words {
    font-size:clamp(32px,6vw,48px)
  }
  .bottom-art>span {
    font-size:8px;
    margin-bottom:22px
  }
  .bottom-art>small {
    font-size:7px;
    margin-top:30px
  }
  .category-quick-links {
    gap:15px;
    font-size:9px;
    padding-top:24px
  }
  .category-quick-links>span {
    width:100%
  }
  .collection-section {
    padding-top:43px
  }
  .collection-tabs {
    gap:21px
  }
  .collection-tabs>button {
    font-size:10px;
    padding-bottom:12px
  }
  .collection-tab-row>span {
    font-size:8px
  }
  .home-product-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .shop-product h3 {
    font-size:12px;
    min-height:38px
  }
  .product-brand {
    font-size:8px
  }
  .product-color,.product-enquire {
    font-size:10px
  }
  .quick-bag {
    position:static;
    opacity:1;
    transform:none;
    width:100%;
    margin:0;
    border:0;
    border-bottom:1px solid #e6e0da;
    padding:11px 5px;
    background:#faf8f5;
    font-size:9px
  }
  .product-photo-wrapper:hover .product-category-tag,.product-photo-wrapper:focus-within .product-category-tag {
    opacity:1
  }
  .shopping-grid {
    gap:25px 15px
  }
  .wishlist-button {
    width:31px;
    height:31px
  }
  .editorial-pair {
    grid-template-columns:1fr;
    padding:43px 5% 0;
    gap:20px
  }
  .editorial-banner {
    min-height:320px;
    grid-template-columns:53% 47%
  }
  .editorial-banner>div {
    padding:33px 0 28px 13%
  }
  .editorial-banner h2 {
    font-size:36px
  }
  .editorial-banner .eyebrow {
    font-size:8px
  }
  .editorial-banner>img {
    max-height:345px
  }
  .brand-story {
    grid-template-columns:1fr;
    gap:22px;
    padding-top:45px;
    padding-bottom:45px
  }
  .brand-story>div:last-child>p {
    font-size:12px;
    max-width:none
  }
  .shopping-help {
    grid-template-columns:1fr;
    padding:27px 5%;
    gap:22px
  }
  .shopping-help>div,.shopping-help>a {
    gap:16px
  }
  .shopping-help strong {
    font-size:11px
  }
  .shopping-help small {
    font-size:9px
  }
  .shopping-help>div>svg,.shopping-help>a>svg {
    width:26px
  }
  .shopping-help>a>svg:last-child {
    width:18px
  }
  .store-main {
    padding:20px 5% 45px
  }
  .catalog-title-row {
    margin:22px 0 24px;
    align-items:flex-start
  }
  .catalog-title-row h1 {
    font-size:30px
  }
  .catalog-title-row p:not(.eyebrow) {
    font-size:11px
  }
  .browse-categories-link {
    display:none
  }
  .breadcrumbs ol {
    font-size:9px
  }
  .catalog-layout {
    grid-template-columns:1fr
  }
  .filter-sidebar {
    display:none
  }
  .mobile-filter-button {
    display:inline-flex;
    align-items:center;
    gap:7px;
    background:none;
    border:1px solid #e6e0da;
    padding:10px 12px;
    font-size:10px;
    margin-left:auto
  }
  .catalog-toolbar {
    gap:10px
  }
  .sort-select[data-slot="select-trigger"] {
    min-width:165px
  }
  .catalog-results .shopping-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .subcategory-links {
    gap:6px
  }
  .subcategory-links a {
    padding:9px 11px;
    font-size:9px
  }
  .department-cards {
    grid-template-columns:1fr
  }
  .department-card {
    min-height:170px
  }
  .department-card>div:first-child {
    width:70%
  }
  .department-card>img {
    width:30%;
    max-height:200px
  }
  .directory-grid {
    grid-template-columns:1fr
  }
  .directory-grid>section {
    padding:23px
  }
  .directory-grid p {
    min-height:0
  }
  .directory-root {
    font-size:23px;
    padding:22px
  }
  .product-detail-layout {
    grid-template-columns:1fr;
    gap:30px;
    margin-top:24px
  }
  .product-detail-copy {
    padding:0
  }
  .product-detail-copy h1 {
    font-size:33px
  }
  .main-product-image {
    max-height:650px;
    object-fit:contain
  }
  .related-products>h2 {
    font-size:29px
  }
  .saved-empty {
    padding:55px 20px;
    margin:30px 0
  }
  .saved-empty h2 {
    font-size:28px
  }
  .saved-count {
    font-size:10px
  }
  .bag-layout {
    grid-template-columns:1fr;
    gap:15px
  }
  .bag-summary {
    position:static;
    padding:25px
  }
  .bag-item {
    gap:18px;
    padding:14px
  }
  .bag-item>a {
    width:95px
  }
  .bag-item h2 {
    font-size:12px
  }
  .bag-item>div {
    padding:5px 22px 0 0
  }
  .bag-item>div>p:not(.product-brand) {
    font-size:10px
  }
  .bag-availability {
    font-size:8px;
    margin:10px 0 14px
  }
  .bag-remove {
    right:9px;
    top:10px
  }
  .contact-page {
    grid-template-columns:1fr;
    gap:35px;
    padding-top:35px
  }
  .contact-page h1,.about-page h1 {
    font-size:43px
  }
  .contact-page>div:first-child>p:not(.small-label) {
    font-size:12px;
    max-width:none
  }
  .contact-how {
    margin:22px 0
  }
  .about-page {
    grid-template-columns:1fr;
    gap:30px
  }
  .about-page>img {
    max-height:550px
  }
  .enquiry-form {
    padding:22px
  }
  .form-row {
    grid-template-columns:1fr;
    gap:0
  }
  .enquiry-form label {
    font-size:12px
  }
  .enquiry-form input,.enquiry-form textarea {
    font-size:16px
  }
  .store-footer {
    padding:42px 5% 20px
  }
  .footer-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px
  }
  .footer-grid>div:first-child {
    grid-column:1/-1
  }
  .footer-grid>div:first-child p {
    max-width:none;
    margin:15px 0
  }
  .footer-grid>div:last-child {
    grid-column:auto;
    display:block
  }
  .footer-grid>div:last-child h2 {
    margin-bottom:16px
  }
  .footer-grid h2 {
    font-size:11px
  }
  .footer-grid a:not(.store-logo) {
    font-size:11px;
    padding:6px 0
  }
  .footer-bottom {
    font-size:8px;
    flex-wrap:wrap;
    gap:10px
  }
  .shopping-notice {
    font-size:10px;
    padding:13px 15px;
    bottom:18px
  }
  
}

@media(max-width:480px) {
  .campaign {
    grid-template-columns:1fr;
    position:relative
  }
  .campaign-copy {
    min-height:0;
    padding:28px 25px 30px
  }
  .campaign-copy>.eyebrow {
    margin-bottom:18px;
    font-size:8px
  }
  .campaign-copy h1 {
    font-size:47px;
    line-height:1.07
  }
  .campaign-description {
    max-width:245px;
    font-size:11px;
    margin:16px 0 18px
  }
  .campaign-copy>.button {
    font-size:10px;
    min-height:43px;
    padding:12px 16px
  }
  .campaign-footnote {
    display:none
  }
  .campaign-image {
    height:330px;
    min-height:0
  }
  .campaign-image>img {
    object-position:center 17%
  }
  .campaign-piece {
    left:15px;
    right:15px;
    bottom:15px;
    font-size:11px;
    padding:12px 14px
  }
  .campaign-piece small {
    font-size:7px
  }
  .campaign-photo-label {
    font-size:7px
  }
  .home-section h2 {
    font-size:27px
  }
  .home-section-heading {
    display:block
  }
  .home-section-heading>.arrow-link {
    margin:15px 0 0;
    font-size:10px
  }
  .category-edit-copy h3 {
    font-size:21px
  }
  .category-edit-copy p {
    font-size:8px
  }
  .bottom-words {
    font-size:31px
  }
  .bottom-art>span {
    font-size:7px;
    margin-bottom:18px
  }
  .bottom-art>small {
    font-size:6px;
    margin-top:20px
  }
  .bottom-art>svg {
    width:36px;
    right:10px;
    top:20px
  }
  .collection-tab-row {
    gap:10px
  }
  .collection-tabs {
    gap:16px
  }
  .collection-tabs>button {
    font-size:9px
  }
  .collection-tab-row>span {
    font-size:7px;
    white-space:nowrap
  }
  .shop-product h3 {
    font-size:11px
  }
  .shop-product-copy {
    padding-top:12px
  }
  .catalog-toolbar {
    flex-wrap:wrap;
    padding-bottom:15px
  }
  .catalog-toolbar>p {
    width:100%;
    font-size:10px
  }
  .mobile-filter-button {
    margin-left:0;
    flex:1;
    justify-content:center
  }
  .sort-select[data-slot="select-trigger"] {
    flex:1;
    min-width:0
  }
  .sort-select>span:first-child {
    display:none
  }
  .catalog-title-row h1 {
    font-size:27px
  }
  .saved-count {
    display:none
  }
  .directory-root {
    flex-direction:column;
    gap:7px
  }
  .directory-root span {
    align-self:flex-start
  }
  .editorial-banner {
    min-height:285px
  }
  .editorial-banner h2 {
    font-size:31px
  }
  .editorial-banner>div {
    padding:29px 0 25px 12%
  }
  .editorial-banner .eyebrow {
    font-size:6px;
    letter-spacing:.1em;
    max-width:120px;
    line-height:1.8
  }
  .editorial-banner>img {
    max-height:315px
  }
  .shopping-notice {
    white-space:normal;
    width:max-content
  }
  .bag-item>a {
    width:85px
  }
  .bag-item h2 {
    font-size:11px
  }
  .bag-availability {
    font-size:7px
  }
  .bag-item .text-link {
    font-size:9px
  }
  .product-detail-copy h1 {
    font-size:30px
  }
  .product-detail-copy .availability-panel {
    padding:22px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*::before,*::after {
    animation-duration:.01ms!important;
    transition-duration:.01ms!important
  }
  .shop-product-photo>img,.category-edit-image>img,.shopping-notice {
    transition:none
  }
  
}

/* Buying flow */
.product-price {
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  margin:10px 0;
  font-size:14px
}
.product-price strong {
  color:#282421
}
.product-price del {
  color:#958b82;
  font-size:12px
}
.product-price>span {
  color:#722e41;
  font-size:11px;
  font-weight:600
}
.detail-price {
  margin:20px 0 3px;
  font-size:25px
}
.detail-price del {
  font-size:14px
}
.detail-price>span {
  font-size:13px
}
.purchase-note {
  font-size:12px;
  line-height:1.7;
  color:#83786f
}
.purchase-note svg {
  display:inline;
  vertical-align:middle;
  margin-right:5px
}
.size-picker {
  border-top:1px solid #e6e0da;
  margin-top:25px;
  padding-top:20px
}
.size-picker h2 {
  font-size:13px;
  font-weight:600;
  margin:0 0 12px
}
.size-picker>div {
  display:flex;
  gap:10px;
  flex-wrap:wrap
}
.size-picker button {
  border:1px solid #d8cfc6;
  background:#fff;
  min-width:48px;
  height:48px;
  font-weight:600
}
.size-picker button.selected {
  border-color:#722e41;
  background:#f7eaf0;
  color:#722e41
}
.size-picker button:disabled {
  cursor:not-allowed;
  text-decoration:line-through;
  opacity:.35
}
.purchase-actions {
  display:flex;
  gap:12px;
  margin:20px 0
}
.purchase-actions .button {
  flex:1
}
.availability-panel .text-link {
  display:block;
  margin-top:14px
}
.quick-bag {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px
}
.commerce-page {
  padding-top:38px;
  padding-bottom:70px;
  max-width:1300px
}
.commerce-page>h1,.admin-title h1 {
  font:400 clamp(34px,4vw,51px)/1.15 Georgia,serif;
  letter-spacing:-.035em;
  margin:0 0 32px
}
.commerce-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:40px;
  align-items:start
}
.commerce-empty {
  background:#faf8f5;
  padding:55px 24px;
  text-align:center
}
.commerce-empty>svg {
  margin:0 auto 20px;
  color:#722e41
}
.commerce-empty h2 {
  font:400 28px Georgia,serif
}
.commerce-empty p {
  color:#83786f
}
.commerce-empty .button {
  margin-top:15px
}
.cart-line {
  display:grid;
  grid-template-columns:110px minmax(0,1fr) auto;
  gap:20px;
  padding:0 0 24px;
  margin-bottom:24px;
  border-bottom:1px solid #e6e0da
}
.cart-line>a img {
  height:150px
}
.cart-line h2 {
  font-size:14px;
  margin:4px 0;
  font-weight:600
}
.cart-line p {
  font-size:12px;
  margin:4px 0;
  color:#83786f
}
.cart-line .product-brand {
  color:#722e41;
  font-size:10px
}
.cart-line>strong {
  font-size:14px
}
.quantity-label {
  font-size:12px;
  display:flex;
  align-items:center;
  gap:10px;
  margin:12px 0
}
.quantity-label select,.admin-record select {
  background:#fff;
  border:1px solid #ded5cb;
  padding:5px 8px;
  min-width:55px
}
.cart-remove {
  display:flex;
  align-items:center;
  gap:5px;
  background:none;
  border:0;
  padding:0;
  color:#83786f;
  font-size:11px
}
.order-summary {
  padding:25px;
  background:#faf8f5;
  border:1px solid #e6e0da
}
.order-summary h2,.checkout-form h2 {
  font-size:17px;
  font-weight:600;
  margin:0 0 25px
}
.order-summary>div {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:15px;
  padding:12px 0;
  font-size:13px
}
.order-summary strong {
  white-space:nowrap
}
.order-summary small {
  display:block;
  color:#83786f;
  margin-top:5px;
  font-size:11px
}
.order-summary .summary-total {
  padding:18px 0;
  border-top:1px solid #ded5cb;
  margin-top:12px;
  font-size:16px
}
.order-summary>.button {
  display:flex;
  width:100%;
  margin-top:15px
}
.order-summary>.text-link {
  display:block;
  text-align:center;
  margin-top:20px
}
.checkout-steps {
  display:flex;
  gap:25px;
  font-size:11px;
  letter-spacing:.05em;
  color:#9a8e81;
  margin-bottom:35px
}
.checkout-steps strong {
  color:#722e41
}
.checkout-form {
  padding:28px;
  border:1px solid #e6e0da;
  background:#fff
}
.checkout-form label {
  display:block;
  margin-bottom:18px;
  font-size:12px;
  font-weight:600
}
.checkout-form input,.checkout-form textarea {
  display:block;
  background:#fff;
  border:1px solid #ded5cb;
  width:100%;
  margin-top:7px;
  padding:11px 12px;
  border-radius:0;
  font-weight:400;
  min-width:0
}
.checkout-form textarea {
  resize:vertical
}
.checkout-form .button {
  margin-top:5px
}
.checkout-item>img {
  width:48px;
  height:64px;
  flex-shrink:0
}
.checkout-item>span {
  flex:1;
  font-size:12px
}
.checkout-item>strong {
  font-size:12px
}
.form-error {
  color:#a92838;
  font-size:12px
}
.payment-panel {
  padding:32px;
  border:1px solid #e6e0da
}
.payment-panel h2 {
  font:400 31px/1.2 Georgia,serif;
  margin:20px 0
}
.payment-panel>p {
  font-size:13px;
  line-height:1.8;
  color:#83786f
}
.payment-icon {
  display:flex;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  background:#f4e9e9;
  color:#722e41;
  border-radius:50%
}
.payment-status {
  padding:14px;
  background:#f4ede3;
  color:#722e41;
  font-size:13px;
  font-weight:600;
  margin:24px 0
}
.receipt-reference {
  overflow-wrap:anywhere;
  font-size:11px
}
.receipt-reference strong {
  display:block;
  color:#282421;
  font-size:12px
}
.admin-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px
}
.admin-tabs {
  display:flex;
  gap:12px;
  border-bottom:1px solid #e6e0da;
  margin-bottom:30px
}
.admin-tabs button {
  padding:14px 18px;
  border:0;
  background:none;
  text-transform:capitalize;
  font-weight:600;
  font-size:13px
}
.admin-tabs button[aria-pressed=true] {
  color:#722e41;
  border-bottom:3px solid #722e41
}
.admin-page section>h2 {
  font:400 28px Georgia,serif
}
.admin-page section>p {
  color:#83786f;
  font-size:13px
}
.admin-product,.admin-record {
  border:1px solid #e6e0da;
  margin:15px 0;
  padding:18px
}
.admin-product>summary {
  display:flex;
  align-items:center;
  gap:14px;
  cursor:pointer;
  font-size:14px
}
.admin-product>summary img {
  width:42px;
  height:56px
}
.admin-product small {
  display:block;
  margin-top:5px;
  font-size:11px;
  color:#83786f
}
.admin-product form {
  border:0;
  padding:25px 0 5px
}
.admin-product fieldset {
  border:0;
  padding:0;
  margin:0
}
.admin-product legend {
  font-size:12px;
  font-weight:600;
  margin-bottom:12px
}
.admin-stock {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  max-width:500px
}
.admin-check {
  display:flex!important;
  align-items:center;
  gap:10px
}
.admin-check input {
  width:auto;
  margin:0
}
.admin-product .text-link {
  margin-left:20px
}
.admin-record summary {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  cursor:pointer
}
.admin-record p,.admin-record li {
  font-size:12px
}
.admin-record small {
  color:#83786f
}
.admin-record label {
  display:block;
  font-size:12px;
  margin-top:15px
}
.admin-record h3 {
  font-size:14px;
  margin-top:0
}
.admin-message {
  white-space:pre-wrap
}
.admin-page>.arrow-link {
  margin-top:25px
}

@media(max-width:850px) {
  .commerce-layout {
    grid-template-columns:minmax(0,1fr);
    gap:25px
  }
  .order-summary {
    max-width:none
  }
  .commerce-page {
    padding-top:28px
  }
  .checkout-form {
    padding:22px
  }
  .purchase-actions .button {
    padding:13px 15px
  }
  
}

@media(max-width:480px) {
  .cart-line {
    grid-template-columns:85px minmax(0,1fr);
    gap:14px
  }
  .cart-line>a img {
    height:120px
  }
  .cart-line>strong {
    grid-column:2
  }
  .checkout-form .form-row {
    grid-template-columns:1fr;
    gap:0
  }
  .checkout-steps {
    gap:18px
  }
  .payment-panel {
    padding:22px
  }
  .admin-stock {
    gap:6px
  }
  .admin-stock input {
    padding:10px 6px
  }
  .admin-tabs button {
    padding:12px
  }
  .size-picker button {
    min-width:44px;
    height:44px
  }
  .purchase-actions {
    gap:8px
  }
  .purchase-actions .button {
    font-size:11px;
    gap:8px
  }
  
}


.antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
