
:root{
  --black:#030204;
  --ink:#09050c;
  --purple:#4d0b67;
  --purple2:#7d1594;
  --magenta:#c72d9e;
  --pink:#eb57bc;
  --gold:#d8ae57;
  --softgold:#f0ce82;
  --white:#ffffff;
  --muted:#cbbdce;
  --line:#5b1e63;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;background:#030204;color:#fff;line-height:1.55}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.wrap{width:min(1190px,95%);margin:auto}
header{background:#020103;border-bottom:1px solid #25112d;position:sticky;top:0;z-index:50}
.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.logo{position:relative;font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive;font-size:58px;line-height:.72;letter-spacing:-3px;background:linear-gradient(90deg,#f05bc0 0%,#f7a8e2 28%,#d7a940 61%,#fff2b0 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.logo::before{content:"✦";position:absolute;left:46%;top:-17px;font-family:Georgia,serif;font-size:18px;color:#fff2a0;text-shadow:0 0 14px #ffe58b}
.logo::after{content:"✦";position:absolute;right:-8px;bottom:2px;font-family:Georgia,serif;font-size:14px;color:#ffd56b;text-shadow:0 0 12px #ffd56b}
.logo small{display:block;margin:11px 0 0 18px;font-family:Arial,sans-serif;font-size:8px;text-transform:uppercase;letter-spacing:3.5px;color:#ddd;-webkit-text-fill-color:#ddd}
nav{display:flex;gap:20px;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.9px;font-weight:800}
nav a:hover{color:var(--pink)}
.button{display:inline-block;background:linear-gradient(180deg,#b12691,#6c106c);border:1px solid #df54c0;color:#fff;padding:13px 22px;border-radius:4px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px}
.button.secondary{background:#070409;border-color:var(--gold)}
.button:hover{filter:brightness(1.14)}
.hero{position:relative;overflow:hidden;background:
radial-gradient(circle at 18% 33%,rgba(111,27,147,.28),transparent 30%),
radial-gradient(circle at 78% 22%,rgba(209,42,164,.15),transparent 25%),
linear-gradient(135deg,#020103 0%,#08030d 52%,#110516 100%);
padding:24px 0 0;border-bottom:1px solid #36143d}
.hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(213,72,194,.23) 1px,transparent 1px);background-size:65px 65px;opacity:.13}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.95fr 1.02fr .82fr;gap:18px;align-items:end;min-height:570px}
.portrait{align-self:end;padding-top:14px}
.portrait-frame{position:relative;max-width:390px;margin:0 auto}
.portrait-frame::before{content:"";position:absolute;inset:20px -13px -13px 18px;border:1px solid #642868;background:linear-gradient(135deg,rgba(108,22,131,.22),rgba(6,3,9,.25));z-index:-1}
.portrait-frame img{width:100%;height:505px;object-fit:cover;object-position:center top;border-radius:4px;filter:saturate(1.02) contrast(1.02)}
.message{text-align:center;align-self:center;padding-bottom:52px}
.overline{font-size:14px;letter-spacing:5px;text-transform:uppercase;margin-bottom:2px}
.script{font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive;font-weight:400;font-size:clamp(68px,8vw,112px);line-height:.74;color:#fff;letter-spacing:-3px}
.script.pink{color:var(--pink);text-shadow:0 0 20px rgba(235,87,188,.18)}
.gold-stroke{width:225px;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:18px auto}
.message-copy{max-width:390px;margin:auto;font-size:13px;letter-spacing:1.4px;text-transform:uppercase;color:#f0ebf1}
.message-copy b{color:var(--pink)}
.music-notes{position:relative;height:95px;margin-top:14px;color:#8e259d;font-family:Georgia,serif;font-size:38px}
.music-notes span{position:absolute;opacity:.85}
.music-notes span:nth-child(1){left:5%;bottom:5px}.music-notes span:nth-child(2){left:27%;bottom:32px}.music-notes span:nth-child(3){left:49%;bottom:4px}.music-notes span:nth-child(4){left:70%;bottom:36px}.music-notes span:nth-child(5){right:0;bottom:4px}
.microphone{align-self:stretch;min-height:545px;display:flex;align-items:flex-end;overflow:hidden;border-left:1px solid rgba(205,53,175,.2)}
.microphone img{width:100%;height:545px;object-fit:cover;object-position:center;filter:contrast(1.08) saturate(1.13)}
.event-section{background:#030204;padding:0 0 20px}
.event-card{position:relative;margin-top:-2px;border:1px solid #e051c4;border-radius:18px;padding:24px 34px 27px;background:
radial-gradient(circle at 89% 20%,rgba(225,68,180,.18),transparent 22%),
linear-gradient(135deg,#100713,#070409 62%,#15081a);box-shadow:inset 0 0 44px rgba(105,17,122,.13)}
.event-ribbon{display:inline-block;background:linear-gradient(90deg,#701065,#b32290,#701065);padding:6px 31px;font-size:13px;text-transform:uppercase;letter-spacing:1px;font-weight:800}
.event-title{font-family:Georgia,serif;font-size:clamp(40px,5vw,60px);line-height:.95;text-transform:uppercase;margin-top:12px}
.event-script{font-family:"Brush Script MT","Segoe Script",cursive;color:var(--gold);font-size:clamp(46px,5.5vw,73px);line-height:.82;margin:8px 0 23px}
.event-info{display:flex;flex-wrap:wrap;gap:18px;max-width:78%;margin-bottom:20px}
.info-item{padding-right:22px;border-right:1px solid #553052;font-size:11px;text-transform:uppercase;color:#ccbccc;letter-spacing:.8px}
.info-item:last-child{border-right:0}
.info-item strong{display:block;color:#fff;font-size:16px;margin-top:2px}
.price-badge{position:absolute;right:34px;top:82px;width:150px;height:150px;border-radius:50%;border:2px solid var(--gold);background:#070409;display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:0 0 26px rgba(216,174,87,.18)}
.price-badge strong{font-family:Georgia,serif;font-size:48px;color:var(--pink)}
.price-badge span{font-size:10px;text-transform:uppercase;letter-spacing:1px}
.coaching{padding:23px 0 38px}
.coaching-head{text-align:center;margin-bottom:24px}
.coaching-head h2{font-family:Georgia,serif;font-size:36px;font-weight:400;letter-spacing:1px}
.coaching-head div{font-family:"Brush Script MT","Segoe Script",cursive;color:var(--pink);font-size:31px}
.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.package{position:relative;border:1px solid #805d32;background:linear-gradient(180deg,#0c0710,#050306);padding:23px 25px 24px;min-height:360px;display:flex;flex-direction:column}
.package.featured{border:2px solid #e55aca;box-shadow:0 0 24px rgba(229,90,202,.17)}
.popular{position:absolute;left:50%;top:-17px;transform:translateX(-50%);background:var(--gold);color:#190c0e;font-weight:900;font-size:10px;text-transform:uppercase;padding:4px 29px}
.package h3{text-align:center;color:#df5abb;text-transform:uppercase;font-size:18px}
.package .price{text-align:center;font-family:Georgia,serif;font-size:48px;margin:2px 0}
.package .sessions{text-align:center;color:var(--gold);font-size:11px;text-transform:uppercase;margin-bottom:12px}
.package ul{list-style:none;color:#eee;font-size:13px;margin-bottom:20px}
.package li{margin:8px 0}.package li::before{content:"✓";color:#db3db6;font-weight:900;margin-right:9px}
.package .button{margin-top:auto;text-align:center}
.quicklinks{border-top:1px solid #2e1036;padding:20px 0 26px}
.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.quick{border:1px solid #55215d;background:linear-gradient(180deg,#100713,#08040b);padding:22px;text-align:center;min-height:180px}
.quick .icon{font-size:31px;color:#a833b3;margin-bottom:8px}
.quick h3{font-size:16px;text-transform:uppercase;margin-bottom:6px}.quick p{font-size:12px;color:var(--muted);margin-bottom:13px}
footer{padding:26px 0 34px;border-top:1px solid #2d1035;text-align:center}
.legacy{font-family:"Brush Script MT","Segoe Script",cursive;color:#d450b3;font-size:31px}
.page-hero{padding:68px 0;background:linear-gradient(135deg,#050307,#1b0721);border-bottom:1px solid #401447}
.page-hero h1{font-family:Georgia,serif;font-size:52px}.page-hero p{color:var(--muted);max-width:760px;margin-top:12px}
.page-section{padding:58px 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{border:1px solid #49204f;background:#09050c}.card-image{height:300px;background:#120817;padding:12px}.card-image img{width:100%;height:100%;object-fit:contain}
.card-body{padding:20px}.card-body h3{font-family:Georgia,serif;font-size:24px}.card-body .price{font-family:Georgia,serif;color:var(--pink);font-size:32px;margin:7px 0}.card-body p{color:var(--muted);font-size:13px}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.service{border:1px solid #502150;background:#0b0610;padding:25px}.service h3{font-family:Georgia,serif;color:#e855bd;font-size:27px}.service p{color:var(--muted)}
.form-wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px}
form{background:#0b0610;border:1px solid #56235c;padding:28px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field.full{grid-column:1/-1}.field{margin-bottom:12px}
label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#d9a1d5;margin-bottom:5px}input,select,textarea{width:100%;padding:12px;background:#120817;color:#fff;border:1px solid #5a2d60}textarea{min-height:140px}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;color:#ddd;font-size:12px}
@media(max-width:960px){
 nav{display:none}.hero-grid{grid-template-columns:1fr 1fr}.message{grid-column:1/-1;grid-row:1;padding:20px 0}.portrait{grid-column:1}.microphone{grid-column:2;min-height:420px}.microphone img{height:420px}.event-info{max-width:100%}.price-badge{position:static;margin:16px 0}.package-grid,.cards{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.form-wrap{grid-template-columns:1fr}
}
@media(max-width:580px){
 .logo{font-size:43px}.hero-grid{display:block}.portrait-frame img{height:auto;max-height:420px;object-fit:contain}.microphone{min-height:310px;margin-top:12px}.microphone img{height:310px}.script{font-size:64px}.event-card{padding:22px 18px}.quick-grid,.service-grid,.field-grid,.checks{grid-template-columns:1fr}
}


/* ===== CUSTOM LOGO + ART-DIRECTED HERO REFINEMENT ===== */
.logo{display:none!important}
.logo-graphic{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:300px;max-width:33vw}
.logo-graphic img{width:100%;height:auto;filter:drop-shadow(0 0 8px rgba(247,208,104,.16))}
.logo-graphic span{font-size:8px;letter-spacing:2.7px;text-transform:uppercase;color:#d7c9da;margin-left:22px;margin-top:-10px}
.hero-art-directed{padding:0!important;min-height:610px!important;position:relative;overflow:hidden;background:
radial-gradient(circle at 12% 34%,rgba(109,22,143,.38),transparent 29%),
radial-gradient(circle at 82% 22%,rgba(220,49,165,.18),transparent 24%),
linear-gradient(135deg,#020103 0%,#09030f 47%,#120418 100%)!important}
.hero-art-directed:before{content:"";position:absolute;inset:0;background:
radial-gradient(circle at 12% 16%,rgba(255,255,255,.22) 0 2px,transparent 3px),
radial-gradient(circle at 30% 11%,rgba(255,211,100,.28) 0 2px,transparent 3px),
radial-gradient(circle at 76% 15%,rgba(241,76,189,.22) 0 2px,transparent 3px);
background-size:180px 180px,240px 240px,210px 210px;opacity:.42}
.hero-stage{position:relative;width:min(1220px,100%);height:610px;margin:0 auto;overflow:hidden}
.hero-lights{position:absolute;border-radius:50%;filter:blur(45px);opacity:.34;pointer-events:none}
.light-a{width:280px;height:280px;background:#7e20a5;left:7%;top:70px}
.light-b{width:220px;height:220px;background:#d936a9;right:15%;top:60px}
.light-c{width:160px;height:160px;background:#dbb24c;right:4%;bottom:55px;opacity:.12}

.hero-logo-lockup{position:absolute;left:28px;top:26px;width:420px;z-index:5}
.hero-logo-lockup img{width:100%;filter:drop-shadow(0 0 10px rgba(255,218,118,.22))}
.hero-roles{margin-top:-18px;margin-left:30px;font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:#f0e8f2}

.hero-portrait-wrap{position:absolute;left:0;bottom:0;width:39%;height:510px;z-index:3;display:flex;align-items:flex-end;justify-content:center}
.portrait-glow{position:absolute;left:4%;bottom:0;width:85%;height:88%;background:radial-gradient(ellipse at center,rgba(131,34,158,.30),transparent 62%);filter:blur(8px)}
.hero-real-portrait{position:relative;z-index:2;width:88%;max-height:500px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 35px rgba(0,0,0,.55))}

.hero-center-copy{position:absolute;left:38%;top:120px;width:35%;text-align:center;z-index:5}
.hero-overline{font-size:15px;letter-spacing:5px;text-transform:uppercase;color:#fff;margin-bottom:3px}
.hero-script{font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive;font-style:italic;font-weight:400;font-size:82px;line-height:.72;letter-spacing:-3px}
.hero-script.white{color:#fff;text-shadow:0 0 14px rgba(255,255,255,.08)}
.hero-script.pink{color:#e85bbd;text-shadow:0 0 18px rgba(232,91,189,.22)}
.hero-center-copy p{margin:18px auto 0;max-width:340px;font-size:13px;letter-spacing:1.4px;text-transform:uppercase;color:#eee}
.hero-center-copy p b{color:#f05ac0}
.hero-gold-flourish{width:235px;height:18px;margin:13px auto 0;position:relative}
.hero-gold-flourish:before{content:"";position:absolute;left:0;right:0;top:8px;height:3px;background:linear-gradient(90deg,transparent,#d4a741 20%,#f8d980 50%,#d4a741 80%,transparent);border-radius:50%}

.hero-microphone-wrap{position:absolute;right:0;top:44px;width:30%;height:530px;z-index:4;overflow:hidden}
.hero-microphone-wrap:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,2,4,.7),transparent 25%,transparent 75%,rgba(3,2,4,.15));z-index:2;pointer-events:none}
.hero-microphone-wrap img{width:100%;height:100%;object-fit:cover;object-position:center;filter:contrast(1.08) saturate(1.16)}

.hero-music-line{position:absolute;left:34%;right:22%;bottom:38px;height:110px;z-index:4;border-top:2px solid rgba(156,47,168,.35);transform:rotate(-4deg);color:#a82eb1}
.hero-music-line:before,.hero-music-line:after{content:"";position:absolute;left:0;right:0;border-top:1px solid rgba(156,47,168,.22)}
.hero-music-line:before{top:24px}.hero-music-line:after{top:48px}
.hero-music-line span{position:absolute;font-family:Georgia,serif;font-size:42px;text-shadow:0 0 10px rgba(180,46,184,.15)}
.hero-music-line span:nth-child(1){left:3%;top:-10px}.hero-music-line span:nth-child(2){left:19%;top:16px}.hero-music-line span:nth-child(3){left:36%;top:-3px}.hero-music-line span:nth-child(4){left:54%;top:22px}.hero-music-line span:nth-child(5){left:72%;top:0}.hero-music-line span:nth-child(6){left:88%;top:24px}

@media(max-width:980px){
  .logo-graphic{width:270px;max-width:55vw}
  .hero-stage{height:auto;min-height:780px;padding-top:120px}
  .hero-logo-lockup{left:50%;transform:translateX(-50%);width:420px;max-width:88vw}
  .hero-center-copy{left:50%;transform:translateX(-50%);top:180px;width:76%}
  .hero-portrait-wrap{width:52%;height:430px}
  .hero-microphone-wrap{width:43%;height:430px;top:auto;bottom:0}
  .hero-music-line{left:28%;right:22%;bottom:80px}
}
@media(max-width:620px){
  .hero-stage{min-height:1020px;padding-top:95px}
  .hero-logo-lockup{top:12px;width:340px}
  .hero-center-copy{top:145px;width:90%}
  .hero-script{font-size:64px}
  .hero-portrait-wrap{left:0;bottom:305px;width:100%;height:390px}
  .hero-real-portrait{width:72%}
  .hero-microphone-wrap{right:0;bottom:0;width:100%;height:310px;opacity:.92}
  .hero-music-line{left:4%;right:4%;bottom:270px}
  .logo-graphic{width:225px}
  .logo-graphic span{display:none}
}


/* ===== USER-SUPPLIED TERRI SMALL LOGO + REFINED SCRIPT ===== */
.logo-graphic{
  width:190px!important;
  max-width:22vw!important;
  display:block!important;
}
.logo-graphic img{
  width:100%!important;
  height:72px!important;
  object-fit:cover!important;
  object-position:center 53%!important;
  border-radius:4px!important;
  border:1px solid rgba(216,174,87,.42)!important;
  box-shadow:0 0 16px rgba(216,174,87,.12)!important;
}
.logo-graphic span{display:none!important}

/* More dramatic script everywhere outside the logo */
.hero-script,
.event-script,
.coaching-head div,
.legacy{
  font-family:"Snell Roundhand","Apple Chancery","URW Chancery L","Segoe Script","Lucida Handwriting",cursive!important;
  font-style:italic!important;
  font-weight:400!important;
  letter-spacing:-2px!important;
}
.hero-script{
  font-size:88px!important;
  line-height:.70!important;
}
.hero-script.white{
  color:#fff9f4!important;
  text-shadow:0 0 10px rgba(255,255,255,.08), 0 0 18px rgba(216,174,87,.10)!important;
}
.hero-script.pink{
  background:linear-gradient(90deg,#f18acb 0%,#db62b6 46%,#e6b85e 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  text-shadow:0 0 18px rgba(232,91,189,.18)!important;
}
.event-script{
  color:#e2b55d!important;
  font-size:68px!important;
  text-shadow:0 0 13px rgba(226,181,93,.14)!important;
}
.coaching-head div{
  color:#e35ab8!important;
  font-size:34px!important;
}
.legacy{
  color:#d958b9!important;
  font-size:33px!important;
}

/* Hero logo badge uses the full supplied logo, not generated lettering */
.hero-logo-lockup{
  left:28px!important;
  top:20px!important;
  width:235px!important;
}
.hero-logo-lockup img{
  width:100%!important;
  height:150px!important;
  object-fit:cover!important;
  object-position:center 53%!important;
  border-radius:6px!important;
  border:1px solid rgba(216,174,87,.50)!important;
  box-shadow:0 0 26px rgba(216,174,87,.16)!important;
}
.hero-logo-lockup .hero-roles{
  margin:8px 0 0 0!important;
  text-align:center!important;
  font-size:9px!important;
  letter-spacing:1.7px!important;
}
@media(max-width:980px){
  .logo-graphic{width:165px!important;max-width:42vw!important}
  .hero-logo-lockup{left:50%!important;transform:translateX(-50%)!important;width:210px!important}
  .hero-script{font-size:72px!important}
}
@media(max-width:620px){
  .logo-graphic{width:145px!important}
  .hero-logo-lockup{width:190px!important}
  .hero-script{font-size:58px!important}
  .event-script{font-size:48px!important}
}


/* ===== NO GRAPHIC LOGO + EDWARDIAN SCRIPT TREATMENT ===== */
.logo-graphic{display:none!important}
.hero-logo-lockup{display:none!important}

/* Text name in place of the graphic logo */
.text-name-logo{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1;
}
.text-name-logo .name{
  font-family:"Edwardian Script ITC","Kunstler Script","Snell Roundhand","Apple Chancery","URW Chancery L","Segoe Script",cursive;
  font-size:58px;
  font-weight:400;
  color:#e5bc61;
  letter-spacing:-1px;
  text-shadow:0 0 9px rgba(229,188,97,.15);
}
.text-name-logo .roles{
  margin:4px 0 0 14px;
  font-family:Arial,Helvetica,sans-serif;
  font-size:8px;
  letter-spacing:2.5px;
  text-transform:uppercase;
  color:#d9cddc;
}
.hero-script,.event-script,.coaching-head div,.legacy{
  font-family:"Edwardian Script ITC","Kunstler Script","Snell Roundhand","Apple Chancery","URW Chancery L","Segoe Script",cursive!important;
  font-weight:400!important;
  font-style:normal!important;
}
.hero-script{letter-spacing:0!important}
.event-script{letter-spacing:0!important}
@media(max-width:620px){
  .text-name-logo .name{font-size:46px}
  .text-name-logo .roles{font-size:7px;letter-spacing:1.7px}
}

/* ===== NOVEMBER WORKSHOP VIDEO ===== */
.event-video-block{margin:20px 0 22px;max-width:760px}
.event-video-heading{font-family:"Edwardian Script ITC","Kunstler Script","Snell Roundhand","Apple Chancery","URW Chancery L","Segoe Script",cursive;font-size:31px;color:var(--gold);margin-bottom:9px}
.event-video{display:block;width:100%;max-width:760px;aspect-ratio:16/9;background:#000;border:1px solid #7d337d;border-radius:10px;box-shadow:0 14px 34px rgba(0,0,0,.38)}
.event-video-page{background:linear-gradient(180deg,#070409,#110714)}
.event-video-block.standalone{margin:0 auto;max-width:880px;text-align:center}
.event-video-block.standalone .event-video{max-width:880px}
.video-register{margin-top:18px}
@media(max-width:700px){.event-video-heading{font-size:27px}.event-video-block{margin-top:16px}}
