/* Securell function pages. Layout and content remain native UX Builder elements. */
.sf-page { --sf-accent:#c83236; --sf-ink:#16191d; --sf-muted:#5b626a; --sf-line:#e7e9ec; color:var(--sf-ink); }
.sf-page .row { max-width:none; }
.sf-page>.section-content>.row { width:calc(100% - clamp(32px,5vw,96px)); margin-left:auto; margin-right:auto; }
.sf-page .row .row { max-width:none!important; width:auto!important; }
.sf-page p,.sf-page li { line-height:1.65; }
.sf-page h1,.sf-page h2,.sf-page h3 { color:inherit; line-height:1.18; letter-spacing:-.025em; }
.sf-page h1 { font-size:clamp(32px,4.2vw,54px); text-transform:none; margin-bottom:24px; }
.sf-page h2 { font-size:clamp(25px,2.2vw,32px); margin-bottom:20px; }
.sf-page h3 { font-size:23px; }

.sf-page .sf-text { font-size:16px; }
.sf-page .sf-text h2::before { content:''; display:block; width:36px; height:3px; background:var(--sf-accent); margin:0 auto 16px; }
.sf-page .sf-text h2 strong { font-weight:700; }
.sf-page .button { text-transform:none; letter-spacing:0; font-weight:700; }
.sf-page a:focus-visible,.sf-page button:focus-visible { outline:3px solid #c83236; outline-offset:4px; }
.sf-hero { color:white; }
.sf-hero-light { color:var(--sf-ink); }
.sf-hero .sf-hero-row { min-height:300px; }
.sf-hero .col { padding-bottom:0; }
.sf-hero .sf-hero-copy p { font-size:17px; line-height:1.65; }
.sf-hero .sf-hero-logo { max-width:300px; margin:0 auto 24px; }
.sf-hero .sf-hero-logo img { max-height:108px; object-fit:contain; object-position:center; }
.sf-hero .sf-hero-art img { max-height:360px; object-fit:contain; }
.sf-hero .sf-hero-visual { padding-left:40px; }
.sf-hero .button { border-radius:99px; padding:0 24px; min-height:44px; margin-top:8px; }
.sf-hero .dark h1,.sf-hero .dark h2 { color:#fff; }
.sf-body { background:white; }
.sf-body .sf-content { background:transparent; }
.sf-body>.section-content>.row { padding-top:48px; }

.sf-body .sf-feature-row { margin-bottom:34px; padding-top:28px; padding-bottom:28px; border-bottom:1px solid var(--sf-line); }
.sf-body .sf-feature-row>.col { padding-bottom:0; }
.sf-body .sf-media>.col-inner { padding:24px; border-radius:18px; background:#f5f6f7; }
.sf-body .sf-media img { max-height:330px; object-fit:contain; }
.sf-body .sf-copy { padding-left:15px; padding-right:15px; }
.sf-body .sf-grid { row-gap:28px; }
.sf-body .sf-grid-cell { padding-bottom:0; }
.sf-body .sf-grid-cell.sf-copy:not(.sf-card):not(.sf-mode-card) { padding-top:20px; padding-bottom:28px; }
.sf-body .sf-grid-cell.sf-media { align-self:center; }
.sf-body .sf-grid-cell.sf-media .img { margin:auto; }
.sf-body .sf-card>.col-inner { background:#f7f8f9; border:1px solid #e7e9ec; border-radius:18px; height:100%; }
.sf-body .sf-card .img { margin:0 auto 24px; }
.sf-body .sf-card .img img { max-height:180px; object-fit:contain; }
.sf-body .sf-card h3 { font-size:23px; margin-bottom:16px; }
.sf-body .sf-card p { font-size:16px; }
.sf-body .sf-card a { color:#a8262a; text-decoration:underline; text-underline-offset:4px; }
.sf-body .sf-colored-card>.col-inner { border-radius:18px; }
.sf-body .sf-card-photo img { border-radius:14px; }
.sf-body .sf-video { border-radius:16px; overflow:hidden; }
.sf-body .sf-product-section { padding-top:40px; padding-bottom:40px; border-top:1px solid var(--sf-line); }
.sf-body .sf-product-section>.col-inner { background:transparent!important; }
.sf-body .sf-product-section .sf-text { margin-bottom:28px; }
.sf-products { margin-top:28px; }
.sf-products .product-small>.col-inner { border:1px solid var(--sf-line); border-radius:14px; padding:12px; height:100%; background:white; }
.sf-products .box-text-products { width:100%; }
.sf-products .box-excerpt { display:block; }
.sf-products .box-image img { object-fit:contain; }
.sf-contact { padding:32px!important; border-radius:20px; background:#f5f6f7; margin-top:40px; }
.sf-contact .sf-text h2 { margin-top:0; }
.sf-page .scroll-to { scroll-margin-top:150px; }
.sf-showcase { margin-bottom:36px!important; }
.sf-showcase .flickity-page-dots { bottom:8px; }
.sf-showcase .flickity-prev-next-button { width:34px; }
@media (max-width:849px) {
 .sf-page h1 { font-size:36px; }
 .sf-hero .sf-hero-visual { padding-left:15px; }
 .sf-body .sf-copy { padding-left:15px; padding-right:15px; }
 .sf-page .row-large>.col { padding-left:15px; padding-right:15px; }
}
@media (max-width:549px) {
 .sf-page>.section-content>.row { width:100%; padding-left:8px; padding-right:8px; }
 .sf-page .row .row { padding-left:0; padding-right:0; }
 .sf-page .col-inner>.text { padding-left:0; padding-right:0; }
 .sf-page h1 { font-size:32px; margin-bottom:20px; }
 .sf-page h2 { font-size:26px; }
 .sf-hero .sf-hero-row { min-height:0; }
 .sf-hero .sf-hero-copy p { font-size:16px; }
 .sf-hero .sf-hero-visual { padding-top:24px; }
 .sf-hero .sf-hero-logo { margin-bottom:18px; max-width:220px; }
 .sf-hero .sf-hero-logo img { max-height:70px; }
 .sf-hero .sf-hero-art img { max-height:230px; }
 .sf-body>.section-content>.row { padding-top:28px; }
 .sf-body .sf-feature-row { padding-top:12px; padding-bottom:24px; margin-bottom:22px; }
 .sf-body .sf-feature-row>.col { padding-left:15px; padding-right:15px; }
 .sf-body .sf-feature-row .sf-copy { padding-top:24px; }
 .sf-body .sf-media>.col-inner { padding:20px; }
 .sf-body .sf-media img { max-height:240px; }
 .sf-body .sf-grid { row-gap:20px; }
 .sf-body .sf-grid-cell.sf-copy:not(.sf-card):not(.sf-mode-card) { padding-top:0; }
 .sf-body .sf-product-section { padding-top:28px; padding-bottom:28px; }
 .sf-products>.col { padding-left:7px; padding-right:7px; }
 .sf-products .product-small>.col-inner { padding:8px; }
 .sf-products .box-text { font-size:13px; }
 .sf-products .box-excerpt { font-size:12px; }
 .sf-products .add-to-cart-button a { font-size:11px; padding:8px; line-height:1.35; white-space:normal; }
 .sf-contact { padding:22px 14px!important; }
}
@media (prefers-reduced-motion:reduce) { .sf-page * { scroll-behavior:auto!important; transition:none!important; } }

/* Equal, coherent operating-mode cards; description lines are body text, not headings. */
.sf-body .sf-mode-card { padding-bottom:0; }
.sf-body .sf-mode-card>.col-inner { height:100%; border:1px solid #e3e6e9; border-top:4px solid #c83236; }
.sf-body .sf-mode-title h3 { font-size:25px; color:#171b20; margin:0 0 18px; }
.sf-body .sf-mode-lead { font-size:17px; line-height:1.5; color:#30363c; margin:0 0 16px; }
.sf-body .sf-mode-card p { max-width:none; }
.sf-body .sf-mode-card>.col-inner>.text:last-child p:last-child { margin-bottom:0; }
.sf-body .sf-card h3::before,.sf-body .icon-box h3::before,.sf-body .box h3::before { content:none; }
.sf-body .sf-ndaa-row { padding-top:0; }
.sf-body .sf-ndaa-main { padding-right:15px; }
.sf-body .sf-ndaa-statement>.col-inner { border:1px solid #e3e6e9; }
.sf-body .sf-ndaa-statement h2 { font-size:25px; }
.sf-body .sf-ndaa-main p,.sf-body .sf-ndaa-statement p { max-width:none; }
@media (max-width:849px) {
 .sf-body .sf-mode-card { flex-basis:100%; max-width:100%; }
 .sf-body .sf-ndaa-main,.sf-body .sf-ndaa-statement { flex-basis:100%; max-width:100%; }
 .sf-body .sf-ndaa-main { padding-right:15px; }
}
@media (max-width:549px) {
 .sf-body .sf-mode-title h3 { font-size:23px; }
 .sf-body .sf-card h3 { font-size:22px; }
}

.sf-body .sf-grid>.large-12.sf-copy { padding-bottom:0; }
.sf-body .sf-grid>.large-12.sf-copy>.col-inner>.text:last-child p:last-child { margin-bottom:0; }
.sf-showcase .sf-hero h1,.sf-showcase .sf-hero h2 { font-size:clamp(32px,3.5vw,48px); text-transform:none; }

/* Consistent image area on overview cards, including cards containing two original images. */
.sf-body .sf-card-media { margin:0 0 22px!important; width:100%!important; }
.sf-body .sf-card-media-col { padding:0!important; }
.sf-body .sf-card-media-col>.col-inner { height:160px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; }
.sf-body .sf-card .sf-card-media .img { margin:0; max-width:250px; min-height:0; flex:1 1 0; }
.sf-body .sf-card .sf-card-media .img-inner { height:100%; }
.sf-body .sf-card .sf-card-media img { height:100%; max-height:160px; width:100%; object-fit:contain; }
@media (max-width:549px) { .sf-body .sf-card-media-col>.col-inner { height:145px; } }

/* Keep the existing header usable between its desktop and mobile layouts. */
@media (min-width:1280px) and (max-width:1450px) {
 #masthead .header-nav-main.nav-left { flex-wrap:nowrap; }
 #masthead .header-nav-main.nav-left>li { margin-left:4px; margin-right:4px; }
 #masthead .header-nav-main.nav-left>li>a { font-size:12px; }
 #masthead .header-nav-main.nav-right { flex-wrap:nowrap; }
 #masthead .header-nav-main.nav-right>.header-search-form { width:180px; flex:0 1 180px; }
}
@media (min-width:850px) and (max-width:1279px) {
 #masthead .hide-for-medium { display:none!important; }
 #masthead .show-for-medium { display:block!important; }
 #masthead #logo { order:2; margin-left:0; margin-right:0; text-align:center; }
 #masthead>.header-inner>.flex-left { order:1; flex:1 1 0; }
 #masthead>.header-inner>.flex-right { order:3; flex:1 1 0; }
 #masthead .mobile-nav.nav-right { justify-content:flex-end; }
}

/* Text alignment is set in native UX Builder elements and remains editable. */
.sf-page .sf-text { width:100%; }
.sf-page .sf-text ul,.sf-page .sf-text ol { margin-left:0; list-style-position:inside; }
@media (max-width:849px) { .sf-page .row .row-large { margin-left:-15px; margin-right:-15px; } }
