.sgp-root {max-width:100%;overflow-x:clip}
.sgp-root .sgp-shell,.sgp-root .sgp-product-panel,.sgp-root .sgp-details,.sgp-root .sgp-install,.sgp-root .sgp-colors,.sgp-root .sgp-comparison {min-width:0;max-width:100%}
.sgp-root :is(.sgp-feature-card,.sgp-extra-card,.sgp-install-card,.sgp-color-card,.sgp-metric){min-width:0}
.sgp-root :is(.sgp-details-photo,.sgp-install-photo,.sgp-extra-photo) img {max-width:100%}
.sgp-root .sgp-section-aside {overflow-wrap:break-word}
.sgp-root .sgp-compare-scroll {max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.sgp-root .sgp-product-tile:focus-visible {outline:3px solid #b38d5b;outline-offset:-4px} @media (min-width:1025px) and (hover:hover) and (pointer:fine) {
.sgp-root .sgp-tiles.sgp-tiles-fullscreen {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;transition:grid-template-columns .8s cubic-bezier(.22,1,.36,1)!important;overflow:hidden}
.sgp-root .sgp-tiles.sgp-tiles-fullscreen:has(> .sgp-product-tile:nth-child(1):hover) {grid-template-columns:1.12fr .94fr .94fr!important}
.sgp-root .sgp-tiles.sgp-tiles-fullscreen:has(> .sgp-product-tile:nth-child(2):hover) {grid-template-columns:.94fr 1.12fr .94fr!important}
.sgp-root .sgp-tiles.sgp-tiles-fullscreen:has(> .sgp-product-tile:nth-child(3):hover) {grid-template-columns:.94fr .94fr 1.12fr!important}
.sgp-root .sgp-tiles.sgp-tiles-fullscreen > .sgp-product-tile {min-width:0;overflow:hidden!important;transform:none!important} } @media (min-width:1025px) and (max-width:1440px) {
.sgp-root .sgp-shell {padding-left:clamp(28px,4vw,55px);padding-right:clamp(28px,4vw,55px)}
.sgp-root .sgp-section-heading-row {gap:clamp(20px,2.3vw,35px)}
.sgp-root .sgp-product-copy {padding-left:clamp(30px,4.1vw,60px)!important}
.sgp-root .sgp-install-photo-wrap {height:clamp(205px,18vw,270px)!important}
.sgp-root .sgp-feature-grid {padding:clamp(13px,2vw,26px)!important}
.sgp-root .sgp-feature-card {padding:clamp(10px,1.2vw,18px)!important}
.sgp-root .sgp-feature-name .elementor-heading-title {font-size:clamp(15px,1.45vw,21px)!important}
} @media (min-width:768px) and (max-width:1024px) {
.sgp-root .sgp-shell {padding:44px 30px}
.sgp-root .sgp-tiles.sgp-tiles-fullscreen {height:min(780px,100svh)!important;min-height:510px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:2px!important}
.sgp-root .sgp-tiles > .sgp-product-tile {height:100%!important;min-width:0!important;overflow:hidden!important;transform:none!important;background-size:cover!important}
.sgp-root .sgp-tile-content {padding:0 14px 28px!important}
.sgp-root .sgp-tile-name .elementor-heading-title {font-size:clamp(23px,3.05vw,34px)!important}
.sgp-root .sgp-product-hero {height:auto!important;min-height:470px;display:flex!important;flex-direction:row!important}
.sgp-root .sgp-product-copy {width:48%!important;flex:0 0 48%!important;padding:30px 20px 30px 30px!important}
.sgp-root .sgp-product-media {left:45%!important;width:55%!important;top:0!important;bottom:0!important;position:absolute!important}
.sgp-root .sgp-product-title .elementor-heading-title {font-size:clamp(43px,5.3vw,69px)!important}
.sgp-root .sgp-product-body {font-size:13px!important}
.sgp-root .sgp-metrics {height:auto;padding:20px 22px!important}
.sgp-root .sgp-details {height:auto!important;min-height:400px;display:grid!important;grid-template-columns:48% 52%!important}
.sgp-root .sgp-details-image {height:auto!important;min-height:400px}
.sgp-root .sgp-feature-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(170px,1fr))!important;padding:13px!important;gap:8px!important}
.sgp-root .sgp-feature-card {min-width:0;padding:12px!important}
.sgp-root .sgp-feature-name .elementor-heading-title {font-size:clamp(15px,1.8vw,19px)!important}
.sgp-root .sgp-install-grid {grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important}
.sgp-root .sgp-install-photo-wrap {height:clamp(185px,21vw,225px)!important}
.sgp-root .sgp-install-copy {padding:12px 13px 17px!important}
.sgp-root .sgp-install-title .elementor-heading-title {font-size:clamp(22px,2.5vw,28px)!important}
.sgp-root .sgp-section-heading-row {gap:20px}
.sgp-root .sgp-extras-grid {gap:10px}
.sgp-root .sgp-extra-name .elementor-heading-title {font-size:clamp(22px,2.8vw,30px)!important}
} @media (max-width:767px) {
.sgp-root .sgp-shell {padding:40px 18px!important}
.sgp-root .sgp-tiles.sgp-tiles-fullscreen {display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;max-height:none!important;gap:2px!important}
.sgp-root .sgp-tiles.sgp-tiles-fullscreen > .sgp-product-tile {height:clamp(180px,32svh,275px)!important;min-height:180px!important;flex:0 0 auto!important;width:100%!important;transform:none!important;overflow:hidden!important;background-size:cover!important}
.sgp-root .sgp-tiles .sgp-tile-content {padding:0 20px 18px!important}
.sgp-root .sgp-tile-name .elementor-heading-title {font-size:clamp(28px,7vw,38px)!important}
.sgp-root .sgp-product-hero {display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important}
.sgp-root .sgp-product-media {position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;height:clamp(230px,65vw,365px)!important;min-height:0!important;order:0!important}
.sgp-root .sgp-product-copy {position:relative!important;order:1!important;width:100%!important;flex:0 0 auto!important;padding:28px 20px 36px!important;z-index:3!important}
.sgp-root .sgp-product-title .elementor-heading-title {font-size:clamp(44px,11vw,66px)!important;white-space:normal!important;overflow-wrap:normal}
.sgp-root .sgp-product-headline .elementor-heading-title {font-size:clamp(19px,4.8vw,24px)!important}
.sgp-root .sgp-product-body {font-size:14px!important;line-height:1.6!important}
.sgp-root .sgp-primary-btn .elementor-button {min-height:44px}
.sgp-root .sgp-metrics {height:auto!important;min-height:0!important;padding:14px!important}
.sgp-root .sgp-metrics-inner {grid-template-columns:repeat(2,minmax(0,1fr))!important}
.sgp-root .sgp-metric {min-height:95px;height:auto!important;padding:12px 8px!important}
.sgp-root .sgp-details {height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important}
.sgp-root .sgp-details-image {height:clamp(260px,72vw,390px)!important;min-height:0!important;flex:0 0 auto!important}
.sgp-root .sgp-feature-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:auto!important;gap:9px!important;padding:12px!important;min-height:0!important}
.sgp-root .sgp-feature-card {min-height:160px!important;padding:12px!important;overflow:hidden!important}
.sgp-root .sgp-feature-name .elementor-heading-title {font-size:clamp(16px,4.2vw,21px)!important}
.sgp-root .sgp-section-heading-row {display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:13px!important}
.sgp-root .sgp-section-title .elementor-heading-title {font-size:clamp(35px,9vw,46px)!important}
.sgp-root .sgp-section-aside {max-width:100%;font-size:13px}
.sgp-root .sgp-install-grid {display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
.sgp-root .sgp-install-photo-wrap {height:clamp(230px,61vw,350px)!important}
.sgp-root .sgp-install-copy {padding:15px 19px 22px!important}
.sgp-root .sgp-install-title .elementor-heading-title {font-size:clamp(27px,7vw,34px)!important}
.sgp-root .sgp-install-desc {font-size:12px;line-height:1.5}
.sgp-root .sgp-colors-row {grid-template-columns:repeat(3,minmax(0,1fr))!important}
.sgp-root .sgp-extras-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.sgp-root .sgp-extra-card {height:clamp(210px,56vw,285px)!important}
.sgp-root .sgp-extra-name .elementor-heading-title {font-size:clamp(22px,6vw,29px)!important}
.sgp-root .sgp-compare-table {min-width:620px}
.sgp-root .sgp-faq {display:flex!important;flex-direction:column!important}
.sgp-root .sgp-cta {height:auto!important;min-height:345px!important}
.sgp-root .sgp-cta-inner {padding:34px 20px!important}
.sgp-root .sgp-cta-title .elementor-heading-title {font-size:clamp(39px,10vw,53px)!important}
.sgp-root .sgp-footer {padding:30px 20px!important}
} @media (max-width:430px) {
.sgp-root .sgp-feature-grid {grid-template-columns:1fr!important;grid-template-rows:auto!important}
.sgp-root .sgp-feature-card {min-height:158px!important}
.sgp-root .sgp-feature-copy {width:64%!important}
.sgp-root .sgp-feature-photo {width:40%!important;opacity:.75!important}
.sgp-root .sgp-extras-grid {grid-template-columns:1fr!important}
.sgp-root .sgp-extra-card {height:235px!important}
.sgp-root .sgp-colors-row {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
.sgp-root .sgp-color-card {height:auto;min-height:132px}
.sgp-root .sgp-color-square {height:85px}
.sgp-root .sgp-product-title .elementor-heading-title {font-size:clamp(40px,10vw,48px)!important}
}
@media (max-width:360px) {
.sgp-root .sgp-shell {padding-left:14px!important;padding-right:14px!important}
.sgp-root .sgp-tile-name .elementor-heading-title {font-size:27px!important}
.sgp-root .sgp-install-photo-wrap {height:205px!important}
.sgp-root .sgp-footer {padding-left:15px!important;padding-right:15px!important}
} @media (max-height:520px) and (min-width:768px) {
.sgp-root .sgp-tiles.sgp-tiles-fullscreen {height:auto!important;min-height:450px!important}
.sgp-root .sgp-tiles.sgp-tiles-fullscreen > .sgp-product-tile {min-height:450px!important}
} @media (prefers-reduced-motion:reduce) {
.sgp-root .sgp-tiles.sgp-tiles-fullscreen {transition:none!important}
}