/* Studio White 1.7.5 — one isolated floating hero component. */
.cs-floating-shell{position:relative;isolation:isolate;padding-block:135px 120px;background:#fff}
.cs-floating-hero{position:relative;min-height:var(--cs-float-height,480px);overflow:visible}
.cs-floating-band{position:absolute;inset:0;background:#f2f4f6}
.cs-floating-inner{position:relative;max-width:1500px;margin:auto;min-height:var(--cs-float-height,480px);display:grid;grid-template-columns:44% 56%;align-items:center}
.cs-floating-copy{position:relative;z-index:2;box-sizing:border-box;padding:32px 40px 32px 6%;min-width:0;align-self:center}
.cs-floating-copy .cs-store-eyebrow{color:#d44416;font-size:11px;letter-spacing:.17em}
.cs-floating-copy h1{font:800 clamp(38px,4.4vw,70px)/1.06 CamstuffInter,Arial,sans-serif;letter-spacing:-.045em;margin:12px 0 20px;color:#16191c}
.cs-floating-copy>p:not(.cs-store-eyebrow){color:#444b53;max-width:440px;font-size:17px;line-height:1.55;margin:0 0 25px}
.cs-floating-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cs-floating-actions .cs-studio-secondary{margin-left:0}
.cs-floating-visual{position:absolute;z-index:3;right:0;top:var(--cs-float-top,-115px);bottom:var(--cs-float-bottom,-90px);width:57%;pointer-events:none}
.cs-floating-visual img{display:block;position:absolute;object-fit:contain;max-width:none;height:auto;filter:drop-shadow(0 20px 17px rgba(24,30,38,.10))}
.cs-floating-closed{width:48%;left:0;top:30%;z-index:1}
.cs-floating-open{height:100%!important;width:auto;max-width:85%!important;right:0;top:0;z-index:2}
@media(max-width:950px){.cs-floating-shell{padding-block:80px 65px}.cs-floating-inner{grid-template-columns:48% 52%}.cs-floating-copy{padding:25px 8%}.cs-floating-visual{width:54%;top:-65px;bottom:-48px}.cs-floating-closed{width:51%;top:32%}.cs-floating-open{max-width:90%!important}.cs-floating-copy h1{font-size:clamp(34px,5vw,55px)}}
@media(max-width:650px){.cs-floating-shell{padding-block:35px 50px}.cs-floating-hero{min-height:0}.cs-floating-inner{min-height:0;display:flex;flex-direction:column;align-items:stretch}.cs-floating-band{height:100%;bottom:0}.cs-floating-copy{width:100%;padding:36px 24px 16px}.cs-floating-copy h1{font-size:clamp(36px,9vw,50px);max-width:530px}.cs-floating-copy>p:not(.cs-store-eyebrow){font-size:15px}.cs-floating-visual{position:relative;right:auto;top:auto;bottom:auto;width:100%;height:330px;margin-bottom:-48px}.cs-floating-closed{width:43%;left:3%;top:24%}.cs-floating-open{height:113%!important;max-width:75%!important;right:2%;top:-8%}.cs-floating-actions{gap:8px}}
@media(max-width:380px){.cs-floating-copy{padding-inline:18px}.cs-floating-visual{height:270px}}
/* 1.7.6 reusable Elementor widget; isolated from the built-in homepage hero. */
.cs-fsection{position:relative;isolation:isolate;box-sizing:border-box;padding:var(--cs-section-top) 0 var(--cs-section-bottom);overflow:visible!important}
.cs-fsection-band{position:relative;min-height:var(--cs-section-height);background:var(--cs-section-bg);display:flex;align-items:center}
.cs-fsection-inner{width:100%;max-width:1440px;margin-inline:auto;display:flex;align-items:center;min-height:var(--cs-section-height)}
.cs-fsection-copy{position:relative;z-index:2;box-sizing:border-box;width:calc(100% - var(--cs-section-width) + 3%);padding:24px clamp(22px,4vw,72px);min-width:0}
.cs-fsection-eyebrow{font-size:12px!important;font-weight:700;letter-spacing:.12em;color:#bd7947;margin:0 0 14px!important}
.cs-fsection-copy h2{font:800 clamp(32px,4vw,64px)/1.1 CamstuffInter,Arial,sans-serif;color:#202327;letter-spacing:-.04em;margin:0 0 20px}
.cs-fsection-description{font-size:17px;color:#565f68;line-height:1.6;margin:0 0 24px}
.cs-fsection-button{display:inline-flex;align-items:center;gap:10px;padding:13px 20px;background:#242629;color:#fff!important;text-decoration:none;border-radius:3px;font-weight:650}
.cs-fsection-images{pointer-events:none;position:absolute;z-index:3;width:var(--cs-section-width);right:0;top:0;bottom:0}
.cs-fsection-image{position:absolute;display:block;object-fit:contain;filter:drop-shadow(0 16px 20px rgba(0,0,0,.08));max-width:none!important}
/* Each product uses its own CSS variables, emitted by Elementor responsive controls. */
.cs-fsection-front{right:0;top:0;width:var(--cs-front-width,90%)!important;height:auto!important;max-height:var(--cs-front-height,100%);z-index:var(--cs-front-z,2);transform:translate(var(--cs-front-x,0px),var(--cs-front-y,0px))}
.cs-fsection-back{left:1%;top:34%;width:var(--cs-back-width,45%)!important;height:auto!important;max-height:var(--cs-back-height,55%);z-index:var(--cs-back-z,1);transform:translate(var(--cs-back-x,0px),var(--cs-back-y,0px))}
.cs-fsection--left .cs-fsection-inner{justify-content:flex-end}
.cs-fsection--left .cs-fsection-images{left:0;right:auto}
.cs-fsection--left .cs-fsection-front{left:0;right:auto}
.cs-fsection--left .cs-fsection-back{left:auto;right:1%}
.cs-fsection--no-images .cs-fsection-copy{width:min(850px,100%)}
@media(max-width:950px){.cs-fsection-copy{width:49%;padding-inline:24px}.cs-fsection-images{width:53%}.cs-fsection-copy h2{font-size:clamp(29px,4vw,48px)}}
@media(max-width:680px){.cs-fsection{padding:0 0 44px}.cs-fsection-band{min-height:0}.cs-fsection-inner{min-height:0;display:block}.cs-fsection-copy,.cs-fsection--left .cs-fsection-copy{width:100%;padding:38px 22px 26px}.cs-fsection-images,.cs-fsection--left .cs-fsection-images{position:relative;inset:auto;width:100%;height:300px;transform:none;margin-top:-6px;margin-bottom:-44px}.cs-fsection-front{right:1%}.cs-fsection-back{left:2%}.cs-fsection-description{font-size:15px}.cs-fsection-copy h2{font-size:clamp(30px,8vw,44px)}}

/* 1.7.8: Responsive settings of the reusable Floating Section.
   Explicit Elementor selectors override these fallbacks on the relevant device. */
.cs-fsection{padding-top:var(--cs-responsive-top,var(--cs-section-top));padding-bottom:var(--cs-responsive-bottom,var(--cs-section-bottom))}
.cs-fsection-band,.cs-fsection-inner{min-height:var(--cs-responsive-height,var(--cs-section-height))}
@media(max-width:680px){
 .cs-fsection{padding-top:var(--cs-responsive-top,0px);padding-bottom:var(--cs-responsive-bottom,44px)}
 .cs-fsection-band,.cs-fsection-inner{min-height:var(--cs-responsive-height,0px)}
 .cs-fsection-images{position:relative;inset:auto;width:100%;height:300px;transform:none;margin-top:-6px;margin-bottom:-44px}
 /* Allow Elementor's mobile image arrangement setting to override position. */
 .cs-fsection-images[style]{pointer-events:none}
}
