@import url('https://fonts.googleapis.com/css2?family=Allura&family=Outfit:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--paper:#faf7f2;--ink:#43334f;--green:#745789;--muted:#716576;--border:#e1dbe5;--sand:#e8dec9;--sidebar:244px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a,button,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--green);outline-offset:6px}.skip{position:fixed;top:-100px;left:260px;background:var(--ink);color:white;z-index:20;padding:10px}.skip:focus{top:10px}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:36px 27px 24px;background:#eee8f2;border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:5}.brand{display:flex;gap:8px;align-items:center}.brand svg{width:46px;fill:none;stroke:var(--green);stroke-width:2}.brand>span{font:28px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-1px}.brand-sub{display:block;font:8px/2.8 'DM Sans',sans-serif;letter-spacing:2px}.side-middle{margin:auto 0}.side-note{font:italic 19px/1.7 'Playfair Display',Georgia,serif;color:#85788e;margin-bottom:35px}nav{display:grid;gap:8px}nav a{padding:10px 9px;border-radius:4px;font-size:13px}nav a span{font-size:9px;letter-spacing:1px;color:#92849c;margin-right:15px}nav a.active{background:#dfd3e9}nav a:hover{background:#e7dded}.schedule-link{font-size:12px;display:flex;justify-content:space-between;border-bottom:1px solid #cdbed7;padding-bottom:12px}.side-bottom p{font-size:9px;text-transform:uppercase;letter-spacing:1.8px;color:#85788e;margin-top:20px}main{margin-left:var(--sidebar)}.hero{position:relative;padding:32px 6% 58px;overflow:hidden;background:radial-gradient(ellipse at 95% 20%,#eee5ef 0,transparent 65%),#f8f3ed;min-height:760px}.hero-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:2px;border-bottom:1px solid var(--border);padding-bottom:14px}.small-sun{font-size:28px;line-height:1;color:#9b8a78}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:5%;padding:65px 0 30px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;line-height:1.7;margin:0 0 23px;color:var(--green)}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(52px,5.5vw,84px);line-height:1.12;letter-spacing:-2.5px;margin-bottom:25px}h1 em,h2 em{color:#8b749f;font-weight:400}h2{font-size:clamp(30px,3.1vw,47px);line-height:1.25;letter-spacing:-1px;margin-bottom:28px}h3{font-size:28px;line-height:1.3;margin-bottom:23px}.intro{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:14px 21px;background:var(--green);color:white;border:1px solid var(--green);border-radius:3px;cursor:pointer;font-size:12px}.button:hover{background:#5d476e}.button span{font-size:19px}.hero-signoff{display:flex;gap:12px;align-items:center;margin-top:37px;font:italic 14px 'Playfair Display',Georgia,serif;color:#8a7b92}.line{width:35px;height:1px;background:#b1a0bc}.hero-photo{position:relative;margin:0;padding:12px 12px 0;background:#e9deed;border-radius:180px 180px 5px 5px}.hero-photo img{width:100%;height:440px;object-fit:cover;object-position:50% 30%;border-radius:170px 170px 2px 2px;display:block}.hero-photo figcaption{text-align:center;font-size:9px;letter-spacing:1px;padding:13px 0;color:#7f708a}.scroll-cue{font-size:9px;letter-spacing:2px;display:flex;align-items:center;gap:20px;margin-top:24px}.scroll-cue span{font-size:20px}.waves{position:absolute;bottom:-5px;left:0;width:100%;height:38px;fill:none;stroke:#ded2e4;stroke-width:1}.section{padding:90px 6%;scroll-margin-top:20px}.about{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:8%}.about-copy p:not(.eyebrow){font-size:14px;color:var(--muted)}.about-copy .handwritten{font:italic 21px/1.55 'Playfair Display',Georgia,serif!important;color:var(--green)!important;margin-top:25px;margin-bottom:0}.zen-art{height:370px;overflow:hidden;position:relative;background:#eee6f2;border-radius:150px 150px 3px 3px}.zen-art span{position:absolute;display:block}.zen-sun{height:92px;width:92px;left:calc(50% - 46px);top:65px;background:#d8cbb7;border-radius:50%;opacity:.7}.horizon{left:0;right:0;top:185px;height:1px;background:#bbabc7}.sea{width:150%;height:170px;border-radius:50%;left:-25%;background:#c8b6d5;top:180px;transform:rotate(-9deg)}.sea-two{top:230px;background:#a58ab9;transform:rotate(9deg)}.sand{height:120px;width:150%;border-radius:50%;left:-25%;bottom:-80px;background:#e8decd}.photo-label{margin-top:20px;font:20px 'Playfair Display',Georgia,serif;text-align:center}.photo-label span{display:block;font:10px 'DM Sans',Arial,sans-serif;letter-spacing:.5px;margin-top:7px;color:var(--muted)}.offerings{background:#f0eaf3}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px}.section-heading>p{font-size:13px;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d8cddd;border-bottom:1px solid #d8cddd}.services article{padding:30px 24px;display:flex;flex-direction:column}.services article:first-child{padding-left:0}.services article:last-child{padding-right:0}.services article+article{border-left:1px solid #d8cddd}.service-number{font-size:9px;letter-spacing:1.5px;color:#8b7698;margin-bottom:23px}.services p{font-size:13px;color:var(--muted)}.services a{margin-top:auto;padding-top:20px;font-size:11px;display:flex;justify-content:space-between}.events{display:flex;align-items:center;gap:20px;margin-top:35px}.event-symbol{font-size:44px;color:#9b858d}.events h3{font-size:22px;margin:0 0 6px}.events p{font-size:12px;margin:0;color:var(--muted)}.events a{font-size:11px;white-space:nowrap;margin-left:auto}.testimonials>h2{margin-bottom:45px}.quotes{column-count:2;column-gap:45px}blockquote{break-inside:avoid;margin:0 0 30px;padding:20px 0 27px;border-bottom:1px solid var(--border)}.quote-mark{font:45px/1 'Playfair Display',Georgia,serif;color:#9aaa8e}blockquote p{font-size:14px;color:var(--muted);margin-bottom:18px}cite{font-style:normal;font-size:11px;color:var(--green)}.contact{background:#eae1ef;display:grid;grid-template-columns:1fr 1.1fr;gap:9%}.contact p:not(.eyebrow){font-size:14px;color:var(--muted)}.text-link{font-size:12px;border-bottom:1px solid #bca9c8;padding-bottom:6px}.contact-sun{display:block;width:180px;fill:none;stroke:#b19abc;stroke-width:1.5;margin-top:30px}form label{display:block;font-size:11px;margin-bottom:20px}input:not([type=hidden]),textarea{width:100%;display:block;margin-top:6px;border:1px solid #cbbbd4;background:#faf7fb;border-radius:3px;padding:11px 12px;font-size:15px;color:var(--ink)}textarea{resize:vertical;min-height:120px}input:focus,textarea:focus{outline:2px solid #806790;outline-offset:2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}footer{padding:25px 6%;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}@media(min-width:1600px){main{max-width:1500px}.hero{min-height:850px}.hero-photo img{height:560px}}@media(max-width:1100px){:root{--sidebar:205px}.sidebar{padding:30px 19px}.hero-grid{gap:25px}.hero-photo img{height:360px}h1{font-size:56px}.hero{min-height:680px}.section{padding:70px 5%}.services article{padding:25px 17px}.services h3{font-size:23px}}@media(max-width:760px){:root{--sidebar:0px}.sidebar{position:sticky;top:0;width:100%;padding:12px 18px;background:#eee8f2f5;backdrop-filter:blur(12px);border-right:0;border-bottom:1px solid var(--border)}.brand svg{width:32px}.brand>span{font-size:23px}.brand-sub{font-size:7px}.side-note,.side-bottom{display:none}.side-middle{margin:10px 0 0}nav{display:flex;justify-content:space-between;gap:3px}nav a{padding:5px 2px;font-size:10px;border-radius:0}nav a span{display:none}main{margin:0}html{scroll-padding-top:120px}.hero{padding:24px 6% 48px;min-height:0}.hero-top{font-size:8px;letter-spacing:1px}.hero-grid{padding:38px 0 20px;grid-template-columns:1fr 1fr;gap:20px}h1{font-size:clamp(36px,7vw,55px);letter-spacing:-1.2px}.eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:17px}.intro{font-size:12px}.hero-photo{padding:6px 6px 0}.hero-photo img{height:290px}.hero-photo figcaption{font-size:7px;letter-spacing:0}.button{padding:11px 13px;font-size:10px;gap:10px}.hero-signoff{font-size:11px;margin-top:25px}.section{padding:55px 6%;scroll-margin-top:0}.about{grid-template-columns:1fr}.about-image{max-width:300px;margin:0 auto 35px;width:100%}.zen-art{height:250px}.zen-sun{top:35px}.horizon{top:145px}.sea{top:140px}.sea-two{top:180px}.about-copy p:not(.eyebrow){font-size:14px}h2{font-size:34px}.section-heading{display:block}.section-heading>p{font-size:12px}.services{grid-template-columns:1fr}.services article,.services article:first-child,.services article:last-child{padding:25px 0}.services article+article{border-left:0;border-top:1px solid #d8cddd}.services h3{font-size:28px}.events{flex-wrap:wrap;gap:14px}.events>div{flex:1}.events a{margin-left:58px}.events h3{font-size:21px}.quotes{column-count:1}.contact{grid-template-columns:1fr;gap:35px}.contact-sun{display:none}footer{gap:20px;font-size:9px}.skip{left:10px}}@media(max-width:430px){.hero-grid{grid-template-columns:1fr}.hero-copy{padding-bottom:15px}.hero-photo{max-width:300px;width:100%;margin:auto}.hero-photo img{height:330px}h1{font-size:54px}.intro{font-size:14px}.hero-signoff{margin-top:22px}.button{font-size:12px}.hero{padding-bottom:45px}.hero-top{font-size:7px}.form-row{grid-template-columns:1fr;gap:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}} 
/* Right-hand desktop navigation and clear mobile tabs. */
.sidebar{left:auto;right:0;border-right:0;border-left:1px solid var(--border)}
main{margin-left:0;margin-right:var(--sidebar)}
nav a{border:1px solid transparent;font-weight:500}
nav a.active{border-color:#c9b7d6;color:#513761}
nav a:hover{border-color:#d8c9e1}
@media(max-width:760px){
 .sidebar{left:0;right:0;border-left:0;padding:12px 14px 10px}
 main{margin:0}
 .side-middle{margin-top:12px}
 nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
 nav a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:6px 3px;font-size:10px;line-height:1.35;border:1px solid #d8c9e1;border-radius:6px;background:#f8f4fa}
 nav a.active{background:#dfd3e9;border-color:#b79ac8;color:#513761}
 .hero-grid{grid-template-columns:1fr;gap:25px;padding-top:34px}
 .hero-copy{padding-bottom:0}
 h1{font-size:clamp(46px,10vw,66px);line-height:1.12;letter-spacing:-1.5px}
 .intro{font-size:15px;line-height:1.7}
 .hero-photo{width:100%;max-width:350px;margin:0 auto}
 .hero-photo img{height:360px;object-position:50% 30%}
 .hero-photo figcaption{font-size:10px;padding:12px 0}
 .button{min-height:48px;font-size:13px;padding:12px 18px}
 .hero-top{font-size:8px;letter-spacing:1px}
 .hero-signoff{font-size:13px}
 .section{padding:52px 6%}
 .services p,.events p,.contact p:not(.eyebrow){font-size:14px}
 .services a,.events a,.text-link{font-size:13px;min-height:44px;align-items:center;display:flex}
 .form-row{grid-template-columns:1fr;gap:0}
 form label{font-size:13px}
 input:not([type=hidden]),textarea{font-size:16px;min-height:48px}
 .contact form .button{width:100%}
 footer{flex-wrap:wrap;font-size:11px}
 footer a{min-height:44px;display:flex;align-items:center}
}
@media(max-width:360px){nav{gap:3px}nav a{font-size:9px}.hero-photo img{height:310px}h2{font-size:30px}}
.theme-picker{display:flex;gap:4px;padding:4px;background:#e3d9e9;border-radius:8px;margin-top:27px}
.theme-picker button{flex:1;border:0;background:transparent;color:#65536f;border-radius:5px;padding:9px 7px;font-size:11px;cursor:pointer;min-height:38px}
.theme-picker button[aria-pressed=true]{background:#faf7f2;color:#513761;box-shadow:0 1px 4px #43334f12}
html[data-theme=beach]{--paper:#faf7ef;--ink:#41584b;--green:#6a8573;--muted:#758075;--border:#d8dfdc;--sand:#e8decd}
html[data-theme=beach] .sidebar{background:#edf0e5;border-color:#d2dfdd}
html[data-theme=beach] .theme-picker{background:#dfe6d6}
html[data-theme=beach] .theme-picker button{color:#637a65}
html[data-theme=beach] .theme-picker button[aria-pressed=true]{background:#faf7ef;color:#41584b}
html[data-theme=beach] nav a.active{background:#dbe5d2;border-color:#b1c3a6;color:#41584b}
html[data-theme=beach] nav a:hover{background:#e4eadb;border-color:#bccdb2}
html[data-theme=beach] nav a span,html[data-theme=beach] .side-note,html[data-theme=beach] .side-bottom p{color:#819079}
html[data-theme=beach] .schedule-link{border-color:#adc7c6}
html[data-theme=beach] .hero{background:radial-gradient(ellipse at 95% 20%,#e8eddc 0,transparent 65%),#f5f0e6}
html[data-theme=beach] h1 em,html[data-theme=beach] h2 em{color:#8c9c78}
html[data-theme=beach] .hero-photo{background:#e6e9d7}
html[data-theme=beach] .hero-photo figcaption,html[data-theme=beach] .hero-signoff{color:#829174}
html[data-theme=beach] .line{background:#b2bfa0}
html[data-theme=beach] .waves{stroke:#d5ddc6}
html[data-theme=beach] .zen-art{background:#edf0df}
html[data-theme=beach] .horizon{background:#bccaaa}
html[data-theme=beach] .sea-one{background:#c3d0ac}
html[data-theme=beach] .sea-two{background:#a0b68e}
html[data-theme=beach] .offerings{background:#f0f1e7}
html[data-theme=beach] .services,html[data-theme=beach] .services article+article{border-color:#d3dcc8}
html[data-theme=beach] .service-number{color:#8a997a}
html[data-theme=beach] .quote-mark{color:#abb99a}
html[data-theme=beach] .contact{background:#e9eddc}
html[data-theme=beach] .contact-sun{stroke:#b3c19b}
html[data-theme=beach] .text-link{border-color:#a2c3bb}
html[data-theme=beach] input:not([type=hidden]),html[data-theme=beach] textarea{background:#f7faf6;border-color:#c4ceb5}
html[data-theme=beach] .button:hover{background:#536d59}
html[data-theme=beach] input:focus,html[data-theme=beach] textarea:focus{outline-color:#8c9c78}
@media(max-width:760px){.sidebar{display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 12px}.theme-picker{margin:0;min-width:145px}.theme-picker button{padding:8px 7px;min-height:40px;font-size:10px}.side-middle{grid-column:1 / -1}html[data-theme=beach] nav a{background:#f6faf7;border-color:#bdd2ce}html{scroll-padding-top:125px}}
:root{--sidebar:150px}
.topbar{position:sticky;top:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 6%;background:var(--paper);border-bottom:1px solid var(--border)}
.top-brand{font:24px/1.2 'Playfair Display',Georgia,serif;white-space:nowrap}
.top-brand span{display:block;font:9px/1.8 'DM Sans',sans-serif;letter-spacing:1px;margin-top:3px;color:var(--muted)}
.topbar nav{display:flex;gap:5px}.topbar nav a{font-size:12px;padding:9px 12px;border-radius:7px}
.sidebar{inset:50% 15px auto auto;transform:translateY(-50%);width:125px;padding:15px 10px;background:var(--paper);border:1px solid var(--border);border-radius:15px;box-shadow:0 8px 30px #43334f08;gap:15px;max-height:90vh}
.sidebar>.brand,.sidebar .side-note,.sidebar .side-bottom{display:none}
.side-middle{margin:0;order:0}.appearance{order:1;border-top:1px solid var(--border);padding-top:12px}.appearance-label{display:block;text-align:center;font-size:9px;color:var(--muted);letter-spacing:.4px;margin-bottom:7px}
.shortcut-label{display:block;font-size:8px;letter-spacing:1.3px;text-align:center;color:var(--muted);margin:0 0 10px}
.sidebar nav{gap:3px}.sidebar nav a{font-size:11px;padding:8px 6px}.sidebar nav a span{font-size:8px;margin-right:8px}
.sidebar .theme-picker{display:grid;gap:3px;margin:0;padding:3px}.sidebar .theme-picker button{font-size:10px;min-height:32px;padding:6px}
html{scroll-padding-top:105px}
@media(max-width:950px) and (min-width:761px){.topbar{padding-left:5%;padding-right:5%;gap:10px}.topbar nav a{padding:8px;font-size:11px}.top-brand{font-size:21px}}
@media(max-width:760px){
 .sidebar{position:static;transform:none;width:100%;max-height:none;padding:9px 14px;border:0;border-radius:0;box-shadow:none;display:block;background:var(--paper)}
 .sidebar .side-middle{display:none}.appearance{border:0;padding:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.appearance-label{margin:0;font-size:10px}.sidebar .theme-picker{display:flex;min-width:180px}.sidebar .theme-picker button{min-height:40px;font-size:11px;flex:1;padding:8px}
 .topbar{padding:12px 14px 10px;display:block}.top-brand{display:block;font-size:23px;margin-bottom:12px}.top-brand span{display:inline;font-size:9px;margin-left:8px}
 .topbar nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.topbar nav a{font-size:11px;min-height:44px;padding:6px 3px}
 html{scroll-padding-top:130px}.hero{padding-top:20px}
 html[data-theme=beach] .sidebar{background:var(--paper)}
}
.top-brand{display:flex;align-items:center;gap:12px;font-size:29px;letter-spacing:-1px}
.top-brand .brand-mark{width:45px;height:45px;color:var(--green);flex-shrink:0}
.top-brand .wordmark{font:inherit;margin:0;color:var(--ink);letter-spacing:inherit}
.top-brand small{display:block;font:8px/1.8 'DM Sans',Arial,sans-serif;letter-spacing:2px;color:var(--muted);margin-top:5px}
@media(max-width:760px){.top-brand{display:flex;font-size:27px;gap:10px}.top-brand .brand-mark{width:38px;height:38px}.top-brand .wordmark{display:block;margin:0;font:inherit}.top-brand small{font-size:7px;margin-top:4px}}
.top-brand small{font:italic 19px/1.25 'Playfair Display',Georgia,serif;letter-spacing:.1px;color:var(--green);margin-top:5px;text-transform:none}
.top-brand .brand-mark{width:52px;height:52px}
@media(max-width:760px){.top-brand small{font-size:18px;margin-top:4px;letter-spacing:.1px}.top-brand .brand-mark{width:47px;height:47px}}
.top-brand{gap:13px;font-size:31px;letter-spacing:-.8px}
.top-brand .brand-mark{width:54px;height:54px;padding:5px;border:1px solid var(--border);border-radius:50%;background:var(--paper)}
.top-brand small{font:500 20px/1.25 'Playfair Display',Georgia,serif;letter-spacing:.25px;margin-top:4px;color:var(--ink)}
.top-brand .alternate-name{display:block;font:9px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.3px;color:var(--muted);margin:4px 0 0}
@media(max-width:760px){.top-brand{font-size:28px;gap:12px}.top-brand small{font-size:20px}.top-brand .alternate-name{font-size:9px;display:block;margin:3px 0 0;letter-spacing:.2px}.top-brand .brand-mark{width:52px;height:52px}.top-brand{margin-bottom:13px}html{scroll-padding-top:150px}}
.top-brand .wordmark-title{display:block;font:500 35px/1.08 'Playfair Display',Georgia,serif;letter-spacing:-1.2px;margin:0;color:var(--ink)}
.top-brand .wordmark-title em{font-weight:400;color:var(--green);font-size:1.12em;letter-spacing:-1.8px}
.top-brand .brand-mark{width:56px;height:56px;border:0;border-radius:0;padding:0;background:none}
.top-brand small{font:400 17px/1.3 'Playfair Display',Georgia,serif;letter-spacing:.8px;margin-top:7px;color:var(--muted)}
@media(max-width:760px){.top-brand .wordmark-title{font-size:33px;margin:0;letter-spacing:-1px}.top-brand small{font-size:17px;margin-top:6px}.top-brand .brand-mark{width:51px;height:51px}}
.top-brand .wordmark-title{display:flex;align-items:baseline;gap:5px;font:600 36px/1 'Outfit','DM Sans',Arial,sans-serif;letter-spacing:-1.8px;margin:0;color:var(--ink)}
.top-brand .wordmark-title .brand-my{font:inherit;color:var(--green);margin:0;letter-spacing:inherit}
.top-brand .wordmark-title .brand-dot{font:inherit;color:var(--green);margin:0 0 0 -5px}
.top-brand small{font:400 31px/1.1 'Allura',cursive;letter-spacing:.2px;color:var(--green);margin:4px 0 0 2px}
.top-brand .brand-mark{width:44px;height:44px;opacity:.85}
.topbar{padding-top:15px;padding-bottom:15px}
@media(max-width:760px){.top-brand .wordmark-title{font-size:35px;letter-spacing:-1.6px;gap:5px}.top-brand small{font-size:31px;margin:4px 0 0 2px}.top-brand .brand-mark{width:42px;height:42px}}

/* Swipeable testimonials */
.review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.review-toolbar p{margin:0;font-size:13px;color:var(--muted)}.review-toolbar p span{display:block;font-size:11px;margin-top:3px}.review-controls{display:flex;align-items:center;gap:14px;flex-shrink:0}.review-controls button{width:46px;height:46px;border:1px solid var(--border);border-radius:50%;background:var(--paper);color:var(--ink);font-size:23px;cursor:pointer}.review-controls button:hover{background:var(--green);color:white}.review-controls button:disabled{opacity:.35;cursor:default;background:var(--paper);color:var(--ink)}[data-review-count]{font-size:12px;font-variant-numeric:tabular-nums;min-width:32px;text-align:center}.quotes{display:flex;column-count:auto;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 4px 20px;scrollbar-width:thin;scrollbar-color:var(--green) var(--border)}.quotes blockquote{flex:0 0 calc((100% - 22px)/2);scroll-snap-align:start;border:1px solid var(--border);border-radius:16px;padding:26px;margin:0;background:var(--paper);display:flex;flex-direction:column}.quotes blockquote p{font-size:15px}.quotes cite{margin-top:auto;padding-top:10px}.quotes:focus-visible{outline:2px solid var(--green);outline-offset:4px}@media(max-width:760px){.review-toolbar{align-items:flex-end;gap:12px}.review-toolbar p{font-size:12px}.review-controls{gap:8px}.review-controls button{width:44px;height:44px}.quotes{gap:16px}.quotes blockquote{flex-basis:90%;padding:22px}.testimonials>h2{margin-bottom:25px}}@media(prefers-reduced-motion:reduce){.quotes{scroll-behavior:auto}}

/* Quiet coastal details, tinted by the selected appearance. */
.about,.testimonials,.contact{position:relative;isolation:isolate}.about:after,.testimonials:after{content:"";position:absolute;pointer-events:none;z-index:-1;width:150px;height:56px;right:6%;bottom:18px;opacity:.16;background:var(--green);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 56'%3E%3Cg fill='none' stroke='black' stroke-width='1.4'%3E%3Cpath d='M0 16Q19 0 38 16T76 16T114 16T152 16M0 30Q19 14 38 30T76 30T114 30T152 30M0 44Q19 28 38 44T76 44T114 44T152 44'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}.testimonials:after{right:auto;left:6%;width:110px;opacity:.12}.events{position:relative}.events:after{content:"";position:absolute;width:78px;height:78px;border:1px solid var(--green);border-radius:50%;right:6%;top:-50px;opacity:.08;pointer-events:none}.contact:after{content:"";position:absolute;pointer-events:none;z-index:-1;width:130px;height:130px;right:5%;bottom:20px;opacity:.09;background:var(--green);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 130 130'%3E%3Cg fill='none' stroke='black' stroke-width='1.5'%3E%3Cpath d='M65 110C30 100 12 74 21 46C29 20 48 23 65 38C82 23 101 20 109 46C118 74 100 100 65 110ZM65 110V38M65 110L37 35M65 110L21 55M65 110L93 35M65 110L109 55'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}@media(max-width:760px){.about:after,.testimonials:after{width:90px;height:34px;bottom:12px}.contact:after{width:84px;height:84px;bottom:10px}.events:after{display:none}}

/* Small movement illustrations complement the coastal accents. */
.offerings{position:relative;isolation:isolate}.offerings:after{content:"";position:absolute;right:6%;top:22px;width:90px;height:42px;background:var(--green);opacity:.14;pointer-events:none;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 42'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='12' y='7' width='9' height='28' rx='3'/%3E%3Crect x='21' y='3' width='10' height='36' rx='3'/%3E%3Crect x='59' y='3' width='10' height='36' rx='3'/%3E%3Crect x='69' y='7' width='9' height='28' rx='3'/%3E%3Cpath d='M31 18h28v6H31M7 17v8M83 17v8'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}.about:before{content:"";position:absolute;left:5%;top:20px;width:82px;height:62px;background:var(--green);opacity:.12;pointer-events:none;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 82 62'%3E%3Cg fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='41' cy='12' r='6'/%3E%3Cpath d='M41 20v19M41 27L26 34l-13-9M41 27l15 7 13-9M41 39L24 48l-12-1q-5 9 10 10h38q15-1 10-10l-12 1-17-9M26 53h30'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}@media(max-width:760px){.offerings:after{width:62px;height:29px;top:13px}.about:before{width:57px;height:43px;top:9px}}

/* A coordinated movement and coastal illustration set. */
.services article{position:relative}.service-art{width:58px;height:58px;color:var(--green);opacity:.65;margin:0 0 17px;flex-shrink:0}.zen-sketch{position:absolute;z-index:2;width:76%;height:auto;left:12%;bottom:14px;color:var(--paper);opacity:.8}.contact:after{opacity:.16}.about:after{opacity:.22}.testimonials:after{opacity:.18}.offerings:after,.about:before{display:none}@media(max-width:760px){.service-art{position:absolute;top:24px;right:2px;width:48px;height:48px;opacity:.5}.services h3{padding-right:54px}.service-number{padding-right:54px}.zen-sketch{bottom:8px}}

/* A handful of playful, quiet flourishes. */
.playful-art{color:var(--green);pointer-events:none;flex-shrink:0}.hero-copy{position:relative}.playful-hero{position:absolute;width:80px;height:68px;right:6%;bottom:26px;opacity:.32;transform:rotate(9deg)}.playful-events{width:56px;height:54px;opacity:.5;transform:rotate(-12deg)}.playful-contact{width:66px;height:56px;opacity:.4;margin-bottom:15px;transform:rotate(-7deg)}@media(max-width:760px){.playful-hero{width:55px;height:47px;right:0;bottom:12px;opacity:.25}.playful-events{width:43px;height:43px}.playful-contact{width:50px;height:43px;margin-bottom:9px}}
