:root{--color-bg:#faf8f5;--color-bg-alt:#f1ece4;--color-text:#2a2622;--color-text-secondary:#6b635a;--color-accent:#652480;--color-accent-soft:#6524801f;--color-accent-soft-strong:#65248033;--color-wood:#8a6d4b;--color-leaf:#5c6b4e;--color-border:#2a262224;--font-heading:"Syne", sans-serif;--font-body:"Source Serif 4", serif;--measure:680px;--gutter:20px;--space-xs:.5rem;--space-s:1rem;--space-m:1.5rem;--space-l:2rem;--space-xl:3rem;--space-section:3.5rem;--text-small:.85rem;--text-h1:clamp(1.4rem, 4vw + .4rem, 2.6rem);--text-h2:clamp(1.5rem, 3vw + 1rem, 2.2rem);--text-highlight:clamp(1.35rem, 2.5vw + 1rem, 1.9rem);--text-h3:clamp(1.2rem, 2vw + 1rem, 1.5rem)}*{box-sizing:border-box}html{color-scheme:light}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:18px;line-height:1.7;transition:background-color .3s,color .3s}@media (width>=720px){body{font-size:20px}}h1,h2,h3,h4{font-family:var(--font-heading);margin:0 0 .6em;font-weight:700;line-height:1.2}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}p{margin:0 0 1.3em}a{color:var(--color-accent)}strong{font-weight:700}.section{background:var(--color-bg);color:var(--color-text);padding:var(--space-section) 0}.section--alt{background:var(--color-bg-alt)}.section--dark{--color-bg:#14110f;--color-text:#ede5dc;--color-text-secondary:#c9bfb4;--color-accent:#b98fd1;--color-border:#ede5dc24}.container{max-width:var(--measure);padding-inline:var(--gutter);margin:0 auto}.eyebrow{font-family:var(--font-heading);font-size:var(--text-small);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin:0 0 var(--space-m)}.lead{font-family:var(--font-heading);font-weight:700;font-size:var(--text-highlight);line-height:1.4}.callout{color:var(--color-accent);font-family:var(--font-heading);font-weight:700;font-size:var(--text-highlight);margin:var(--space-l) 0;line-height:1.4}.callout--joined{margin-top:calc(-1 * var(--space-s))}.stack{margin:var(--space-l) 0}.stack p{margin-bottom:var(--space-xs)}.btn{font-family:var(--font-heading);border-radius:999px;padding:.9em 1.8em;font-size:1rem;font-weight:700;text-decoration:none;transition:opacity .2s,background-color .2s,color .2s;display:inline-block}.btn--primary{background:var(--color-accent);color:#faf8f5}.btn--primary:hover{opacity:.88}.btn--secondary{color:var(--color-accent);border:1px solid var(--color-accent);background:0 0}.btn--secondary:hover{background:var(--color-accent-soft)}.btn-wrap{margin-top:var(--space-l);text-align:center}.hero{text-align:center;padding:var(--space-l) 0 0}.hero-intro{margin-top:var(--space-l)}.brand-logo{width:auto;height:36px;margin:0 auto var(--space-l);display:block}.hero h1{text-wrap:balance;margin-bottom:0}.photo-placeholder{text-align:center;aspect-ratio:4/5;border:1px dashed var(--color-border);background:var(--color-accent-soft);width:100%;color:var(--color-text-secondary);font-family:var(--font-heading);font-size:var(--text-small);padding:var(--space-m);border-radius:4px;justify-content:center;align-items:center;display:flex}.photo-placeholder--wide{aspect-ratio:16/10}.portrait-photo,.wide-photo{border-radius:4px;width:100%;height:auto;display:block}.section>.container>.portrait-photo{max-width:380px;margin:0 auto var(--space-l)}.bio-block{gap:var(--space-l);align-items:start;display:grid}@media (width>=720px){.bio-block{grid-template-columns:1fr 1.4fr}}.tree-section .container{max-width:760px}.tree-photo{width:100%;margin:var(--space-xl) auto;border-radius:4px;display:block}.movements{margin:var(--space-xl) 0;border-left:1px solid var(--color-border);padding:0;list-style:none}.movements li{padding:0 0 var(--space-l) var(--space-l);position:relative}.movements li:last-child{padding-bottom:0}.movements li:before{content:"";background:var(--color-accent);border-radius:50%;width:9px;height:9px;position:absolute;top:.4em;left:-5px}.movements h3{margin-bottom:.3em}.movements p{color:var(--color-text-secondary);margin:0}.card{background:var(--color-bg);border:1px solid var(--color-border);padding:var(--space-l);border-radius:8px}.section--alt .card{background:var(--color-bg)}.card .price{font-family:var(--font-heading);color:var(--color-accent);margin:var(--space-l) 0 0;font-size:1em;font-weight:700}.paths{gap:var(--space-xl);margin:var(--space-xl) 0;display:grid}.path-block h3{color:var(--color-wood)}.path-block--transformation h3{color:var(--color-accent)}.path-divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-xl) 0}.eca-block{background:var(--color-accent-soft);padding:var(--space-l);text-align:center;border-radius:8px}.testimonial{max-width:560px;margin:var(--space-xl) auto 0;text-align:center}.testimonial blockquote{margin:0}.testimonial-name{font-family:var(--font-heading);color:var(--color-text-secondary);margin-top:var(--space-xs);font-weight:700}.testimonial+.testimonial{margin-top:var(--space-xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border)}.photo-placeholder--avatar{aspect-ratio:1;width:80px;height:80px;margin:0 auto var(--space-m);padding:var(--space-xs);border-radius:50%;font-size:.65rem}.closing{text-align:center}.closing p{font-family:var(--font-heading);font-size:var(--text-highlight);font-weight:700}footer{text-align:center;padding:var(--space-xl) var(--gutter);color:var(--color-text-secondary);font-size:var(--text-small)}.footer-logo{width:auto;height:28px;margin:0 auto var(--space-s);opacity:.8;display:block}.legal-entity{margin-top:var(--space-m);line-height:1.6}.legal-links{margin-top:var(--space-s)}.legal-links a{color:var(--color-text-secondary);text-decoration:underline}.legal-links span{margin:0 .4em}.legal-note{max-width:480px;margin:var(--space-s) auto 0;font-size:var(--text-small);opacity:.85;line-height:1.6}@media (width>=900px){footer{column-gap:var(--space-xl);max-width:1040px;margin:var(--space-xl) auto 0;border-top:1px solid var(--color-border);text-align:left;grid-template-columns:auto 1fr auto;align-items:start;display:grid}.footer-logo{margin:0 0 var(--space-xs);grid-area:1/1}footer>p:first-of-type{grid-area:2/1;margin:0}.legal-entity{grid-area:1/2/span 2;margin:0}.legal-links{text-align:right;flex-direction:column;grid-area:1/3/span 2;gap:.25rem;margin:0;display:flex}.legal-links span{display:none}.legal-note{max-width:none;margin:var(--space-l) 0 0;padding-top:var(--space-m);border-top:1px solid var(--color-border);text-align:center;grid-column:1/-1}}.booking-form{max-width:420px;margin:var(--space-xl) auto 0;text-align:left}.hp-field{position:absolute;left:-9999px}.form-field{margin-bottom:var(--space-m)}.form-field label{font-family:var(--font-heading);font-size:var(--text-small);margin-bottom:var(--space-xs);font-weight:700;display:block}.form-field input[type=text],.form-field input[type=email],.form-field input[type=tel]{width:100%;font-family:var(--font-body);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);border-radius:4px;padding:.7em .9em;font-size:1rem}.form-field input:focus{outline:2px solid var(--color-accent);outline-offset:1px}.form-field--checkbox{align-items:flex-start;gap:.6rem;display:flex}.form-field--checkbox input{flex-shrink:0;margin-top:.3rem}.form-field--checkbox label{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text-secondary);margin-bottom:0;font-weight:400}.form-field--checkbox a{color:var(--color-accent)}.booking-form .btn{cursor:pointer;border:none}.legal h1{margin-bottom:.3em}.legal-updated{color:var(--color-text-secondary);font-size:var(--text-small);margin-bottom:var(--space-l)}.legal h2{margin-top:2.2em}.legal ul{margin:0 0 1.3em;padding-left:1.2em}.legal ul li{margin-bottom:.5em}.legal-draft-note{margin-top:var(--space-xl);padding-top:var(--space-m);border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:var(--text-small)}
