/* Version 8 additions intentionally isolated from archived theme stylesheet */
:root{--csw-orange:#ed741c;--csw-grey:#454545}*{box-sizing:border-box}body{margin:0;background:#f7f7f7;color:#292929;font-family:Arial,Helvetica,sans-serif}.csw-wrap{max-width:1380px;margin:auto;padding:0 24px}.csw-hero{height:clamp(280px,34vw,480px);position:relative;overflow:hidden;background:#303030}.csw-hero-images,.csw-slide{position:absolute;inset:0}.csw-slide{background-size:cover;background-position:center;opacity:0;transition:opacity 1s}.csw-slide.active{opacity:1}.csw-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.6),transparent 75%);pointer-events:none}.csw-brand{position:absolute;z-index:2;left:max(5%,calc((100vw - 1280px)/2));top:50%;transform:translateY(-50%);color:white;text-shadow:0 2px 6px #222}.csw-logo strong{font-size:clamp(35px,6vw,80px);letter-spacing:-3px}.csw-logo span{color:var(--csw-orange)}.csw-logo img{max-height:150px;width:auto;max-width:85vw}.csw-brand p{font-size:clamp(20px,3vw,36px);font-weight:bold;margin:6px 0}.csw-nav{background:rgba(75,75,75,.94);border-bottom:4px solid var(--csw-orange)}.csw-nav ul{list-style:none;display:flex;flex-wrap:wrap;margin:0;padding:0;gap:0}.csw-nav a{display:block;padding:18px 22px;color:white!important;text-decoration:none;font-weight:600}.csw-nav a:hover{background:var(--csw-orange)}.csw-products{display:grid;grid-template-columns:minmax(210px,24%) minmax(0,76%);gap:22px;padding-top:55px;padding-bottom:50px}.csw-product-intro{padding:18px 8px 0 0}.csw-eyebrow{color:var(--csw-orange);font-size:12px;font-weight:bold;letter-spacing:2px}.csw-product-intro h1{font-size:clamp(26px,3vw,43px);line-height:1.12;margin:14px 0 25px}.csw-product-intro a,.csw-contact a{color:var(--csw-orange);font-weight:bold}.csw-product-window{overflow:hidden;min-width:0}.csw-product-track{display:flex;gap:14px;transition:transform .65s ease;will-change:transform}.csw-product-card{flex:0 0 calc((100% - 42px)/4);min-width:0;background:white;border:1px solid #ddd;box-shadow:0 2px 9px #0000000d;padding-bottom:12px}.csw-product-card img,.csw-image-placeholder{width:100%;height:155px;object-fit:cover;background:#777;color:white;display:grid;place-items:center}.csw-product-card h3,.csw-product-card h2{font-size:16px;color:#222;margin:12px}.csw-product-card p{font-size:12px;line-height:1.45;margin:8px 12px}.csw-product-card a{text-decoration:none}.csw-features{display:grid;gap:7px;margin:14px 12px}.csw-feature{display:flex;align-items:flex-start;gap:8px}.csw-feature span{color:var(--csw-orange);font-weight:bold}.csw-feature small{font-size:11px;line-height:1.35}.csw-original{padding-bottom:60px}.csw-section-heading{border-bottom:3px solid var(--csw-orange);padding-bottom:12px}.csw-original-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.csw-legacy-section{background:#fff;padding:24px;box-shadow:0 2px 9px #0000000d;border-top:3px solid var(--csw-orange)}.csw-legacy-section h2{font-size:21px}.csw-legacy-section p{font-size:14px;line-height:1.65}.csw-contact{padding:30px 0}.csw-footer{background:#343434;color:#eee;padding:40px 0}.csw-footer small{color:#bbb}.csw-whatsapp{position:fixed;bottom:20px;right:20px;background:#168c54;color:white!important;border-radius:30px;padding:14px 20px;z-index:10}.csw-single,.csw-archive,.csw-page{padding-top:40px;padding-bottom:70px}.csw-gallery{overflow:hidden}.csw-gallery-track{display:flex;gap:12px;transition:transform .6s}.csw-gallery-track a{flex:0 0 calc((100% - 36px)/4)}.csw-gallery img{width:100%;height:220px;object-fit:cover}.csw-single>.csw-features{grid-template-columns:repeat(4,1fr);margin:30px 0}.csw-single>.csw-features small{font-size:14px}.csw-archive-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.csw-lightbox{background:#111;border:0;padding:35px;max-width:95vw;max-height:95vh;color:white}.csw-lightbox::backdrop{background:#000d}.csw-lightbox img{max-width:75vw;max-height:80vh;object-fit:contain}.csw-lightbox button{font-size:30px;background:transparent;border:0;color:white;cursor:pointer}.csw-close{position:absolute;top:0;right:10px}@media(max-width:900px){.csw-products{grid-template-columns:1fr}.csw-product-card{flex-basis:calc((100% - 14px)/2)}.csw-original-grid{grid-template-columns:repeat(2,1fr)}.csw-archive-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.csw-product-card{flex-basis:82%}.csw-original-grid,.csw-archive-grid{grid-template-columns:1fr}.csw-single>.csw-features{grid-template-columns:1fr 1fr}.csw-nav a{padding:12px}.csw-hero{height:300px}}@media(prefers-reduced-motion:reduce){.csw-slide,.csw-product-track,.csw-gallery-track{transition:none!important}}

/* V8.2 navigation & recovery */
.csw-nav{position:relative;z-index:30}.csw-nav .csw-wrap>ul{align-items:stretch}.csw-nav li{position:relative}.csw-nav ul ul{display:none;position:absolute;top:100%;left:0;background:#4b4b4b;min-width:230px;z-index:50;flex-direction:column}.csw-nav ul ul ul{top:0;left:100%}.csw-nav li:hover>ul,.csw-nav li:focus-within>ul{display:flex}.csw-directory{padding-top:20px;padding-bottom:55px}.csw-directory-grid{display:flex;flex-wrap:wrap;gap:12px}.csw-directory-grid a{background:#fff;padding:12px 16px;color:#333;border-bottom:2px solid #ed741c;text-decoration:none}@media(max-width:800px){.csw-nav ul ul,.csw-nav ul ul ul{position:static;display:block;background:#555}.csw-nav .csw-wrap>ul{display:block}.csw-nav ul ul a{padding-left:32px}}

/* V8.3: prevent legacy stylesheet from stretching header media; preserve photo aspect ratio. */
.csw-hero-images .csw-slide{background-repeat:no-repeat;background-size:cover!important;background-position:center center!important;transform:none!important;width:100%!important;height:100%!important}
.csw-hero .csw-logo img{height:auto!important;max-width:min(85vw,450px)!important;object-fit:contain!important}
.csw-single .csw-gallery-track a{display:block;min-width:0}.csw-single .csw-gallery-track img{display:block;width:100%;height:clamp(160px,19vw,250px);object-fit:cover}
.csw-product-card .csw-features{display:none} /* RKPM-sized compact cards, details remain on individual pages */
@media(max-width:900px){.csw-single .csw-gallery-track a{flex-basis:calc((100% - 12px)/2)}}
@media(max-width:560px){.csw-single .csw-gallery-track a{flex-basis:85%}}

/* V8.4 social and video blocks: keep the original three-column content row. */
.csw-home-media{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0 8px}
.csw-home-video,.csw-home-reviews{min-width:0;background:#fff;border-top:3px solid var(--csw-orange);padding:22px 24px;box-shadow:0 2px 9px #0000000d}
.csw-home-video h2,.csw-home-reviews h2{font-size:21px;margin-top:0}
.csw-video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#222}
.csw-video-frame iframe{width:100%;height:100%;border:0;display:block}
.csw-fb-frame{width:100%;max-width:500px;min-height:440px;overflow:hidden}
.csw-fb-frame iframe{width:100%;height:520px;border:0;display:block}
.csw-social-panel{min-width:0}.csw-embed-prompt{color:#666;font-style:italic}
.csw-social-fallback a,.csw-home-reviews a{color:var(--csw-orange)}
.csw-reviews-widget{max-width:100%;overflow:hidden}
@media(max-width:760px){.csw-home-media{grid-template-columns:1fr}.csw-fb-frame{min-height:360px}}

/* V8.5: RKPM-style white feature tiles, slightly overlapping product photographs. */
.csw-single .csw-gallery{position:relative;z-index:1}
.csw-single .csw-feature-overlap{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:-30px 22px 34px;padding:0;align-items:stretch}
.csw-single .csw-feature-overlap .csw-feature{min-width:0;min-height:100px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:10px;padding:18px 12px;background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.15);border:1px solid #ececec;border-bottom:3px solid var(--csw-orange);}
.csw-single .csw-feature-overlap .csw-feature-icon{font-size:29px;line-height:1.1;color:var(--csw-orange);font-weight:600}
.csw-single .csw-feature-overlap .csw-feature-text{font-size:13px;line-height:1.45;color:#333;overflow-wrap:anywhere}
.csw-single .csw-feature-overlap .csw-feature--text .csw-feature-text{font-size:15px;font-weight:600}
.csw-single .csw-feature-overlap .csw-feature--icon{min-height:100px}
@media(max-width:800px){.csw-single .csw-feature-overlap{grid-template-columns:repeat(2,minmax(0,1fr));margin:-20px 12px 28px}}
@media(max-width:480px){.csw-single .csw-feature-overlap{gap:9px;margin:-15px 6px 26px}.csw-single .csw-feature-overlap .csw-feature{min-height:90px;padding:12px 8px}.csw-single .csw-feature-overlap .csw-feature-text{font-size:12px}}

/* V8.6 seamless photo strip and RKPM-inspired floating feature tiles */
.csw-single .csw-gallery{width:100%;margin:0!important;padding:0!important;overflow:hidden;line-height:0;background:#eee}
.csw-single .csw-gallery-track{display:flex;gap:0!important;column-gap:0!important;margin:0!important;padding:0!important;align-items:stretch}
.csw-single .csw-gallery-track a{display:block;flex:0 0 25%;margin:0!important;padding:0!important;border:0!important;line-height:0;overflow:hidden}
.csw-single .csw-gallery-track img{display:block;width:100%;height:clamp(220px,25vw,340px);margin:0!important;padding:0!important;border:0!important;object-fit:cover;object-position:center;vertical-align:bottom}
.csw-single .csw-feature-overlap{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:-38px 24px 38px!important;padding:0!important}
.csw-single .csw-feature-overlap .csw-feature{background:#fff;border:0;border-radius:0;box-shadow:0 5px 18px rgba(0,0,0,.13);min-height:108px;padding:16px 12px;text-align:center}
.csw-single .csw-feature-overlap .csw-feature-icon{color:var(--csw-orange);font-size:27px}
.csw-single .csw-feature-overlap .csw-feature-text{color:#383838;font-size:13px}
@media(max-width:900px){.csw-single .csw-gallery-track a{flex-basis:50%}.csw-single .csw-feature-overlap{grid-template-columns:repeat(2,minmax(0,1fr));margin:-28px 16px 30px!important}}
@media(max-width:560px){.csw-single .csw-gallery-track a{flex-basis:85%}.csw-single .csw-gallery-track img{height:250px}.csw-single .csw-feature-overlap{gap:9px;margin:-22px 8px 26px!important}.csw-single .csw-feature-overlap .csw-feature{min-height:92px;padding:12px 8px}}

/* V8.7: direct translation of RKPM v1.7.9 accommodation gallery measurements. */
.csw-product-single-v87{display:block;width:100%;overflow:visible}
.csw-rkpm-banner{position:relative!important;display:block!important;width:100%!important;max-width:100%!important;height:clamp(230px,25vw,380px)!important;overflow:hidden!important;background:#eee!important;margin:0!important;padding:0!important;box-sizing:border-box!important;line-height:normal!important}
.csw-rkpm-banner .csw-rkpm-track{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:0!important;width:100%!important;height:100%!important;align-items:stretch!important;transition:transform .55s ease;transform:translateX(0);margin:0!important;padding:0!important;list-style:none!important}
.csw-rkpm-banner .csw-rkpm-photo{position:relative!important;display:block!important;float:none!important;flex:0 0 33.333333%!important;max-width:33.333333%!important;width:33.333333%!important;min-width:0!important;height:100%!important;margin:0!important;padding:0!important;overflow:hidden!important;box-sizing:border-box!important;cursor:zoom-in}
.csw-rkpm-banner .csw-rkpm-photo img{display:block!important;width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;min-height:0!important;object-fit:cover!important;object-position:center!important;margin:0!important;padding:0!important;border:0!important}
.csw-rkpm-banner .csw-rkpm-prev,.csw-rkpm-banner .csw-rkpm-next{position:absolute!important;z-index:6!important;top:50%!important;transform:translateY(-50%)!important;display:flex!important;align-items:center!important;justify-content:center!important;width:42px!important;height:52px!important;border:0!important;background:rgba(255,255,255,.14)!important;color:#333!important;font-size:38px!important;cursor:pointer!important}
.csw-rkpm-banner .csw-rkpm-prev{left:8px!important}.csw-rkpm-banner .csw-rkpm-next{right:8px!important}
.csw-rkpm-facts{position:relative!important;z-index:10!important;box-sizing:border-box!important;display:flex!important;flex-direction:row!important;align-items:stretch!important;justify-content:center!important;width:100%!important;max-width:none!important;margin:-49px auto 0!important;padding:0 16px 53px!important;background:linear-gradient(to bottom,transparent 49px,#f4f6f9 49px)!important;clear:both!important}
.csw-rkpm-facts>.csw-feature-overlap{position:relative!important;box-sizing:border-box!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:stretch!important;justify-content:center!important;column-gap:13px!important;row-gap:13px!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:none!important}
.csw-rkpm-facts>.csw-feature-overlap>.csw-feature{position:relative!important;box-sizing:border-box!important;display:flex!important;float:none!important;flex:0 0 170px!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;width:170px!important;max-width:170px!important;min-width:0!important;min-height:144px!important;height:auto!important;margin:0!important;padding:24px 12px 18px!important;background:#fff!important;border:1px solid #e7e7e7!important;border-radius:0!important;box-shadow:0 1px 1px rgba(0,0,0,.12)!important;text-align:center!important;color:#555!important}
.csw-rkpm-facts .csw-feature-icon{display:block!important;flex:0 0 auto!important;font-size:42px!important;line-height:1!important;margin:0 auto!important;color:#777!important}
.csw-rkpm-facts .csw-feature-text{display:block!important;width:100%!important;margin:0!important;color:#555!important;font-family:inherit!important;font-size:14px!important;font-weight:600!important;line-height:1.55!important;text-align:center!important;letter-spacing:normal!important;text-transform:none!important;overflow-wrap:anywhere!important}
.csw-rkpm-description{padding-top:20px;padding-bottom:55px}
.csw-rkpm-lightbox{background:#111;border:0;padding:32px;max-width:96vw;max-height:96vh;color:#fff}.csw-rkpm-lightbox::backdrop{background:#000e}.csw-rkpm-lightbox img{max-width:78vw;max-height:80vh;object-fit:contain}.csw-rkpm-lightbox button{font-size:30px;background:transparent;border:0;color:#fff;cursor:pointer}.csw-rkpm-close{position:absolute;top:0;right:10px}
@media(max-width:700px){.csw-rkpm-banner{height:260px!important}.csw-rkpm-banner .csw-rkpm-photo{flex-basis:50%!important;max-width:50%!important;width:50%!important}}
@media(max-width:760px){.csw-rkpm-facts{margin-top:-25px!important;padding-bottom:32px!important;background:linear-gradient(to bottom,transparent 25px,#f4f6f9 25px)!important}.csw-rkpm-facts>.csw-feature-overlap>.csw-feature{flex-basis:calc(50% - 7px)!important;width:calc(50% - 7px)!important;max-width:190px!important}}
@media(max-width:440px){.csw-rkpm-banner .csw-rkpm-photo{flex-basis:100%!important;max-width:100%!important;width:100%!important}}
@media(max-width:380px){.csw-rkpm-facts{padding-left:8px!important;padding-right:8px!important}.csw-rkpm-facts>.csw-feature-overlap{gap:8px!important}.csw-rkpm-facts>.csw-feature-overlap>.csw-feature{flex-basis:calc(50% - 4px)!important;width:calc(50% - 4px)!important;padding:18px 7px!important}}

/* V8.9: accessible desktop hover and touch-friendly mobile dropdowns */
.csw-nav .csw-wrap{position:relative}.csw-nav .menu{align-items:stretch}.csw-nav li{position:relative}.csw-nav .menu>li{display:flex;align-items:stretch;flex-wrap:wrap}.csw-nav .menu>li>a{flex:1}.csw-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:235px;background:#444;box-shadow:0 8px 22px #0004;z-index:100;padding:0;margin:0;list-style:none;flex-direction:column}.csw-nav .sub-menu .sub-menu{top:0;left:100%}.csw-nav .sub-menu li{width:100%;display:flex;align-items:stretch;flex-wrap:wrap}.csw-nav .sub-menu a{padding:13px 16px;white-space:normal;flex:1}.csw-nav li:hover>.sub-menu,.csw-nav li:focus-within>.sub-menu,.csw-nav li.csw-expanded>.sub-menu{display:flex}.csw-nav .csw-submenu-toggle{background:transparent;border:0;color:white;cursor:pointer;padding:0 12px;font-size:15px}.csw-nav .csw-submenu-toggle:hover,.csw-nav .csw-submenu-toggle:focus-visible{background:#ed741c}.csw-mobile-menu{display:none;background:#454545;color:white;border:1px solid #aaa;padding:12px 18px;font-size:16px;cursor:pointer}.csw-nav a:focus-visible,.csw-nav button:focus-visible{outline:2px solid #fff;outline-offset:-2px}
@media(max-width:800px){.csw-mobile-menu{display:block}.csw-nav #csw-main-menu{display:none!important;flex-direction:column;align-items:stretch}.csw-nav.csw-mobile-open #csw-main-menu{display:flex!important}.csw-nav #csw-main-menu>li{display:flex;flex-wrap:wrap;width:100%;border-bottom:1px solid #777}.csw-nav .sub-menu,.csw-nav .sub-menu .sub-menu{position:static!important;width:100%;min-width:0;box-shadow:none;display:none!important;background:#555}.csw-nav li:hover>.sub-menu,.csw-nav li:focus-within>.sub-menu{display:none!important}.csw-nav li.csw-expanded>.sub-menu{display:flex!important}.csw-nav .sub-menu li{width:100%}.csw-nav .sub-menu a{padding-left:30px}.csw-nav .sub-menu .sub-menu a{padding-left:46px}.csw-nav .csw-submenu-toggle{min-width:48px;font-size:20px}}
