:root{--bg:#fbf3f4;--surface:#fbfefd;--surface-glass:#fbf3f4e6;--surface-float:#fbfefdd9;--surface-reading:#e9f6f2f2;--ink:#242c34;--ink-soft:#3d4851;--muted:#5d6870;--pink:#f06d9f;--pink-ink:#c22f68;--pink-button:#c8336d;--pink-button-hover:#b02a5e;--pink-soft:#ffe9ed;--pink-tint:#fdf1f3;--hero-pink:#d1477f;--hero-teal:#2f8a8f;--teal:#62b4b6;--teal-ink:#2b7479;--teal-soft:#e3f4f3;--teal-tint:#edf8f7;--teal-line:#cde8e6;--lilac-tint:#f5f0fd;--lilac-line:#e3d9f5;--line:#f0dbe1;--line-strong:#ebc3d1;--note-bg:#fff2c9;--note-ink:#5b4600;--error:#a1221b;--error-line:#b3261e;--error-bg:#fdecea;--error-ink:#8c1d18;--ok-ink:#1d5b5f;--field-line:#8c7a82;--focus:#1f6b70;--glow:#fff;--shadow:0 9px 25px #6c3b4b14;--shadow-hover:0 14px 30px #6c3b4b1f;--card:#e9f6f2;--card-tint:#d8efea;--card-warm:var(--card);--card-line:#c6e3dd;--card-shadow:0 1px 3px #2b74790f, 0 10px 28px #6c3b4b1f;--card-shadow-hover:0 2px 5px #2b747914, 0 16px 34px #6c3b4b29;--card-shadow-flat:0 1px 3px #2b74790f, 0 6px 18px #6c3b4b14;--bg-art-opacity:.85;--bg-veil:#f3d3dc2e;--radius:24px;--display:"Trebuchet MS", "Avenir Next", system-ui, sans-serif;--body:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--hand:"Comic Sans MS", "Segoe Print", "Bradley Hand", cursive;--header-h:84px;--section-nav-h:0px;--space-xs:8px;--space-s:14px;--space-m:24px;--space-l:clamp(28px, 1.6rem + 1vw, 40px);--space-xl:clamp(52px, 2.4rem + 3vw, 88px);color-scheme:light}:root[data-theme=dark]{--bg:#2c1829;--surface:#221e29;--surface-glass:#21131ee6;--surface-float:#221e29e0;--surface-reading:#1f1b26f2;--ink:#f3ecf1;--ink-soft:#ddd4db;--muted:#b6abb5;--pink:#f27ba8;--pink-ink:#ff9ec3;--pink-button:#c8336d;--pink-button-hover:#a82a5b;--pink-soft:#3a2331;--pink-tint:#2a1f2b;--hero-pink:#ff9ec3;--hero-teal:#86d8d3;--teal:#62b4b6;--teal-ink:#86d8d3;--teal-soft:#1c3335;--teal-tint:#1d282c;--teal-line:#2f4d4f;--lilac-tint:#251f34;--lilac-line:#3e3556;--line:#3a3140;--line-strong:#5f4757;--note-bg:#3d3416;--note-ink:#f4dc8a;--error:#ff9b93;--error-line:#ff7a70;--error-bg:#3c1f22;--error-ink:#ffbcb6;--ok-ink:#a8e7e3;--field-line:#8e8190;--focus:#8fe3de;--glow:#17141d;--shadow:0 9px 25px #0000004d;--shadow-hover:0 14px 30px #0006;--card:var(--surface);--card-tint:var(--teal-tint);--card-warm:var(--pink-tint);--card-line:var(--line);--card-shadow:var(--shadow);--card-shadow-hover:var(--shadow-hover);--card-shadow-flat:none;--bg-art-opacity:1;--bg-veil:#1a0f1838;color-scheme:dark}@media (width<=1099.98px){:root{--header-h:68px}}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-h) + var(--section-nav-h) + 20px);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{isolation:isolate;background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--body);flex-direction:column;margin:0;font-size:1rem;line-height:1.6;display:flex;position:relative;overflow-x:clip}main{flex-direction:column;flex:1 0 auto;display:flex}main:focus{outline:none}img,svg{max-width:100%;height:auto}a{color:var(--pink-ink);text-underline-offset:.18em}a:hover{color:var(--ink)}button{font:inherit;color:inherit}h1,h2,h3{font-family:var(--display);overflow-wrap:break-word;line-height:1.15}h1,h2,h3,h4,summary{text-wrap:balance}p,li,dt,dd{overflow-wrap:break-word;text-wrap:pretty}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}.wrap{width:min(1240px,100% - 64px);margin-inline:auto}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--surface);color:var(--ink);box-shadow:var(--shadow);border-radius:12px;padding:12px 18px;font-weight:700;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:none}.scroll-sentinel{pointer-events:none;width:1px;height:1px;position:absolute;top:min(50vh,420px);left:0}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(var(--bg-veil), var(--bg-veil)), url(/_astro/site-bg-no-hearts.DO9qAkxZ.webp) center / cover no-repeat;opacity:var(--bg-art-opacity);position:fixed;inset:0}:root[data-theme=dark] body:before{background-image:linear-gradient(var(--bg-veil), var(--bg-veil)), url(/_astro/site-bg-dark.Di5QGpRq.webp)}.button{border:1px solid #0000;border-radius:50px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 26px;font-size:.95rem;font-weight:750;line-height:1.3;text-decoration:none;transition:transform .18s,box-shadow .18s,background-color .18s;display:inline-flex;box-shadow:0 3px 9px #65344b17}.button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #65344b24}.button-pink{background:var(--pink-button);color:#fff}.button-pink:hover{background:var(--pink-button-hover);color:#fff}.button-white{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.button-white:hover{color:var(--pink-ink)}.kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--pink-ink);margin:0 0 8px;font-size:.78rem;font-weight:800}.chips{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.chips li{background:var(--surface);border:1px solid var(--line);color:var(--ink-soft);border-radius:99px;padding:6px 14px;font-size:.85rem;font-weight:650}.site-header{z-index:50;isolation:isolate;position:sticky;top:0}.site-header:before{content:"";z-index:-1;background:var(--surface-glass);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);position:absolute;inset:0}.header-inner{min-height:var(--header-h);align-items:center;gap:20px;display:flex}.brand{align-items:center;gap:10px;min-width:0;margin-right:auto;text-decoration:none;display:flex}.brand-mark{flex:none;width:48px;height:48px}.brand-text{font-family:var(--display);letter-spacing:-1.2px;color:var(--pink-ink);font-size:1.7rem;font-weight:800;line-height:1}.brand-text small{font:500 .68rem var(--body);letter-spacing:0;color:var(--muted);margin-top:5px;display:block}.menu-toggle{order:1}.site-menu{order:2}.theme-toggle{order:3}.lang-switch{border:1px solid var(--line-strong);background:var(--surface);border-radius:50px;order:4;align-items:center;gap:2px;margin:0;padding:3px;font-size:.8rem;font-weight:800;display:flex}.lang-current,.lang-switch a{border-radius:40px;place-items:center;min-width:40px;min-height:36px;padding:0 8px;display:grid}.lang-current{background:var(--pink-button);color:#fff}.lang-switch a{color:var(--muted);text-decoration:none}.lang-switch a:hover{color:var(--pink-ink);background:var(--pink-soft)}.theme-toggle{border:1px solid var(--line-strong);background:var(--surface);width:44px;height:44px;color:var(--pink-ink);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.theme-toggle:hover{background:var(--pink-soft)}.theme-toggle .theme-sun,.theme-toggle[aria-pressed=true] .theme-moon{display:none}.theme-toggle[aria-pressed=true] .theme-sun{display:block}html:not(.js) .theme-toggle,.menu-toggle{display:none}.nav-list{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.nav-link{min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:6px;padding:8px 12px;font-size:.9rem;font-weight:650;text-decoration:none;display:inline-flex;position:relative}.nav-link:hover{color:var(--pink-ink);background:var(--pink-soft)}.nav-link[aria-current=page],.sub-toggle.is-active{color:var(--pink-ink);font-weight:800}.nav-link[aria-current=page]:after,.sub-toggle.is-active:after{content:"";background:currentColor;border-radius:3px;height:3px;position:absolute;bottom:4px;left:12px;right:12px}.nav-cta{background:var(--pink-button);color:#fff;border-radius:50px;margin-left:6px;padding-inline:20px}.nav-cta:hover{background:var(--pink-button-hover);color:#fff}.nav-cta[aria-current=page]{color:#fff}.nav-cta[aria-current=page]:after{background:#fff;left:20px;right:20px}.chevron{transition:transform .2s}.sub-toggle[aria-expanded=true] .chevron{transform:rotate(180deg)}.has-sub{position:relative}.sub-list{margin:0;padding:8px;list-style:none}.sub-list a{min-height:44px;color:var(--ink);border-radius:10px;align-items:center;padding:8px 14px;font-weight:600;text-decoration:none;display:flex}.sub-list a:hover{background:var(--pink-soft);color:var(--pink-ink)}.sub-list a[aria-current=page]{color:var(--pink-ink);font-weight:800;text-decoration:underline 2px}@media (width>=1100px){.sub-list{background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:260px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 14px 34px #6c3b4b22}.js .sub-list{display:none}.js .sub-toggle[aria-expanded=true]+.sub-list{display:block}html:not(.js) .sub-list{display:none}html:not(.js) .has-sub:hover .sub-list,html:not(.js) .has-sub:focus-within .sub-list{display:block}}@media (width<=1099.98px){.header-inner{gap:10px}.brand-mark{width:40px;height:40px}.brand-text{font-size:1.45rem}.js .menu-toggle{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:50px;align-items:center;gap:8px;min-height:44px;padding:6px 14px;font-size:.85rem;font-weight:750;display:inline-flex}.menu-icon{width:16px;height:12px;position:relative}.menu-icon:before,.menu-icon:after,.menu-icon span{content:"";background:currentColor;border-radius:2px;width:16px;height:2px;transition:transform .2s,opacity .2s;position:absolute;left:0}.menu-icon:before{top:0}.menu-icon span{top:5px}.menu-icon:after{top:10px}.menu-toggle[aria-expanded=true] .menu-icon:before{transform:translateY(5px)rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon span{opacity:0}.menu-toggle[aria-expanded=true] .menu-icon:after{transform:translateY(-5px)rotate(-45deg)}.js .site-menu{inset:var(--header-h) 0 0;overscroll-behavior:contain;background:var(--bg);border-top:1px solid var(--line);padding:16px 18px 40px;display:none;position:fixed;overflow-y:auto}.js.menu-open .site-menu{display:block}.nav-list{flex-direction:column;align-items:stretch;gap:2px;max-width:560px;margin-inline:auto}.nav-link{justify-content:space-between;width:100%;min-height:48px;padding:10px 14px;font-size:1.05rem}.nav-link[aria-current=page]:after,.sub-toggle.is-active:after{width:32px;bottom:6px;left:14px;right:auto}.nav-cta{justify-content:center;margin:12px 0 0}.nav-cta[aria-current=page]:after{left:50%;translate:-50%}.sub-list{border-left:2px solid var(--line);margin-left:14px;padding:0 0 6px 16px}.js .sub-list{display:none}.js .sub-toggle[aria-expanded=true]+.sub-list{display:block}html:not(.js) .header-inner{flex-wrap:wrap}html:not(.js) .site-menu{order:4;width:100%;padding-bottom:10px}html:not(.js) .nav-list{flex-flow:wrap;max-width:none}html:not(.js) .nav-link{width:auto}}.menu-open{overflow:hidden}@media (width<=520px){.header-inner,.brand{gap:6px}.brand-mark{width:34px;height:34px}.brand-text{letter-spacing:-.8px;font-size:1.25rem}.brand-text small{font-size:.6rem}.lang-current,.lang-switch a{min-width:36px;padding:0 6px}.theme-toggle{width:40px;height:40px}.js .menu-toggle{padding:6px 10px}}@media (width<=380px){.brand-text small{display:none}.menu-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.js .menu-toggle{justify-content:center;width:44px;padding:0}}.page{padding-block:var(--space-m) var(--space-xl)}.page>:last-child{margin-bottom:0}.breadcrumbs ol{margin:0 0 var(--space-s);flex-wrap:wrap;align-items:center;gap:4px 0;padding:0;font-size:.88rem;list-style:none;display:flex}.breadcrumbs li{align-items:center;display:inline-flex}.breadcrumbs li+li:before{content:"›";color:var(--muted);margin-inline:10px}.breadcrumbs a{min-height:32px;color:var(--teal-ink);align-items:center;font-weight:650;display:inline-flex}.breadcrumbs [aria-current=page]{color:var(--muted)}.page-head{max-width:1000px;margin:var(--space-s) 0 var(--space-l)}.page-head h1{letter-spacing:-1.4px;margin:0 0 16px;font-size:clamp(2.1rem,1.4rem + 3vw,3.4rem)}.page-head h1 .accent{color:var(--pink-ink)}.lead{max-width:820px;color:var(--muted);margin:0;font-size:1.15rem}.section{margin-block:0 var(--space-xl)}.section>h2,.rates>h2,.prose h2{letter-spacing:-.8px;margin:0 0 14px;font-size:clamp(1.6rem,1.2rem + 1.6vw,2.3rem)}.section-intro{color:var(--muted);max-width:820px;margin:0 0 var(--space-m)}.section>:last-child{margin-bottom:0}.prose{max-width:760px}.model-form{border:1px dashed var(--line-strong);background:var(--surface);border-radius:16px;margin-top:12px;padding:16px 20px}.model-form ul{padding-left:0;list-style:none}.model-form>:first-child{margin-top:0}.model-form>:last-child{margin-bottom:0}.reading .prose{max-width:none}.prose h2{margin-top:var(--space-l)}.prose>:first-child{margin-top:0}.prose h3{margin:28px 0 8px;font-size:1.2rem}.prose p,.prose li{color:var(--ink-soft)}.prose ul{padding-left:1.3em}.prose li+li{margin-top:6px}.panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.panel-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.panel{border:1px solid var(--card-line);background:linear-gradient(150deg, var(--card-warm), var(--card));box-shadow:var(--card-shadow);border-radius:28px;padding:32px;position:relative}.panel.teal{background:linear-gradient(150deg, var(--card-tint), var(--card));border-color:var(--teal-line)}.panel h2,.panel h3{letter-spacing:-.5px;margin:0 0 10px;font-size:clamp(1.35rem,1.1rem + 1vw,1.8rem)}.panel p{color:var(--ink-soft)}.panel .chips{margin-top:18px}.panel-emblem{background:var(--pink-soft);width:56px;height:56px;color:var(--pink-ink);border-radius:20px;place-items:center;margin-bottom:18px;font-size:1.7rem;display:grid}.panel.teal .panel-emblem{background:var(--teal-soft);color:var(--teal-ink)}.panel-link{align-items:center;gap:6px;min-height:44px;margin-top:12px;font-weight:750;display:inline-flex}.check-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.check-list li{color:var(--ink-soft);padding-left:30px;position:relative}.check-list li:before{content:"✓";color:var(--teal-ink);font-weight:800;position:absolute;top:0;left:0}.note-box{margin-top:var(--space-l);background:var(--teal-soft);border:1px solid var(--teal-line);color:var(--ink-soft);border-radius:20px;padding:20px 24px}.note-box h2,.note-box h3{margin:0 0 6px;font-size:1.15rem}.note-box p{margin:0}.rates{margin-block:0 var(--space-xl)}.rate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.rate-card{border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);box-shadow:var(--card-shadow);text-align:center;padding:28px}.rate-card h3{margin:14px 0 6px;font-size:1.15rem}.rate-card p{color:var(--muted);margin:0;font-size:.95rem}.rate-icon{background:var(--pink-soft);width:52px;height:52px;color:var(--pink-ink);border-radius:50%;place-items:center;margin:auto;font-size:1.6rem;display:grid}.price{font-family:var(--display);font-weight:800;line-height:1.25;color:var(--pink-ink)!important;font-size:2.3rem!important}.per{font-family:var(--body);color:var(--muted);font-size:.9rem;font-weight:500}.group-banner{margin-top:var(--space-m);background:var(--teal-soft);box-shadow:var(--card-shadow-flat);border-radius:22px;justify-content:space-between;align-items:center;gap:20px;padding:22px 28px;display:flex}.group-banner h3{margin:0 0 4px;font-size:1.25rem}.group-banner p{color:var(--ink-soft);margin:0}.tax-note{max-width:720px;margin:var(--space-s) 0 0;color:var(--muted);font-size:.88rem}.faq-group{margin-bottom:var(--space-xl)}.faq-group>h3{margin:var(--space-l) 0 var(--space-s);font-size:1.15rem}.faq-group>h2+h3{margin-top:var(--space-s)}.faq-group>h2{margin:0 0 14px;font-size:1.5rem}.faq-item{border:1px solid var(--card-line);background:var(--card);box-shadow:var(--card-shadow-flat);border-radius:18px;margin-bottom:10px}.faq-item summary{cursor:pointer;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;min-height:52px;padding:14px 20px;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";background:var(--pink-soft);width:28px;height:28px;color:var(--pink-ink);border-radius:50%;flex:none;place-items:center;font-size:1.2rem;display:grid}.faq-item[open] summary:after{content:"−"}.faq-item .answer{color:var(--ink-soft);padding:0 20px 18px}.faq-item .answer p{margin:0 0 8px}.enquiry{max-width:640px;margin:var(--space-xl) auto 0;text-align:center}.enquiry h2{margin:0 0 var(--space-xs);letter-spacing:-.6px;font-size:clamp(1.5rem,1.2rem + 1.2vw,2.1rem)}.enquiry>p{margin:0 0 var(--space-m);color:var(--muted)}.hero{isolation:isolate;grid-template-columns:49% 51%;align-items:center;gap:10px;min-height:640px;padding-block:24px;display:grid;position:relative}.hero-copy,.hero-visual{z-index:2;position:relative}.hero-copy{padding:0 0 20px 15px}.eyebrow{background:var(--pink-soft);color:var(--pink-ink);letter-spacing:.02em;border-radius:50px;align-items:center;gap:6px;margin:0;padding:8px 16px;font-size:.78rem;font-weight:800;display:inline-flex}.eyebrow span{color:#d99a1c}.hero h1{letter-spacing:-2.6px;margin:26px 0 16px;font-size:clamp(2.6rem,4.25vw,4.4rem);font-weight:800;line-height:1.08}.hero h1 span{display:block}.hero h1 .pink{color:var(--hero-pink)}.hero h1 .teal{color:var(--hero-teal)}.hero-intro{max-width:540px;color:var(--ink-soft);margin:14px 0 26px;font-size:1.08rem}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.hero-note{max-width:540px;color:var(--muted);align-items:center;gap:12px;margin:24px 0 0;font-size:.82rem;display:flex}.hero-note span[aria-hidden]{color:#e0a33a;font-size:1.6rem}.hero-visual{justify-content:center;align-items:center;height:560px;display:flex}.portrait-shell{z-index:1;aspect-ratio:1;border:2px solid var(--line);background:linear-gradient(115deg,#a5d6d8,#f7c1c9);border-radius:50%;width:min(500px,76%);padding:10px;position:relative;transform:translate(-12px)}.portrait-shell img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.handnote{z-index:2;font-family:var(--hand);text-shadow:0 0 6px var(--glow), 0 0 12px var(--glow);margin:0;font-size:1.2rem;font-style:italic;line-height:1.5;position:absolute;top:110px;right:-9px;transform:rotate(-5deg)}.handnote span{color:var(--pink);text-align:center;font-size:1.8rem;display:block}.hero-atmosphere{z-index:0;pointer-events:none;position:absolute;inset:0}.floating-word{white-space:nowrap;user-select:none;font-family:var(--display);letter-spacing:.025em;color:#438f96;opacity:.78;text-shadow:0 2px 12px var(--glow);font-size:clamp(13px,1.6vw,22px);font-weight:750;animation:8s ease-in-out infinite alternate gentle-drift;display:block;position:absolute}.word-one{color:#ee8bb1;animation-delay:-2s;top:5%;left:31%;rotate:-12deg}.word-two{color:#77b9bb;animation-delay:-5s;top:2%;right:3%;rotate:9deg}.word-three{color:#e88baf;animation-delay:-3s;bottom:3%;left:44%;rotate:-6deg}.word-four{font-size:15px;animation-delay:-6s;bottom:1%;right:1%;rotate:10deg}.floating-word:before{content:attr(data-word)}@keyframes gentle-drift{0%{translate:0}to{translate:9px -15px}}.home-cards{padding-bottom:var(--space-xl);scroll-margin-top:calc(var(--header-h) + 16px)}.home-cards>h2{margin:0 0 var(--space-m);letter-spacing:-.8px;font-size:clamp(1.6rem,1.2rem + 1.6vw,2.3rem)}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.service-card{border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);height:100%;box-shadow:var(--card-shadow);flex-direction:column;gap:12px;padding:24px 22px;transition:transform .18s,box-shadow .18s;display:flex;position:relative}.service-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-3px)}.service-card:focus-within{outline:3px solid var(--focus);outline-offset:3px}.service-card h3{margin:0;font-size:1.12rem}.service-card h3 a{color:var(--ink);text-decoration:none}.service-card h3 a:after{content:"";border-radius:inherit;position:absolute;inset:0}.service-card h3 a:focus-visible{outline:none}.service-card p{color:var(--muted);margin:0;font-size:.93rem}.service-card .more{color:var(--pink-ink);margin-top:auto;font-size:.9rem;font-weight:750}.service-icon{color:#2d3940;border-radius:50%;place-items:center;width:56px;height:56px;font-size:1.6rem;font-weight:700;display:grid}.blush{background:#ffdce2}.lavender{background:#e8dfff}.aqua{background:#bfe5e4}.peach{background:#ffebd2}.home-contact{padding:0 0 var(--space-xl);text-align:center}.home-contact h2{margin:0 0 var(--space-xs);letter-spacing:-1px;font-size:clamp(1.8rem,1.3rem + 2vw,2.8rem)}.home-contact h2 span{color:var(--pink-ink)}.home-contact>.wrap>p{max-width:620px;margin:0 auto var(--space-m);color:var(--muted)}.chooser{text-align:center;flex:1;place-items:center;padding:40px 0 64px;display:grid}.chooser-logo{width:96px;height:96px;margin:0 auto 12px}.chooser h1{color:var(--pink-ink);letter-spacing:-1.5px;margin:0;font-size:clamp(2.2rem,1.6rem + 3vw,3.4rem)}.chooser-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:640px;margin:32px auto 0;padding:0;list-style:none;display:grid}.chooser-options a{border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);height:100%;box-shadow:var(--card-shadow);color:var(--ink);flex-direction:column;gap:6px;padding:26px 22px;text-decoration:none;display:flex}.chooser-options a:hover{transform:translateY(-2px)}.chooser-options strong{font-family:var(--display);color:var(--pink-ink);font-size:1.5rem}.chooser-options span{color:var(--muted)}.site-footer{border-top:1px solid var(--line);background:var(--surface);color:var(--muted);flex:none;font-size:.9rem}.footer-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 24px;padding-block:10px;display:flex}.footer-copy{align-items:center;gap:8px;margin:0;display:inline-flex}.footer-copy img{width:24px;height:24px}.footer-nav>ul{flex-wrap:wrap;align-items:center;gap:0 6px;margin:0;padding:0;list-style:none;display:flex}.footer-nav a{min-height:44px;color:var(--ink);text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:.2em;overflow-wrap:anywhere;border-radius:10px;align-items:center;padding:0 10px;font-weight:650;display:inline-flex}.footer-nav a:hover{color:var(--pink-ink);background:var(--pink-soft)}.footer-nav a[aria-current]{color:var(--pink-ink);font-weight:800}.footer-email{overflow-wrap:anywhere;align-items:center;min-height:44px;padding:0 10px;font-weight:650;display:inline-flex}.contact-email{color:var(--ink);overflow-wrap:anywhere;align-items:center;gap:10px;margin:0;padding:10px 4px;font-weight:700;display:inline-flex}.contact-email>svg{color:var(--pink-ink);flex:none}.to-top{z-index:40;border:1px solid var(--line-strong);background:var(--surface);width:48px;height:48px;color:var(--pink-ink);box-shadow:var(--shadow);opacity:0;visibility:hidden;border-radius:50%;align-self:flex-end;place-items:center;margin:-48px 20px 20px 0;transition:opacity .2s,visibility .2s,transform .2s;display:grid;position:sticky;bottom:20px}.to-top.is-visible{opacity:1;visibility:visible}.to-top:hover{color:var(--ink);transform:translateY(-2px)}.menu-open .to-top{visibility:hidden}@media (width<=1220px){.handnote{font-size:1rem;top:65px;right:-5px}.hero h1{font-size:clamp(2.5rem,4.2vw,3.75rem)}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.panel-grid.three{grid-template-columns:1fr}}@media (width<=830px){.wrap{width:min(100% - 36px,680px)}body:before{opacity:calc(var(--bg-art-opacity) * .7);background-position:14%}.hero{flex-direction:column;gap:0;padding-top:28px;display:flex}.hero-copy{width:100%;padding:0}.hero h1{font-size:clamp(2.3rem,8.2vw,4rem)}.hero-visual{flex-shrink:0;width:100%;height:430px}.portrait-shell{width:min(380px,77%)}.handnote{font-size:.95rem;top:60px;right:0}.hero-atmosphere{height:430px;inset:auto 0 24px}.floating-word{font-size:14px}.word-one{top:3%;left:2%}.word-two{top:auto;bottom:16%;right:1%}.word-three{bottom:1%;left:2%}.word-four{bottom:1%;right:1%}.panel-grid,.rate-grid{grid-template-columns:1fr}.panel{padding:26px}.group-banner{flex-direction:column;align-items:flex-start}}@media (width<=600px){.chooser-options{grid-template-columns:1fr}}@media (width<=520px){.wrap{width:calc(100% - 32px)}.hero{padding-top:12px}.hero h1{letter-spacing:-1.6px;font-size:clamp(1.75rem,8.6vw,2.9rem)}.hero-intro{font-size:1rem}.hero-visual{height:335px}.portrait-shell{width:min(270px,74%)}.handnote{font-size:.72rem;top:28px;right:-4px}.handnote span{font-size:1.3rem}.hero-atmosphere{height:335px}.floating-word{font-size:12px}.word-one,.word-four{display:none}.word-two{bottom:1%}.service-grid{grid-template-columns:1fr}.page{padding-top:18px}.page-head{margin-bottom:32px}.panel,.rate-card{padding:22px}.to-top{margin-right:12px;bottom:14px}.footer-row{justify-content:center;padding-block:8px}.footer-nav>ul{justify-content:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.floating-word{animation:none}}@media print{.site-header,.to-top,.section-nav-slot,.sibling-nav-slot,.enquiry,body:before{display:none}}.contact-card{border:1px solid var(--card-line);background:var(--card);box-shadow:var(--card-shadow);border-radius:22px;padding:28px}.contact-buttons{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.contact-buttons .contact-note{margin:-2px 0 10px}.cta-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.cta-actions.center{justify-content:center}.contact-buttons .button{overflow-wrap:anywhere}.contact-note{color:var(--muted);flex-basis:100%;margin:0;font-size:.88rem}.cta-actions.center .contact-note{text-align:center}.schedule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.schedule-card{border:1px solid var(--card-line);background:linear-gradient(150deg, var(--card-warm), var(--card));box-shadow:var(--card-shadow);border-radius:22px;padding:24px 26px}.schedule-card.teal{background:linear-gradient(150deg, var(--card-tint), var(--card));border-color:var(--teal-line)}.schedule-card h3{flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0;font-size:1.3rem;display:flex}.badge-line{margin:0 0 12px}.badge{background:var(--note-bg);color:var(--note-ink);font-family:var(--body);letter-spacing:.02em;border-radius:99px;padding:2px 10px;font-size:.75rem;font-weight:800}.schedule-lead{color:var(--muted);margin:4px 0 14px;font-size:.95rem}.schedule-times{grid-template-columns:auto 1fr;gap:6px 16px;margin:0 0 8px;display:grid}.schedule-times div{display:contents}.schedule-times dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-self:center;font-size:.8rem;font-weight:800}.schedule-times dd{font-family:var(--display);color:var(--ink);margin:0;font-size:1.15rem;font-weight:800}.schedule-zone{color:var(--muted);margin:0 0 12px;font-size:.85rem}.schedule-notes{color:var(--ink-soft);margin:0;padding-left:1.2em;font-size:.93rem}.schedule-notes li+li{margin-top:4px}.direct-card{background:var(--card)}.direct-card .contact-buttons{flex-direction:column;align-items:flex-start;gap:10px}.direct-card .contact-email{padding:0}.direct-card .contact-options>.contact-note{margin-top:12px}@media (width<=1000px){.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.direct-card{grid-column:1/-1}.direct-card .contact-buttons{flex-direction:row;align-items:center;gap:10px 24px}}@media (width<=600px){.schedule-grid{grid-template-columns:1fr}.direct-card .contact-buttons{flex-direction:column;align-items:flex-start}}.contact-options>.contact-note{margin-top:10px}.sibling-nav-slot{margin:0 0 var(--space-s)}.sibling-nav ul{flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sibling-nav a{border:1px solid var(--line-strong);background:var(--surface-float);min-height:40px;color:var(--ink);border-radius:99px;align-items:center;padding:6px 16px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.sibling-nav a:hover{color:var(--pink-ink);background:var(--pink-soft)}.sibling-nav a[aria-current=page]{background:var(--pink-button);border-color:var(--pink-button);color:#fff}.sibling-nav.is-floating{scrollbar-width:none;border:1px solid var(--line-strong);background:var(--surface-float);backdrop-filter:blur(10px);border-radius:99px;width:fit-content;padding:6px;overflow-x:auto;box-shadow:0 4px 16px #6c3b4b12}.sibling-nav.is-floating::-webkit-scrollbar{display:none}.sibling-nav.is-floating ul{flex-wrap:nowrap;justify-content:flex-start}.sibling-nav.is-floating a{white-space:nowrap;min-height:36px}.section-nav-slot{margin:0 0 var(--space-l)}.section-nav{overscroll-behavior-x:contain;scrollbar-width:none;border:1px solid var(--line-strong);background:var(--surface-float);backdrop-filter:blur(10px);border-radius:99px;width:fit-content;max-width:100%;margin-inline:auto;padding:6px;overflow-x:auto;box-shadow:0 4px 16px #6c3b4b12}.section-nav::-webkit-scrollbar{display:none}.section-nav ul{gap:4px;margin:0;padding:0;list-style:none;display:flex}.section-nav a{min-height:40px;color:var(--ink);white-space:nowrap;border-radius:99px;align-items:center;padding:6px 16px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.section-nav a:hover{background:var(--pink-soft);color:var(--pink-ink)}.section-nav a[aria-current=location]{background:var(--teal-soft);color:var(--teal-ink);box-shadow:inset 0 0 0 1px var(--teal-line)}.float-nav{z-index:40;transition:transform .25s,opacity .25s;position:relative}.float-nav.is-floating{top:calc(var(--header-h) + 10px);max-width:calc(100% - 32px);position:fixed;left:50%;translate:-50%}.float-nav.is-floating.is-hidden{transform:translateY(calc(-100% - var(--header-h)));opacity:0;pointer-events:none}.float-nav.is-instant{transition:none}.menu-open .float-nav.is-floating{visibility:hidden}h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus,h3[tabindex="-1"]:focus{outline:none}.reading{border:1px solid var(--card-line);background:var(--surface-reading);box-shadow:var(--card-shadow);border-radius:28px;padding:clamp(22px,1rem + 2vw,44px)}.gallery-group{position:relative}.gallery-group+.gallery-group{margin-top:var(--space-l);padding-top:var(--space-l)}.gallery-group+.gallery-group:before{content:"";background:linear-gradient(90deg, transparent, var(--line-strong) 15%, var(--teal-line) 85%, transparent);height:1px;position:absolute;top:0;left:0;right:0}.gallery-head{justify-content:space-between;align-items:flex-start;gap:var(--space-xs) var(--space-m);margin-bottom:var(--space-m);flex-wrap:wrap;display:flex}.gallery-head :is(h3,h4){letter-spacing:-.5px;color:var(--pink-ink);align-items:center;gap:12px;margin:0;font-size:clamp(1.45rem,1.2rem + 1vw,1.9rem);display:flex}.gallery-head :is(h3,h4):before{content:"";background:linear-gradient(var(--pink), var(--teal));border-radius:6px;flex:none;width:6px;height:1em}.gallery-head p{color:var(--muted);margin:6px 0 0 18px}.gallery-head .gallery-count{background:var(--teal-soft);color:var(--teal-ink);border-radius:99px;flex:none;margin:4px 0 0;padding:4px 12px;font-size:.82rem;font-weight:750}@media (width<=560px){.gallery-head .gallery-count{margin-left:18px}}.carousel-track{--per-view:3;--gap:clamp(14px, .6rem + 1vw, 22px);grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--per-view) - 1) * var(--gap)) / var(--per-view));gap:var(--gap);overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;margin:-6px -6px 0;padding:6px 6px 16px;scroll-padding-inline:6px;list-style:none;display:grid;overflow-x:auto}.js .carousel-track{scrollbar-width:none}.js .carousel-track::-webkit-scrollbar{display:none}.carousel-track>li{scroll-snap-align:start}@media (width<=900px){.carousel-track{--per-view:2}}@media (width<=560px){.carousel-track{--per-view:1}}.carousel-controls{justify-content:center;align-items:center;gap:var(--space-s);margin-top:var(--space-xs);display:flex}.carousel-controls[hidden]{display:none}.carousel-button{border:1px solid var(--line-strong);background:var(--surface);width:44px;height:44px;color:var(--pink-ink);cursor:pointer;border-radius:50%;place-items:center;display:grid}.carousel-button:hover:not(:disabled){background:var(--pink-soft)}.carousel-button:disabled{opacity:.4;cursor:default}.carousel-dots{align-items:center;gap:6px;display:flex}.carousel-dots span{background:var(--line-strong);border-radius:99px;width:8px;height:8px;transition:width .2s,background-color .2s}.carousel-dots span.is-current{background:var(--pink-button);width:22px}.art-tile{aspect-ratio:4/5;border:1px solid var(--card-line);background:var(--card);box-shadow:var(--card-shadow);border-radius:20px;transition:transform .18s,box-shadow .18s;display:block;position:relative}.art-tile:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-3px)}.art-tile:focus-visible{outline-offset:2px;border-radius:20px}.art-tile img{object-fit:contain;border-radius:12px;width:calc(100% - 24px);height:calc(100% - 24px);position:absolute;inset:12px}.art-tile.wide{aspect-ratio:3/2}.lightbox{color:#fff;background:#1e1a1ef2;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0}.lightbox::backdrop{background:#1e1a1ecc}.lightbox-figure{grid-template-rows:minmax(0,1fr) auto;height:100%;margin:0;padding:64px 72px 20px;display:grid}.lightbox-figure img{object-fit:contain;touch-action:pan-y pinch-zoom;user-select:none;place-self:center;width:auto;max-width:100%;height:auto;max-height:100%}.lightbox-figure figcaption{text-align:center;padding-top:12px;font-size:.95rem}.lightbox-counter{color:#ddd;margin-top:2px;font-size:.85rem;display:block}.lightbox-button{color:#fff;cursor:pointer;background:#0005;border:1px solid #fff5;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:absolute}.lightbox-button:hover{background:#000a}.lightbox-button:focus-visible{outline-color:#fff}.lightbox-close{top:12px;right:12px}.lightbox-prev{top:50%;left:12px;translate:0 -50%}.lightbox-next{top:50%;right:12px;translate:0 -50%}.lightbox-prev[hidden],.lightbox-next[hidden]{display:none}html:has(.lightbox[open]){overflow:hidden}@media (width<=600px){.lightbox-figure{padding:64px 8px 84px}.lightbox-prev,.lightbox-next{top:auto;bottom:16px;translate:none}.lightbox-prev{left:calc(50% - 60px)}.lightbox-next{right:calc(50% - 60px)}.lightbox-figure figcaption{padding:0 16px;position:absolute;bottom:70px;left:0;right:0}}.package-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.package-card{gap:var(--space-s);border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);box-shadow:var(--card-shadow);flex-direction:column;padding:26px;display:flex}.package-card :is(h3,h4){font-family:var(--display);margin:0;font-size:1.2rem;line-height:1.2}.package-card .price{margin:0;font-size:2rem!important}.package-card .price small{font-family:var(--body);color:var(--muted);font-size:.85rem;font-weight:650}.package-card .check-list{gap:8px;font-size:.93rem}.package-note{color:var(--muted);margin:auto 0 0;font-size:.85rem}.package-grid.quoted .package-card{background:linear-gradient(150deg, var(--card-tint), var(--card));border-color:var(--teal-line)}.quoted-label{font-family:var(--display);color:var(--teal-ink);margin:0;font-size:1.15rem;font-weight:800}.packages-subhead{margin:var(--space-l) 0 var(--space-s);font-size:1.3rem}.section>h2+.packages-subhead,.section-intro+.packages-subhead{margin-top:0}.price-tiers{gap:6px;margin:0;font-size:.93rem;display:grid}.price-tiers>div{border-bottom:1px dashed var(--line);justify-content:space-between;gap:12px;padding-bottom:6px;display:flex}.price-tiers>div:last-child{border-bottom:0;padding-bottom:0}.price-tiers dt{color:var(--ink-soft)}.price-tiers dt small{color:var(--muted);font-size:.8rem;display:block}.price-tiers dd{white-space:nowrap;margin:0;font-weight:750}.upgrades{gap:var(--space-s);margin-top:var(--space-l);border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);box-shadow:var(--card-shadow-flat);padding:22px 26px;display:grid}.upgrades>h3{margin:0;font-size:1.3rem}.upgrades .price-tiers{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.upgrades .price-tiers>div:nth-last-child(2):nth-child(odd){border-bottom:0;padding-bottom:0}.packages-footnote{margin-top:var(--space-m)}@media (width<=720px){.package-grid{grid-template-columns:1fr}}@media (width<=700px){.upgrades .price-tiers{grid-template-columns:1fr}.upgrades .price-tiers>div:nth-last-child(2):nth-child(odd){border-bottom:1px dashed var(--line);padding-bottom:6px}}.crossover{border:1px solid var(--lilac-line);background:linear-gradient(150deg, var(--lilac-tint), var(--card));box-shadow:var(--card-shadow-flat);border-radius:28px;padding:clamp(22px,1rem + 2vw,36px)}.crossover>h2{margin-top:0}
