
/*-- Slideshow first-child: zero padding so it goes edge-to-edge against the header */
.PageManagerContent .panel .cell .cell-content.module-presentation:first-child { padding: 0; }

.PageManagerContent .panel .panel-title:empty + .panel-table .cell .cell-content.module-presentation:first-child { padding-top: 0; }

.PageManagerContent .panel .panel-title + .panel-table .cell .cell-content.module-presentation:first-child { padding-top: 0; }

/*-- Bridge rule for the presentation module: the slide goes full-bleed inside its panel,
     so the cell-content gets zero padding. The actual `.module-presentation` slide layout
     lives in the module's own option.ascx <style> block (where module CSS belongs). */
.PageManagerContent .panel .cell .cell-content.module-presentation { padding: 0 !important; }

/*--===========================================================================
  MODULE: Presentation (CTA + Slideshow)
  ---------------------------------------------------------------------------
  Restored from reference template (references/www-new/common/templates/Default 2/
  styles/style.css ~lines 1681-2050). The Texomaland template originally shipped
  with only bridge rules; the layout system was missing, which caused every CTA
  layer to overlap into one slot. This block restores the full system that the
  presentation module's option.ascx.cs already emits classes for:
    type-C (CTA) layouts A/B/C/D/E with width buckets w25/w33/w40/w50/w60/w67/w75
    type-S (Slideshow) layouts A/B/C/D/E with absolute layer transitions
    spacing variants (.is-spaced), background overlays, content positions
    (.pos-top/.pos-center/.pos-right/...), content sizes (.csize-*).
  Hard-coded reds in source (#a12529 / #ea0a2a / #ffa200) were replaced with
  var(--clay). Heading/body fonts use var(--tl-font-display) (DM Sans).
  ===========================================================================*/
.PageManagerContent .panel .center-no .cell.has-prev-no .module-presentation.not-spaced { margin-left: 0; }

.PageManagerContent .panel .center-no .cell.has-next-no .module-presentation.not-spaced { margin-right: 0; }

.PageManagerContent .panel .panel-table .cell .cell-wrapper .cell-content.module-presentation.not-spaced { margin: 0; }

.PageManagerContent .panel .panel-table .cell .cell-wrapper .cell-content.module-presentation { padding: 0; }

.module-presentation.has-borders { margin-top: 10px !important; margin-bottom: 10px !important; border-top: 2px solid var(--clay); border-bottom: 2px solid var(--clay); }

.module-presentation .presentation-wrapper { position: relative; display: block; overflow: hidden; }

.module-presentation .presentation-wrapper:has(li.with-title-mask) { overflow: visible; }

.module-presentation.has-borders .presentation-wrapper { border-top: 2px solid #fff; border-bottom: 2px solid #fff; }

.module-presentation .presentation-wrapper .size-50 { min-height: 50vh; }

.module-presentation .presentation-wrapper .size-75 { min-height: 82.95vh; }

.module-presentation .presentation-wrapper .size-100,
.module-presentation .presentation-wrapper .screen-height { min-height: 99vh; }

@media only screen and (orientation: portrait) and (max-width: 960px) {
.module-presentation .presentation-wrapper .size-75 { min-height: 77vh; }
}

@media only screen and (orientation: landscape) and (max-height: 600px) {
.module-presentation .presentation-wrapper .size-50 { min-height: 40vw; }

.module-presentation .presentation-wrapper .size-75 { min-height: 65vw; }

.module-presentation .presentation-wrapper .size-100,
.module-presentation .presentation-wrapper .screen-height { min-height: 99vw; }
}

.module-presentation .presentation-wrapper .size-150 { min-height: 150px; }

.module-presentation .presentation-wrapper .size-300 { min-height: 300px; }

.module-presentation .presentation-wrapper .size-400 { min-height: 400px; }

.module-presentation .presentation-wrapper .size-500 { min-height: 500px; }

.module-presentation .presentation-wrapper .size-600 { min-height: 600px; }

.module-presentation .presentation-wrapper .size-700 { min-height: 700px; }

.module-presentation .presentation-wrapper .size-800 { min-height: 800px; }

.module-presentation .presentation-wrapper .size-900 { min-height: 900px; }

.module-presentation .presentation-wrapper > .global-background { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 0; display: block; background-repeat: no-repeat; background-position: center top; background-size: cover; transition: all 1000ms; }

.module-presentation .presentation-wrapper > .global-background .presentation-background-mask { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 3; display: block; background-repeat: no-repeat; background-position: center top; background-size: cover; transition: all 1000ms; }

.module-presentation .presentation-wrapper > ul { position: relative; z-index: 2; display: block; margin: 0; padding: 0; list-style: none; overflow: hidden; }

.module-presentation .presentation-wrapper > ul:has(li.with-title-mask) { overflow: visible; }

.module-presentation .presentation-wrapper > ul > li { position: relative; display: flex; flex-wrap: wrap; width: 100%; margin: 0; padding: 0; color: var(--ink); overflow: hidden; }

.module-presentation .presentation-wrapper > ul > li.with-title-mask { overflow: visible; margin: 3em 0; color: #fff; }

.module-presentation .presentation-wrapper > ul > li .presentation-block { position: relative; display: flex; width: 100%; align-items: center; }

.module-presentation .presentation-wrapper > ul > li .w25 { width: 25%; }

.module-presentation .presentation-wrapper > ul > li .w33 { width: 33.3333%; }

.module-presentation .presentation-wrapper > ul > li .w40 { width: 40%; }

.module-presentation .presentation-wrapper > ul > li .w50 { width: 50%; }

.module-presentation .presentation-wrapper > ul > li .w60 { width: 60%; }

.module-presentation .presentation-wrapper > ul > li .w67 { width: 66.6667%; }

.module-presentation .presentation-wrapper > ul > li .w75 { width: 75%; }

.module-presentation .presentation-wrapper > ul.is-spaced { margin: 0 -.5rem; }

.module-presentation .presentation-wrapper > ul.is-spaced > li .presentation-block { margin: .5rem; }

.module-presentation .presentation-wrapper > ul.is-spaced > li .w25 { width: calc(25% - 1rem); }

.module-presentation .presentation-wrapper > ul.is-spaced > li .w33 { width: calc(33.3333% - 1rem); }

.module-presentation .presentation-wrapper > ul.is-spaced > li .w40 { width: calc(40% - 1rem); }

.module-presentation .presentation-wrapper > ul.is-spaced > li .w50 { width: calc(50% - 1rem); }

.module-presentation .presentation-wrapper > ul.is-spaced > li .w60 { width: calc(60% - 1rem); }

.module-presentation .presentation-wrapper > ul.is-spaced > li .w67 { width: calc(66.6667% - 1rem); }

.module-presentation .presentation-wrapper > ul.is-spaced > li .w75 { width: calc(75% - 1rem); }

.module-presentation .presentation-wrapper > ul > li .dark-background { color: #fff; }

.module-presentation .presentation-wrapper > ul > li .presentation-color { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; opacity: 0.9; display: block; background-color: #151515; background-repeat: no-repeat; background-position: center top; background-size: cover; transition: all 1s; }

.module-presentation .presentation-wrapper > ul > li.done .presentation-color { opacity: 1; transition: opacity 1s; }

.module-presentation .presentation-wrapper > ul > li .presentation-background { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 2; display: block; background-repeat: no-repeat; background-position: center top; background-size: cover; transition: all 1000ms; }

.module-presentation .presentation-wrapper > ul > li .presentation-background-mask { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 3; display: block; background-repeat: no-repeat; background-position: center top; background-size: cover; transition: all 1000ms; }

.module-presentation .presentation-wrapper > ul > li .presentation-background.with-bg-mask .presentation-background-mask { background-size: contain; right: 0; left: -4%; bottom: -3%; }

.module-presentation .presentation-wrapper > ul > li .presentation-background-video { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 0; display: block; background-repeat: no-repeat; background-position: center top; background-size: cover; transition: all 1000ms; }

.module-presentation .presentation-wrapper > ul > li .presentation-background-video video { position: absolute; top: 40%; left: 40%; transform: translate(-40%,-40%); display: block; min-width: 100.01%; min-height: 100.01%; }

.module-presentation .presentation-wrapper.with-bgoverflow { margin-bottom: 1em; }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow { padding-top: 5rem; overflow: visible; }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow-l .presentation-block,
.module-presentation .presentation-wrapper > ul > li.with-bgoverflow-l + li .presentation-block { padding-left: 40%; }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow-r .presentation-block,
.module-presentation .presentation-wrapper > ul > li.with-bgoverflow-r + li .presentation-block { padding-right: 40%; }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow .presentation-info .presentation-info-text { width: 100%; }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow + li .presentation-info .presentation-info-text { width: 100%; }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow .presentation-info .presentation-info-text .presentation-title { font-weight: var(--font-weight-heavy); text-transform: uppercase; }

.module-presentation .presentation-wrapper > ul > li .presentation-background-overflow { z-index: 2; width: 36%; top: -5rem; bottom: -5rem; left: 4%; right: auto; }

.module-presentation .presentation-wrapper > ul > li.with-next-item .presentation-background-overflow { bottom: -7rem; }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow-r .presentation-background-overflow { left: auto; right: 4%; }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow + li .presentation-block.no-description.with-readmore .presentation-readmore a { font-size: 225%; font-weight: var(--font-weight-bold); color: var(--clay); }

.module-presentation .presentation-wrapper > ul > li.with-bgoverflow + li .presentation-block.no-description.with-readmore .presentation-readmore a:hover { color: var(--clay-dark); }

.module-presentation .presentation-wrapper > ul > li .presentation-info { display: flex; position: relative; z-index: 3; width: 100%; max-width: 1920px; height: 100%; margin: auto; padding: 3rem 3.5rem 3.5rem 1.5rem; text-align: left; }

.module-presentation .presentation-wrapper > ul > li .size-150.with-bgcolor .presentation-info { max-width: 1360px; padding: 1.25rem 1.5rem; }

.module-presentation .presentation-wrapper > ul > li .presentation-title-mask { position: absolute; left: -10rem; top: -4.5rem; bottom: -4.5rem; right: -10rem; background-repeat: no-repeat; background-size: cover; background-position: right; }

.module-presentation .presentation-wrapper > ul > li .presentation-info-text { margin: auto; z-index: 1; position: relative; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.color-boxed .presentation-info-text { padding: 30px; box-shadow: #fff 0 0 0 2px; border: #444 2px solid; border-radius: 10px; }

.module-presentation .presentation-wrapper > ul > li .with-bgimg .presentation-info { padding-bottom: 3.1rem; font-weight: var(--font-weight-normal); text-shadow: 0 0 0.4em rgba(255,255,255,0.55); }

.module-presentation .presentation-wrapper > ul > li .with-bgimg.dark-background .presentation-info { text-shadow: 0 0 0.4em rgba(0,0,0,0.55); }

.module-presentation .presentation-wrapper > ul.is-spaced > li .no-bgimg .presentation-info { font-weight: var(--font-weight-normal); }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-top,
.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-top > *:first-child { margin-top: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-bottom,
.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-bottom > *:first-child { margin-bottom: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-left .presentation-info-text { margin-left: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-left-center .presentation-info-text { margin-left: 15%; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-right .presentation-info-text { margin-right: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-right-center .presentation-info-text { margin-right: 15%; }

.module-presentation .presentation-wrapper > ul > li .w67 .presentation-info.pos-right.csize-narrow .presentation-info-text { margin-right: 1em; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-skinnier .presentation-info-text { max-width: 600px; flex-basis: 600px; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-skinny .presentation-info-text { max-width: 720px; flex-basis: 720px; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-thin .presentation-info-text { max-width: 840px; flex-basis: 840px; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-narrow .presentation-info-text { max-width: 960px; flex-basis: 960px; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-normal .presentation-info-text { max-width: 1350px; flex-basis: 1350px; }

.module-presentation .presentation-wrapper > ul > li .with-bgimg.is-sized .presentation-info-text.csize-skinny { max-width: 709px; }

.module-presentation .presentation-wrapper > ul > li .with-bgimg.is-sized .presentation-info-text.csize-thin { max-width: 829px; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-larger { font-size: 120%; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title { position: relative; font-size: 240%; margin-bottom: 1rem; font-weight: var(--font-weight-bold); line-height: 1.1; text-align: left; font-family: var(--tl-font-display); }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.no-description { margin-bottom: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-block:not(.is-sized) .presentation-info.pos-center .presentation-title { text-align: center; }

.module-presentation .presentation-wrapper > ul > li .with-bgimg .presentation-info .presentation-title { font-size: 218.182%; margin-bottom: 1rem; font-weight: var(--font-weight-bold); text-shadow: 0 0 0.3em rgba(255,255,255,0.35); }

.module-presentation .presentation-wrapper > ul > li .with-bgimg.dark-background .presentation-info .presentation-title { text-shadow: 0 0 0.3em rgba(0,0,0,0.35); }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-larger .presentation-title { margin-bottom: 0.15385em; font-size: 325%; font-weight: var(--font-weight-bold); font-family: var(--tl-font-display); }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-larger.csize-skinny .presentation-title { font-size: 300%; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-larger .presentation-title.no-description { margin-bottom: 0; }

.module-presentation .presentation-wrapper > ul.type-C.layout-DE.is-spaced > li .with-bgimg .presentation-info .presentation-title,
.module-presentation .presentation-wrapper > ul.type-C.layout-DE.is-spaced > li .with-bgcolor .presentation-info .presentation-title { min-height: 2.5em; line-height: 1.0; font-weight: var(--font-weight-bold); text-transform: uppercase; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.fancy-title { font-size: 420%; line-height: 100%; color: #fff; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.with-description.fancy-title { margin-top: -0.5rem; margin-bottom: 2.5rem; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.fancy-title3 { font-size: 300%; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.fancy-title > strong { font-weight: 400; font-family: var(--tl-font-display); }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.fancy-title > span { display: inline-block; font-size: 71.429%; line-height: 1.1; color: #fff; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.fancy-title2:not(.fancy-title3) > span { font-size: 61.905%; }

.module-presentation .presentation-wrapper > ul.type-C.layout-DE.is-spaced > li .presentation-info .presentation-title.fancy-title { font-size: 300%; line-height: 100%; }

@media only screen and (max-width: 1440px) {
.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.fancy-title { font-size: 300%; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.fancy-title3 { font-size: 215%; }
}

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-center .presentation-title { text-align: center; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-right .presentation-title { text-align: right; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.align-left { text-align: left !important; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.align-center { text-align: center !important; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title.align-right { text-align: right !important; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description { font-size: inherit; position: relative; }

.module-presentation .presentation-wrapper > ul.is-spaced > li .no-bgimg .presentation-info .presentation-description,
.module-presentation .presentation-wrapper > ul > li .with-bgimg .presentation-info .presentation-description { line-height: 1.3; }

.module-presentation .presentation-wrapper > ul.is-spaced > li .no-bgimg .presentation-info .presentation-title + .presentation-description,
.module-presentation .presentation-wrapper > ul > li .with-bgimg .presentation-info .presentation-title + .presentation-description { padding-top: 0.364em; }

.module-presentation .presentation-wrapper > ul > li .with-bgimg .presentation-info.csize-larger .presentation-title + .presentation-description { padding-top: 0.3333em; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-larger .presentation-description p { margin-top: 1.6em; margin-bottom: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.csize-larger .presentation-description p:first-child { margin-top: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description ul:not(.icon-list) { list-style-type: disc; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description > ul:not(.icon-list) { padding-left: 1em; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description > * + hr { margin-top: 1em; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description > hr + ul { margin-top: 1em; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description > hr + ul:not(.icon-list) li { padding: 0.1em 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description tr + tr td { padding-top: 0.2rem; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description td + td { padding-left: 1.5rem; }

/*-- Inserted-button (rich-text "button" class inside slide descriptions) - opt
     into the canonical clay system instead of the legacy ink outline. */
.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description .button.inserted-button { margin-top: 0.5rem; font-weight: 600; color: #fff; background: var(--clay); border: 1.5px solid var(--clay); border-radius: var(--tl-radius-pill); transition: background 0.15s, border-color 0.15s; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-description .button.inserted-button:hover { color: #fff; background: var(--clay-dark); border-color: var(--clay-dark); }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-readmore { margin-top: 1em; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-left .presentation-readmore { text-align: left; margin-inline: 2.5em; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-readmore.align-center { text-align: center; }

.module-presentation .presentation-wrapper > ul > li .presentation-info.pos-right .presentation-readmore { text-align: right; margin-inline: 2.5em; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-readmore:first-child { margin-top: 0; }

.module-presentation .presentation-wrapper > ul > li .size-150.with-content.with-readmore[max-width~="500px"] .presentation-info { height: 100%; }

.module-presentation .presentation-wrapper > ul > li .size-150.with-content.with-readmore[max-width~="500px"] .presentation-info-text { padding-bottom: 3.5rem; }

.module-presentation .presentation-wrapper > ul > li .size-150.with-content.with-readmore[max-width~="500px"] .presentation-info-text .presentation-readmore { position: absolute; bottom: 1.25rem; left: 1.7rem; right: 1.5rem; }

/*-- Tags */
.module-presentation .presentation-wrapper > ul > li .presentation-block .tag-list { z-index: 1; display: flex; flex-wrap: wrap; max-width: 30%; position: absolute; top: 0.5em; right: 0.5em; list-style-type: none; }

.module-presentation .presentation-wrapper > ul > li .presentation-block .tag-list .tag { padding-right: 0.5em; padding-bottom: 0.25em; }

.module-presentation .presentation-wrapper > ul > li .presentation-block .tag-list .tag:last-of-type { padding-right: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-block .tag-list .tag .tag-name { padding: 0 0.5em; font-size: 15px; border-radius: 5px; color: #fff; }

/*-- CTA layout extras (layout A stacks; layout B alternates left/right; C/D/E grid) */
table.center .module-presentation .presentation-wrapper > ul.type-C { padding-bottom: 4rem; }

table.center .module-presentation:first-child .presentation-wrapper > ul.type-C { padding-top: 4rem; }

/*-- Layout-B alternates per <li>: odd layers get info pinned right (margin-left:50%),
     even layers (2nd, 4th, ...) get info pinned left (margin-right:50%). The codebehind
     emits one <li> per layer for layout-B, so alternation must key on the <li> index.
     The reference template used :nth-child on .presentation-block which is always the
     only child and therefore never alternated. */
.module-presentation .presentation-wrapper > ul.type-C.layout-B > li .presentation-block .presentation-info { width: 50%; margin-left: 50%; margin-right: 0; }

.module-presentation .presentation-wrapper > ul.type-C.layout-B > li:nth-child(2n) .presentation-block .presentation-info { margin-left: 0; margin-right: 50%; }

.module-presentation .presentation-wrapper > ul.type-C > li .presentation-color { opacity: 1; }

table.center-no .module-presentation.not-spaced:not(.is-spaced) .presentation-wrapper { box-shadow: 0 4px 4px -3px rgba(0, 0, 0, 0.25); }

.module-presentation .presentation-wrapper > ul.type-C.layout-D > li .presentation-info { font-size: 95%; }

/*-- Slideshow (type-S): layers stacked absolute, .sel/.hide drive transitions */
.module-presentation .presentation-wrapper > ul.type-S > li { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; transition: 0s; }

.module-presentation .presentation-wrapper > ul.type-S > li.sel,
.module-presentation .presentation-wrapper > ul.type-S > li.hide { transition: opacity 1s, left 1s; }

.module-presentation .presentation-wrapper > ul.type-S > li .presentation-color { opacity: 0; transition: opacity 2000ms; }

.module-presentation .presentation-wrapper > ul.type-S > li.done .presentation-color { opacity: 1; transition-delay: 100ms; }

.module-presentation .presentation-wrapper > ul.type-S.layout-AD > li { left: 100%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-AD > li.sel { left: 0; z-index: 3; }

.module-presentation .presentation-wrapper > ul.type-S.layout-AD > li.hide { left: -100%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-AD.reverse > li { left: -100%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-AD.reverse > li.sel { left: 0; }

.module-presentation .presentation-wrapper > ul.type-S.layout-AD.reverse > li.hide { left: 100%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-ADE > li .presentation-info { opacity: 0; transition: opacity 1s; }

.module-presentation .presentation-wrapper > ul.type-S.layout-ADE > li.done .presentation-info { opacity: 1; }

.module-presentation .presentation-wrapper > ul.type-S.layout-E > li { opacity: 0; }

.module-presentation .presentation-wrapper > ul.type-S.layout-E > li.sel { opacity: 1; z-index: 3; }

.module-presentation .presentation-wrapper > ul.type-S.layout-E > li.hide { opacity: 0; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B { display: flex; flex-wrap: wrap; width: 150%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B > li { position: relative; display: inline-flex; width: 33.33%; align-items: end; transition: margin 1s; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='1'] > li:first-child { margin-left: -33.33%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='2'] > li:first-child { margin-left: -66.66%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='3'] > li:first-child { margin-left: -100%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='4'] > li:first-child { margin-left: -133.33%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='5'] > li:first-child { margin-left: -166.66%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='6'] > li:first-child { margin-left: -200%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='7'] > li:first-child { margin-left: -233.33%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='8'] > li:first-child { margin-left: -266.66%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='9'] > li:first-child { margin-left: -300%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B[data-position='10'] > li:first-child { margin-left: -333.33%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-BC > li .presentation-color { opacity: 0.35; }

.module-presentation .presentation-wrapper > ul.type-S.layout-BC > li:hover .presentation-color { opacity: 1; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C { display: flex; flex-wrap: wrap; width: 133.33%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C > li { position: relative; display: inline-flex; width: 25%; align-items: end; transition: margin 1s; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='1'] > li:first-child { margin-left: -25%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='2'] > li:first-child { margin-left: -50%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='3'] > li:first-child { margin-left: -75%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='4'] > li:first-child { margin-left: -100%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='5'] > li:first-child { margin-left: -125%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='6'] > li:first-child { margin-left: -150%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='7'] > li:first-child { margin-left: -175%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='8'] > li:first-child { margin-left: -200%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='9'] > li:first-child { margin-left: -225%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-C[data-position='10'] > li:first-child { margin-left: -250%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-D > li .presentation-info { position: absolute; top: 0; right: 30%; bottom: 0; left: 0; }

.module-presentation .presentation-wrapper > ul.type-S.layout-D > li .presentation-background { right: 0; left: 70%; background-size: 200% auto; background-position: left top !important; }

.module-presentation .presentation-wrapper > ul.type-S.layout-D > li .presentation-color { left: 0; right: 30%; opacity: 1; }

.module-presentation .presentation-wrapper > ul.type-S.layout-D > li:nth-child(2n) .presentation-info { right: 0; left: 30%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-D > li:nth-child(2n) .presentation-background { right: 70%; left: 0; background-position: right top !important; }

.module-presentation .presentation-wrapper > ul.type-S.layout-D > li:nth-child(2n) .presentation-color { right: 0; left: 30%; }

/*-- Slideshow controls (pagination dots, prev/next chevrons, loading bar) */
.module-presentation .presentation-wrapper .presentation-arrows,
.module-presentation .presentation-wrapper .presentation-pagination { display: none; }

.module-presentation .presentation-wrapper.nav-pagination .presentation-pagination { position: absolute; z-index: 5; left: 50%; right: auto; bottom: 1rem; transform: translateX(-50%); display: flex; gap: 0.5rem; padding: 0; line-height: 1; text-align: center; }

.module-presentation .presentation-wrapper.nav-pagination .presentation-pagination span,
.module-presentation .presentation-wrapper.nav-pagination .presentation-pagination .circle { display: block; width: 10px; height: 10px; margin: 0; border-radius: 50%; background: rgba(255,255,255,0.55); border: 0; opacity: 1; cursor: pointer; transition: background 0.2s; }

.module-presentation .presentation-wrapper.nav-pagination .presentation-pagination span:hover,
.module-presentation .presentation-wrapper.nav-pagination .presentation-pagination .circle:hover,
.module-presentation .presentation-wrapper.nav-pagination .presentation-pagination span.sel,
.module-presentation .presentation-wrapper.nav-pagination .presentation-pagination .circle.sel { background: #fff; }

.module-presentation .presentation-wrapper.nav-arrows .presentation-arrows { display: block; }

.module-presentation .presentation-wrapper .presentation-arrows span.presentation-previous { position: absolute; z-index: 5; top: calc(50% - 1.25rem); left: 1rem; width: 2.5rem; height: 2.5rem; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0.4); border-radius: 50%; cursor: pointer; transition: background 0.2s; }

.module-presentation .presentation-wrapper .presentation-arrows span.presentation-next { position: absolute; z-index: 5; top: calc(50% - 1.25rem); right: 1rem; width: 2.5rem; height: 2.5rem; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0.4); border-radius: 50%; cursor: pointer; transition: background 0.2s; }

.module-presentation .presentation-wrapper .presentation-arrows span.presentation-previous:hover,
.module-presentation .presentation-wrapper .presentation-arrows span.presentation-next:hover { background: rgba(0,0,0,0.6); }

.module-presentation .presentation-wrapper .presentation-arrows span > span { position: absolute; display: block; background: #fff; box-shadow: none; }

.module-presentation .presentation-wrapper .presentation-arrows span.presentation-previous .l1 { width: 10px; height: 2px; top: 50%; left: 14px; transform: translateY(-50%) rotate(-45deg); transform-origin: left center; }

.module-presentation .presentation-wrapper .presentation-arrows span.presentation-previous .l2 { width: 10px; height: 2px; top: 50%; left: 14px; transform: translateY(-50%); }

.module-presentation .presentation-wrapper .presentation-arrows span.presentation-next .l1 { width: 10px; height: 2px; top: 50%; right: 14px; transform: translateY(-50%) rotate(45deg); transform-origin: right center; }

.module-presentation .presentation-wrapper .presentation-arrows span.presentation-next .l2 { width: 10px; height: 2px; top: 50%; right: 14px; transform: translateY(-50%); }

.module-presentation .presentation-wrapper .presentation-loading { display: block; position: absolute; z-index: 5; right: 0; bottom: 0; left: 0; height: 3px; background: rgba(255,255,255,0.15); }

.module-presentation .presentation-wrapper .presentation-loading .presentation-loading-bar { position: absolute; top: 0; bottom: 0; left: 0; display: block; width: 0; height: 100%; background: var(--clay); transition-timing-function: linear; }

/*-- IE10+ fallback (legacy) */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
.module-presentation .presentation-wrapper > ul.type-C.layout-C,
.module-presentation .presentation-wrapper > ul.type-C.layout-D,
.module-presentation .presentation-wrapper > ul.type-C.layout-E,
.module-presentation .presentation-wrapper > ul.type-S.layout-B,
.module-presentation .presentation-wrapper > ul.type-S.layout-C { display: block; }
}

/*-- Mobile / responsive: stack CTA grids; tighten slideshow text padding */
@media only screen and (max-width: 920px) {
.module-presentation .presentation-wrapper > ul.type-C.layout-C,
.module-presentation .presentation-wrapper > ul.type-C.layout-D,
.module-presentation .presentation-wrapper > ul.type-C.layout-E { flex-wrap: wrap; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li,
.module-presentation .presentation-wrapper > ul.type-C.layout-D > li,
.module-presentation .presentation-wrapper > ul.type-C.layout-E > li { width: 100%; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-block,
.module-presentation .presentation-wrapper > ul.type-C.layout-D > li .presentation-block,
.module-presentation .presentation-wrapper > ul.type-C.layout-E > li .presentation-block { width: 100%; }

.module-presentation .presentation-wrapper > ul.type-C.layout-B > li .presentation-block:nth-child(n) .presentation-info { width: 100%; margin-left: 0; margin-right: 0; }

.module-presentation .presentation-wrapper > ul > li .presentation-info { padding: 2rem 1.5rem; }

.module-presentation .presentation-wrapper > ul > li .presentation-info .presentation-title { font-size: 200%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-D > li .presentation-info,
.module-presentation .presentation-wrapper > ul.type-S.layout-D > li:nth-child(2n) .presentation-info { position: relative; right: 0; left: 0; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B,
.module-presentation .presentation-wrapper > ul.type-S.layout-C { width: 100%; flex-wrap: wrap; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B > li,
.module-presentation .presentation-wrapper > ul.type-S.layout-C > li { width: 100%; }

.module-presentation .presentation-wrapper > ul.type-S.layout-B > li:first-child,
.module-presentation .presentation-wrapper > ul.type-S.layout-C > li:first-child { margin-left: 0 !important; }

/*-- Mobile: let the CTA button flow under the description instead of pinning
	     it absolute to the block bottom. The absolute pin is intended to align
	     buttons across a row of cards on desktop; once cards are stacked the
	     reserved padding-bottom (3.5rem) is smaller than the wrapped description
	     and the button overlaps the last line of text. */
.module-presentation .presentation-wrapper > ul > li .size-150.with-content.with-readmore[max-width~="500px"] .presentation-info-text { padding-bottom: 0; }

.module-presentation .presentation-wrapper > ul > li .size-150.with-content.with-readmore[max-width~="500px"] .presentation-info-text .presentation-readmore { position: static; margin-top: 1.25rem; left: auto; right: auto; bottom: auto; }
}

/*--===========================================================================
  Texomaland: layout-C (2-column 50/50) polish.
  ---------------------------------------------------------------------------
  The 2-column variant defaults to content-height blocks with left-aligned
  text and asymmetric padding inherited from the reference template - which
  reads as a cramped strip with staggered content. This block:
    - stretches both blocks in a row to equal height (no staggering)
    - gives each block a comfortable min-height so layout-C feels as spacious
      as layout-E did
    - centers content horizontally and constrains reading width
    - applies symmetric horizontal padding so columns visually align
    - adds a subtle scrim + stronger text-shadow so white text stays readable
      across any background image (sky, sunset, etc.)
  Only applies to ul.type-C.layout-C - leaves layouts A/B/D/E unchanged.
  ===========================================================================*/
/*-- Each row's blocks share the row's natural height so titles/descriptions of
     different lengths don't stagger. */
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li { align-items: stretch; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-block { position: relative; }

/*-- Black tint scrim ABOVE the bg image (z:2 trumps the image's z:2 because
     pseudo-elements paint after siblings at the same z-index) and BELOW the
     info text (z:3). Without this, white text on bright sky/sunset images is
     unreadable. Tuned to ~30% - light enough to keep imagery visible, dark
     enough that white text reads. */
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-block.with-bgimg::after { content: ''; position: absolute; inset: 0; z-index: 2; background: rgba(0,0,0,0.30); pointer-events: none; }

/*-- Padding-only sizing (no min-height): content sits centered with breathing
     room above/below. The flex chain (.presentation-block align-items:center
     + .presentation-info-text margin:auto) keeps it vertically centered. */
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info { padding: 3.5rem 2.5rem; justify-content: center; align-items: center; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-info-text { max-width: 36rem; margin: auto; text-align: center; }

/*-- Title sized so a typical CTA headline fits on one or two lines. */
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-title,
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .with-bgimg .presentation-info .presentation-title { font-size: 175%; line-height: 1.2; text-align: center; margin-bottom: 0.85rem; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-description { text-align: center; line-height: 1.45; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .with-bgimg .presentation-info,
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li.dark-background .presentation-info,
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .dark-background .presentation-info { color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,0.7), 0 0 16px rgba(0,0,0,0.5); }

/*-- Read-more rendered as a clay button to match the rest of the site's design
     language, regardless of whether the admin set ReadMoreStyle="button" on
     the layer. The legacy `presentation-readmore` selector renders as a plain
     underlined link by default; this overrides it. */
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-readmore,
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-readmore.align-center { text-align: center; margin-top: 1.5rem; margin-inline: 0; }

/*-- Same shape/font/size as the canonical .btn (see "Canonical Button System").
     Bg-image hero context keeps the box-shadow for legibility. Trailing arrow
     matches the "Browse {Module}" CTAs the slide cards sit alongside. */
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-readmore a { display: inline-flex; align-items: center; justify-content: center; gap: 0.4rem; min-height: var(--tl-touch-min); padding: 0.55rem 1.3rem; background: var(--clay); color: #fff !important; font-family: var(--font-body); font-weight: 600; font-size: 0.9rem; line-height: 1.2; text-decoration: none; text-shadow: none; border: 1.5px solid var(--clay); border-radius: var(--tl-radius-pill); box-shadow: var(--tl-shadow-card); transition: background 0.15s, border-color 0.15s, transform 0.15s, box-shadow 0.15s; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-readmore a::after { content: "\f061"; font-family: FontAwesome; font-weight: normal; font-size: 0.85em; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-readmore a:hover { background: var(--clay-dark); border-color: var(--clay-dark); color: #fff !important; transform: translateY(-1px); box-shadow: var(--tl-shadow-hover); }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info .presentation-readmore a:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

@media only screen and (max-width: 720px) {
.module-presentation .presentation-wrapper > ul.type-C.layout-C > li { flex-wrap: wrap; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-block { width: 100%; }

.module-presentation .presentation-wrapper > ul.type-C.layout-C > li .presentation-info { padding: 2.5rem 1.5rem; }
}

/*--===========================================================================
  Texomaland: layout-A (single full-width CTA banner) polish.
  ---------------------------------------------------------------------------
  Layout-A renders a single Type-C layer edge-to-edge. Used by the per-module
  "page CTA" panels (tl-page-cta) on /businesses, /events, /marketplace, /news.
  Mirrors the layout-C polish so a single CTA reads the same as the home-page
  2-column grid: black tint scrim for legibility on bright background images,
  centered text, padding-only sizing (no min-height - content drives height),
  and the read-more rendered as a real clay button.
  ===========================================================================*/
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-block { position: relative; }

/*-- Black tint scrim ABOVE the bg image, BELOW the info text. The layer's own
     BackgroundColor mask handles base contrast; this adds a uniform 30% to keep
     white text readable on busy or bright photos. */
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-block.with-bgimg::after { content: ''; position: absolute; inset: 0; z-index: 2; background: rgba(0,0,0,0.30); pointer-events: none; }

/*-- Padding-only sizing. Vertical centering by the .presentation-block flex
     chain + .presentation-info-text margin:auto. */
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info { padding: 4rem 2.5rem; justify-content: center; align-items: center; }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-info-text { max-width: 42rem; margin: auto; text-align: center; }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-title,
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .with-bgimg .presentation-info .presentation-title { font-size: 200%; line-height: 1.2; text-align: center; margin-bottom: 0.85rem; }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-description { text-align: center; line-height: 1.45; }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .with-bgimg .presentation-info,
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li.dark-background .presentation-info,
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .dark-background .presentation-info { color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,0.7), 0 0 16px rgba(0,0,0,0.5); }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-readmore,
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-readmore.align-center { text-align: center; margin-top: 1.5rem; margin-inline: 0; }

/*-- Layout-A single-banner CTA - same shape/font/size as canonical .btn. */
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-readmore a { display: inline-flex; align-items: center; justify-content: center; gap: 0.4rem; min-height: var(--tl-touch-min); padding: 0.55rem 1.3rem; background: var(--clay); color: #fff !important; font-family: var(--font-body); font-weight: 600; font-size: 0.9rem; line-height: 1.2; text-decoration: none; text-shadow: none; border: 1.5px solid var(--clay); border-radius: var(--tl-radius-pill); box-shadow: var(--tl-shadow-card); transition: background 0.15s, border-color 0.15s, transform 0.15s, box-shadow 0.15s; }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-readmore a::after { content: "\f061"; font-family: FontAwesome; font-weight: normal; font-size: 0.85em; }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-readmore a:hover { background: var(--clay-dark); border-color: var(--clay-dark); color: #fff !important; transform: translateY(-1px); box-shadow: var(--tl-shadow-hover); }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-readmore a:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

@media only screen and (max-width: 720px) {
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info { padding: 3rem 1.5rem; }

.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .presentation-info .presentation-title,
.module-presentation .presentation-wrapper > ul.type-C.layout-A > li .with-bgimg .presentation-info .presentation-title { font-size: 175%; }
}
