/* THERATEX photo testimonials - scoped styles, logo palette #305678 / #4AD0FF */
.ttrx-launch,.ttrx-overlay,.ttrx-overlay * {box-sizing:border-box}
.ttrx-launch {appearance:none;border:0;border-radius:999px;background:#305678;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:14px 23px;font:700 16px/1.35 Arial,Helvetica,sans-serif;box-shadow:0 9px 24px rgba(48,86,120,.18);cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}
.ttrx-launch:hover,.ttrx-launch:focus-visible {background:#234560;transform:translateY(-2px);box-shadow:0 12px 26px rgba(48,86,120,.24);color:#fff}
.ttrx-launch svg {width:21px;height:21px;color:#4ad0ff;flex:0 0 21px}
body.ttrx-scroll-locked {overflow:hidden!important}
.ttrx-overlay[hidden] {display:none!important}
.ttrx-overlay {position:fixed;inset:0;z-index:2147482000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(36,61,87,.58);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);font-family:Arial,Helvetica,sans-serif;color:#305678}
.ttrx-dialog {position:relative;isolation:isolate;width:min(1470px,100%);max-height:min(94dvh,920px);overflow:hidden;border:1px solid rgba(255,255,255,.96);border-radius:34px;background:linear-gradient(125deg,#fff 69%,#f6fbff 100%);box-shadow:0 25px 90px rgba(12,31,52,.38);padding:24px 30px 28px;outline:none}
.ttrx-modal-header {display:grid;grid-template-columns:auto 1px 1fr auto;align-items:center;column-gap:26px;position:relative;z-index:3;min-height:73px;margin-bottom:1px}
.ttrx-brand-logo {display:block;width:clamp(205px,22vw,312px);max-width:100%;height:auto;object-fit:contain}
.ttrx-header-divider {width:1px;height:57px;background:#aabed2}
.ttrx-dialog-title {margin:0;min-width:0;width:max-content;max-width:100%;display:flex;align-items:center;justify-content:center;gap:13px;border-radius:100px;padding:12px 22px 12px 13px;background:#305678;color:#fff;font:bold clamp(17px,2.1vw,30px)/1.25 Arial,Helvetica,sans-serif;letter-spacing:-.025em;text-align:center}
.ttrx-title-icon {width:43px;height:43px;border-radius:100%;flex:0 0 43px;background:#fff;color:#305678;display:grid;place-items:center}
.ttrx-title-icon svg {width:23px;height:23px}
.ttrx-close {appearance:none;position:relative;z-index:7;border:0;width:57px;height:57px;border-radius:50%;display:grid;place-items:center;color:#173c60;background:#ecf1f8;font:300 52px/1 Arial,Helvetica,sans-serif;cursor:pointer;transition:background .2s,transform .2s}
.ttrx-close:hover,.ttrx-close:focus-visible {background:#dbeeff;transform:rotate(90deg)}
.ttrx-slider {position:relative;z-index:2;width:100%;margin:0 auto}
.ttrx-stage {height:660px;position:relative;overflow:visible;perspective:1200px}
.ttrx-card {position:absolute;left:50%;top:5px;overflow:hidden;width:415px;height:637px;border-radius:32px;border:4px solid #d5e1eb;background:#fff;box-shadow:0 15px 30px rgba(37,60,83,.18);opacity:0;pointer-events:none;transform:translate3d(-50%,35px,0) scale(.65);transition:transform .52s cubic-bezier(.2,.8,.2,1),opacity .43s,border-color .35s,filter .35s,box-shadow .35s;transform-origin:center top;filter:saturate(.97);display:flex;flex-direction:column;backface-visibility:hidden}
.ttrx-card[data-position="0"] {z-index:5;transform:translate3d(-50%,0,0) scale(1);border-color:#4ad0ff;box-shadow:0 19px 35px rgba(30,61,83,.3);opacity:1;pointer-events:auto;filter:none}
.ttrx-card[data-position="-1"] {z-index:4;transform:translate3d(calc(-50% - 330px),66px,0) scale(.85);opacity:1;pointer-events:auto}
.ttrx-card[data-position="1"] {z-index:4;transform:translate3d(calc(-50% + 330px),66px,0) scale(.85);opacity:1;pointer-events:auto}
.ttrx-card[data-position="-2"] {z-index:3;transform:translate3d(calc(-50% - 565px),117px,0) scale(.7);opacity:1;pointer-events:auto}
.ttrx-card[data-position="2"] {z-index:3;transform:translate3d(calc(-50% + 565px),117px,0) scale(.7);opacity:1;pointer-events:auto}
.ttrx-card[data-position="off"] {z-index:1;visibility:hidden;transition:none}
.ttrx-card-media {height:63%;position:relative;flex:0 0 63%;overflow:hidden;background:#e5f4fc}
.ttrx-cover {display:block;width:100%;height:100%;object-fit:cover;object-position:center 24%}
.ttrx-card-text {position:relative;z-index:2;flex:1;min-height:0;background:#fff;margin-top:-20px;border-radius:28px 28px 0 0;padding:16px 22px 14px;box-shadow:0 -10px 26px rgba(255,255,255,.3);overflow:hidden}
.ttrx-person-name {font:bold 27px/1.15 Arial,Helvetica,sans-serif!important;color:#173e65!important;margin:0 0 3px!important;letter-spacing:-.015em}
.ttrx-person-role,.ttrx-person-date {font:400 16px/1.2 Arial,Helvetica,sans-serif!important;color:#586d80!important;margin:0!important}
.ttrx-person-date {font-size:14px!important;margin-top:4px!important}
.ttrx-customer-quote {display:flex;align-items:flex-start;gap:7px;margin-top:15px;color:#173c60}
.ttrx-quote-symbol {font:bold 46px/.8 Georgia,serif;flex:0 0 26px;color:#4ad0ff}
.ttrx-customer-quote p {margin:0!important;color:#173e65!important;font:500 18px/1.35 Arial,Helvetica,sans-serif!important;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;line-clamp:5;overflow-wrap:anywhere}
.ttrx-example {position:absolute;left:12px;top:12px;z-index:4;padding:6px 9px;border-radius:8px;background:rgba(255,255,255,.95);color:#305678;letter-spacing:.09em;font:bold 10px Arial,Helvetica,sans-serif;box-shadow:0 2px 8px #2222}
.ttrx-nav {appearance:none;border:0;position:absolute;z-index:8;top:47%;display:grid;place-items:center;width:67px;height:67px;border-radius:50%;color:#305678;background:white;box-shadow:0 6px 19px rgba(23,54,79,.25);cursor:pointer;transition:transform .2s,background .2s}
.ttrx-nav svg {width:33px;height:33px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.ttrx-nav:hover,.ttrx-nav:focus-visible {background:#def6ff;transform:scale(1.08)}
.ttrx-prev {left:1px}.ttrx-next {right:1px}
.ttrx-dots {position:relative;z-index:4;display:flex;align-items:center;justify-content:center;gap:13px;min-height:24px;margin:0 auto 7px;max-width:86%;overflow:auto;white-space:nowrap}
.ttrx-dot {appearance:none;display:block;flex:0 0 auto;border:0;width:15px;height:15px;padding:0;border-radius:50%;background:#cbd8e4;cursor:pointer;transition:background .2s,transform .2s}
.ttrx-dot[aria-current="true"] {background:#305678;transform:scale(1.17)}
.ttrx-dot:hover,.ttrx-dot:focus-visible {background:#4ad0ff;outline-offset:3px}
.ttrx-page-counter {color:#305678;font:bold 15px Arial,Helvetica,sans-serif}
.ttrx-waves {position:absolute;inset:auto 0 0 0;height:74px;border-radius:0 0 33px 33px;overflow:hidden;z-index:1;pointer-events:none}
.ttrx-wave-light,.ttrx-wave-dark {position:absolute;inset:0;display:block}
.ttrx-wave-light {background:#bbecfa;clip-path:polygon(0 0,8% 56%,18% 80%,35% 99%,60% 96%,80% 76%,93% 24%,100% 0,100% 100%,0 100%)}
.ttrx-wave-dark {background:linear-gradient(90deg,#4ad0ff 0%,#50d6fa 36%,#305678 100%);clip-path:polygon(0 47%,11% 88%,27% 100%,70% 100%,88% 75%,100% 43%,100% 100%,0 100%)}
.ttrx-empty {position:relative;z-index:3;text-align:center;padding:75px 20px 95px;font-size:20px;color:#305678}
.ttrx-empty p {margin:0}
@media(max-width:1200px) {
 .ttrx-dialog {width:min(1100px,100%);padding:20px 24px 25px}
 .ttrx-stage {height:580px}
 .ttrx-card {width:370px;height:556px}
 .ttrx-card[data-position="-1"] {transform:translate3d(calc(-50% - 270px),60px,0) scale(.83)}
 .ttrx-card[data-position="1"] {transform:translate3d(calc(-50% + 270px),60px,0) scale(.83)}
 .ttrx-card[data-position="-2"] {transform:translate3d(calc(-50% - 450px),104px,0) scale(.7)}
 .ttrx-card[data-position="2"] {transform:translate3d(calc(-50% + 450px),104px,0) scale(.7)}
 .ttrx-person-name {font-size:24px!important}
 .ttrx-customer-quote p {font-size:16px!important}
 .ttrx-modal-header {column-gap:16px}
 .ttrx-nav {width:54px;height:54px}
}
@media(max-width:800px) {
 .ttrx-overlay {padding:8px}
 .ttrx-dialog {max-height:calc(100dvh - 16px);overflow-y:auto;padding:15px 12px 21px;border-radius:24px}
 .ttrx-modal-header {grid-template-columns:1fr auto;gap:10px 8px}
 .ttrx-brand-logo {grid-row:1;grid-column:1;width:clamp(175px,36vw,260px)}
 .ttrx-header-divider {display:none}
 .ttrx-dialog-title {grid-row:2;grid-column:1 / 3;justify-self:center;font-size:clamp(15px,3.7vw,22px);padding:9px 16px 9px 10px;gap:9px}
 .ttrx-title-icon {width:31px;height:31px;flex-basis:31px}
 .ttrx-title-icon svg {width:17px;height:17px}
 .ttrx-close {grid-row:1;grid-column:2;width:44px;height:44px;font-size:38px}
 .ttrx-stage {height:575px}
 .ttrx-card {width:350px;height:550px;border-width:3px}
 .ttrx-card[data-position="-1"] {transform:translate3d(calc(-50% - 247px),57px,0) scale(.83)}
 .ttrx-card[data-position="1"] {transform:translate3d(calc(-50% + 247px),57px,0) scale(.83)}
 .ttrx-card[data-position="-2"],.ttrx-card[data-position="2"] {opacity:0;pointer-events:none;visibility:hidden}
 .ttrx-nav {top:45%;width:44px;height:44px}
 .ttrx-nav svg {width:24px;height:24px}
 .ttrx-card-text {padding:13px 18px 15px}
 .ttrx-person-name {font-size:24px!important}
 .ttrx-customer-quote p {font-size:16px!important}
 .ttrx-dots {margin-bottom:17px}
}
@media(max-width:480px) {
 .ttrx-dialog {padding:12px 7px 14px}
 .ttrx-brand-logo {width:185px}
 .ttrx-modal-header {margin:0 5px}
 .ttrx-stage {height:496px}
 .ttrx-card {width:min(79vw,314px);height:476px;border-radius:23px}
 .ttrx-card[data-position="-1"] {transform:translate3d(calc(-50% - 224px),48px,0) scale(.78)}
 .ttrx-card[data-position="1"] {transform:translate3d(calc(-50% + 224px),48px,0) scale(.78)}
 .ttrx-card-media {height:60%;flex-basis:60%}
 .ttrx-card-text {padding:11px 14px 9px;margin-top:-17px;border-radius:22px 22px 0 0}
 .ttrx-person-name {font-size:20px!important}
 .ttrx-person-role,.ttrx-person-date {font-size:12px!important}
 .ttrx-customer-quote {margin-top:9px;gap:4px}
 .ttrx-quote-symbol {font-size:34px;flex-basis:21px}
 .ttrx-customer-quote p {font-size:14px!important;line-height:1.27!important;-webkit-line-clamp:5;line-clamp:5}
 .ttrx-example {font-size:9px;left:6px;top:7px}
 .ttrx-nav {width:37px;height:37px;top:42%;background:#fffe}
 .ttrx-prev {left:-2px}.ttrx-next {right:-2px}
 .ttrx-dots {gap:9px;margin-bottom:14px}
 .ttrx-dot {width:10px;height:10px}
 .ttrx-waves {height:40px}
}
@media(prefers-reduced-motion:reduce) {
 .ttrx-card,.ttrx-close,.ttrx-launch,.ttrx-nav,.ttrx-dot {transition:none!important}
}
