@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;1,400&display=swap');
:root{--dark:#17221b;--mid:#2a4232;--paper:#f5f1e9;--tint:#eae6dd;--ink:#203026;--muted:#637063;--accent:#bda889;--border:#d3cdc0;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:1190px;width:calc(100% - 64px);margin:auto}.skip{position:absolute;left:-10000px}.skip:focus{left:20px;top:10px;background:white;padding:10px;z-index:100}.header{background:var(--dark);color:#e8e8e0;position:sticky;top:0;z-index:20;border-bottom:1px solid #ffffff22}.head{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:18px}.identity{display:flex;align-items:center;gap:13px;white-space:nowrap}.brand-mark{height:29px;width:34px;display:flex;gap:5px;align-items:center;transform:rotate(-20deg)}.brand-mark span{width:5px;background:#c5b397;border-radius:4px}.brand-mark span:nth-child(1){height:16px}.brand-mark span:nth-child(2){height:29px}.brand-mark span:nth-child(3){height:21px}.wordmark{font-size:12px;letter-spacing:.13em;font-weight:700}.wordmark em{font-weight:400;font-style:normal;color:#c5b397}.nav{display:flex;gap:23px;align-items:center}.nav a,.lang a{font-size:12px;color:#cdd3c9}.nav a:hover,.lang a:hover{text-decoration:underline}.lang{display:flex;gap:8px}.lang strong{color:#f3f1e8;font-size:12px}.hero{background:var(--dark);color:var(--paper);position:relative;overflow:hidden}.hero-inner{min-height:570px;display:flex;align-items:center;position:relative;padding:75px 0 95px}.hero-copy{max-width:680px;position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#cfba9b;font-weight:700}.hero h1{font:400 clamp(55px,7vw,104px)/1.09 var(--serif);letter-spacing:-.045em;margin:27px 0}.hero em,.display em{color:var(--accent);font-weight:400}.lead{font-size:17px;max-width:560px;line-height:1.85;color:#d2d9d0}.orbit{position:absolute;right:-10%;top:10%;width:56%;aspect-ratio:1;border-radius:50%;border:1px solid #c5b39733;box-shadow:0 0 0 70px #c5b39709,0 0 0 148px #c5b39708}.hero-foot{border-top:1px solid #ffffff33;padding:20px 0;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.17em;color:#c1c9bd;gap:12px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;background:var(--mid);color:white;padding:15px 24px;font-size:12px;letter-spacing:.02em;font-weight:700;border:1px solid var(--mid);transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.light{background:#eee7d9;color:var(--dark);border-color:#eee7d9}.btn.outline{background:transparent;color:var(--mid)}.btn-outline-light{border:1px solid #b7c2b1;color:#f4f1e9;background:transparent}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:33px}.section{padding:100px 0}.section.tinted{background:var(--tint)}.split{display:grid;grid-template-columns:26% 1fr;gap:45px}.index{color:#967f63;font-size:11px;letter-spacing:.15em;font-weight:700;text-transform:uppercase;margin:0 0 24px}.display{font:400 clamp(37px,4.9vw,71px)/1.17 var(--serif);letter-spacing:-.045em;margin:0 0 27px}.body-text{font-size:15px;line-height:1.95;color:#5b675d;max-width:740px}.pill-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:26px}.pill{padding:9px 12px;border:1px solid #bebdaf;font-size:11px;color:#647064}.statement{background:#263d2f;color:#f3eee7;text-align:center;padding:85px 0}.statement p{font:400 clamp(33px,4.4vw,60px)/1.3 var(--serif);margin:0}.statement em{color:#c3ae90}.statement small{display:block;margin-top:29px;letter-spacing:.15em;color:#b8c6b8;font-size:10px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.card{padding:28px;background:#f8f5ef;border:1px solid var(--border);display:flex;flex-direction:column;min-height:280px}.card small{font-size:10px;letter-spacing:.12em;color:#8f785d;text-transform:uppercase}.card h3{font:400 29px/1.26 var(--serif);margin:15px 0}.card p{font-size:13px;line-height:1.78;color:#667067;flex:1}.card a:last-child{font-size:12px;color:#2d553a;font-weight:700;padding-top:13px}.line-list{border-top:1px solid var(--border)}.line-item{display:grid;grid-template-columns:65px 1fr auto;gap:20px;padding:27px 0;border-bottom:1px solid var(--border);align-items:start}.line-item .num{color:#99846c;font:italic 24px var(--serif)}.line-item h3{font:400 32px var(--serif);margin:0 0 12px}.line-item p{font-size:14px;line-height:1.8;color:#617066;max-width:770px}.line-item .price{font-size:15px;font-weight:700;color:var(--mid);white-space:nowrap}.callouts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.callout{padding:30px;background:#f8f5ef;border:1px solid var(--border)}.callout h3{font:400 30px var(--serif);margin:0 0 12px}.callout p{font-size:14px;line-height:1.75;color:#667166}.callout .btn{margin-top:18px}.pagehero{background:var(--dark);color:var(--paper);padding:90px 0}.pagehero h1{font:400 clamp(42px,6vw,76px)/1.12 var(--serif);margin:12px 0 22px;max-width:900px}.pagehero p:last-child{color:#c3cbc1;max-width:700px;line-height:1.8}.weeks{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:36px}.week{background:#f8f5ef;border:1px solid var(--border);padding:28px}.week small{color:#977f62;font-size:11px;letter-spacing:.12em}.week h3{font:400 29px var(--serif);margin:10px 0}.week p{color:#647065;font-size:14px;line-height:1.8}.article-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.article-tile{padding:32px;border:1px solid var(--border);background:#f9f7f1;min-height:260px;display:flex;flex-direction:column}.article-tile small{color:#977f62;letter-spacing:.12em;font-size:10px;text-transform:uppercase}.article-tile h2{font:400 30px/1.25 var(--serif)}.article-tile p{color:#647065;line-height:1.7;font-size:14px;flex:1}.article-tile a{color:#2e573b;font-size:12px;font-weight:700}.article-wrap{max-width:810px;width:calc(100% - 48px);margin:auto}.article-content{padding:62px 0 100px}.article-content h2{font:400 34px/1.3 var(--serif);margin:45px 0 15px}.article-content p,.article-content li{font-size:16px;line-height:1.95;color:#4f5f53}.article-content ul{padding-left:24px}.article-content a{color:#25633f;text-decoration:underline;text-underline-offset:3px}.article-content blockquote{margin:36px 0;padding:15px 25px;border-left:3px solid #a48b64;background:#eeeae1;font:italic 24px var(--serif)}.article-sources{border-top:1px solid var(--border);padding-top:25px;margin-top:40px}.article-sources li{font-size:13px}.breadcrumb{font-size:12px;color:#b9c5b8}.breadcrumb a{text-decoration:underline}.notice{font-size:12px;line-height:1.7;color:#7c806f;margin-top:18px}.footer{background:var(--dark);color:#f3f0e8;padding:50px 0 24px}.footer .claim{font:italic 30px var(--serif);color:#baa98c;margin:28px 0 50px}.footer-bottom{border-top:1px solid #ffffff33;padding-top:24px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:11px;color:#b8c4b6}.footer a{text-decoration:underline;text-underline-offset:3px}.small-link{font-size:12px;font-weight:700;color:#2b5939}.site-alert{border-left:3px solid #a48b64;padding:14px 20px;background:#e9e2d5;font-size:13px;line-height:1.7}.social-list{display:flex;gap:15px;flex-wrap:wrap}.social-list a{font-size:12px;text-decoration:underline}.narrow{max-width:700px}.simple-content p{line-height:1.9;color:#57675c}.simple-content h2{font:400 31px var(--serif)}
@media(max-width:850px){.nav{gap:12px}.nav a{font-size:11px}.wrap{width:calc(100% - 40px)}.split{grid-template-columns:1fr;gap:12px}.cards{grid-template-columns:1fr 1fr}.hero-inner{min-height:520px}.orbit{right:-50%;width:90%}}@media(max-width:640px){.head{flex-wrap:wrap;justify-content:center;padding:15px 0;gap:15px}.nav{order:3;justify-content:center;width:100%;flex-wrap:wrap;gap:13px}.wordmark{font-size:10px}.hero h1{font-size:clamp(48px,13vw,68px)}.hero-inner{padding:60px 0}.hero-foot{font-size:8px}.section{padding:67px 0}.display{font-size:clamp(37px,10vw,54px)}.cards,.article-grid,.weeks,.callouts{grid-template-columns:1fr}.line-item{grid-template-columns:28px 1fr;gap:15px}.line-item .price{grid-column:2}.card{min-height:0}.pagehero{padding:58px 0}.article-content{padding-top:35px}.footer-bottom{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* FAQ: native keyboard-friendly expand/collapse */
.faq-list{max-width:850px;margin-left:auto;margin-right:auto}
.faq-item{border-bottom:1px solid #cdd4cd;padding:18px 0}
.faq-item:first-child{border-top:1px solid #cdd4cd}
.faq-item summary{cursor:pointer;font-family:inherit;font-size:clamp(18px,2.1vw,24px);font-weight:600;line-height:1.4;list-style:none;padding-right:36px;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';position:absolute;right:6px;top:0;font-weight:400}
.faq-item[open] summary::after{content:'−'}
.faq-item p{line-height:1.75;max-width:720px;margin:14px 0 4px}
.faq-item summary:focus-visible{outline:2px solid currentColor;outline-offset:4px}

/* Consultation CTA without a fake link until booking is configured */
.consultation-pending{display:inline-block;color:inherit;font-weight:600;opacity:.85;margin-top:8px}
