:root{--green:#0f3d32;--purple:#b89ec6;--ink:#183d33;--white:#fffefa;--muted:#58665f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-offset,145px)}body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}img{width:100%;height:100%;object-fit:cover;display:block}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0 0 25px}h1{font-size:clamp(3.5rem,5.8vw,6.1rem)}h2{font-size:clamp(2.4rem,4vw,4.2rem)}em{font-weight:400;color:inherit}p{margin:0 0 22px}.wrap{max-width:1260px;padding:0 56px;margin:auto}.eyebrow{font-size:13px;letter-spacing:.17em;font-weight:600;margin-bottom:25px}header{position:sticky;top:0;background:var(--white);z-index:10;padding:16px 4%;display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid #0f3d3215}.brand{width:188px;flex-shrink:0}.brand img{object-fit:contain}nav{display:flex;align-items:center;gap:27px;font-size:14px}nav a{padding:10px 0}nav a:hover{color:#76548a}.nav-contact{border:1px solid #0f3d3240;padding:9px 20px}.menu{display:none}.hero{display:grid;grid-template-columns:1.15fr .85fr;background:var(--green);color:white;min-height:660px}.hero-copy{padding:84px 7vw 56px}.hero h1 em{color:#cdb7d8}.intro{max-width:530px;font-size:19px;line-height:1.8}.hero-photo{position:relative;max-height:770px;overflow:hidden}.hero-photo img{object-position:center 30%}.photo-caption{position:absolute;bottom:28px;left:28px;right:28px;padding:16px 22px;background:#0f3d32df;font-family:Georgia,serif;font-size:20px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;padding:14px 24px;font-size:15px;text-align:center;align-items:center;justify-content:center;min-height:50px;transition:background .2s}.button:hover{background:#d8c8e0;color:var(--green)}.light{background:#fdfaf4;color:var(--green)}.green{background:var(--green);color:white}.text-link{font-size:15px;border-bottom:1px solid currentColor;padding:5px 0}.hero-note{margin:55px 0 0;font-size:13px;letter-spacing:.035em;color:#d3e1db}.welcome{display:grid;grid-template-columns:1fr 1fr;padding-top:100px;padding-bottom:100px;column-gap:90px}.welcome .eyebrow{grid-column:1/-1}.welcome p:not(.eyebrow),.about p{color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px}.section-heading p:not(.eyebrow){font-size:15px;color:var(--muted)}.section-heading h2{font-size:3rem}.offer-nav{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #0f3d3230;border-bottom:1px solid #0f3d3230;margin-top:18px}.offer-nav a{padding:25px 15px;font-family:Georgia,serif;font-size:24px}.offer-nav a:hover{background:#eee6f3}.offer-nav span{display:block;font:12px Arial;margin-bottom:8px;color:#775a86}.massage{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px;padding-top:95px;padding-bottom:100px;align-items:center}.image-frame{height:540px;position:relative}.image-frame:after{content:'';position:absolute;inset:22px -20px -20px 22px;border:1px solid var(--purple);z-index:-1}.service-copy p{color:var(--muted)}.service-copy h2 em{color:#775a86}.tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 30px}.tags span{font-size:13px;padding:6px 12px;border:1px solid #0f3d3228}.purple-section{background:#eee6f3}.two-services{display:grid;grid-template-columns:1fr 1fr;gap:95px;padding-top:85px;padding-bottom:85px}.two-services article+article{border-left:1px solid #80608e40;padding-left:65px}.two-services h2 em{color:#775a86}.two-services .button{margin-top:25px}.two-services p{max-width:460px}details{border-top:1px solid #0f3d3233;padding:19px 0}summary{cursor:pointer;font-size:16px;font-weight:500}details p{margin:16px 0 0;font-size:16px}.retreat{display:grid;grid-template-columns:1fr 1.1fr;background:var(--green);color:white}.retreat-picture{min-height:670px}.retreat-copy{padding:75px 7vw 75px 6vw}.retreat h2 em{color:#cdb7d8}.retreat-features{display:flex;flex-wrap:wrap;gap:8px 20px;border-top:1px solid #ffffff35;border-bottom:1px solid #ffffff35;padding:16px 0;margin:26px 0;font-size:14px}.retreat .text-link{display:table;margin-top:20px}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:100px;padding-bottom:85px}.signature{font-family:Georgia,serif;font-style:italic;font-size:30px;color:#775a86!important}.questions{max-width:950px;padding-bottom:95px}.questions h2{font-size:3rem}.questions details:last-child{border-bottom:1px solid #0f3d3233}.contact{background:#e6d9ee;padding:75px 0}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.contact h2 em{color:#775a86}address{font-style:normal;border-left:1px solid #0f3d3240;padding-left:45px;font-size:16px;overflow-wrap:anywhere}address a,address strong{display:block;margin-bottom:13px}address span{font-size:14px}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:27px!important;padding-bottom:27px!important;font-size:13px}.skip{position:absolute;left:-10000px}.skip:focus{left:16px;top:16px;background:white;padding:10px;z-index:100}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #9971ac;outline-offset:5px}section[id],article[id]{scroll-margin-top:0}@media(max-width:1000px){nav{gap:15px;font-size:13px}.brand{width:150px}.wrap{padding-left:32px;padding-right:32px}.hero-copy{padding:65px 40px}.massage,.two-services,.about{gap:45px}.two-services article+article{padding-left:35px}.retreat-copy{padding:55px 40px}.section-heading h2{font-size:2.6rem}}@media(max-width:760px){header{padding:12px 22px}.brand{width:145px}.menu{display:block;background:transparent;border:1px solid #0f3d3240;padding:7px 17px;font-size:14px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);padding:20px 24px;box-shadow:0 15px 20px #0001}nav.open{display:flex;flex-direction:column;align-items:stretch;font-size:16px;gap:0}.nav-contact{margin-top:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 26px 42px}.hero h1{font-size:3.4rem}.hero-photo{height:420px}.hero-photo img{object-position:center 26%}.hero-note{margin-top:35px}.wrap{padding-left:26px;padding-right:26px}.welcome,.massage,.two-services,.about,.contact-grid{grid-template-columns:1fr;gap:22px}.welcome{padding-top:65px;padding-bottom:45px}.welcome .eyebrow{margin-bottom:0}.section-heading{display:block}.section-heading p:not(.eyebrow){margin-top:10px}.section-heading br{display:none}.offer-nav{grid-template-columns:1fr 1fr}.offer-nav a{font-size:22px;padding-left:0}.massage{padding-top:55px;padding-bottom:60px;gap:45px}.image-frame{height:400px;margin-right:18px}.service-copy h2{font-size:2.9rem}.two-services{padding-top:60px;padding-bottom:60px;gap:50px}.two-services article+article{border-left:0;border-top:1px solid #80608e40;padding:45px 0 0}.retreat{grid-template-columns:1fr}.retreat-picture{min-height:0;height:400px}.retreat-copy{padding:50px 26px}.about{padding-top:65px;padding-bottom:45px;gap:15px}.questions{padding-bottom:60px}.questions h2{font-size:2.5rem}.contact{padding:55px 0}.contact-grid{gap:40px}address{border-left:0;border-top:1px solid #0f3d3240;padding:25px 0 0}.actions{gap:17px}.eyebrow{font-size:12px}.intro{font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.event-section{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;padding-top:85px;padding-bottom:35px;align-items:center}.event-section h2 em,.wishes h2 em{color:#775a86}.event-card{background:#eee6f3;border-top:3px solid var(--purple);padding:35px 40px}.event-label{font-size:15px;letter-spacing:.14em}.event-year{font:4rem Georgia,serif;display:block;line-height:1.3}.event-card h3{font:1.8rem Georgia,serif;margin:15px 0}.event-motto{font:italic 1.5rem/1.4 Georgia,serif}.small-note{font-size:14px;line-height:1.6;margin:18px 0 0;color:var(--muted)}.wishes{background:#f4f0f6;padding:80px 0}.wishes-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.wishes-copy{max-width:390px}fieldset{border:0;margin:0 0 25px;padding:0}legend{margin-bottom:12px;font-weight:600;font-size:16px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.choice{position:relative;cursor:pointer;display:flex;align-items:start;gap:9px;padding:12px;background:var(--white);border:1px solid #0f3d322c;font-size:14px;line-height:1.5}.choice:has(input:checked){background:#e4d5ed;border-color:#76548a}.choice input{margin:4px 0 0;accent-color:var(--green);flex-shrink:0}.choice:focus-within{outline:2px solid #775a86;outline-offset:2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:17px}form>label,.form-row>label{display:block;font-size:15px;font-weight:600}form input:not([type=radio]),form select,form textarea{display:block;width:100%;min-width:0;margin-top:7px;background:var(--white);border:1px solid #0f3d3240;padding:12px;font:16px/1.5 Arial;color:var(--green);border-radius:0}form textarea{resize:vertical}form input:focus,form select:focus,form textarea:focus{outline:2px solid #775a86;outline-offset:2px}.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.form-actions button{cursor:pointer;border:1px solid var(--green)}.outlined{background:transparent;color:var(--green)}.whatsapp-float{position:fixed;right:22px;bottom:20px;z-index:20;background:var(--green);color:white;border:1px solid #d5c4de;padding:12px 21px;border-radius:50px;font-size:15px;box-shadow:0 5px 22px #0003}.whatsapp-float:hover{background:#235c4c}footer{padding-bottom:90px!important}@media(max-width:1000px){.event-section,.wishes-grid{gap:45px}}@media(max-width:760px){.event-section,.wishes-grid{grid-template-columns:1fr;gap:30px}.event-section{padding-top:55px;padding-bottom:10px}.event-card{padding:28px}.wishes{padding:55px 0}.wishes-copy{max-width:none}.form-row{grid-template-columns:1fr;gap:17px}.whatsapp-float{right:15px;bottom:15px;padding:11px 18px;font-size:14px}.form-actions{flex-direction:column}.form-actions .button{width:100%}}@media(max-width:380px){.choice-grid{grid-template-columns:1fr}}

.about-photo{height:400px;max-width:380px;margin-top:32px;overflow:hidden}.about-photo img{object-position:center 32%}.about>div:last-child{padding-top:48px}#karin,#retraites{scroll-margin-top:0}@media(max-width:760px){.about-photo{height:360px;max-width:none;margin-bottom:22px}.about>div:last-child{padding-top:0}}

.event-section{align-items:start}.event-actions{display:flex;gap:12px;flex-wrap:wrap}.event-actions .button{padding:12px 18px}@media(max-width:760px){.event-actions .button{flex:1 1 160px}}
