@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.storefront-root{--color-ink:#1c1917;--color-ink-light:#44403c;--color-ink-muted:#78716c;--color-ink-faint:#a8a29e;--color-surface-paper:#fafaf9;--color-surface-stone:#eae8e3;--border-hairline:1px solid #1c191714;--border-light:1px solid #fff6;--shadow-soft:0 10px 30px -10px #0000000d;--shadow-float:0 20px 40px -15px #0000001a;--font-serif:"Cormorant Garamond",serif;--font-sans:"Manrope",sans-serif;--radius-sm:12px;--radius-md:20px;--radius-lg:28px;font-family:var(--font-sans);color:var(--color-ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ed-serif{font-family:var(--font-serif)}.ed-sans{font-family:var(--font-sans)}.ed-label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-muted);font-size:11px;font-weight:600}.surface-glass{-webkit-backdrop-filter:blur(40px);border-radius:var(--radius-lg);border:var(--border-light);box-shadow:var(--shadow-float);background:#ffffffd9;width:100%;padding:32px 24px;transition:border-radius .3s}.surface-paper{background:var(--color-surface-paper);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);width:100%;padding:40px 24px;transition:border-radius .3s;position:relative;overflow:hidden}.surface-sheer{-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-md);border:var(--border-light);background:#ffffffbf;width:100%;padding:24px;transition:border-radius .3s}.surface-stone{background:var(--color-surface-stone);border-radius:var(--radius-md);width:100%;color:var(--color-ink);padding:32px 24px;transition:border-radius .3s}.surface-ink{background:var(--color-ink);border-radius:var(--radius-lg);width:100%;color:var(--color-surface-paper);text-align:center;padding:48px 32px;transition:border-radius .3s;box-shadow:0 24px 48px -12px #0006}.ed-bg-media{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ed-gradient-overlay{pointer-events:none;z-index:0;background:linear-gradient(#00000080 0%,#0000 55%);position:absolute;inset:0}.ed-hero-asym{flex-direction:column;align-items:flex-start;width:100%;padding:24px 16px 32px;display:flex;position:relative}.ed-hero-asym .ed-hero-top{justify-content:space-between;align-items:flex-start;width:100%;margin-bottom:24px;display:flex}.ed-hero-asym .ed-hero-portrait{border-radius:var(--radius-lg);object-fit:cover;border:1px solid #ffffff40;width:140px;height:180px;transition:border-radius .3s;box-shadow:0 30px 60px -15px #00000080}.ed-hero-asym .ed-hero-greeting{letter-spacing:.15em;text-transform:uppercase;color:#ffffffb3;writing-mode:vertical-rl;opacity:.8;margin-top:16px;margin-right:8px;font-size:11px;font-weight:600;transform:rotate(180deg)}.ed-hero-asym .ed-hero-name{font-size:46px;font-weight:var(--heading-weight,400);letter-spacing:var(--heading-spacing,-.02em);text-transform:var(--heading-transform,none);color:var(--hero-text,#fff);text-shadow:0 8px 32px #00000080;margin-bottom:16px;line-height:1}.ed-hero-asym .ed-hero-title{letter-spacing:.08em;text-transform:uppercase;color:var(--hero-subtitle,#ffffffe6);text-shadow:0 2px 12px #0006;margin-bottom:24px;font-size:14px;font-weight:600}.ed-hero-asym .ed-hero-quote{color:var(--hero-subtitle,#fffffff2);text-shadow:0 2px 16px #0006;border-left:2px solid var(--hero-subtitle,#ffffff80);padding-left:20px;font-size:21px;font-style:italic;line-height:1.4}.ed-hero-centered{text-align:center;flex-direction:column;align-items:center;width:100%;padding:24px 16px 32px;display:flex;position:relative}.ed-hero-centered .ed-hero-portrait{object-fit:cover;border:2px solid #ffffff40;border-radius:50%;width:140px;height:140px;margin-bottom:24px;transition:border-radius .3s;box-shadow:0 30px 60px -15px #00000080}.ed-hero-centered .ed-hero-name{font-size:42px;font-weight:var(--heading-weight,400);letter-spacing:var(--heading-spacing,-.02em);text-transform:var(--heading-transform,none);color:var(--hero-text,#fff);text-shadow:0 8px 32px #00000080;margin-bottom:12px;line-height:1.1}.ed-hero-centered .ed-hero-title{letter-spacing:.08em;text-transform:uppercase;color:var(--hero-subtitle,#ffffffe6);text-shadow:0 2px 12px #0006;margin-bottom:24px;font-size:14px;font-weight:600}.ed-hero-centered .ed-hero-quote{color:#fffffff2;text-shadow:0 2px 16px #0006;font-size:20px;font-style:italic;line-height:1.4}.ed-hero-arch{text-align:center;flex-direction:column;align-items:center;width:100%;padding:16px 16px 32px;display:flex;position:relative}.ed-hero-arch .ed-hero-portrait{object-fit:cover;border:1px solid #ffffff40;border-radius:120px 120px 16px 16px;width:180px;height:240px;margin-bottom:32px;transition:border-radius .3s;box-shadow:0 30px 60px -15px #00000080}.ed-hero-arch .ed-hero-name{font-size:40px;font-weight:var(--heading-weight,400);letter-spacing:var(--heading-spacing,-.02em);text-transform:var(--heading-transform,none);color:var(--hero-text,#fff);text-shadow:0 8px 32px #00000080;margin-bottom:12px;line-height:1.1}.ed-hero-arch .ed-hero-title{letter-spacing:.08em;text-transform:uppercase;color:var(--hero-subtitle,#ffffffe6);text-shadow:0 2px 12px #0006;margin-bottom:24px;font-size:14px;font-weight:600}.ed-hero-minimal{flex-direction:column;align-items:flex-start;width:100%;padding:40px 16px 32px;display:flex;position:relative}.ed-hero-minimal .ed-hero-top{align-items:center;gap:20px;margin-bottom:32px;display:flex}.ed-hero-minimal .ed-hero-portrait{object-fit:cover;border:2px solid #fff3;border-radius:50%;width:80px;height:80px;transition:border-radius .3s;box-shadow:0 16px 32px -8px #0006}.ed-hero-minimal .ed-hero-name{font-size:32px;font-weight:var(--heading-weight,500);letter-spacing:var(--heading-spacing,-.02em);text-transform:var(--heading-transform,none);color:var(--hero-text,#fff);text-shadow:0 4px 16px #00000080;margin-bottom:4px;line-height:1.1}.ed-hero-minimal .ed-hero-title{letter-spacing:.08em;text-transform:uppercase;color:var(--hero-subtitle,#ffffffe6);text-shadow:0 2px 12px #0006;font-size:13px;font-weight:600}.ed-hero-minimal .ed-hero-quote{color:var(--hero-subtitle,#fffffff2);text-shadow:0 2px 16px #0006;font-size:24px;font-weight:400;line-height:1.4}.ed-hero-card{background:var(--color-surface-paper);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-float);flex-direction:column;align-items:flex-start;margin-top:16px;padding:24px;transition:border-radius .3s;display:flex;position:relative}.ed-hero-card .ed-hero-portrait{border-radius:var(--radius-sm);object-fit:cover;width:100%;height:260px;box-shadow:var(--shadow-soft);margin-bottom:24px;transition:border-radius .3s}.ed-hero-card .ed-hero-name{font-size:36px;font-weight:var(--heading-weight,500);letter-spacing:var(--heading-spacing,-.02em);text-transform:var(--heading-transform,none);color:var(--hero-text,var(--color-ink));margin-bottom:8px;line-height:1.1}.ed-hero-card .ed-hero-title{letter-spacing:.08em;text-transform:uppercase;color:var(--hero-subtitle,var(--color-ink-muted));margin-bottom:24px;font-size:13px;font-weight:600}.ed-hero-card .ed-hero-quote{color:var(--color-ink-light);border-left:2px solid var(--color-ink-faint);padding-left:16px;font-size:19px;font-style:italic;line-height:1.5}.ed-tag-cluster{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.ed-tag{border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(8px);color:var(--color-ink);box-shadow:var(--shadow-soft);background:#fff6;border:1px solid #fff9;padding:10px 18px;font-size:14px;font-weight:500;transition:all .2s}.ed-tag:hover{background:#fff9;transform:translateY(-2px)}.ed-modality-item{border-bottom:var(--border-hairline);padding:24px 0}.ed-modality-item:last-child{border-bottom:none;padding-bottom:0}.ed-modality-name{font-size:20px;font-family:var(--font-serif);color:var(--color-ink);margin-bottom:8px;font-weight:500}.ed-modality-desc{color:var(--color-ink-muted);font-size:15px;line-height:1.6}.ed-avail-flex{justify-content:space-between;align-items:center;display:flex}.ed-avail-date{color:var(--color-ink);font-size:18px;font-weight:500;display:block}.ed-avail-time{color:var(--color-ink-muted);margin-top:2px;font-size:14px}.ed-avail-book-btn{background:var(--color-ink);color:#fff;border-radius:var(--radius-sm);letter-spacing:.02em;cursor:pointer;border:none;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s,transform .2s,border-radius .3s}.ed-avail-book-btn:hover{background:#000;transform:translateY(-1px)}.ed-approach-prose{color:var(--color-ink);white-space:pre-line;font-size:17px;line-height:1.6}.ed-approach-prose:first-letter{font-family:var(--font-serif);float:left;color:var(--color-ink);margin:4px 8px 0 0;font-size:48px;line-height:1}.ed-audio-player{background:var(--color-surface-stone);border-radius:var(--radius-sm);cursor:pointer;border:1px solid #1c19170d;align-items:center;gap:12px;margin-bottom:28px;padding:6px 16px 6px 6px;transition:all .3s;display:inline-flex}.ed-audio-player:hover{background:#e0ddd8}.ed-audio-icon-wrapper{background:var(--color-ink);width:34px;height:34px;color:var(--color-surface-paper);border-radius:50%;justify-content:center;align-items:center;transition:all .3s;display:flex}.ed-audio-text{color:var(--color-ink);font-size:14px;font-weight:500}.ed-audio-playing .ed-audio-icon-wrapper{background:var(--color-ink-light)}.ed-service-row{border-bottom:var(--border-hairline);justify-content:space-between;align-items:baseline;padding:20px 0;display:flex}.ed-service-row:last-child{border-bottom:none;padding-bottom:0}.ed-service-name{color:var(--color-ink);margin-bottom:2px;font-size:16px;font-weight:500}.ed-service-desc{color:var(--color-ink-muted);font-size:14px}.ed-service-price{font-family:var(--font-serif);color:var(--color-ink);font-size:20px}.ed-mag-list{flex-direction:column;gap:0;display:flex}.ed-mag-item{border-bottom:var(--border-hairline);cursor:pointer;justify-content:space-between;align-items:center;padding:24px 0;display:flex}.ed-mag-item:last-child{border-bottom:none}.ed-mag-content{flex:1;padding-right:16px}.ed-mag-title{font-family:var(--font-serif);color:var(--color-ink);margin-bottom:6px;font-size:20px;line-height:1.3;transition:color .2s}.ed-mag-item:hover .ed-mag-title{color:var(--color-ink-light)}.ed-mag-icon{color:var(--color-ink-faint);transition:transform .3s,color .3s}.ed-mag-item:hover .ed-mag-icon{color:var(--color-ink);transform:translate(4px,-4px)}.ed-carousel-wrapper{scroll-snap-type:x mandatory;scrollbar-width:none;gap:16px;margin:0 -24px;padding:0 24px 8px;display:flex;overflow-x:auto}.ed-carousel-wrapper::-webkit-scrollbar{display:none}.ed-carousel-card{scroll-snap-align:start;border-radius:var(--radius-sm);border:var(--border-hairline);box-shadow:var(--shadow-soft);cursor:pointer;background:#fff;flex-direction:column;flex:0 0 260px;justify-content:space-between;min-height:140px;padding:20px 24px;transition:transform .2s,box-shadow .2s,border-radius .3s;display:flex}.ed-carousel-card:hover{box-shadow:var(--shadow-float);transform:translateY(-4px)}.ed-btn-light{background:var(--color-surface-paper);color:var(--color-ink);border-radius:var(--radius-sm);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:32px;padding:18px 32px;font-size:14px;font-weight:600;transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s,border-radius .3s;display:inline-flex;box-shadow:0 8px 24px #00000026}.ed-btn-light:hover{background:#fff;transform:translateY(-2px)}.ed-btn-dark{background:var(--color-ink);color:#fff;border-radius:var(--radius-sm);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:18px 32px;font-size:14px;font-weight:600;transition:transform .2s,background .2s,border-radius .3s;display:inline-flex;box-shadow:0 8px 24px #00000026}.ed-btn-dark:hover{background:#000;transform:translateY(-2px)}.ed-btn-dark:disabled{background:var(--color-ink-faint);cursor:not-allowed;box-shadow:none;transform:none}.ed-btn-outline{color:var(--color-ink);border-radius:var(--radius-sm);border:1px solid var(--border-hairline);cursor:pointer;background:0 0;flex:1;justify-content:center;align-items:center;padding:14px 16px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.ed-btn-outline:hover{border-color:var(--color-ink-light);background:#1c191708}.ed-booking-card{background:var(--color-surface-paper);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);border:1px solid #fff9;flex-direction:column;width:100%;transition:border-radius .3s;display:flex;overflow:hidden}.ed-booking-header{border-bottom:var(--border-hairline);background:var(--color-surface-paper);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.ed-booking-back{color:var(--color-ink-muted);cursor:pointer;background:0 0;border:none;align-items:center;margin-left:-4px;padding:4px;transition:color .2s;display:flex}.ed-booking-back:hover{color:var(--color-ink)}.ed-booking-body{background:var(--color-surface-paper);scrollbar-width:none;height:420px;position:relative;overflow:hidden auto}.ed-booking-body::-webkit-scrollbar{display:none}.ed-booking-footer{background:var(--color-surface-paper);border-top:var(--border-hairline);z-index:10;padding:20px 24px 24px}.ed-selectable-card{border-radius:var(--radius-sm);border:1px solid var(--border-hairline);cursor:pointer;text-align:left;background:0 0;align-items:flex-start;gap:16px;width:100%;margin-bottom:12px;padding:20px;transition:all .2s;display:flex}.ed-selectable-card[data-active=true]{border-color:var(--color-ink);background:#1c191705}.ed-selectable-radio{border:1px solid var(--color-ink-faint);border-radius:50%;flex:0 0 20px;justify-content:center;align-items:center;width:20px;height:20px;margin-top:2px;transition:all .2s;display:flex}.ed-selectable-card[data-active=true] .ed-selectable-radio{border-color:var(--color-ink);background:var(--color-ink)}.ed-selectable-radio:after{content:"";opacity:0;background:#fff;border-radius:50%;width:8px;height:8px;transition:opacity .2s}.ed-selectable-card[data-active=true] .ed-selectable-radio:after{opacity:1}.ed-calendar-strip{scrollbar-width:none;gap:12px;margin:0 -24px;padding:4px 24px 16px;display:flex;overflow-x:auto}.ed-calendar-strip::-webkit-scrollbar{display:none}.ed-date-bubble{border-radius:var(--radius-sm);border:1px solid var(--border-hairline);cursor:pointer;background:#fff;flex-direction:column;flex:0 0 64px;justify-content:center;align-items:center;height:84px;transition:all .2s;display:flex}.ed-date-bubble[data-active=true]{background:var(--color-ink);border-color:var(--color-ink);color:#fff;box-shadow:0 10px 20px -5px #0003}.ed-date-day{text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:11px;font-weight:600}.ed-date-bubble[data-active=false] .ed-date-day{color:var(--color-ink-muted)}.ed-date-num{font-family:var(--font-serif);font-size:24px;line-height:1}.ed-time-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.ed-time-slot{text-align:center;border-radius:var(--radius-sm);border:1px solid var(--border-hairline);cursor:pointer;background:#fff;padding:16px;font-size:15px;font-weight:500;transition:all .2s}.ed-time-slot[data-active=true]{background:var(--color-ink);border-color:var(--color-ink);color:#fff}.ed-input-group{text-align:left;margin-bottom:24px}.ed-input-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-muted);margin-bottom:8px;font-size:11px;font-weight:600;display:block}.ed-input{border:none;border-bottom:1px solid var(--border-hairline);width:100%;font-family:var(--font-sans);color:var(--color-ink);background:0 0;outline:none;padding:12px 0;font-size:17px;transition:border-color .3s}.ed-input:focus{border-bottom-color:var(--color-ink)}.ed-input::placeholder{color:var(--color-ink-faint);font-weight:300}.ed-textarea{border:none;border-bottom:1px solid var(--border-hairline);width:100%;font-family:var(--font-sans);color:var(--color-ink);resize:none;background:0 0;outline:none;min-height:80px;padding:12px 0;font-size:17px;transition:border-color .3s}.ed-textarea:focus{border-bottom-color:var(--color-ink)}.ed-textarea::placeholder{color:var(--color-ink-faint);font-weight:300}.ed-contact-row{border-bottom:var(--border-hairline);color:var(--color-ink);cursor:pointer;align-items:center;gap:16px;padding:20px 0;text-decoration:none;display:flex}.ed-contact-row:last-child{border-bottom:none;padding-bottom:0}.ed-contact-icon{width:44px;height:44px;color:var(--color-ink);background:#fff;border:1px solid #1c19170d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .3s;display:flex}.ed-contact-content{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.ed-contact-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-muted);margin-bottom:2px;font-size:11px;font-weight:600}.ed-contact-value{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:18px;transition:color .3s;overflow:hidden}.ed-contact-arrow{color:var(--color-ink-faint);flex-shrink:0;transition:transform .3s,color .3s}.ed-contact-row:hover .ed-contact-icon{background:var(--color-ink);color:#fff;border-color:var(--color-ink);transform:scale(1.05)}.ed-contact-row:hover .ed-contact-value{color:var(--color-ink-light)}.ed-contact-row:hover .ed-contact-arrow{color:var(--color-ink);transform:translate(4px,-4px)}.control-panel{z-index:1000;-webkit-backdrop-filter:blur(20px);background:#f5f5f4e6;border-bottom:1px solid #1c191714;margin:0 -24px 48px;padding:24px 0;position:sticky;top:0}.control-container{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:32px;max-width:1400px;margin:0 auto;padding:0 24px;display:flex}.control-group{flex-direction:column;gap:8px;display:flex}.control-label{color:#44403c;text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.control-buttons{flex-wrap:wrap;gap:8px;display:flex}.control-btn{color:#78716c;cursor:pointer;background:#fff;border:1px solid #1c191714;border-radius:100px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.control-btn[data-active=true]{color:#fff;background:#1c1917;border-color:#1c1917}.showcase-header{text-align:center;margin-bottom:48px}.showcase-title{color:#1c1917;margin-bottom:8px;font-size:36px}.showcase-subtitle{color:#78716c;font-size:16px}.showcase-grid{grid-template-columns:repeat(auto-fit,minmax(390px,1fr));justify-items:center;gap:40px;max-width:1400px;margin:0 auto;display:grid}
