@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
:root{--bg:#F8F7F3;--surface:#F0EEE8;--forest:#4F5B47;--forest-dark:#3F4A39;--text:#30342E;--secondary:#60665D;--border:#DADCD2;--white:#FFFDF9}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:400 15px/1.75 'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #75846b;outline-offset:4px}
.wrap{max-width:1120px;margin:0 auto;padding:0 38px}.narrow{max-width:760px;margin:auto}.center{text-align:center}.center p{margin-left:auto;margin-right:auto}
header{background:var(--bg);border-bottom:1px solid var(--border);position:relative;z-index:10}.nav{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:88px}.brand{font:400 31px/1 'DM Serif Display',Georgia,serif;letter-spacing:-.025em;color:var(--forest);white-space:nowrap}.brand span{display:block;font:500 9px/1.3 'DM Sans',sans-serif;letter-spacing:.19em;color:var(--secondary);text-align:center;text-transform:uppercase;margin-top:7px}.links{display:flex;align-items:center;gap:27px}.links a{font-size:11.5px;font-weight:500;color:#545b50;white-space:nowrap;transition:color .15s}.links a:hover,.links a.active{color:var(--forest);text-decoration:underline;text-underline-offset:8px}.mobile-toggle{display:none;background:none;border:0;color:var(--text);font-size:24px;cursor:pointer}
h1,h2,h3,.display,.statement{font-family:'DM Serif Display',Georgia,serif;font-weight:400;letter-spacing:-.025em}h1{font-size:clamp(56px,7.7vw,95px);line-height:1.08;margin:25px 0 25px}h2{font-size:clamp(37px,4.5vw,54px);line-height:1.15;margin:14px 0 24px}h3{font-size:26px;line-height:1.22;margin:0 0 12px}p{margin:0 0 20px}.lead,p.lead{font-size:17px;line-height:1.9;max-width:610px;color:var(--secondary)}.eyebrow{font-size:10px;line-height:1.6;text-transform:uppercase;font-weight:700;letter-spacing:.19em;color:var(--forest)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:14px 28px;background:var(--forest);color:#fff;border:1px solid var(--forest);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:background .2s}.button:hover{background:var(--forest-dark)}.button.outline{background:transparent;color:var(--forest)}.button.outline:hover{background:var(--surface)}.button.light{background:var(--white);color:var(--forest);border-color:var(--white)}
.hero{padding:118px 24px 126px;text-align:center}.hero .lead{margin:0 auto 33px}.hero h1{margin-top:19px;margin-bottom:27px}.hero .eyebrow{color:#697762}
.section{padding:96px 0}.section.beige{background:var(--surface)}.section.olive{background:var(--forest);color:var(--white)}.section.olive .eyebrow{color:#d2dcca}.section.olive .lead,.section.olive p{color:#ebeee8}.section.olive h2{color:#fff}
.split{display:grid;grid-template-columns:1fr 1fr;gap:88px;align-items:center}.split>div{min-width:0}.split p{max-width:510px}.split .button{margin-top:7px}
.statement{font-size:clamp(37px,4.2vw,54px);line-height:1.19;color:var(--forest);margin:0}.panel{padding:0 0 0 43px;border:0;border-left:1px solid #b9c1b2;background:transparent}.panel .eyebrow{margin-bottom:20px}.panel .statement{margin-bottom:22px}.panel p:last-child{margin-bottom:0}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;margin-top:58px;text-align:left}.card{border-top:1px solid #b7c0b1;padding:26px 0 0;background:transparent;min-height:0}.card .num{font-size:10px;letter-spacing:.16em;color:var(--forest);margin:0 0 31px;font-weight:700}.card p{font-size:14px;color:var(--secondary);line-height:1.8;max-width:300px}.section.centerblock .lead{margin:0 auto}.closing{text-align:center;max-width:720px;margin:auto}.closing .lead{margin:0 auto 31px}
.page-intro{padding:103px 0 88px}.page-intro h1{font-size:clamp(54px,7vw,83px)}.page-intro .lead{margin-bottom:0}.inner{max-width:760px;margin:auto}
.coming{min-height:66vh;padding:110px 0 128px;display:flex;align-items:center;text-align:center}.coming h1{font-size:clamp(55px,7.4vw,88px)}.coming .lead{margin:0 auto 27px}.coming .thin-line{width:50px;height:1px;background:#aeb8a4;margin:29px auto}.tag{display:inline-block;padding:7px 13px;border:1px solid #c4cbbf;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--forest);margin-bottom:23px}
.form-shell{padding:42px;background:var(--white);border:1px solid var(--border)}.form-shell label{display:block;margin:0 0 8px;color:var(--text);font-size:12px;font-weight:600}.field{margin-bottom:23px}.form-shell input,.form-shell textarea{width:100%;border:1px solid #CFD2C8;border-radius:0;background:var(--bg);color:var(--text);padding:12px 14px;outline:none}.form-shell input:focus,.form-shell textarea:focus{border-color:var(--forest)}.form-shell textarea{resize:vertical;min-height:145px}.form-shell .button{width:100%}.error{font-size:12px;color:#A03D35}.contact-columns{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;align-items:start}.contact-columns a.mail{color:var(--forest);text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.rule{height:1px;background:var(--border);margin:32px 0}.fine{font-size:12px;color:var(--secondary)}
.foot .brand{display:inline-flex;flex-direction:column;align-items:flex-start}.foot .brand span{text-align:left;margin-top:7px;letter-spacing:.12em;font-size:9px}.foot{background:var(--surface);padding:68px 0 27px}.foot-top{display:flex;justify-content:space-between;gap:35px;padding-bottom:50px;border-bottom:1px solid #D3D7CC}.foot-top p{font-size:13px;color:var(--secondary);margin-top:21px}.foot .foot-nav{display:grid;grid-template-columns:repeat(3,auto);gap:14px 33px;align-content:center}.foot-nav a{font-size:12px;color:#545c51}.foot-nav a:hover{text-decoration:underline}.foot-bottom{display:flex;justify-content:space-between;gap:15px;padding-top:23px;font-size:11px;color:var(--secondary)}
@media(max-width:950px){.nav{min-height:75px}.mobile-toggle{display:block}.links{display:none;position:absolute;top:75px;left:0;right:0;background:var(--bg);padding:22px 38px 28px;border-bottom:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:17px}.links.open{display:flex}.links a{font-size:13px}.split,.contact-columns{gap:55px}}
@media(max-width:700px){.wrap{padding:0 24px}.hero{padding:86px 24px 94px}.hero h1{font-size:clamp(53px,12vw,75px)}.section{padding:69px 0}.split,.contact-columns{grid-template-columns:1fr;gap:34px}.panel{padding-left:24px}.cards{grid-template-columns:1fr;gap:25px;margin-top:40px}.card{padding-top:21px}.card .num{margin-bottom:17px}.card p{margin-bottom:0}.page-intro{padding:72px 0 62px}.coming{padding:76px 0 100px}.foot{padding-top:52px}.foot-top{flex-direction:column;gap:22px}.foot .foot-nav{grid-template-columns:repeat(2,auto);justify-content:start;gap:13px 25px}.foot-bottom{flex-direction:column}.form-shell{padding:25px}.links{padding-left:24px;padding-right:24px}h2{font-size:clamp(36px,10vw,47px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* medical disclaimer footer */
.medical-disclaimer{max-width:970px;margin:0 auto 22px;padding-top:22px;border-top:1px solid #D3D7CC;font-size:11px;line-height:1.7;color:#62685F;text-align:left}.medical-disclaimer strong{font-weight:700;color:#4F5B47}

/* The Well: single-page continuous layout */
html{scroll-padding-top:94px}
header{position:sticky;top:0;background:rgba(248,247,243,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
main section[id]{scroll-margin-top:88px}
.one-hero{min-height:560px;display:flex;align-items:center;padding:116px 24px 119px}
.one-hero .lead{max-width:610px}
.section-about{background:var(--surface);padding:99px 0 107px}
.about-intro{margin-bottom:66px}
.about-intro .lead{max-width:680px}
.about-layout{display:grid;grid-template-columns:1.18fr .82fr;gap:93px;padding-top:43px;border-top:1px solid var(--border);align-items:start}
.about-layout h3{font-size:clamp(31px,3.7vw,43px);margin:13px 0 19px}
.about-layout p{color:var(--secondary);max-width:565px}
.about-credentials{border-left:1px solid #cbd0c4;padding-left:43px}
.about-credentials p{line-height:2.1;margin-top:15px}
.single-feature{padding:92px 0 98px;background:var(--bg);border-top:1px solid var(--border)}
.single-feature.alternate{background:#f2f0ea}
.single-feature h2{margin-bottom:15px}
.single-feature .lead{max-width:545px;margin:19px auto 23px}
.coming-label{display:inline-block;color:var(--forest);font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:10px}
.text-link{display:inline-block;color:var(--forest);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:6px}
.text-link:hover{color:var(--forest-dark)}
.section-contact{background:var(--surface);padding:100px 0 110px;border-top:1px solid var(--border)}
.contact-intro{margin-bottom:64px}
.contact-intro .lead{margin-bottom:0}
.contact-details h3{font-size:35px;margin:14px 0 18px}
.contact-details p{color:var(--secondary);max-width:410px}
.foot{padding-top:48px}
@media(max-width:950px){html{scroll-padding-top:79px}main section[id]{scroll-margin-top:75px}.about-layout{gap:47px}.about-credentials{padding-left:25px}}
@media(max-width:700px){.one-hero{min-height:470px;padding:90px 22px 96px}.section-about{padding:70px 0 75px}.about-intro{margin-bottom:38px}.about-layout{grid-template-columns:1fr;gap:32px;padding-top:30px}.about-credentials{border-left:none;border-top:1px solid var(--border);padding:29px 0 0}.single-feature{padding:67px 0 72px}.section-contact{padding:70px 0 80px}.contact-intro{margin-bottom:38px}.contact-details h3{font-size:31px}}


/* About section centered alignment */
#about .about-layout{grid-template-columns:1fr;gap:25px;max-width:760px;margin:0 auto;text-align:center}
#about .about-layout>div{text-align:center}
#about .about-layout p{margin-left:auto;margin-right:auto}
#about .about-credentials{border-left:0;border-top:1px solid var(--border);padding:28px 0 0;margin:0 auto;width:100%;max-width:620px}
#about .about-credentials p{margin:15px auto 0}
#about .about-layout h3{text-align:center}
@media(max-width:700px){#about .about-layout{gap:24px}#about .about-credentials{padding-top:24px}}


/* Contact section centered alignment */
#contact .contact-columns{grid-template-columns:minmax(0,1fr);max-width:670px;margin:0 auto;gap:38px;text-align:center}
#contact .contact-details{text-align:center}
#contact .contact-details p{margin-left:auto;margin-right:auto}
#contact .contact-details h3{text-align:center}
#contact .form-shell{width:100%;max-width:610px;margin:0 auto;text-align:left}
@media(max-width:700px){#contact .contact-columns{gap:30px}}

/* Ashlee Richardson Wellness identity */
.brand{font-size:clamp(20px,2.1vw,26px);letter-spacing:-.025em}.brand span{letter-spacing:.16em;margin-top:9px}.nav{gap:20px}.links{gap:18px}.links a{font-size:11px}.wrap{max-width:1180px}@media(max-width:1120px){.mobile-toggle{display:block}.links{display:none;position:absolute;left:0;right:0;top:88px;background:var(--bg);padding:22px 38px;border-bottom:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:17px}.links.open{display:flex}.links a{font-size:13px}}@media(max-width:700px){.brand{font-size:clamp(19px,5vw,24px)}.nav{min-height:75px}.links{top:75px;padding:22px 24px}.brand span{font-size:8px}}

/* Header tagline alignment */
header .brand span{text-align:left}

/* Header brand same alignment as footer */
header .nav > a.brand{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left}header .nav > a.brand > span{display:block;text-align:left;width:auto;align-self:flex-start;margin-left:0;margin-right:0}

/* Header tagline refined sizing */
header .nav > a.brand > span{font-size:11px;letter-spacing:.17em;line-height:1.35;margin-top:8px;white-space:nowrap;text-align:left;align-self:flex-start}
@media(max-width:700px){header .nav > a.brand > span{font-size:9px;letter-spacing:.12em}}

/* Harmonized section palette */
:root{
 --bg:#FAF9F5;
 --surface:#F3F1EB;
 --forest:#526047;
 --forest-dark:#424F3A;
 --text:#30352E;
 --secondary:#62675F;
 --border:#E3E2D9;
 --white:#FFFDF9;
}
body,header{background:var(--bg)}
header{background:rgba(250,249,245,.97);border-bottom:1px solid var(--border)}
.one-hero{background:var(--bg)}
#about.section-about{background:var(--surface)}
#work-with-me.single-feature,
#podcast.single-feature,
#speaking-events.single-feature.alternate{background:var(--bg)}
#resources.single-feature.alternate,
#contact.section-contact{background:var(--surface)}
#about,#work-with-me,#podcast,#resources,#speaking-events,#contact{border-top:0}
#podcast{border-top:1px solid var(--border)}
#contact{border-top:1px solid var(--border)}
.foot{background:var(--surface);border-top:1px solid var(--border)}
.form-shell{background:var(--white);border-color:var(--border)}
.form-shell input,.form-shell textarea{background:#FAF9F5}

/* Consistent alternating section backgrounds */
#home.one-hero{background:var(--bg)}
#about.section-about{background:var(--surface)}
#work-with-me.single-feature{background:var(--bg)}
#podcast.single-feature{background:var(--surface)}
#resources.single-feature.alternate{background:var(--bg)}
#speaking-events.single-feature.alternate{background:var(--surface)}
#contact.section-contact{background:var(--bg)}
footer.foot{background:var(--surface)}

/* Oatmeal header color */
header{background:var(--surface)}
@media(max-width:1120px){header .links{background:var(--surface)}}

/* Refined Meet Ashlee section */
#about.section-about{padding-top:102px;padding-bottom:105px}
#about .about-layout{max-width:730px;gap:0;border-top:0;padding-top:0}
#about .about-personal{max-width:660px;margin:0 auto}
#about .about-personal .eyebrow{margin-bottom:14px}
#about .about-personal h3{font-size:clamp(42px,5.5vw,64px);line-height:1.12;margin:0 0 26px}
#about .about-personal p{font-size:16px;line-height:1.85;max-width:620px;margin:0 auto 17px}
#about .about-personal p:last-child{margin-top:23px;margin-bottom:0;font-family:'DM Serif Display',Georgia,serif;font-size:25px;color:var(--forest)}
#about .about-credentials{border-top:1px solid #d5d8cc;margin:50px auto 0;padding:36px 0 0;max-width:540px}
#about .about-credentials .eyebrow{margin-bottom:11px}
#about .about-credentials p{font-size:14px;line-height:2.05}
@media(max-width:700px){#about.section-about{padding-top:73px;padding-bottom:79px}#about .about-personal p{font-size:15px}#about .about-credentials{margin-top:38px;padding-top:29px}}

/* About portrait and text layout */
#about .about-layout{max-width:1000px;margin:0 auto;display:block}
#about .about-personal{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);align-items:center;gap:64px;max-width:960px;margin:0 auto}
#about .about-photo{width:100%;max-width:385px;aspect-ratio:4/5;overflow:hidden;background:#e4ddd0}
#about .about-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 39%}
#about .about-copy{text-align:left;min-width:0}
#about .about-copy .eyebrow,#about .about-copy h3{text-align:left}
#about .about-copy h3{font-size:clamp(41px,4.7vw,61px);margin:12px 0 24px}
#about .about-copy p{font-size:15.5px;line-height:1.82;text-align:left;max-width:580px;margin:0 0 17px}
#about .about-copy p:last-child{font-family:'DM Serif Display',Georgia,serif;color:var(--forest);font-size:24px;margin-top:24px}
#about .about-credentials{max-width:590px;margin:58px auto 0;padding:34px 0 0;border-top:1px solid #d5d8cc;text-align:center}
#about .about-credentials .eyebrow,#about .about-credentials p{text-align:center}
@media(max-width:740px){#about .about-personal{grid-template-columns:1fr;gap:34px;max-width:590px}#about .about-photo{max-width:340px;margin:0 auto;aspect-ratio:4/4.7}#about .about-copy{text-align:center}#about .about-copy .eyebrow,#about .about-copy h3,#about .about-copy p{text-align:center}#about .about-copy p{margin-left:auto;margin-right:auto}#about .about-credentials{margin-top:42px}}

/* Final spacing and layout polish */
:root{--content-width:1160px}
html{scroll-padding-top:94px}
.wrap{max-width:var(--content-width)}
header .nav{min-height:88px}
header .brand{flex-shrink:0}
.links{gap:19px}
.links a{line-height:1.45}
h1,h2,h3{overflow-wrap:normal}
main .eyebrow{letter-spacing:.17em}
#home.one-hero{min-height:610px;padding:104px 24px 110px}
#home .narrow{max-width:895px}
#home h1{font-size:clamp(49px,6.3vw,81px);line-height:1.12;max-width:840px;margin:21px auto 25px;text-wrap:balance}
#home .lead{font-size:17px;line-height:1.85;max-width:660px;margin:0 auto 29px}
#about.section-about{padding:94px 0 96px}
#about .about-layout{max-width:1010px}
#about .about-personal{max-width:980px;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(35px,5.2vw,76px);align-items:center}
#about .about-photo{max-width:400px;aspect-ratio:4/5}
#about .about-copy h3{font-size:clamp(39px,4.6vw,57px);margin:11px 0 21px}
#about .about-copy p{font-size:15px;line-height:1.78;margin-bottom:14px}
#about .about-copy p:last-child{font-size:24px;margin-top:20px}
#about .about-credentials{margin:56px auto 0;padding:34px 0 0;max-width:590px}
#about .about-credentials p{margin:12px auto 0;line-height:2.05}
main .single-feature{padding:82px 0 88px}
.single-feature .narrow{max-width:750px}
.single-feature h2{font-size:clamp(37px,4.5vw,55px);margin:12px 0 13px;text-wrap:balance}
.single-feature .coming-label{line-height:1.5}
.single-feature .lead{font-size:16px;line-height:1.83;max-width:560px;margin:18px auto 19px}
.single-feature .text-link{line-height:1.7}
#contact.section-contact{padding:94px 0 100px}
#contact .contact-intro{margin:0 auto 37px}
#contact .contact-intro h2{font-size:clamp(38px,4.7vw,57px);text-wrap:balance}
#contact .contact-intro .lead{font-size:16px;max-width:555px}
#contact .contact-columns{gap:28px}
#contact .contact-details{padding:0 12px}
#contact .contact-details .eyebrow{margin-top:0!important;margin-bottom:8px!important}
#contact .contact-details a.mail{display:inline-block;font-size:14px}
#contact .form-shell{padding:35px 40px;max-width:610px}
#contact .field{margin-bottom:20px}
#contact .form-shell input,#contact .form-shell textarea{padding:13px 14px}
.foot{padding:57px 0 25px}
.foot-top{align-items:start;padding-bottom:38px}
.foot-nav{row-gap:14px}
.medical-disclaimer{margin-bottom:18px;padding-top:21px}
.foot-bottom{padding-top:19px}
@media(max-width:1120px){
 header .nav{min-height:80px}
 header .links{top:80px}
}
@media(max-width:740px){
 #home.one-hero{min-height:0;padding:86px 20px 91px}
 #home h1{font-size:clamp(43px,9.5vw,66px);line-height:1.13;margin:18px auto 22px}
 #home .lead{font-size:15.5px;line-height:1.78;max-width:555px;margin-bottom:27px}
 #about.section-about{padding:74px 0 78px}
 #about .about-personal{grid-template-columns:1fr;gap:30px;max-width:580px}
 #about .about-photo{margin:0 auto;max-width:355px;width:100%;aspect-ratio:4/4.7}
 #about .about-copy{text-align:center}
 #about .about-copy .eyebrow,#about .about-copy h3,#about .about-copy p{text-align:center}
 #about .about-copy h3{font-size:clamp(40px,9vw,51px);margin-bottom:20px}
 #about .about-copy p{font-size:15px;margin-left:auto;margin-right:auto}
 #about .about-credentials{margin-top:40px;padding-top:28px}
 main .single-feature{padding:68px 0 73px}
 .single-feature .lead{font-size:15.5px}
 #contact.section-contact{padding:74px 0 82px}
 #contact .contact-intro{margin-bottom:29px}
 #contact .contact-intro .lead{font-size:15.5px}
 #contact .contact-columns{gap:25px}
 #contact .form-shell{padding:25px 24px}
 .foot{padding-top:46px}
 .foot-top{gap:25px;padding-bottom:32px}
 header .nav{min-height:75px}
 header .links{top:75px}
}
@media(max-width:400px){
 .wrap{padding-left:20px;padding-right:20px}
 #home h1{font-size:clamp(39px,10.2vw,44px)}
 .brand{white-space:normal}
 header .nav>a.brand{max-width:calc(100% - 46px)}
 header .brand span{white-space:normal!important}
 #about .about-photo{max-width:300px}
}

/* About layout stacked on desktop and mobile */
#about .about-personal{
 display:flex;
 flex-direction:column;
 align-items:center;
 gap:34px;
 max-width:720px;
 margin:0 auto;
}
#about .about-photo{
 width:100%;
 max-width:355px;
 aspect-ratio:4/4.7;
 margin:0 auto;
}
#about .about-copy{
 width:100%;
 max-width:680px;
 text-align:center;
}
#about .about-copy .eyebrow,
#about .about-copy h3,
#about .about-copy p{
 text-align:center;
}
#about .about-copy p{
 margin-left:auto;
 margin-right:auto;
}
#about .about-credentials{
 margin-top:43px;
}
@media(max-width:740px){
 #about .about-personal{gap:30px}
 #about .about-photo{max-width:355px}
}
