/* Product detail typography only; listing cards retain their own type scale. */
body.single-product .aurora-product-page{
  --vg-detail-title:clamp(28px,2.4vw,34px);
  --vg-detail-price:20px;
  --vg-detail-body:12.5px;
  --vg-detail-small:11px;
  --vg-detail-control:12px;
  --vg-detail-kicker:9px;
  --vg-detail-panel-heading:22px;
  --vg-detail-panel-body:13px;
}
body.single-product .aurora-product-page .aurora-product-summary .product_title{
  margin:5px 0 12px!important;
  font-size:var(--vg-detail-title)!important;
  font-weight:500;
  line-height:1.16!important;
  letter-spacing:-.025em;
  overflow-wrap:anywhere;
  word-break:normal;
}
body.single-product .aurora-product-page .aurora-product-summary .aurora-kicker{
  font-size:var(--vg-detail-kicker)!important;
  line-height:1.4;
  letter-spacing:.12em;
}
body.single-product .aurora-product-page .aurora-product-summary .price{
  font-size:var(--vg-detail-price)!important;
  line-height:1.3!important;
  margin:6px 0 14px!important;
  overflow-wrap:anywhere;
}
body.single-product .aurora-product-page .aurora-product-summary .vg-product-purchase .woocommerce-variation .price{
  font-size:var(--vg-detail-price)!important;
  margin:6px 0 10px!important;
}
body.single-product .aurora-product-page .aurora-product-summary .price del{font-size:.78em}
body.single-product .aurora-product-page .aurora-product-summary .woocommerce-product-details__short-description{
  margin:12px 0 16px;
  font-size:var(--vg-detail-body)!important;
  line-height:1.55!important;
  letter-spacing:0;
  word-spacing:normal;
  overflow-wrap:anywhere;
}
body.single-product .aurora-product-page .aurora-product-summary .woocommerce-product-details__short-description :is(p,li){
  font-size:inherit;
  line-height:inherit;
}
body.single-product .aurora-product-page .aurora-product-summary .woocommerce-product-details__short-description p{margin:0 0 8px}
body.single-product .aurora-product-page .aurora-product-summary .woocommerce-product-details__short-description > :last-child{margin-bottom:0}
body.single-product .aurora-product-page .aurora-product-summary :is(.woocommerce-product-rating,.woocommerce-review-link,.vg-color-selected-name,.reset_variations,.stock,.woocommerce-variation-description){
  font-size:var(--vg-detail-small)!important;
  line-height:1.5!important;
}
body.single-product .aurora-product-page .aurora-product-summary .product_meta{
  margin-top:14px;
  font-size:var(--vg-detail-small)!important;
  line-height:1.55!important;
}
body.single-product .aurora-product-page .aurora-product-summary .variations .label{
  font-size:var(--vg-detail-control)!important;
  line-height:1.4;
}
body.single-product .aurora-product-page .aurora-product-summary :is(.vg-direct-option,.vg-size-option){
  font-size:var(--vg-detail-control)!important;
  line-height:1.3!important;
  white-space:normal!important;
}
body.single-product .aurora-product-page .aurora-product-summary form.cart .single_add_to_cart_button{
  font-size:var(--vg-detail-control)!important;
  line-height:1.2!important;
  letter-spacing:.01em;
}
body.single-product .aurora-product-page .aurora-breadcrumbs{
  font-size:10px;
  line-height:1.5;
  overflow-wrap:anywhere;
}
body.single-product .aurora-product-page .aurora-single-tabs .wc-tabs li a{
  font-size:var(--vg-detail-control)!important;
}
body.single-product .aurora-product-page .aurora-single-tabs .woocommerce-Tabs-panel{
  font-size:var(--vg-detail-panel-body)!important;
  line-height:1.6;
  overflow-wrap:anywhere;
}
body.single-product .aurora-product-page .aurora-single-tabs .woocommerce-Tabs-panel :is(p,li,td,th){
  font-size:inherit;
  line-height:inherit;
}
body.single-product .aurora-product-page .aurora-single-tabs .woocommerce-Tabs-panel h2{
  font-size:var(--vg-detail-panel-heading)!important;
  font-weight:500;
  line-height:1.25;
  margin:0 0 12px;
}
body.single-product .aurora-product-page .aurora-single-tabs .woocommerce-Tabs-panel h3{
  font-size:calc(var(--vg-detail-panel-heading) - 3px)!important;
  line-height:1.3;
}
@media(min-width:641px) and (max-width:1100px){
  body.single-product .aurora-product-page{
    --vg-detail-title:28px;
    --vg-detail-price:18px;
    --vg-detail-body:12px;
    --vg-detail-small:10.5px;
    --vg-detail-control:11.5px;
    --vg-detail-kicker:8px;
    --vg-detail-panel-heading:20px;
    --vg-detail-panel-body:12px;
  }
}
@media(max-width:640px){
  body.single-product .aurora-product-page{
    --vg-detail-title:clamp(16px,4.2vw,19px);
    --vg-detail-price:16px;
    --vg-detail-body:11px;
    --vg-detail-small:10px;
    --vg-detail-control:11px;
    --vg-detail-kicker:7px;
    --vg-detail-panel-heading:18px;
    --vg-detail-panel-body:11.5px;
  }
  body.single-product .aurora-product-page .aurora-product-summary .product_title{margin:0 0 7px!important;line-height:1.18!important}
  body.single-product .aurora-product-page .vg-product-intro .aurora-kicker{margin-bottom:5px}
  body.single-product .aurora-product-page .aurora-product-summary .price{margin:0!important}
  body.single-product .aurora-product-page .vg-product-intro .woocommerce-product-details__short-description{margin:8px 0 0!important}
  body.single-product .aurora-product-page .vg-product-purchase .product_meta{margin-top:12px;padding-top:10px}
}

/* Keep the desktop flow. On phones the subtitle belongs immediately under
   the title inside the existing detail panel beside the product photo. */
.aurora-product-summary .vg-product-subtitle{display:contents}
@media(max-width:640px){
  body.single-product .aurora-product-page .aurora-product-summary > .vg-product-intro{
    display:flex!important;
    flex-direction:column;
  }
  body.single-product .aurora-product-page .vg-product-intro > .aurora-kicker{order:0}
  body.single-product .aurora-product-page .vg-product-intro > .product_title{order:1}
  body.single-product .aurora-product-page .vg-product-intro > .vg-product-subtitle{
    order:2;
    display:block;
    min-width:0;
    width:100%;
    padding:0;
    margin:0 0 8px;
  }
  body.single-product .aurora-product-page .vg-product-intro > .woocommerce-product-rating{order:3}
  body.single-product .aurora-product-page .vg-product-intro > .price{order:4}
  body.single-product .aurora-product-page .vg-product-subtitle .woocommerce-product-details__short-description{
    width:100%;
    max-width:100%;
    padding:0;
    margin:0!important;
    font-size:11px!important;
    line-height:1.5!important;
    text-align:start;
    white-space:normal;
    overflow-wrap:break-word;
    word-break:normal;
  }
  body.single-product .aurora-product-page .vg-product-subtitle .woocommerce-product-details__short-description :is(p,li,span,strong,em){
    font-size:inherit!important;
    line-height:inherit!important;
    letter-spacing:normal;
  }
  body.single-product .aurora-product-page .vg-product-subtitle .woocommerce-product-details__short-description p{padding:0;max-width:100%}
  body.single-product .aurora-product-page .vg-product-intro > .vg-product-subtitle:not(:has(.woocommerce-product-details__short-description)){
    display:none;
  }
}

/* Pasted editor/quote markup must not introduce another pair of gutters
   inside the narrow mobile intro. Keep the panel's existing outer spacing. */
@media(max-width:640px){
  body.single-product .aurora-product-page .vg-product-intro .woocommerce-product-details__short-description,
  body.single-product .aurora-product-page .vg-product-intro .woocommerce-product-details__short-description :is(p,div,blockquote){
    box-sizing:border-box;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin-inline:0!important;
    padding-inline:0!important;
    text-indent:0!important;
    text-align:start!important;
  }
  body.single-product .aurora-product-page .vg-product-intro .woocommerce-product-details__short-description blockquote{
    margin-block:0 8px!important;
    border:0!important;
    box-shadow:none!important;
    font:inherit!important;
  }
  body.single-product .aurora-product-page .vg-product-intro .woocommerce-product-details__short-description blockquote::before,
  body.single-product .aurora-product-page .vg-product-intro .woocommerce-product-details__short-description blockquote::after{
    content:none!important;
  }
}
