:root{--ivory:#faf7f0;--ink:#14242f;--muted:#405564;--teal:#506e7a;--wash:#f2ede3;--line:#d9d1c6;--serif:'Baskerville','Bodoni 72','Times New Roman',serif;--sans:'Helvetica Neue',Arial,sans-serif}
body{font-weight:400;background:var(--ivory);color:var(--ink)}h1,h2{letter-spacing:-.035em;line-height:1.02}header{max-width:none;border:0;min-height:120px;padding:1.25rem 6%;background:linear-gradient(110deg,#f6f1e7,#fdfbf7 75%,#f3eee5)}header>.wordmark{font-size:1.8rem;line-height:.95;letter-spacing:.12em;text-transform:uppercase}header>.wordmark span{display:block}header>.wordmark span:last-child{letter-spacing:.015em}header nav{gap:2rem}header nav>a:not(.button){text-transform:uppercase;letter-spacing:.16em;font-size:.75rem}.button{border-radius:999px;padding:.85rem 2.15rem;text-transform:uppercase;font-size:.78rem;letter-spacing:.15em;background:var(--teal);border-color:var(--teal);font-weight:400}.button:hover{background:#3c5a66;border-color:#3c5a66}.eyebrow,.section-label{font-size:.72rem;letter-spacing:.26em;color:var(--ink)}.home-coastal-hero,.home-final{position:relative;overflow:hidden;isolation:isolate}.home-coastal-hero{min-height:590px;padding:3rem 6% 2.5rem}.coastal-window{position:absolute;inset:0;overflow:hidden;z-index:-3;background:#dbc4a5;pointer-events:none}.coastal-window img{position:absolute;width:200%;max-width:none;height:auto;left:-100%;top:0;transform:translateY(-6.5104167%);border-radius:0;object-fit:initial}
.coastal-wash{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(250,247,240,.99) 0%,rgba(250,247,240,.94) 22%,rgba(250,247,240,.74) 40%,rgba(250,247,240,.28) 59%,transparent 78%)}.coastal-copy{position:relative;max-width:680px}.coastal-copy h1{font-size:clamp(3.5rem,5.6vw,6rem);font-weight:400;margin:1rem 0 1.4rem}.coastal-copy h1 em{font-weight:400}.hero-summary{font-size:1.18rem;line-height:1.5;max-width:480px;margin-bottom:1.25rem}.session-note{margin:.75rem 0 0;text-transform:uppercase;font-size:.72rem;letter-spacing:.2em}.wide-arc{position:absolute;width:720px;height:720px;border:1px solid rgba(255,255,255,.9);border-radius:50%;left:58%;top:16px;z-index:-1}.home-benefits{text-align:center;padding:2.7rem 5% 2.5rem;background:radial-gradient(ellipse at 50% 30%,#fffdf8,#f4efe6)}.home-benefits .eyebrow{margin-bottom:.7rem}.home-benefits h2{font-size:clamp(2rem,3.3vw,3.2rem);margin-bottom:2.5rem}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1200px;margin:auto}.benefit{padding:0 1.8rem;position:relative}.benefit+.benefit:before{content:'';position:absolute;left:0;top:15px;bottom:0;width:1px;background:var(--line)}.benefit svg{width:54px;height:50px;fill:none;stroke:#987248;stroke-width:1;display:block;margin:0 auto .6rem}.benefit:nth-child(2) svg{stroke:var(--ink)}.benefit h3{font:400 .8rem/1.5 var(--sans);letter-spacing:.15em;text-transform:uppercase;margin:0 0 .4rem}.benefit p{font-size:1rem;line-height:1.45;max-width:210px;margin:0 auto}.mobile-break{display:none}.home-meet{display:grid;grid-template-columns:45% 55%;position:relative;overflow:hidden;background:radial-gradient(ellipse at 70% 50%,#fdfaf3,#ede7dc)}.home-portrait{display:flex;align-items:flex-start;justify-content:center;background:#eee8de}.home-portrait img{display:block;width:100%;height:auto}.meet-copy{align-self:center;padding:2.5rem 12% 2.5rem 6.5%;max-width:760px}.meet-copy .eyebrow{margin-bottom:.8rem}.meet-copy h2{font-size:clamp(2.3rem,3.65vw,3.7rem);margin-bottom:1.3rem;max-width:600px}.meet-copy>p:not(.eyebrow){font-size:1rem;line-height:1.65;max-width:540px}.meet-copy blockquote{margin:1.4rem 0;font:italic 1.5rem/1.2 var(--serif);border-top:1px solid var(--line);padding-top:1rem;max-width:490px}.meet-line{position:absolute;right:-50px;top:20%;width:160px;height:400px;border:1px solid #b5a78b;border-radius:50%;opacity:.4;pointer-events:none}.home-final{min-height:380px;padding:2.5rem 6% 2.5rem}.home-final h2{font-size:clamp(2.9rem,4.5vw,4.7rem);margin-bottom:1rem}.home-final .coastal-window img{transform:translateY(-9%)}.home-final .text-link{margin-top:1rem;display:block;font-size:.9rem}.home-final .coastal-copy{max-width:540px}.home-final .coastal-copy>p:not(.eyebrow):not(.session-note){font-size:1.05rem;line-height:1.4}.home-final .wide-arc{top:-180px}.hero{max-width:none;padding:3.5rem 6% 4rem;gap:5%;grid-template-columns:1.2fr 1fr;background:linear-gradient(110deg,#faf7f0,#f1ece2)}.hero h1{font-size:clamp(3.4rem,5vw,5.4rem)}.hero-art.reference-coast{height:500px;overflow:hidden;border-radius:0;position:relative;isolation:isolate}.reference-coast .coastal-window{z-index:0}.reference-coast .coastal-window img{width:400%;left:-290%;transform:translateY(-6.5104167%)}.section{padding-top:4.5rem;padding-bottom:4.5rem;background:var(--ivory)}.section.tinted{background:linear-gradient(115deg,#f1ece1,#fcfaf5)}.section h2{font-size:clamp(2.3rem,3.6vw,3.6rem)}.section-label{letter-spacing:.18em}.section.closing{background:#efe7d9}.story-body{max-width:850px;line-height:1.9}.story-body>p{font-size:1.05rem}.privacy h1{font-size:clamp(3rem,5vw,5rem)}footer{background:var(--ivory);color:var(--ink);border-top:1px solid var(--line);padding-top:3rem}.disclaimer{border-color:var(--line);color:var(--muted)}.credit{color:var(--muted)}footer .wordmark{font-size:2rem}footer nav a{font-size:.85rem}.faq details{padding:1.3rem 0}.text-link{font-size:.9rem}
@media(min-width:1500px){.home-coastal-hero{min-height:660px}.coastal-copy h1{font-size:6.5rem}.home-meet{grid-template-columns:40% 60%}.meet-copy{padding-left:9%}}
@media(max-width:900px){header nav{gap:1rem}.coastal-copy{max-width:560px}.coastal-copy h1{font-size:4.5rem}.home-coastal-hero{min-height:560px}.benefit{padding:0 1rem}.meet-copy{padding-right:7%}.meet-copy h2{font-size:2.5rem}.hero-art.reference-coast{height:470px}.home-portrait{align-self:center}.home-meet{align-items:center}}
@media(max-width:700px){header{min-height:100px;padding:1rem 6%}header>.wordmark{font-size:1.4rem}header nav{gap:1rem}.menu-toggle{border-radius:999px;border-color:var(--line);text-transform:uppercase;letter-spacing:.12em;font-size:.8rem}header nav a{font-size:.75rem}.home-coastal-hero{padding:2.5rem 6% 2rem;min-height:690px}.coastal-copy h1{font-size:clamp(2.95rem,9.7vw,4rem);margin:1rem 0 1.3rem}.coastal-copy .eyebrow{max-width:320px;line-height:1.9}.hero-summary{font-size:1.05rem;max-width:340px}.home-coastal-hero .coastal-window img,.home-final .coastal-window img{width:500%;left:-350%;transform:translateY(-6.5104167%)}.coastal-wash{background:linear-gradient(180deg,rgba(250,247,240,.95),rgba(250,247,240,.92) 43%,rgba(250,247,240,.58) 66%,rgba(250,247,240,.05))}.wide-arc{width:600px;height:600px;left:43%;top:140px}.home-benefits{padding:2.4rem 6%}.home-benefits h2{font-size:2.35rem;line-height:1.1;margin-bottom:2rem}.mobile-break{display:block}.benefit-grid{grid-template-columns:1fr 1fr;gap:2rem 0}.benefit{padding:0 1rem}.benefit:nth-child(3):before{display:none}.benefit p{font-size:.9rem}.home-meet{display:flex;flex-direction:column;align-items:stretch}.home-portrait{width:100%;max-width:none;align-self:stretch}.home-portrait img{width:100%;max-width:500px}.meet-copy{padding:2.4rem 6%;align-self:stretch}.meet-copy h2{font-size:2.8rem}.meet-copy blockquote{font-size:1.5rem}.home-final{min-height:500px;padding:2.5rem 6%}.home-final h2{font-size:3.2rem}.hero{padding:2.5rem 6% 3rem}.hero h1{font-size:3.2rem}.hero-art.reference-coast{height:280px;max-width:none;margin:2rem 0 0}.reference-coast .coastal-window img{width:400%;left:-290%}.section{padding:3rem 6%}.section h2{font-size:2.5rem}footer .footer-top{gap:2rem}footer{padding-top:2.5rem}.story-body{padding-top:3rem}.privacy h1{font-size:3.2rem}}

.wide-arc{display:none}
@media(min-width:701px){.home-coastal-hero>.coastal-window,.home-final>.coastal-window{left:35%}.home-coastal-hero>.coastal-wash,.home-final>.coastal-wash{background:linear-gradient(90deg,#faf7f0 0%,#faf7f0 24%,rgba(250,247,240,.94) 36%,rgba(250,247,240,.7) 47%,rgba(250,247,240,.15) 65%,transparent 80%)}}
.home-meet{background:linear-gradient(90deg,rgba(250,247,240,0) 40%,rgba(250,247,240,.92) 49%,rgba(250,247,240,.88) 75%,rgba(250,247,240,.1)),url('/assets/olive-still-life.png') right center/auto 100% no-repeat,var(--ivory)}
.meet-line{display:none}
.home-final>.coastal-window{left:0}
.home-final .coastal-window img{width:100%;height:100%;left:0;top:0;transform:none;object-fit:cover;object-position:center}
.home-final>.coastal-wash{background:linear-gradient(90deg,rgba(250,247,240,.97),rgba(250,247,240,.9) 28%,rgba(250,247,240,.35) 57%,transparent 82%)}
.home-final .wide-arc{display:block}
@media(max-width:700px){.home-meet{background:linear-gradient(rgba(250,247,240,.91),rgba(250,247,240,.86)),url('/assets/olive-still-life.png') right bottom/auto 55% no-repeat,var(--ivory)}.home-final .coastal-window img{width:100%;left:0;transform:none;object-position:60% center}.home-final>.coastal-wash{background:linear-gradient(180deg,rgba(250,247,240,.96),rgba(250,247,240,.88) 45%,rgba(250,247,240,.2))}}
.hero-art.original-photo{height:500px;position:relative;overflow:hidden;border-radius:0;isolation:isolate}
.original-photo .coastal-window{z-index:0}
.original-photo .coastal-window img{width:100%;height:100%;left:0;top:0;transform:none;object-fit:cover;object-position:center}
@media(max-width:700px){.hero-art.original-photo{height:300px;max-width:none;margin:2rem 0 0}}
/* One shared opening grid for interior pages. */
.hero.story-hero,.hero.sessions-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:6%;padding:3.5rem 6% 3rem;min-height:660px}
.hero.story-hero .hero-copy,.hero.sessions-hero .hero-copy{margin:0;max-width:none}
.hero.story-hero .eyebrow,.hero.sessions-hero .eyebrow{margin:0 0 1.3rem;min-height:1.2rem}
.hero.story-hero h1,.hero.sessions-hero h1{font-size:clamp(3rem,4.6vw,4.25rem);line-height:1.04;min-height:3.12em;margin:0 0 1.5rem;max-width:650px}
.hero.story-hero .hero-art,.hero.sessions-hero .hero-art{height:520px;margin:0;align-self:start}
.hero.story-hero .hero-copy>p:not(.eyebrow),.hero.sessions-hero .hero-copy>p:not(.eyebrow){font-size:1.05rem;line-height:1.7;max-width:600px}
.hero .actions{margin:1.6rem 0 0}
.session-overview{padding:3.5rem 6%;display:grid;grid-template-columns:1fr 1fr;gap:7%;max-width:1500px;margin:auto}
.session-overview h2,.session-booking h2{font-size:clamp(2.2rem,3.1vw,3.2rem);line-height:1.08;margin-bottom:1.3rem}
.session-overview .topics{font-size:.95rem;gap:0 1.5rem;margin:0}
.approach-card{padding:2rem;background:var(--wash)}
.approach-card>p:not(.eyebrow){line-height:1.65;margin-bottom:1.2rem}
.approach-card details{padding:.7rem 0 0;border-bottom:0}
.session-booking{display:grid;grid-template-columns:1fr 1fr;max-width:1500px;margin:auto;background:#f0e9dc;overflow:hidden}
.session-booking-copy{padding:2.7rem 12%}
.session-booking-copy .session-details{font:1.05rem/1.5 var(--sans);gap:.4rem 1.1rem;margin:1rem 0}
.session-booking-copy>p:not(.eyebrow){font-size:.95rem;line-height:1.65;margin-bottom:.9rem}
.session-booking-copy>details{margin-top:1.2rem;padding:.7rem 0 0;border-bottom:0}
.session-booking>img{width:100%;height:100%;object-fit:cover;object-position:55% center;min-height:440px}
.sessions-hero~.faq{padding-top:3rem;padding-bottom:3rem;grid-template-columns:1fr;gap:.7rem}
.sessions-hero~.faq>.section-content{max-width:none}
.sessions-hero~.faq h2{font-size:2.5rem;margin-bottom:1.3rem}
.sessions-hero~.faq details{padding:.9rem 0}
.sessions-hero~.faq summary{font-size:1rem}
@media(max-width:700px){.hero.story-hero,.hero.sessions-hero{display:block;padding:2.5rem 6% 3rem;min-height:0}.hero.story-hero h1,.hero.sessions-hero h1{font-size:3rem;min-height:4.16em}.hero.story-hero .hero-art,.hero.sessions-hero .hero-art{height:300px;margin:2rem 0 0}.hero.story-hero .hero-copy,.hero.sessions-hero .hero-copy{min-height:490px}.session-overview{grid-template-columns:1fr;gap:2rem;padding:2.5rem 6%}.session-overview .topics{grid-template-columns:1fr 1fr}.approach-card{padding:1.5rem}.session-booking{grid-template-columns:1fr}.session-booking-copy{padding:2rem 6%}.session-booking>img{min-height:0;height:200px}.sessions-hero~.faq{padding:2.5rem 6%}}
@media(min-width:1100px){.hero.story-hero h1,.hero.sessions-hero h1{min-height:2.08em}}
@media(max-width:700px){.hero.story-hero .hero-copy,.hero.sessions-hero .hero-copy{min-height:560px}}
.privacy.story-body{max-width:none;margin:0;padding:3.5rem 6% 5rem}.privacy.story-body>.eyebrow{margin:0 0 1.3rem;min-height:1.2rem;line-height:1.6}.privacy.story-body h1{font-size:clamp(3rem,4.6vw,4.25rem);line-height:1.04;margin:0 0 1.5rem;min-height:2.08em}.privacy.story-body>p:not(.eyebrow){max-width:800px}
@media(max-width:700px){.privacy.story-body{padding:2.5rem 6% 4rem}.privacy.story-body h1{font-size:3rem;min-height:4.16em}}
footer .wordmark{white-space:nowrap}
footer .wordmark span{white-space:normal}
@media(max-width:400px){footer .wordmark{font-size:1.7rem}}
/* Let interior copy follow the headline without a reserved empty block. */
.hero.story-hero h1,.hero.sessions-hero h1{min-height:0;margin-bottom:1.2rem}
.hero.story-hero,.hero.sessions-hero{min-height:0;padding-top:2rem;padding-bottom:2rem}
@media(max-width:700px){.hero.story-hero .hero-copy,.hero.sessions-hero .hero-copy{min-height:0}.hero.story-hero,.hero.sessions-hero{padding-top:2rem;padding-bottom:2rem}}

/* Keep the portrait flush with the full height of its desktop grid row. */
@media(min-width:701px){.home-meet{align-items:stretch}.home-portrait{position:relative;align-self:stretch;min-height:0;aspect-ratio:424/505}.home-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}}

footer .copyright{font-size:.75rem;color:var(--muted);margin:1rem 0 0}

.footer-contact-label{margin:1rem 0 .25rem;font-size:.85rem}

footer .footer-contact-label{margin-bottom:0;line-height:1.2}footer .footer-contact-label+a{display:inline-block;margin-top:0;line-height:1.2}

/* Crop the white border baked into the olive still-life asset. */
@media(min-width:701px){.home-meet{background-size:auto,auto 112%;background-position:center,right center}}
@media(max-width:700px){.home-meet{background-size:auto,auto 58%;background-position:center,right calc(100% + 12px)}}
