/* Public layouts: let real content wrap without clipping it or hiding page overflow. */
body.feris-design:not(.admin-body) :is(.cart-items,.cart-item-main,.summary-card,.checkout-form,.account-home-grid,.account-shortcuts,.next-action,.account-order,.account-block,.auth-story,.account-entry,.pdp-visual,.pdp-information,.pdp-summary-inner,.product-info,.product-card,.product-buy) {
  min-width:0;
}
body.feris-design:not(.admin-body) :is(.cart-design-heading,.cart-design-actions,.section-heading,.payment-heading,.order-summary-actions) {
  flex-wrap:wrap;
}
body.feris-design:not(.admin-body) :is(.cart-design-heading,.section-heading,.payment-heading)>div {
  min-width:0;
}
body.feris-design:not(.admin-body) :is(.product-name,.pdp-summary h1,.pdp-information .prose,.cart-design-pieces,.account-order-items,.account-shortcuts,.summary-product,.studio-summary,.receipt-order-reference,.addition-payment summary) {
  overflow-wrap:anywhere;
}
body.feris-design:not(.admin-body) .summary-product>:is(a,span) {
  flex:1 1 0;
  min-width:0;
}
body.feris-design:not(.admin-body) .summary-product>strong {
  flex:0 0 auto;
  white-space:nowrap;
}
body.feris-design:not(.admin-body) .auth-experience {
  grid-template-columns:repeat(2,minmax(0,1fr));
}
body.feris-design:not(.admin-body) .cart-item {
  display:grid;
  grid-template-columns:88px minmax(0,1fr) auto;
  align-items:start;
  gap:14px;
}
body.feris-design:not(.admin-body) .cart-item>img {
  width:88px;
  height:88px;
  object-fit:contain;
}
body.feris-design:not(.admin-body) .cart-item>strong {
  min-width:0;
  width:auto;
  text-align:right;
  white-space:nowrap;
}
body.feris-design:not(.admin-body) .cart-item .qty-form {
  flex-wrap:wrap;
  align-items:center;
}
body.feris-design:not(.admin-body) :is(.cart-item .text-button,.cart-item .remove-button,.cart-design-actions .text-link,.account-order-bottom>a,.account-heading .button,.order-piece-variant>.button,.order-piece-details>summary,.addition-qr>summary) {
  min-height:44px;
  box-sizing:border-box;
}
body.feris-design:not(.admin-body) :is(.cart-item .text-button,.cart-item .remove-button,.cart-design-actions .text-link,.account-order-bottom>a) {
  display:inline-flex;
  align-items:center;
}
body.feris-design:not(.admin-body) .studio-grid {
  grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));
}
body.feris-design:not(.admin-body) :is(.ferito-dialog,.install-help,.feris-announcement) {
  box-sizing:border-box;
  overflow-wrap:anywhere;
}
body.feris-design:not(.admin-body) :is(.ferito-dialog,.install-help,.feris-announcement) .notice-close {
  min-width:44px;
  min-height:44px;
  flex:none;
}
body.feris-design:not(.admin-body) .ferito-coach {
  box-sizing:border-box;
  max-height:min(70dvh,460px);
  overflow:auto;
  overscroll-behavior:contain;
}
body.feris-design:not(.admin-body) .ferito-coach header strong {
  min-width:0;
  flex-wrap:wrap;
}
body.feris-design:not(.admin-body) .ferito-coach button {
  min-width:44px;
  min-height:44px;
}
@media(min-width:851px) {
  body.feris-design:not(.admin-body) .catalog-layout .products-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:850px) {
  body.feris-design:not(.admin-body) .feris-footer-grid a:not(.footer-logo),
  body.feris-design:not(.admin-body) .footer-install {
    min-height:44px;
    display:flex;
    align-items:center;
  }
  body.feris-design:not(.admin-body) .pdp-information,
  body.feris-design:not(.admin-body) .pdp-summary-inner {
    overflow-wrap:anywhere;
  }
}
@media(max-width:650px) {
  body.feris-design:not(.admin-body) .account-heading .personal-welcome {
    min-width:0;
    flex-wrap:wrap;
  }
  body.feris-design:not(.admin-body) .account-metrics>div {
    min-width:0;
    gap:6px;
  }
  body.feris-design:not(.admin-body) .account-metrics small {
    line-height:1.4;
  }
  body.feris-design:not(.admin-body) .section-heading>.button {
    white-space:normal;
    text-align:center;
  }
}
@media(max-width:600px) {
  body.feris-design:not(.admin-body) .cart-item {
    grid-template-columns:64px minmax(0,1fr);
    gap:10px;
    padding:12px;
  }
  body.feris-design:not(.admin-body) .cart-item>img {
    width:64px;
    height:64px;
  }
  body.feris-design:not(.admin-body) .cart-item>strong {
    grid-column:2;
    justify-self:end;
    border-top:1px solid #e1e8e0;
    width:100%;
    padding-top:10px;
  }
  body.feris-design:not(.admin-body) .cart-design-heading>strong {
    flex-basis:100%;
  }
  body.feris-design:not(.admin-body) .order-content .payment-heading {
    align-items:flex-start;
    gap:8px 12px;
  }
  body.feris-design:not(.admin-body) .order-content .payment-heading h2 {
    font-size:clamp(21px,5vw,27px);
    line-height:1.25;
  }
  body.feris-design:not(.admin-body) .order-content .payment-heading>.status-pill {
    max-width:100%;
    white-space:normal;
  }
  body.feris-design:not(.admin-body) .ferito-dialog header {
    gap:8px;
  }
  body.feris-design:not(.admin-body) .ferito-dialog header img {
    width:44px;
    height:52px;
  }
}
@media(max-width:379px) {
  body.feris-design:not(.admin-body) .account-heading {
    grid-template-columns:minmax(0,1fr);
  }
  body.feris-design:not(.admin-body) .account-heading>form {
    grid-column:1;
    grid-row:auto;
    justify-self:start;
  }
  body.feris-design:not(.admin-body) .account-heading .personal-welcome {
    grid-column:1;
    grid-row:auto;
  }
}
@media(max-height:600px) and (orientation:landscape) {
  body.feris-design:not(.admin-body) .pdp-summary-inner {
    position:static;
  }
}
