.tde-rec-page{--red:#d71920;--pink:#fff1f2;--cream:#fffaf5;--sky:#eaf7ff;--lav:#f4edff;--green:#eef9ed;--ink:#171717;width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);overflow:hidden;color:var(--ink);font-family:var(--tde-home-body,inherit);background:#fff}.tde-rec-page *{box-sizing:border-box}.tde-rec-page h1,.tde-rec-page h2,.tde-rec-page h3{font-family:var(--tde-home-display,"Cormorant Garamond",Cormorant,Georgia,serif);font-style:normal;font-weight:500;letter-spacing:-.025em}.tde-rec-page p,.tde-rec-page a,.tde-rec-page span,.tde-rec-page b{font-family:var(--tde-home-body,inherit)}.tde-rec-page svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.tde-rec-hero{position:relative;width:100vw;height:var(--tde-interior-hero-height,520px);min-height:var(--tde-interior-hero-height,520px);max-height:var(--tde-interior-hero-height,520px);overflow:hidden;background:#fff}.tde-rec-hero-image{position:absolute;inset:0;background-image:var(--pic);background-position:var(--px) var(--py);background-size:var(--pz) auto;background-repeat:no-repeat;background-color:#f6f0eb}.tde-rec-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 37%,rgba(255,255,255,.76) 49%,rgba(255,255,255,.08) 70%,rgba(255,255,255,0) 100%);pointer-events:none}.tde-rec-hero-copy{position:relative;z-index:2;width:min(610px,calc(100vw - var(--tde-interior-hero-left,clamp(28px,5.5vw,95px)) - 28px));margin-left:var(--tde-interior-hero-left,clamp(28px,5.5vw,95px));padding-top:48px}.tde-rec-eyebrow{display:block;color:var(--red);font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}.tde-rec-hero h1{font-size:clamp(46px,4.4vw,67px);line-height:.93;margin:0;max-width:580px}.tde-rec-hero h1 br{display:block}.tde-rec-hero-copy>i{display:block;width:62px;height:3px;background:var(--red);margin:15px 0 14px;transform:rotate(-3deg);border-radius:99px}.tde-rec-hero-copy>p{font-size:15px;line-height:1.62;max-width:520px;margin:0 0 18px}.tde-rec-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.tde-rec-actions a{display:inline-flex;align-items:center;gap:14px;padding:14px 19px;background:var(--red);border:1px solid var(--red);color:#fff;text-decoration:none;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.06em;border-radius:4px}.tde-rec-actions a.outline{background:#fff;color:var(--red)}.tde-rec-actions a:hover{transform:translateY(-1px)}.tde-rec-hero-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px;max-width:590px}.tde-rec-hero-badges span{display:flex;align-items:center;gap:8px;font-size:10px;line-height:1.25}.tde-rec-hero-badges svg{width:26px;height:26px;color:var(--red);flex:0 0 26px}.tde-rec-hero-badges b{font-weight:700}.tde-rec-welcome{display:grid;grid-template-columns:.82fr 1.6fr;gap:58px;padding:50px max(38px,calc((100vw - 1460px)/2));background:linear-gradient(120deg,#fff 0%,#fffdfb 55%,#fff8f1 100%);position:relative}.tde-rec-welcome:before{content:"♡";position:absolute;left:31%;top:28px;color:#ff9eaa;font-size:38px;transform:rotate(12deg)}.tde-rec-welcome-copy h2{font-size:40px;line-height:1.03;margin:0 0 14px}.tde-rec-welcome-copy h2 span{color:#ff8e9c;font-family:inherit}.tde-rec-welcome-copy p{font-size:14px;line-height:1.75;margin:0}.tde-rec-welcome-points{display:grid;grid-template-columns:repeat(4,1fr)}.tde-rec-welcome-points article{text-align:center;padding:4px 22px;border-left:1px solid #ddd}.tde-rec-welcome-points article:first-child{border-left:0}.tde-rec-welcome-points svg{color:var(--red)}.tde-rec-welcome-points article:nth-child(2) svg{color:#6385cf}.tde-rec-welcome-points article:nth-child(3) svg{color:#e35068}.tde-rec-welcome-points article:nth-child(4) svg{color:#ff6372}.tde-rec-welcome-points h3{font-family:var(--tde-home-body,inherit);font-size:14px;font-weight:800;letter-spacing:0;margin:10px 0 8px}.tde-rec-welcome-points p{font-size:11px;line-height:1.55;margin:0}.tde-rec-classes{padding:44px max(38px,calc((100vw - 1460px)/2)) 48px;background:#fff}.tde-rec-section-title{display:flex;justify-content:center;align-items:center;gap:15px;margin-bottom:24px}.tde-rec-section-title h2{font-family:var(--tde-home-body,inherit);font-weight:800;letter-spacing:-.02em;font-size:28px;margin:0}.tde-rec-section-title span{width:24px;height:2px;background:var(--red);transform:rotate(24deg);position:relative}.tde-rec-section-title span:after{content:"";position:absolute;width:9px;height:2px;background:var(--red);top:-7px;right:1px;transform:rotate(-42deg)}.tde-rec-section-title span:last-child{transform:rotate(-24deg)}.tde-rec-class-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px}.tde-rec-class-card{border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 3px 10px rgba(0,0,0,.025)}.tde-rec-class-card .photo{height:220px;background-image:var(--pic);background-position:var(--px) var(--py);background-size:var(--pz) auto;background-repeat:no-repeat;background-color:#f4f1ef}.tde-rec-class-card .copy{display:flex;align-items:center;gap:9px;padding:12px 13px 13px}.tde-rec-class-card svg{width:26px;height:26px;color:#ef4d58;flex:0 0 26px}.tde-rec-class-card:nth-child(2) svg{color:#ec4e4e}.tde-rec-class-card:nth-child(3) svg{color:#6f86d8}.tde-rec-class-card:nth-child(4) svg{color:#ef4d58}.tde-rec-class-card:nth-child(5) svg{color:#f58a4f}.tde-rec-class-card:nth-child(6) svg{color:#8089ce}.tde-rec-class-card h3{font-family:var(--tde-home-body,inherit);font-size:14px;font-weight:800;letter-spacing:0;margin:0 0 2px}.tde-rec-class-card p{font-size:10px;margin:0;color:#555}.tde-rec-text-link{display:table;margin:20px auto 0;color:var(--red);text-decoration:none;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.06em}.tde-rec-text-link b{margin-left:10px}.tde-rec-performances{display:grid;grid-template-columns:.82fr .68fr 1.3fr;min-height:260px;background:linear-gradient(90deg,#fff7f7,#fffdfc);border-top:1px solid #f0e6e3;border-bottom:1px solid #f0e6e3}.tde-rec-performance-copy{padding:42px 38px 36px max(38px,calc((100vw - 1460px)/2));position:relative}.tde-rec-performance-copy .spark{position:absolute;left:max(290px,calc((100vw - 1460px)/2 + 250px));top:30px;color:#ff7381;font-size:22px;letter-spacing:8px}.tde-rec-performance-copy h2{font-family:var(--tde-home-body,inherit);font-size:29px;font-weight:800;letter-spacing:-.02em;margin:0 0 12px}.tde-rec-performance-copy p{font-size:13px;line-height:1.65;margin:0}.tde-rec-show-bubbles{display:flex;align-items:center;justify-content:center;gap:18px;padding:25px 14px}.tde-rec-show-bubbles article{width:145px;height:145px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:15px;box-shadow:0 5px 22px rgba(0,0,0,.035)}.tde-rec-show-bubbles svg{width:38px;height:38px;color:#6788ce}.tde-rec-show-bubbles article+article svg{color:#71a95c}.tde-rec-show-bubbles h3{font-family:var(--tde-home-body,inherit);font-size:14px;font-weight:800;letter-spacing:0;margin:5px 0 4px}.tde-rec-show-bubbles p{font-size:10px;line-height:1.3;margin:0}.tde-rec-performance-photo{min-height:260px;background-image:linear-gradient(90deg,#fffdfc 0%,rgba(255,253,252,.35) 15%,rgba(255,253,252,0) 34%),var(--pic);background-position:center,var(--px) var(--py);background-size:auto,var(--pz) auto;background-repeat:no-repeat;background-color:#f0e4df}.tde-rec-expect{padding:38px max(38px,calc((100vw - 1460px)/2)) 42px;background:#fff}.tde-rec-expect-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}.tde-rec-expect-grid article{text-align:center;padding:4px 24px;border-right:1px solid #ddd}.tde-rec-expect-grid article:last-child{border-right:0}.tde-rec-expect-grid svg{color:#ef3f4a}.tde-rec-expect-grid article:nth-child(2) svg,.tde-rec-expect-grid article:nth-child(3) svg{color:#6385cf}.tde-rec-expect-grid article:nth-child(5) svg{color:#6385cf}.tde-rec-expect-grid article:nth-child(6) svg{color:#72a85a}.tde-rec-expect-grid h3{font-family:var(--tde-home-body,inherit);font-size:13px;font-weight:800;letter-spacing:0;margin:8px 0 6px}.tde-rec-expect-grid p{font-size:10px;line-height:1.45;margin:0}.tde-rec-cta{display:grid;grid-template-columns:.9fr 1.55fr;min-height:190px;background:linear-gradient(100deg,#fff,#fffaf7);border-top:1px solid #eee}.tde-rec-cta-photo{min-height:190px;background-image:linear-gradient(90deg,rgba(255,255,255,0) 72%,#fff 100%),var(--pic);background-position:center,var(--px) var(--py);background-size:auto,var(--pz) auto;background-repeat:no-repeat;background-color:#f0e9e3}.tde-rec-cta-copy{padding:35px max(38px,calc((100vw - 1460px)/2)) 30px 40px;align-self:center}.tde-rec-cta-copy h2{font-family:var(--tde-home-body,inherit);font-size:30px;font-weight:800;letter-spacing:-.02em;margin:0 0 6px}.tde-rec-cta-copy h2 span{color:#ff7280}.tde-rec-cta-copy p{font-size:13px;margin:0 0 15px;max-width:600px}.tde-rec-cta .tde-rec-actions a{padding:12px 18px}
@media(max-width:1150px){.tde-rec-hero:after{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.97) 46%,rgba(255,255,255,.42) 70%,rgba(255,255,255,.08) 100%)}.tde-rec-hero-copy{width:min(550px,60vw)}.tde-rec-hero-badges{grid-template-columns:repeat(2,minmax(0,1fr));max-width:430px}.tde-rec-welcome{grid-template-columns:1fr}.tde-rec-class-grid{grid-template-columns:repeat(3,1fr)}.tde-rec-class-card .photo{height:260px}.tde-rec-performances{grid-template-columns:1fr 1fr}.tde-rec-performance-photo{grid-column:1/-1;min-height:330px}.tde-rec-expect-grid{grid-template-columns:repeat(3,1fr);gap:22px 0}.tde-rec-expect-grid article:nth-child(3){border-right:0}}
@media(max-width:760px){.tde-rec-hero{height:var(--tde-interior-hero-mobile-height,590px);min-height:var(--tde-interior-hero-mobile-height,590px);max-height:var(--tde-interior-hero-mobile-height,590px);background:#fff}.tde-rec-hero-image{inset:0 0 auto 0;height:260px;background-position:var(--px) var(--py);background-size:cover}.tde-rec-hero:after{background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.1) 26%,#fff 44%,#fff 100%)}.tde-rec-hero-copy{position:relative;width:calc(100vw - 56px);margin:0 28px;padding-top:220px}.tde-rec-eyebrow{font-size:10px;margin-bottom:8px}.tde-rec-hero h1{font-size:39px;line-height:.93}.tde-rec-hero-copy>i{margin:10px 0}.tde-rec-hero-copy>p{font-size:13px;line-height:1.5;margin-bottom:12px}.tde-rec-actions{gap:8px}.tde-rec-actions a{padding:11px 13px;font-size:9px}.tde-rec-hero-badges{grid-template-columns:repeat(2,1fr);gap:7px;margin-top:12px}.tde-rec-hero-badges span{font-size:8.5px}.tde-rec-hero-badges svg{width:20px;height:20px;flex-basis:20px}.tde-rec-welcome,.tde-rec-classes,.tde-rec-expect{padding-left:28px;padding-right:28px}.tde-rec-welcome{gap:28px;padding-top:38px;padding-bottom:36px}.tde-rec-welcome-copy h2{font-size:34px}.tde-rec-welcome-points{grid-template-columns:repeat(2,1fr);gap:24px 0}.tde-rec-welcome-points article:nth-child(3){border-left:0}.tde-rec-class-grid{grid-template-columns:repeat(2,1fr);gap:10px}.tde-rec-class-card .photo{height:180px;background-size:cover}.tde-rec-section-title h2{font-size:22px;text-align:center}.tde-rec-performances{grid-template-columns:1fr}.tde-rec-performance-copy{padding:34px 28px 10px}.tde-rec-performance-copy .spark{display:none}.tde-rec-show-bubbles{padding:18px 20px 26px}.tde-rec-show-bubbles article{width:132px;height:132px}.tde-rec-performance-photo{grid-column:auto;min-height:240px;background-size:auto,cover}.tde-rec-expect-grid{grid-template-columns:repeat(2,1fr);gap:24px 0}.tde-rec-expect-grid article{padding:0 15px}.tde-rec-expect-grid article:nth-child(2),.tde-rec-expect-grid article:nth-child(4){border-right:0}.tde-rec-expect-grid article:nth-child(3){border-right:1px solid #ddd}.tde-rec-cta{grid-template-columns:1fr}.tde-rec-cta-photo{min-height:180px;background-size:auto,cover}.tde-rec-cta-copy{padding:26px 28px 32px}.tde-rec-cta-copy h2{font-size:26px}}

/* v1.0.1 image framing: ratio-correct boxes + working position/zoom */
.tde-rec-hero-image,.tde-rec-class-card .photo,.tde-rec-performance-photo,.tde-rec-cta-photo{position:relative;overflow:hidden;background-image:none!important;background-color:#f4f1ef}
.tde-rec-hero-image:before,.tde-rec-class-card .photo:before,.tde-rec-performance-photo:before,.tde-rec-cta-photo:before{content:"";position:absolute;inset:0;background-image:var(--pic);background-size:cover;background-repeat:no-repeat;background-position:var(--px,50%) var(--py,50%);transform:scale(var(--pz-scale,1));transform-origin:var(--px,50%) var(--py,50%);will-change:transform}
.tde-rec-class-card .photo{height:auto!important;aspect-ratio:4/3}
.tde-rec-performance-photo{height:auto!important;min-height:0!important;aspect-ratio:16/7}
.tde-rec-performance-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fffdfc 0%,rgba(255,253,252,.35) 15%,rgba(255,253,252,0) 34%);pointer-events:none}
.tde-rec-cta-photo{height:auto!important;min-height:0!important;aspect-ratio:16/7}
.tde-rec-cta-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,0) 72%,#fff 100%);pointer-events:none}
.tde-rec-section-title-plain{gap:0}
@media(max-width:760px){.tde-rec-hero-image{background-image:none!important}.tde-rec-class-card .photo{height:auto!important;aspect-ratio:4/3}.tde-rec-performance-photo,.tde-rec-cta-photo{height:auto!important;min-height:0!important;aspect-ratio:16/9}}

/* v1.0.3 recreational hero persistence + spacing refinement */
.tde-rec-page h2::before,
.tde-rec-page h2::after{content:none!important;display:none!important}
.tde-rec-section-title{gap:0!important}
.tde-rec-section-title>span,
.tde-rec-performance-copy .spark{display:none!important}

/* Hero uses one real media element so the saved crop and selected attachment
   are the exact image rendered on the page. */
.tde-rec-hero-image{position:absolute;inset:0;z-index:0;overflow:hidden;background:#f6f0eb!important;background-image:none!important}
.tde-rec-hero-image::before{content:none!important;display:none!important;background-image:none!important}
.tde-rec-hero-image>img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:var(--px,50%) var(--py,50%);transform:scale(var(--pz-scale,1));transform-origin:var(--px,50%) var(--py,50%);will-change:transform}
.tde-rec-hero:after{z-index:1}
.tde-rec-hero-copy{z-index:2!important;display:block!important;visibility:visible!important;opacity:1!important;color:var(--ink)!important}

/* Let the performance photo do more of the visual work. */
.tde-rec-performances{grid-template-columns:.72fr .58fr 1.5fr}
.tde-rec-performance-photo:after{background:linear-gradient(90deg,rgba(255,253,252,.28) 0%,rgba(255,253,252,0) 8%)!important}

/* Give the rec-family section more presence without making it heavy. */
.tde-rec-expect{padding-top:46px;padding-bottom:50px}
.tde-rec-expect .tde-rec-section-title{margin-bottom:31px}
.tde-rec-expect .tde-rec-section-title h2{font-size:34px}
.tde-rec-expect-grid article{padding:7px 28px}
.tde-rec-expect-grid svg{width:38px;height:38px}
.tde-rec-expect-grid h3{font-size:15px;margin-top:10px;margin-bottom:7px}
.tde-rec-expect-grid p{font-size:11.5px;line-height:1.5}

/* Closing invitation: larger photo, tighter copy column, no giant empty right gutter. */
.tde-rec-cta{grid-template-columns:1.12fr .88fr;min-height:220px}
.tde-rec-cta-photo{aspect-ratio:auto!important;min-height:220px!important}
.tde-rec-cta-photo:after{background:linear-gradient(90deg,rgba(255,255,255,0) 88%,rgba(255,255,255,.48) 96%,#fff 100%)!important}
.tde-rec-cta-copy{padding:34px 56px 32px 46px}
.tde-rec-cta-copy p{max-width:680px}

@media(max-width:1150px){
  .tde-rec-performances{grid-template-columns:1fr 1fr}
  .tde-rec-performance-photo{grid-column:1/-1;aspect-ratio:16/7!important}
  .tde-rec-expect .tde-rec-section-title h2{font-size:31px}
  .tde-rec-cta{grid-template-columns:1fr 1fr}
  .tde-rec-cta-copy{padding:32px 36px}
}
@media(max-width:760px){
  .tde-rec-hero-image{inset:0 0 auto 0!important;height:260px!important}
  .tde-rec-hero-image>img{width:100%;height:100%;object-fit:cover;object-position:var(--px,50%) var(--py,50%);transform:scale(var(--pz-scale,1));transform-origin:var(--px,50%) var(--py,50%)}
  .tde-rec-expect{padding-top:38px;padding-bottom:42px}
  .tde-rec-expect .tde-rec-section-title h2{font-size:27px}
  .tde-rec-expect-grid article{padding:0 15px}
  .tde-rec-expect-grid svg{width:34px;height:34px}
  .tde-rec-expect-grid h3{font-size:14px}
  .tde-rec-expect-grid p{font-size:10.5px}
  .tde-rec-cta{grid-template-columns:1fr}
  .tde-rec-cta-photo{min-height:190px!important;aspect-ratio:16/9!important}
  .tde-rec-cta-copy{padding:27px 28px 33px}
}



/* v1.0.4 Rec page punch-list refinement */
/* Hero: no decorative underline/confetti mark. */
.tde-rec-hero-copy>i{display:none!important}

/* Classes: clean, photo-free recreational tiles with one consistent star. */
.tde-rec-class-grid{gap:16px}
.tde-rec-class-card{min-height:142px;padding:24px 16px 22px;border:1px solid #e7dfdc;border-radius:12px;background:linear-gradient(145deg,#fff 0%,#fffaf7 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 5px 18px rgba(0,0,0,.035);overflow:visible}
.tde-rec-class-card .photo,.tde-rec-class-card .copy{display:none!important}
.tde-rec-class-card>svg{display:block!important;width:36px;height:36px;flex:0 0 36px;color:var(--red)!important;margin:0 0 12px}
.tde-rec-class-card>h3{font-family:var(--tde-home-body,inherit);font-size:16px;font-weight:800;letter-spacing:0;margin:0 0 5px}
.tde-rec-class-card>p{font-size:11px;line-height:1.35;color:#555;margin:0}

/* Two Chances to Shine: pull the photo left, reduce dead space and improve copy rhythm. */
.tde-rec-performances{grid-template-columns:.75fr .45fr 1.8fr;min-height:310px}
.tde-rec-performance-copy{padding:46px 24px 42px max(38px,calc((100vw - 1540px)/2));display:flex;flex-direction:column;justify-content:center}
.tde-rec-performance-copy h2{font-size:31px;line-height:1.05;margin:0 0 16px;max-width:360px}
.tde-rec-performance-copy p{font-size:13.5px;line-height:1.72;max-width:350px}
.tde-rec-show-bubbles{gap:12px;padding:28px 10px;align-content:center}
.tde-rec-show-bubbles article{width:132px;height:132px;padding:13px}
.tde-rec-show-bubbles svg{width:34px;height:34px}
.tde-rec-performance-photo{aspect-ratio:auto!important;min-height:310px!important}
.tde-rec-performance-photo:after{background:linear-gradient(90deg,rgba(255,253,252,.16) 0%,rgba(255,253,252,0) 4%)!important}

/* Rec-family section remains airy but gets a little more scale and less empty top/bottom room. */
.tde-rec-expect{padding-top:42px;padding-bottom:46px}
.tde-rec-expect .tde-rec-section-title{margin-bottom:28px}
.tde-rec-expect .tde-rec-section-title h2{font-size:36px}
.tde-rec-expect-grid svg{width:40px;height:40px}
.tde-rec-expect-grid h3{font-size:15.5px}
.tde-rec-expect-grid p{font-size:11.5px}

/* Closing invitation: about 30% taller, with the image and copy sharing the space evenly. */
.tde-rec-cta{grid-template-columns:1.08fr .92fr;min-height:286px}
.tde-rec-cta-photo{min-height:286px!important;aspect-ratio:auto!important}
.tde-rec-cta-photo:after{background:linear-gradient(90deg,rgba(255,255,255,0) 91%,rgba(255,255,255,.35) 97%,#fff 100%)!important}
.tde-rec-cta-copy{padding:44px 52px 42px 46px;align-self:center}
.tde-rec-cta-copy h2{font-size:32px;margin-bottom:8px}
.tde-rec-cta-copy p{font-size:13.5px;line-height:1.55;max-width:620px;margin-bottom:18px}

@media(max-width:1150px){
  .tde-rec-class-grid{grid-template-columns:repeat(3,1fr)}
  .tde-rec-performances{grid-template-columns:1fr 1fr}
  .tde-rec-performance-copy{padding:38px 30px 18px}
  .tde-rec-performance-copy h2,.tde-rec-performance-copy p{max-width:none}
  .tde-rec-show-bubbles{padding:30px 20px}
  .tde-rec-performance-photo{grid-column:1/-1;min-height:330px!important;aspect-ratio:16/7!important}
  .tde-rec-cta{grid-template-columns:1fr 1fr;min-height:270px}
  .tde-rec-cta-photo{min-height:270px!important}
  .tde-rec-cta-copy{padding:38px 34px}
}
@media(max-width:760px){
  .tde-rec-class-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .tde-rec-class-card{min-height:126px;padding:19px 10px}
  .tde-rec-class-card>svg{width:31px;height:31px;flex-basis:31px;margin-bottom:9px}
  .tde-rec-class-card>h3{font-size:14px}
  .tde-rec-class-card>p{font-size:10px}
  .tde-rec-performances{grid-template-columns:1fr;min-height:0}
  .tde-rec-performance-copy{padding:34px 28px 10px}
  .tde-rec-performance-copy h2{font-size:27px;margin-bottom:12px}
  .tde-rec-performance-copy p{font-size:13px;line-height:1.62}
  .tde-rec-show-bubbles{padding:18px 20px 26px}
  .tde-rec-performance-photo{grid-column:auto;min-height:245px!important;aspect-ratio:16/9!important}
  .tde-rec-expect .tde-rec-section-title h2{font-size:29px}
  .tde-rec-cta{grid-template-columns:1fr;min-height:0}
  .tde-rec-cta-photo{min-height:230px!important;aspect-ratio:16/9!important}
  .tde-rec-cta-copy{padding:31px 28px 36px}
}


/* v1.0.5 desktop lightness pass
   Preserve the mobile composition that is already working. These overrides only
   rebalance wide screens to more closely match the approved light recreational mockup. */
@media(min-width:1151px){
  /* Hero: lighter, friendlier scale with more image presence. */
  .tde-rec-hero:after{
    background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.985) 31%,rgba(255,255,255,.88) 43%,rgba(255,255,255,.34) 56%,rgba(255,255,255,0) 72%);
  }
  .tde-rec-hero-copy{
    width:min(560px,calc(100vw - var(--tde-interior-hero-left,clamp(28px,5.5vw,95px)) - 28px));
    padding-top:54px;
  }
  .tde-rec-eyebrow{font-size:11px;letter-spacing:.16em;margin-bottom:11px}
  .tde-rec-hero h1{
    font-family:var(--tde-home-body,inherit);
    font-weight:800;
    letter-spacing:-.035em;
    font-size:clamp(44px,3.35vw,57px);
    line-height:.98;
    max-width:535px;
  }
  .tde-rec-hero-copy>p{font-size:14px;line-height:1.58;max-width:500px;margin-bottom:16px}
  .tde-rec-actions a{padding:13px 18px;font-size:10.5px}
  .tde-rec-hero-badges{margin-top:18px;max-width:540px;gap:12px}
  .tde-rec-hero-badges span{font-size:9.5px}
  .tde-rec-hero-badges svg{width:24px;height:24px;flex-basis:24px}

  /* Intro: keep the warmth but remove the oversized editorial feel. */
  .tde-rec-welcome{
    grid-template-columns:.78fr 1.65fr;
    gap:50px;
    padding-top:38px;
    padding-bottom:40px;
  }
  .tde-rec-welcome-copy h2{
    font-family:var(--tde-home-body,inherit);
    font-weight:800;
    letter-spacing:-.025em;
    font-size:28px;
    line-height:1.08;
    margin-bottom:11px;
  }
  .tde-rec-welcome-copy p{font-size:12.5px;line-height:1.65;max-width:500px}
  .tde-rec-welcome:before{font-size:30px;top:22px}
  .tde-rec-welcome-points article{padding:2px 19px}
  .tde-rec-welcome-points svg{width:30px;height:30px}
  .tde-rec-welcome-points h3{font-size:12.5px;margin:8px 0 6px}
  .tde-rec-welcome-points p{font-size:10px;line-height:1.48}

  /* Classes: flatter, softer, smaller. Still six clear choices, but not six heavy cards. */
  .tde-rec-classes{padding-top:34px;padding-bottom:38px}
  .tde-rec-classes .tde-rec-section-title{margin-bottom:20px}
  .tde-rec-classes .tde-rec-section-title h2{font-size:25px;font-weight:800}
  .tde-rec-class-grid{gap:12px}
  .tde-rec-class-card{
    min-height:110px;
    padding:18px 12px 17px;
    border:1px solid #eee6e2;
    border-radius:10px;
    background:#fffdfb;
    box-shadow:none;
  }
  .tde-rec-class-card>svg{width:29px;height:29px;flex-basis:29px;margin-bottom:8px;stroke-width:1.55}
  .tde-rec-class-card>h3{font-size:13.5px;margin-bottom:3px}
  .tde-rec-class-card>p{font-size:9.5px;color:#666}
  .tde-rec-text-link{margin-top:17px;font-size:10px}

  /* Performance band: use a lighter 30/22/48 balance and reduce vertical weight. */
  .tde-rec-performances{
    grid-template-columns:.82fr .56fr 1.62fr;
    min-height:250px;
  }
  .tde-rec-performance-copy{
    padding:32px 22px 30px max(38px,calc((100vw - 1460px)/2));
    justify-content:center;
  }
  .tde-rec-performance-copy h2{font-size:27px;line-height:1.08;margin-bottom:12px;max-width:320px}
  .tde-rec-performance-copy p{font-size:12px;line-height:1.62;max-width:330px}
  .tde-rec-show-bubbles{gap:10px;padding:22px 5px}
  .tde-rec-show-bubbles article{width:116px;height:116px;padding:11px;box-shadow:0 3px 14px rgba(0,0,0,.025)}
  .tde-rec-show-bubbles svg{width:30px;height:30px}
  .tde-rec-show-bubbles h3{font-size:12px;margin:4px 0 3px}
  .tde-rec-show-bubbles p{font-size:8.8px;line-height:1.25}
  .tde-rec-performance-photo{min-height:250px!important}

  /* Expectations: larger than the first build, but more delicate than v1.0.4. */
  .tde-rec-expect{padding-top:34px;padding-bottom:38px}
  .tde-rec-expect .tde-rec-section-title{margin-bottom:22px}
  .tde-rec-expect .tde-rec-section-title h2{font-size:29px}
  .tde-rec-expect-grid article{padding:3px 22px}
  .tde-rec-expect-grid svg{width:34px;height:34px;stroke-width:1.55}
  .tde-rec-expect-grid h3{font-size:13px;margin:8px 0 5px}
  .tde-rec-expect-grid p{font-size:10px;line-height:1.42;color:#444}

  /* Final invitation: retain the requested taller image, but make the copy feel lighter
     and use the whole right half instead of clustering at the left edge. */
  .tde-rec-cta{grid-template-columns:1.03fr .97fr;min-height:250px}
  .tde-rec-cta-photo{min-height:250px!important}
  .tde-rec-cta-copy{padding:36px max(52px,calc((100vw - 1550px)/2)) 34px 46px}
  .tde-rec-cta-copy h2{font-size:27px;margin-bottom:7px}
  .tde-rec-cta-copy p{font-size:12px;line-height:1.5;max-width:560px;margin-bottom:15px}
  .tde-rec-cta .tde-rec-actions a{padding:11px 16px;font-size:10px}
}


/* v1.0.6 TDE typography + class-image restoration
   Keep the lighter desktop proportions from v1.0.5, but do not change the
   site's typography. Restore the six saved class photos and retain one star
   icon on every tile. */

/* Same editorial type system as the rest of the redesigned TDE site. */
.tde-rec-hero h1,
.tde-rec-welcome-copy h2,
.tde-rec-section-title h2,
.tde-rec-performance-copy h2,
.tde-rec-cta-copy h2{
  font-family:var(--tde-home-display,"Cormorant Garamond",Cormorant,Georgia,serif)!important;
  font-style:normal!important;
  font-weight:500!important;
  letter-spacing:-.025em!important;
}
.tde-rec-hero h1{line-height:.91!important;letter-spacing:-.035em!important}
.tde-rec-welcome-points h3,
.tde-rec-class-card h3,
.tde-rec-show-bubbles h3,
.tde-rec-expect-grid h3{
  font-family:var(--tde-home-body,inherit)!important;
  font-style:normal!important;
  font-weight:800!important;
  letter-spacing:0!important;
}

/* Restore class photos from the already-saved media settings. */
.tde-rec-class-card{
  min-height:0!important;
  padding:0!important;
  display:block!important;
  text-align:left!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid #e5e0dd!important;
  border-radius:9px!important;
  box-shadow:0 3px 10px rgba(0,0,0,.025)!important;
}
.tde-rec-class-card .photo{
  display:block!important;
  position:relative!important;
  overflow:hidden!important;
  width:100%;
  height:auto!important;
  aspect-ratio:4/3;
  background-image:none!important;
  background-color:#f4f1ef!important;
}
.tde-rec-class-card .photo::before{
  display:block!important;
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background-image:var(--pic)!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-position:var(--px,50%) var(--py,50%)!important;
  transform:scale(var(--pz-scale,1))!important;
  transform-origin:var(--px,50%) var(--py,50%)!important;
}
.tde-rec-class-card .copy{
  display:flex!important;
  align-items:center;
  gap:9px;
  padding:11px 12px 12px;
  background:#fff;
  position:relative;
  z-index:2;
}
.tde-rec-class-card>svg{display:none!important}
.tde-rec-class-card .copy>svg{
  display:block!important;
  width:25px!important;
  height:25px!important;
  flex:0 0 25px!important;
  margin:0!important;
  color:var(--red)!important;
  stroke-width:1.6!important;
}
.tde-rec-class-card .copy h3{font-size:13.5px!important;margin:0 0 2px!important}
.tde-rec-class-card .copy p{font-size:9.5px!important;line-height:1.35!important;margin:0!important;color:#555!important}

@media(min-width:1151px){
  .tde-rec-hero h1{font-size:clamp(46px,3.6vw,60px)!important}
  .tde-rec-welcome-copy h2{font-size:32px!important;line-height:1.02!important}
  .tde-rec-classes .tde-rec-section-title h2{font-size:30px!important}
  .tde-rec-performance-copy h2{font-size:31px!important;line-height:1.02!important}
  .tde-rec-expect .tde-rec-section-title h2{font-size:32px!important}
  .tde-rec-cta-copy h2{font-size:31px!important;line-height:1.02!important}
}

@media(max-width:760px){
  .tde-rec-class-card .photo{aspect-ratio:4/3!important}
  .tde-rec-class-card .copy{padding:10px 10px 11px}
  .tde-rec-class-card .copy>svg{width:23px!important;height:23px!important;flex-basis:23px!important}
  .tde-rec-class-card .copy h3{font-size:13px!important}
  .tde-rec-class-card .copy p{font-size:9.5px!important}
}
