/* ============================================================
   TREE ART — Interface system
   Shared tokens, base elements, components and states.
   Public and administrative modes extend this file.
   ============================================================ */

:root{
  --bg:#F7F4EF;
  --paper:#FFFEFB;
  --card:#FFFFFF;
  --soft:#FBF9F5;
  --green:#65715F;
  --green2:#4B5745;
  --text:#2D2D2A;
  --muted:#746E65;
  --border:#E6DED2;
  --beige:#D8CBB8;
  --clay:#A85F4A;
  --gold:#C7A16A;

  --sidebar:#2A2A27;
  --sidebar-soft:#34342F;

  --shadow:0 22px 60px rgba(45,45,42,.10);
  --soft-shadow:0 10px 28px rgba(45,45,42,.055);
  --hair:0 0 0 1px var(--border);

  --serif:"Cormorant Garamond","Playfair Display",Georgia,serif;
  --sans:"Manrope","Inter",Arial,sans-serif;

  --r-banner:34px;
  --r-card:26px;
  --r:16px;
  --r-sm:18px;
  --r-btn:14px;
  --r-pill:999px;

  --wrap:1200px;
  --pad:46px;

  --focus-ring:0 0 0 3px rgba(101,113,95,.16);
  --success-bg:#F4F6F1;
  --warning-bg:#FFF7EC;
  --danger-bg:#FFF3F0;
  --success-text:var(--green2);
  --warning-text:#8A5F22;
  --danger-text:var(--clay);

  /* Compatibility aliases for legacy selectors. */
  --ink:var(--text);
  --line:var(--border);
}

[data-font="playfair"]{
  --serif:"Playfair Display",Georgia,serif;
  --sans:"Inter",Arial,sans-serif;
}

[data-radius="sharp"]{
  --r-banner:14px;
  --r-card:12px;
  --r:12px;
  --r-sm:9px;
  --r-btn:8px;
}

[data-radius="medium"]{
  --r-banner:24px;
  --r-card:18px;
  --r:16px;
  --r-sm:13px;
  --r-btn:11px;
}

[data-interface-mode="admin"]{
  --r-card:16px;
  --r-sm:11px;
  --r-btn:11px;
  --soft-shadow:0 8px 24px rgba(45,45,42,.06);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0}
body{
  font-family:var(--sans);
  color:var(--text);
  background:var(--bg);
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-family:inherit}
button{cursor:pointer}
input,select,textarea{max-width:100%}
p{margin:0}
h1,h2,h3,h4{
  font-family:var(--serif);
  font-weight:600;
  letter-spacing:0;
  color:var(--text);
  margin:0;
  line-height:1.05;
  text-wrap:balance;
}
h1{font-size:clamp(40px,5.4vw,68px)}
h2{font-size:clamp(30px,3.7vw,46px)}
h3{font-size:clamp(22px,2.4vw,30px)}
h4{font-size:clamp(19px,2vw,25px)}

::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:rgba(116,110,101,.3);border-radius:8px}

:focus-visible{
  outline:3px solid rgba(101,113,95,.24);
  outline-offset:2px;
}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.muted{color:var(--muted)}
.right{text-align:right}
.nowrap{white-space:nowrap}

.eyebrow{
  display:inline-block;
  font-family:var(--sans);
  font-weight:700;
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--green);
  margin-bottom:14px;
}

.subtle{color:var(--muted);font-size:17px;max-width:62ch}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:50px;
  padding:0 26px;
  border-radius:var(--r-btn);
  font-family:var(--sans);
  font-weight:800;
  font-size:14.5px;
  letter-spacing:0;
  border:1px solid transparent;
  transition:.22s ease;
  white-space:nowrap;
}
.btn.primary{background:var(--green);color:#fff;box-shadow:0 12px 26px rgba(75,87,69,.22)}
.btn.primary:hover{background:var(--green2);transform:translateY(-1px)}
.btn.secondary{background:var(--card);color:var(--text);border-color:var(--border)}
.btn.secondary:hover{border-color:var(--green);color:var(--green)}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--border)}
.btn.ghost:hover{background:var(--soft)}
.btn.danger{background:var(--card);border-color:var(--border);color:var(--clay)}
.btn.danger:hover{background:var(--clay);color:#fff;border-color:var(--clay)}
.btn.block{width:100%}
.btn.lg{min-height:56px;padding:0 32px;font-size:15.5px}
.btn.sm{min-height:36px;padding:0 13px;font-size:12.5px;border-radius:9px}
.btn.icon{min-height:36px;width:36px;padding:0}
.btn:disabled,.btn[disabled]{opacity:.52;cursor:not-allowed;transform:none;box-shadow:none}

.input,select,textarea{
  width:100%;
  min-width:0;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--soft);
  padding:12px 14px;
  font-size:14px;
  color:var(--text);
  line-height:1.35;
  transition:.18s;
}
.input:focus,select:focus,textarea:focus{
  outline:none;
  border-color:var(--green);
  background:var(--card);
  box-shadow:var(--focus-ring);
}
select.input,select{
  min-height:46px;
  padding-right:42px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  appearance:none;
  -webkit-appearance:none;
  background-color:var(--soft);
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 20px) 20px,calc(100% - 14px) 20px;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}
select.input:focus,select:focus{background-color:var(--card)}

.field{margin-bottom:16px}
.field label{display:block;font-weight:700;font-size:13px;margin-bottom:7px}
.field .hint{font-weight:500;color:var(--muted);font-size:11.5px}
.field-mini{display:grid;gap:7px;margin:0 0 14px;font-size:13px;font-weight:700;color:var(--muted)}
.field-mini .input,.field-mini select,.field-mini textarea{margin-top:0;color:var(--text);font-weight:500}

.table{width:100%;border-collapse:collapse;font-size:14px}
.table th{
  text-align:left;
  font-size:11px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:700;
  padding:12px 18px;
  border-bottom:1px solid var(--border);
}
.table td{padding:14px 18px;border-bottom:1px solid var(--soft)}
.table tr:last-child td{border-bottom:none}
.table tbody tr{transition:.12s;cursor:pointer}
.table tbody tr:hover{background:var(--soft)}
.table .thumb{width:50px;height:50px;border-radius:10px;object-fit:cover;border:1px solid var(--border);background:var(--soft)}

.chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 13px;
  border-radius:var(--r-pill);
  font-size:12px;
  font-weight:700;
  border:1px solid var(--border);
  background:var(--card);
}
.chip .dot{width:8px;height:8px;border-radius:50%}
.tag{
  display:inline-block;
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
  color:var(--green);
  background:var(--soft);
  border:1px solid var(--border);
  padding:4px 10px;
  border-radius:var(--r-pill);
}

.panel{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r);
  box-shadow:var(--soft-shadow);
}

.modal{
  position:fixed;
  inset:0;
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(28,28,26,.55);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  padding:24px;
  animation:ds-fade .2s;
}
.modal[hidden]{display:none}
.modal-card{
  background:var(--paper);
  border-radius:var(--r);
  box-shadow:0 40px 100px rgba(0,0,0,.4);
  width:min(760px,100%);
  max-height:92vh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  animation:ds-pop .22s;
}
.modal-card.wide{width:min(1180px,100%)}
.modal-head{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid var(--border)}
.modal-head h3{font-size:26px}
.modal-head small{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:4px}
.modal-body{padding:24px 26px;overflow:auto}
.modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:18px 26px;border-top:1px solid var(--border);background:var(--soft)}
.x{
  width:40px;
  height:40px;
  border-radius:50%;
  border:1px solid var(--border);
  background:var(--card);
  font-size:20px;
  color:var(--muted);
  cursor:pointer;
  flex-shrink:0;
  transition:.18s;
}
.x:hover{border-color:var(--clay);color:var(--clay)}

.empty{padding:60px 24px;text-align:center;color:var(--muted)}
.empty h3{font-size:24px;color:var(--text);margin-bottom:8px}
.toast{
  position:fixed;
  bottom:26px;
  left:50%;
  transform:translateX(-50%) translateY(20px);
  background:var(--text);
  color:#fff;
  padding:13px 22px;
  border-radius:12px;
  font-weight:600;
  font-size:14px;
  box-shadow:0 20px 50px rgba(0,0,0,.3);
  opacity:0;
  transition:.3s;
  z-index:300;
  pointer-events:none;
}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

.is-success,.state-success{background:var(--success-bg);color:var(--success-text)}
.is-warning,.state-warning{background:var(--warning-bg);color:var(--warning-text)}
.is-danger,.state-danger,.is-error,.state-error{background:var(--danger-bg);color:var(--danger-text)}

@keyframes ds-fade{from{opacity:0}to{opacity:1}}
@keyframes ds-pop{from{transform:translateY(12px) scale(.98);opacity:0}to{transform:none;opacity:1}}

@media(max-width:760px){
  :root{--pad:22px}
  .modal{padding:12px}
  .modal-head,.modal-body,.modal-foot{padding-left:18px;padding-right:18px}
  .modal-foot{flex-direction:column-reverse}
  .modal-foot .btn{width:100%}
}

/* Patch 82.9.88.6.196 - Set Configurator Product Cards CSS-only Layout Fix */
#configurator #setConfiguratorItems .set-configurator-products{
  grid-template-columns:1fr !important;
  gap:10px !important;
}

#configurator #setConfiguratorItems .set-configurator-product{
  display:grid !important;
  grid-template-columns:34px 76px minmax(0,1fr) !important;
  grid-template-rows:auto auto auto !important;
  column-gap:12px !important;
  row-gap:4px !important;
  align-items:center !important;
  min-height:92px !important;
  padding:12px !important;
  text-align:left !important;
  overflow:hidden !important;
}

#configurator #setConfiguratorItems .set-configurator-product > span{
  grid-column:1 !important;
  grid-row:1 / 4 !important;
  align-self:start !important;
  justify-self:center !important;
}

#configurator #setConfiguratorItems .set-configurator-product > img{
  grid-column:2 !important;
  grid-row:1 / 4 !important;
  width:76px !important;
  height:62px !important;
  object-fit:contain !important;
  object-position:center center !important;
  align-self:center !important;
  background:#f4f0ea !important;
  border-radius:12px !important;
}

#configurator #setConfiguratorItems .set-configurator-product > b{
  grid-column:3 !important;
  grid-row:1 !important;
  min-width:0 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  white-space:normal !important;
  line-height:1.16 !important;
}

#configurator #setConfiguratorItems .set-configurator-product > small{
  grid-column:3 !important;
  grid-row:2 !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

#configurator #setConfiguratorItems .set-configurator-product > em{
  grid-column:3 !important;
  grid-row:3 !important;
  justify-self:start !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
/* End Patch 82.9.88.6.196 */

/* Patch 82.9.88.6.196.1 - Hide Bottom Set Configurator Return Card */
#configurator #setConfiguratorReturn.set-configurator-return{
  display:none !important;
}
/* End Patch 82.9.88.6.196.1 */

/* Patch 82.9.88.6.196.2 - Ready Set Cards Image Contain */
.set-card > .set-image-wrap > .set-image{
  background:#f4f0ea !important;
}

.set-card > .set-image-wrap > .set-image > img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
/* End Patch 82.9.88.6.196.2 */

/* Patch 82.9.88.6.196.3 - Ready Set Cards Mobile Image Contain */
@media(max-width:760px){
  .set-card > .set-image-wrap,
  .set-card > .set-image-wrap > .set-image{
    overflow:hidden !important;
  }

  .set-card > .set-image-wrap > .set-image{
    background:#f4f0ea !important;
  }

  .set-card > .set-image-wrap > .set-image > img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
  }
}
/* End Patch 82.9.88.6.196.3 */

/* Patch 82.9.88.6.196.4 - Ready Set Detail Mobile Cover Contain */
@media(max-width:760px){
  #sets #setDetail.set-detail--story .set-story-cover{
    background:#f4f0ea !important;
    overflow:hidden !important;
  }

  #sets #setDetail.set-detail--story .set-story-cover > img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
  }
}
/* End Patch 82.9.88.6.196.4 */

/* Patch 82.9.88.6.196.5 - Ready Set Detail Mobile Bottom Gap Tighten */
@media(max-width:760px){
  #sets.page.active:has(#setDetail.set-detail--story){
    min-height:auto !important;
    padding-bottom:0 !important;
  }

  #sets.page.active:has(#setDetail.set-detail--story) > .wrap{
    padding-bottom:22px !important;
    margin-bottom:0 !important;
  }

  #sets #setDetail.set-detail--story{
    margin-bottom:0 !important;
    padding-bottom:0 !important;
  }

  #sets #setDetail.set-detail--story .set-story{
    margin-bottom:0 !important;
    padding-bottom:0 !important;
  }

  #sets #setDetail.set-detail--story .set-story-actions,
  #sets #setDetail.set-detail--story .set-story-footer{
    margin-bottom:0 !important;
    padding-bottom:0 !important;
  }
}
/* End Patch 82.9.88.6.196.5 */

/* Patch 82.9.88.6.197 - Ready Set Detail Post-Hero Sales Layout */
#sets #setDetail.set-detail--story{
  --ta-set-gap:22px;
  --ta-set-border:rgba(64,54,43,.13);
  --ta-set-soft:#fbf8f1;
  --ta-set-card:#fffdf9;
  --ta-set-green:#65715f;
}

/* Do not rebuild the upper hero/cover. Only the content after it. */
#sets #setDetail.set-detail--story .set-story{
  row-gap:24px !important;
}

/* Price + specs: balanced compact block under hero */
#sets #setDetail.set-detail--story .set-story-summary,
#sets #setDetail.set-detail--story .set-detail-summary,
#sets #setDetail.set-detail--story .set-story-info,
#sets #setDetail.set-detail--story .set-detail-content{
  display:grid !important;
  grid-template-columns:minmax(320px,.92fr) minmax(420px,1.08fr) !important;
  gap:18px !important;
  align-items:stretch !important;
  margin-top:18px !important;
}

#sets #setDetail.set-detail--story .set-price-card{
  align-self:stretch !important;
  min-height:220px !important;
  border:1px solid var(--ta-set-border) !important;
  border-radius:24px !important;
  background:
    radial-gradient(circle at 88% 18%, rgba(101,113,95,.08), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(248,244,236,.78)) !important;
  box-shadow:0 22px 60px rgba(64,54,43,.055) !important;
  padding:34px 36px !important;
}

#sets #setDetail.set-detail--story .set-price-card > span,
#sets #setDetail.set-detail--story .set-price-card small{
  color:rgba(64,54,43,.62) !important;
}

#sets #setDetail.set-detail--story .set-price-card strong{
  display:block !important;
  margin:18px 0 18px !important;
  color:var(--ta-set-green) !important;
  font-size:clamp(42px,4.4vw,68px) !important;
  line-height:.92 !important;
  letter-spacing:-.045em !important;
  font-weight:600 !important;
}

#sets #setDetail.set-detail--story .set-spec-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  align-self:stretch !important;
}

#sets #setDetail.set-detail--story .set-spec-grid > div{
  min-height:98px !important;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  align-content:center !important;
  column-gap:15px !important;
  padding:20px 22px !important;
  border:1px solid var(--ta-set-border) !important;
  border-radius:18px !important;
  background:rgba(255,253,249,.92) !important;
  box-shadow:0 14px 36px rgba(64,54,43,.035) !important;
}

#sets #setDetail.set-detail--story .set-spec-grid > div::before{
  content:"" !important;
  grid-row:1 / 3 !important;
  width:30px !important;
  height:30px !important;
  align-self:center !important;
  border:1.5px solid rgba(101,113,95,.62) !important;
  border-radius:9px !important;
  background:
    linear-gradient(135deg, transparent 42%, rgba(101,113,95,.22) 43% 57%, transparent 58%),
    rgba(244,240,232,.55) !important;
}

#sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(5){
  grid-column:1 / -1 !important;
  min-height:78px !important;
}

#sets #setDetail.set-detail--story .set-spec-grid small{
  grid-column:2 !important;
  display:block !important;
  margin-bottom:6px !important;
  color:rgba(64,54,43,.58) !important;
  font-size:11px !important;
  line-height:1.05 !important;
  letter-spacing:.15em !important;
  text-transform:uppercase !important;
  font-weight:800 !important;
}

#sets #setDetail.set-detail--story .set-spec-grid b{
  grid-column:2 !important;
  color:#2f2e2a !important;
  font-size:15.5px !important;
  line-height:1.28 !important;
  font-weight:800 !important;
}

/* Section heading under specs */
#sets #setDetail.set-detail--story .set-components-head,
#sets #setDetail.set-detail--story .set-story-components-head,
#sets #setDetail.set-detail--story .set-position-head{
  grid-column:1 / -1 !important;
  text-align:center !important;
  margin:18px auto 4px !important;
}

#sets #setDetail.set-detail--story .set-components-head h2,
#sets #setDetail.set-detail--story .set-story-components-head h2,
#sets #setDetail.set-detail--story .set-position-head h2{
  margin:0 !important;
}

/* Product positions: larger premium cards */
#sets #setDetail.set-detail--story .set-composition-list,
#sets #setDetail.set-detail--story .set-components-list,
#sets #setDetail.set-detail--story .set-story-components,
#sets #setDetail.set-detail--story .set-position-list{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
  margin-top:10px !important;
}

#sets #setDetail.set-detail--story .set-component-card,
#sets #setDetail.set-detail--story .set-composition-choice{
  position:relative !important;
  display:grid !important;
  grid-template-columns:1fr auto !important;
  grid-template-rows:auto 1fr auto !important;
  min-height:360px !important;
  padding:14px !important;
  border:1px solid var(--ta-set-border) !important;
  border-radius:22px !important;
  background:var(--ta-set-card) !important;
  box-shadow:0 24px 60px rgba(64,54,43,.07) !important;
  overflow:hidden !important;
}

#sets #setDetail.set-detail--story .set-component-card img,
#sets #setDetail.set-detail--story .set-composition-choice img{
  grid-column:1 / -1 !important;
  width:100% !important;
  height:210px !important;
  min-height:210px !important;
  border-radius:17px !important;
  background:#f4f0ea !important;
  object-fit:cover !important;
  object-position:center center !important;
  overflow:hidden !important;
}

#sets #setDetail.set-detail--story .set-component-card > span:first-child,
#sets #setDetail.set-detail--story .set-composition-choice > span:first-child,
#sets #setDetail.set-detail--story .set-composition-choice .set-composition-index{
  position:absolute !important;
  top:25px !important;
  left:25px !important;
  z-index:2 !important;
  width:38px !important;
  height:38px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  background:rgba(255,253,249,.94) !important;
  color:var(--ta-set-green) !important;
  font-size:12px !important;
  font-weight:900 !important;
  box-shadow:0 10px 28px rgba(64,54,43,.12) !important;
}

#sets #setDetail.set-detail--story .set-component-card > div,
#sets #setDetail.set-detail--story .set-composition-choice > div{
  min-width:0 !important;
  padding:16px 4px 4px !important;
}

#sets #setDetail.set-detail--story .set-component-card span,
#sets #setDetail.set-detail--story .set-composition-choice small,
#sets #setDetail.set-detail--story .set-composition-choice .set-composition-category{
  color:var(--ta-set-green) !important;
  font-size:11px !important;
  letter-spacing:.13em !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
}

#sets #setDetail.set-detail--story .set-component-card strong,
#sets #setDetail.set-detail--story .set-composition-choice strong,
#sets #setDetail.set-detail--story .set-composition-choice b{
  display:block !important;
  margin-top:7px !important;
  color:#2f2e2a !important;
  font-size:17px !important;
  line-height:1.18 !important;
  font-weight:850 !important;
}

#sets #setDetail.set-detail--story .set-component-card small,
#sets #setDetail.set-detail--story .set-composition-choice small:last-child,
#sets #setDetail.set-detail--story .set-composition-choice .set-composition-meta{
  display:block !important;
  margin-top:5px !important;
  color:rgba(64,54,43,.58) !important;
  font-size:13px !important;
  line-height:1.25 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  font-weight:500 !important;
}

#sets #setDetail.set-detail--story .set-component-card .btn,
#sets #setDetail.set-detail--story .set-composition-choice .btn,
#sets #setDetail.set-detail--story .set-composition-choice button{
  align-self:end !important;
  justify-self:end !important;
  min-width:128px !important;
  height:42px !important;
  border-radius:999px !important;
  background:#fffdf9 !important;
  border:1px solid rgba(64,54,43,.15) !important;
  color:#2f2e2a !important;
  font-weight:850 !important;
  box-shadow:none !important;
}

/* Bottom CTAs */
#sets #setDetail.set-detail--story .detail-actions,
#sets #setDetail.set-detail--story .set-story-actions{
  grid-column:1 / -1 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:18px !important;
  margin:28px auto 0 !important;
}

#sets #setDetail.set-detail--story .detail-actions .btn,
#sets #setDetail.set-detail--story .set-story-actions .btn{
  min-width:310px !important;
  height:64px !important;
  border-radius:14px !important;
  font-size:16px !important;
  font-weight:900 !important;
}

/* Mobile: keep hero first, then compact info, then large cards stacked */
@media(max-width:900px){
  #sets #setDetail.set-detail--story .set-story-summary,
  #sets #setDetail.set-detail--story .set-detail-summary,
  #sets #setDetail.set-detail--story .set-story-info,
  #sets #setDetail.set-detail--story .set-detail-content{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card{
    min-height:0 !important;
    padding:26px 24px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card strong{
    font-size:clamp(40px,11vw,58px) !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid{
    grid-template-columns:1fr 1fr !important;
  }

  #sets #setDetail.set-detail--story .set-composition-list,
  #sets #setDetail.set-detail--story .set-components-list,
  #sets #setDetail.set-detail--story .set-story-components,
  #sets #setDetail.set-detail--story .set-position-list{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  #sets #setDetail.set-detail--story .set-component-card,
  #sets #setDetail.set-detail--story .set-composition-choice{
    min-height:0 !important;
  }

  #sets #setDetail.set-detail--story .set-component-card img,
  #sets #setDetail.set-detail--story .set-composition-choice img{
    height:230px !important;
  }

  #sets #setDetail.set-detail--story .detail-actions,
  #sets #setDetail.set-detail--story .set-story-actions{
    flex-direction:column !important;
    gap:12px !important;
  }

  #sets #setDetail.set-detail--story .detail-actions .btn,
  #sets #setDetail.set-detail--story .set-story-actions .btn{
    width:100% !important;
    min-width:0 !important;
  }
}

@media(max-width:560px){
  #sets #setDetail.set-detail--story .set-spec-grid{
    grid-template-columns:1fr !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(5){
    grid-column:auto !important;
  }

  #sets #setDetail.set-detail--story .set-component-card img,
  #sets #setDetail.set-detail--story .set-composition-choice img{
    height:200px !important;
  }
}
/* End Patch 82.9.88.6.197 */

/* Patch 82.9.88.6.198 - Ready Set Premium Light Sales Summary */
#sets #setDetail.set-detail--story .set-story-summary,
#sets #setDetail.set-detail--story .set-detail-summary,
#sets #setDetail.set-detail--story .set-story-info,
#sets #setDetail.set-detail--story .set-detail-content{
  grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr) !important;
  gap:14px !important;
  align-items:start !important;
}

/* Price card: lighter, cleaner, premium */
#sets #setDetail.set-detail--story .set-price-card{
  min-height:188px !important;
  padding:30px 30px 28px !important;
  border:1px solid rgba(64,54,43,.09) !important;
  border-radius:22px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(251,248,242,.88)) !important;
  box-shadow:0 10px 24px rgba(64,54,43,.035) !important;
}

#sets #setDetail.set-detail--story .set-price-card > span,
#sets #setDetail.set-detail--story .set-price-card small{
  color:rgba(64,54,43,.50) !important;
  font-size:14px !important;
}

#sets #setDetail.set-detail--story .set-price-card strong{
  display:block !important;
  margin:18px 0 14px !important;
  color:var(--green2, #65715f) !important;
  font-size:clamp(40px,4.5vw,58px) !important;
  line-height:.95 !important;
  letter-spacing:-.04em !important;
  font-weight:600 !important;
}

#sets #setDetail.set-detail--story .set-price-card p,
#sets #setDetail.set-detail--story .set-price-card .subtle{
  max-width:34ch !important;
  color:rgba(64,54,43,.64) !important;
  line-height:1.5 !important;
}

/* Specs: less heavy, more airy */
#sets #setDetail.set-detail--story .set-spec-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

#sets #setDetail.set-detail--story .set-spec-grid > div{
  min-height:84px !important;
  padding:16px 18px !important;
  border:1px solid rgba(64,54,43,.08) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.78) !important;
  box-shadow:none !important;
  column-gap:12px !important;
  grid-template-columns:26px minmax(0,1fr) !important;
}

#sets #setDetail.set-detail--story .set-spec-grid > div::before{
  width:22px !important;
  height:22px !important;
  border-radius:7px !important;
  border:1.2px solid rgba(101,113,95,.36) !important;
  background:none !important;
}

#sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(5){
  grid-column:1 / -1 !important;
  min-height:74px !important;
}

#sets #setDetail.set-detail--story .set-spec-grid small{
  margin-bottom:4px !important;
  color:rgba(64,54,43,.45) !important;
  font-size:10.5px !important;
  letter-spacing:.14em !important;
}

#sets #setDetail.set-detail--story .set-spec-grid b{
  color:#2f2e2a !important;
  font-size:14.5px !important;
  line-height:1.28 !important;
  font-weight:700 !important;
}

/* Slightly calmer spacing before positions */
#sets #setDetail.set-detail--story .set-components-head,
#sets #setDetail.set-detail--story .set-story-components-head,
#sets #setDetail.set-detail--story .set-position-head{
  margin:14px auto 2px !important;
}

/* Mobile */
@media(max-width:900px){
  #sets #setDetail.set-detail--story .set-story-summary,
  #sets #setDetail.set-detail--story .set-detail-summary,
  #sets #setDetail.set-detail--story .set-story-info,
  #sets #setDetail.set-detail--story .set-detail-content{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card{
    min-height:0 !important;
    padding:24px 22px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card strong{
    font-size:clamp(36px,10vw,50px) !important;
  }
}

@media(max-width:560px){
  #sets #setDetail.set-detail--story .set-spec-grid{
    grid-template-columns:1fr !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(5){
    grid-column:auto !important;
  }
}
/* End Patch 82.9.88.6.198 */

/* Patch 82.9.88.6.198.1 - Ready Set Price Accent And Premium Spec Icons */

/* 1) Price card: clearer premium accent */
#sets #setDetail.set-detail--story .set-price-card{
  position:relative !important;
  overflow:hidden !important;
  border:1px solid rgba(101,113,95,.16) !important;
  border-radius:24px !important;
  background:
    radial-gradient(circle at 84% 22%, rgba(101,113,95,.08), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,246,239,.94)) !important;
  box-shadow:
    0 18px 42px rgba(64,54,43,.05),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

#sets #setDetail.set-detail--story .set-price-card::before{
  content:"" !important;
  position:absolute !important;
  left:30px !important;
  top:24px !important;
  width:96px !important;
  height:3px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, rgba(101,113,95,.60), rgba(101,113,95,0)) !important;
  opacity:.75 !important;
}

#sets #setDetail.set-detail--story .set-price-card::after{
  content:"" !important;
  position:absolute !important;
  right:-12px !important;
  bottom:-18px !important;
  width:140px !important;
  height:140px !important;
  border-radius:50% !important;
  background:radial-gradient(circle, rgba(101,113,95,.10) 0%, rgba(101,113,95,0) 72%) !important;
  pointer-events:none !important;
}

#sets #setDetail.set-detail--story .set-price-card > span,
#sets #setDetail.set-detail--story .set-price-card small{
  position:relative !important;
  z-index:1 !important;
}

#sets #setDetail.set-detail--story .set-price-card strong{
  position:relative !important;
  z-index:1 !important;
  margin-top:38px !important;
  color:#65715f !important;
  text-shadow:0 1px 0 rgba(255,255,255,.55) !important;
}

#sets #setDetail.set-detail--story .set-price-card p,
#sets #setDetail.set-detail--story .set-price-card .subtle{
  position:relative !important;
  z-index:1 !important;
}

/* 2) Spec cards: remove checkbox-look and use premium icons */
#sets #setDetail.set-detail--story .set-spec-grid > div{
  grid-template-columns:44px minmax(0,1fr) !important;
  column-gap:14px !important;
}

#sets #setDetail.set-detail--story .set-spec-grid > div::before{
  content:"" !important;
  width:36px !important;
  height:36px !important;
  align-self:start !important;
  border:none !important;
  border-radius:12px !important;
  background-color:#f6f2ea !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:20px 20px !important;
  box-shadow:
    inset 0 0 0 1px rgba(101,113,95,.12),
    0 1px 2px rgba(64,54,43,.03) !important;
}

/* 1 — Корпус */
#sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(1)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23798572' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8.5 12 4l8 4.5-8 4.5L4 8.5Z'/%3E%3Cpath d='M4 8.5V15.5L12 20l8-4.5V8.5'/%3E%3C/svg%3E") !important;
}

/* 2 — Фасади */
#sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(2)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23798572' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='3.5' width='12' height='17' rx='2.2'/%3E%3Cpath d='M14.5 12h.01'/%3E%3C/svg%3E") !important;
}

/* 3 — Фурнітура */
#sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(3)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23798572' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 7.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5Z'/%3E%3Cpath d='M16 11.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5Z'/%3E%3Cpath d='M10.3 11.2 13.7 12.8'/%3E%3Cpath d='M8 5V4'/%3E%3Cpath d='M16 19v1'/%3E%3C/svg%3E") !important;
}

/* 4 — Виготовлення */
#sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(4)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23798572' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5.5' width='16' height='14' rx='2.2'/%3E%3Cpath d='M8 3.8v3.1'/%3E%3Cpath d='M16 3.8v3.1'/%3E%3Cpath d='M4 9.5h16'/%3E%3C/svg%3E") !important;
}

/* 5 — Доставка */
#sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(5)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23798572' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8.5 12 4l8 4.5-8 4.5L4 8.5Z'/%3E%3Cpath d='M4 8.5V15.5L12 20l8-4.5V8.5'/%3E%3Cpath d='M12 13v7'/%3E%3C/svg%3E") !important;
}

/* Mobile */
@media(max-width:900px){
  #sets #setDetail.set-detail--story .set-price-card::before{
    left:24px !important;
    top:20px !important;
    width:82px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card strong{
    margin-top:34px !important;
  }
}
/* End Patch 82.9.88.6.198.1 */

/* Patch 82.9.88.6.198.2 - Ready Set Price Card Soft Gradient */
#sets #setDetail.set-detail--story .set-price-card{
  background:
    radial-gradient(circle at 78% 22%, rgba(101,113,95,.08), rgba(101,113,95,0) 30%),
    linear-gradient(135deg,
      rgba(255,255,255,.98) 0%,
      rgba(250,247,241,.96) 52%,
      rgba(242,247,240,.94) 100%) !important;
}
/* End Patch 82.9.88.6.198.2 */

/* Patch 82.9.88.6.198.3 - Ready Set Position Cards Larger Images No CTA */

/* Keep card size, but rebuild inside layout */
#sets #setDetail.set-detail--story .set-component-card,
#sets #setDetail.set-detail--story .set-composition-choice{
  grid-template-columns:1fr !important;
  grid-template-rows:auto 1fr !important;
  min-height:360px !important;
  padding:14px !important;
}

/* Use freed CTA space for larger image */
#sets #setDetail.set-detail--story .set-component-card img,
#sets #setDetail.set-detail--story .set-composition-choice img{
  grid-column:1 / -1 !important;
  width:100% !important;
  height:238px !important;
  min-height:238px !important;
  border-radius:17px !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
}

/* Content block becomes full-width under image */
#sets #setDetail.set-detail--story .set-component-card > div,
#sets #setDetail.set-detail--story .set-composition-choice > div{
  min-width:0 !important;
  width:100% !important;
  padding:14px 6px 2px !important;
}

/* Remove per-item CTA from positions */
#sets #setDetail.set-detail--story .set-component-card .btn,
#sets #setDetail.set-detail--story .set-composition-choice .btn,
#sets #setDetail.set-detail--story .set-composition-choice button{
  display:none !important;
}

/* Let text use the full card width */
#sets #setDetail.set-detail--story .set-component-card strong,
#sets #setDetail.set-detail--story .set-composition-choice strong,
#sets #setDetail.set-detail--story .set-composition-choice b{
  max-width:100% !important;
}

#sets #setDetail.set-detail--story .set-component-card small,
#sets #setDetail.set-detail--story .set-composition-choice small:last-child,
#sets #setDetail.set-detail--story .set-composition-choice .set-composition-meta{
  max-width:100% !important;
}

/* Slightly tighter text stack to compensate */
#sets #setDetail.set-detail--story .set-component-card span,
#sets #setDetail.set-detail--story .set-composition-choice .set-composition-category{
  margin-bottom:6px !important;
}

#sets #setDetail.set-detail--story .set-component-card strong,
#sets #setDetail.set-detail--story .set-composition-choice strong,
#sets #setDetail.set-detail--story .set-composition-choice b{
  margin-top:2px !important;
}

#sets #setDetail.set-detail--story .set-component-card small,
#sets #setDetail.set-detail--story .set-composition-choice small:last-child,
#sets #setDetail.set-detail--story .set-composition-choice .set-composition-meta{
  margin-top:6px !important;
}

/* Mobile */
@media(max-width:900px){
  #sets #setDetail.set-detail--story .set-component-card img,
  #sets #setDetail.set-detail--story .set-composition-choice img{
    height:220px !important;
    min-height:220px !important;
  }
}

@media(max-width:560px){
  #sets #setDetail.set-detail--story .set-component-card img,
  #sets #setDetail.set-detail--story .set-composition-choice img{
    height:205px !important;
    min-height:205px !important;
  }
}
/* End Patch 82.9.88.6.198.3 */

/* Patch 82.9.88.6.198.4 - Ready Set Positions Heading Deduplicate And Image Contain */

/* Hide duplicate small uppercase label above the main "Позиції комплекту" heading */
#sets #setDetail.set-detail--story .set-components-head .eyebrow,
#sets #setDetail.set-detail--story .set-story-components-head .eyebrow,
#sets #setDetail.set-detail--story .set-position-head .eyebrow,
#sets #setDetail.set-detail--story .set-components-head > span:first-child,
#sets #setDetail.set-detail--story .set-story-components-head > span:first-child,
#sets #setDetail.set-detail--story .set-position-head > span:first-child{
  display:none !important;
}

/* Keep only the main title visually clean */
#sets #setDetail.set-detail--story .set-components-head,
#sets #setDetail.set-detail--story .set-story-components-head,
#sets #setDetail.set-detail--story .set-position-head{
  margin-top:22px !important;
}

/* Scale images inside position cards instead of cropping them */
#sets #setDetail.set-detail--story .set-component-card img,
#sets #setDetail.set-detail--story .set-composition-choice img{
  object-fit:contain !important;
  object-position:center center !important;
  background:#f4f0ea !important;
}

/* Give contained images a clean premium surface */
#sets #setDetail.set-detail--story .set-component-card,
#sets #setDetail.set-detail--story .set-composition-choice{
  background:#fffdf9 !important;
}

/* Keep image area large, but avoid visual clipping */
#sets #setDetail.set-detail--story .set-component-card img,
#sets #setDetail.set-detail--story .set-composition-choice img{
  height:238px !important;
  min-height:238px !important;
  padding:0 !important;
}

/* Mobile */
@media(max-width:900px){
  #sets #setDetail.set-detail--story .set-component-card img,
  #sets #setDetail.set-detail--story .set-composition-choice img{
    height:220px !important;
    min-height:220px !important;
  }
}

@media(max-width:560px){
  #sets #setDetail.set-detail--story .set-component-card img,
  #sets #setDetail.set-detail--story .set-composition-choice img{
    height:205px !important;
    min-height:205px !important;
  }
}
/* End Patch 82.9.88.6.198.4 */

/* Patch 82.9.88.6.198.5 - Ready Set Adaptive Position Images And Single Heading */

/* Hide duplicate upper label above the main positions heading */
#sets #setDetail.set-detail--story .set-composition-panel-head .eyebrow,
#sets #setDetail.set-detail--story .set-composition-panel-head > span:first-child{
  display:none !important;
}

/* Keep the heading block clean and centered */
#sets #setDetail.set-detail--story .set-composition-panel-head{
  margin-top:22px !important;
  text-align:center !important;
}

#sets #setDetail.set-detail--story .set-composition-panel-head strong{
  display:block !important;
}

/* Ready-set position cards: allow card/media area to adapt to image proportions */
#sets #setDetail.set-detail--story .set-composition-list{
  align-items:start !important;
}

#sets #setDetail.set-detail--story .set-component-card,
#sets #setDetail.set-detail--story .set-composition-choice{
  min-height:0 !important;
  height:auto !important;
  align-self:start !important;
  grid-template-rows:auto auto !important;
}

/* Images: scale by real proportion, not crop */
#sets #setDetail.set-detail--story .set-component-card img,
#sets #setDetail.set-detail--story .set-composition-choice img{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:285px !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#f4f0ea !important;
  border-radius:17px !important;
  display:block !important;
}

/* Give contained horizontal/vertical images a premium clean frame */
#sets #setDetail.set-detail--story .set-component-card img,
#sets #setDetail.set-detail--story .set-composition-choice img{
  box-shadow:inset 0 0 0 1px rgba(64,54,43,.06) !important;
}

/* Text block stays compact under the adaptive image */
#sets #setDetail.set-detail--story .set-component-card > div,
#sets #setDetail.set-detail--story .set-composition-choice > div{
  padding-top:16px !important;
}

/* Mobile: preserve full image, avoid excessive height */
@media(max-width:900px){
  #sets #setDetail.set-detail--story .set-component-card img,
  #sets #setDetail.set-detail--story .set-composition-choice img{
    max-height:300px !important;
  }
}

@media(max-width:560px){
  #sets #setDetail.set-detail--story .set-component-card img,
  #sets #setDetail.set-detail--story .set-composition-choice img{
    max-height:260px !important;
  }
}
/* End Patch 82.9.88.6.198.5 */

/* Patch 82.9.88.6.198.6 - Ready Set Real Composition Cards Adaptive Images */

/* Hide duplicate uppercase label in the real ready-set composition block */
#sets #setDetail .set-composition-panel-head .eyebrow,
#sets #setDetail .set-composition-panel-head > span,
#sets #setDetail .set-composition-panel-head > small,
#sets #setDetail .set-composition-panel-head::before{
  display:none !important;
  content:none !important;
}

/* Keep only the main heading */
#sets #setDetail .set-composition-panel-head{
  text-align:center !important;
  margin:26px auto 14px !important;
}

#sets #setDetail .set-composition-panel-head strong{
  display:block !important;
  font-family:var(--serif) !important;
  font-size:clamp(34px,3.2vw,52px) !important;
  line-height:1.05 !important;
  font-weight:600 !important;
  letter-spacing:-.025em !important;
  color:var(--text) !important;
}

/* Only ready-set detail composition cards */
#sets #setDetail .set-composition-list{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:28px !important;
  align-items:start !important;
}

/* Card should adapt to image height, not force a fixed media window */
#sets #setDetail .set-composition-list .set-composition-choice{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  align-self:start !important;
  display:flex !important;
  flex-direction:column !important;
  padding:14px !important;
  overflow:hidden !important;
}

/* Remove any fixed image frame behavior */
#sets #setDetail .set-composition-list .set-composition-choice > img{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  flex:0 0 auto !important;
  border-radius:17px !important;
  background:#f4f0ea !important;
}

/* Make sure old fixed image heights do not survive from earlier patches */
#sets #setDetail .set-composition-list .set-composition-choice > img[width],
#sets #setDetail .set-composition-list .set-composition-choice > img[height]{
  height:auto !important;
}

/* Text naturally follows image */
#sets #setDetail .set-composition-list .set-composition-choice > div{
  width:100% !important;
  padding:16px 6px 4px !important;
  flex:0 0 auto !important;
}

/* No per-card CTA in this block */
#sets #setDetail .set-composition-list .set-composition-choice .btn,
#sets #setDetail .set-composition-list .set-composition-choice button{
  display:none !important;
}

/* Mobile */
@media(max-width:900px){
  #sets #setDetail .set-composition-list{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  #sets #setDetail .set-composition-list .set-composition-choice > img{
    width:100% !important;
    height:auto !important;
    max-height:none !important;
  }
}
/* End Patch 82.9.88.6.198.6 */

/* Patch 82.9.88.6.198.7 - Hide Ready Set Story Products Eyebrow */
#sets #setDetail.set-detail--story .set-story-products .set-story-section-head > .eyebrow{
  display:none !important;
}

/* tighten heading spacing after eyebrow removal */
#sets #setDetail.set-detail--story .set-story-products .set-story-section-head{
  gap:8px !important;
}
/* End Patch 82.9.88.6.198.7 */

/* Patch 82.9.88.6.198.8 - Ready Set Story Hero Mobile No Crop */
@media (max-width: 767px){
  #sets #setDetail.set-detail--story .set-story-cover,
  #sets #setDetail.set-detail--story .set-story-cover-image,
  #sets #setDetail.set-detail--story .set-cover-image-wrap{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
  }

  #sets #setDetail.set-detail--story .set-story-cover > img,
  #sets #setDetail.set-detail--story .set-story-cover img,
  #sets #setDetail.set-detail--story .set-story-cover-image img,
  #sets #setDetail.set-detail--story .set-cover-image-wrap img{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center center !important;
    display:block !important;
  }
}
/* End Patch 82.9.88.6.198.8 */

/* Patch 82.9.88.6.198.9 - Ready Set Story Hero Rounded Corners */
#sets #setDetail.set-detail--story .set-story-cover{
  border-radius:32px !important;
  overflow:hidden !important;
  background:#f6f3ee !important;
}

#sets #setDetail.set-detail--story .set-story-cover img,
#sets #setDetail.set-detail--story .set-story-cover picture,
#sets #setDetail.set-detail--story .set-story-cover .set-story-cover-image,
#sets #setDetail.set-detail--story .set-story-cover .set-cover-image-wrap{
  border-radius:32px !important;
}

@media (max-width: 767px){
  #sets #setDetail.set-detail--story .set-story-cover{
    border-radius:28px !important;
  }

  #sets #setDetail.set-detail--story .set-story-cover img,
  #sets #setDetail.set-detail--story .set-story-cover picture,
  #sets #setDetail.set-detail--story .set-story-cover .set-story-cover-image,
  #sets #setDetail.set-detail--story .set-story-cover .set-cover-image-wrap{
    border-radius:28px !important;
  }
}
/* End Patch 82.9.88.6.198.9 */

/* Patch 82.9.88.6.198.10 - Ready Set Mobile Price Card Compact */
@media (max-width: 767px){
  #sets #setDetail.set-detail--story .set-price-card{
    min-height:0 !important;
    padding:26px 22px 24px !important;
    gap:14px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card span{
    margin-bottom:0 !important;
  }

  #sets #setDetail.set-detail--story .set-price-card strong{
    margin:2px 0 0 !important;
    line-height:1.02 !important;
  }

  #sets #setDetail.set-detail--story .set-price-card small{
    margin-top:0 !important;
    line-height:1.42 !important;
  }
}
/* End Patch 82.9.88.6.198.10 */

/* Patch 82.9.88.6.198.11 - Ready Set Mobile Price Card Smaller */
@media (max-width: 767px){
  #sets #setDetail.set-detail--story .set-price-card{
    padding:20px 20px 19px !important;
    gap:9px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card::before{
    top:20px !important;
    left:20px !important;
    width:86px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card span{
    margin:0 !important;
    line-height:1.2 !important;
  }

  #sets #setDetail.set-detail--story .set-price-card strong{
    margin:0 !important;
    line-height:.96 !important;
  }

  #sets #setDetail.set-detail--story .set-price-card small{
    margin:0 !important;
    line-height:1.32 !important;
  }
}
/* End Patch 82.9.88.6.198.11 */

/* Patch 82.9.88.6.198.12 - Ready Set Mobile Price Label Lower */
@media (max-width: 767px){
  #sets #setDetail.set-detail--story .set-price-card span{
    padding-top:6px !important;
  }
}
/* End Patch 82.9.88.6.198.12 */

/* Patch 82.9.88.6.198.13 - Ready Set Mobile Specs Two Columns */
@media (max-width: 767px){
  #sets #setDetail.set-detail--story .set-spec-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div{
    min-height:116px !important;
    padding:18px 14px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div small{
    font-size:11px !important;
    letter-spacing:.16em !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div b{
    font-size:16px !important;
    line-height:1.22 !important;
  }

  /* Long delivery text stays readable */
  #sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(5),
  #sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(6){
    grid-column:auto !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(5):last-child,
  #sets #setDetail.set-detail--story .set-spec-grid > div:nth-child(6):last-child{
    grid-column:1 / -1 !important;
  }
}

@media (max-width: 380px){
  #sets #setDetail.set-detail--story .set-spec-grid{
    gap:10px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div{
    padding:16px 12px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div b{
    font-size:15px !important;
  }
}
/* End Patch 82.9.88.6.198.13 */

/* Patch 82.9.88.6.198.14 - Ready Set Mobile Specs Centered Text */
@media (max-width: 767px){
  #sets #setDetail.set-detail--story .set-spec-grid > div{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:8px !important;
    min-height:126px !important;
    padding:16px 10px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div::before{
    position:static !important;
    flex:0 0 auto !important;
    margin:0 0 2px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div small{
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
    white-space:normal !important;
    text-align:center !important;
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:.13em !important;
    margin:0 !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div b{
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
    text-align:center !important;
    font-size:15px !important;
    line-height:1.18 !important;
    margin:0 !important;
  }

  /* Delivery remains more readable on full width */
  #sets #setDetail.set-detail--story .set-spec-grid > div:last-child{
    grid-column:1 / -1 !important;
    min-height:104px !important;
    padding:18px 18px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div:last-child b{
    font-size:16px !important;
    line-height:1.24 !important;
  }
}
/* End Patch 82.9.88.6.198.14 */

/* Patch 82.9.88.6.198.15 - Ready Set Mobile Specs Watermark Icons Compact */
@media (max-width: 767px){

  #sets #setDetail.set-detail--story .set-spec-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div{
    position:relative !important;
    overflow:hidden !important;
    min-height:88px !important;
    padding:14px 14px 14px 14px !important;
    border-radius:24px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:flex-start !important;
    gap:6px !important;
  }

  /* текст поверх watermark */
  #sets #setDetail.set-detail--story .set-spec-grid > div > *{
    position:relative !important;
    z-index:2 !important;
  }

  /* watermark icon */
  #sets #setDetail.set-detail--story .set-spec-grid > div::before{
    position:absolute !important;
    top:50% !important;
    right:12px !important;
    left:auto !important;
    transform:translateY(-50%) !important;
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    min-height:54px !important;
    margin:0 !important;
    border:none !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    opacity:.10 !important;
    z-index:1 !important;
    background-position:center !important;
    background-repeat:no-repeat !important;
    background-size:contain !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div small{
    margin:0 !important;
    max-width:calc(100% - 52px) !important;
    font-size:10px !important;
    line-height:1.1 !important;
    letter-spacing:.14em !important;
    text-transform:uppercase !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div b{
    margin:0 !important;
    max-width:calc(100% - 52px) !important;
    font-size:14px !important;
    line-height:1.15 !important;
    font-weight:700 !important;
  }

  /* доставка на всю ширину */
  #sets #setDetail.set-detail--story .set-spec-grid > div:last-child{
    grid-column:1 / -1 !important;
    min-height:78px !important;
    padding:14px 16px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div:last-child::before{
    width:52px !important;
    height:52px !important;
    right:14px !important;
  }

  #sets #setDetail.set-detail--story .set-spec-grid > div:last-child b,
  #sets #setDetail.set-detail--story .set-spec-grid > div:last-child small{
    max-width:calc(100% - 56px) !important;
  }
}
/* End Patch 82.9.88.6.198.15 */

/* Patch 82.9.88.6.198.17 - Ready Set Hide Specs And Clickable Product Cards */
#sets #setDetail.set-detail--story .set-spec-grid{
  display:none !important;
}

#sets #setDetail.set-detail--story [data-ready-set-product-card="1"],
#sets #setDetail.set-detail--story .set-story-products .set-composition-choice,
#sets #setDetail.set-detail--story .set-story-products .set-component-card,
#sets #setDetail.set-detail--story .set-composition-list .set-composition-choice,
#sets #setDetail.set-detail--story .set-composition-list .set-component-card{
  cursor:pointer !important;
}

#sets #setDetail.set-detail--story [data-ready-set-product-card="1"]:focus-visible{
  outline:2px solid rgba(103,116,95,.45) !important;
  outline-offset:4px !important;
}

@media (hover:hover){
  #sets #setDetail.set-detail--story [data-ready-set-product-card="1"]{
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }

  #sets #setDetail.set-detail--story [data-ready-set-product-card="1"]:hover{
    transform:translateY(-2px) !important;
    border-color:rgba(103,116,95,.24) !important;
    box-shadow:0 22px 54px rgba(54,48,40,.10) !important;
  }
}

/* tighter flow after removing specs */
#sets #setDetail.set-detail--story .set-price-card + .set-change-note,
#sets #setDetail.set-detail--story .set-price-card + .detail-actions,
#sets #setDetail.set-detail--story .set-price-card + .set-story-help-cta{
  margin-top:18px !important;
}
/* End Patch 82.9.88.6.198.17 */

/* Patch 82.9.88.6.198.19 - Ready Set Manager CTA Instead Of Buttons */
#sets #setDetail.set-detail--story .set-story-manager-cta{
  width:100% !important;
  max-width:920px !important;
  margin:34px auto 0 !important;
  padding:18px 20px !important;
  border:1px solid rgba(92,82,68,.14) !important;
  border-radius:28px !important;
  background:rgba(255,253,249,.86) !important;
  box-shadow:0 18px 42px rgba(54,48,40,.08) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
  display:block !important;
  color:rgba(54,50,45,.62) !important;
  font-size:18px !important;
  line-height:1.28 !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link{
  min-height:58px !important;
  padding:0 26px !important;
  border-radius:999px !important;
  background:#fffdf9 !important;
  border:1px solid rgba(92,82,68,.14) !important;
  box-shadow:0 12px 32px rgba(54,48,40,.07) !important;
  color:#66745f !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
  text-decoration:none !important;
  font-weight:800 !important;
  font-size:18px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link span{
  font-size:24px !important;
  line-height:1 !important;
  transform:translateY(-1px) !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story .set-story-manager-cta{
    margin:26px auto 0 !important;
    padding:14px 14px 14px 18px !important;
    border-radius:24px !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:12px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
    font-size:15px !important;
    line-height:1.28 !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    min-height:48px !important;
    padding:0 18px !important;
    font-size:14px !important;
    gap:14px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link span{
    font-size:20px !important;
  }
}

@media(max-width:380px){
  #sets #setDetail.set-detail--story .set-story-manager-cta{
    padding:13px 12px 13px 15px !important;
    gap:10px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
    font-size:14px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    min-height:46px !important;
    padding:0 14px !important;
    font-size:13px !important;
  }
}
/* End Patch 82.9.88.6.198.19 */

/* Patch 82.9.88.6.198.20 - Ready Set Manager CTA Compact Spacing */
#sets #setDetail.set-detail--story .set-story-manager-cta{
  margin:28px auto 34px !important;
  padding:14px 16px 14px 18px !important;
  min-height:0 !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
  font-size:15px !important;
  line-height:1.22 !important;
  font-weight:800 !important;
  max-width:190px !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link{
  min-height:48px !important;
  padding:0 22px !important;
  font-size:16px !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story .set-story-manager-cta{
    margin:24px auto 28px !important;
    padding:13px 13px 13px 15px !important;
    grid-template-columns:minmax(105px,.7fr) minmax(0,1.3fr) !important;
    gap:10px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
    font-size:13px !important;
    line-height:1.2 !important;
    max-width:130px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    min-height:44px !important;
    padding:0 14px !important;
    font-size:13.5px !important;
    gap:10px !important;
    white-space:nowrap !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link span{
    font-size:18px !important;
  }
}

@media(max-width:380px){
  #sets #setDetail.set-detail--story .set-story-manager-cta{
    grid-template-columns:1fr !important;
    gap:10px !important;
    text-align:center !important;
    padding:14px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
    max-width:none !important;
    font-size:13px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    width:100% !important;
    font-size:13px !important;
  }
}
/* End Patch 82.9.88.6.198.20 */

/* Patch 82.9.88.6.198.21 - Ready Set Manager CTA Product Card Layout */
#sets #setDetail.set-detail--story .set-story-manager-cta{
  width:100% !important;
  max-width:100% !important;
  margin:28px auto 34px !important;
  padding:18px 20px !important;
  border:1px solid rgba(92,82,68,.14) !important;
  border-radius:26px !important;
  background:rgba(255,253,249,.86) !important;
  box-shadow:0 18px 42px rgba(54,48,40,.08) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  gap:14px !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy{
  width:100% !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  color:rgba(54,50,45,.62) !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
  white-space:normal !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy br{
  display:none !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link{
  width:100% !important;
  min-height:54px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  background:#fffdf9 !important;
  border:1px solid rgba(92,82,68,.14) !important;
  box-shadow:0 12px 32px rgba(54,48,40,.07) !important;
  color:#66745f !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
  text-decoration:none !important;
  font-weight:800 !important;
  font-size:16px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link span{
  font-size:22px !important;
  line-height:1 !important;
  transform:translateY(-1px) !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story .set-story-manager-cta{
    margin:24px auto 30px !important;
    padding:17px 18px !important;
    border-radius:24px !important;
    gap:13px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
    font-size:15px !important;
    line-height:1.25 !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    min-height:50px !important;
    padding:0 18px !important;
    font-size:14.5px !important;
    gap:16px !important;
  }
}

@media(max-width:380px){
  #sets #setDetail.set-detail--story .set-story-manager-cta{
    padding:16px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
    font-size:14.5px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    min-height:48px !important;
    font-size:13.5px !important;
    gap:12px !important;
  }
}
/* End Patch 82.9.88.6.198.21 */

/* Patch 82.9.88.6.198.22 - Ready Set Manager CTA Title Centered Small */
#sets #setDetail.set-detail--story .set-story-manager-cta-copy{
  width:100% !important;
  text-align:center !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
  text-align:center !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  color:rgba(54,50,45,.58) !important;
  letter-spacing:-.01em !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy br{
  display:block !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
    font-size:13.5px !important;
    line-height:1.22 !important;
  }
}

@media(max-width:380px){
  #sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
    font-size:13px !important;
  }
}
/* End Patch 82.9.88.6.198.22 */

/* Patch 82.9.88.6.198.23 - Ready Set Manager CTA Soft Animation */
#sets #setDetail.set-detail--story .set-story-manager-cta{
  animation:treeartReadySetCtaGlow 4.8s ease-in-out infinite !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link span{
  animation:treeartReadySetCtaArrow 1.8s ease-in-out infinite !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

@media(hover:hover){
  #sets #setDetail.set-detail--story .set-story-manager-cta-link:hover{
    transform:translateY(-1px) !important;
    border-color:rgba(103,116,95,.26) !important;
    box-shadow:0 16px 36px rgba(54,48,40,.10) !important;
  }
}

@keyframes treeartReadySetCtaGlow{
  0%,100%{
    box-shadow:0 18px 42px rgba(54,48,40,.08) !important;
  }
  50%{
    box-shadow:0 22px 52px rgba(103,116,95,.13) !important;
  }
}

@keyframes treeartReadySetCtaArrow{
  0%,100%{
    transform:translate(0,-1px) !important;
    opacity:.82 !important;
  }
  50%{
    transform:translate(5px,-1px) !important;
    opacity:1 !important;
  }
}

@media(prefers-reduced-motion:reduce){
  #sets #setDetail.set-detail--story .set-story-manager-cta,
  #sets #setDetail.set-detail--story .set-story-manager-cta-link span{
    animation:none !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    transition:none !important;
  }
}
/* End Patch 82.9.88.6.198.23 */

/* Patch 82.9.88.6.198.24 - Ready Set Consult Modal Styles */
body.ready-set-consult-open{
  overflow:hidden !important;
}

.ready-set-consult-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:9999 !important;
  display:grid !important;
  place-items:center !important;
  padding:22px !important;
}

.ready-set-consult-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(32,29,25,.42) !important;
  backdrop-filter:blur(10px) !important;
}

.ready-set-consult-dialog{
  position:relative !important;
  width:min(760px,100%) !important;
  max-height:calc(100vh - 44px) !important;
  overflow:auto !important;
  border-radius:32px !important;
  background:#fffdf9 !important;
  border:1px solid rgba(92,82,68,.16) !important;
  box-shadow:0 34px 90px rgba(32,29,25,.24) !important;
  padding:28px !important;
}

.ready-set-consult-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  width:42px !important;
  height:42px !important;
  border-radius:999px !important;
  border:1px solid rgba(92,82,68,.14) !important;
  background:#fffdf9 !important;
  font-size:26px !important;
  line-height:1 !important;
  cursor:pointer !important;
}

.ready-set-consult-head{
  padding-right:52px !important;
  margin-bottom:18px !important;
}

.ready-set-consult-head h3{
  margin:6px 0 8px !important;
  font-family:var(--serif) !important;
  font-size:clamp(30px,4vw,46px) !important;
  line-height:1.04 !important;
  color:var(--text) !important;
}

.ready-set-consult-head p{
  margin:0 !important;
  color:var(--muted) !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

.ready-set-consult-set{
  border-radius:22px !important;
  background:rgba(246,243,238,.72) !important;
  border:1px solid rgba(92,82,68,.10) !important;
  padding:14px 16px !important;
  margin-bottom:14px !important;
}

.ready-set-consult-set small,
.ready-set-consult-form label span{
  display:block !important;
  color:rgba(54,50,45,.54) !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  margin-bottom:6px !important;
}

.ready-set-consult-set strong{
  display:block !important;
  font-size:18px !important;
  line-height:1.25 !important;
}

.ready-set-consult-items{
  display:grid !important;
  gap:10px !important;
  margin:0 0 18px !important;
}

.ready-set-consult-item{
  position:relative !important;
  display:grid !important;
  grid-template-columns:auto 68px minmax(0,1fr) !important;
  gap:12px !important;
  align-items:center !important;
  border-radius:22px !important;
  border:1px solid rgba(92,82,68,.10) !important;
  background:#fff !important;
  padding:10px 12px !important;
}

.ready-set-consult-item-num{
  width:34px !important;
  height:34px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:rgba(103,116,95,.10) !important;
  color:#66745f !important;
  font-size:12px !important;
  font-weight:800 !important;
}

.ready-set-consult-item img,
.ready-set-consult-item-img{
  width:68px !important;
  height:54px !important;
  border-radius:14px !important;
  object-fit:cover !important;
  background:#f4f0ea !important;
}

.ready-set-consult-item small{
  display:block !important;
  color:#66745f !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.10em !important;
}

.ready-set-consult-item b{
  display:block !important;
  font-size:15px !important;
  line-height:1.2 !important;
  margin:2px 0 !important;
}

.ready-set-consult-item em{
  display:block !important;
  color:var(--muted) !important;
  font-size:12px !important;
  line-height:1.2 !important;
  font-style:normal !important;
}

.ready-set-consult-form{
  display:grid !important;
  gap:14px !important;
}

.ready-set-consult-fields{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
}

.ready-set-consult-form .input{
  width:100% !important;
  min-height:48px !important;
  border-radius:18px !important;
  border:1px solid rgba(92,82,68,.16) !important;
  background:#fff !important;
  padding:12px 14px !important;
  font:inherit !important;
}

.ready-set-consult-form textarea.input{
  min-height:112px !important;
  resize:vertical !important;
}

.ready-set-consult-feedback{
  color:#8b3e2f !important;
  font-size:13px !important;
  min-height:18px !important;
}

.ready-set-consult-submit{
  width:100% !important;
}

@media(max-width:767px){
  .ready-set-consult-modal{
    padding:12px !important;
    align-items:end !important;
  }

  .ready-set-consult-dialog{
    max-height:calc(100vh - 24px) !important;
    border-radius:28px 28px 0 0 !important;
    padding:24px 16px 18px !important;
  }

  .ready-set-consult-head h3{
    font-size:32px !important;
  }

  .ready-set-consult-fields{
    grid-template-columns:1fr !important;
  }

  .ready-set-consult-item{
    grid-template-columns:auto 58px minmax(0,1fr) !important;
    gap:10px !important;
  }

  .ready-set-consult-item img,
  .ready-set-consult-item-img{
    width:58px !important;
    height:48px !important;
  }
}
/* End Patch 82.9.88.6.198.24 */

/* Patch Ready Set Variant 2 Correct Layout */
#sets #setDetail.set-detail--story .set-story-summary{
  width:min(100%, var(--set-story-wide, 1040px)) !important;
  max-width:var(--set-story-wide, 1040px) !important;
  margin:34px auto 42px !important;
  display:block !important;
}

#sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2{
  width:100% !important;
  max-width:100% !important;
  min-height:auto !important;
  margin:0 !important;
  padding:30px 38px !important;
  box-sizing:border-box !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(300px,.72fr) !important;
  gap:34px !important;
  align-items:stretch !important;
  overflow:hidden !important;
}

#sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2::before{
  top:25px !important;
  left:30px !important;
  width:92px !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-list{
  min-width:0 !important;
  display:grid !important;
  gap:13px !important;
  align-content:start !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-list h3{
  margin:0 0 8px !important;
  padding:0 !important;
  font-family:var(--font-serif, Georgia, serif) !important;
  font-size:clamp(26px,2.5vw,36px) !important;
  line-height:1.05 !important;
  color:var(--green,#65765f) !important;
  font-weight:500 !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-row{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:58px minmax(0,1fr) auto !important;
  gap:14px !important;
  align-items:center !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-thumb{
  width:58px !important;
  height:44px !important;
  min-width:58px !important;
  border-radius:10px !important;
  overflow:hidden !important;
  background:rgba(96,112,88,.08) !important;
  border:1px solid rgba(96,112,88,.14) !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-name{
  min-width:0 !important;
  color:rgba(35,39,34,.84) !important;
  font-size:16px !important;
  font-weight:650 !important;
  line-height:1.25 !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-price{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
  color:rgba(35,39,34,.86) !important;
  font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
  font-size:16px !important;
  line-height:1.2 !important;
  font-weight:750 !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-total{
  min-width:0 !important;
  border-left:1px solid rgba(96,112,88,.18) !important;
  padding-left:34px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:10px !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-total span{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:rgba(35,39,34,.78) !important;
  font-family:var(--font-serif, Georgia, serif) !important;
  font-size:clamp(20px,2vw,27px) !important;
  line-height:1.1 !important;
  font-weight:500 !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-total strong{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--green,#65765f) !important;
  font-family:var(--font-serif, Georgia, serif) !important;
  font-size:clamp(36px,4.1vw,54px) !important;
  line-height:1 !important;
  font-weight:500 !important;
  white-space:nowrap !important;
}

#sets #setDetail.set-detail--story .set-price-breakdown-total p{
  max-width:380px !important;
  margin:4px 0 0 !important;
  color:rgba(35,39,34,.55) !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

#sets #setDetail.set-detail--story .set-composition-choice-price{
  margin:8px 0 0 !important;
  padding:0 !important;
  color:var(--green,#65765f) !important;
  font-weight:750 !important;
  font-size:15px !important;
  line-height:1.2 !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link{
  min-width:min(100%, 520px) !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story .set-story-summary{
    margin:26px auto 34px !important;
  }

  #sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2{
    grid-template-columns:1fr !important;
    padding:24px 20px !important;
    gap:22px !important;
  }

  #sets #setDetail.set-detail--story .set-price-breakdown-total{
    border-left:0 !important;
    border-top:1px solid rgba(96,112,88,.18) !important;
    padding-left:0 !important;
    padding-top:22px !important;
  }

  #sets #setDetail.set-detail--story .set-price-breakdown-row{
    grid-template-columns:50px minmax(0,1fr) !important;
    gap:12px !important;
  }

  #sets #setDetail.set-detail--story .set-price-breakdown-thumb{
    width:50px !important;
    height:40px !important;
    min-width:50px !important;
  }

  #sets #setDetail.set-detail--story .set-price-breakdown-price{
    grid-column:2 !important;
    font-size:15px !important;
  }

  #sets #setDetail.set-detail--story .set-price-breakdown-total strong{
    white-space:normal !important;
  }
}
/* End Patch Ready Set Variant 2 Correct Layout */

/* Patch Ready Set Variant 2 Font Isolation */

/*
 * Isolate nested breakdown typography from legacy:
 * .set-price-card span / strong rules.
 */
#sets #setDetail.set-detail--story
.set-price-card.set-price-card--variant2
.set-price-breakdown-list h3{
  margin:0 0 12px !important;
  padding:0 !important;
  font-family:var(--font-serif, Georgia, serif) !important;
  font-size:34px !important;
  font-style:normal !important;
  font-weight:500 !important;
  line-height:1.05 !important;
  letter-spacing:-.02em !important;
  text-transform:none !important;
  color:#66745f !important;
}

#sets #setDetail.set-detail--story
.set-price-card.set-price-card--variant2
.set-price-breakdown-row{
  grid-template-columns:58px minmax(220px,1fr) max-content !important;
  column-gap:16px !important;
  row-gap:0 !important;
  align-items:center !important;
  min-height:54px !important;
}

#sets #setDetail.set-detail--story
.set-price-card.set-price-card--variant2
.set-price-breakdown-name{
  all:unset !important;
  display:block !important;
  min-width:0 !important;
  font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
  font-size:16px !important;
  font-style:normal !important;
  font-weight:600 !important;
  line-height:1.25 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  color:#383a36 !important;
}

#sets #setDetail.set-detail--story
.set-price-card.set-price-card--variant2
.set-price-breakdown-price{
  all:unset !important;
  display:block !important;
  justify-self:end !important;
  min-width:126px !important;
  font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
  font-size:16px !important;
  font-style:normal !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  white-space:nowrap !important;
  color:#383a36 !important;
}

#sets #setDetail.set-detail--story
.set-price-card.set-price-card--variant2
.set-price-breakdown-total > span{
  all:unset !important;
  display:block !important;
  font-family:var(--font-serif, Georgia, serif) !important;
  font-size:26px !important;
  font-style:normal !important;
  font-weight:500 !important;
  line-height:1.1 !important;
  letter-spacing:-.01em !important;
  text-transform:none !important;
  color:#343630 !important;
}

#sets #setDetail.set-detail--story
.set-price-card.set-price-card--variant2
.set-price-breakdown-total > strong{
  all:unset !important;
  display:block !important;
  margin:10px 0 0 !important;
  font-family:var(--font-serif, Georgia, serif) !important;
  font-size:48px !important;
  font-style:normal !important;
  font-weight:500 !important;
  line-height:1 !important;
  letter-spacing:-.025em !important;
  text-transform:none !important;
  white-space:nowrap !important;
  color:#66745f !important;
}

#sets #setDetail.set-detail--story
.set-price-card.set-price-card--variant2
.set-price-breakdown-total > p{
  margin:16px 0 0 !important;
  max-width:360px !important;
  font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
  font-size:14px !important;
  font-style:normal !important;
  font-weight:400 !important;
  line-height:1.45 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:rgba(52,54,48,.52) !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story
  .set-price-card.set-price-card--variant2
  .set-price-breakdown-list h3{
    font-size:28px !important;
  }

  #sets #setDetail.set-detail--story
  .set-price-card.set-price-card--variant2
  .set-price-breakdown-row{
    grid-template-columns:50px minmax(0,1fr) !important;
    row-gap:5px !important;
  }

  #sets #setDetail.set-detail--story
  .set-price-card.set-price-card--variant2
  .set-price-breakdown-price{
    grid-column:2 !important;
    justify-self:start !important;
    min-width:0 !important;
    font-size:15px !important;
  }

  #sets #setDetail.set-detail--story
  .set-price-card.set-price-card--variant2
  .set-price-breakdown-total > strong{
    font-size:40px !important;
    white-space:normal !important;
  }
}

/* End Patch Ready Set Variant 2 Font Isolation */

/* Patch Ready Set CTA Request Copy */
#sets #setDetail.set-detail--story .set-story-manager-cta-copy{
  min-width:0 !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy small{
  display:block !important;
  max-width:520px !important;
  margin:6px 0 0 !important;
  color:rgba(54,50,45,.52) !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1.36 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link{
  min-width:min(100%, 300px) !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story .set-story-manager-cta{
    grid-template-columns:1fr !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-copy{
    text-align:center !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-copy small{
    max-width:100% !important;
    margin-top:5px !important;
    font-size:12px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    width:100% !important;
  }
}
/* End Patch Ready Set CTA Request Copy */

/* Patch Ready Set CTA Green Button */
#sets #setDetail.set-detail--story .set-story-manager-cta{
  text-align:center !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy{
  text-align:center !important;
  justify-self:center !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy small{
  max-width:100% !important;
  margin:6px auto 0 !important;
  text-align:center !important;
  font-size:12px !important;
  line-height:1.34 !important;
  color:rgba(54,50,45,.48) !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link{
  background:#66745f !important;
  border-color:#66745f !important;
  color:#fffdf8 !important;
  box-shadow:0 16px 34px rgba(84,99,76,.22) !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link span{
  color:currentColor !important;
}

@media(hover:hover){
  #sets #setDetail.set-detail--story .set-story-manager-cta-link:hover{
    background:#5c6a55 !important;
    border-color:#5c6a55 !important;
    color:#fffdf8 !important;
    transform:translateY(-1px) !important;
    box-shadow:0 20px 42px rgba(84,99,76,.26) !important;
  }
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link:focus-visible{
  outline:2px solid rgba(102,116,95,.38) !important;
  outline-offset:4px !important;
}
/* End Patch Ready Set CTA Green Button */

/* Patch Ready Set CTA Spacing Align */
#sets #setDetail.set-detail--story .set-story-manager-cta{
  width:min(100%, var(--set-story-wide, 1040px)) !important;
  max-width:var(--set-story-wide, 1040px) !important;
  margin:22px auto 20px !important;
  padding:18px 22px !important;
  box-sizing:border-box !important;
  justify-self:center !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy{
  max-width:100% !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy b{
  margin:0 !important;
  text-align:center !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-copy small{
  max-width:620px !important;
  margin:5px auto 0 !important;
  text-align:center !important;
  font-size:12px !important;
  line-height:1.32 !important;
}

#sets #setDetail.set-detail--story .set-story-manager-cta-link{
  width:min(100%, 520px) !important;
  min-width:0 !important;
  margin:0 auto !important;
}

#sets #setDetail.set-detail--story .set-story{
  padding-bottom:18px !important;
}

#sets #setDetail.set-detail--story{
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}

#sets:has(#setDetail.set-detail--story:not([hidden])){
  padding-bottom:18px !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story .set-story-manager-cta{
    width:min(100%, calc(100vw - 28px)) !important;
    margin:18px auto 16px !important;
    padding:16px 14px !important;
  }

  #sets #setDetail.set-detail--story .set-story-manager-cta-link{
    width:100% !important;
  }

  #sets #setDetail.set-detail--story .set-story{
    padding-bottom:12px !important;
  }

  #sets:has(#setDetail.set-detail--story:not([hidden])){
    padding-bottom:12px !important;
  }
}
/* End Patch Ready Set CTA Spacing Align */

/* Patch Ready Set Mobile Price Stack */
#sets #setDetail.set-detail--story .set-price-mobile-stack{
  display:none !important;
}

@media(max-width:767px){
  #sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2{
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    padding:24px 18px 22px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  #sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2::before,
  #sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2::after{
    display:none !important;
    content:none !important;
  }

  #sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2 > .set-price-breakdown-list,
  #sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2 > .set-price-breakdown-total{
    display:none !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:18px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    position:relative !important;
    z-index:2 !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-title{
    display:block !important;
    margin:0 !important;
    padding:0 0 12px !important;
    border-bottom:1px solid rgba(93,105,88,.16) !important;
    color:#64715f !important;
    font-family:var(--font-serif, Georgia, serif) !important;
    font-size:29px !important;
    font-weight:600 !important;
    line-height:1 !important;
    letter-spacing:-.03em !important;
    text-align:left !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-total{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-total > span{
    display:block !important;
    margin:0 0 6px !important;
    color:#37342f !important;
    font-family:var(--font-serif, Georgia, serif) !important;
    font-size:18px !important;
    font-weight:600 !important;
    line-height:1.15 !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-total > strong{
    display:block !important;
    margin:0 !important;
    color:#64715f !important;
    font-family:var(--font-serif, Georgia, serif) !important;
    font-size:38px !important;
    font-weight:600 !important;
    line-height:.98 !important;
    letter-spacing:-.045em !important;
    white-space:normal !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-total > p{
    display:block !important;
    max-width:100% !important;
    margin:11px 0 0 !important;
    color:rgba(54,50,45,.54) !important;
    font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.35 !important;
    text-align:left !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-items{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:2px 0 0 !important;
    padding:16px 0 0 !important;
    border-top:1px solid rgba(93,105,88,.16) !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-row{
    display:grid !important;
    grid-template-columns:54px minmax(0,1fr) !important;
    grid-template-areas:
      "thumb name"
      "thumb price" !important;
    column-gap:12px !important;
    row-gap:4px !important;
    align-items:center !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:54px !important;
    margin:0 !important;
    padding:0 !important;
    position:static !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-thumb{
    grid-area:thumb !important;
    display:block !important;
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    border-radius:13px !important;
    overflow:hidden !important;
    background:rgba(96,112,88,.08) !important;
    border:1px solid rgba(96,112,88,.14) !important;
    position:static !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-thumb img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-name{
    grid-area:name !important;
    display:block !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    color:#37342f !important;
    font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.16 !important;
    letter-spacing:-.02em !important;
    text-align:left !important;
    white-space:normal !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
    position:static !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-price{
    grid-area:price !important;
    display:block !important;
    justify-self:start !important;
    align-self:start !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    color:#64715f !important;
    font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:-.01em !important;
    text-align:left !important;
    white-space:nowrap !important;
    position:static !important;
  }
}

@media(max-width:390px){
  #sets #setDetail.set-detail--story .set-price-card.set-price-card--variant2{
    padding:22px 16px 20px !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-title{
    font-size:27px !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-total > strong{
    font-size:34px !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-row{
    grid-template-columns:50px minmax(0,1fr) !important;
    min-height:50px !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-thumb{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-name{
    font-size:14px !important;
  }

  #sets #setDetail.set-detail--story .set-price-mobile-stack .set-price-breakdown-price{
    font-size:13px !important;
  }
}
/* End Patch Ready Set Mobile Price Stack */

/* Patch About Hero Scale Like Ready Sets */
#about.about-page{
  padding-top:clamp(28px,4.2vw,58px) !important;
}

#about .about-ready-hero-wrap{
  margin-bottom:clamp(54px,6vw,84px) !important;
}

#about .about-ready-hero{
  width:100% !important;
  margin:0 !important;
}

/* Keep About hero scaled by the same wrapped layout as Ready Sets. */
#about .about-ready-hero-visual{
  min-width:0 !important;
}

#about .about-ready-hero-visual img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
}

#about .about-ready-hero .sets-container-hero-copy h1{
  max-width:9.6em !important;
}

#about .about-ready-hero .sets-container-hero-copy p{
  max-width:46ch !important;
}

#about .about-ready-hero-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:24px !important;
}

#about .about-ready-hero-benefits{
  left:clamp(18px,3vw,34px) !important;
  right:clamp(18px,3vw,34px) !important;
  bottom:clamp(18px,3vw,32px) !important;
}

/* The old About hero is fully replaced by the Ready Sets hero structure. */
#about .about-hero,
#about .about-hero-shade,
#about .about-hero-inner,
#about .about-hero-meta{
  display:none !important;
}

@media(max-width:900px){
  #about.about-page{
    padding-top:24px !important;
  }

  #about .about-ready-hero-wrap{
    margin-bottom:44px !important;
  }

  #about .about-ready-hero .sets-container-hero-copy h1{
    max-width:100% !important;
  }

  #about .about-ready-hero-actions{
    width:100% !important;
  }

  #about .about-ready-hero-actions .btn{
    flex:1 1 210px !important;
  }

  #about .about-ready-hero-visual img{
    height:auto !important;
    aspect-ratio:16 / 11 !important;
  }
}

@media(max-width:640px){
  #about.about-page{
    padding-top:18px !important;
  }

  #about .about-ready-hero-wrap{
    margin-bottom:36px !important;
  }

  #about .about-ready-hero-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin-top:20px !important;
  }

  #about .about-ready-hero-actions .btn{
    width:100% !important;
  }

  #about .about-ready-hero-visual img{
    aspect-ratio:4 / 3 !important;
  }
}
/* End Patch About Hero Scale Like Ready Sets */

/* Patch About Hero Buttons Polish */
#about .about-ready-hero-actions{
  display:grid !important;
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr) !important;
  align-items:center !important;
  width:min(100%, 440px) !important;
  max-width:440px !important;
  gap:11px !important;
  margin-top:28px !important;
}

#about .about-ready-hero-actions .btn{
  width:100% !important;
  min-width:0 !important;
  min-height:54px !important;
  padding:0 20px !important;
  border-radius:15px !important;
  font-size:14px !important;
  font-weight:850 !important;
  line-height:1.08 !important;
  letter-spacing:-.01em !important;
  white-space:nowrap !important;
}

#about .about-ready-hero-actions .btn.primary{
  background:#66745f !important;
  border-color:#66745f !important;
  color:#fffdf8 !important;
  box-shadow:0 16px 34px rgba(84,99,76,.22) !important;
}

#about .about-ready-hero-actions .btn.primary:hover,
#about .about-ready-hero-actions .btn.primary:focus-visible{
  background:#5c6a55 !important;
  border-color:#5c6a55 !important;
  color:#fffdf8 !important;
  box-shadow:0 20px 42px rgba(84,99,76,.26) !important;
}

#about .about-ready-hero-actions .btn.secondary{
  background:rgba(255,253,249,.82) !important;
  border-color:rgba(64,54,43,.16) !important;
  color:#2f2e2a !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72), 0 10px 24px rgba(64,54,43,.035) !important;
}

#about .about-ready-hero-actions .btn.secondary:hover,
#about .about-ready-hero-actions .btn.secondary:focus-visible{
  border-color:rgba(101,116,93,.38) !important;
  color:#66745f !important;
  background:#fffdf8 !important;
}

@media(min-width:901px) and (max-width:1180px){
  #about .about-ready-hero-actions{
    width:min(100%, 410px) !important;
    max-width:410px !important;
    gap:10px !important;
  }

  #about .about-ready-hero-actions .btn{
    min-height:52px !important;
    padding:0 16px !important;
    font-size:13.5px !important;
  }
}

@media(max-width:900px){
  #about .about-ready-hero-actions{
    width:100% !important;
    max-width:520px !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
}

@media(max-width:560px){
  #about .about-ready-hero-actions{
    max-width:100% !important;
    grid-template-columns:1fr !important;
    margin-top:22px !important;
  }

  #about .about-ready-hero-actions .btn{
    min-height:52px !important;
  }
}
/* End Patch About Hero Buttons Polish */

/* Patch Ready Sets Hero Text Fit */
/*
  Ready Sets hero copy fit.
  Keeps the subtitle inside the left copy rail so the last words do not run
  into the hero image boundary on desktop widths.
*/
@media(min-width:901px){
  #sets .sets-container-hero-copy{
    min-width:0 !important;
    overflow:hidden !important;
    padding-right:clamp(20px,2.4vw,34px) !important;
    box-sizing:border-box !important;
  }

  #sets .sets-container-hero-copy p{
    max-width:34ch !important;
    font-size:15px !important;
    line-height:1.48 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }
}

@media(min-width:901px) and (max-width:1180px){
  #sets .sets-container-hero-copy p{
    max-width:31ch !important;
    font-size:14.5px !important;
    line-height:1.46 !important;
  }
}

@media(max-width:900px){
  #sets .sets-container-hero-copy{
    overflow:visible !important;
    padding-right:0 !important;
  }

  #sets .sets-container-hero-copy p{
    max-width:100% !important;
  }
}
/* End Patch Ready Sets Hero Text Fit */

/* Patch About Mobile Hero Flow Fix V2 */
/*
  Mobile-only safe correction for About hero.
  This replaces the too-aggressive Flow Fix v1. It does not make buttons tall
  cards; it only centers and sizes them as regular CTA buttons. Benefits stay
  as a normal block below the image and do not overlap the image.
*/
@media(max-width:640px){
  #about.about-page .about-ready-hero-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-items:center !important;
    align-items:center !important;
    width:100% !important;
    max-width:100% !important;
    margin:24px auto 0 !important;
    gap:12px !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }

  #about.about-page .about-ready-hero-actions .btn,
  #about.about-page .about-ready-hero-actions .btn.primary,
  #about.about-page .about-ready-hero-actions .btn.secondary,
  #about.about-page .about-ready-hero-actions a.btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    inline-size:min(86%, 420px) !important;
    width:min(86%, 420px) !important;
    max-width:420px !important;
    block-size:52px !important;
    height:52px !important;
    min-height:52px !important;
    max-height:52px !important;
    flex:0 0 52px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:0 20px !important;
    border-radius:18px !important;
    box-sizing:border-box !important;
    text-align:center !important;
    font-size:14.5px !important;
    font-weight:850 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
  }

  #about.about-page .about-ready-hero-visual{
    position:relative !important;
    overflow:hidden !important;
    margin-top:22px !important;
    border-radius:0 0 28px 28px !important;
  }

  #about.about-page .about-ready-hero-visual img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:16 / 10 !important;
    object-fit:cover !important;
    object-position:center center !important;
  }

  #about.about-page .about-ready-hero-benefits,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits{
    position:static !important;
    inset:auto !important;
    transform:none !important;
    translate:none !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    padding:16px 26px 22px !important;
    border-radius:0 0 28px 28px !important;
    background:#fffdf8 !important;
    color:#2f2e2a !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    border-top:1px solid rgba(76,69,59,.12) !important;
    box-sizing:border-box !important;
  }

  #about.about-page .about-ready-hero-benefits > div,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits > div{
    display:grid !important;
    grid-template-columns:36px minmax(0,1fr) !important;
    grid-template-areas:"icon title" "icon text" !important;
    column-gap:13px !important;
    row-gap:3px !important;
    align-items:start !important;
    min-width:0 !important;
    padding:13px 0 !important;
    border-left:0 !important;
    border-top:1px solid rgba(76,69,59,.13) !important;
    text-align:left !important;
  }

  #about.about-page .about-ready-hero-benefits > div:first-child,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits > div:first-child{
    border-top:0 !important;
    padding-top:0 !important;
  }

  #about.about-page .about-ready-hero-benefits > div:last-child,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits > div:last-child{
    padding-bottom:0 !important;
  }

  #about.about-page .about-ready-hero-benefits span,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits span{
    grid-area:icon !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    border-radius:50% !important;
    background:#66745f !important;
    color:#fffdf8 !important;
    font-size:17px !important;
    line-height:1 !important;
  }

  #about.about-page .about-ready-hero-benefits strong,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits strong{
    grid-area:title !important;
    display:block !important;
    margin:0 !important;
    color:#2f2e2a !important;
    font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
    font-size:16px !important;
    font-weight:850 !important;
    line-height:1.18 !important;
    letter-spacing:-.02em !important;
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    text-align:left !important;
  }

  #about.about-page .about-ready-hero-benefits small,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits small{
    grid-area:text !important;
    display:block !important;
    margin:0 !important;
    color:rgba(47,46,42,.62) !important;
    font-family:var(--font-sans, Inter, Arial, sans-serif) !important;
    font-size:14.5px !important;
    font-weight:500 !important;
    line-height:1.35 !important;
    letter-spacing:-.01em !important;
    text-align:left !important;
  }
}

@media(max-width:390px){
  #about.about-page .about-ready-hero-actions .btn,
  #about.about-page .about-ready-hero-actions .btn.primary,
  #about.about-page .about-ready-hero-actions .btn.secondary,
  #about.about-page .about-ready-hero-actions a.btn{
    inline-size:min(90%, 360px) !important;
    width:min(90%, 360px) !important;
    block-size:50px !important;
    height:50px !important;
    min-height:50px !important;
    max-height:50px !important;
    flex-basis:50px !important;
    font-size:14px !important;
  }

  #about.about-page .about-ready-hero-benefits,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits{
    padding:15px 22px 20px !important;
  }

  #about.about-page .about-ready-hero-benefits strong,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits strong{
    font-size:15.5px !important;
  }

  #about.about-page .about-ready-hero-benefits small,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits small{
    font-size:14px !important;
  }
}
/* End Patch About Mobile Hero Flow Fix V2 */

/* Patch About Mobile Benefits Weight */
@media(max-width:640px){
  #about.about-page .about-ready-hero-benefits strong,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits strong{
    font-weight:760 !important;
    font-size:15.6px !important;
    line-height:1.22 !important;
    letter-spacing:-.018em !important;
  }

  #about.about-page .about-ready-hero-benefits small,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits small{
    font-weight:420 !important;
    font-size:14.2px !important;
    line-height:1.38 !important;
    color:rgba(47,46,42,.58) !important;
  }
}

@media(max-width:390px){
  #about.about-page .about-ready-hero-benefits strong,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits strong{
    font-size:15.2px !important;
    font-weight:740 !important;
  }

  #about.about-page .about-ready-hero-benefits small,
  #about.about-page .sets-container-benefits.about-ready-hero-benefits small{
    font-size:13.8px !important;
    font-weight:400 !important;
  }
}
/* End Patch About Mobile Benefits Weight */
