@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700&display=swap');
:root{--cream:#f8f5ed;--green:#304b39;--ink:#25382c;--muted:#627062;--line:#dcded1;--sage:#e7ebdf;--orange:#a45736}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}header{display:flex;align-items:center;justify-content:space-between;padding:25px 5%;gap:24px;border-bottom:1px solid var(--line);background:var(--cream)}.brand{font-family:Manrope,Arial,sans-serif;font-size:15px;letter-spacing:2px;font-weight:700;line-height:1.4}.brand span{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:7px}nav{display:flex;gap:32px;font-size:13px;align-items:center}.nav-contact{border-bottom:1px solid;padding-bottom:4px}.langs{display:flex;gap:9px;align-items:center;font-size:12px}.langs button{padding:5px;background:none;border:0;color:var(--muted);cursor:pointer}.langs button[aria-pressed=true]{color:var(--green);font-weight:bold;text-decoration:underline;text-underline-offset:5px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:670px}.hero-copy{padding:82px 8% 65px 10%}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:700;margin:0 0 22px;color:var(--orange)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2px;line-height:1.06;margin:0 0 25px}h1{font-size:clamp(46px,5.3vw,80px)}h2{font-size:clamp(38px,4vw,59px)}em{font-weight:400;color:#6e7958}h3{font-weight:500;font-size:22px;line-height:1.3;margin:0 0 15px}.lead{max-width:460px;font-size:17px;color:var(--muted);margin:28px 0}.button{display:inline-flex;background:var(--green);color:white;border-radius:3px;padding:16px 24px;font-size:14px;transition:transform .2s,background .2s}.button:hover{background:#416548;transform:translateY(-2px)}.micro{font-size:11px;margin-top:18px;color:var(--muted)}.hero-image{position:relative;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:62% center}.image-note{position:absolute;bottom:35px;left:32px;background:var(--cream);padding:18px 25px;font-family:Georgia,serif;font-size:24px;line-height:1.25;transform:rotate(-3deg)}.ribbon{background:var(--sage);display:flex;justify-content:center;align-items:center;gap:45px;padding:22px 5%;font-size:12px}.star{font-size:23px;color:#7e896a}.section{padding:95px 7%;max-width:1500px;margin:auto}.section-head{display:grid;grid-template-columns:1fr 1fr;column-gap:12%;align-items:end}.section-head .eyebrow{grid-column:1/-1}.section-head>p:last-child{color:var(--muted);max-width:420px;margin-bottom:30px}.goals{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.goals article{border-top:1px solid #a6b29b;padding-top:20px}.number{font-family:Georgia,serif;font-size:33px;color:#a0a98a;display:block;margin-bottom:35px}.goals p,.offer p{color:var(--muted);font-size:15px}.approach{background:var(--sage);max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-left:9%;padding-right:9%}.approach-intro{max-width:470px;color:#53614e}.habit{border-left:2px solid #8d997b;padding:10px 0 5px 22px;margin-top:35px}.habit span{font-size:10px;letter-spacing:1.5px}.habit>p{font-family:Georgia,serif;font-size:24px;margin:10px 0}.habit .habit-answer{font:14px/1.6 'DM Sans',sans-serif;max-width:390px}.steps{padding:15px 0;margin:0;list-style:none}.steps li{display:flex;gap:25px;padding:30px 0;border-bottom:1px solid #bac5b0}.steps li>span{font-family:Georgia,serif;font-size:26px;color:#78876d}.steps p{margin:0;color:#566650;font-size:15px}.about{display:grid;grid-template-columns:.9fr 1fr;gap:10%;align-items:center}.portrait{position:relative}.portrait img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:200px 200px 3px 3px}.portrait>span{display:block;font-size:10px;letter-spacing:2px;text-align:center;margin-top:15px}.about-copy>p{color:var(--muted)}.about-copy .eyebrow{color:var(--orange)}.credentials{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.credentials span{font-size:11px;border:1px solid #c8cdbf;padding:6px 10px}.scope{font-size:12px;border-top:1px solid var(--line);padding-top:20px}.offer{border-top:1px solid var(--line)}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px;margin-bottom:25px}.text-link{font-size:13px;border-bottom:1px solid;padding-bottom:4px}.faq{background:#eeeade;max-width:none;display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.questions details{border-bottom:1px solid #cbd0bf;padding:20px 0}.questions summary{cursor:pointer;font-size:17px;line-height:1.4;padding-right:15px}.questions p{color:#596553;font-size:14px;max-width:640px}.contact{text-align:center;padding:90px 20px;background:var(--green);color:var(--cream)}.contact .eyebrow{color:#c6caa6}.contact em{color:#d6c8a4}.contact>p:not(.eyebrow){max-width:570px;margin:20px auto 28px}.cream{background:var(--cream);color:var(--green)}.cream:hover{background:#e6e8d9}.email-address{display:block;margin:20px auto;font-size:13px}.contact .contact-privacy{font-size:11px;opacity:.8;max-width:500px}footer{padding:40px 7%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;font-size:12px}footer p{margin:0;color:var(--muted)}footer details{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px}footer details p{max-width:850px;margin-top:15px}summary{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #c07744;outline-offset:5px}.skip{position:absolute;left:15px;top:-100px;background:white;z-index:9;padding:10px}.skip:focus{top:10px}@media(max-width:800px){header{padding:20px 6%;flex-wrap:wrap}nav{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7% 45px}.hero-image{height:400px}.ribbon{gap:15px;flex-wrap:wrap;font-size:11px}.ribbon .star{display:none}.section{padding:60px 7%}.section-head,.approach,.about,.faq{grid-template-columns:1fr;gap:35px}.goals,.offer-grid{grid-template-columns:1fr;gap:25px}.number{margin-bottom:15px}.goals{margin-top:15px}.about .portrait{max-width:440px;margin:auto}.about-copy{padding-top:5px}footer{grid-template-columns:1fr;gap:20px}h1{font-size:55px}h2{font-size:43px}.contact{padding:65px 7%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Readable secondary text and balanced line wrapping across languages. */
h1,h2,h3,summary,.image-note{text-wrap:balance}p{text-wrap:pretty}.eyebrow{font-size:12px;letter-spacing:1.7px}.micro{font-size:14px;line-height:1.6;margin-top:22px}.image-note{font-size:25px;max-width:calc(100% - 64px)}.ribbon{font-size:14px;gap:30px}.credentials{display:grid;justify-items:start;gap:10px}.credentials span{font-size:14px;line-height:1.6;padding:8px 13px}.scope{font-size:14px;line-height:1.7}.habit span{font-size:12px}.contact .contact-privacy{font-size:13px;opacity:1}footer{font-size:14px}.email-address{font-size:15px}@media(max-width:800px){.hero-copy{padding-top:40px}.hero-image{height:360px}.image-note{left:20px;bottom:24px;max-width:calc(100% - 40px);padding:16px 20px;font-size:23px}.ribbon{align-items:flex-start;flex-direction:column;gap:8px;padding:25px 7%;font-size:14px}.credentials span{max-width:100%}.eyebrow{line-height:1.6}.micro{font-size:13px}}

/* Life à la Carte: shared identity and language-aware editorial rhythm. */
header{padding:14px 5%;max-width:1600px;margin:auto}
.brand{display:inline-flex;flex-direction:column;align-items:center;flex-shrink:0;letter-spacing:0}
.brand img{display:block;width:164px;height:auto;mix-blend-mode:darken}
.brand span{font-size:9px;letter-spacing:1.3px;margin:0 0 8px;line-height:1.5}
footer .brand{align-items:flex-start;justify-self:start}footer .brand img{width:185px}
.hero{min-height:0;max-width:1600px;margin:auto;grid-template-columns:1.04fr 1fr}
.hero-copy{padding:58px 9% 52px 10%;align-self:center}
.hero-image{min-height:560px}.hero-image img{position:absolute;inset:0}
.lead{font-size:18px;line-height:1.7;max-width:32ch}
.section{padding-top:78px;padding-bottom:78px;max-width:1320px}
.approach,.faq{max-width:none;gap:8%}
.section-head{column-gap:8%;align-items:center}
.goals,.offer-grid{gap:32px}.number{margin-bottom:22px;color:var(--orange)}
.goals article{padding:24px 24px 20px;background:#eeeee3;border-top:3px solid #d38b70;border-radius:2px}
.goals p,.offer p,.steps p{font-size:16px;line-height:1.65}
.offer-grid>div{border-left:2px solid #d38b70;padding-left:20px}
.about{gap:7%;grid-template-columns:.86fr 1fr}
.about .portrait{max-width:470px;width:100%}
.about-copy>p{font-size:17px;line-height:1.7}
html[lang=en] .hero h1{font-size:clamp(52px,5.8vw,84px);max-width:11ch}
html[lang=en] .hero-copy{padding-top:48px;padding-bottom:48px}
html[lang=en] .section{padding-top:64px;padding-bottom:64px}
html[lang=en] .approach{gap:7%}
html[lang=en] .approach-intro{font-size:17px;max-width:35ch}
html[lang=en] .about{grid-template-columns:.78fr 1fr}
html[lang=en] .about-copy{max-width:560px}
@media(max-width:800px){
header{padding:10px 6%;flex-wrap:nowrap}.brand img{width:133px}.brand span{font-size:8px;letter-spacing:.8px}
.hero{grid-template-columns:1fr}.hero-copy,html[lang=en] .hero-copy{padding:38px 7% 36px}.hero-image{min-height:0;height:360px}
html[lang=en] .hero h1{font-size:clamp(48px,11vw,66px);max-width:13ch}
.section,html[lang=en] .section{padding:52px 7%}.section-head,.approach,.about,html[lang=en] .about,.faq{grid-template-columns:1fr;gap:28px}
.lead{max-width:36ch}.goals,.offer-grid{gap:20px}.goals article{padding:22px}.number{margin-bottom:14px}
.about-copy>p{font-size:16px}.about .portrait{max-width:400px}
}

