/* Shared section rhythm. Hero and breadcrumb spacing retain their distinct roles. */
:root{--hc-section-gap:5rem;--hc-panel-inset:4.5rem}
@media(max-width:40rem){:root{--hc-section-gap:3rem;--hc-panel-inset:3rem}}
main#main-content.site-rhythm{display:flow-root;padding-block-end:var(--hc-section-gap)}
main#main-content.site-rhythm>.rhythm-section{margin-block:0;padding-block:0;border-block:0}
main#main-content.site-rhythm>.rhythm-section+.rhythm-section,
main#main-content.site-rhythm>.hero+.rhythm-section{margin-block-start:var(--hc-section-gap)}
main#main-content.site-rhythm>.rhythm-surface{padding-block:var(--hc-panel-inset)}
main#main-content.site-rhythm>.rhythm-section>:first-child{margin-block-start:0}
main#main-content.site-rhythm>.rhythm-section>:last-child{margin-block-end:0}
/* Avoid default heading/paragraph margins adding to measured content boundaries. */
main#main-content.site-rhythm>.rhythm-section>.shell>:first-child{margin-block-start:0}
main#main-content.site-rhythm>.rhythm-section>.shell>:last-child{margin-block-end:0}
/* Separate research content uses the same rhythm as the main sections. */
main#main-content.site-rhythm>.research-supplement .technical-research{margin-block:0}
main#main-content.site-rhythm>.research-supplement .technical-callout{margin-block:var(--hc-section-gap) 0;padding-block:0}
/* Compact catalog products are independent groups, not extra nested section padding. */
main#main-content.site-rhythm>.catalog-compact{display:grid;gap:var(--hc-section-gap)}
main#main-content.site-rhythm>.catalog-compact>section{padding-block:0;margin-block:0;border-block:0}
/* Keep the existing dark product panel's inner wrapper from adding double padding. */
main#main-content.site-rhythm>.product{padding-block:0}
main#main-content.site-rhythm>.product>.product-inner{padding-block:var(--hc-panel-inset)}

/* Narrow layouts: long Finnish headings and actions must fit their columns. */
.site-rhythm :is(.technical-grid,.product-facts,.product-specs__grid,.contact-topics,.company-facts)>*{min-inline-size:0}
.site-rhythm :is(.hex-button,.hero-cta){max-inline-size:100%;white-space:normal}
.site-rhythm :is(.hex-button,.hero-cta)>span{min-inline-size:0;overflow-wrap:anywhere}
@media(max-width:48rem){
 .site-rhythm .feature-section :is(.technical-grid,.product-facts,.product-specs__grid),
 .site-rhythm .benefits__grid{grid-template-columns:minmax(0,1fr)}
 .site-rhythm .feature-heading,.site-rhythm .benefits__item-heading{align-items:start}
 .site-rhythm .feature-heading h3,.site-rhythm .benefits__item-heading h3{overflow-wrap:anywhere}
}
@media(max-width:40rem){
 .site-rhythm .contact-email{overflow-wrap:anywhere}
 .site-rhythm .technical-callout{padding-inline:1.25rem}
}
