/* ==============================================================
   Anmol Curved Banner Slider — v6
   ============================================================== */
.acs-wrap{position:relative;width:100%;margin-left:auto;margin-right:auto;font-family:inherit;color:#1f2937;--acs-primary:#117B6E;--acs-accent:#E89B3C}
.acs-wrap.is-fullwidth{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;max-width:100vw}

.acs-stage{position:relative;width:100%;padding-top:50%;overflow:hidden;background:#fff;touch-action:pan-y;user-select:none}
.acs-stage.is-draggable{cursor:grab}
.acs-stage.is-dragging{cursor:grabbing}

.acs-track{position:absolute;inset:0;display:flex;transition:transform .7s cubic-bezier(.5,.1,.25,1);will-change:transform}
.acs-track.no-anim{transition:none !important}
.acs-slide{position:relative;flex:0 0 100%;width:100%;height:100%}

/* shared cell defaults */
.acs-cell{position:absolute;overflow:hidden;/*background:#f3f4f6*/}
.acs-cell img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}
.acs-cell:hover img{transform:scale(1.04)}
.acs-cell .acs-link{position:absolute;inset:0;z-index:5;text-indent:-9999px;color:transparent}

.acs-label{position:absolute;left:0;right:0;bottom:14px;text-align:center;color:#fff;font-weight:500;font-size:13px;letter-spacing:.08em;text-transform:uppercase;z-index:3;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:8px}
.acs-label--dark{color:var(--acs-primary)}
.acs-label .acs-icon{display:inline-flex;width:18px;height:18px}
.acs-label .acs-icon svg{width:100%;height:100%;fill:currentColor}

.acs-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.92);border:0;display:flex;align-items:center;justify-content:center;z-index:4;box-shadow:0 6px 22px rgba(0,0,0,.25);cursor:pointer;transition:transform .25s}
.acs-play:hover{transform:translate(-50%,-50%) scale(1.08)}
.acs-play::before{content:"";display:block;width:0;height:0;border-left:16px solid var(--acs-primary);border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px}

/* ============ COLLAGE ============
   NOTE: heights are given as `padding-top` percentages of each cell's own
   parent width so the shapes stay proportional at any viewport width.
   The circle uses aspect-ratio:1 to guarantee a TRUE circle.  */

/* Slot 1 — TRUE circle, top-left */
/* ==============================================================
   COLLAGE — positions tuned to match the reference image exactly
   Row 1: circle | work | commit | care (4 cells, ~2% gaps)
   Row 2: products | portraits+button | woman | stat (5 items)
   ============================================================== */

/* ---- Slot 1 — TRUE circle, teal ring + white gap + image ---- */
.acs-layout--collage .acs-c1{
	top:3%;left:3%;width:22%;height:auto;
	aspect-ratio:1;
	border-radius:50%;
	border:2px solid var(--acs-primary);
	background:#fff;                 /* shows through as the gap ring */
	padding:0;
}

/* Universal media-cover (applies to any cell wherever .acs-img-wrap lands) */
.acs-layout--collage .acs-cell .acs-img-wrap{
	position:absolute;inset:0;width:100%;height:100%;
	overflow:hidden;background:transparent;
	border-radius:inherit;
}
.acs-layout--collage .acs-cell .acs-img-wrap img,
.acs-layout--collage .acs-cell .acs-img-wrap video{
	position:absolute;inset:0;width:100%;height:100%;
	object-fit:cover;display:block;border:0;
	border-radius:inherit;
}
.acs-layout--collage .acs-cell .acs-img-wrap iframe{
	position:absolute;top:50%;left:50%;
	height:150%;
	aspect-ratio:16 / 9;
	min-width:100%;
	transform:translate(-50%,-50%);
	border:0;border-radius:0;
	pointer-events:none;
}

/* Circle: inset the wrap by 4% so the white background shows as a thin ring
   between the teal border and the image, matching the reference exactly */
.acs-layout--collage .acs-c1 .acs-img-wrap{
	inset:4%;width:auto;height:auto;
	border-radius:50%;background:#000;
}
.acs-layout--collage .acs-c1 .acs-img-wrap iframe{border-radius:50%}

/* ---- Row 1 (top) — image + label cells with curved bottom corners ---- */
/*.acs-layout--collage .acs-c2{top:5%;left:27%;width:22%;height:46%;border-radius:0 0 70% 0}
.acs-layout--collage .acs-c3{top:5%;left:51%;width:22%;height:46%;border-radius:0}
.acs-layout--collage .acs-c4{top:5%;left:75%;width:24%;height:46%;border-radius:0 80% 0 0 }*/

.acs-layout--collage .acs-c2{top:5%;left:26%;width:23%;height:46%;}
.acs-layout--collage .acs-c3{top:5%;left:50%;width:24%;height:46%;}
.acs-layout--collage .acs-c4{top:5%;left:75%;width:24%;height:46%;}

.acs-layout--collage .acs-c2 img{border-radius:0 0 70% 0}
.acs-layout--collage .acs-c3 img{border-radius:0}
.acs-layout--collage .acs-c4 img{border-radius:0 80% 0 0 }


/* ---- Row 2 (bottom) ---- */
/* Products — larger cell on the left, curve on top-right (inside corner) */
.acs-layout--collage .acs-c5{top:53%;left:3%;width:22%;height:46%;border-radius:50% 0 0 50%}
/* Products label is a small teal pill in the bottom-right of the cell */
.acs-layout--collage .acs-c5 .acs-label{
	left:auto;right:0;bottom:0;
	width:auto;max-width:60%;
	background:var(--acs-primary);
	color:#fff;padding:10px 20px 10px 24px;
	justify-content:flex-end;
}

.acs-layout--collage .acs-c2 .acs-label{text-align: right;}

/* Portraits — two small images side by side (top of column 2) */
.acs-layout--collage .acs-c6{top:53%;left:26%;width:23%;height:26%;display:grid;grid-template-columns:1fr 1fr;gap:6px;background:transparent;overflow:visible}
.acs-layout--collage .acs-c6>div{overflow:hidden;background:#f3f4f6;border-radius:2px}
.acs-layout--collage .acs-c6>div img{width:100%;height:100%;object-fit:cover}

/* Orange button — bigger right-side rounding for the flag/pill effect */
.acs-layout--collage .acs-c7{
	top:81%;left:26%;width:23%;height:18%;
	background:var(--acs-accent);
	border-radius:4px 40px 40px 4px;
	display:flex;align-items:center;justify-content:center;
	color:#fff;font-weight:600;font-size:14px;
	letter-spacing:.06em;text-transform:uppercase;
	text-align:center;padding:0 16px;gap:10px;cursor:pointer;
}
.acs-layout--collage .acs-c7 .acs-icon{width:20px;height:20px}
.acs-layout--collage .acs-c7 .acs-icon svg{fill:#fff}
.acs-layout--collage .acs-c7 a{color:inherit;text-decoration:none}

/* Woman exercising — curve on TOP-LEFT (was top-right, this was the bug) 
.acs-layout--collage .acs-c8{top:55%;left:56%;width:20%;height:44%;border-radius:80% 0 0 0}*/


.acs-layout--collage .acs-c8{top:53%;left:50%;width:24%;height:46%;}
.acs-layout--collage .acs-c8 img{border-radius:0 0 0 80%}

/* Stat block — text on the right, transparent background */
.acs-layout--collage .acs-c9{
	top:60%;left:78%;width:21%;height:40%;
	background:transparent;overflow:visible;
	display:flex;flex-direction:column;align-items:center;justify-content:center;
	text-align:center;padding:0 12px;
}
.acs-layout--collage .acs-c9 .acs-stat-num{font-size:clamp(48px,7vw,96px);font-weight:300;line-height:1;color:var(--acs-primary);letter-spacing:-.02em}
.acs-layout--collage .acs-c9 .acs-stat-num span{color:var(--acs-accent);font-weight:400}
.acs-layout--collage .acs-c9 .acs-stat-sub{font-size:14px;color:#374151;margin-top:6px;letter-spacing:.04em}
.acs-layout--collage .acs-c9 .acs-stat-desc{font-size:13px;color:#6b7280;margin-top:14px;line-height:1.5;max-width:260px}

.acs-layout--collage .acs-c2 .acs-label{align-items: end; justify-content: end; color: #0D4840; padding-right: 15px;}

.acs-layout--collage .acs-c3 .acs-label{align-items: start;  justify-content: start; padding-left: 15px;}

.acs-layout--collage .acs-c4 .acs-label{align-items: start; justify-content: start; padding-left: 15px;}

.acs-layout--collage .acs-c3 .acs-label{align-items: start; justify-content: start; padding-left: 15px; color:#fff;}

/* ============ HERO ============ */
.acs-layout--hero{position:relative;width:100%;height:100%}
.acs-layout--hero .acs-bg{position:absolute;inset:0;overflow:hidden}
.acs-layout--hero .acs-bg img,.acs-layout--hero .acs-bg video{width:100%;height:100%;object-fit:cover;display:block}
.acs-layout--hero .acs-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.55) 100%)}
.acs-layout--hero .acs-hero-text{position:absolute;left:6%;bottom:10%;right:6%;color:#fff;z-index:2;max-width:680px}
.acs-layout--hero .acs-hero-eyebrow{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--acs-accent);margin-bottom:14px;font-weight:500}
.acs-layout--hero h2{font-size:clamp(28px,4.2vw,56px);font-weight:600;line-height:1.05;margin:0 0 16px;letter-spacing:-.01em}
.acs-layout--hero .acs-hero-sub{font-size:clamp(14px,1.4vw,18px);line-height:1.55;opacity:.92;margin-bottom:22px;max-width:540px}
.acs-layout--hero .acs-btn{display:inline-flex;align-items:center;gap:10px;background:var(--acs-accent);color:#fff;padding:13px 28px;text-decoration:none;border-radius:30px;font-weight:600;font-size:14px;letter-spacing:.06em;text-transform:uppercase;transition:transform .25s, box-shadow .25s}
.acs-layout--hero .acs-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.25)}

/* ============ VIDEO ============ */
.acs-layout--video{position:relative;width:100%;height:100%;background:#000;overflow:hidden}
.acs-layout--video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
/* iframe cover for the full-video layout — same technique as the circle */
.acs-layout--video iframe{
	position:absolute;top:50%;left:50%;
	height:100%;
	width:calc(100% * 16 / 9);
	min-width:100%;
	transform:translate(-50%,-50%);
	border:0;pointer-events:none;
}
.acs-layout--video .acs-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.6) 100%);display:flex;align-items:flex-end;padding:6% 6%;z-index:2;pointer-events:none}
.acs-layout--video .acs-video-text{color:#fff;max-width:600px;pointer-events:auto}
.acs-layout--video .acs-video-text h2{font-size:clamp(24px,3.4vw,46px);font-weight:600;margin:0 0 10px;line-height:1.1}
.acs-layout--video .acs-video-text p{font-size:clamp(13px,1.2vw,16px);opacity:.9;margin:0 0 18px}
.acs-layout--video .acs-btn{display:inline-flex;align-items:center;gap:10px;background:var(--acs-accent);color:#fff;padding:13px 28px;text-decoration:none;border-radius:30px;font-weight:600;font-size:14px;letter-spacing:.06em;text-transform:uppercase}

/* ============ SPLIT ============ */
.acs-layout--split{display:grid;grid-template-columns:1fr 1fr;width:100%;height:100%}
.acs-layout--split.is-reversed .acs-split-img{order:2}
.acs-layout--split .acs-split-img{position:relative;overflow:hidden;background:#f3f4f6}
.acs-layout--split .acs-split-img img,.acs-layout--split .acs-split-img video{width:100%;height:100%;object-fit:cover;display:block}
.acs-layout--split .acs-split-content{display:flex;flex-direction:column;justify-content:center;padding:5% 6%;background:#fafafa}
.acs-layout--split .acs-split-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--acs-accent);margin-bottom:14px;font-weight:600}
.acs-layout--split h2{font-size:clamp(24px,3vw,40px);font-weight:600;line-height:1.15;margin:0 0 16px;color:#111;letter-spacing:-.01em}
.acs-layout--split p{font-size:clamp(13px,1.1vw,16px);line-height:1.65;color:#4b5563;margin:0 0 20px;max-width:480px}
.acs-layout--split .acs-btn{display:inline-flex;align-items:center;gap:10px;background:var(--acs-accent);color:#fff;padding:13px 28px;text-decoration:none;border-radius:30px;font-weight:600;font-size:14px;letter-spacing:.06em;text-transform:uppercase;align-self:flex-start}

/* ============ NAVIGATION ============ */
.acs-nav{position:absolute;left:0;right:0;bottom:14px;display:flex;align-items:center;justify-content:center;gap:10px;z-index:20}
.acs-dot{width:8px;height:8px;border-radius:50%;background:rgba(17,123,110,.3);border:0;padding:0;cursor:pointer;transition:all .25s}
.acs-dot.is-active{background:var(--acs-primary);width:24px;border-radius:4px}
.acs-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;background:rgba(255,255,255,.85);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--acs-primary);font-size:22px;z-index:21;box-shadow:0 4px 16px rgba(0,0,0,.1);transition:background .25s}
.acs-arrow:hover{background:#fff}
.acs-arrow--prev{left:14px}
.acs-arrow--next{right:14px}

/* ============ LIGHTBOX ============ */
.acs-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.acs-lightbox-inner{position:relative;width:min(960px,100%);aspect-ratio:16/9;background:#000;cursor:default}
.acs-lightbox iframe,.acs-lightbox video{width:100%;height:100%;border:0}
.acs-lightbox-close{position:absolute;top:-40px;right:0;background:none;border:0;color:#fff;font-size:28px;cursor:pointer;line-height:1}

/* ============ RESPONSIVE ============ */
@media (max-width: 900px){
	.acs-stage{padding-top:0;height:auto;min-height:auto}
	.acs-track{position:relative;height:auto}
	.acs-slide{height:auto}
	.acs-layout--collage{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px}
	.acs-layout--collage .acs-cell{position:relative;top:auto !important;left:auto !important;width:100% !important;height:auto !important;aspect-ratio:1 !important;border-radius:14px !important}
	.acs-layout--collage .acs-c1,
	.acs-layout--collage .acs-c1 .acs-img-wrap,
	.acs-layout--collage .acs-c1 .acs-img-wrap img,
	.acs-layout--collage .acs-c1 .acs-img-wrap video{border-radius:50% !important}
	.acs-layout--collage .acs-c1 .acs-img-wrap iframe{border-radius:0 !important}
	.acs-layout--collage .acs-c9{aspect-ratio:auto !important;padding:18px}
	.acs-layout--collage .acs-c7{aspect-ratio:auto !important;min-height:60px;border-radius:14px !important}
	.acs-layout--collage .acs-c6{aspect-ratio:auto !important}
	.acs-layout--split{grid-template-columns:1fr;min-height:520px}
	.acs-layout--split.is-reversed .acs-split-img{order:0}
	.acs-layout--hero,.acs-layout--video{min-height:420px}
	.acs-arrow{width:34px;height:34px;font-size:18px}
	.acs-arrow--prev{left:6px}.acs-arrow--next{right:6px}
}
