/* A restrained beauty-store finish. Presentation only; native controls stay intact. */
:root {
  --refined-radius:6px;
  --refined-panel-radius:10px;
  --refined-control-height:42px;
  --refined-line:#e1e6df;
  --refined-panel-padding:20px;
  --refined-mobile-input-font:16px;
}
.preview-note { padding-block:3px; }
.announcement { padding-block:6px; }
#container main>.container { padding-top:18px; padding-bottom:32px; }
#container .breadcrumb { margin-bottom:18px; padding-block:8px; }
#container main :is(.btn,.form-control,.form-select,.card,.alert,.accordion-item) { border-radius:var(--refined-radius); }
#container main :is(.btn,.form-control,.form-select) { min-height:var(--refined-control-height); }
#container main .btn { padding:9px 16px; gap:8px; font-weight:500; line-height:1.4; box-shadow:none; }
#container main .btn-primary { background:#526776; border-color:#526776; box-shadow:none; }
#container main .btn-primary:hover { background:#405a69!important; border-color:#405a69!important; box-shadow:none; }
#container main :is(.form-control,.form-select) { padding:8px 11px; border-color:#d4ded5; }
#container main .form-select { padding-right:34px; }
#container main .form-control.is-invalid { padding-right:34px!important; }
#container main .form-select.is-invalid { padding-right:58px!important; }
#container main textarea.form-control { min-height:100px; }
#container main :is(.alert,.accordion-body) { padding:12px 16px; }
#container main .accordion-button { padding:13px 16px; }
#container main .form-label { margin-bottom:5px; }

/* Smaller page introductions, retaining the original sage and botanical details. */
#container :is(.checkout-heading,.account-heading,.information-heading,.category-heading) {
  padding:16px 22px; margin-bottom:20px; border-radius:2px 24px 2px 2px;
  background:#f0f4ec; gap:16px;
}
#container #content :is(.checkout-heading,.account-heading,.information-heading,.category-heading) h1 { font-size:29.15075px; line-height:1.2; margin:0; }
#container :is(.checkout-eyebrow,.account-eyebrow,.information-eyebrow,.category-heading .eyebrow) { margin-bottom:5px; letter-spacing:1.3px; line-height:1.4; }
#container :is(.checkout-eyebrow,.account-eyebrow,.information-eyebrow)>span { font-size:15.43275px; line-height:1; }
#container .category-intro { margin-top:12px; margin-bottom:0; }
#container .checkout-progress { gap:10px 24px; margin-bottom:22px; }
#container .checkout-progress li>span { flex-basis:26px; height:26px; }

/* Checkout, authentication, customer pages and editorial/contact panels. */
#container :is(.checkout-panel,.auth-panel,.information-article,.contact-location-panel,.customer-order-card,.order-info-panel,.order-totals-panel,.order-history-wrap,.collection-empty,.cart-summary) {
  padding:var(--refined-panel-padding); border-radius:var(--refined-panel-radius); border-color:var(--refined-line); box-shadow:none;
}
#container #checkout-checkout .checkout-panel { padding:var(--refined-panel-padding); border-radius:var(--refined-panel-radius); margin-bottom:16px; }
#container #content>form:not(#form-login),#container #information-contact #form-contact { padding:var(--refined-panel-padding); border-radius:var(--refined-panel-radius); }
#container :is(.checkout-order-summary,.cart-summary,.order-totals-panel,.auth-create,.contact-location-panel,.collection-empty) { background:#f7f9f4; }
#container #checkout-checkout #checkout-register>form>p:first-child { padding:10px 12px; margin-bottom:18px; border-radius:5px; }
#container main fieldset { margin-bottom:18px; }
#container main legend { font-size:21.434375px; margin-bottom:16px; padding-bottom:9px; }
#container #checkout-checkout .checkout-method-panel legend { font-size:20.577px; }
#container #checkout-checkout :is(.form-control,.form-select) { min-height:var(--refined-control-height); padding:8px 11px; border-radius:var(--refined-radius); }
#container main :is(.form-check-input) { width:18px; height:18px; }
#container main .form-switch .form-check-input { width:34px; }
#container #checkout-checkout :is(.form-label,.form-check-label) { margin-bottom:5px; }
#container #checkout-checkout .row.mb-3,#container #information-contact #form-contact .row.mb-3 { margin-bottom:14px!important; }
#container #checkout-checkout .checkout-method-panel .input-group { grid-template-columns:36px minmax(0,1fr); }
#container #checkout-checkout .checkout-method-panel .input-group-text { border-radius:6px 0 0 6px; }
#container #checkout-checkout .checkout-method-panel .input-group>.form-control { border-radius:0 6px 6px 0!important; }
#container #checkout-checkout .checkout-method-panel .input-group>.btn { min-height:42px; margin-top:8px; border-radius:6px!important; }
#container #checkout-checkout #checkout-payment .btn,#container #checkout-cart .cart-checkout { min-height:46px; padding:11px 16px; font-weight:500; }
#container #checkout-cart #accordion :is(.btn,.form-control) { min-height:42px; border-radius:6px; }
#container #checkout-checkout #input-comment { min-height:90px; }
#container #checkout-checkout .order-summary-title { font-size:21.434375px; margin-bottom:14px; gap:8px; }
#container #checkout-checkout .order-review :is(td,th) { padding-block:10px; }
#container #checkout-checkout .order-review { margin-bottom:14px; }
#container :is(.account-panel-icon,.contact-panel-icon,.customer-order-icon,.summary-icon) { width:36px; height:36px; font-size:16.290125px; border-radius:8px; margin-bottom:14px; }
#container .auth-botanical { font-size:137.18px; opacity:.65; }
#container #account-login :is(.account-login-button,.account-register-link) { min-height:44px; }
#container .account-link-grid { gap:12px; }
#container .account-link-grid>li>a { min-height:78px; padding:15px; border-radius:8px; gap:11px; }
#container .account-link-icon { flex-basis:34px; height:34px; border-radius:6px; font-size:15.43275px; }
#container main .list-group { border-radius:8px; }
#container main .list-group-item { padding:11px 14px; }
#container #information-contact legend { padding-bottom:12px; margin-bottom:18px; }
#container #information-contact textarea.form-control { min-height:150px; }
#container .information-article { padding:24px 30px; }
#container .information-copy :is(blockquote,h1,h2) { border-radius:0 6px 6px 0; }

/* Shopping actions lose the large icon tiles, gradients and raised hover effect. */
#container .ritual-product .button { grid-template-columns:minmax(0,1fr) 42px; gap:7px; }
#container .ritual-product .button :is(.product-add,.product-wish) {
  min-height:42px; border-radius:6px; padding:8px 11px; gap:7px;
  box-shadow:none; font-weight:500; transform:none;
}
#container .ritual-product .button .product-add,#container #product-info #button-cart { background:#526776; border-color:#526776; }
#container .ritual-product .button .product-wish { width:42px; padding:0; background:#fff; }
#container :is(.product-add,#button-cart) .cart-action-icon { flex-basis:18px; width:18px; height:18px; background:transparent; border-radius:0; }
#container .ritual-product .button .product-add:hover,#container #product-info #button-cart:hover { background:#405a69!important; box-shadow:none; transform:none; }
#container .ritual-product .content { padding-top:16px; }
#container .ritual-product :is(h4,.price) { margin-bottom:12px; }
#container .product-photo-stage { padding:12px; border-radius:20px 8px 8px 8px; }
#container .product-photo-link { border-radius:14px 5px 5px 5px; }
#container .product-gallery-flower { font-size:37.7245px; top:-10px; }
#container .product-thumbnail { flex-basis:70px; height:76px; border-radius:6px; }
#container .product-thumbnails { gap:9px; padding-top:12px; }
#container #product-info .product-pricing { padding:13px 17px; border-radius:8px; margin-bottom:16px; background:#f7f9f4; }
#container #product-info .product-pricing .price-new { font-size:27.436px; font-weight:500; }
#container #product-info .product-purchase { grid-template-columns:78px minmax(0,1fr); gap:10px; }
#container #product-info :is(#button-cart,.product-quantity input) { min-height:46px; padding:10px 12px; border-radius:6px; line-height:1.4; }
#container #product-info .product-quantity input { height:46px; }
#container #product-info .product-secondary-actions button { min-height:40px; padding:8px 12px; border-radius:6px!important; }
#container #product-info .product-details { padding:0 22px 20px; border-radius:10px; margin-bottom:32px; }
#container #product-info .product-details>.nav-tabs { margin-bottom:20px; }
#container #product-info .product-details>.nav-tabs .nav-link { padding-block:13px; font-size:14.575375px; border-bottom-width:2px; }
#container .product-gallery { top:120px; }
#container .cart-summary { top:120px; }
#container #shopping-cart .cart-product { padding:16px; margin-bottom:14px; border-radius:10px; box-shadow:none; }
#container #shopping-cart .cart-quantity :is(.btn,.form-control) { height:42px; min-height:42px; border-radius:6px!important; }
#container #shopping-cart .cart-totals td { padding-block:11px; }
#container :is(.cart-empty,.collection-empty) { padding:30px 22px; border-radius:10px; }
#container :is(.cart-empty-icon,.collection-empty-icon) { width:58px; height:58px; font-size:24.863875px; margin-bottom:16px; }
#container .saved-product { border-radius:10px; }
#container .saved-product-content { padding:17px; }
#container .saved-product-photo { padding:9px; border-radius:0 0 12px 0; }
#container .saved-product-photo>a { border-radius:12px 5px 5px 5px; }
#container #account-wishlist .saved-product-actions .btn-primary { min-height:42px; padding:9px 12px; }
#container .customer-order-status { padding:5px 10px; border-radius:6px; }
#container .customer-order-top { margin-bottom:16px; }
#container .customer-order-facts { padding-block:13px; }
#container #account-order .order-products-table>tbody>tr>td { padding:15px 12px; }

/* Tighter navigation details, filters, dialogs and editorial spacing. */
#container .mega-panel { border-top-width:2px; border-radius:0 0 8px 8px; box-shadow:0 10px 24px #35475314; }
#container .mega-panel-body { padding:22px; gap:22px; }
#container .mega-feature { border-radius:20px 6px 6px 6px; }
#container .mega-feature-caption { padding:16px; }
#container .category-pills a { padding:7px 13px; border-radius:6px; }
#container #display-control { margin-block:16px 20px; gap:12px; }
#container #display-control :is(.form-select,.btn) { min-height:42px; border-radius:6px!important; padding-block:9px; }
#container #cart :is(.mini-cart-panel,.mini-cart-item) { border-radius:8px; }
#container #cart .mini-cart-actions a { min-height:42px; padding:9px; border-radius:6px; font-weight:500; }
:is(#modal-shipping,#modal-payment) .modal-content { border-radius:10px; box-shadow:0 12px 40px #3346521a; }
:is(#modal-shipping,#modal-payment) .modal-header { padding:14px 18px; border-radius:10px 10px 0 0; }
:is(#modal-shipping,#modal-payment) .modal-body { padding:18px; }
:is(#modal-shipping,#modal-payment) .modal-title { font-size:19.719625px; }
:is(#modal-shipping,#modal-payment) .form-check { padding:12px; margin-bottom:12px; border-radius:6px; gap:9px; }
:is(#modal-shipping,#modal-payment) .btn-primary { min-height:42px; padding:9px 16px; border-radius:6px; background:#526776; box-shadow:none; font-weight:500; }
#container .cosmelina-home { padding-top:24px; }
#container .hero-copy { padding-block:32px 24px; }
#container :is(.ritual-hero,.hero-still-life) { min-height:410px; }
#container .hero-still-life { border-top-left-radius:90px; }
#container .hero-photo { top:65px; }
#container .hero-label { bottom:24px; }
#container .round-stamp { width:76px; height:76px; bottom:26px; }
#container .care-strip { padding-block:20px; margin-top:24px; }
#container .discovery-section { padding-top:44px; }
#container .selection-section { padding-block:44px; }
#container .manifesto-inner { padding-block:42px; }
#container .ritual-footer { padding-top:32px; }
#container .footer-bottom { margin-top:28px; padding-block:16px; }

@media(max-width:991.98px) {
  #container #checkout-checkout .checkout-method-panel .input-group { grid-template-columns:36px minmax(0,1fr) auto; }
  #container #checkout-checkout .checkout-method-panel .input-group>.btn { margin-top:0; margin-left:8px; }
  #container #account-order .order-products-table>tbody>tr>td { padding:0; }
  #container .product-gallery,#container .cart-summary { position:static; }
}
@media(max-width:767.98px) {
  :root { --refined-control-height:44px; --refined-panel-padding:18px; }
  #container main>.container { padding-top:14px; }
  #container :is(.checkout-heading,.account-heading,.information-heading,.category-heading) { padding:14px 18px; border-top-right-radius:20px; margin-bottom:18px; }
  #container #content :is(.checkout-heading,.account-heading,.information-heading,.category-heading) h1 { font-size:25.72125px; }
  #container main :is(.form-control,.form-select) { font-size:var(--refined-mobile-input-font); }
  #container main :is(.btn,.product-add,.product-wish),#container #display-control :is(.form-select,.btn),#container #account-wishlist .saved-product-actions .btn-primary { min-height:44px; }
  #container .ritual-product .button { grid-template-columns:minmax(0,1fr) 44px; }
  #container .ritual-product .button :is(.product-add,.product-wish) { min-height:44px; }
  #container .ritual-product .button .product-wish { width:44px; }
  #container #product-info .product-secondary-actions button { min-height:44px; }
  #container #checkout-checkout .checkout-method-panel .input-group>.btn { min-height:44px; }
  #container #checkout-cart #accordion :is(.btn,.form-control) { min-height:44px; }
  #container #cart .mini-cart-actions a,:is(#modal-shipping,#modal-payment) .btn { min-height:44px; }
  #container .auth-create { min-height:0; }
  #container .information-article { padding:20px; }
  #container .mega-panel-body { padding:0 14px 14px; }
  #container .hero-copy { padding-block:20px 0; }
  #container :is(.ritual-hero,.hero-still-life) { min-height:340px; }
  #container .hero-photo { top:30px; height:160px; }
  #container .hero-still-life { border-top-left-radius:70px; }
  #container .discovery-section { padding-top:32px; }
  #container .selection-section { padding-block:32px; }
}
@media(max-width:575.98px) {
  #container #checkout-checkout .checkout-method-panel .input-group { grid-template-columns:36px minmax(0,1fr); }
  #container #checkout-checkout .checkout-method-panel .input-group>.btn { margin:8px 0 0; }
  #container #shopping-cart .cart-product { padding:14px; }
  #container #shopping-cart .cart-quantity :is(.btn,.form-control) { min-height:44px; height:44px; }
}
