:root{--ink:#444039;--muted:#777167;--paper:#fbfaf7;--sand:#eee8df;--clay:#aa735b;--line:#ddd8d0;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Montserrat",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:300 14px/1.8 var(--sans)}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip-link{position:fixed;z-index:50;left:1rem;top:-5rem;background:#fff;padding:.6rem 1rem}.skip-link:focus{top:1rem}.site-header{height:170px;padding:30px 3vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:var(--paper)}.nav{display:flex;align-items:center;gap:2.1rem;text-transform:uppercase;letter-spacing:.25em;font-size:8px}.nav-right{justify-content:flex-end}.nav a{border-bottom:1px solid transparent}.nav a:hover{border-color:currentColor}.brand{display:flex;flex-direction:column;align-items:center;text-align:center;line-height:1}.brand strong{font:400 clamp(28px,3.2vw,48px)/1 var(--serif);letter-spacing:.13em;text-transform:uppercase}.brand small{font:400 8px/1.4 var(--sans);letter-spacing:.38em;margin-top:14px}.menu-toggle{display:none}.hero{height:clamp(440px,64vw,760px);display:grid;grid-template-columns:.92fr 1.18fr .92fr;gap:12px;padding:0 1vw}.hero figure{margin:0;overflow:hidden}.hero figure:first-child img{filter:grayscale(1);object-position:center}.hero figure:nth-child(2) img{object-position:center}.hero figure:nth-child(3) img{object-position:60% center}.section{padding:120px max(6vw,30px)}.kicker{text-transform:uppercase;letter-spacing:.32em;font-size:8px;font-weight:500;color:var(--clay);margin:0 0 1.5rem}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;margin-top:0}h1{font-size:clamp(55px,7.2vw,100px);margin-bottom:2rem}h1 em{color:var(--clay);font-weight:400}h2{font-size:clamp(42px,5vw,72px);margin-bottom:2rem}h3{font-size:28px;margin-bottom:.6rem}.intro{text-align:center;max-width:1000px;margin:auto}.intro-text{max-width:620px;margin:0 auto 2rem;font-size:15px}.text-link{display:inline-block;text-transform:uppercase;letter-spacing:.24em;font-size:8px;border-bottom:1px solid;padding-bottom:5px}.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;align-items:center;background:var(--sand)}.portrait{height:720px}.portrait img{object-position:center}.about-copy{max-width:560px}.about-copy .lead{font:400 25px/1.35 var(--serif)}.button{display:inline-flex;justify-content:center;border:1px solid var(--ink);background:transparent;padding:15px 25px;text-transform:uppercase;letter-spacing:.2em;font-size:8px;cursor:pointer;margin-top:1.3rem}.button:hover{background:var(--ink);color:#fff}.galleries{text-align:center}.galleries>h2{margin-bottom:4rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;text-align:left}.gallery-grid article>div{height:520px}.gallery-grid article:nth-child(2)>div{height:590px}.gallery-grid article p{color:var(--muted)}.photo-note{font-size:10px;color:#8d877d;margin-top:3rem}.experience{display:grid;grid-template-columns:1fr 1fr;gap:10vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.experience ol{list-style:none;margin:0;padding:0}.experience li{display:grid;grid-template-columns:45px 1fr;gap:1rem;padding:22px 0;border-bottom:1px solid var(--line)}.experience li:last-child{border-bottom:0}.experience li>span{font-size:9px;color:var(--clay)}.experience h3{margin:0}.experience p{margin:0;color:var(--muted)}.community{text-align:center;background:#8c6756;color:#fff}.community .kicker{color:#f0d9cc}.community blockquote{font:400 clamp(52px,7vw,94px)/.98 var(--serif);margin:0 auto 2rem}.community>p:last-child{max-width:680px;margin:auto;color:#f4ece7}.pricing{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:center}.pricing>div:first-child{max-width:620px}.price-card{border:1px solid var(--line);padding:55px;text-align:center;background:#fff}.price-card>span{display:block;text-transform:uppercase;letter-spacing:.3em;font-size:8px}.price-card strong{display:block;font:400 76px/1.3 var(--serif);color:var(--clay)}.price-card p{color:var(--muted)}.testimonial{text-align:center;background:var(--sand)}.quote-mark{font:60px/1 var(--serif);color:var(--clay);margin:0}.testimonial blockquote{font:400 clamp(36px,4.5vw,64px)/1.1 var(--serif);max-width:900px;margin:1rem auto 2rem}.inquire{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.inquire-heading>p:last-child{max-width:470px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:25px 35px}.contact-form label{display:flex;flex-direction:column;text-transform:uppercase;letter-spacing:.2em;font-size:8px}.contact-form input,.contact-form select,.contact-form textarea{border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0;outline:0;border-radius:0;color:var(--ink);letter-spacing:0;text-transform:none}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--ink)}.full{grid-column:1/-1}.contact-form .button{width:100%}.form-note{text-align:center;color:var(--muted);font-size:9px}footer{text-align:center;padding:80px 30px 30px;border-top:1px solid var(--line)}footer .brand{display:inline-flex}footer>p{color:var(--muted)}footer>div{display:flex;justify-content:center;gap:2rem;margin:2rem 0;text-transform:uppercase;letter-spacing:.2em;font-size:8px}footer>small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.15em}
@media(max-width:960px){.site-header{height:125px;grid-template-columns:1fr auto}.site-header>.brand{justify-self:start}.menu-toggle{display:block;grid-column:2;grid-row:1;width:40px;height:40px;background:none;border:0;z-index:12}.menu-toggle span{display:block;width:25px;height:1px;background:var(--ink);margin:7px}.nav{position:fixed;inset:0;background:var(--paper);z-index:10;flex-direction:column;justify-content:center;font:400 30px var(--serif);letter-spacing:.05em;text-transform:none;transform:translateX(100%);transition:.35s}.nav-right{display:none}.nav.open{transform:none}.hero{height:580px;grid-template-columns:.8fr 1.3fr .8fr}.about,.experience,.pricing,.inquire{grid-template-columns:1fr}.about{gap:60px}.portrait{height:620px}.section{padding:90px max(7vw,25px)}}
@media(max-width:650px){.site-header{height:auto;min-height:125px;padding:22px 6vw}.brand strong{font-size:26px}.brand small{font-size:6px;margin-top:9px}.hero{height:500px;grid-template-columns:1fr;gap:0;padding:0}.hero figure:nth-child(n+2){display:none}.hero figure:first-child img{filter:none;object-position:center 35%}.section{padding:75px 6vw}.intro{padding-left:8vw;padding-right:8vw}.gallery-grid{grid-template-columns:1fr}.gallery-grid article>div,.gallery-grid article:nth-child(2)>div{height:470px}.portrait{height:500px}.price-card{padding:40px 25px}.contact-form{grid-template-columns:1fr}.contact-form label{grid-column:1}footer>div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero figure:first-child img{filter:none;object-position:center 35%}.hero figure:nth-child(2) img{object-position:center}.hero figure:nth-child(3) img{object-position:center 38%}

/* Increase the site's smallest utility text for better readability. */
.nav,.brand small,.kicker,.text-link,.button,.price-card>span,.contact-form label,footer>div,footer>small{font-size:10px}
@media(max-width:650px){.brand small{font-size:10px}}

.gallery-link{display:block}.gallery-link>div{position:relative;height:520px;overflow:hidden;background:#3f3b35}.gallery-link img{transition:opacity .35s ease,transform .5s ease}.gallery-link span{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font:italic 400 clamp(38px,4vw,58px)/1 var(--serif);letter-spacing:.04em;text-shadow:0 2px 18px rgba(0,0,0,.28);z-index:1}.gallery-link:hover img,.gallery-link:focus-visible img{opacity:.48;transform:scale(1.015)}.gallery-link:focus-visible{outline:2px solid var(--clay);outline-offset:5px}.gallery-grid article:first-child>div{height:auto}.gallery-header .gallery-back,.gallery-header .gallery-inquire{text-transform:uppercase;letter-spacing:.2em;font-size:10px}.gallery-header .gallery-inquire{justify-self:end}.gallery-intro{text-align:center;padding-bottom:80px}.gallery-intro h1{margin-bottom:1.25rem}.gallery-intro>p:last-child{max-width:600px;margin:auto}.motherhood-grid{display:grid;gap:12px;padding:0 1vw}.motherhood-row{display:grid;gap:12px}.motherhood-row.four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.motherhood-row.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.motherhood-grid figure{margin:0}.motherhood-grid img{height:auto;object-fit:contain;object-position:center}.gallery-cta{text-align:center}.gallery-cta .button{margin-top:0}
@media(max-width:900px){.motherhood-grid,.motherhood-row{gap:8px}.motherhood-row.four-up{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.gallery-link>div,.gallery-grid article:nth-child(2) .gallery-link>div{height:470px}.gallery-header{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;row-gap:16px}.gallery-header .brand{grid-column:1/-1;grid-row:1;justify-self:center}.gallery-header .gallery-back{display:block;grid-column:1;grid-row:2;justify-self:start}.gallery-header .gallery-inquire{grid-column:2;grid-row:2;justify-self:end;font-size:10px}.motherhood-grid{padding:0}.motherhood-row.four-up,.motherhood-row.three-up{grid-template-columns:1fr}.gallery-intro{padding-bottom:55px}}

/* Improve gallery-title contrast while keeping the photographs prominent. */
.gallery-link span{color:#fff;font-weight:500;-webkit-text-stroke:.25px rgba(255,255,255,.7);text-shadow:0 1px 2px rgba(0,0,0,.95),0 4px 12px rgba(0,0,0,.82),0 10px 30px rgba(0,0,0,.58);z-index:2}.gallery-link:hover img,.gallery-link:focus-visible img{opacity:.36}
.gallery-link img.growing-up-card-image{object-position:44% center}
.portrait img.meet-lindsey-photo{object-position:center 38%}
.families-gallery{display:grid;gap:12px;padding:0 1vw}.families-gallery-row{display:grid;gap:12px}.families-gallery-row.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.families-gallery-row.four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.families-gallery figure{margin:0}.families-gallery img{height:auto;object-fit:contain;object-position:center}
@media(max-width:900px){.families-gallery,.families-gallery-row{gap:8px}.families-gallery-row.four-up{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.families-gallery{padding:0}.families-gallery-row.three-up,.families-gallery-row.four-up{grid-template-columns:1fr}}
.growing-gallery{display:grid;gap:12px;padding:0 1vw}.growing-gallery-row{display:grid;gap:12px}.growing-gallery-row.four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.growing-gallery-row.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.growing-gallery-row.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.growing-gallery figure{margin:0}.growing-gallery img{height:auto;object-fit:contain;object-position:center}
.form-note.form-success{color:#6d493a;font-weight:500}.form-note.form-error{color:#8a342d;font-weight:500}.contact-form .button:disabled{cursor:wait;opacity:.65}
#gallery-links{scroll-margin-top:24px}
@media(max-width:900px){.growing-gallery,.growing-gallery-row{gap:8px}.growing-gallery-row.four-up{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.growing-gallery{padding:0}.growing-gallery-row.four-up,.growing-gallery-row.three-up,.growing-gallery-row.two-up{grid-template-columns:1fr}}

.social{text-align:center}.social>p:not(.kicker){max-width:620px;margin:0 auto 2.5rem;color:var(--muted)}.social-links{display:flex;justify-content:center;gap:26px}.social-links a{display:flex;align-items:center;gap:14px;min-width:190px;padding:18px 24px;border:1px solid var(--line);background:#fff;text-transform:uppercase;letter-spacing:.18em;font-size:10px;transition:background .25s ease,color .25s ease,border-color .25s ease}.social-links a:hover,.social-links a:focus-visible{background:var(--ink);border-color:var(--ink);color:#fff}.social-icon{position:relative;display:inline-grid;place-items:center;width:29px;height:29px;flex:0 0 29px}.instagram-icon{border:2px solid currentColor;border-radius:8px}.instagram-icon::before{content:"";width:9px;height:9px;border:2px solid currentColor;border-radius:50%}.instagram-icon::after{content:"";position:absolute;width:3px;height:3px;border-radius:50%;background:currentColor;right:5px;top:5px}.facebook-icon{border:2px solid currentColor;border-radius:50%;font:600 25px/1 Arial,sans-serif;padding-top:5px}
.mobile-social{display:none}
@media(max-width:960px){.mobile-social{display:block}}
@media(max-width:650px){.social-links{flex-direction:column;align-items:center}.social-links a{width:min(100%,280px);justify-content:center}}

.investment-page .gallery-intro{background:var(--sand)}.investment-options{display:grid;gap:110px}.investment-option{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:center}.investment-option:nth-child(even) .investment-copy{order:2}.investment-option:nth-child(even) .price-card{order:1}.investment-copy{max-width:620px}.custom-investment{text-align:center;background:var(--sand)}.custom-investment h2{max-width:780px;margin-left:auto;margin-right:auto;font-size:clamp(30px,3.2vw,46px);font-style:italic;font-weight:400;line-height:1.18}.custom-investment .button{margin-top:0}
@media(max-width:960px){.investment-option{grid-template-columns:1fr;gap:50px}.investment-option:nth-child(even) .investment-copy,.investment-option:nth-child(even) .price-card{order:initial}.investment-copy{text-align:center;margin:auto}.investment-options{gap:90px}}

.gallery-intro .gallery-page-title{font-style:italic;font-weight:400;letter-spacing:.015em}
.gallery-page .gallery-header{height:115px;padding-top:20px;padding-bottom:20px}.gallery-page .gallery-intro{padding-top:65px;padding-bottom:75px}.gallery-page .gallery-intro .kicker{margin-bottom:1rem}.gallery-page .gallery-intro h1{margin-bottom:.85rem}.gallery-page .gallery-intro>p:last-child{line-height:1.65}
@media(max-width:650px){.gallery-page .gallery-header{height:auto;min-height:145px}.gallery-page .gallery-intro{padding-top:45px;padding-bottom:55px}}

.announcement-bar{min-height:38px;padding:9px 20px;display:flex;justify-content:center;align-items:center;gap:12px;background:var(--clay);color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.16em;font-size:10px}.announcement-bar span:first-child{font-weight:500}.announcement-bar:hover{text-decoration:underline;text-underline-offset:4px}.mini-hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px;background:var(--sand)}.mini-hero-image{min-height:690px}.mini-hero-image img{object-position:center 35%}.mini-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:80px max(7vw,45px)}.mini-hero-copy h1{font-style:italic;margin-bottom:1.5rem}.mini-lead{max-width:520px;font:400 24px/1.45 var(--serif)}.mini-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:2rem 0 1rem;padding:22px 0;border-top:1px solid #d5cdc2;border-bottom:1px solid #d5cdc2}.mini-summary span{display:block;text-transform:uppercase;letter-spacing:.18em;font-size:10px;color:var(--clay)}.mini-summary strong{display:block;font-weight:400;margin-top:5px}.mini-hero-copy .button{align-self:flex-start}.mini-details{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.mini-details>div:last-child{max-width:580px}.mini-notes{background:var(--sand);text-align:center}.mini-note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:3rem;text-align:left}.mini-note-grid article{border-top:1px solid #d5cdc2;padding-top:24px}.mini-note-grid article>span{color:var(--clay);font-size:10px}.mini-note-grid h3{margin-top:1rem}
@media(max-width:960px){.mini-hero{grid-template-columns:1fr}.mini-hero-image{min-height:560px}.mini-details{grid-template-columns:1fr;gap:45px}.mini-note-grid{grid-template-columns:1fr;gap:36px}}
@media(max-width:650px){.announcement-bar{padding:10px 14px;line-height:1.5;flex-wrap:wrap;gap:5px 9px}.mini-hero,.mini-hero-image{min-height:0}.mini-hero-image{height:490px}.mini-hero-copy{padding:65px 6vw}.mini-summary{grid-template-columns:1fr;gap:12px}.mini-summary>div{display:flex;justify-content:space-between;gap:20px}.mini-summary strong{margin-top:0}.mini-lead{font-size:21px}}

.mini-location{font:italic 400 22px/1.4 var(--serif);color:var(--clay)}.mini-dates{display:grid;grid-template-columns:1fr 1fr;margin-bottom:2rem;border-top:1px solid var(--line);border-left:1px solid var(--line)}.mini-dates span{padding:18px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font:400 23px/1.2 var(--serif);text-align:center;background:#fff}
@media(max-width:650px){.mini-dates{grid-template-columns:1fr}.mini-dates span{font-size:21px}}

/* Single landscape homepage hero. */
.hero{display:block;height:clamp(460px,56vw,760px);padding:0 1vw}.hero figure{width:100%;height:100%}.hero figure:first-child img{object-position:center 48%}
@media(max-width:650px){.hero{height:500px;padding:0}.hero figure:first-child img{object-position:center 48%}}

/* Preserve the complete landscape photograph without cropping. */
.hero{height:auto;aspect-ratio:3/2}.hero figure{height:auto}.hero img{height:auto;object-fit:contain}
@media(max-width:650px){.hero{height:auto;aspect-ratio:3/2}.hero figure{height:auto}.hero img{height:auto;object-fit:contain}}

.privacy-main{max-width:900px;margin:auto;padding:90px max(7vw,30px) 110px}.privacy-intro{text-align:center;margin-bottom:70px}.privacy-intro h1{font-size:clamp(52px,7vw,82px);font-style:italic}.privacy-intro>p:last-child{max-width:650px;margin:auto}.privacy-content{background:#fff;border:1px solid var(--line);padding:55px max(5vw,35px)}.privacy-content section{padding:30px 0;border-top:1px solid var(--line)}.privacy-content section:first-child{border-top:0;padding-top:0}.privacy-content section:last-child{padding-bottom:0}.privacy-content h2{font-size:34px;margin-bottom:1rem}.privacy-content a{border-bottom:1px solid currentColor}.privacy-updated{color:var(--muted);font-size:12px;text-align:center;margin-top:30px}
@media(max-width:650px){.privacy-main{padding:65px 6vw 80px}.privacy-content{padding:35px 7vw}.privacy-content h2{font-size:29px}}

/* Keep button labels visible in mobile browsers that apply native button colors. */
.button{color:var(--ink);-webkit-text-fill-color:var(--ink);-webkit-appearance:none;appearance:none}
.button:hover,.button:focus-visible{color:#fff;-webkit-text-fill-color:#fff}

