@font-face{font-family:DreamBig;src:url(/fonts/DreamBig-Anima.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0041,U+0061,U+006D,U+0069,U+006E}:root{--bg: #faf8fd;--bg-wash: #efe9f7;--bg-soft: #e6dcf2;--surface: #ffffff;--text: #2a223a;--text-soft: #5f5675;--text-muted: #8a82a0;--primary: #8b6db5;--primary-deep: #5d4a87;--primary-darker: #3e3260;--accent: #d27a3b;--accent-soft: #f4d9c1;--accent-deep: #a85a26;--gold: #b9a36a;--border: #ddd3ec;--border-soft: #ece4f4;--shadow: 0 1px 2px rgba(60, 40, 90, .06), 0 4px 16px rgba(60, 40, 90, .06);--radius: 8px;--max: 72rem;--measure: 38rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:Georgia,Iowan Old Style,Palatino Linotype,Book Antiqua,Palatino,serif;font-weight:600;line-height:1.25;letter-spacing:-.005em;color:var(--primary-deep);margin:0 0 .6em}h1{font-size:clamp(2rem,4.5vw,3rem);color:var(--text)}h2{font-size:clamp(1.5rem,2.6vw,1.95rem);margin-top:2.2em}h3{font-size:1.25rem;margin-top:1.8em;color:var(--primary-deep)}p,ul,ol{margin:0 0 1em;max-width:var(--measure)}a{color:var(--primary-deep);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:var(--primary);text-underline-offset:2px}a:hover{color:var(--accent-deep);text-decoration-color:var(--accent)}img{max-width:100%;height:auto;display:block}.container{max-width:var(--max);margin:0 auto;padding:0 1.5rem}.prose{max-width:var(--measure)}.site-header{background:#faf8fdeb;backdrop-filter:saturate(140%) blur(6px);border-bottom:1px solid var(--border-soft);position:sticky;top:0;z-index:10}.site-header__inner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;max-width:var(--max);margin:0 auto;gap:1rem;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none}.brand img{height:72px;width:auto}.brand-text-group{display:flex;flex-direction:column;align-items:center;gap:0;line-height:1}.brand-text{font-family:DreamBig,cursive;font-size:2.6rem;font-weight:400;color:var(--primary);line-height:1;letter-spacing:.01em}.brand-sub{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);line-height:1;margin-top:.3rem}.nav{display:flex;gap:1.4rem;flex-wrap:wrap}.nav a{text-decoration:none;color:var(--text-soft);font-size:.95rem}.nav a:hover{color:var(--primary-deep)}.nav a[aria-current=page]{color:var(--primary-deep);border-bottom:2px solid var(--accent);padding-bottom:2px}.hero{position:relative;padding:4.5rem 0 3.5rem;background:linear-gradient(180deg,rgba(250,248,253,0) 0%,var(--bg) 100%),linear-gradient(180deg,var(--bg-wash) 0%,var(--bg) 100%);border-bottom:1px solid var(--border-soft);overflow:hidden}.hero__inner{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}.hero__copy h1{margin-top:0}.hero p.lead{font-size:1.18rem;color:var(--text-soft);max-width:34rem}.hero__image{border-radius:12px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border-soft);aspect-ratio:4 / 3}.hero__image img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.hero__inner{grid-template-columns:1fr;gap:2rem}.hero{padding:3rem 0 2.5rem}}.page-hero{background:var(--bg-wash);border-bottom:1px solid var(--border-soft);padding:3rem 0 2rem}.page-hero p.lead{color:var(--text-soft);font-size:1.1rem;max-width:var(--measure)}main{padding:0}section.block{margin-bottom:2.5rem}.section{padding:4.5rem 0;border-bottom:1px solid var(--border-soft);scroll-margin-top:84px}.section:last-of-type{border-bottom:0}.section--plain{background:var(--bg)}.section--wash{background:var(--bg-wash)}.section-photo-bottom{margin:2.5rem 0 0;border-radius:12px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border-soft)}.section-photo-bottom img{width:100%;height:auto;display:block}.modalities-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:2.5rem;align-items:stretch;margin:1.25rem 0 2.5rem}.modalities-grid__content{min-width:0}.modalities-grid__content>h3:first-child{margin-top:.25rem}.modalities-grid__intro{display:flex;flex-direction:column;height:100%}.modalities-grid__intro-copy{margin-top:auto}.modalities-grid__photo{border-radius:12px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border-soft);aspect-ratio:4 / 3;background:var(--bg-soft)}.modalities-grid__photo img{width:100%;height:100%;object-fit:cover;display:block}@media(max-width:760px){.modalities-grid{grid-template-columns:1fr;gap:1.75rem}.modalities-grid__photo{position:static;max-width:22rem;margin:0 auto}}.about-head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2.5rem;align-items:start}.about-head__photo{border-radius:12px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border-soft);aspect-ratio:4 / 5;background:var(--bg-soft)}.about-head__photo img{width:100%;height:100%;object-fit:cover;object-position:center top}@media(max-width:760px){.about-head{grid-template-columns:1fr;gap:1.75rem}.about-head__photo{max-width:22rem;margin:0 auto}}.section-head{margin:0 0 1.5rem;padding-bottom:1.25rem;border-bottom:2px solid var(--accent)}.section-head h2{margin:.25rem 0 .5rem}.section-head p.lead{font-size:1.1rem;color:var(--text-soft);margin:0}@media(max-width:640px){.section{padding:3rem 0}}.split{display:grid;grid-template-columns:1.2fr 1fr;gap:2.5rem;align-items:center;margin:2.5rem 0}.split--reverse{grid-template-columns:1fr 1.2fr}.split--top{align-items:start}.split__image{border-radius:12px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border-soft);aspect-ratio:4 / 3}.split__image img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.split,.split--reverse{grid-template-columns:1fr}}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.25rem;margin:1.5rem 0;max-width:100%}.card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow);border-top:3px solid var(--primary)}.card--accent{border-top-color:var(--accent)}.card h3{margin-top:0}.card p{max-width:none}.tag{display:inline-block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-deep);background:var(--accent-soft);padding:2px 8px;border-radius:3px;margin-left:.5rem;vertical-align:middle;font-weight:600}.plain-list{list-style:none;padding:0;max-width:var(--measure)}.plain-list li{padding:.55rem 0;border-bottom:1px solid var(--border-soft)}.plain-list li:last-child{border-bottom:0}.price-list{list-style:none;padding:0;max-width:var(--measure)}.price-list li{display:flex;justify-content:space-between;align-items:baseline;padding:.65rem 0;border-bottom:1px dashed var(--border);gap:1rem}.price-list li:last-child{border-bottom:0}.price-list .price{color:var(--accent-deep);font-weight:600;white-space:nowrap}.pullquote{border-left:4px solid var(--accent);padding:.5rem 1.25rem;margin:2rem 0;font-family:Georgia,serif;font-style:italic;font-size:1.15rem;color:var(--primary-deep);max-width:var(--measure)}.disclaimer{background:#fff5ec;border-left:3px solid var(--accent);padding:1rem 1.25rem;border-radius:var(--radius);font-size:.95rem;color:var(--text);margin:1.5rem 0;max-width:var(--measure)}.disclaimer strong{color:var(--accent-deep)}.form-grid{display:grid;gap:1rem;max-width:var(--measure);margin:1.5rem 0}.form-grid label{display:block;font-size:.9rem;font-weight:600;margin-bottom:.3rem;color:var(--primary-deep)}.form-grid input,.form-grid textarea,.form-grid select{width:100%;padding:.7rem .85rem;font-family:inherit;font-size:1rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius)}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.form-grid textarea{min-height:8rem;resize:vertical}.btn{display:inline-block;background:var(--primary-deep);color:#fff;border:0;padding:.8rem 1.6rem;font:inherit;font-weight:600;border-radius:var(--radius);cursor:pointer;text-decoration:none;transition:background .15s ease}.btn:hover{background:var(--primary-darker);color:#fff}.btn--accent{background:var(--accent)}.btn--accent:hover{background:var(--accent-deep)}.btn--ghost{background:transparent;color:var(--primary-deep);border:1.5px solid var(--primary)}.btn--ghost:hover{background:var(--bg-wash);color:var(--primary-darker)}.contact-details{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:1.5rem;max-width:var(--measure);margin:1.5rem 0;box-shadow:var(--shadow)}.contact-details dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-deep);margin-top:.85rem;font-weight:600}.contact-details dt:first-of-type{margin-top:0}.contact-details dd{margin:.2rem 0 0;font-size:1.05rem;color:var(--text)}.site-footer{background:var(--bg-wash);border-top:1px solid var(--border-soft);padding:2.5rem 0 2rem;margin-top:3rem;font-size:.9rem;color:var(--text-soft)}.site-footer .container{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:2rem}.site-footer h4{font-family:Georgia,serif;font-size:.95rem;letter-spacing:.02em;color:var(--primary-deep);margin:0 0 .75rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{padding:.2rem 0}.site-footer a{color:var(--text-soft);text-decoration-color:var(--primary)}.site-footer a:hover{color:var(--accent-deep)}.site-footer .legal{grid-column:1 / -1;border-top:1px solid var(--border);padding-top:1.5rem;margin-top:1rem;font-size:.8rem;line-height:1.6;color:var(--text-muted)}.site-footer .legal strong{color:var(--accent-deep)}.footer-logo{height:80px;width:auto;margin-bottom:.75rem}.footer-badge{display:flex;align-items:flex-start;justify-content:flex-end}.footer-badge img{width:130px;height:auto}.cta-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.75rem}.muted{color:var(--text-soft)}.center{text-align:center}.tag-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
