/* 2026-09-01 v1.3
 * - Removed inherited arrow margins so carousel icons remain optically centered.
 *
 * 2026-09-01 v1.2
 * - Removed the legacy 40vw minimum from each market card's copy area.
 *
 * 2026-09-01 v1.1
 * - Isolated the carousel from legacy half-width and column-layout content rules.
 *
 * 2026-09-01 v1.0
 * - Added the responsive database-driven Markets carousel.
 * - Matched the calm divided-card interaction used by the Holthinrichs product reel.
 */

.template-netsetup_markets .netsetup-markets-page { display:block; min-height:0; }
.template-netsetup_markets .netsetup-markets-page > article { display:block!important; width:100%; max-width:none; min-height:0; padding:0; }
.netsetup-markets-introduction { width:min(1040px,calc(100vw - 180px)); max-width:none!important; margin:0 auto; padding:190px 0 100px!important; }
.netsetup-markets-introduction .sblock-wrapper { padding:0; }
.netsetup-markets-introduction h1 { max-width:960px; margin:0 0 34px; font-size:clamp(54px,7vw,112px); font-weight:500; letter-spacing:-.045em; line-height:.95; }
.netsetup-markets-introduction p { max-width:760px; margin:0; font-size:clamp(19px,1.65vw,27px); line-height:1.48; }
.netsetup-markets-introduction p + p { margin-top:18px; }
.netsetup-markets-introduction svg,.netsetup-markets-introduction img { display:none; }
.netsetup-markets-showcase { position:relative; display:block; min-height:0; padding:72px 0 96px; overflow:hidden; background:var(--lightcolor_light); }
.netsetup-markets-heading { width:min(1480px,calc(100vw - 180px)); max-width:none!important; margin:0 auto 48px; }
.netsetup-markets-heading h2 { margin:0; font-size:clamp(38px,4.25vw,68px); font-weight:500; letter-spacing:-.035em; line-height:1; }
.netsetup-markets-heading p { max-width:670px; margin:20px 0 0; color:var(--textcolor); font-size:17px; line-height:1.6; }
.netsetup-markets-slider { display:block!important; width:100%; max-width:none!important; margin:0!important; overflow:visible; }
.netsetup-markets-slider .swiper-wrapper { display:flex!important; flex-direction:row!important; gap:0!important; width:100%; max-width:none!important; margin:0!important; }
.netsetup-market-card { position:relative; height:auto; margin:0; box-sizing:border-box; }
.netsetup-market-card::after { position:absolute; top:0; right:0; bottom:0; width:1px; background:linear-gradient(to bottom,rgba(111,124,120,.28) 0%,rgba(111,124,120,.28) calc(100% - 72px),transparent 100%); content:""; pointer-events:none; }
.netsetup-market-media { aspect-ratio:1/1; overflow:hidden; background:#e9eee9; }
.netsetup-market-media img { display:block; width:100%; height:100%; max-height:none; object-fit:cover; filter:saturate(.72) contrast(.94); transition:transform .45s cubic-bezier(.16,1,.3,1),filter .45s ease; }
.netsetup-market-copy { display:block!important; width:100%; min-width:0!important; max-width:none!important; min-height:220px; padding:28px 30px 34px; box-sizing:border-box; }
.netsetup-market-copy h3 { margin:0; font-size:clamp(23px,2vw,32px); font-weight:500; letter-spacing:-.025em; line-height:1.08; }
.netsetup-market-copy p { display:-webkit-box; margin:18px 0 0; overflow:hidden; color:var(--textcolor); font-size:15px; line-height:1.58; -webkit-box-orient:vertical; -webkit-line-clamp:4; line-clamp:4; }
.netsetup-markets-button { position:absolute; z-index:5; top:calc((100% - 220px)/2); display:flex; align-items:center; justify-content:center; width:52px; height:52px; margin-top:-26px; padding:0; border:1px solid rgba(111,124,120,.32); border-radius:50%; background:var(--lightcolor_light); color:var(--frontcolor_dark); font:400 23px/1 sans-serif; cursor:pointer; transition:background-color .2s ease,color .2s ease,opacity .2s ease; }
.netsetup-markets-button > span { margin:0!important; }
.netsetup-markets-button:hover,.netsetup-markets-button:focus-visible { background:var(--frontcolor); color:var(--lightcolor_light); }
.netsetup-markets-button:focus-visible { outline:3px solid var(--yellow); outline-offset:3px; }
.netsetup-markets-button.swiper-button-disabled { opacity:0; pointer-events:none; }
.netsetup-markets-prev { left:28px; }
.netsetup-markets-next { right:28px; }

@media (hover:hover) and (pointer:fine) {
	.netsetup-market-card:hover .netsetup-market-media img { filter:saturate(.95) contrast(1); transform:scale(1.025); }
}

@media (max-width:820px) {
	.netsetup-markets-introduction { width:calc(100vw - 40px); padding:140px 0 68px!important; }
	.netsetup-markets-introduction h1 { margin-bottom:24px; font-size:clamp(48px,16vw,72px); }
	.netsetup-markets-introduction p { font-size:18px; }
	.netsetup-markets-showcase { padding:48px 0 72px; }
	.netsetup-markets-heading { width:calc(100vw - 40px); margin-bottom:30px; }
	.netsetup-markets-heading p { font-size:15px; }
	.netsetup-market-copy { min-height:205px; padding:22px 20px 28px; }
	.netsetup-markets-button { top:calc((100% - 205px)/2); width:44px; height:44px; margin-top:-22px; }
	.netsetup-markets-prev { left:14px; }
	.netsetup-markets-next { right:14px; }
}

@media (prefers-reduced-motion:reduce) {
	.netsetup-market-media img,.netsetup-markets-button { transition-duration:0ms; }
}
