:root{--pink:#e50078;--pink-dark:#b3005d;--black:#090909;--ink:#181518;--muted:#6d676d;--paper:#fff;--soft:#f8f5f7;--line:#eadfe5;--serif:'Prata',serif;--sans:'DM Sans',sans-serif;--shadow:0 14px 42px rgba(30,10,20,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);line-height:1.65;background:#fff}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}p{margin:0 0 1.15rem}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.15;margin:0 0 1rem}h1{font-size:clamp(2.6rem,6vw,5.6rem)}h2{font-size:clamp(2rem,4vw,3.35rem)}h3{font-size:1.45rem}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.content-narrow{max-width:820px}.section{padding:88px 0}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.pink,.service-kicker{color:var(--pink)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 25px;border:1px solid var(--pink);border-radius:3px;background:var(--pink);color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;transition:.2s ease}.button:hover{background:var(--pink-dark);transform:translateY(-2px)}.button-outline{background:transparent;border-color:#fff}.button-dark{background:#111;border-color:#fff}.button-small{min-height:42px;padding:9px 22px}.button-row{display:flex;gap:12px;flex-wrap:wrap}.text-link{color:var(--pink);font-weight:700}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;color:#fff}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;width:155px;flex-direction:column;line-height:.8}.custom-logo{max-height:65px;width:auto}.brand-wedding{font-family:var(--serif);font-size:1.65rem;color:var(--pink)}.brand-dance{font-size:.78rem;letter-spacing:.5em}.brand-easy{font-family:var(--serif);font-size:.75rem;font-style:italic;text-align:right}.primary-nav{display:flex;align-items:center;gap:24px}.primary-nav ul{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}.primary-nav a:not(.button){font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.primary-nav a:hover{color:#ff4fa8}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span:not(.screen-reader-text){display:block;width:25px;height:2px;margin:5px;background:#fff}
.home-hero{min-height:760px;color:#fff;background:linear-gradient(90deg,rgba(4,4,4,.98) 0%,rgba(4,4,4,.82) 39%,rgba(4,4,4,.1) 74%),var(--hero-image,linear-gradient(135deg,#151015,#3c1730));background-size:cover;background-position:center}.hero-grid{display:grid;min-height:760px;align-items:center}.hero-copy{max-width:585px;padding:145px 0 70px}.hero-copy h1 em{display:block;color:var(--pink);font-style:normal}.hero-intro{font-size:1.06rem;max-width:600px}.hero-locations{display:flex;gap:28px;margin-top:32px;text-transform:uppercase;font-size:.76rem;font-weight:700}.section-heading{text-align:center;margin-bottom:36px}.heart-rule{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--pink)}.heart-rule:before,.heart-rule:after{content:'';height:1px;width:82px;background:#efb3d1}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.service-card{display:grid;grid-template-columns:40% 60%;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.service-photo{background:linear-gradient(135deg,#28151f,#bd397c);min-height:420px;background-size:cover;background-position:center}.service-body{padding:34px}.service-body ul{list-style:none;padding:0}.service-body li{margin:.65rem 0}.service-body li:before{content:'✓';color:var(--pink);font-weight:700;margin-right:.65rem}.service-kicker{font-size:.72rem;font-weight:700;text-transform:uppercase}.price{font-family:var(--serif);font-size:1.6rem}.price small{font-family:var(--sans);font-size:.67rem;font-weight:700;text-transform:uppercase}.center-link{text-align:center;margin-top:30px}.locations-strip{background:var(--soft)}.location-layout{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:22px;align-items:center}.location-card{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;border-radius:8px;background:linear-gradient(135deg,#284a65,#d94283);box-shadow:var(--shadow);transition:.2s}.location-card:hover{transform:translateY(-4px)}.location-card span{font-family:var(--serif);font-size:2rem;text-transform:uppercase}.location-card small{letter-spacing:.16em;text-transform:uppercase}.location-card b{margin-top:22px;background:#fff;color:#111;padding:10px 16px;font-size:.68rem;text-transform:uppercase}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.benefit-grid>div{padding:18px 30px;text-align:center;border-right:1px solid var(--line)}.benefit-grid>div:last-child{border:0}.benefit-grid i{display:grid;place-items:center;width:50px;height:50px;border:1px solid var(--pink);border-radius:50%;margin:0 auto 18px;color:var(--pink);font-style:normal;font-size:1.4rem}.benefit-grid h3{font-family:var(--serif);font-size:1rem;color:var(--pink)}.testimonial-track{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.testimonial-card{margin:0;padding:32px;background:var(--soft);border-radius:7px}.testimonial-card:before{content:'★★★★★';display:block;color:var(--pink);letter-spacing:.15em;margin-bottom:14px}.testimonial-card footer{color:var(--pink);font-weight:700}.about-band{padding:80px 0;background:#0c0b0c;color:#fff}.about-grid{display:grid;grid-template-columns:.8fr 1.25fr .65fr;gap:50px;align-items:center}.about-portrait{min-height:410px;background:linear-gradient(145deg,#171217,#4f1736);border-radius:6px}.stats{display:grid;gap:6px;text-align:center}.stats strong{font-family:var(--serif);font-size:2rem;color:var(--pink)}.stats span{padding-bottom:18px;border-bottom:1px solid #342630;font-size:.7rem;text-transform:uppercase}.final-cta{padding:62px 0;color:#fff;background:linear-gradient(100deg,#bd005f,#ed087d 60%,#7d003f)}.cta-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center}.button-stack{display:grid;gap:12px}.site-footer{padding:62px 0 25px;background:#080808;color:#fff}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px}.footer-grid h2{font:700 .72rem var(--sans);text-transform:uppercase;letter-spacing:.15em;color:var(--pink)}.footer-brand p{max-width:360px;margin-top:22px;color:#bbb}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:30px;margin-top:30px;border-top:1px solid #302a2e;color:#aaa;font-size:.75rem}.page-hero{padding:170px 0 80px;background:linear-gradient(120deg,#080808,#351329);color:#fff}.page-hero h1{max-width:900px}.blog-hero{text-align:center}.post-image img{display:block;width:100%;max-height:580px;object-fit:cover;margin-top:45px;border-radius:7px}.prose{font-size:1.04rem}.prose h2{font-size:2rem;margin-top:2.5rem}.prose h3{margin-top:2rem}.prose a{color:var(--pink);text-decoration:underline}.prose li{margin:.55rem 0}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.post-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}.post-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.post-card-body{padding:28px}.post-card h2{font-size:1.45rem}.pagination{margin-top:45px}
@media(max-width:900px){.menu-toggle{display:block}.primary-nav{display:none;position:fixed;inset:0;background:#090909;padding:110px 30px 40px;z-index:-1;flex-direction:column;align-items:stretch}.primary-nav.is-open{display:flex}.primary-nav ul{flex-direction:column;align-items:flex-start}.primary-nav a:not(.button){font-size:1.15rem}.nav-book{margin-top:15px}.service-card{grid-template-columns:1fr}.service-photo{min-height:280px}.location-layout{grid-template-columns:1fr 1fr}.location-layout>div:first-child{grid-column:1/-1;text-align:center}.benefit-grid{grid-template-columns:1fr 1fr}.benefit-grid>div:nth-child(2){border-right:0}.about-grid{grid-template-columns:1fr 1.3fr}.stats{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.post-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.shell{width:min(100% - 28px,1180px)}.section{padding:58px 0}.site-header{position:absolute}.header-inner{min-height:76px}.home-hero{min-height:auto;padding-top:78px;background:linear-gradient(180deg,#080808 0%,#080808 38%,rgba(8,8,8,.35) 59%,#080808 86%),var(--hero-image,linear-gradient(135deg,#151015,#3c1730));background-size:auto 100%,100% auto;background-position:center,center 38%;background-repeat:no-repeat}.hero-grid{min-height:780px;align-items:start}.hero-copy{padding:48px 8px 38px;text-align:left}.hero-copy h1{font-size:3.1rem}.hero-copy .hero-intro{max-width:92%;font-size:.95rem}.button-row{margin-top:330px;display:grid}.button-row .button{width:100%}.hero-locations{justify-content:center;gap:20px}.service-grid,.location-layout,.cta-grid,.footer-grid,.post-grid{grid-template-columns:1fr}.service-card{display:block}.service-photo{min-height:220px}.service-body{padding:26px}.benefit-grid{grid-template-columns:1fr}.benefit-grid>div{display:grid;grid-template-columns:52px 1fr;column-gap:16px;text-align:left;border:0;padding:14px}.benefit-grid i{grid-row:1/3;margin:0}.benefit-grid h3,.benefit-grid p{margin:0}.testimonial-track{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.testimonial-card{min-width:88%;scroll-snap-align:center}.about-grid{grid-template-columns:1fr}.about-portrait{min-height:430px}.stats{grid-template-columns:1fr}.final-cta{text-align:center}.footer-bottom{flex-direction:column}.page-hero{padding:130px 0 58px}.page-hero h1{font-size:2.6rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.about-portrait{min-height:470px;background-image:url('../images/kristi-home-cutout.png');background-size:contain;background-repeat:no-repeat;background-position:center bottom}.portrait-art{background-image:linear-gradient(90deg,rgba(8,8,8,.08),rgba(8,8,8,0)),url('../images/kristi-about-hero.webp');background-size:cover;background-position:center top}.story-art{background-image:url('../images/kristi-story.webp');background-size:cover;background-position:center top}
.portrait-art{min-height:520px}.story-art{min-height:480px}.contact-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center;min-height:510px}.contact-hero h1 em{display:block;color:var(--pink);font-style:normal}.contact-panel{padding:34px;border:1px solid #4a4147;border-radius:7px;background:rgba(0,0,0,.72)}.contact-panel input,.contact-panel textarea,.contact-panel select{width:100%;padding:13px;margin-bottom:12px;border:1px solid #6c6269;background:#101010;color:#fff}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.studio-grid article{text-align:center;padding-bottom:28px;border:1px solid var(--line)}.studio-image{height:310px;margin-bottom:24px;background:linear-gradient(135deg,#eee,#51434a)}.contact-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;text-align:center}.contact-methods>div{border-right:1px solid #40343b}.contact-methods>div:last-child{border:0}.contact-methods h3{color:var(--pink)}@media(max-width:640px){.contact-hero,.studio-grid,.contact-methods{grid-template-columns:1fr}.contact-methods>div{border-right:0;border-bottom:1px solid #40343b;padding-bottom:20px}}
.hero-book-card{padding:32px;border:1px solid #494048;border-radius:7px;background:rgba(0,0,0,.72)}.hero-book-card h2{font-size:1.5rem}.hero-book-card ul{list-style:none;padding:0}.hero-book-card li{margin:.65rem 0}.hero-book-card li:before{content:'✓';color:var(--pink);margin-right:.6rem}.hero-book-card small{display:block;margin-top:12px}.mini-benefits{display:flex;gap:24px;margin-top:28px;font-size:.72rem;font-weight:700;text-transform:uppercase}.dark-section{padding:78px 0;background:#090909;color:#fff}.journey-layout,.feature-intro,.pricing-feature{display:grid;grid-template-columns:1fr 1.3fr;gap:45px;align-items:center}.video-poster{position:relative;padding:0;border:0;background:#000;cursor:pointer}.video-poster img{display:block;width:100%}.video-poster span{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:var(--pink);color:#fff;font-size:1.5rem}.journey-layout iframe{width:100%;aspect-ratio:16/9;border:0}.three-steps{grid-template-columns:repeat(3,1fr);max-width:850px;margin:auto}.session-list{display:grid;gap:10px}.session-list article{display:grid;grid-template-columns:1.4fr .8fr 1fr .5fr auto;gap:15px;align-items:center;padding:15px 18px;background:#fff;border:1px solid var(--line)}.empty-state{text-align:center}.pricing-feature ul{list-style:none;padding:0}.pricing-feature li:before{content:'✓';color:var(--pink);margin-right:.6rem}@media(max-width:640px){.journey-layout,.feature-intro,.pricing-feature{grid-template-columns:1fr}.mini-benefits{flex-direction:column;gap:8px}.session-list article{grid-template-columns:1fr 1fr}.session-list article .button{grid-column:1/-1}}
.service-hero{padding:135px 0 65px;background:#090909;color:#fff}.split-hero{display:grid;grid-template-columns:1fr 1.15fr;gap:45px;align-items:center;min-height:430px}.split-hero h1 em{display:block;color:var(--pink);font-style:normal}.hero-art{min-height:430px;border-radius:7px;background:linear-gradient(135deg,#25131d,#a01c60)}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.pricing-card{position:relative;padding:34px;border:1px solid var(--line);border-radius:7px;box-shadow:var(--shadow)}.pricing-card.featured{border-color:var(--pink)}.best-value{position:absolute;top:-13px;left:50%;transform:translateX(-50%);padding:5px 18px;background:var(--pink);color:#fff;font-size:.7rem;text-transform:uppercase}.pricing-card ul{list-style:none;padding:0}.pricing-card li{margin:.55rem 0}.pricing-card li:before{content:'✓';color:var(--pink);margin-right:.6rem}.package-price{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:18px 0;border-top:1px solid var(--line)}.package-price strong{font:1.7rem var(--serif);color:var(--pink)}.package-price small{color:var(--pink);text-transform:uppercase}.extras-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:28px}.extras-grid article{padding:30px;border:1px solid #f0cfdf;background:#fff8fb}.soft-section{background:var(--soft)}.show-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.show-grid article{overflow:hidden;background:#090909;color:#fff;text-align:center;border-radius:7px}.show-grid article h3,.show-grid article p{padding-inline:22px}.show-image{height:280px;background:linear-gradient(135deg,#38182a,#c74c88)}.steps-five{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;text-align:center}.steps-five b{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--pink);border-radius:50%;margin:0 auto 15px;color:var(--pink)}.steps-five h3{font-size:1rem;color:var(--pink)}@media(max-width:900px){.pricing-grid{grid-template-columns:1fr}.steps-five{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.split-hero,.extras-grid,.show-grid,.steps-five{grid-template-columns:1fr}.service-hero{padding-top:110px}.split-hero .hero-art{min-height:310px;grid-row:1}.pricing-card{padding:26px}}
.bridal-party-promo{display:grid;grid-template-columns:1fr 1.35fr;gap:30px;align-items:center;margin-top:52px;padding:34px;border:1px solid #f0cfdf;border-radius:8px;background:linear-gradient(110deg,#fff7fb,#f8eaf1);box-shadow:0 12px 35px rgba(80,20,50,.08)}.bridal-party-promo h3{font-size:1.8rem}.bridal-party-image{min-height:250px;border-radius:6px;background:linear-gradient(135deg,#3e182c,#d64b8d)}.promo-action{display:flex;align-items:center;gap:20px}.enquiry-price{font-size:.7rem;font-weight:700;line-height:1.3;text-transform:uppercase}@media(max-width:640px){.bridal-party-promo{grid-template-columns:1fr;padding:24px}.bridal-party-image{min-height:190px;grid-row:1}.promo-action{display:grid}}
