
:root{
  --black:#050507;--anthra:#0d0d11;--anthra2:#14141a;--navy:#11111a;
  --gold:#ff4fc3;--gold-soft:#ff8add;--copper:#ff5a2f;--copper-soft:#ffb12b;
  --ink:#fff8fb;--muted:#d6bfd0;--line:rgba(255,94,176,.34);
  --display:"Archivo",sans-serif;--serif:"Lora",serif;--body:"Archivo",sans-serif;
  --glow-pink:rgba(255,39,170,.35);--glow-orange:rgba(255,137,36,.28);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:radial-gradient(circle at top,#130712 0,#07070a 36%,#040405 100%);color:var(--ink);font-family:var(--body);font-weight:400;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}
p,.lead{font-family:var(--serif)}
::selection{background:var(--copper);color:#12060a}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px}
.kicker{font-size:.72rem;letter-spacing:.42em;text-transform:uppercase;color:var(--gold-soft);font-weight:700;text-shadow:0 0 16px var(--glow-pink)}

nav{position:fixed;top:0;left:0;right:0;z-index:90;transition:.4s;border-bottom:1px solid transparent}
nav.scrolled{background:rgba(7,7,10,.86);backdrop-filter:blur(14px);border-bottom-color:rgba(255,94,176,.22);box-shadow:0 12px 28px rgba(0,0,0,.22)}
.nav-in{max-width:1320px;margin:0 auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.wordmark{font-family:var(--display);font-weight:700;font-size:1.18rem;letter-spacing:.16em;text-transform:uppercase}
.wordmark span{color:var(--copper-soft);text-shadow:0 0 18px var(--glow-orange)}
.back{font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--muted);display:inline-flex;align-items:center;gap:10px;transition:color .3s}
.back:hover{color:var(--gold-soft)}
.lang-btn{background:rgba(255,255,255,.02);border:1px solid rgba(255,124,191,.24);color:var(--ink);border-radius:999px;padding:7px 14px;display:flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--body);font-size:.72rem;letter-spacing:.14em;font-weight:700;transition:.3s;box-shadow:0 0 0 transparent}
.lang-btn:hover{border-color:var(--copper-soft);box-shadow:0 0 18px var(--glow-pink)}
.lang-btn svg{width:17px;height:12px;border-radius:2px}

.hero{position:relative;min-height:86svh;display:flex;align-items:flex-end;overflow:hidden}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:55% 13%;filter:saturate(.95) contrast(1.06) brightness(.62)}
.hero-veil{position:absolute;inset:0;background:
 linear-gradient(180deg,rgba(7,7,10,.68),rgba(7,7,10,.32) 36%,rgba(7,7,10,.54) 68%,var(--black) 98%),
 radial-gradient(circle at 28% 22%, rgba(255,40,176,.18), transparent 32%),
 radial-gradient(circle at 78% 30%, rgba(255,146,38,.16), transparent 26%)}
.hero-in{position:relative;z-index:2;width:100%;padding:120px 0 8vh}
.hero .kicker{display:block;margin-bottom:16px}
h1{font-family:var(--display);font-weight:800;font-size:clamp(2.6rem,7.5vw,5.4rem);line-height:1.04;letter-spacing:.05em;text-transform:uppercase;text-shadow:0 0 26px rgba(0,0,0,.22)}
h1 em{font-family:var(--serif);font-style:italic;color:var(--gold-soft);text-transform:none;font-weight:500;letter-spacing:0;text-shadow:0 0 20px var(--glow-pink)}
.hero p.intro{margin:22px 0 32px;color:var(--muted);max-width:58ch;font-size:1.05rem}
.hero p.intro strong{color:var(--ink);font-weight:600}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:999px;font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700;transition:.35s;border:1px solid transparent}
.btn-copper{background:linear-gradient(120deg,var(--gold),var(--copper-soft));color:#17070d;box-shadow:0 10px 28px rgba(255,74,160,.18)}
.btn-copper:hover{box-shadow:0 12px 38px rgba(255,74,160,.28),0 0 20px rgba(255,164,50,.2);transform:translateY(-2px)}
.btn-ghost{border-color:rgba(255,155,204,.28);color:var(--ink);background:rgba(255,255,255,.02)}
.btn-ghost:hover{border-color:var(--copper-soft);color:var(--gold-soft);transform:translateY(-2px);box-shadow:0 0 18px rgba(255,82,179,.16)}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}

section{padding:100px 0;position:relative}
.rev{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s ease}
.rev.vis{opacity:1;transform:none}
h2{font-family:var(--display);font-weight:700;font-size:clamp(2rem,4.6vw,3.1rem);line-height:1.1;margin-bottom:20px}
h2 em{font-family:var(--serif);font-style:italic;color:var(--gold-soft);text-transform:none;font-weight:500;text-shadow:0 0 18px var(--glow-pink)}
.lead{color:var(--muted);max-width:60ch}

.duo-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.frame{position:relative}
.frame img{border-radius:14px;filter:saturate(.96) contrast(1.04);box-shadow:0 18px 42px rgba(0,0,0,.28)}
.frame::before{content:"";position:absolute;inset:-16px 16px 16px -16px;border:1px solid var(--line);border-radius:16px;z-index:-1;box-shadow:0 0 26px rgba(255,69,172,.09)}
.duo-grid p{color:var(--muted);margin-bottom:16px}
.duo-grid p strong{color:var(--ink);font-weight:600}
.facts{display:flex;gap:36px;margin-top:30px;flex-wrap:wrap}
.fact b{font-family:var(--serif);font-style:italic;font-size:2rem;color:var(--copper-soft);display:block;line-height:1;text-shadow:0 0 18px var(--glow-orange)}
.fact span{font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}

.fit{background:linear-gradient(180deg,#0b0b10,#13111a 140%);border-top:1px solid rgba(255,94,176,.16);border-bottom:1px solid rgba(255,150,68,.12)}
.fit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.fcard{border:1px solid rgba(255,94,176,.22);border-radius:14px;padding:32px 28px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));transition:.35s;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.fcard:hover{transform:translateY(-4px);border-color:var(--copper-soft);box-shadow:0 16px 32px rgba(255,86,172,.12)}
.fcard h3{font-family:var(--display);font-weight:700;font-size:1.3rem;margin-bottom:10px;color:var(--ink)}
.fcard p{color:var(--muted);font-size:.93rem}

.connect{background:linear-gradient(180deg,#0c0b10,#111118 140%);border-top:1px solid rgba(255,94,176,.15)}
.connect-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:60px;align-items:center}
.poster img{width:100%;height:auto;object-fit:cover}
.contact-stack{display:grid;gap:14px;margin:30px 0 24px}
.contact-row{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 18px;border:1px solid rgba(255,94,176,.22);background:linear-gradient(90deg,rgba(255,47,171,.06),rgba(255,149,39,.04));border-radius:12px;transition:.3s}
.contact-row:hover{transform:translateY(-2px);border-color:var(--copper-soft);box-shadow:0 12px 28px rgba(255,86,172,.1)}
.contact-row strong{font-family:var(--display);font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft)}
.contact-row span{color:var(--ink);text-align:right;word-break:break-word}
.social-icon-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:8px}
.social-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:26px;overflow:hidden;transition:transform .25s ease, box-shadow .25s ease}
.social-icon img{width:84px;height:84px;display:block}
.social-icon:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 10px 30px rgba(255,105,180,.18)}

.cta-band{text-align:center;background:linear-gradient(180deg,#07070a,#120912 160%);border-top:1px solid rgba(255,94,176,.16)}
.cta-band .note{margin-top:26px;color:var(--muted);font-size:.9rem}
.cta-band .note a{color:var(--copper-soft);border-bottom:1px solid rgba(255,166,66,.3)}

footer{border-top:1px solid rgba(255,94,176,.2);padding:48px 0 40px;background:rgba(4,4,5,.8)}
.f-in{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.f-links{display:flex;gap:16px 20px;flex-wrap:wrap;align-items:center}
.f-links a{font-size:.8rem;letter-spacing:.06em;color:var(--muted);transition:.25s}
.f-links a:hover{color:var(--gold-soft)}
.f-copy{font-size:.72rem;color:var(--muted)}

@media(max-width:900px){
  .duo-grid,.connect-grid{grid-template-columns:1fr;gap:44px}
  .fit-grid{grid-template-columns:1fr}
  .contact-row{flex-direction:column;align-items:flex-start}
  .contact-row span{text-align:left}
  section{padding:78px 0}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .rev{opacity:1;transform:none}
  html{scroll-behavior:auto}
}


/* extra TFY neon / festive enhancements */
.hero::before{content:"";position:absolute;inset:-10% auto auto -8%;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(255,45,170,.24),rgba(255,45,170,0) 68%);filter:blur(12px);pointer-events:none;z-index:1}
.hero::after{content:"";position:absolute;right:-90px;bottom:8%;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(255,166,44,.22),rgba(255,166,44,0) 70%);filter:blur(14px);pointer-events:none;z-index:1}
.hero .btn,.cta-band .btn{box-shadow:0 0 0 rgba(0,0,0,0),0 0 26px rgba(255,66,176,.12)}
.frame::after{content:"";position:absolute;left:22px;right:22px;bottom:-14px;height:36px;background:radial-gradient(circle at center,rgba(255,94,176,.22),rgba(255,94,176,0) 70%);filter:blur(10px);z-index:-1}
.fcard,.contact-row,.poster img{position:relative}
.fcard::before,.contact-row::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(130deg,rgba(255,85,184,.34),rgba(255,176,43,.18));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.45}
.fcard:hover,.contact-row:hover{box-shadow:0 18px 40px rgba(255,86,172,.14),0 0 22px rgba(255,166,44,.08)}
.social-icon{position:relative}
.social-icon::after{content:"";position:absolute;inset:auto 10px 8px 10px;height:12px;background:radial-gradient(circle at center,rgba(255,82,179,.3),rgba(255,82,179,0) 75%);filter:blur(8px);pointer-events:none}
.cta-band{position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;left:-120px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,72,175,.17),rgba(255,72,175,0) 72%);filter:blur(8px)}
.cta-band::after{content:"";position:absolute;right:-120px;bottom:-100px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,166,44,.16),rgba(255,166,44,0) 72%);filter:blur(10px)}
footer{box-shadow:inset 0 1px 0 rgba(255,99,176,.08)}


/* Mobile navigation correction: header scrolls away and closed menu is fully hidden */
@media (max-width:900px){
  nav{position:absolute!important;top:0!important}
  body.admin-bar nav{top:0!important}
  .nav-links{
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:translateY(-110%)!important;
    transition:transform .36s ease,opacity .22s ease,visibility 0s linear .36s!important;
    overflow-y:auto;
    overscroll-behavior:contain;
    max-height:100dvh;
  }
  .nav-links.open{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
    transition:transform .36s ease,opacity .22s ease,visibility 0s!important;
  }
  body.mobile-menu-open{overflow:hidden}
}

/* v2 booking form */
.booking-section{background:linear-gradient(180deg,#09070b,#15101a 150%);border-top:1px solid rgba(255,94,176,.18);border-bottom:1px solid rgba(255,166,44,.12)}
.booking-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:54px;align-items:start}
.booking-intro{position:sticky;top:40px}
.booking-intro .lead{margin-top:18px}
.booking-tfy-panel{border:1px solid rgba(255,94,176,.26);border-radius:16px;background:linear-gradient(145deg,rgba(255,39,170,.055),rgba(255,156,39,.035));padding:32px;box-shadow:0 24px 70px rgba(0,0,0,.3),0 0 28px rgba(255,74,176,.08)}
.booking-tfy-panel .rw-form-grid input:focus,.booking-tfy-panel .rw-form-grid select:focus,.booking-tfy-panel .rw-form-grid textarea:focus{border-color:var(--copper-soft);box-shadow:0 0 0 3px rgba(255,90,47,.1)}
@media(max-width:900px){.booking-wrap{grid-template-columns:1fr;gap:32px}.booking-intro{position:static}.booking-tfy-panel{padding:24px 18px}}

/* --------------------------------------------------------------------------
   Two for You mini-site v3
   This block is intentionally self-contained for future extraction.
---------------------------------------------------------------------------- */
.tfy-nav{position:fixed;top:0;left:0;right:0;z-index:100;background:linear-gradient(180deg,rgba(5,5,7,.92),rgba(5,5,7,.58),transparent);border-bottom:1px solid transparent}
.tfy-nav.scrolled{background:rgba(5,5,7,.92);backdrop-filter:blur(18px);border-bottom-color:rgba(255,82,177,.22)}
.tfy-nav-in{max-width:1460px;padding:14px 28px;gap:28px}
.tfy-nav-logo{display:block;flex:0 0 auto;width:148px}
.tfy-nav-logo img{width:100%;height:54px;object-fit:contain;object-position:left center}
.tfy-nav-links{display:flex;align-items:center;justify-content:center;gap:clamp(13px,1.5vw,26px);margin-left:auto}
.tfy-nav-links a{position:relative;font-size:.67rem;line-height:1;letter-spacing:.16em;text-transform:uppercase;color:#d8c4d2;font-weight:700;padding:14px 0;white-space:nowrap;transition:color .25s}
.tfy-nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:7px;height:2px;background:linear-gradient(90deg,#ff37ad,#ffad2c);transition:right .3s}
.tfy-nav-links a:hover,.tfy-nav-links a.active{color:#fff}
.tfy-nav-links a:hover::after,.tfy-nav-links a.active::after{right:0}
.tfy-nav-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.tfy-rick-link{font-size:.65rem;letter-spacing:.13em;text-transform:uppercase;color:#c1acb9;border-left:1px solid rgba(255,255,255,.13);padding-left:18px;transition:color .25s}
.tfy-rick-link:hover{color:#ffb12b}
.burger{display:none;width:42px;height:42px;border:1px solid rgba(255,124,191,.25);border-radius:50%;background:rgba(255,255,255,.02);padding:11px;cursor:pointer}
.burger span{display:block;height:2px;background:#fff;margin:4px 0;transition:.25s}
.burger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.tfy-home-hero .hero-bg img{object-position:center 32%}
.tfy-hero-tagline{font-family:var(--display);font-size:clamp(1.1rem,2.3vw,1.65rem);line-height:1.25;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#fff;margin-top:20px;text-shadow:0 0 24px rgba(255,52,170,.25)}
.tfy-proof-strip{padding:0;background:#08080c;border-top:1px solid rgba(255,88,177,.2);border-bottom:1px solid rgba(255,155,55,.12)}
.tfy-proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.tfy-proof-grid>div{padding:28px 18px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.tfy-proof-grid>div:last-child{border-right:0}
.tfy-proof-grid b{display:block;font-family:var(--display);font-size:2rem;line-height:1;color:#ffb12b;text-shadow:0 0 18px rgba(255,145,32,.2)}
.tfy-proof-grid span{display:block;margin-top:8px;font-size:.64rem;letter-spacing:.17em;text-transform:uppercase;color:#c9b5c2}
.tfy-intro-section{background:radial-gradient(circle at 15% 45%,rgba(255,41,168,.08),transparent 28%),#07070a}
.more-link{display:inline-flex;align-items:center;margin-top:18px;color:#ffb12b;font-size:.73rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;transition:transform .25s,color .25s}
.more-link:hover{color:#ffd078;transform:translateX(4px)}
.tfy-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:42px}
.tfy-service-card{position:relative;min-height:245px;padding:30px 25px;border:1px solid rgba(255,82,177,.22);border-radius:16px;background:linear-gradient(155deg,rgba(255,55,173,.06),rgba(255,161,42,.025));overflow:hidden;transition:.35s}
.tfy-service-card::after{content:"";position:absolute;width:130px;height:130px;right:-60px;bottom:-65px;border-radius:50%;background:radial-gradient(circle,rgba(255,149,42,.16),transparent 70%)}
.tfy-service-card:hover{transform:translateY(-6px);border-color:rgba(255,174,51,.55);box-shadow:0 22px 45px rgba(0,0,0,.28),0 0 28px rgba(255,75,175,.08)}
.tfy-service-card>span{font-family:var(--serif);font-style:italic;font-size:1.15rem;color:#ff82d8}
.tfy-service-card h3{font-family:var(--display);font-size:1.22rem;line-height:1.2;margin:26px 0 12px}
.tfy-service-card p{font-family:var(--serif);font-size:.9rem;color:#cdb9c6}
.tfy-split{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}
.tfy-included{background:linear-gradient(180deg,#0b0a0f,#111019);border-top:1px solid rgba(255,79,181,.14);border-bottom:1px solid rgba(255,166,45,.1)}
.tfy-check-list{display:grid;gap:12px}
.tfy-check-list>div{display:grid;grid-template-columns:44px 1fr;gap:15px;align-items:center;padding:17px 19px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.018)}
.tfy-check-list b{font-family:var(--display);font-size:.87rem;color:#ffb12b;text-align:center}
.tfy-check-list span{font-size:.9rem;color:#e3d3dd}
.tfy-preview-section{background:#060608}
.tfy-section-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:38px}
.tfy-section-head h2{margin-bottom:0}
.tfy-section-head .lead{max-width:38ch;text-align:right}
.tfy-home-gallery{display:grid;grid-template-columns:1.25fr .85fr .85fr;gap:16px}
.tfy-home-gallery a{display:block;overflow:hidden;border-radius:14px;min-height:360px;border:1px solid rgba(255,82,177,.16)}
.tfy-home-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .55s,filter .55s;filter:saturate(.88) contrast(1.04)}
.tfy-home-gallery a:hover img{transform:scale(1.045);filter:saturate(1.05)}
.tfy-repertoire-preview{background:radial-gradient(circle at 75% 50%,rgba(255,151,38,.08),transparent 34%),#0a090d}
.tfy-genre-cloud,.tfy-name-wall{display:flex;gap:11px;flex-wrap:wrap;align-content:center}
.tfy-genre-cloud span,.tfy-name-wall span{display:inline-flex;border:1px solid rgba(255,82,177,.22);border-radius:999px;padding:12px 17px;font-size:.67rem;letter-spacing:.16em;color:#f6dce9;background:rgba(255,255,255,.018);transition:.25s}
.tfy-genre-cloud span:nth-child(even),.tfy-name-wall span:nth-child(even){border-color:rgba(255,175,47,.27)}
.tfy-genre-cloud span:hover,.tfy-name-wall span:hover{transform:translateY(-3px);box-shadow:0 0 22px rgba(255,68,173,.1)}
.tfy-events-preview{background:#07070a}
.tfy-event-list{display:grid;gap:13px}
.tfy-event-card{display:grid;grid-template-columns:92px 1fr auto;align-items:center;gap:22px;padding:18px 22px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:linear-gradient(90deg,rgba(255,48,169,.035),rgba(255,148,37,.02));transition:.3s}
.tfy-event-card:hover{border-color:rgba(255,92,182,.34);transform:translateY(-2px)}
.tfy-event-date{text-align:center;border-right:1px solid rgba(255,255,255,.09);padding-right:20px}
.tfy-event-date b{display:block;font-family:var(--display);font-size:2rem;line-height:1;color:#ffb12b}
.tfy-event-date span{font-size:.64rem;letter-spacing:.15em;text-transform:uppercase;color:#d9bfd0}
.tfy-event-type{font-family:var(--body);font-size:.59rem;letter-spacing:.17em;text-transform:uppercase;color:#ff80d7}
.tfy-event-main h3{font-family:var(--display);font-size:1.15rem;margin:3px 0}
.tfy-event-main>p:last-child{font-family:var(--serif);color:#c8b5c1;font-size:.87rem}
.tfy-status{display:inline-block;max-width:180px;text-align:right;font-size:.66rem;letter-spacing:.11em;text-transform:uppercase;color:#d6c0cd}
.btn-small{padding:11px 18px;font-size:.64rem}
.tfy-empty{padding:46px;border:1px dashed rgba(255,100,183,.3);border-radius:16px;text-align:center;background:rgba(255,255,255,.015)}
.tfy-empty h3{font-family:var(--display);font-size:1.35rem;margin-bottom:10px}
.tfy-empty p{color:#c9b5c2}
.tfy-final-cta{overflow:hidden;text-align:center;background:radial-gradient(circle at center,rgba(255,42,170,.12),transparent 40%),linear-gradient(180deg,#0a080c,#130912)}
.tfy-final-cta .wrap{display:flex;flex-direction:column;align-items:center}
.tfy-final-cta img{width:min(310px,70vw);max-height:160px;object-fit:contain;margin-bottom:20px}
.tfy-final-cta .lead{margin:0 auto 26px}

.tfy-subhero{position:relative;min-height:64svh;display:flex;align-items:flex-end;overflow:hidden;padding-top:100px}
.tfy-subhero-bg{position:absolute;inset:0}
.tfy-subhero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:saturate(.86) contrast(1.08) brightness(.54)}
.tfy-subhero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,4,6,.62),rgba(4,4,6,.26) 35%,rgba(5,5,7,.92) 94%),radial-gradient(circle at 22% 30%,rgba(255,42,170,.18),transparent 31%),radial-gradient(circle at 82% 40%,rgba(255,161,37,.15),transparent 30%)}
.tfy-subhero-content{position:relative;z-index:2;width:100%;padding-top:150px;padding-bottom:70px}
.tfy-subhero-content h1{max-width:16ch;font-size:clamp(2.6rem,6.6vw,5.3rem)}
.tfy-subhero-content>p{max-width:62ch;margin-top:22px;color:#d4c0cd;font-size:1.03rem}
.tfy-subhero-photos .tfy-subhero-bg img{object-position:center 42%}
.tfy-subhero-agenda .tfy-subhero-bg img{object-position:center 60%}
.tfy-subhero-book .tfy-subhero-bg img{object-position:center 20%}

.tfy-member-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
.tfy-member-card{border:1px solid rgba(255,92,182,.2);border-radius:18px;background:rgba(255,255,255,.018);padding:20px 20px 30px}
.tfy-member-image{height:430px;border-radius:12px;overflow:hidden;margin-bottom:26px}
.tfy-member-image img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.tfy-member-card:nth-child(2) .tfy-member-image img{object-position:center}
.tfy-member-card h2{margin:7px 0 13px}
.tfy-member-card p{color:#cbb7c4}

.tfy-genre-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}
.tfy-genre-grid article{padding:30px 26px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(255,255,255,.016);transition:.3s}
.tfy-genre-grid article:hover{border-color:rgba(255,92,182,.36);transform:translateY(-4px)}
.tfy-genre-grid span{font-family:var(--serif);font-style:italic;color:#ff84d9}
.tfy-genre-grid h3{font-family:var(--display);font-size:1.22rem;margin:24px 0 9px}
.tfy-genre-grid p{color:#c9b7c2;font-size:.9rem}
.tfy-program-flow{background:#07070a}
.tfy-flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.tfy-flow-grid article{position:relative;padding:29px 24px;border-top:2px solid rgba(255,79,181,.48);background:linear-gradient(180deg,rgba(255,255,255,.025),transparent);min-height:220px}
.tfy-flow-grid article:nth-child(even){border-top-color:rgba(255,171,43,.52)}
.tfy-flow-grid b{font-family:var(--serif);font-style:italic;color:#ff86dc;font-size:1.1rem}
.tfy-flow-grid h3{font-family:var(--display);font-size:1.08rem;margin:28px 0 10px}
.tfy-flow-grid p{color:#c9b7c2;font-size:.88rem}

.tfy-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:270px;gap:15px}
.tfy-photo-item{appearance:none;border:1px solid rgba(255,82,177,.17);padding:0;background:#0a090d;border-radius:14px;overflow:hidden;cursor:zoom-in}
.tfy-photo-item.is-wide{grid-column:span 2}
.tfy-photo-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .5s;filter:saturate(.86) contrast(1.03)}
.tfy-photo-item:hover img{transform:scale(1.045);filter:saturate(1.05)}
.tfy-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(2,2,3,.94);display:grid;place-items:center;padding:28px;cursor:zoom-out}
.tfy-lightbox img{max-width:min(1200px,94vw);max-height:88vh;border-radius:10px;box-shadow:0 30px 80px rgba(0,0,0,.65)}
.tfy-lightbox button{position:absolute;top:20px;right:25px;width:48px;height:48px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(0,0,0,.45);color:#fff;font-size:2rem;line-height:1;cursor:pointer}
.tfy-album-list{display:grid;gap:10px}
.tfy-album-list a{display:flex;justify-content:space-between;align-items:center;padding:19px 20px;border:1px solid rgba(255,255,255,.09);border-radius:11px;color:#e8d8e2;transition:.3s}
.tfy-album-list a:hover{border-color:rgba(255,91,182,.4);padding-left:27px;color:#fff}
.tfy-album-list b{color:#ffb12b}

.tfy-video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.tfy-video-card{border:1px solid rgba(255,82,177,.2);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.018)}
.tfy-video-frame{position:relative;padding-top:56.25%;background:#000}
.tfy-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.tfy-video-link{position:relative;display:block;aspect-ratio:16/9;overflow:hidden}
.tfy-video-link img{width:100%;height:100%;object-fit:cover;filter:brightness(.68);transition:.5s}
.tfy-video-link span,.tfy-video-placeholder-image span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ff43b4,#ffad2b);color:#16070e;font-size:1.4rem;box-shadow:0 0 34px rgba(255,74,176,.34)}
.tfy-video-link:hover img{transform:scale(1.04);filter:brightness(.82)}
.tfy-video-copy{padding:22px 24px}
.tfy-video-copy h3{font-family:var(--display);font-size:1.18rem;margin-top:5px}
.tfy-video-placeholder{display:grid;grid-template-columns:1.2fr .8fr;gap:45px;align-items:center;padding:25px;border:1px solid rgba(255,82,177,.2);border-radius:18px;background:rgba(255,255,255,.016)}
.tfy-video-placeholder-image{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:12px}
.tfy-video-placeholder-image img{width:100%;height:100%;object-fit:cover;filter:brightness(.65)}

.tfy-contact-card{display:grid;gap:10px;margin-top:28px}
.tfy-contact-card a{display:block;padding:17px 18px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.018)}
.tfy-contact-card small{display:block;color:#bda8b5;font-size:.61rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.tfy-contact-card strong{font-family:var(--display);color:#ffb12b;font-size:1rem}
.tfy-faq{background:#07070a}
.tfy-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:38px}
.tfy-faq details{border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.016);padding:0 20px}
.tfy-faq summary{cursor:pointer;list-style:none;padding:19px 28px 19px 0;font-family:var(--display);font-size:.94rem;position:relative}
.tfy-faq summary::-webkit-details-marker{display:none}
.tfy-faq summary::after{content:"+";position:absolute;right:0;top:14px;color:#ff8add;font-size:1.5rem;font-weight:400}
.tfy-faq details[open] summary::after{content:"–"}
.tfy-faq details p{padding:0 0 19px;color:#c9b6c2;font-size:.88rem}

.tfy-footer{padding:62px 0 30px;background:#040405;border-top:1px solid rgba(255,82,177,.18)}
.tfy-footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:55px}
.tfy-footer-logo{display:block;width:230px;max-width:100%}
.tfy-footer-logo img{width:100%;height:105px;object-fit:contain;object-position:left center}
.tfy-footer-tagline{margin-top:10px;color:#cdb8c5;font-size:.9rem}
.tfy-footer h3{font-family:var(--display);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#ff8add;margin-bottom:17px}
.tfy-footer-nav,.tfy-footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.tfy-footer-nav a,.tfy-footer-contact>a:not(.btn){color:#d5c3ce;font-size:.83rem;transition:.25s}
.tfy-footer-nav a:hover,.tfy-footer-contact>a:not(.btn):hover{color:#ffb12b}
.tfy-footer-bottom{margin-top:46px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:22px;color:#9d8996;font-size:.7rem}
.tfy-footer-socials{display:flex;flex-wrap:wrap;gap:15px}
.tfy-footer-socials a:hover{color:#fff}

@media(max-width:1100px){
  .tfy-nav-links{gap:12px}.tfy-nav-links a{font-size:.61rem;letter-spacing:.11em}.tfy-rick-link{display:none}
  .tfy-card-grid{grid-template-columns:repeat(2,1fr)}
  .tfy-flow-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .tfy-nav{position:absolute!important;top:0!important}
  body.admin-bar .tfy-nav{top:0!important}
  .tfy-nav-in{padding:12px 18px}
  .tfy-nav-logo{width:118px;z-index:102}
  .tfy-nav-logo img{height:46px}
  .tfy-nav-actions{margin-left:auto;z-index:102}
  .burger{display:block}
  .tfy-nav-links{position:fixed;inset:0;z-index:101;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px;margin:0;padding:92px 24px 40px;background:radial-gradient(circle at 25% 20%,rgba(255,43,170,.14),transparent 35%),rgba(5,5,7,.985);visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-100%);transition:transform .36s,opacity .22s,visibility 0s linear .36s}
  .tfy-nav-links.open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);transition:transform .36s,opacity .22s,visibility 0s}
  .tfy-nav-links a{font-size:1rem;letter-spacing:.18em;padding:10px}
  .tfy-nav-links a::after{bottom:2px}
  .tfy-proof-grid{grid-template-columns:repeat(2,1fr)}
  .tfy-proof-grid>div:nth-child(2){border-right:0}.tfy-proof-grid>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.08)}
  .tfy-split,.tfy-video-placeholder{grid-template-columns:1fr;gap:36px}
  .tfy-home-gallery{grid-template-columns:1fr 1fr}.tfy-home-gallery a:first-child{grid-column:1/-1}.tfy-home-gallery a{min-height:280px}
  .tfy-section-head{align-items:flex-start;flex-direction:column}.tfy-section-head .lead{text-align:left}
  .tfy-member-grid,.tfy-video-grid,.tfy-faq-grid{grid-template-columns:1fr}
  .tfy-member-image{height:380px}
  .tfy-genre-grid{grid-template-columns:repeat(2,1fr)}
  .tfy-photo-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px}.tfy-photo-item.is-wide{grid-column:span 2}
  .tfy-footer-grid{grid-template-columns:1.2fr .8fr}.tfy-footer-contact{grid-column:1/-1}.tfy-footer-bottom{flex-direction:column}
  .tfy-subhero{padding-top:76px;min-height:58svh}.tfy-subhero-content{padding-top:120px;padding-bottom:55px}
}
@media(max-width:640px){
  .wrap{padding-left:20px;padding-right:20px}
  .tfy-nav-actions{gap:7px}.tfy-nav .lang-btn{padding:7px 10px}.tfy-nav .lang-btn span:last-child{display:none}
  .tfy-home-hero{min-height:93svh}.tfy-home-hero .hero-in{padding-top:130px;padding-bottom:62px}.tfy-home-hero h1{font-size:clamp(2.8rem,16vw,4.4rem)}
  .tfy-hero-tagline{font-size:.98rem;letter-spacing:.07em}
  .tfy-card-grid,.tfy-genre-grid,.tfy-flow-grid{grid-template-columns:1fr}
  .tfy-service-card{min-height:auto}
  .tfy-event-card{grid-template-columns:66px 1fr;gap:15px;padding:16px}.tfy-event-date{padding-right:13px}.tfy-event-action{grid-column:2}.tfy-event-main h3{font-size:1rem}.tfy-event-main>p:last-child{font-size:.8rem}
  .tfy-home-gallery{grid-template-columns:1fr}.tfy-home-gallery a:first-child{grid-column:auto}.tfy-home-gallery a{min-height:240px}
  .tfy-photo-grid{grid-template-columns:1fr;grid-auto-rows:250px}.tfy-photo-item.is-wide{grid-column:auto}
  .tfy-subhero-content h1{font-size:clamp(2.35rem,12vw,3.65rem)}
  .tfy-member-image{height:320px}
  .tfy-footer-grid{grid-template-columns:1fr;gap:34px}.tfy-footer-contact{grid-column:auto}
  .tfy-final-cta .hero-cta{justify-content:center}
}

/* v3.1 richer image-led Two for You presentation */
.tfy-home-hero .hero-bg img{object-position:center 45%;filter:saturate(1.02) contrast(1.05) brightness(.76)}
.tfy-home-hero .hero-veil{background:linear-gradient(90deg,rgba(4,4,6,.82) 0,rgba(4,4,6,.64) 35%,rgba(4,4,6,.18) 68%,rgba(4,4,6,.36) 100%),linear-gradient(180deg,rgba(4,4,6,.12),rgba(4,4,6,.18) 45%,#050507 100%)}
.tfy-subhero .tfy-subhero-bg img{filter:saturate(1) contrast(1.06) brightness(.62)}
.tfy-subhero-repertoire .tfy-subhero-bg img,.tfy-subhero-photos .tfy-subhero-bg img,.tfy-subhero-agenda .tfy-subhero-bg img{object-position:center 50%}
.tfy-subhero-book .tfy-subhero-bg img{object-position:center 46%}

.tfy-performance-showcase{background:linear-gradient(180deg,#07070a,#110711 120%);border-top:1px solid rgba(255,93,180,.13);border-bottom:1px solid rgba(255,161,40,.11);overflow:hidden}
.tfy-showcase-grid{display:grid;grid-template-columns:1.35fr .75fr .75fr;gap:16px;margin-top:44px}
.tfy-showcase-card{position:relative;min-height:430px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,93,180,.2);background:#0a090d;box-shadow:0 22px 52px rgba(0,0,0,.32)}
.tfy-showcase-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .65s ease;filter:saturate(.96) contrast(1.04)}
.tfy-showcase-card:not(.is-wide) img{object-position:center 22%}
.tfy-showcase-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(5,5,7,.88) 100%);pointer-events:none}
.tfy-showcase-card:hover img{transform:scale(1.035);filter:saturate(1.08) contrast(1.06)}
.tfy-showcase-card figcaption{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;display:flex;flex-direction:column;gap:4px}
.tfy-showcase-card figcaption span{font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:#ff8add;font-weight:700}
.tfy-showcase-card figcaption b{font-family:var(--display);font-size:1.08rem;color:#fff}

.tfy-rider-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.tfy-tech-rider{background:radial-gradient(circle at 20% 35%,rgba(255,42,170,.09),transparent 30%),#09090d;border-top:1px solid rgba(255,95,178,.14);border-bottom:1px solid rgba(255,159,35,.12)}
.tfy-rider-preview{display:block;border-radius:18px;overflow:hidden;border:1px solid rgba(255,103,186,.24);box-shadow:0 24px 58px rgba(0,0,0,.38);transition:transform .35s ease,border-color .35s ease}
.tfy-rider-preview:hover{transform:translateY(-4px);border-color:#ffae30}
.tfy-rider-preview img{width:100%;height:auto;display:block}

.tfy-home-gallery a{background:#0a090d}
.tfy-home-gallery img{filter:saturate(1) contrast(1.04)}
.tfy-photo-item img{filter:saturate(.98) contrast(1.04)}
.tfy-member-image img{filter:saturate(1.02) contrast(1.05)}

@media(max-width:980px){
  .tfy-showcase-grid{grid-template-columns:1fr 1fr}
  .tfy-showcase-card.is-wide{grid-column:1/-1}
  .tfy-rider-grid{grid-template-columns:1fr;gap:34px}
}
@media(max-width:640px){
  .tfy-home-hero .hero-bg img{object-position:62% 50%}
  .tfy-home-hero .hero-veil{background:linear-gradient(180deg,rgba(4,4,6,.38),rgba(4,4,6,.5) 42%,#050507 96%)}
  .tfy-showcase-grid{grid-template-columns:1fr}
  .tfy-showcase-card,.tfy-showcase-card.is-wide{grid-column:auto;min-height:360px}
  .tfy-showcase-card.is-wide{min-height:250px}
  .tfy-showcase-card:not(.is-wide) img{object-position:center 18%}
}

.tfy-info-board-section .tfy-rider-copy .lead{max-width:56ch}
.tfy-info-board-section .tfy-rider-preview{background:#08080b}

/* Two for You YouTube video upgrade */
.tfy-video-card.is-featured{grid-column:1/-1}
.tfy-video-card.is-featured .tfy-video-copy{padding:26px 28px}
.tfy-video-card.is-featured .tfy-video-copy h3{font-size:1.5rem}
.tfy-youtube-cta{margin-top:42px;padding:30px 32px;border:1px solid rgba(255,82,177,.22);border-radius:18px;background:linear-gradient(120deg,rgba(255,55,175,.08),rgba(255,165,43,.05));display:flex;align-items:center;justify-content:space-between;gap:28px}
.tfy-youtube-cta h2{margin-bottom:10px}
.tfy-youtube-cta .lead{max-width:60ch}
@media(max-width:900px){.tfy-youtube-cta{align-items:flex-start;flex-direction:column}.tfy-video-card.is-featured{grid-column:auto}}

/* v4 TFY homepage conversion order */
.tfy-home-video{background:#09090d;border-top:1px solid rgba(255,95,178,.14);border-bottom:1px solid rgba(255,159,35,.12)}
.tfy-video-spotlight{display:grid;grid-template-columns:.82fr 1.18fr;gap:54px;align-items:center}
.tfy-video-spotlight .tfy-video-frame{aspect-ratio:16/9;border-radius:16px;overflow:hidden;border:1px solid rgba(255,103,186,.26);box-shadow:0 24px 70px rgba(0,0,0,.48)}
.tfy-video-spotlight iframe{width:100%;height:100%;border:0;display:block}
.tfy-tech-teaser{padding:72px 0;background:linear-gradient(90deg,rgba(255,43,169,.08),rgba(255,158,35,.06)),#0b0a0e;border-top:1px solid rgba(255,95,178,.14);border-bottom:1px solid rgba(255,159,35,.12)}
.tfy-tech-teaser-in{display:flex;align-items:center;justify-content:space-between;gap:42px}
.tfy-tech-teaser-in>div{max-width:720px}.tfy-tech-teaser h2{margin-bottom:12px}
.tfy-testimonials{background:linear-gradient(180deg,#0c0b10,#08080b);border-top:1px solid rgba(255,95,178,.14)}
@media(max-width:900px){.tfy-video-spotlight{grid-template-columns:1fr;gap:34px}.tfy-tech-teaser-in{align-items:flex-start;flex-direction:column}}
