/* The search introduction only; filters, listing and sticky toolbar stay independent. */
.ts .ts-intro.ts-intro-panel { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1fr) 340px; align-items:center; gap:25px; min-height:188px; margin:21px 0 27px; padding:26px 32px; border:1px solid rgba(var(--ts-rgb),.11); border-radius:21px; background:radial-gradient(ellipse at 91% 49%,rgba(var(--ts-rgb),.085),transparent 48%),linear-gradient(115deg,#fff,#fffdf9); box-shadow:0 6px 20px #49432903; overflow:hidden; }
.ts .ts-intro.ts-intro-market { border-color:#e1ece5; background:radial-gradient(ellipse at 91% 49%,#e7f3e9,transparent 49%),linear-gradient(115deg,#fff,#fbfdfa); }
.ts .ts-intro-panel .ts-intro-copy { position:relative; z-index:1; min-width:0; padding-bottom:3px; }
.ts .ts-intro-panel .ts-eyebrow { display:inline-flex; align-items:center; gap:8px; color:#9b8772; font-size:8px; letter-spacing:1.5px; font-weight:700; line-height:1.8; }
.ts .ts-intro-panel .ts-eyebrow>span { height:5px; width:5px; flex-shrink:0; border-radius:50%; background:var(--ts-accent); box-shadow:0 0 0 4px rgba(var(--ts-rgb),.07); }
.ts .ts-intro-market .ts-eyebrow { color:#7a9986; }
.ts .ts-intro.ts-intro-panel h1 { font-size:clamp(30px,3vw,39px); color:#354049; line-height:1.28; letter-spacing:-1.6px; font-weight:800; margin-top:13px; }
.ts .ts-intro-panel h1>span { display:inline-block; position:relative; color:var(--ts-accent); white-space:nowrap; }
.ts .ts-intro-panel h1>span>svg { position:absolute; left:0; bottom:-5px; height:9px; width:100%; color:rgba(var(--ts-rgb),.28); }
.ts .ts-intro-panel .ts-intro-copy>p.ts-intro-description { font-size:11px; line-height:1.9; max-width:580px; color:#899296; margin-top:15px; }
.ts .ts-intro-panel .ts-intro-art { position:relative; width:340px; height:150px; margin:-9px 0; color:var(--ts-accent); }
.ts .ts-intro-panel .ts-intro-halo { position:absolute; height:142px; width:142px; left:113px; top:0; border:1px solid rgba(var(--ts-rgb),.075); background:rgba(var(--ts-rgb),.035); border-radius:50%; }
.ts .ts-intro-panel .ts-intro-orbit { position:absolute; height:171px; width:171px; left:98px; top:-14px; border:1px dashed rgba(var(--ts-rgb),.14); border-radius:50%; }
.ts .ts-intro-panel .ts-intro-route { position:absolute; inset:-8px 0 0; width:100%; height:170px; color:rgba(var(--ts-rgb),.22); }
.ts .ts-intro-market .ts-intro-route { color:#b5d4bb; }
.ts .ts-intro-market .ts-intro-halo { border-color:#dceadf; background:#eff7ef; }
.ts .ts-intro-market .ts-intro-orbit { border-color:#cedfd1; }
.ts .ts-intro-panel .ts-intro-photo { position:absolute; margin:0; border:6px solid #fff; border-radius:50%; background:#fff9ee; box-shadow:0 8px 19px #79573e14; }
.ts .ts-intro-panel .ts-intro-photo-1 { width:123px; height:123px; left:122px; top:7px; z-index:2; transform:rotate(-7deg); }
.ts .ts-intro-panel .ts-intro-photo-2 { width:82px; height:82px; left:31px; top:36px; transform:rotate(-13deg); }
.ts .ts-intro-panel .ts-intro-photo-3 { width:72px; height:72px; right:10px; top:29px; transform:rotate(12deg); }
.ts .ts-intro-panel .ts-intro-photo>img { position:relative; z-index:1; display:block; height:100%; width:100%; object-fit:cover; border-radius:50%; }
.ts .ts-intro-panel .ts-intro-photo-fallback { position:absolute; inset:0; display:grid; place-items:center; background:#fff5e7; color:#d2ad7a; border-radius:50%; }
.ts .ts-intro-market .ts-intro-photo-fallback { color:#7ba087; background:#eff7f0; }
.ts .ts-intro-panel .ts-intro-photo-fallback>.ts-icon { height:35px; width:35px; }
.ts .ts-intro-panel .ts-intro-photo figcaption { position:absolute; z-index:2; bottom:-8px; left:50%; transform:translateX(-50%) rotate(7deg); display:block; max-width:145px; padding:5px 12px; border:1px solid #eee4d9; border-radius:7px; background:#fffefa; color:#9e7f5d; box-shadow:0 3px 7px #805a2c07; font-size:8px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ts .ts-intro-market .ts-intro-photo figcaption { color:#7f9d87; border-color:#dfeae1; background:#fcfefb; }
.ts .ts-intro-panel .ts-intro-spark { position:absolute; display:block; }
.ts .ts-intro-panel .ts-intro-spark-one { top:1px; left:86px; transform:rotate(8deg); }
.ts .ts-intro-panel .ts-intro-spark-one>svg { width:18px; height:18px; display:block; }
.ts .ts-intro-panel .ts-intro-spark-two { right:45px; top:111px; color:#9cb9a6; font-size:20px; font-weight:400; line-height:1; transform:rotate(12deg); }
.ts .ts-intro-panel .ts-intro-art-note { display:block; position:absolute; left:37px; bottom:-3px; color:#b3a492; font-size:7px; letter-spacing:.3px; transform:rotate(-4deg); }
.ts .ts-intro-market .ts-intro-art-note { color:#91ad99; }
.ts .ts-intro-panel .ts-intro-empty-art { position:absolute; display:grid; place-items:center; top:14px; left:130px; height:110px; width:110px; background:#fffefa; color:var(--ts-accent); border:1px solid rgba(var(--ts-rgb),.1); border-radius:30px; transform:rotate(-8deg); }
.ts .ts-intro-panel .ts-intro-empty-art>.ts-icon { width:42px; height:42px; }
.ts .ts-intro-panel.ts-intro-enter .ts-intro-copy { animation:tsi-copy-in .6s cubic-bezier(.2,.7,.25,1) both; }
.ts .ts-intro-panel.ts-intro-motion.is-intro-visible .ts-intro-photo-1 { animation:tsi-main-float 7s ease-in-out infinite; }
.ts .ts-intro-panel.ts-intro-motion.is-intro-visible .ts-intro-photo-2 { animation:tsi-side-float 8s ease-in-out infinite; }
@keyframes tsi-copy-in { from { opacity:.3; transform:translateY(9px); } to { opacity:1; transform:translateY(0); } }
@keyframes tsi-main-float { 0%,100% { transform:rotate(-7deg) translateY(0); } 50% { transform:rotate(-4deg) translateY(-4px); } }
@keyframes tsi-side-float { 0%,100% { transform:rotate(-13deg) translateY(0); } 50% { transform:rotate(-9deg) translateY(4px); } }
@media(max-width:1050px) {
 .ts .ts-intro.ts-intro-panel { grid-template-columns:minmax(0,1fr) 275px; gap:17px; padding:24px 27px; min-height:180px; }
 .ts .ts-intro-panel .ts-intro-art { transform:scale(.85); transform-origin:right center; margin-left:-65px; }
 .ts .ts-intro.ts-intro-panel h1 { font-size:34px; }
}
@media(max-width:760px) {
 .ts .ts-intro.ts-intro-panel { grid-template-columns:minmax(0,1fr) 200px; gap:10px; padding:24px; }
 .ts .ts-intro-panel .ts-intro-art { transform:scale(.7); margin-left:-140px; }
 .ts .ts-intro.ts-intro-panel h1 { font-size:30px; letter-spacing:-1.2px; }
 .ts .ts-intro-panel .ts-eyebrow { font-size:7px; letter-spacing:1.1px; }
 .ts .ts-intro-panel .ts-intro-copy>p.ts-intro-description { font-size:10px; max-width:300px; }
}
@media(max-width:550px) {
 .ts .ts-intro.ts-intro-panel { display:block; min-height:184px; padding:21px 20px 22px; margin:17px 0 23px; border-radius:17px; }
 .ts .ts-intro-panel .ts-intro-copy { padding:0; }
 .ts .ts-intro-panel .ts-eyebrow { font-size:7px; letter-spacing:1px; gap:7px; }
 .ts .ts-intro.ts-intro-panel h1 { font-size:27px; letter-spacing:-1px; max-width:320px; line-height:1.3; margin-top:12px; }
 .ts .ts-intro-panel .ts-intro-copy>p.ts-intro-description { max-width:205px; font-size:10px; margin-top:13px; line-height:1.8; }
 .ts .ts-intro-panel .ts-intro-art { position:absolute; right:0; bottom:6px; margin:0; width:340px; height:150px; transform:scale(.46); transform-origin:right bottom; }
 .ts .ts-intro-panel .ts-intro-art-note,.ts .ts-intro-panel .ts-intro-photo figcaption,.ts .ts-intro-panel .ts-intro-route { display:none; }
 .ts .ts-intro-panel .ts-intro-photo-1 { width:133px; height:133px; top:-18px; }
 .ts .ts-intro-panel .ts-intro-photo-2 { left:249px; top:35px; width:72px; height:72px; }
 .ts .ts-intro-panel .ts-intro-photo-3 { display:none; }
 .ts .ts-intro-panel .ts-intro-spark-one { top:-28px; }
 .ts .ts-intro-panel .ts-intro-spark-two { top:100px; }
}
@media(max-width:360px) {
 .ts .ts-intro.ts-intro-panel { padding:20px 17px; }
 .ts .ts-intro.ts-intro-panel h1 { font-size:25px; }
 .ts .ts-intro-panel .ts-intro-copy>p.ts-intro-description { max-width:175px; font-size:9px; }
 .ts .ts-intro-panel .ts-intro-art { right:0; bottom:6px; transform:scale(.4); }
}
@media(prefers-reduced-motion:reduce) {
 .ts .ts-intro.ts-intro-panel * { animation:none!important; transition:none!important; }
}
