/* Shared visual rules, 2026-09-10. Cards 6px; controls 4px; circular icons retain their shape. */
:root{--hc-radius-card:6px;--hc-radius-control:4px;--hc-page-paper:#f7f6f2}
/* Reset only structural ancestors of the new pages, never header/footer containers. */
body #content:has(:is(#hc-company,#hc-services,#hc-tools,#hc-seven,#hc-contacts)){background:var(--hc-page-paper)}
body #content :is(.wrapper_inner,.container_inner,.right_block,.middle,.container,.maxwidth-theme):has(:is(#hc-company,#hc-services,#hc-tools,#hc-seven,#hc-contacts)){
 max-width:none!important;width:100%;padding-left:0!important;padding-right:0!important;background:transparent!important;min-width:0;
}
body :is(#hc-company,#hc-services,#hc-tools,#hc-seven,#hc-contacts){font-family:Montserrat,Arial,sans-serif}
body :is(#hc-company,#hc-services,#hc-tools,#hc-seven,#hc-contacts) :is(button,input,select,textarea){font-family:inherit}
body :is(#hc-company,#hc-services,#hc-tools,#hc-seven,#hc-contacts) :is(.ha-button,.hs-button,.hx-button,.button){border-radius:var(--hc-radius-control);font-weight:600;line-height:1.5;white-space:normal}
body #hc-company :is(.ha-hero,.ha-card,.ha-place,.ha-audience,.ha-contact),body #hc-company .ha-proof>a,body :is(#hc-services,#hc-tools) :is(.hs-feature,.hs-card,.hs-calculators,.hs-contact,.hc-svc__note,.hc-svc__facts,.hc-svc__faq),body #hc-contacts :is(.location-panel,.faq,dialog),body #hc-seven :is(.hx-contact,.hc-pay__card,.hc-dlv__way,.hc-wrt__step,.hc-pay__note,.hc-dlv__note,.hc-wrt__panel,.hc-wrt__note,.hc-ship__card,.hc-wrt__box,.hc-sale-archive),body #hc-seven .hx-start>a,body #hc-seven .sales2 .item-wrapper>.item,body #hc-seven .news2 .item,body #hc-seven .partners .item-wrap{border-radius:var(--hc-radius-card)}
body #hc-contacts .place-tabs button,body #hc-seven .hx-nav a{border-radius:var(--hc-radius-control)}
body #hc-seven .hx-reading .hx-native{font-size:14px;line-height:1.8}
body #hc-seven .hx-hero>div>p:last-child{font-size:14px}
body #hc-contacts .place-tabs button,body #hc-contacts .button{font-weight:600}
/* Native commerce cards and controls use the same corner tokens. */
body #content .catalog_block .catalog_item,body #content .catalog_block .inner_wrap,body #content .item-views.news2 .item,body #content .item-views.sales2 .item,body #content .also-buy-section{border-radius:var(--hc-radius-card)}
body :is(.btn,.hc-sample-btn,.hc-cta-sect__btn){border-radius:var(--hc-radius-control)}
body #hc-hero-slider :is(.hc-hero__btn,.hc-promo__btn,.hc-steps__btn,.hc-config-banner__btn,.hc-svc__btn,.hc-promo__cell,.hc-promo__badge){border-radius:var(--hc-radius-control)}
body #content :is(.hc-cv2-grid .hc-cv2-card,.catalog_section_list .section_item,.hc-overview-card,.hc-product-promo .hc-promo){border-radius:var(--hc-radius-card)}
body #content .catalog_section_list .section_info .name a::after{border-radius:var(--hc-radius-card)}
body .hc-product-promo .hc-promo__cta{border-radius:var(--hc-radius-control)}
/* Defend the home slider against older cached listing-promo styles as well. */
body #hc-hero-slider .hc-promo::after{content:none}
body #hc-hero-slider .hc-promo__content{padding:0}
body #hc-hero-slider .hc-promo__eyebrow{color:var(--hcp-accent)!important}
@media(max-width:767px){body #hc-hero-slider .hc-promo__content{padding:0 0 44px}}
/* Keep tablet text on its own solid panel, including the secondary action. */
@media(min-width:768px) and (max-width:1100px){
 body #hc-hero-slider .hc-promo__media,body #hc-hero-slider .hc-promo__scrim{left:58%}
 body #hc-hero-slider .hc-promo__content{max-width:calc(58vw - 56px)}
 body #hc-hero-slider .hc-promo__btn{padding:14px 18px}
 body #hc-hero-slider .hc-promo__buttons{gap:10px}
}
/* Short phones must not crop slide text or buttons at the viewport edge. */
@media(max-width:767px){body #hc-hero-slider .hc-slider__viewport{min-height:600px}}
/* Price containers must shrink with two-column cards on narrow phones. */
@media(max-width:600px){body #content .catalog_block .prices-wrapper{min-width:0!important;max-width:100%;flex-shrink:1}}
/* A hidden BR concatenates adjacent words; retain readable sentence breaks. */
body :is(#hc-services,#hc-tools) .hs-intro-copy br{display:initial}
body #hc-contacts .detail p{font-weight:600}
body #hc-hero-slider .hc-promo__eyebrow{color:#87321f!important}
/* Follow-up: native Aspro cart rules have higher specificity than .btn. */
body #content .catalog_block .counter_wrapp > div .btn,
body #content .ajax_load.block .footer_button .btn,
body #content .catalog_detail :is(.to-cart,.in-cart){border-radius:var(--hc-radius-control)}
/* Centre the promotion as one group on the mobile product page. */
@media(max-width:767px){
 body #content .catalog_detail .hc-mob-sales{text-align:center}
 body #content .catalog_detail .adaptive-block:has(.hc-promo-on)>.view_sale_block{float:none;display:table;width:auto;margin-left:auto;margin-right:auto}
 body #content .catalog_detail .adaptive-block .hc-promo-on{text-align:center}
 body #content .catalog_detail .adaptive-block .hc-promo-on .prices-wrapper{justify-content:center}
}
/* The sorting toolbar's bottom border overlaps the first card by one pixel. */
body #content .right_block1 .filter-panel.sort_header{border-bottom:0;margin-bottom:0}
