:root{--gold:#8a703d;--gold-dark:#745b2d;--ink:#403b34;--muted:#655f56;--line:#e5dccb;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--script:'Italianno',cursive}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:white;color:var(--ink);font:400 16px/1.8 var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.35}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font:400 54px/1.1 var(--serif);color:var(--gold-dark)}
header{max-width:1440px;margin:auto;height:105px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10;background:white}.wordmark{font:400 21px/1.1 var(--serif);letter-spacing:.07em;color:var(--gold-dark);display:inline-block;text-align:center}.wordmark span{display:block;font:400 29px/1.1 var(--script);letter-spacing:0;margin-top:4px}.main-nav{display:flex;gap:34px;font-size:13px}.main-nav a{padding:10px 0;border-bottom:1px solid transparent}.main-nav a:hover{border-color:var(--gold)}.menu-toggle{display:none}
.hero{position:relative;text-align:center;padding:4px 24px 83px;isolation:isolate;overflow:hidden}.inner-diamond{position:relative;max-width:1040px;margin:auto}.crystal-stage{width:460px;max-width:100%;height:340px;position:relative;margin:0 auto 24px;isolation:isolate}.crystal-image{width:100%;height:100%;object-fit:contain;position:absolute;inset:0;z-index:2;animation:crystalDrift 18s ease-in-out infinite;filter:drop-shadow(0 16px 16px #858b9e17)}.ground-light{position:absolute;left:5%;right:5%;bottom:0;height:65px;border-radius:50%;filter:blur(28px);opacity:.3;background:conic-gradient(from 10deg,#fff,#b4e7f1,#ffe5c4,#d5c7ed,#fff,#cde6f4,#ffded7,#fff);animation:lightBreathe 18s ease-in-out infinite alternate;z-index:-1}.hero-light{position:absolute;top:95px;left:50%;width:1000px;height:360px;background:conic-gradient(from 76deg at 50% 55%,transparent 0deg,#c4b6ef20 5deg,#b9e9ef26 11deg,#f8debf30 16deg,transparent 24deg,transparent 165deg,#ffe1df26 172deg,#cbd0f126 178deg,#c6eef223 185deg,transparent 195deg);filter:blur(24px);animation:refraction 28s ease-in-out infinite alternate;z-index:-2;pointer-events:none}.hero h1{font-size:clamp(44px,5.6vw,80px);letter-spacing:.025em;text-transform:uppercase}.signature{font:400 58px/1.15 var(--script);color:var(--gold-dark);margin-top:5px}.welcome-copy{margin:38px auto 0;max-width:695px}.welcome-copy h2{font-size:39px;line-height:1.2;margin-bottom:18px}.welcome-copy p{font:400 21px/1.65 var(--serif);color:var(--ink);max-width:600px;margin:auto}.motion-toggle{position:absolute;bottom:20px;right:6%;min-height:44px;font-size:11px;color:var(--muted);background:none;border:0;border-bottom:1px solid var(--line);padding:8px}
.section{max-width:1160px;margin:0 auto;padding:72px 30px}.session{border-top:1px solid var(--line)}.session-card{border:1px solid var(--line);display:grid;grid-template-columns:.85fr 1.15fr;border-radius:12px;overflow:hidden;align-items:center}.session-art{display:flex;align-items:center;justify-content:center;overflow:hidden;height:390px}.session-art img{width:95%;height:390px;object-fit:contain;transform:rotate(-19deg)}.session-copy{padding:42px 45px;border-left:1px solid var(--line);margin:26px 0}.session-copy h2{font-size:46px}.session-message{font:400 25px/1.45 var(--serif);margin-top:22px;max-width:420px}.session-details{margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}.session-details h3{font-size:26px;color:var(--ink)}.price{font:400 43px/1.3 var(--serif);color:var(--gold-dark);margin:13px 0 9px}.duration{font-size:12px;color:var(--muted)}
.experiences{padding-top:20px;padding-bottom:80px}.experience-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.experience-heading h2{font-size:48px}.carousel-controls{display:flex;gap:10px}.carousel-controls button{width:44px;height:44px;border:1px solid var(--line);background:white;color:var(--gold-dark);border-radius:50%;font:400 29px var(--serif)}.carousel-controls button:hover:not(:disabled){background:#faf8f3}.quotes{display:flex;position:relative;align-items:flex-start;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;margin-top:34px;padding:0 0 20px;scrollbar-width:thin;scrollbar-color:#d5c8b0 transparent;overscroll-behavior-x:contain}.quote{flex:0 0 76%;scroll-snap-align:start;border:1px solid var(--line);border-radius:12px;padding:38px 42px}.quote:last-child{margin-right:24%}.quote h3{font-size:28px;margin-bottom:24px}.quote blockquote{margin:0;font-size:15px;line-height:1.85;color:var(--ink)}.quote blockquote p+p{margin-top:18px}.client-signature{margin-top:28px;font:400 21px/1.4 var(--serif);color:var(--gold-dark)}.carousel-position{font-size:11px;letter-spacing:.2em;text-align:center;color:var(--muted);margin-top:15px}footer{border-top:1px solid var(--line);max-width:1100px;margin:auto;text-align:center;padding:35px 24px 40px}footer .wordmark{font-size:18px}.skip{position:fixed;left:20px;top:-70px;z-index:100;background:white;padding:10px}.skip:focus{top:20px}.paused *{animation-play-state:paused!important}
@keyframes crystalDrift{0%,100%{transform:translateY(5px) rotate(-3deg)}50%{transform:translateY(-6px) rotate(3deg)}}@keyframes refraction{from{transform:translateX(-50%) rotate(-12deg) scale(.95);opacity:.55}to{transform:translateX(-50%) rotate(8deg) scale(1.15);opacity:1}}@keyframes lightBreathe{from{transform:scale(.9) rotate(-5deg);opacity:.22}to{transform:scale(1.13) rotate(9deg);opacity:.42}}
@media(max-width:900px){header{padding:0 5%}.main-nav{gap:20px}.session-copy{padding:30px}.session-copy h2{font-size:40px}.session-message{font-size:23px}.quote{flex-basis:88%}.quote:last-child{margin-right:12%}}
@media(max-width:640px){header{height:86px;padding:0 22px}.wordmark{font-size:17px}.wordmark span{font-size:27px}.menu-toggle{display:block;background:white;border:1px solid var(--line);border-radius:25px;padding:9px 15px;font-size:12px;color:var(--gold-dark);min-height:44px}.main-nav{display:none;position:absolute;top:86px;left:0;right:0;background:white;padding:20px 26px;border-bottom:1px solid var(--line);box-shadow:0 10px 25px #00000008;flex-direction:column;text-align:center;gap:6px;font-size:14px}.main-nav.open{display:flex}.hero{padding:6px 22px 80px}.crystal-stage{width:340px;height:270px;margin-bottom:21px}.hero h1{font-size:clamp(34px,9.2vw,48px);line-height:1.08;max-width:390px;margin:auto}.signature{font-size:48px;margin-top:8px}.hero-light{top:40px;width:700px;height:350px}.welcome-copy{margin-top:29px}.welcome-copy h2{font-size:32px;max-width:310px;margin:0 auto 17px}.welcome-copy p{font-size:20px;line-height:1.55;max-width:350px}.motion-toggle{bottom:14px;right:24px}.section{padding:42px 22px}.session{margin:0 22px;padding-left:0;padding-right:0}.session-card{grid-template-columns:1fr}.session-art{height:220px}.session-art img{height:290px;width:80%}.session-copy{border-left:0;border-top:1px solid var(--line);padding:29px 25px 34px;margin:0;text-align:center}.session-copy h2{font-size:37px}.session-message{font-size:23px;margin-top:19px}.session-details{margin-top:25px;padding-top:23px}.session-details h3{font-size:25px}.experiences{padding-top:14px;padding-bottom:42px}.experience-heading h2{font-size:38px}.carousel-controls{gap:6px}.quote{flex-basis:100%;padding:27px 25px}.quote:last-child{margin-right:0}.quote h3{font-size:27px}.quote blockquote{font-size:14px;line-height:1.85}.quote blockquote p+p{margin-top:18px}.client-signature{font-size:20px}.quotes{gap:16px;margin-top:26px}footer{margin:0 22px;padding:30px 0}.carousel-position{margin-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:360px){.experience-heading{gap:8px}.experience-heading h2{font-size:33px}.carousel-controls{gap:4px;flex-shrink:0}.wordmark{font-size:15px}header{padding:0 18px}}
/* Full-dimensional diamond and luminous rainbow reflections. */
.crystal-stage{height:365px;width:560px;margin-bottom:25px;overflow:visible}
.crystal-image{animation:none;transition:opacity .6s ease}
.diamond-canvas{position:absolute;inset:0;z-index:3;width:100%;height:100%;opacity:0;transition:opacity .6s ease;pointer-events:none}
.diamond-ready .diamond-canvas{opacity:1}
.diamond-ready .crystal-image{opacity:0}
.ground-light{display:none}
.rainbow-reflection{position:absolute;z-index:1;left:50%;bottom:-55px;width:900px;height:350px;pointer-events:none;transform:translateX(-50%);isolation:isolate}
.rainbow-reflection::before,.rainbow-reflection::after{content:"";position:absolute;inset:0;transform-origin:50% 50%;background:conic-gradient(from 0deg at 50% 50%,transparent 0deg,#e2b2ff70 5deg,transparent 12deg,transparent 30deg,#9fcdff90 39deg,#c5f3f880 45deg,transparent 52deg,transparent 64deg,#ffddaa90 70deg,transparent 77deg,#ffcce388 84deg,transparent 94deg,#bda9ff90 105deg,transparent 112deg,#a5e4fa99 126deg,transparent 138deg,#efd3a980 151deg,transparent 168deg,#f5cced77 182deg,transparent 193deg,#bbd4ff99 207deg,transparent 216deg,#b8edea99 224deg,transparent 238deg,#f4deb499 246deg,transparent 258deg,#eed2f699 271deg,transparent 283deg,#a9dcfaaa 298deg,transparent 311deg,#edd5a077 328deg,transparent 342deg,#dbcaff77 352deg,transparent 360deg);mask-image:radial-gradient(ellipse at center,#000 6%,#000b 31%,transparent 70%);filter:blur(5px);animation:prismGlow 20s ease-in-out infinite alternate;opacity:.85}
.rainbow-reflection::after{transform:rotate(12deg) scale(.85,.6);filter:blur(2px);opacity:.6;animation:prismGlowSecondary 26s ease-in-out infinite alternate}
.hero-light{opacity:.65;filter:blur(20px)}
@keyframes prismGlow{from{transform:rotate(-5deg) scale(.96);opacity:.66}to{transform:rotate(5deg) scale(1.05);opacity:.95}}
@keyframes prismGlowSecondary{from{transform:rotate(14deg) scale(.9,.62);opacity:.5}to{transform:rotate(-3deg) scale(1,.72);opacity:.8}}
@media(max-width:640px){.crystal-stage{height:300px;width:100%;margin-bottom:25px}.rainbow-reflection{width:630px;height:270px;bottom:-55px}.rainbow-reflection::before{filter:blur(4px)}.hero{padding-top:10px}}
@media(prefers-reduced-motion:reduce){.rainbow-reflection::before,.rainbow-reflection::after{animation:none}.diamond-canvas,.crystal-image{transition:none}}

.paused *::before,.paused *::after{animation-play-state:paused!important}

/* Compact testimonials with a consistent reading rhythm at every screen width. */
.quotes-compact{align-items:stretch}
.quote-compact{display:flex;flex-direction:column}
.quote-compact h3{min-height:2.2em;margin-bottom:18px;display:flex;align-items:center}
.quote-compact .quote-preview{height:11.1em;flex:none;overflow:hidden}
.quote-preview p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}
.read-testimonial{align-self:flex-start;margin-top:26px;padding:10px 0;min-height:44px;border:0;border-bottom:1px solid var(--gold);background:transparent;color:var(--gold-dark);font-size:13px;line-height:1.6}
.read-testimonial:hover{color:var(--ink);border-color:var(--ink)}
.testimonial-reader{width:min(720px,calc(100% - 48px));max-height:85vh;max-height:85dvh;padding:0;border:1px solid var(--line);border-radius:16px;color:var(--ink);background:white;box-shadow:0 24px 90px #30281526;overflow:hidden}
.testimonial-reader[open]{display:flex;flex-direction:column}
.testimonial-reader::backdrop{background:rgb(40 35 28 / 38%);backdrop-filter:blur(3px)}
.reader-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:25px 32px 20px;border-bottom:1px solid var(--line);flex:none}
.reader-header h3{font-size:34px;line-height:1.1}
.reader-header h3:focus{outline:none}
.reader-close{flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--gold-dark);font:300 28px/1 var(--sans)}
.reader-close:hover{background:#faf8f3}
.reader-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:28px 32px 34px;scrollbar-width:thin;scrollbar-color:#d5c8b0 transparent}
.reader-body blockquote{margin:0;font:400 16px/1.85 var(--sans)}
.reader-body blockquote p+p{margin-top:20px}
.reader-body .client-signature{margin-top:26px}
@media(max-width:640px){
 .quote-compact{padding:24px}
 .quote-compact h3{font-size:27px}
 .read-testimonial{margin-top:22px}
 .testimonial-reader{width:100%;max-width:100%;max-height:88vh;max-height:88dvh;margin:auto 0 0;border-radius:20px 20px 0 0;border-bottom:0}
 .reader-header{padding:22px 24px 18px;gap:12px}
 .reader-header h3{font-size:29px}
 .reader-body{padding:23px 24px max(30px,env(safe-area-inset-bottom))}
 .reader-body blockquote{font-size:15px;line-height:1.85}
}

/* Matching prismatic diamonds and direct email contact. */
.session-art{position:relative;isolation:isolate}
.session-art .session-crystal{width:100%;max-width:100%;height:330px;margin:0;flex:none}
.session-art .crystal-image{width:100%;height:100%;transform:none;object-fit:contain}
.session-art .rainbow-reflection{width:680px;height:270px;bottom:-42px}
.footer-contact{display:flex;flex-direction:column;align-items:center;gap:5px;margin-top:25px}
.footer-contact span{font:400 23px/1.3 var(--serif);color:var(--gold-dark)}
.footer-contact a{font-size:20px;font-weight:500;color:var(--gold-dark);text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--line);padding:8px 0;min-height:44px;overflow-wrap:anywhere;max-width:100%}
.footer-contact a:hover{text-decoration-color:var(--gold)}
@media(max-width:640px){.session-art{height:295px}.session-art .session-crystal{height:270px}.session-art .rainbow-reflection{width:590px;height:245px;bottom:-42px}.footer-contact a{font-size:18px}}
