/* TIDEWELL · cold-water swim + sauna club */
:root {
  --aqua: #00FFF7;
  --lime: #D4FF00;
  --pink: #FF80AA;
  --sea: #004466;
  --white: #FFFFFF;
  --black: #000000;
  --temp: #00FFF7;            /* set by temp.js from today's water temperature */
  --temp-pos: 50%;
  --nav-bg: #D4FF00;          /* scrubbed per section */
  --nav-ink: #000000;
  --nav-cta: #FF80AA;
  --nav-cta-ink: #000000;
  --f-title: 'Barlow Condensed', 'Arial Narrow', sans-serif;
  --f-ui: 'Plus Jakarta Sans', system-ui, sans-serif;
  --f-mono: 'Victor Mono', ui-monospace, monospace;
  --ease-out-q: cubic-bezier(.165, .84, .44, 1);
  --ease-std: cubic-bezier(.4, 0, .2, 1);
  --gut: clamp(16px, 2.1vw, 30px);
}
*, *::before, *::after { box-sizing: border-box; }
html { overflow-x: clip; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--sea); color: var(--black); font: 400 16px/1.55 var(--f-ui); -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
p, h1, h2, h3, dl, dd, ol, ul { margin: 0; }
button, input { font: inherit; }
.mono { font-family: var(--f-mono); font-weight: 500; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; line-height: 1.4; }
.skip { position: fixed; left: 12px; top: -60px; z-index: 100; background: var(--lime); padding: 8px 12px; }
.skip:focus { top: 12px; }
:focus-visible { outline: 2px solid var(--pink); outline-offset: 3px; }
img.is-broken { visibility: hidden; }

/* ---------- buttons ---------- */
.btn { display: inline-flex; align-items: center; gap: 12px; height: 44px; padding: 0 8px 0 20px; border-radius: 999px; border: 0; cursor: pointer; font: 600 14px/1 var(--f-ui); letter-spacing: .01em; white-space: nowrap; transition: transform .35s var(--ease-out-q), background-color .2s var(--ease-std), color .2s var(--ease-std); }
.btn i { position: relative; width: 30px; height: 30px; border-radius: 50%; background: currentColor; flex: none; }
.btn i::after { content: ''; position: absolute; inset: 0; margin: auto; width: 8px; height: 8px; border-radius: 50%; }
.btn:hover { transform: translateY(-2px); }
.btn--pink { background: var(--pink); color: var(--black); padding: 0 20px; height: 38px; }
.nav .nav__cta { background: var(--nav-cta); color: var(--nav-cta-ink); }
.btn--black { background: var(--black); color: var(--white); }
.btn--black i { background: var(--white); }
.btn--black i::after { background: var(--black); transition: transform .35s var(--ease-out-q); }
.btn--black:hover i::after { transform: scale(1.6); }
.btn--aqua { background: var(--aqua); color: var(--black); padding: 0 22px; }

/* ---------- nav (split editorial) ---------- */
.nav { position: fixed; inset: 0 0 auto 0; z-index: 50; height: 56px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 var(--gut); color: var(--white); background-color: transparent;
  transition: background-color .1s var(--ease-out-q), color .1s var(--ease-out-q); }
.nav.is-solid { background-color: var(--nav-bg); color: var(--nav-ink); }
.nav__side { display: flex; align-items: center; gap: 22px; font-size: 15px; }
.nav__side a:not(.btn) { position: relative; }
.nav__side a:not(.btn)::after { content: ''; position: absolute; left: 0; right: 0; bottom: -3px; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .45s var(--ease-out-q); }
.nav__side a:not(.btn):hover::after { transform: scaleX(1); transform-origin: left; }
.nav__side--r { justify-content: flex-end; }
.nav__mid { display: block; height: 22px; overflow: hidden; text-align: center; }
.nav__mid-track { display: flex; flex-direction: column; transition: transform .7s var(--ease-out-q); }
.nav__tag, .nav__logo { height: 22px; line-height: 22px; white-space: nowrap; }
.nav__tag { font-size: 14px; letter-spacing: .04em; }
.nav__logo { font: 700 italic 22px/22px var(--f-title); letter-spacing: .04em; }
.nav.is-solid .nav__mid-track { transform: translateY(-22px); }
.nav__menu { display: none; background: none; border: 1px solid currentColor; color: inherit; border-radius: 999px; height: 34px; padding: 0 14px; cursor: pointer; font-size: 14px; }
.sheet { position: fixed; inset: 56px 0 auto 0; z-index: 49; background: var(--aqua); display: flex; flex-direction: column; padding: 18px var(--gut) 26px; border-bottom: 2px solid var(--black); }
.sheet[hidden] { display: none; }
.sheet a { font: 700 italic 44px/1.05 var(--f-title); text-transform: uppercase; padding: 4px 0; }

/* ---------- hero ---------- */
.hero { position: relative; height: 100vh; height: 100svh; min-height: 560px; overflow: hidden; color: var(--white); background: var(--sea); }
.hero__media { position: absolute; inset: 0; }
.hero__img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.08); transform-origin: 50% 60%; }
.hero__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 68, 102, .35) 0%, rgba(0, 68, 102, 0) 22%, rgba(0, 68, 102, 0) 60%, rgba(0, 68, 102, .45) 100%); }
.hero__center { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; pointer-events: none; padding-bottom: 6vh; }
.hero__mark { font: 700 italic clamp(88px, 18vw, 330px)/.82 var(--f-title); letter-spacing: -.01em; margin: 0; transform: translateY(2.5rem); opacity: 0;
  transition: opacity 1s var(--ease-out-q), transform 1s var(--ease-out-q); }
.hero__mark.is-in { opacity: 1; transform: none; }
.hero__sub { margin-top: 1.6vw; font-size: 13px; letter-spacing: .22em; opacity: 0; transform: translateY(2.5rem); transition: opacity 1s .12s var(--ease-out-q), transform 1s .12s var(--ease-out-q); }
.hero__mark.is-in + .hero__sub { opacity: 1; transform: none; }

/* signature: water temperature dial + band */
.dial { position: absolute; right: var(--gut); bottom: calc(64px + 2.4vh); width: 176px; text-align: center; z-index: 2; }
.dial__svg { width: 176px; height: 176px; display: block; overflow: visible; }
.dial__track { fill: none; stroke: rgba(255, 255, 255, .28); stroke-width: 10; stroke-linecap: round; }
.dial__fill { fill: none; stroke: var(--temp); stroke-width: 10; stroke-linecap: round; }
.dial__ticks line { stroke: var(--white); stroke-width: 1.5; opacity: .8; }
.dial__ticks text { fill: var(--white); font: 500 9px var(--f-mono); letter-spacing: .06em; }
.dial__needle line { stroke: var(--white); stroke-width: 3; stroke-linecap: round; }
.dial__needle circle { fill: var(--white); }
.dial__needle { transform-origin: 100px 100px; }
.dial__read { position: absolute; left: 0; right: 0; top: 104px; display: flex; flex-direction: column; align-items: center; }
.dial__num { font: 700 italic 34px/1 var(--f-title); text-shadow: 0 1px 8px rgba(0, 68, 102, .6); }
.dial__cap { text-shadow: 0 1px 6px rgba(0, 68, 102, .9); }
.dial__word { font-size: 10px; margin-top: 3px; color: var(--white); text-shadow: 0 1px 6px rgba(0, 68, 102, .9), 0 0 2px rgba(0, 68, 102, .9); }
.dial__cap { font-size: 10px; margin-top: 2px; opacity: .85; }
.band { position: absolute; left: 0; right: 0; bottom: 0; height: 64px; background: linear-gradient(90deg, var(--pink) 0, var(--pink) var(--temp-pos), var(--aqua) var(--temp-pos), var(--aqua) 100%); color: var(--black); display: flex; flex-direction: column; justify-content: center; padding: 0 var(--gut); z-index: 2; }
.band::after { content: ''; position: absolute; top: 0; bottom: 0; left: var(--temp-pos); width: 2px; margin-left: -1px; background: var(--black); }
.band__txt { position: relative; z-index: 1; display: flex; gap: 28px; flex-wrap: wrap; }
.band__txt b { font-weight: 500; }
.band__scale { position: absolute; inset: auto var(--gut) 6px var(--gut); display: flex; justify-content: space-between; font-size: 9px; opacity: .6; }

/* ---------- plunge times (strip to full screen) ---------- */
.plunge { position: relative; background: var(--lime); }
.plunge__stage { position: relative; height: 100vh; height: 100svh; overflow: hidden; }
.plunge__eyebrow { position: absolute; top: 88px; left: 0; right: 0; text-align: center; }
.plunge__strip { position: absolute; inset: 0; clip-path: inset(42.2% 28% 42.2% 28% round 16px); will-change: clip-path; background: var(--sea); }
.plunge__strip img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.25); }
.plunge__w > span { display: block; }
.plunge__w { position: absolute; top: 50%; font: 700 italic clamp(64px, 13vw, 240px)/1 var(--f-title); letter-spacing: -.01em; transform: translateY(-50%); z-index: 2; pointer-events: none; }
.plunge__w--l { right: 73.5%; }
.plunge__w--r { left: 73.5%; }
.plunge__pill { position: absolute; left: 50%; top: calc(57.8% + 40px); transform: translateX(-50%); z-index: 3; }
.plunge__pill:hover { transform: translateX(-50%) translateY(-2px); }
.plunge__note { position: absolute; left: 0; right: 0; bottom: 7vh; text-align: center; max-width: 34ch; margin: 0 auto; font-size: 15px; }
.plunge__card { position: absolute; left: var(--gut); bottom: var(--gut); z-index: 4; width: min(520px, calc(100% - 2 * var(--gut))); background: var(--lime); color: var(--black); padding: 22px 24px 10px; opacity: 0; visibility: hidden; }
.plunge__card-k { margin-bottom: 10px; }
.sessions { list-style: none; padding: 0; }
.sessions li { display: grid; grid-template-columns: 92px 1fr; column-gap: 14px; padding: 12px 0; border-top: 1px solid var(--black); }
.sessions li b { font: 700 italic 30px/1 var(--f-title); text-transform: uppercase; }
.sessions li em { grid-column: 2; font-style: normal; font-size: 14px; }
.sessions li span { padding-top: 6px; }

/* ---------- the 3-minute rule ---------- */
.rule { position: relative; background: var(--aqua); padding: 18vh var(--gut) 16vh; }
.rule__head { max-width: 1180px; }
.rule__k { margin-bottom: 18px; }
.rule__title { font: 700 italic clamp(64px, 12vw, 220px)/.86 var(--f-title); text-transform: uppercase; letter-spacing: -.01em; }
.rule__lede { margin-top: 28px; max-width: 30ch; font-size: clamp(19px, 1.7vw, 26px); line-height: 1.35; font-weight: 600; }
[data-words] .w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .06em; margin-bottom: -.06em; }
[data-words] .w > span { display: inline-block; will-change: transform; }
.pills { margin: 12vh 0 0 auto; width: min(100%, 1060px); display: flex; flex-direction: column; gap: 2.2vw; }
.pills__row { font: 600 clamp(26px, 3.9vw, 62px)/1.15 var(--f-ui); letter-spacing: -.025em; }
.pill { display: inline-flex; align-items: center; justify-content: center; min-width: 1.7em; height: 1.18em; padding: 0 .38em; border-radius: 999px; vertical-align: -.12em; font-weight: 600; }
.pill--lime { background: var(--lime); }
.pill--pink { background: var(--pink); }
.pill--white { background: var(--white); }
.pill--sea { background: var(--sea); color: var(--white); }
.cards { margin-top: 16vh; display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gut); }
.card { border-top: 2px solid var(--black); padding-top: 14px; }
.card:nth-child(2) { margin-top: 10vh; }
.card:nth-child(3) { margin-top: 20vh; }
.card__img { aspect-ratio: 4 / 5; overflow: hidden; background: var(--sea); }
.card__img img { width: 100%; height: 100%; object-fit: cover; }
.card__tag { margin-top: 16px; overflow: hidden; }
.card__tag span { display: inline-block; background: var(--black); color: var(--aqua); padding: 4px 8px; }
.card__t { font: 700 italic clamp(56px, 7vw, 120px)/.9 var(--f-title); margin-top: 8px; overflow: hidden; }
.card__t .ch { display: inline-block; }
.card__p { margin-top: 10px; max-width: 34ch; }

/* ---------- saunas (3D) ---------- */
.saunas { position: relative; height: 100vh; height: 100svh; min-height: 700px; background: var(--pink); overflow: hidden; }
.lasers { position: absolute; inset: 0; pointer-events: none; }
.laser { position: absolute; left: 50%; top: 50%; width: 260vmax; height: 1.5px; margin-left: -130vmax; transform-origin: 50% 50%; }
.laser--w { background: rgba(255, 255, 255, .55); box-shadow: 0 0 6px rgba(255, 255, 255, .55); }
.laser--s { background: rgba(0, 68, 102, .35); }
.saunas__gl { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.saunas__head { position: absolute; left: var(--gut); top: 14vh; z-index: 2; }
.saunas__head .mono { margin-bottom: 14px; }
.saunas__title { font: 700 italic clamp(56px, 8.4vw, 150px)/.86 var(--f-title); text-transform: uppercase; max-width: 6.5em; }
.saunas__specs { position: absolute; right: var(--gut); top: 16vh; width: min(300px, 30vw); z-index: 2; display: grid; gap: 18px; }
.saunas__specs div { border-top: 1px solid var(--black); padding-top: 10px; }
.saunas__specs dd { margin-top: 6px; font-size: 15px; }
.float-card { position: absolute; left: 50%; bottom: 5vh; transform: translateX(-50%); z-index: 3; width: 290px; background: var(--white); border-radius: 14px; padding: 14px 14px 14px; }
.float-card__k { display: flex; align-items: center; gap: 8px; font-size: 11px; }
.dot { width: 9px; height: 9px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 2px var(--black); }
.float-card__t { font: 700 italic 30px/1 var(--f-title); text-transform: uppercase; margin: 10px 0 14px; }
.float-card__btn { width: 100%; justify-content: space-between; }
.cut { position: absolute; z-index: 1; width: clamp(140px, 15vw, 240px); height: auto; aspect-ratio: 1; object-fit: contain; pointer-events: none; }
.cut--bucket { left: 14vw; bottom: 16vh; }
.cut--hat { right: 13vw; bottom: 30vh; }

/* ---------- membership (corner-scale lines) ---------- */
.members { position: relative; background: var(--sea); color: var(--white); }
.members__visual { position: absolute; inset: 0 0 auto 0; height: 100%; pointer-events: none; }
.members__bg { position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden; }
.members__bg img { width: 100%; height: 115%; object-fit: cover; margin-top: -7.5%; }
.members__shade { position: absolute; inset: 0; background: rgba(0, 68, 102, .45); }
.members__copy { position: relative; padding: 52vh var(--gut) 22vh; }
.members__k { margin-bottom: 26px; }
.line { position: relative; display: flex; justify-content: space-between; align-items: flex-end; height: clamp(40px, 4.7vw, 76px); }
.line__l { font: 600 clamp(15px, 1.65vw, 26px)/1 var(--f-title); text-transform: uppercase; letter-spacing: .01em; align-self: flex-start; transform-origin: top left; transform: scale(0); white-space: nowrap; }
.line__r { font: 700 italic clamp(38px, 5.2vw, 86px)/.9 var(--f-title); text-transform: uppercase; letter-spacing: -.005em; transform-origin: bottom right; text-align: right; white-space: nowrap; }
.tiers { position: relative; background: var(--sea); padding: 14vh var(--gut) 16vh; }
.tiers__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 30px; flex-wrap: wrap; margin-bottom: 7vh; }
.tiers__title { font: 700 italic clamp(60px, 9vw, 168px)/.86 var(--f-title); text-transform: uppercase; }
.tiers__lede { max-width: 26ch; font-size: 18px; }
.tiers__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gut); }
.tier { color: var(--black); display: flex; flex-direction: column; }
.tier--aqua { background: var(--aqua); }
.tier--lime { background: var(--lime); }
.tier--pink { background: var(--pink); }
.tier__img { aspect-ratio: 4 / 3; overflow: hidden; }
.tier__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--ease-out-q); }
.tier:hover .tier__img img { transform: scale(1.04); }
.tier__body { padding: 20px 22px 24px; display: flex; flex-direction: column; flex: 1; }
.tier__name { font: 700 italic 44px/1 var(--f-title); text-transform: uppercase; }
.tier__price { display: flex; align-items: baseline; gap: 10px; margin: 10px 0 14px; border-bottom: 1px solid var(--black); padding-bottom: 14px; }
.tier__price b { font: 700 72px/.9 var(--f-title); }
.tier ul { list-style: none; padding: 0; margin-bottom: 22px; flex: 1; }
.tier li { padding: 6px 0 6px 20px; position: relative; }
.tier li::before { content: ''; position: absolute; left: 0; top: 14px; width: 10px; height: 2px; background: var(--black); }
.tier .btn { align-self: flex-start; }

/* ---------- footer ---------- */
.foot { position: relative; background: var(--sea); color: var(--white); padding: 12vh var(--gut) 0; overflow: hidden; }
.foot__grid { display: grid; grid-template-columns: 1.15fr 1fr 1.2fr .6fr; gap: var(--gut); align-items: start; }
.foot__img { aspect-ratio: 16 / 10; overflow: hidden; background: var(--aqua); }
.foot__img img { width: 100%; height: 100%; object-fit: cover; }
.foot__k { color: var(--aqua); margin-bottom: 10px; display: block; }
.foot__addr, .foot__hours { margin-bottom: 26px; max-width: 30ch; }
.foot__formp { margin-bottom: 14px; max-width: 36ch; }
.foot__field { display: flex; gap: 8px; border-bottom: 1px solid rgba(255, 255, 255, .5); padding-bottom: 8px; }
.foot__field input { flex: 1; min-width: 0; background: none; border: 0; color: var(--white); outline: none; font-size: 16px; padding: 0 2px; }
.foot__field input::placeholder { color: rgba(255, 255, 255, .6); }
.foot__ok { margin-top: 10px; min-height: 18px; color: var(--lime); }
.foot__links { display: flex; flex-direction: column; gap: 6px; }
.foot__links a { font: 700 italic 26px/1.1 var(--f-title); text-transform: uppercase; }
.foot__links a:hover { color: var(--pink); }
.wave { position: relative; margin: 10vh calc(-1 * var(--gut)) 0; height: 34vw; }
.wave canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.wave__fallback { display: none; font: 700 italic 25vw/.8 var(--f-title); color: var(--aqua); text-align: center; letter-spacing: -.01em; }
.wave.no-gl .wave__fallback { display: block; }
.foot__bar { display: flex; justify-content: space-between; gap: 16px; padding: 18px 0 22px; border-top: 1px solid rgba(255, 255, 255, .25); font-size: 11px; }

/* ---------- static / reduced motion ---------- */
.is-static .hero__mark, .is-static .hero__sub { opacity: 1; transform: none; transition: none; }
.is-static .hero__img { transform: none; }

/* ---------- responsive ---------- */
@media (max-width: 991px) {
  .nav__side--l, .nav__side--r a:not(.btn) { display: none; }
  .nav { grid-template-columns: auto 1fr auto; }
  .nav__mid { order: -1; text-align: left; }
  .nav__menu { display: inline-block; }
  .nav__side--r { gap: 10px; }
  .foot__grid { grid-template-columns: 1fr 1fr; }
  .saunas__specs { top: auto; bottom: 28vh; }
}
@media (max-width: 767px) {
  .hero__mark { font-size: 24vw; }
  .hero__sub { font-size: 10px; letter-spacing: .16em; margin-top: 14px; padding: 0 16px; }
  .hero__center { padding-bottom: 22vh; }
  .dial { left: 50%; right: auto; transform: translateX(-50%) scale(.72); transform-origin: 50% 100%; bottom: 66px; }
  .band { height: 58px; }
  .band__hide, .band__scale { display: none; }
  .band__txt { gap: 14px; font-size: 11px; }
  .plunge__w { font-size: 21vw; transform: translateX(-50%); left: 50% !important; right: auto !important; top: auto; }
  .plunge__w--l { bottom: calc(59% + 10px); }
  .plunge__w--r { top: calc(59% + 10px); }
  .plunge__strip { clip-path: inset(41% 7% 41% 7% round 14px); }
  .plunge__pill { top: auto; bottom: 18vh; }
  .plunge__note { bottom: 8vh; padding: 0 16px; font-size: 14px; }
  .plunge__eyebrow { top: 76px; padding: 0 16px; }
  .sessions li { grid-template-columns: 70px 1fr; }
  .sessions li b { font-size: 24px; }
  .plunge__card { padding: 16px 16px 6px; }
  .rule { padding: 14vh var(--gut) 12vh; }
  .pills { margin-top: 8vh; gap: 16px; }
  .cards { grid-template-columns: 1fr; gap: 40px; margin-top: 10vh; }
  .card:nth-child(2), .card:nth-child(3) { margin-top: 0; }
  .saunas { height: 118vh; height: 118svh; min-height: 760px; }
  .saunas__head { top: 11vh; }
  .saunas__specs { display: grid; left: var(--gut); right: var(--gut); top: auto; bottom: 20px; width: auto; gap: 10px; }
  .saunas__specs div { padding-top: 6px; }
  .saunas__specs dd { margin-top: 2px; font-size: 13px; }
  .saunas__specs dd { font-size: 13px; }
  .float-card { bottom: 158px; width: calc(100% - 2 * var(--gut)); }
  .cut { width: 21vw; }
  .cut--bucket { left: 3vw; bottom: auto; top: 33vh; }
  .cut--hat { right: 3vw; bottom: auto; top: 25vh; }
  .members__copy { padding: 34vh var(--gut) 26vh; min-height: 0; }
  .line { flex-direction: column; align-items: flex-end; height: auto; padding: 4px 0; }
  .line__l { align-self: flex-start; }
  .line__r { font-size: 8.4vw; }
  .tiers__grid { grid-template-columns: 1fr; }
  .foot__grid { grid-template-columns: 1fr; }
  .wave { height: 40vw; margin-top: 6vh; }
  .foot__bar { flex-direction: column; gap: 4px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero__mark, .hero__sub { transition: none; }
}

/* WordPress / Elementor compatibility: the active WordPress theme styles <body> and every heading as well
   (Twenty Twenty-Five sets body weight 300 and -0.1px tracking, h1-h6 weight 400, -0.1px tracking,
   line-height 1.125 and preset sizes, and text-wrap: pretty on headings, paragraphs and captions). This page's class rules set size, weight and line-height where it
   cares and rely on browser defaults for the rest, so restore those defaults at element level: every class
   rule above still wins (0,1,0 beats 0,0,3). Elementor's own element resets (img, a, video/iframe,
   figure) outrank single-class rules, so every source rule that sets those properties on those elements is
   repeated below one specificity step higher, in source order. The page's Elementor container is also held at zero
   padding and gap (the kit default applies when the page's generated Elementor CSS is missing) and at display: block (once that CSS
   exists it makes the container a wrapping flex column, which can shrink a section below its content). Inert in a plain browser. */
html body { font-weight: 400; letter-spacing: normal; }
html body :is(h1, h2, h3, h4, h5, h6) { font-weight: bold; letter-spacing: normal; line-height: inherit; }
html body h1 { font-size: 2em; }
html body h2 { font-size: 1.5em; }
html body h3 { font-size: 1.17em; }
html body :is(h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p) { text-wrap: wrap; }
html body .elementor .e-con.e-parent:has(> .elementor-element [class^="uichemy-"]) { --display: block; --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; --row-gap: 0px; --column-gap: 0px; --gap: 0px 0px; }
.elementor.elementor img { max-width: 100%; }
.elementor.elementor a { text-decoration-line: none; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; }
.elementor.elementor .hero__img { height: 100%; }
.elementor.elementor .plunge__strip img { height: 100%; }
.elementor.elementor .card__img img { height: 100%; }
.elementor.elementor .cut { height: auto; }
.elementor.elementor .members__bg img { height: 115%; }
.elementor.elementor .tier__img img { height: 100%; }
.elementor.elementor .foot__img img { height: 100%; }
