:root{--bg-dark:#0d0d0d;--bg-light:#f5f0e6;--text-light:#f9f1f1;--text-dark:#1a1a1a;--accent:#d4af37;--font-serif:"Playfair Display", serif;--font-sans:"Geist", "Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}body{font-family:var(--font-sans);color:var(--text-light);-webkit-font-smoothing:antialiased;cursor:none;background-color:#0000;line-height:1.5;transition:color .5s;overflow-x:hidden}.custom-cursor{mix-blend-mode:difference;pointer-events:none;z-index:9999;background-color:#fff;border-radius:50%;width:20px;height:20px;transition:width .3s,height .3s,background-color .3s,opacity .3s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.custom-cursor.hovered{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);mix-blend-mode:normal;background-color:#ffffff1a;border:1px solid #ffffff80;width:60px;height:60px}body.theme-light{color:var(--text-dark)}.bg-layer{z-index:-1;width:100vw;height:100vh;transition:background-color .8s;position:fixed;top:0;left:0}.bg-layer.dark{background-color:var(--bg-dark)}.bg-layer.light{background-color:var(--bg-light)}.container-fluid{width:100%;padding:0 4vw}.navbar{z-index:100;width:100%;font-family:var(--font-sans);letter-spacing:2px;justify-content:space-between;align-items:center;padding:2rem 4vw;font-size:.9rem;font-weight:500;display:flex;position:fixed;top:0}.mix-blend{mix-blend-mode:difference;color:#fff}.logo{font-family:var(--font-serif);letter-spacing:1px;font-size:1.5rem}.menu-btn{cursor:none}.menu-overlay{background-color:var(--bg-dark);z-index:90;clip-path:polygon(0 0,100% 0,100% 0,0 0);justify-content:center;align-items:center;width:100vw;height:100vh;transition:clip-path .8s cubic-bezier(.77,0,.175,1);display:flex;position:fixed;top:0;left:0}.menu-overlay.open{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}.menu-links{text-align:center;margin:0;padding:0;list-style:none}.menu-links li{margin:2vh 0;overflow:hidden}.menu-links a{font-family:var(--font-serif);color:var(--text-light);text-transform:uppercase;cursor:none;font-size:clamp(3rem,8vw,8rem);text-decoration:none;transition:transform .8s cubic-bezier(.77,0,.175,1),color .4s,-webkit-text-stroke .4s;display:inline-block;transform:translateY(100%)}.menu-overlay.open .menu-links a{transform:translateY(0)}.menu-links li:first-child a{transition-delay:.1s}.menu-links li:nth-child(2) a{transition-delay:.2s}.menu-links li:nth-child(3) a{transition-delay:.3s}.menu-links li:nth-child(4) a{transition-delay:.4s}.menu-links a:hover{color:#0000;-webkit-text-stroke:1px #fff6;font-style:italic}.hero-section{flex-direction:column;justify-content:center;height:100vh;padding:0 4vw;display:flex;position:relative}.canvas-container{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{z-index:2;flex-direction:column;justify-content:center;width:100%;height:100%;display:flex;position:relative}.hero-massive{font-family:var(--font-serif);text-transform:uppercase;letter-spacing:-.02em;margin:0;font-size:clamp(5rem,15vw,15rem);font-weight:800;line-height:.85}.line-wrap{overflow:hidden}.hero-footer{letter-spacing:2px;font-size:.8rem;font-family:var(--font-sans);text-transform:uppercase;justify-content:space-between;display:flex;position:absolute;bottom:2rem;left:4vw;right:4vw}.about-me-section{position:relative}.about-me-sticky{align-items:center;width:100%;height:100vh;display:flex;position:relative;overflow:hidden}.about-me-wrapper{width:300vw;height:100%;display:flex}.about-slide{flex-shrink:0;justify-content:space-between;align-items:center;width:100vw;height:100%;padding:0 4vw;display:flex}.slide-content-large{flex:1}.slide-content-text{flex:.8;max-width:500px}.slide-huge{font-family:var(--font-serif);margin:0;font-size:clamp(4rem,10vw,10rem);font-weight:600;line-height:.9}.slide-sub{letter-spacing:2px;margin-bottom:2rem;font-size:1.2rem;font-weight:500}.slide-content-text p{font-size:1.5rem;line-height:1.6}.text-right{text-align:right}.align-bottom{align-self:flex-end;padding-bottom:15vh}.experience-list{flex-direction:column;gap:2rem;display:flex}.exp-item h4{font-family:var(--font-serif);margin-bottom:.5rem;font-size:1.8rem}.exp-item p{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:1px;font-size:1rem}.slide-image{background-color:#2a2a2a;flex:.8;justify-content:center;align-items:center;height:70vh;display:flex;position:relative;overflow:hidden}.img-caption{font-family:var(--font-sans);letter-spacing:2px;color:#fff;font-size:.9rem}.practices-section{padding:15vh 0}.section-header{margin-bottom:10vh}.section-title{font-family:var(--font-serif);font-size:clamp(3rem,8vw,8rem);line-height:1}.section-desc{max-width:400px;margin-top:1rem;font-size:1.2rem}.practices-list{border-top:1px solid #fff3;flex-direction:column;display:flex}body.theme-light .practices-list{border-top:1px solid #0003}.practice-row{cursor:none;border-bottom:1px solid #fff3;align-items:center;padding:3rem 0;display:flex;position:relative}body.theme-light .practice-row{border-bottom:1px solid #0003}.p-num{width:10%;font-size:1rem;font-weight:500}.p-title{font-family:var(--font-serif);flex:1;font-size:clamp(2rem,5vw,4rem);transition:transform .3s}.practice-row:hover .p-title{font-style:italic;transform:translate(2vw)}.footer-section{padding:15vh 0 5vh}.footer-title{margin-bottom:10vh}.footer-grid{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.footer-info p{margin-bottom:1rem;font-size:1.2rem}.footer-form{flex-direction:column;gap:2rem;display:flex}.footer-form input{color:inherit;font-size:1.2rem;font-family:var(--font-sans);cursor:text;background:0 0;border:none;border-bottom:1px solid;outline:none;padding:1rem 0}.btn-submit{color:inherit;font-family:var(--font-sans);letter-spacing:2px;cursor:none;background:0 0;border:none;align-self:flex-start;margin-top:1rem;padding:0;font-size:1.2rem}@media (width<=768px){.hero-massive{font-size:clamp(4rem,15vw,15rem)}.navbar{padding:1.5rem 4vw}.about-slide{flex-direction:column;justify-content:center;gap:2rem}.slide-content-large{order:-1}.slide-image{display:none}.practices-list .p-title{font-size:clamp(1.5rem,6vw,4rem)}.footer-grid{grid-template-columns:1fr;gap:2rem}}
