:root{
  --white:#fff;--canvas:#fdfbf9;--ivory:#faf5f1;--blush:#f6e8e7;--blush-2:#eed9d7;--rose:#b87880;--rose-deep:#835158;
  --ink:#2f2b2c;--body:#585153;--muted:#756d6f;--line:#e8dedd;--charcoal:#383234;
  --shadow:0 24px 70px rgba(59,45,48,.10);--shadow-soft:0 12px 36px rgba(59,45,48,.07);
  --display:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Montserrat",Arial,sans-serif;
  --max:min(96vw,1800px);--content:min(92vw,1480px);--text:min(88vw,840px);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--body);font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.76;text-rendering:optimizeLegibility}body.menu-open{overflow:hidden}
img,picture,svg{display:block;max-width:100%}img{width:100%;height:auto}figure{margin:0}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}a:hover{color:var(--rose-deep)}button,input,textarea,select{font:inherit}button{color:inherit}::selection{background:var(--blush-2);color:var(--ink)}:focus-visible{outline:3px solid var(--rose);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:9999;top:12px;left:12px;padding:.8rem 1rem;background:var(--ink);color:#fff;transform:translateY(-160%)}.skip-link:focus{transform:none}
body::before{content:"";position:fixed;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(246,232,231,.22),transparent 28%,transparent 72%,rgba(246,232,231,.18));pointer-events:none}
h1,h2,h3,h4{margin:0 0 .55em;color:var(--ink);font-family:var(--display);font-weight:400;line-height:1.04;letter-spacing:-.012em;text-wrap:balance}h1{font-size:clamp(3rem,5vw,5.9rem)}h2{font-size:clamp(2.35rem,3.75vw,4.45rem)}h3{font-size:clamp(1.7rem,2.15vw,2.55rem);line-height:1.08}h4{font-size:1.4rem}p{margin:0 0 1.28rem}p:last-child{margin-bottom:0}.lead{font-size:clamp(1.04rem,1.28vw,1.28rem);line-height:1.78;color:#4f494b}.eyebrow,.kicker{margin:0 0 1rem;color:var(--rose-deep);font-size:.69rem;font-weight:600;letter-spacing:.19em;line-height:1.35;text-transform:uppercase}.kicker{letter-spacing:.13em}.small-note{color:var(--muted);font-size:.78rem}.hero-small-note{margin-top:1.45rem;color:var(--muted);font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}.number{display:block;margin-bottom:.8rem;color:var(--rose);font-size:.68rem;font-weight:600;letter-spacing:.16em}.text-link{display:inline-flex;align-items:center;gap:.55rem;border-bottom:1px solid currentColor;color:var(--ink);font-size:.72rem;font-weight:600;letter-spacing:.11em;text-decoration:none;text-transform:uppercase}.text-link::after{content:"→";font-size:.95rem;transition:transform .2s}.text-link:hover::after{transform:translateX(4px)}
.site-header{position:sticky;z-index:900;top:0;border-bottom:1px solid rgba(232,222,221,.86);background:rgba(253,251,249,.95);backdrop-filter:blur(16px)}.header-shell{width:var(--max);min-height:92px;margin:auto;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3.5rem}.logo{display:block;width:clamp(170px,15vw,250px);text-decoration:none}.logo img{width:100%;height:auto}.site-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(.75rem,1.25vw,1.55rem)}.nav-link{border:0;background:none;color:var(--ink);font-size:.64rem;font-weight:500;letter-spacing:.105em;text-decoration:none;text-transform:uppercase;white-space:nowrap}.nav-button{padding:2rem 0;cursor:pointer}.nav-item{position:relative}.subnav{position:absolute;top:calc(100% - .35rem);left:50%;min-width:245px;padding:.75rem;border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow-soft);opacity:0;pointer-events:none;transform:translate(-50%,10px);transition:.18s}.subnav a{display:block;padding:.68rem .85rem;color:var(--ink);font-size:.73rem;line-height:1.4;text-decoration:none}.subnav a:hover{background:var(--ivory)}.nav-button[aria-expanded="true"]+.subnav,.has-menu:focus-within .subnav{opacity:1;pointer-events:auto;transform:translate(-50%,0)}.menu-toggle{display:none;width:48px;height:48px;border:0;background:transparent;cursor:pointer}.menu-toggle span:not(.sr-only){display:block;width:25px;height:1px;margin:6px auto;background:var(--ink)}
.button{display:inline-flex;min-height:49px;align-items:center;justify-content:center;padding:.82rem 1.38rem;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:.69rem;font-weight:600;letter-spacing:.12em;line-height:1.2;text-decoration:none;text-transform:uppercase;transition:.18s}.button:hover{border-color:var(--rose-deep);background:var(--rose-deep);color:#fff;transform:translateY(-2px)}.button-ghost{background:transparent;color:var(--ink)}.button-ghost:hover{color:#fff}.button-small{min-height:40px;padding:.65rem 1rem}.button-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.center-action{text-align:center;margin-top:3rem}
.breadcrumbs{width:var(--max);margin:auto;padding:1rem 0 .2rem;color:var(--muted);font-size:.67rem;letter-spacing:.055em}.breadcrumbs a{text-decoration:none}.crumb-sep{margin:0 .55rem;color:#b9adae}
.section{padding:clamp(5.8rem,8.8vw,11rem) 0}.section-paper{background:var(--white)}.section-ivory{background:var(--ivory)}.section-blush{background:var(--blush)}.section-dark{background:var(--charcoal);color:#eee6e4}.section-dark h1,.section-dark h2,.section-dark h3{color:#fff}.section-dark .eyebrow{color:#e7bdc2}.shell-wide{width:var(--max);margin:auto}.shell{width:var(--content);margin:auto}.text-shell{width:var(--text);margin:auto}.legal-copy{width:min(88vw,880px);margin:auto}.section-heading{max-width:930px;margin-bottom:clamp(3rem,5vw,6rem)}.section-heading.center{margin-right:auto;margin-left:auto;text-align:center}.section-heading p{max-width:760px}.section-heading.center p{margin-right:auto;margin-left:auto}
.hero{padding:clamp(3rem,5vw,6rem) 0 clamp(6rem,9vw,10rem);background:linear-gradient(112deg,#fbf4f2 0%,#fffafa 58%,#f7e9e8 100%)}.hero-grid{width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(360px,.78fr) minmax(600px,1.22fr);align-items:center;gap:clamp(3.5rem,7vw,9rem)}.hero-copy{max-width:760px;padding-left:clamp(0px,1.5vw,1.8rem)}.hero-copy h1{max-width:12.5ch}.hero-copy .lead{max-width:680px}.hero-media{position:relative}.hero-primary{padding:clamp(.55rem,.8vw,.9rem);background:var(--white);box-shadow:var(--shadow)}.hero-accent{position:absolute;right:-3%;bottom:-11%;width:min(27%,290px);padding:.38rem;background:var(--white);box-shadow:var(--shadow)}.portfolio-intro{padding-top:clamp(5rem,8vw,9rem);padding-bottom:clamp(4rem,6vw,7rem)}.portfolio-intro h1{max-width:11ch}
.proof-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white)}.proof-grid{width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr)}.proof-item{min-height:118px;padding:1.5rem 2rem;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.proof-item:last-child{border-right:0}.proof-item strong{color:var(--ink);font-family:var(--display);font-size:1.95rem;font-weight:500;line-height:1}.proof-item span{margin-top:.48rem;color:var(--muted);font-size:.65rem;letter-spacing:.11em;text-transform:uppercase}
.service-rows{display:grid;gap:clamp(3rem,6vw,7.5rem)}.service-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:center;gap:clamp(3rem,6vw,8rem)}.service-row.reverse{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr)}.service-row.reverse figure{order:2}.service-row figure{padding:.5rem;background:var(--white);box-shadow:var(--shadow-soft)}.service-row-copy{max-width:570px}.service-row-copy p{color:var(--muted)}
.split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);align-items:center;gap:clamp(3.5rem,7vw,9rem)}.split.reverse{grid-template-columns:minmax(380px,.95fr) minmax(0,1.05fr)}.split.reverse>:first-child{order:2}.wide-gap{gap:clamp(4rem,8vw,11rem)}.split-copy{max-width:720px}.split-copy>p{max-width:690px}.split figure,.image-duo figure,.image-cluster figure,.newborn-stack figure,.contact-images figure,.image-strip figure{padding:.42rem;background:var(--white);box-shadow:var(--shadow-soft)}.image-duo{display:grid;grid-template-columns:1.05fr .78fr;align-items:end;gap:1rem}.image-duo figure:nth-child(2){margin-bottom:-2.5rem}.image-cluster{display:grid;grid-template-columns:repeat(12,1fr);align-items:start;gap:.8rem}.image-cluster-three figure:nth-child(1){grid-column:1/8}.image-cluster-three figure:nth-child(2){grid-column:8/13;margin-top:4rem}.image-cluster-three figure:nth-child(3){grid-column:3/10;margin-top:-1.4rem}.newborn-stack{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:1rem}.newborn-stack figure:nth-child(2){margin-top:4rem}
.masonry{columns:3 300px;column-gap:clamp(.75rem,1.25vw,1.4rem)}.masonry-wide{columns:4 280px}.masonry-portfolio{columns:4 285px}.masonry-newborn,.masonry-studio{columns:3 280px}.masonry figure{break-inside:avoid;margin:0 0 clamp(.75rem,1.25vw,1.4rem);padding:.38rem;background:var(--white);box-shadow:var(--shadow-soft)}.masonry figure[hidden]{display:none}.image-strip{display:grid;grid-template-columns:repeat(3,1fr);align-items:start;gap:1rem}.image-strip figure:nth-child(2){margin-top:3rem}
.check-list{display:grid;grid-template-columns:1fr 1fr;gap:.35rem 1.5rem;margin:1.8rem 0 0;padding:0;list-style:none}.check-list li{position:relative;padding:.6rem 0 .6rem 1.25rem;border-bottom:1px solid var(--line);font-size:.84rem}.check-list li::before{content:"";position:absolute;top:1.15rem;left:0;width:6px;height:6px;border-radius:50%;background:var(--rose)}.check-list.single{grid-template-columns:1fr}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.3rem}.mini-grid>div{padding-top:1rem;border-top:1px solid var(--ink)}.mini-grid strong{display:block;color:var(--ink);font-family:var(--display);font-size:1.5rem;font-weight:500}.mini-grid span{display:block;margin-top:.4rem;color:var(--muted);font-size:.78rem;line-height:1.6}.numbered-list{margin:2rem 0 0;padding:0;list-style:none}.numbered-list li{display:grid;grid-template-columns:190px 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.numbered-list strong{color:var(--ink)}.numbered-list span{color:var(--muted);font-size:.86rem}
.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,2vw,2.4rem)}.info-grid.compact{grid-template-columns:1fr 1fr;margin-top:2rem}.info-grid article{padding:1.7rem 0;border-top:1px solid var(--ink)}.info-grid h3{font-size:2rem}.info-grid p{color:var(--muted);font-size:.86rem}.planning-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.planning-grid article{padding:2rem;border:1px solid var(--line);background:var(--white)}.planning-grid h3{font-size:2rem}.notice{margin-top:1.8rem;padding:1.2rem 1.35rem;border-left:3px solid var(--rose);background:var(--blush);font-size:.83rem}.notice strong{color:var(--ink)}
.location-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,1.8vw,2rem)}.location-card{display:grid;align-content:start;background:var(--white);box-shadow:var(--shadow-soft)}.location-card>div{padding:1.6rem}.location-card h3{font-size:2rem}.location-card p{color:var(--muted);font-size:.82rem}.location-list .location-grid{grid-template-columns:repeat(2,1fr)}.location-list .location-card{box-shadow:none;border-top:1px solid var(--ink);background:transparent}.location-list .location-card>div{padding:1.5rem 0}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.related-grid article{padding:2rem;border-top:1px solid var(--ink);background:var(--white)}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;align-items:start}.price-card{padding:clamp(1.8rem,2.7vw,3rem);border:1px solid var(--line);background:var(--white)}.price-card.featured{border-color:var(--rose);box-shadow:var(--shadow)}.price{margin:.8rem 0 1.5rem;color:var(--ink);font-family:var(--display);font-size:3.2rem;line-height:1}.price-card ul,.pricing-mini ul{margin:1.4rem 0 2rem;padding:0;list-style:none}.price-card li,.pricing-mini li{padding:.62rem 0;border-bottom:1px solid var(--line);font-size:.82rem}.pricing-mini{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.7rem 0}.pricing-mini article{padding:1.7rem;border:1px solid var(--line);background:var(--white)}
.quote-band{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:clamp(3rem,7vw,9rem);align-items:center}.quote-band figure{padding:.42rem;background:var(--white)}blockquote{margin:0}blockquote p{color:inherit;font-family:var(--display);font-size:clamp(1.65rem,2.55vw,3.15rem);font-weight:400;line-height:1.16;letter-spacing:-.012em}blockquote cite{display:block;margin-top:1.5rem;color:var(--rose);font-size:.67rem;font-style:normal;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.quote-rule{height:1px;background:rgba(255,255,255,.25)}
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.guide-card{padding:2rem;border-top:1px solid var(--ink);background:var(--white)}.guide-card h3{font-size:2rem}.guide-card p{color:var(--muted);font-size:.84rem}.faq-list{max-width:1160px;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{position:relative;padding:1.7rem 3.5rem 1.7rem 0;color:var(--ink);font-family:var(--display);font-size:clamp(1.45rem,2.2vw,2.25rem);line-height:1.1;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:.4rem;top:50%;transform:translateY(-50%);color:var(--rose-deep);font-family:var(--sans);font-size:1.4rem;font-weight:300}.faq-list details[open] summary::after{content:"−"}.faq-answer{max-width:820px;padding:0 0 1.8rem;color:var(--muted)}
.photographer-note{max-width:800px}.photographer-note h2{max-width:10ch}.cta-band{background:linear-gradient(112deg,#f7e9e8,#f3dedd)}.cta-inner{width:var(--content);margin:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(3rem,7vw,9rem);align-items:center}.cta-inner h2{max-width:10ch}.cta-actions{display:flex;justify-content:flex-end}.cta-actions .button-row{margin:0}.contact-layout{display:grid;grid-template-columns:minmax(320px,.76fr) minmax(560px,1.24fr);align-items:start;gap:clamp(3rem,6vw,8rem)}.contact-card{position:sticky;top:125px;padding:2rem;background:var(--ivory);border:1px solid var(--line)}.contact-card h2{font-size:3rem}.contact-lines{margin-top:2rem}.contact-images{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:2rem}.contact-images figure:nth-child(2){margin-top:2rem}.form-frame{min-height:720px;padding:clamp(1.5rem,3vw,3.2rem);border:1px solid var(--line);background:var(--white)}.sprout-form{min-height:520px;margin-top:2rem}
.process-rows{display:grid;gap:clamp(4rem,7vw,9rem)}.process-row{display:grid;grid-template-columns:70px minmax(300px,.7fr) minmax(0,1.3fr);gap:clamp(1.5rem,4vw,5rem);align-items:center}.process-row:nth-child(even) figure{order:-1;grid-column:1/2}.process-row:nth-child(even) .process-number{grid-column:2/3}.process-row:nth-child(even) .process-copy{grid-column:3/4}.process-number{color:var(--rose);font-size:.72rem;font-weight:600;letter-spacing:.13em}.process-copy{max-width:560px}.process-copy p{color:var(--muted)}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.review-card{display:grid;grid-template-columns:minmax(190px,.72fr) minmax(0,1.28fr);align-items:center;gap:1.8rem;padding:1rem;border:1px solid var(--line);background:var(--white)}.review-card blockquote p{font-size:clamp(1.45rem,1.9vw,2.1rem)}.portfolio-controls{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:2.5rem}.filter-button{padding:.68rem 1rem;border:1px solid var(--line);background:var(--white);color:var(--ink);font-size:.64rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.filter-button[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:#fff}
.site-footer{padding:clamp(5rem,7vw,8rem) 0 1.4rem;background:var(--charcoal);color:#d9d0ce}.footer-shell{width:var(--max);margin:auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(4rem,8vw,10rem)}.footer-logo{width:min(330px,80%)}.footer-brand p{max-width:520px;margin-top:1.5rem;color:#c4b9b7;font-size:.84rem}.footer-contact a{color:#fff;text-decoration:none}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.footer-links h2{margin-bottom:1.2rem;color:#fff;font-family:var(--sans);font-size:.67rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.footer-links a{display:block;margin:.7rem 0;color:#cfc5c3;font-size:.77rem;text-decoration:none}.footer-bottom{width:var(--max);margin:5rem auto 0;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;gap:2rem;color:#aa9f9d;font-size:.65rem}.footer-bottom p{margin:0}.footer-bottom div{display:flex;flex-wrap:wrap;gap:1.2rem}.footer-bottom a{text-decoration:none}
@media(max-width:1280px){.site-nav{gap:.82rem}.nav-link{font-size:.59rem}.location-grid{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:repeat(2,1fr)}.review-grid{grid-template-columns:1fr}.masonry-wide,.masonry-portfolio{columns:3 280px}}
@media(max-width:1060px){.header-shell{min-height:78px;grid-template-columns:1fr auto}.menu-toggle{display:block}.site-nav{position:fixed;inset:78px 0 auto;max-height:calc(100vh - 78px);padding:2rem 5vw 3rem;border-top:1px solid var(--line);background:var(--canvas);display:none;align-items:stretch;flex-direction:column;overflow-y:auto}.site-nav.is-open{display:flex}.nav-link{width:100%;padding:.75rem 0;font-size:.78rem;text-align:left}.nav-button{display:flex;justify-content:space-between}.nav-button::after{content:"+"}.nav-button[aria-expanded="true"]::after{content:"−"}.subnav{position:static;display:none;min-width:0;padding:.3rem 0 .8rem 1rem;border:0;background:transparent;box-shadow:none;opacity:1;pointer-events:auto;transform:none}.nav-button[aria-expanded="true"]+.subnav{display:block}.subnav a{padding:.55rem 0}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:900px;padding:0}.hero-copy h1{max-width:11ch}.hero-accent{right:2%;bottom:-8%}.service-row,.service-row.reverse,.split,.split.reverse,.quote-band,.cta-inner,.contact-layout,.footer-shell{grid-template-columns:1fr}.service-row.reverse figure,.split.reverse>:first-child{order:0}.service-row-copy,.split-copy{max-width:820px}.cta-actions{justify-content:flex-start}.contact-card{position:static}.process-row{grid-template-columns:55px 1fr}.process-row figure,.process-row:nth-child(even) figure{grid-column:1/-1;order:0}.process-row:nth-child(even) .process-number{grid-column:1/2}.process-row:nth-child(even) .process-copy{grid-column:2/3}.footer-links{max-width:760px}}
@media(max-width:720px){body{font-size:15px}:root{--max:min(92vw,1800px);--content:min(90vw,1480px)}.header-shell{min-height:70px}.site-nav{inset:70px 0 auto}.logo{width:165px}.section{padding:4.8rem 0}.hero{padding:2.3rem 0 5.5rem}.hero-grid{gap:2.5rem}.hero-accent{display:none}.button-row{display:grid;grid-template-columns:1fr}.button{width:100%}.proof-grid{grid-template-columns:1fr 1fr}.proof-item{min-height:96px;padding:1rem .7rem}.proof-item:nth-child(2){border-right:0}.proof-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.proof-item strong{font-size:1.5rem}.proof-item span{font-size:.56rem}.image-cluster-three figure:nth-child(1){grid-column:1/10}.image-cluster-three figure:nth-child(2){grid-column:7/13;margin-top:2rem}.image-cluster-three figure:nth-child(3){grid-column:2/10;margin-top:-.5rem}.masonry,.masonry-wide,.masonry-portfolio,.masonry-newborn,.masonry-studio{columns:2 150px;column-gap:.65rem}.masonry figure{margin-bottom:.65rem;padding:.24rem}.mini-grid,.pricing-grid,.guide-grid,.planning-grid,.related-grid,.location-list .location-grid,.image-strip{grid-template-columns:1fr}.info-grid{grid-template-columns:1fr}.check-list{grid-template-columns:1fr}.numbered-list li{grid-template-columns:1fr}.pricing-mini{grid-template-columns:1fr}.image-strip figure:nth-child(2){margin-top:0}.review-card{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;margin-top:3rem}.contact-images{grid-template-columns:1fr}.contact-images figure:nth-child(2){margin-top:0}}
@media(max-width:460px){.masonry,.masonry-wide,.masonry-portfolio,.masonry-newborn,.masonry-studio{columns:1}.proof-grid{grid-template-columns:1fr}.proof-item{border-right:0;border-bottom:1px solid var(--line)}.footer-links{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Phase 2: restrained typography and visible proof */
.credentials-wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(3rem,7vw,8rem);align-items:center}
.credentials-copy{max-width:720px}.credentials-copy h2{max-width:13ch}.credentials-copy .lead{max-width:670px}
.credentials-art{padding:1rem;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.credentials-art img{width:100%;height:auto}
.review-feature{display:grid;grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);gap:clamp(2.5rem,6vw,7rem);align-items:center}
.review-feature blockquote p{font-size:clamp(1.7rem,2.6vw,3.2rem)}
.review-meta{margin-top:1.4rem;color:var(--rose-deep);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.review-stars{margin-bottom:1rem;color:var(--rose-deep);font-size:1.05rem;letter-spacing:.18em}
.proof-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.8rem}.proof-card{padding:2rem;border:1px solid var(--line);background:#fff}.proof-card strong{display:block;margin-bottom:.65rem;color:var(--ink);font-family:var(--display);font-size:2rem;font-weight:400;line-height:1}.proof-card span{font-size:.78rem;color:var(--muted)}
@media(max-width:1060px){.credentials-wrap,.review-feature{grid-template-columns:1fr}.credentials-art{max-width:900px}.proof-cards{grid-template-columns:1fr 1fr}}
@media(max-width:720px){h1{font-size:clamp(2.75rem,13vw,4.1rem)}h2{font-size:clamp(2.15rem,10vw,3.4rem)}.proof-cards{grid-template-columns:1fr}.credentials-art{padding:.5rem}}


/* Phase 3: corrected editorial rhythm, horizontal photography, and real credential marks */
:root{--max:min(94vw,1740px);--content:min(90vw,1500px);--text:min(88vw,940px)}
body{line-height:1.68}
h1,h2,h3,h4{text-wrap:pretty;letter-spacing:-.008em}
h1{font-size:clamp(3rem,4.15vw,4.95rem);line-height:1.01}
h2{font-size:clamp(2.35rem,3.1vw,3.75rem);line-height:1.04}
h3{font-size:clamp(1.65rem,1.8vw,2.2rem)}
.lead{font-size:clamp(1.02rem,1.1vw,1.2rem);line-height:1.72}
.section{padding:clamp(4.5rem,6.3vw,7.6rem) 0}
.section-heading{max-width:1080px;margin-bottom:clamp(2.7rem,4vw,4.5rem)}
.section-heading h1,.section-heading h2{max-width:980px}
.hero{padding:clamp(3rem,4.5vw,5.4rem) 0 clamp(4.8rem,6vw,7rem)}
.hero-grid{grid-template-columns:minmax(430px,.88fr) minmax(620px,1.12fr);gap:clamp(3rem,5.2vw,6.5rem)}
.hero-copy{max-width:760px;padding-left:0}.hero-copy h1{max-width:760px}.hero-copy .lead{max-width:700px}
.hero-media{max-width:860px;justify-self:end}.hero-primary{padding:.55rem}
.service-rows{gap:clamp(3.2rem,5vw,5.8rem)}
.service-row,.service-row.reverse{grid-template-columns:minmax(520px,1.06fr) minmax(420px,.94fr);gap:clamp(3rem,5vw,6rem);max-width:1450px;margin-inline:auto}
.service-row.reverse figure{order:2}.service-row figure{width:min(100%,720px);justify-self:center;padding:.45rem}.service-row img{width:100%;height:auto}
.service-row-copy{max-width:650px}.service-row-copy p{max-width:590px;font-size:.96rem}
.split,.split.reverse{grid-template-columns:minmax(520px,1fr) minmax(520px,1fr);gap:clamp(3rem,5vw,6.5rem)}
.split.reverse>:first-child{order:2}.split-copy{max-width:760px}.split-copy h1,.split-copy h2,.split-copy h3{max-width:760px}.split-copy>p{max-width:700px}
.photographer-note{max-width:760px}.photographer-note h2{max-width:760px}
.image-cluster,.image-cluster-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:start}
.image-cluster-three figure:nth-child(1),.image-cluster-three figure:nth-child(2),.image-cluster-three figure:nth-child(3){grid-column:auto;margin:0}
.image-duo,.newborn-stack{grid-template-columns:1fr 1fr;gap:1rem}.image-duo figure:nth-child(2),.newborn-stack figure:nth-child(2){margin:0}
.masonry,.masonry-wide,.masonry-portfolio,.masonry-newborn,.masonry-studio{columns:3 320px;column-gap:1rem}.masonry figure{margin-bottom:1rem}
.cta-inner{width:var(--content);grid-template-columns:minmax(0,1fr) auto;gap:clamp(3rem,5vw,6rem)}
.cta-inner h2{max-width:820px;font-size:clamp(2.4rem,3vw,3.6rem)}.cta-inner .lead{max-width:760px}.cta-actions{align-self:center}
.credentials-wrap{grid-template-columns:1fr;gap:2.8rem;align-items:start}.credentials-copy{max-width:1080px}.credentials-copy h2{max-width:980px}.credentials-copy .lead{max-width:900px}
.credential-logos{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(360px,1.45fr) minmax(180px,.75fr);align-items:center;gap:clamp(2rem,4vw,5rem);padding:2.2rem 2.6rem;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow-soft)}
.credential-logo{display:flex;align-items:center;justify-content:center;min-height:150px}.credential-logo img{width:auto;max-width:100%;max-height:145px;height:auto;object-fit:contain}
.proof-cards{max-width:1000px}.review-feature{grid-template-columns:minmax(420px,.9fr) minmax(560px,1.1fr);gap:clamp(3rem,5vw,6rem)}.review-feature blockquote p{font-size:clamp(1.65rem,2vw,2.45rem)}
.quote-band{grid-template-columns:minmax(420px,.82fr) minmax(560px,1.18fr);gap:clamp(3rem,5vw,6rem)}
blockquote p{font-size:clamp(1.55rem,2vw,2.45rem)}
.contact-layout{grid-template-columns:minmax(360px,.8fr) minmax(620px,1.2fr)}
@media(max-width:1060px){
 .hero-grid,.service-row,.service-row.reverse,.split,.split.reverse,.quote-band,.cta-inner,.credentials-wrap,.review-feature{grid-template-columns:1fr}
 .hero-media{max-width:920px;justify-self:stretch}.hero-copy,.service-row-copy,.split-copy,.photographer-note{max-width:900px}
 .service-row.reverse figure,.split.reverse>:first-child{order:0}.service-row figure{width:min(100%,860px);justify-self:start}
 .cta-actions{justify-content:flex-start}.credential-logos{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
 h1{font-size:clamp(2.6rem,11vw,3.75rem)}h2{font-size:clamp(2.05rem,8.6vw,3rem)}
 .section{padding:4.2rem 0}.hero{padding:2.3rem 0 4.6rem}.hero-grid{gap:2.2rem}
 .image-cluster,.image-cluster-three,.image-duo,.newborn-stack,.credential-logos{grid-template-columns:1fr}
 .credential-logos{padding:1.4rem}.credential-logo{min-height:110px}.credential-logo img{max-height:115px}
 .masonry,.masonry-wide,.masonry-portfolio,.masonry-newborn,.masonry-studio{columns:1}
 .cta-inner h2{max-width:none}
}


:root{--max:min(94vw,1680px);--content:min(91vw,1420px);--text:min(88vw,860px)}body{line-height:1.72}p,li{max-width:72ch;text-wrap:pretty}h1,h2,h3,h4{max-width:none!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;text-wrap:balance;letter-spacing:-.004em}h1{font-size:clamp(2.65rem,3.15vw,3.95rem)!important;line-height:1.04!important}h2{font-size:clamp(1.95rem,2.35vw,2.9rem)!important;line-height:1.09!important}h3{font-size:clamp(1.3rem,1.45vw,1.8rem)!important;line-height:1.16!important}.lead{font-size:clamp(1rem,1.02vw,1.15rem)!important;line-height:1.75!important;max-width:66ch!important}.section{padding:clamp(3.7rem,4.6vw,5.6rem) 0!important}.section-heading{max-width:980px!important;margin-bottom:clamp(2rem,2.8vw,3.1rem)!important}.section-heading h1,.section-heading h2{max-width:30ch!important}.section-heading p{max-width:68ch!important}.hero{padding:clamp(2.5rem,3.4vw,4.1rem) 0 clamp(3.9rem,4.8vw,5.5rem)!important}.hero-grid{grid-template-columns:minmax(440px,.9fr) minmax(560px,1.1fr)!important;gap:clamp(2.7rem,3.8vw,4.6rem)!important;max-width:1480px!important}.hero-copy{max-width:730px!important}.hero-copy h1{max-width:20ch!important}.hero-media{max-width:700px!important;justify-self:end!important}.service-rows{gap:clamp(2.5rem,3.4vw,3.8rem)!important}.service-row,.service-row.reverse{grid-template-columns:minmax(440px,1fr) minmax(430px,1fr)!important;gap:clamp(2.6rem,3.8vw,4.4rem)!important;max-width:1220px!important;margin-inline:auto!important;align-items:center!important}.service-row figure{width:min(100%,540px)!important;max-width:540px!important;justify-self:center!important;padding:.35rem!important}.service-row img{width:100%!important;height:auto!important;display:block!important}.service-row-copy{max-width:590px!important}.service-row-copy h2,.service-row-copy h3{max-width:30ch!important}.service-row-copy p{max-width:64ch!important;font-size:1rem!important;line-height:1.74!important}.split,.split.reverse{grid-template-columns:minmax(470px,1fr) minmax(450px,1fr)!important;gap:clamp(2.7rem,4vw,4.8rem)!important;max-width:1300px!important;margin-inline:auto!important;align-items:center!important}.split>figure,.split.reverse>figure,.split .image-duo,.split .image-cluster,.split .newborn-stack{max-width:600px!important;width:100%!important;justify-self:center!important}.split-copy{max-width:680px!important}.split-copy h1,.split-copy h2,.split-copy h3{max-width:30ch!important}.split-copy>p{max-width:66ch!important}.photographer-note{max-width:1040px!important}.photographer-note h2{max-width:32ch!important}.photographer-note p{max-width:68ch!important}.cta-inner{width:var(--content)!important;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr)!important;gap:clamp(2.4rem,3.8vw,4.8rem)!important;align-items:center!important}.cta-inner h2{font-size:clamp(2.05rem,2.25vw,2.75rem)!important;max-width:34ch!important}.cta-inner .lead{max-width:64ch!important}.cta-actions{justify-content:flex-end!important}.credentials-wrap{display:grid!important;grid-template-columns:1fr!important;gap:2.2rem!important}.credentials-copy{max-width:1100px!important}.credentials-copy h2{max-width:32ch!important}.credentials-copy p{max-width:72ch!important}.credential-logos{display:grid!important;grid-template-columns:.8fr 1.35fr .8fr!important;gap:clamp(1.8rem,3vw,3.6rem)!important;align-items:center!important;padding:1.9rem 2.1rem!important;border:1px solid var(--line)!important;background:#fff!important;box-shadow:var(--shadow-soft)!important}.credential-logo{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:.75rem!important;min-height:138px!important;margin:0!important}.credential-logo img{display:block!important;width:auto!important;max-width:100%!important;max-height:108px!important;height:auto!important;object-fit:contain!important}.credential-logo figcaption{font-family:Montserrat,sans-serif!important;font-size:.64rem!important;line-height:1.4!important;letter-spacing:.1em!important;text-transform:uppercase!important;text-align:center!important;color:var(--muted)!important}.proof-cards{max-width:980px!important}.proof-card,.proof-cards article{min-height:auto!important;padding:1.35rem!important}.proof-card strong,.proof-cards h3{font-size:1.5rem!important}.review-feature,.quote-band{grid-template-columns:minmax(420px,.92fr) minmax(500px,1.08fr)!important;gap:clamp(2.7rem,3.8vw,4.6rem)!important}.review-feature blockquote p,blockquote p{font-size:clamp(1.3rem,1.5vw,1.8rem)!important;line-height:1.43!important;max-width:45ch!important}.horizontal-gallery-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.9rem!important;align-items:start!important}.horizontal-gallery-grid figure,.remote-current-frame{margin:0!important;padding:.32rem!important;background:#fff!important;box-shadow:var(--shadow-soft)!important}.horizontal-gallery-grid img,.remote-current-frame img{display:block!important;width:100%!important;height:auto!important}.remote-current-frame{max-width:860px!important;margin-inline:auto!important}.portfolio-location-nav{padding:1rem 0 2.4rem!important}.portfolio-chips{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:.55rem!important}.portfolio-chips a{padding:.65rem .85rem!important;border:1px solid var(--line)!important;background:#fff!important;font-family:Montserrat,sans-serif!important;font-size:.65rem!important;letter-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important}.portfolio-location-heading{display:grid!important;grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr)!important;gap:2rem!important;align-items:end!important;margin-bottom:2.1rem!important}.portfolio-location-heading h2{max-width:24ch!important;margin:0!important}.portfolio-location-heading p{max-width:66ch!important;margin:0!important;color:var(--muted)!important}.portfolio-location-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:.8rem!important;align-items:start!important}.portfolio-location-grid figure{margin:0!important;padding:.25rem!important;background:#fff!important;box-shadow:var(--shadow-soft)!important}.portfolio-location-grid img{display:block!important;width:100%!important;height:auto!important}.masonry,.masonry-wide,.masonry-portfolio,.masonry-newborn,.masonry-studio{columns:3 300px!important;column-gap:.9rem!important}.masonry figure{margin-bottom:.9rem!important}.contact-layout{grid-template-columns:minmax(360px,.85fr) minmax(620px,1.15fr)!important;gap:clamp(2.7rem,3.8vw,4.6rem)!important}.contact-card h2{font-size:clamp(1.9rem,2.2vw,2.7rem)!important;max-width:28ch!important}@media(max-width:1080px){.hero-grid,.service-row,.service-row.reverse,.split,.split.reverse,.quote-band,.cta-inner,.review-feature,.contact-layout,.portfolio-location-heading{grid-template-columns:1fr!important}.hero-media{max-width:760px!important;justify-self:start!important}.hero-copy,.service-row-copy,.split-copy,.photographer-note{max-width:850px!important}.service-row figure{justify-self:start!important}.cta-actions{justify-content:flex-start!important}.credential-logos{grid-template-columns:repeat(3,1fr)!important}.portfolio-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:720px){h1{font-size:clamp(2.3rem,9.3vw,3.15rem)!important}h2{font-size:clamp(1.8rem,7.3vw,2.45rem)!important}h3{font-size:clamp(1.25rem,5.2vw,1.65rem)!important}.section{padding:3.4rem 0!important}.hero{padding:2.1rem 0 3.7rem!important}.hero-copy h1,.section-heading h1,.section-heading h2,.service-row-copy h2,.split-copy h2,.photographer-note h2,.cta-inner h2{max-width:none!important}.horizontal-gallery-grid,.portfolio-location-grid,.credential-logos{grid-template-columns:1fr!important}.masonry,.masonry-wide,.masonry-portfolio,.masonry-newborn,.masonry-studio{columns:1!important}.portfolio-chips{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:.4rem!important}.portfolio-chips a{white-space:nowrap!important}.credential-logo{min-height:96px!important}.credential-logo img{max-height:88px!important}}


/* STATE-BEST: wider, quieter, image-led */
:root{--max:min(94vw,1700px);--content:min(90vw,1400px);--text:min(88vw,820px);--display:"Cormorant Garamond",Georgia,"Times New Roman",serif}
body{font-size:16px;line-height:1.72;background:#fdfbf9}h1,h2,h3,h4{font-weight:300!important;letter-spacing:0!important;line-height:1.08!important;text-wrap:pretty!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;max-width:none!important}h1{font-size:clamp(2.85rem,4vw,4.75rem)!important;line-height:1.01!important}h2{font-size:clamp(2.05rem,2.7vw,3.25rem)!important}h3{font-size:clamp(1.4rem,1.55vw,1.95rem)!important}p,li{max-width:70ch;text-wrap:pretty}.lead{font-size:clamp(1.03rem,1.12vw,1.2rem)!important;line-height:1.75!important;max-width:66ch!important}
.section{padding:clamp(4.25rem,5.7vw,7rem) 0!important}.section-heading{margin-bottom:clamp(2.2rem,3.4vw,4rem)!important}.section-heading h1,.section-heading h2{max-width:26ch!important}.section-heading p{max-width:68ch!important}
.hero{padding:clamp(2.8rem,4.2vw,4.8rem) 0 clamp(4.2rem,6vw,7.2rem)!important}.hero-grid{grid-template-columns:minmax(500px,.95fr) minmax(590px,1.05fr)!important;gap:clamp(3rem,5vw,6rem)!important;max-width:1520px!important}.hero-copy{max-width:730px!important;padding-left:0!important}.hero-copy h1{max-width:19ch!important}.hero-media{width:100%!important;max-width:740px!important;justify-self:end!important}.hero-primary{padding:.45rem!important}.hero-primary img{width:100%!important;height:auto!important}.hero-accent{display:none!important}
.service-rows{gap:clamp(3.5rem,5vw,6rem)!important}.service-row,.service-row.reverse{grid-template-columns:minmax(460px,1fr) minmax(430px,.92fr)!important;gap:clamp(3rem,5vw,6rem)!important;max-width:1280px!important;margin-inline:auto!important}.service-row figure{width:min(100%,620px)!important;max-width:620px!important}.service-row-copy{max-width:600px!important}.service-row-copy h2,.service-row-copy h3{max-width:25ch!important}.service-row-copy p{max-width:64ch!important}
.split,.split.reverse{grid-template-columns:minmax(500px,1fr) minmax(460px,.92fr)!important;gap:clamp(3.2rem,5vw,6.2rem)!important;max-width:1340px!important;margin-inline:auto!important}.split-copy{max-width:680px!important}.split-copy h2{max-width:25ch!important}.split>figure,.split.reverse>figure,.split .image-duo,.split .image-cluster,.split .newborn-stack{max-width:690px!important}
.cta-inner{max-width:1340px!important;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr)!important;gap:clamp(2.8rem,4vw,5rem)!important}.cta-inner h2{font-size:clamp(2.1rem,2.55vw,3rem)!important;max-width:26ch!important}.cta-actions{justify-content:flex-end!important}
.proof-item{min-height:104px!important;padding:1.25rem 1.5rem!important}.proof-item strong{font-size:1.72rem!important}.proof-item span{max-width:26ch}
.method-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border:1px solid var(--line);background:var(--line)}.method-strip article{padding:clamp(1.4rem,2vw,2rem);background:#fff}.method-strip h3{font-size:1.42rem!important;margin-bottom:.45rem}.method-strip p{font-size:.88rem;color:var(--muted)}
.editorial-intro{display:grid;grid-template-columns:minmax(370px,.72fr) minmax(520px,1.28fr);gap:clamp(3rem,5vw,6rem);align-items:start}.editorial-intro h2{max-width:20ch!important}.editorial-intro .copy{max-width:760px}.editorial-intro .copy p{max-width:68ch}
.fact-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:2.2rem;border:1px solid var(--line);background:var(--line)}.fact-row>div{padding:1.45rem;background:#fff}.fact-row strong{display:block;font-family:var(--display);font-size:1.65rem;font-weight:400;color:var(--ink)}.fact-row span{display:block;margin-top:.35rem;font-size:.67rem;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.studio-local-grid,.studio-live-grid,.portfolio-location-grid{display:grid!important;gap:clamp(.85rem,1.2vw,1.25rem)!important;align-items:start!important}.studio-local-grid,.studio-live-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.studio-local-grid figure,.studio-live-grid figure,.portfolio-location-grid figure{margin:0!important;padding:.34rem!important;background:#fff!important;box-shadow:0 12px 34px rgba(59,45,48,.075)!important}.studio-local-grid img,.portfolio-location-grid img{display:block!important;width:100%!important;height:auto!important}.studio-live-grid figure{aspect-ratio:3/2;display:grid!important;place-items:center!important;overflow:hidden!important}.studio-live-grid img{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.studio-copy-band{display:grid;grid-template-columns:minmax(360px,.75fr) minmax(520px,1.25fr);gap:clamp(3rem,5vw,6rem);align-items:start}.studio-copy-band h2{max-width:20ch!important}.studio-process{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.studio-process article{padding:1.8rem;border:1px solid var(--line);background:#fff}.studio-process h3{font-size:1.5rem!important}.studio-process p{font-size:.9rem;color:var(--muted)}
.review-proof{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(520px,1.28fr);gap:clamp(3rem,5vw,6rem);align-items:center}.review-proof blockquote{margin:0}.review-proof blockquote p{font-size:clamp(1.35rem,1.65vw,1.85rem)!important;line-height:1.45!important;max-width:44ch!important}.review-proof cite{display:block;margin-top:1rem;font-style:normal;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.portfolio-location-section{padding:clamp(4.5rem,6vw,7rem) 0!important}.portfolio-location-heading{grid-template-columns:minmax(320px,.72fr) minmax(440px,1.28fr)!important;gap:2.3rem!important;margin-bottom:2.35rem!important}.portfolio-location-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.portfolio-location-grid figure{padding:.28rem!important}
.page-studio .faq-list{max-width:980px;margin-inline:auto}.page-studio .section-heading.center p{max-width:65ch}
@media(max-width:1100px){.hero-grid,.service-row,.service-row.reverse,.split,.split.reverse,.cta-inner,.editorial-intro,.studio-copy-band,.review-proof,.portfolio-location-heading{grid-template-columns:1fr!important}.hero-media{justify-self:start!important}.hero-copy,.service-row-copy,.split-copy{max-width:850px!important}.cta-actions{justify-content:flex-start!important}.method-strip,.fact-row{grid-template-columns:repeat(2,1fr)}.portfolio-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.studio-local-grid,.studio-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){h1{font-size:clamp(2.5rem,10vw,3.4rem)!important}h2{font-size:clamp(1.9rem,7.7vw,2.6rem)!important}h3{font-size:clamp(1.28rem,5.4vw,1.68rem)!important}.section{padding:3.55rem 0!important}.hero{padding:2.1rem 0 3.9rem!important}.hero-grid{gap:2rem!important}.hero-copy h1,.section-heading h1,.section-heading h2,.service-row-copy h2,.split-copy h2,.cta-inner h2{max-width:none!important}.method-strip,.fact-row,.studio-process,.studio-local-grid,.studio-live-grid,.portfolio-location-grid{grid-template-columns:1fr!important}.studio-live-grid figure{aspect-ratio:auto!important}.studio-live-grid img{width:100%!important;max-height:none!important}.proof-grid{grid-template-columns:repeat(2,1fr)!important}.portfolio-location-section{padding:3.6rem 0!important}}


/* BALANCED EDITORIAL REVISION: quieter image scale, centered compositions, no oversized narrative imagery */
:root{--narrative-max:1180px;--media-max:560px;--hero-media-max:620px}
.hero-grid{grid-template-columns:minmax(430px,.96fr) minmax(500px,1.04fr)!important;gap:clamp(2.6rem,4vw,4.75rem)!important;max-width:1280px!important;align-items:center!important}
.hero-copy{align-self:center!important;justify-self:center!important;max-width:650px!important}
.hero-media{max-width:var(--hero-media-max)!important;justify-self:center!important}
.hero-primary{max-width:var(--hero-media-max)!important;margin-inline:auto!important}
.hero-primary img{max-height:520px!important;width:auto!important;max-width:100%!important;margin-inline:auto!important;object-fit:contain!important}
.service-rows{gap:clamp(3rem,4.3vw,5rem)!important}
.service-row,.service-row.reverse{grid-template-columns:minmax(390px,1fr) minmax(390px,1fr)!important;gap:clamp(2.6rem,4vw,4.75rem)!important;max-width:var(--narrative-max)!important;align-items:center!important}
.service-row figure{width:100%!important;max-width:var(--media-max)!important;justify-self:center!important;margin-inline:auto!important}
.service-row figure img{display:block!important;width:auto!important;max-width:100%!important;max-height:440px!important;margin-inline:auto!important;object-fit:contain!important}
.service-row-copy{width:100%!important;max-width:560px!important;align-self:center!important;justify-self:center!important}
.service-row-copy h2,.service-row-copy h3{max-width:22ch!important}
.split,.split.reverse{grid-template-columns:minmax(390px,1fr) minmax(390px,1fr)!important;gap:clamp(2.6rem,4vw,4.75rem)!important;max-width:var(--narrative-max)!important;align-items:center!important}
.split>figure,.split.reverse>figure{width:100%!important;max-width:var(--media-max)!important;justify-self:center!important;margin-inline:auto!important}
.split>figure img,.split.reverse>figure img{display:block!important;width:auto!important;max-width:100%!important;max-height:440px!important;margin-inline:auto!important;object-fit:contain!important}
.split-copy,.photographer-note{width:100%!important;max-width:600px!important;align-self:center!important;justify-self:center!important}
.image-cluster{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1rem!important;width:100%!important;max-width:780px!important;margin-inline:auto!important;align-items:center!important}
.image-cluster figure{width:100%!important;margin:0!important;padding:.3rem!important;background:#fff!important;box-shadow:0 12px 30px rgba(59,45,48,.07)!important}
.image-cluster img{display:block!important;width:100%!important;height:auto!important;max-height:280px!important;object-fit:contain!important;margin-inline:auto!important}
.image-duo{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1rem!important;width:100%!important;max-width:760px!important;margin-inline:auto!important;align-items:center!important}
.image-duo figure{margin:0!important;padding:.32rem!important;background:#fff!important;box-shadow:0 12px 30px rgba(59,45,48,.07)!important}
.image-duo img{display:block!important;width:100%!important;height:auto!important;max-height:340px!important;object-fit:contain!important;margin-inline:auto!important}
.visual-interlude .shell-wide{max-width:1240px!important}
.visual-interlude-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.25rem!important;max-width:1040px!important;margin-inline:auto!important;align-items:center!important}
.visual-interlude-grid figure{margin:0!important;padding:.35rem!important;background:#fff!important;box-shadow:0 12px 30px rgba(59,45,48,.07)!important}
.visual-interlude-grid img{display:block!important;width:auto!important;max-width:100%!important;max-height:400px!important;margin-inline:auto!important;object-fit:contain!important}
.editorial-intro,.studio-copy-band,.review-proof,.portfolio-location-heading{max-width:var(--narrative-max)!important;margin-inline:auto!important;align-items:center!important}
.editorial-intro>*,.studio-copy-band>*,.review-proof>*,.portfolio-location-heading>*{align-self:center!important}
.section-heading{max-width:900px!important;margin-left:auto!important;margin-right:auto!important}
.section-heading.center,.section-heading.center h1,.section-heading.center h2,.section-heading.center p{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
.quote-band,.review-feature{max-width:var(--narrative-max)!important;margin-inline:auto!important;align-items:center!important}
.quote-band figure,.review-feature figure{max-width:500px!important;justify-self:center!important}
.quote-band figure img,.review-feature figure img{max-height:390px!important;width:auto!important;max-width:100%!important;margin-inline:auto!important;object-fit:contain!important}
.page-home .service-row:nth-child(3) figure{max-width:540px!important}
.page-home .service-row:nth-child(3) figure img{max-height:410px!important}
@media(max-width:1080px){
 .hero-grid,.service-row,.service-row.reverse,.split,.split.reverse{grid-template-columns:1fr!important;max-width:820px!important}
 .hero-copy,.service-row-copy,.split-copy,.photographer-note{text-align:left!important;justify-self:center!important}
 .hero-media,.service-row figure,.split>figure,.split.reverse>figure{justify-self:center!important}
 .image-cluster{max-width:720px!important}
}
@media(max-width:720px){
 :root{--hero-media-max:100%;--media-max:100%}
 .hero-primary img,.service-row figure img,.split>figure img,.split.reverse>figure img,.visual-interlude-grid img{max-height:none!important;width:100%!important}
 .image-cluster,.image-duo,.visual-interlude-grid{grid-template-columns:1fr!important;max-width:620px!important}
 .image-cluster img,.image-duo img{max-height:none!important}
 .section-heading{text-align:left!important}
 .section-heading.center{text-align:center!important}
}


/* Phase 8: balanced editorial image scale and section rhythm */
:root{--section-space:clamp(3rem,4vw,4.8rem);--narrative-max:1240px}
.section{padding:var(--section-space) 0!important}
.section+.section{margin-top:0!important}
.section-heading{margin-bottom:clamp(1.7rem,2.4vw,2.6rem)!important}
.hero{padding:clamp(2rem,3vw,3.4rem) 0 clamp(3rem,4vw,4.4rem)!important}
.hero-grid{max-width:1320px!important;gap:clamp(2.2rem,3vw,3.5rem)!important;align-items:center!important}
.hero-media{max-width:620px!important;justify-self:end!important}
.hero-primary img{max-height:520px!important;width:auto!important;max-width:100%!important;margin-inline:auto!important;object-fit:contain!important}
.service-rows{gap:clamp(2.8rem,4vw,4.5rem)!important}
.service-row,.service-row.reverse{max-width:1180px!important;grid-template-columns:minmax(420px,1fr) minmax(390px,.9fr)!important;gap:clamp(2.4rem,3.5vw,4rem)!important}
.service-row figure{max-width:500px!important;width:100%!important}
.service-row figure img{max-height:420px!important;width:auto!important;max-width:100%!important;margin-inline:auto!important;object-fit:contain!important}
.split,.split.reverse{max-width:1200px!important;grid-template-columns:minmax(480px,1fr) minmax(460px,1fr)!important;gap:clamp(2.8rem,4vw,4.5rem)!important;align-items:center!important}
.image-cluster-three{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1rem!important;max-width:760px!important;width:100%!important;margin:0!important;align-items:center!important}
.image-cluster-three figure{grid-column:auto!important;margin:0!important;padding:.35rem!important;background:#fff!important;box-shadow:var(--shadow-soft)!important}
.image-cluster-three img{display:block!important;width:100%!important;height:auto!important;max-height:260px!important;object-fit:contain!important;margin-inline:auto!important}
.split .image-cluster-three{justify-self:end!important}
.split-copy{justify-self:start!important;max-width:590px!important}
.split-copy h2,.split-copy h3{max-width:24ch!important}
.split-copy p{max-width:60ch!important}
.visual-interlude{padding:clamp(2.8rem,3.8vw,4.4rem) 0!important}
.visual-interlude .shell-wide{max-width:1320px!important}
.visual-interlude-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1rem!important;max-width:1180px!important;margin-inline:auto!important;align-items:center!important}
.visual-interlude-grid figure{margin:0!important;padding:.32rem!important;background:#fff!important;box-shadow:var(--shadow-soft)!important}
.visual-interlude-grid img{display:block!important;width:100%!important;height:auto!important;max-height:280px!important;object-fit:contain!important;margin-inline:auto!important}
.quote-band,.review-feature{max-width:1180px!important;margin-inline:auto!important}
.quote-band figure img,.review-feature figure img{max-height:420px!important;width:auto!important;max-width:100%!important;margin-inline:auto!important;object-fit:contain!important}
.credentials-wrap,.editorial-intro,.studio-copy-band,.review-proof,.portfolio-location-heading{max-width:1180px!important}
.cta-inner{max-width:1180px!important;margin-inline:auto!important}
@media(max-width:1080px){
 .hero-grid,.service-row,.service-row.reverse,.split,.split.reverse{grid-template-columns:1fr!important;max-width:820px!important}
 .hero-media,.service-row figure,.split .image-cluster-three,.split-copy{justify-self:center!important}
 .split-copy{text-align:left!important}
 .image-cluster-three{max-width:760px!important}
 .visual-interlude-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:820px!important}
}
@media(max-width:720px){
 .section{padding:3rem 0!important}
 .hero-primary img,.service-row figure img,.quote-band figure img,.review-feature figure img{max-height:none!important;width:100%!important}
 .image-cluster-three{grid-template-columns:1fr!important;max-width:560px!important}
 .image-cluster-three img{max-height:none!important}
 .visual-interlude-grid{grid-template-columns:1fr!important;max-width:620px!important}
 .visual-interlude-grid img{max-height:none!important}
}

/* Phase 9: final balanced editorial system based on live visual review */
:root{--balanced-content:1120px;--balanced-media:500px;--balanced-gallery:1180px}

/* Calm the entire site: images support copy instead of dominating it */
.hero-grid{max-width:1200px!important;grid-template-columns:minmax(430px,.96fr) minmax(460px,1.04fr)!important;gap:clamp(2.25rem,3.2vw,3.75rem)!important}
.hero-copy{max-width:640px!important}
.hero-media,.hero-primary{max-width:560px!important}
.hero-primary img{max-height:460px!important;width:auto!important;max-width:100%!important;object-fit:contain!important;margin-inline:auto!important}

.service-rows{gap:clamp(2.8rem,4vw,4.75rem)!important}
.service-row,.service-row.reverse{max-width:1100px!important;grid-template-columns:minmax(400px,1fr) minmax(400px,1fr)!important;gap:clamp(2.5rem,3.5vw,4rem)!important}
.service-row figure{max-width:480px!important;width:100%!important;justify-self:center!important}
.service-row figure img{max-height:360px!important;width:auto!important;max-width:100%!important;object-fit:contain!important;margin-inline:auto!important}
.service-row-copy{max-width:520px!important}

.split,.split.reverse{max-width:1120px!important;grid-template-columns:minmax(410px,1fr) minmax(410px,1fr)!important;gap:clamp(2.5rem,3.6vw,4.2rem)!important}
.split>figure,.split.reverse>figure{max-width:500px!important}
.split>figure img,.split.reverse>figure img{max-height:370px!important;width:auto!important;max-width:100%!important;object-fit:contain!important;margin-inline:auto!important}
.split-copy,.photographer-note{max-width:560px!important}

/* Center section introductions and remove the floating, off-balance look */
.section-heading{max-width:820px!important;margin-inline:auto!important;text-align:center!important}
.section-heading h1,.section-heading h2,.section-heading h3,.section-heading p{margin-left:auto!important;margin-right:auto!important;text-align:center!important}

/* Homepage: replace the tiny photo cluster / offset-copy composition with one coherent editorial block */
.page-home .section-blush .split{display:flex!important;flex-direction:column!important;max-width:1080px!important;gap:2.35rem!important;text-align:center!important}
.page-home .section-blush .split-copy{order:1!important;max-width:790px!important;margin-inline:auto!important;text-align:center!important;justify-self:center!important}
.page-home .section-blush .split-copy h2,.page-home .section-blush .split-copy p{margin-left:auto!important;margin-right:auto!important;text-align:center!important}
.page-home .section-blush .check-list{max-width:760px!important;margin-inline:auto!important;text-align:left!important}
.page-home .section-blush .image-cluster-three{order:2!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1.25rem!important;max-width:1000px!important;width:100%!important;margin-inline:auto!important;align-items:start!important}
.page-home .section-blush .image-cluster-three figure{margin:0!important;padding:.42rem!important;background:#fff!important;box-shadow:var(--shadow-soft)!important}
.page-home .section-blush .image-cluster-three img{display:block!important;width:100%!important;height:auto!important;max-height:330px!important;object-fit:contain!important;margin-inline:auto!important}

/* Medium, useful supporting image groups. Never postage stamps, never full-screen walls. */
.image-cluster,.image-cluster-three{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1.15rem!important;max-width:960px!important;margin-inline:auto!important}
.image-cluster figure,.image-cluster-three figure{grid-column:auto!important;margin:0!important}
.image-cluster img,.image-cluster-three img{max-height:320px!important;width:100%!important;height:auto!important;object-fit:contain!important}
.image-duo{grid-template-columns:repeat(2,minmax(0,420px))!important;justify-content:center!important;max-width:900px!important;gap:1.25rem!important}
.image-duo img{max-height:340px!important;width:100%!important;height:auto!important;object-fit:contain!important}

/* Narrative galleries across service and location pages: abundant, even, and centered */
.masonry,.masonry-wide,.masonry-newborn,.masonry-studio{columns:unset!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;gap:1.15rem!important;max-width:var(--balanced-gallery)!important;margin-inline:auto!important;align-items:start!important}
.masonry figure,.masonry-wide figure,.masonry-newborn figure,.masonry-studio figure{break-inside:auto!important;margin:0!important;padding:.38rem!important;background:#fff!important;box-shadow:var(--shadow-soft)!important}
.masonry img,.masonry-wide img,.masonry-newborn img,.masonry-studio img{display:block!important;width:100%!important;height:auto!important;max-height:360px!important;object-fit:contain!important;margin-inline:auto!important}

/* Portfolio keeps abundance, but the rest of the site no longer produces random giant or tiny layouts */
.visual-interlude .shell-wide{max-width:1240px!important}
.visual-interlude-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,360px))!important;justify-content:center!important;gap:1.2rem!important;max-width:1120px!important;margin-inline:auto!important;align-items:start!important}
.visual-interlude-grid figure{width:100%!important;margin:0!important;padding:.38rem!important;background:#fff!important;box-shadow:var(--shadow-soft)!important}
.visual-interlude-grid img{display:block!important;width:100%!important;height:auto!important;max-height:330px!important;object-fit:contain!important;margin-inline:auto!important}

/* Review and proof sections stay readable instead of becoming another oversized image section */
.quote-band,.review-feature{max-width:1080px!important;grid-template-columns:minmax(360px,.82fr) minmax(430px,1.18fr)!important;gap:clamp(2.2rem,3.2vw,3.75rem)!important}
.quote-band figure,.review-feature figure{max-width:430px!important}
.quote-band figure img,.review-feature figure img{max-height:330px!important;width:auto!important;max-width:100%!important;object-fit:contain!important;margin-inline:auto!important}

/* Keep copy compositions aligned and intentional */
.editorial-intro,.studio-copy-band,.review-proof,.portfolio-location-heading,.credentials-wrap,.cta-inner{max-width:1120px!important;margin-inline:auto!important}
.cta-inner{grid-template-columns:minmax(0,1fr) auto!important;gap:3rem!important}

@media(max-width:1080px){
 .hero-grid,.service-row,.service-row.reverse,.split,.split.reverse,.quote-band,.review-feature,.cta-inner{grid-template-columns:1fr!important;max-width:820px!important}
 .hero-copy,.service-row-copy,.split-copy,.photographer-note{max-width:760px!important;justify-self:center!important}
 .hero-media,.service-row figure,.split>figure,.split.reverse>figure{justify-self:center!important}
 .page-home .section-blush .image-cluster-three{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:720px){
 .section-heading{text-align:left!important}
 .section-heading h1,.section-heading h2,.section-heading h3,.section-heading p{text-align:left!important;margin-left:0!important}
 .page-home .section-blush .split-copy,.page-home .section-blush .split-copy h2,.page-home .section-blush .split-copy p{text-align:left!important}
 .page-home .section-blush .image-cluster-three,.image-cluster,.image-cluster-three,.image-duo,.visual-interlude-grid{grid-template-columns:1fr!important;max-width:620px!important}
 .hero-primary img,.service-row figure img,.split>figure img,.split.reverse>figure img,.masonry img,.masonry-wide img,.masonry-newborn img,.masonry-studio img,.visual-interlude-grid img{max-height:none!important;width:100%!important}
 .masonry,.masonry-wide,.masonry-newborn,.masonry-studio{grid-template-columns:1fr!important}
 .quote-band figure img,.review-feature figure img{max-height:none!important;width:100%!important}
}

/* ============================================================
   PHASE 4 — LARGE, BALANCED GALLERIES + REFINED FOOTER
   Preserve all existing gallery image choices and order.
   ============================================================ */

/* Gallery images should feel substantial, not like thumbnails. */
.horizontal-gallery-grid,
.portfolio-location-grid,
.masonry,
.masonry-wide,
.masonry-newborn,
.masonry-studio,
.masonry-portfolio {
  columns: unset !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: clamp(1rem, 1.35vw, 1.45rem) !important;
  width: min(94vw, 1480px) !important;
  max-width: 1480px !important;
  margin-inline: auto !important;
}

.horizontal-gallery-grid > figure,
.portfolio-location-grid > figure,
.masonry > figure,
.masonry-wide > figure,
.masonry-newborn > figure,
.masonry-studio > figure,
.masonry-portfolio > figure {
  flex: 0 1 calc((100% - 2.9rem) / 3) !important;
  width: auto !important;
  margin: 0 !important;
  padding: .42rem !important;
  background: #fff !important;
  box-shadow: 0 16px 42px rgba(59,45,48,.09) !important;
}

.horizontal-gallery-grid img,
.portfolio-location-grid img,
.masonry img,
.masonry-wide img,
.masonry-newborn img,
.masonry-studio img,
.masonry-portfolio img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
}

/* Three-image editorial clusters should be visible and useful. */
.image-cluster,
.image-cluster-three,
.page-home .section-blush .image-cluster-three {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(1.15rem, 1.6vw, 1.7rem) !important;
  width: min(92vw, 1120px) !important;
  max-width: 1120px !important;
  margin-inline: auto !important;
  align-items: center !important;
}

.image-cluster figure,
.image-cluster-three figure,
.page-home .section-blush .image-cluster-three figure {
  grid-column: auto !important;
  margin: 0 !important;
  padding: .42rem !important;
}

.image-cluster img,
.image-cluster-three img,
.page-home .section-blush .image-cluster-three img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
}

/* Keep content sections generous, but eliminate dead vertical acreage. */
.section-heading {
  margin-bottom: clamp(2rem, 3vw, 3.4rem) !important;
}

.portfolio-location-section {
  padding: clamp(4rem, 5.5vw, 6.5rem) 0 !important;
}

.portfolio-location-heading {
  width: min(92vw, 1180px) !important;
  margin-inline: auto !important;
  margin-bottom: clamp(2.1rem, 3vw, 3.2rem) !important;
}

/* Footer: quiet, editorial, readable. Never inherit giant display headings. */
.site-footer {
  position: relative !important;
  padding: clamp(4.5rem, 6vw, 6.8rem) 0 1.4rem !important;
  background: #373133 !important;
  color: #e8dfdd !important;
}

.site-footer::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: #d8a8ad;
}

.site-footer .footer-shell {
  width: min(90vw, 1380px) !important;
  grid-template-columns: minmax(280px, .8fr) minmax(620px, 1.2fr) !important;
  gap: clamp(4rem, 7vw, 8rem) !important;
  align-items: start !important;
}

.site-footer .footer-logo {
  width: min(310px, 88%) !important;
  margin-bottom: 1.3rem !important;
}

.site-footer .footer-brand p {
  max-width: 470px !important;
  margin: .9rem 0 0 !important;
  color: #cfc4c2 !important;
  font-family: var(--sans) !important;
  font-size: .86rem !important;
  line-height: 1.75 !important;
}

.site-footer .footer-contact {
  margin-top: 1.35rem !important;
}

.site-footer .footer-contact a {
  color: #fff !important;
  font-size: .82rem !important;
  line-height: 1.9 !important;
}

.site-footer .footer-links {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(2rem, 4vw, 4rem) !important;
}

.site-footer .footer-links h2 {
  margin: 0 0 1.25rem !important;
  color: #e9bfc3 !important;
  font-family: var(--sans) !important;
  font-size: .68rem !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  max-width: none !important;
}

.site-footer .footer-links a {
  display: block !important;
  width: fit-content !important;
  margin: .64rem 0 !important;
  color: #eee6e4 !important;
  font-family: var(--sans) !important;
  font-size: .82rem !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
  transition: color .2s ease, transform .2s ease !important;
}

.site-footer .footer-links a:hover,
.site-footer .footer-links a:focus-visible {
  color: #fff !important;
  transform: translateX(3px) !important;
}

.site-footer .footer-bottom {
  width: min(90vw, 1380px) !important;
  margin: clamp(3.5rem, 5vw, 5rem) auto 0 !important;
  padding-top: 1.35rem !important;
  border-top: 1px solid rgba(255,255,255,.16) !important;
  color: #b9adab !important;
  font-family: var(--sans) !important;
  font-size: .68rem !important;
  line-height: 1.6 !important;
}

.site-footer .footer-bottom a {
  color: #cfc4c2 !important;
}

@media (max-width: 1080px) {
  .horizontal-gallery-grid > figure,
  .portfolio-location-grid > figure,
  .masonry > figure,
  .masonry-wide > figure,
  .masonry-newborn > figure,
  .masonry-studio > figure,
  .masonry-portfolio > figure {
    flex-basis: calc((100% - 1.45rem) / 2) !important;
  }

  .site-footer .footer-shell {
    grid-template-columns: 1fr !important;
  }

  .site-footer .footer-links {
    max-width: 820px !important;
  }
}

@media (max-width: 720px) {
  .horizontal-gallery-grid,
  .portfolio-location-grid,
  .masonry,
  .masonry-wide,
  .masonry-newborn,
  .masonry-studio,
  .masonry-portfolio {
    width: min(92vw, 620px) !important;
  }

  .horizontal-gallery-grid > figure,
  .portfolio-location-grid > figure,
  .masonry > figure,
  .masonry-wide > figure,
  .masonry-newborn > figure,
  .masonry-studio > figure,
  .masonry-portfolio > figure {
    flex-basis: 100% !important;
  }

  .image-cluster,
  .image-cluster-three,
  .page-home .section-blush .image-cluster-three {
    grid-template-columns: 1fr !important;
    width: min(90vw, 600px) !important;
  }

  .site-footer .footer-links {
    grid-template-columns: 1fr 1fr !important;
    gap: 2.2rem 1.5rem !important;
  }
}

@media (max-width: 480px) {
  .site-footer .footer-links {
    grid-template-columns: 1fr !important;
  }
}

/* Editorial V5: deliberate media scale and balanced gallery compositions. */
@media (min-width: 1081px) {
  .home-location-feature .shell {
    width: min(92vw, 1420px) !important;
  }

  .home-location-feature .split.reverse {
    display: grid !important;
    grid-template-columns: minmax(0, 1.2fr) minmax(430px, .8fr) !important;
    gap: clamp(3.5rem, 5vw, 6.5rem) !important;
    max-width: 1360px !important;
    align-items: center !important;
  }

  .home-location-feature .split.reverse > .image-duo {
    order: 1 !important;
    width: 100% !important;
    max-width: 800px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(1rem, 1.5vw, 1.5rem) !important;
    justify-self: start !important;
  }

  .home-location-feature .split.reverse > .split-copy {
    order: 2 !important;
    max-width: 540px !important;
    justify-self: start !important;
  }

  .home-location-feature .image-duo figure {
    padding: .45rem !important;
  }

  .home-location-feature .image-duo img {
    width: 100% !important;
    height: auto !important;
    max-height: 430px !important;
    object-fit: contain !important;
  }

  .visual-interlude-grid.visual-count-4 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(1.25rem, 2vw, 2rem) !important;
    width: min(90vw, 1040px) !important;
    max-width: 1040px !important;
    margin-inline: auto !important;
    align-items: start !important;
  }

  .visual-interlude-grid.visual-count-3 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: clamp(1.1rem, 1.7vw, 1.7rem) !important;
    width: min(92vw, 1160px) !important;
    max-width: 1160px !important;
    margin-inline: auto !important;
    align-items: start !important;
  }

  .visual-interlude-grid.visual-count-2 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(1.25rem, 2vw, 2rem) !important;
    width: min(88vw, 940px) !important;
    max-width: 940px !important;
    margin-inline: auto !important;
    align-items: start !important;
  }

  .visual-interlude-grid.visual-count-1 {
    width: min(84vw, 760px) !important;
    max-width: 760px !important;
    margin-inline: auto !important;
  }

  .visual-interlude-grid.visual-count-4 figure,
  .visual-interlude-grid.visual-count-3 figure,
  .visual-interlude-grid.visual-count-2 figure,
  .visual-interlude-grid.visual-count-1 figure {
    margin: 0 !important;
    padding: .45rem !important;
    background: #fff !important;
    box-shadow: 0 16px 42px rgba(59,45,48,.09) !important;
  }

  .visual-interlude-grid.visual-count-4 img,
  .visual-interlude-grid.visual-count-3 img,
  .visual-interlude-grid.visual-count-2 img,
  .visual-interlude-grid.visual-count-1 img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  .home-closing-gallery {
    padding-top: clamp(3.8rem, 5vw, 5.8rem) !important;
    padding-bottom: clamp(4.2rem, 5.5vw, 6.2rem) !important;
  }
}

@media (min-width: 721px) and (max-width: 1080px) {
  .home-location-feature .split.reverse {
    grid-template-columns: 1fr !important;
    gap: 2.8rem !important;
  }

  .home-location-feature .split.reverse > .image-duo {
    order: 1 !important;
    width: min(92vw, 820px) !important;
    max-width: 820px !important;
    margin-inline: auto !important;
  }

  .home-location-feature .split.reverse > .split-copy {
    order: 2 !important;
    max-width: 760px !important;
    margin-inline: auto !important;
  }

  .visual-interlude-grid.visual-count-4,
  .visual-interlude-grid.visual-count-3,
  .visual-interlude-grid.visual-count-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: min(92vw, 860px) !important;
    max-width: 860px !important;
    gap: 1.25rem !important;
  }

  .visual-interlude-grid.visual-count-3 figure:last-child {
    grid-column: 1 / -1 !important;
    width: calc(50% - .625rem) !important;
    justify-self: center !important;
  }
}

@media (max-width: 720px) {
  .home-location-feature .split.reverse > .image-duo,
  .visual-interlude-grid.visual-count-4,
  .visual-interlude-grid.visual-count-3,
  .visual-interlude-grid.visual-count-2,
  .visual-interlude-grid.visual-count-1 {
    grid-template-columns: 1fr !important;
    width: min(90vw, 620px) !important;
    max-width: 620px !important;
    margin-inline: auto !important;
  }

  .visual-interlude-grid.visual-count-3 figure:last-child {
    width: 100% !important;
    grid-column: auto !important;
  }
}

/* V7 abundant galleries */
.gallery-rail-section{overflow:hidden}.gallery-rail-heading{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:2.1rem}.gallery-rail-heading>div:first-child{max-width:780px}.gallery-rail-heading h2{margin:.35rem 0 .65rem;max-width:19ch}.gallery-rail-heading .lead{max-width:700px;margin:0}.gallery-rail-controls{display:flex;gap:.65rem;flex:0 0 auto}.rail-button{width:48px;height:48px;border:1px solid rgba(55,49,49,.45);background:rgba(255,255,255,.7);color:#373131;font:500 1.2rem/1 Montserrat,sans-serif;cursor:pointer}.rail-button:hover,.rail-button:focus-visible{background:#373131;color:white;outline:none}.gallery-rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(320px,31vw,470px);gap:clamp(18px,2vw,30px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:4px 2px 24px}.gallery-rail-card{scroll-snap-align:start;margin:0}.gallery-rail-card img{display:block;width:100%;height:auto;background:#fff;padding:6px;box-shadow:0 12px 28px rgba(49,40,40,.08)}.location-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(30px,3vw,48px)}.location-card figure{margin:0 0 1.15rem}.location-card img{display:block;width:100%;height:auto}.location-card>div{padding:0 .3rem}.portfolio-location-section.gallery-rail-section{padding-top:clamp(72px,8vw,118px);padding-bottom:clamp(72px,8vw,118px)}@media(max-width:980px){.gallery-rail-heading{align-items:flex-start}.location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-rail{grid-auto-columns:minmax(320px,72vw)}}@media(max-width:680px){.gallery-rail-heading{display:block}.gallery-rail-controls{margin-top:1.2rem}.location-grid{grid-template-columns:1fr}.gallery-rail{grid-auto-columns:88vw;gap:16px}.rail-button{width:44px;height:44px}}


/* V11 blog archive + launch hardening */
.blog-hero{padding:clamp(72px,8vw,128px) var(--gutter) clamp(54px,7vw,96px);background:var(--blush2);text-align:center}
.blog-hero .shell{max-width:980px;margin:auto}.blog-hero h1{font-size:clamp(2.7rem,5.6vw,5rem);max-width:18ch;margin:.25rem auto 1.25rem;line-height:1.02}.blog-hero .lead{margin-inline:auto}
.blog-index{padding:clamp(64px,8vw,120px) var(--gutter)}.blog-grid{max-width:1500px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,46px)}
.blog-card{border-top:1px solid var(--border);padding-top:24px}.blog-card .post-meta,.post-meta{font:500 .75rem/1.3 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#8f5b62}.blog-card h2{font-size:clamp(1.8rem,2.5vw,2.65rem);line-height:1.05;margin:.75rem 0 1rem}.blog-card p{font-size:.98rem}.blog-card a{text-decoration:none}.blog-pagination{max-width:1500px;margin:64px auto 0;display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.blog-pagination a,.blog-pagination span{border:1px solid var(--border);padding:10px 14px;text-decoration:none}.blog-pagination .current{background:var(--ink);color:white}
.post-hero{padding:clamp(72px,8vw,124px) var(--gutter) clamp(52px,6vw,84px);background:var(--blush2);text-align:center}.post-hero .shell{max-width:1050px;margin:auto}.post-hero h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.03;margin:.35rem auto 1rem;max-width:22ch}.post-hero .post-deck{max-width:68ch;margin:auto;font-size:clamp(1.05rem,1.4vw,1.25rem)}
.post-body{max-width:920px;margin:0 auto;padding:clamp(58px,7vw,110px) var(--gutter);font-size:1.06rem;line-height:1.82}.post-body h2{font-size:clamp(2rem,3.8vw,3.3rem);line-height:1.08;margin:2.8rem 0 1rem}.post-body h3{font-size:clamp(1.55rem,2.5vw,2.2rem);margin:2.2rem 0 .8rem}.post-body p,.post-body ul,.post-body ol{margin:0 0 1.35rem}.post-body img{margin:2rem auto;box-shadow:0 16px 40px rgba(50,35,35,.08);max-height:900px}.post-body blockquote{border-left:3px solid #c98b92;padding-left:1.4rem;margin:2rem 0;font-family:var(--serif);font-size:1.5rem}.post-body a{text-decoration-thickness:1px;text-underline-offset:3px}.post-related{padding:clamp(56px,7vw,100px) var(--gutter);background:var(--blush2)}.post-related .shell{max-width:1280px;margin:auto}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.related-card{background:white;padding:24px;border:1px solid var(--border)}.related-card h3{font-size:1.75rem;line-height:1.08;margin:.5rem 0}.related-card a{text-decoration:none}
.core-related{margin-top:clamp(56px,6vw,88px);padding-top:clamp(42px,5vw,68px);border-top:1px solid var(--border)}.core-related h2{text-align:center}.core-related .related-grid{margin-top:28px}
@media(max-width:900px){.blog-grid,.related-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.blog-grid,.related-grid{grid-template-columns:1fr}.post-body{font-size:1rem}}

.footer-label{font-family:Montserrat,sans-serif;font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:inherit;margin:0 0 16px}.footer-links>div>a:first-of-type{margin-top:0}


/* V14: process page editorial sequence correction */
.page-process .process-rows{
  width:min(92vw,1320px);
  margin-inline:auto;
  gap:0;
  border-top:1px solid var(--line);
}
.page-process .process-row{
  display:grid;
  grid-template-columns:48px minmax(320px,.86fr) minmax(480px,1.14fr);
  align-items:center;
  gap:clamp(1.75rem,3.2vw,4rem);
  padding:clamp(2.8rem,4.8vw,5.4rem) 0;
  border-bottom:1px solid var(--line);
}
.page-process .process-row:nth-child(odd) .process-number{grid-column:1/2;grid-row:1}
.page-process .process-row:nth-child(odd) .process-copy{grid-column:2/3;grid-row:1}
.page-process .process-row:nth-child(odd) figure{grid-column:3/4;grid-row:1}
.page-process .process-row:nth-child(even){
  grid-template-columns:minmax(480px,1.14fr) 48px minmax(320px,.86fr);
}
.page-process .process-row:nth-child(even) figure{grid-column:1/2;grid-row:1;order:0}
.page-process .process-row:nth-child(even) .process-number{grid-column:2/3;grid-row:1}
.page-process .process-row:nth-child(even) .process-copy{grid-column:3/4;grid-row:1}
.page-process .process-row figure{
  width:min(100%,650px);
  justify-self:center;
  padding:.48rem;
  background:var(--white);
  box-shadow:var(--shadow-soft);
}
.page-process .process-row figure img{width:100%;height:auto}
.page-process .process-copy{max-width:500px}
.page-process .process-copy h2{margin-bottom:.35em;font-size:clamp(2.15rem,2.75vw,3.35rem)}
.page-process .process-copy p{max-width:470px;margin:0;color:var(--body);font-size:.98rem;line-height:1.72}
.page-process .process-number{
  align-self:start;
  padding-top:.55rem;
  color:var(--rose-deep);
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.16em;
}
@media(max-width:1060px){
  .page-process .process-rows{width:min(90vw,860px)}
  .page-process .process-row,
  .page-process .process-row:nth-child(even){
    grid-template-columns:44px minmax(0,1fr);
    gap:1rem 1.4rem;
    padding:clamp(2.5rem,6vw,4.5rem) 0;
  }
  .page-process .process-row:nth-child(odd) .process-number,
  .page-process .process-row:nth-child(even) .process-number{grid-column:1/2;grid-row:1}
  .page-process .process-row:nth-child(odd) .process-copy,
  .page-process .process-row:nth-child(even) .process-copy{grid-column:2/3;grid-row:1}
  .page-process .process-row:nth-child(odd) figure,
  .page-process .process-row:nth-child(even) figure{
    grid-column:1/-1;
    grid-row:2;
    width:min(100%,820px);
    margin-top:1.25rem;
  }
  .page-process .process-copy{max-width:700px}
  .page-process .process-copy p{max-width:680px}
}
@media(max-width:720px){
  .page-process .process-rows{width:min(88vw,640px)}
  .page-process .process-row,
  .page-process .process-row:nth-child(even){
    grid-template-columns:34px minmax(0,1fr);
    gap:.8rem 1rem;
    padding:2.6rem 0;
  }
  .page-process .process-number{padding-top:.35rem}
  .page-process .process-copy h2{font-size:clamp(2rem,10vw,2.8rem)}
  .page-process .process-copy p{font-size:.94rem;line-height:1.65}
  .page-process .process-row:nth-child(odd) figure,
  .page-process .process-row:nth-child(even) figure{margin-top:1rem;padding:.3rem}
}


/* V16: sitewide media scale, about-page rebuild, and exact per-post blog image handling */
@media (min-width: 1081px) {
  .image-cluster,
  .image-cluster-three,
  .page-home .section-blush .image-cluster-three {
    width:min(92vw,1180px)!important;
    max-width:1180px!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(1.2rem,1.8vw,1.9rem)!important;
  }
  .image-cluster:has(> figure:nth-child(2):last-child),
  .image-cluster-three:has(> figure:nth-child(2):last-child) {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    max-width:1040px!important;
  }
  .image-cluster figure,.image-cluster-three figure{width:100%!important;min-width:0!important}
  .image-cluster img,.image-cluster-three img,
  .page-home .section-blush .image-cluster-three img{
    width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;
  }
  .page-extended-family-photographer .split,
  .page-extended-family-photographer .split.reverse{max-width:1320px!important;grid-template-columns:minmax(480px,.9fr) minmax(600px,1.1fr)!important}
  .page-extended-family-photographer .image-cluster-three{max-width:760px!important;justify-self:stretch!important}
  .page-extended-family-photographer .image-cluster-three:has(> figure:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:760px!important}
  .page-extended-family-photographer .image-cluster-three img{min-height:270px!important;object-fit:contain!important}
  .visual-interlude-grid.visual-count-2{width:min(90vw,1080px)!important;max-width:1080px!important}
  .visual-interlude-grid.visual-count-3{width:min(92vw,1260px)!important;max-width:1260px!important}
  .visual-interlude-grid.visual-count-4{width:min(92vw,1160px)!important;max-width:1160px!important}
  .masonry,.masonry-wide,.masonry-newborn,.masonry-studio{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;max-width:1380px!important}
  .remote-current-frame{width:min(88vw,900px)!important;max-width:900px!important;margin-inline:auto!important}
  .remote-current-frame img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
}

.about-hero{padding:clamp(4rem,7vw,8rem) 0}
.about-hero-grid{width:min(91vw,1460px);margin:auto;display:grid;grid-template-columns:minmax(460px,.92fr) minmax(560px,1.08fr);gap:clamp(3rem,6vw,7rem);align-items:center}
.about-hero-copy{max-width:720px}.about-hero-copy h1{max-width:15ch!important}.about-hero-copy>p:not(.eyebrow){max-width:63ch}
.about-hero-media{position:relative;min-height:650px}.about-hero-media figure{margin:0;background:#fff;padding:.5rem;box-shadow:var(--shadow-soft)}
.about-primary{width:min(100%,690px);margin-left:auto!important}.about-primary img{display:block;width:100%;height:auto}
.about-secondary{position:absolute;left:0;bottom:0;width:min(52%,400px)}.about-secondary img{display:block;width:100%;height:auto}
.about-story-grid{width:min(90vw,1220px);margin:auto;display:grid;grid-template-columns:minmax(360px,.8fr) minmax(520px,1.2fr);gap:clamp(3rem,7vw,8rem);align-items:start}.about-story-grid h2{max-width:18ch!important}.about-story-copy{max-width:700px}
.centered-heading{text-align:center;margin-inline:auto}.centered-heading h2,.centered-heading p{margin-left:auto!important;margin-right:auto!important}
.about-value-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.3rem,2.5vw,2.8rem);max-width:1400px;margin:0 auto}.about-value-grid article{border-top:1px solid var(--ink);padding-top:1.4rem}.about-value-grid span{font:600 .68rem/1 Montserrat,sans-serif;letter-spacing:.16em;color:var(--rose-deep)}.about-value-grid h3{font-size:clamp(1.45rem,1.8vw,2rem)!important;margin:.75rem 0}.about-value-grid p{font-size:.92rem}
.team-grid{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:1.25fr .875fr .875fr;gap:clamp(1.4rem,2.5vw,2.6rem);align-items:stretch}.team-card{background:#fff;border:1px solid var(--line);padding:clamp(1.7rem,2.7vw,2.8rem);display:flex;flex-direction:column}.team-card-featured{padding:0;overflow:hidden}.team-card-featured>div:last-child{padding:clamp(1.7rem,2.7vw,2.8rem)}.team-photo img{display:block;width:100%;height:auto}.team-monogram{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:var(--blush);font:400 3rem/1 var(--display);margin-bottom:2.4rem}.team-card h3{font-size:clamp(2.1rem,2.8vw,3.2rem)!important;margin:.25rem 0 1rem}.team-personality{margin-top:auto;padding-top:1.5rem!important;border-top:1px solid var(--line);font-size:.76rem!important;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.about-close{text-align:center}.about-close h2,.about-close p{margin-left:auto;margin-right:auto}

.post-body img{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:none!important;object-fit:contain!important}
.post-image-grid{display:grid;gap:clamp(1rem,2vw,1.8rem);margin:clamp(2.5rem,4vw,4.5rem) auto;align-items:start;width:min(94vw,1120px)}
.post-image-count-1{grid-template-columns:1fr;max-width:900px}.post-image-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.post-image-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.post-image-frame{margin:0!important;padding:.4rem;background:#fff;box-shadow:0 16px 40px rgba(50,35,35,.08)}
.post-image-frame img{margin:0 auto!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
.post-image-count-1 .post-portrait{max-width:720px!important}.post-image-count-2 .post-portrait,.post-image-count-3 .post-portrait{width:auto!important;max-height:760px!important}

@media(max-width:1060px){
  .about-hero-grid,.about-story-grid{grid-template-columns:1fr}.about-hero-media{min-height:0;display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:1rem}.about-secondary{position:static;width:100%}.about-primary{margin-left:0!important}.about-value-grid{grid-template-columns:1fr 1fr}.team-grid{grid-template-columns:1fr 1fr}.team-card-featured{grid-column:1/-1}.post-image-count-3{grid-template-columns:repeat(2,minmax(0,1fr))}.post-image-count-3 figure:last-child{grid-column:1/-1;width:calc(50% - .5rem);justify-self:center}
}
@media(max-width:720px){
  .about-hero-grid{width:min(88vw,640px)}.about-hero-media{grid-template-columns:1fr}.about-story-grid{width:min(88vw,640px)}.about-value-grid,.team-grid,.post-image-count-2,.post-image-count-3{grid-template-columns:1fr}.team-card-featured{grid-column:auto}.post-image-count-3 figure:last-child{grid-column:auto;width:100%}.post-image-grid{width:100%}
}

/* V18: eliminate tiny under-hero media clusters sitewide */
@media (min-width: 1081px) {
  .split:has(> .image-cluster),
  .split:has(> .image-cluster-three),
  .split:has(> .newborn-stack),
  .split:has(> .image-duo) {
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:clamp(2.5rem,4vw,4.5rem)!important;
    width:min(92vw,1320px)!important;
    max-width:1320px!important;
    margin-inline:auto!important;
    align-items:start!important;
  }
  .split:has(> .image-cluster) > .split-copy,
  .split:has(> .image-cluster-three) > .split-copy,
  .split:has(> .newborn-stack) > .split-copy,
  .split:has(> .image-duo) > .split-copy {
    order:1!important;
    width:min(100%,820px)!important;
    max-width:820px!important;
    justify-self:center!important;
    text-align:center!important;
  }
  .split:has(> .image-cluster) > .split-copy p,
  .split:has(> .image-cluster-three) > .split-copy p,
  .split:has(> .newborn-stack) > .split-copy p,
  .split:has(> .image-duo) > .split-copy p,
  .split:has(> .image-cluster) > .split-copy h2,
  .split:has(> .image-cluster-three) > .split-copy h2,
  .split:has(> .newborn-stack) > .split-copy h2,
  .split:has(> .image-duo) > .split-copy h2 {
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .split:has(> .image-cluster) > .image-cluster,
  .split:has(> .image-cluster-three) > .image-cluster-three,
  .split:has(> .newborn-stack) > .newborn-stack,
  .split:has(> .image-duo) > .image-duo {
    order:2!important;
    justify-self:center!important;
    width:100%!important;
    max-width:1240px!important;
    margin:0 auto!important;
  }
  .split:has(> .image-cluster) > .image-cluster,
  .split:has(> .image-cluster-three) > .image-cluster-three {
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(1.2rem,2vw,2rem)!important;
  }
  .split:has(> .newborn-stack) > .newborn-stack,
  .split:has(> .image-duo) > .image-duo {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:clamp(1.4rem,2.3vw,2.4rem)!important;
    align-items:start!important;
    max-width:1080px!important;
  }
  .split:has(> .image-cluster) figure,
  .split:has(> .image-cluster-three) figure,
  .split:has(> .newborn-stack) figure,
  .split:has(> .image-duo) figure {
    width:100%!important;
    margin:0!important;
    padding:.5rem!important;
    background:#fff!important;
    box-shadow:var(--shadow-soft)!important;
  }
  .split:has(> .image-cluster) img,
  .split:has(> .image-cluster-three) img,
  .split:has(> .newborn-stack) img,
  .split:has(> .image-duo) img {
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
    margin:0!important;
  }
  .split:has(> .image-cluster) > .image-cluster:has(> figure:nth-child(2):last-child),
  .split:has(> .image-cluster-three) > .image-cluster-three:has(> figure:nth-child(2):last-child) {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    max-width:1080px!important;
  }
}

@media (min-width: 721px) and (max-width:1080px) {
  .split:has(> .image-cluster) > .image-cluster,
  .split:has(> .image-cluster-three) > .image-cluster-three {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:min(92vw,900px)!important;
    max-width:900px!important;
    gap:1.25rem!important;
  }
  .split:has(> .image-cluster) > .image-cluster figure:last-child:nth-child(odd),
  .split:has(> .image-cluster-three) > .image-cluster-three figure:last-child:nth-child(odd) {
    grid-column:1/-1!important;
    width:calc(50% - .625rem)!important;
    justify-self:center!important;
  }
  .split:has(> .newborn-stack) > .newborn-stack,
  .split:has(> .image-duo) > .image-duo {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:min(92vw,900px)!important;
    max-width:900px!important;
  }
}

@media (max-width:720px) {
  .split:has(> .image-cluster) > .image-cluster,
  .split:has(> .image-cluster-three) > .image-cluster-three,
  .split:has(> .newborn-stack) > .newborn-stack,
  .split:has(> .image-duo) > .image-duo {
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:620px!important;
    gap:1rem!important;
  }
  .split:has(> .image-cluster) > .image-cluster figure,
  .split:has(> .image-cluster-three) > .image-cluster-three figure,
  .split:has(> .newborn-stack) > .newborn-stack figure,
  .split:has(> .image-duo) > .image-duo figure {
    width:100%!important;
    margin:0!important;
  }
}



/* V21: corrected image curation and location-card geometry */
.page-central-florida-photographer .location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.4rem,2.6vw,2.4rem);align-items:stretch}
.page-central-florida-photographer .location-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px rgba(49,40,40,.06);overflow:hidden}
.page-central-florida-photographer .location-card figure{aspect-ratio:3/2;margin:0;padding:.4rem;background:#f7f1ef;display:grid;place-items:center;overflow:hidden}
.page-central-florida-photographer .location-card figure img{display:block;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
.page-central-florida-photographer .location-card>div{display:flex;flex:1;flex-direction:column;padding:clamp(1.15rem,1.8vw,1.65rem)}
.page-central-florida-photographer .location-card h3{margin:0 0 .55rem}
.page-central-florida-photographer .location-card p{margin:0 0 1.1rem}
.page-central-florida-photographer .location-card .text-link{margin-top:auto;align-self:flex-start}
.page-home .service-row figure,.page-extended-family-photographer figure,.page-central-florida-newborn-photography figure,.page-deltona-photo-studio figure{overflow:hidden}
.page-home .service-row figure img,.page-extended-family-photographer figure img,.page-central-florida-newborn-photography figure img,.page-deltona-photo-studio figure img{object-fit:contain!important;object-position:center!important}
.page-central-florida-newborn-photography .masonry-newborn{grid-template-columns:minmax(0,720px)!important;justify-content:center}
@media(max-width:980px){.page-central-florida-photographer .location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.page-central-florida-photographer .location-grid{grid-template-columns:1fr;gap:1.2rem}}


/* V22: stronger visual impact with safe, uncropped image presentation */
@media (min-width:1081px){
  .hero-grid{max-width:1450px!important;grid-template-columns:minmax(420px,.82fr) minmax(620px,1.18fr)!important;gap:clamp(2.5rem,4vw,5rem)!important}
  .hero-media,.hero-primary{width:100%!important;max-width:760px!important}
  .hero-primary img{display:block!important;width:100%!important;height:auto!important;max-height:680px!important;object-fit:contain!important;object-position:center!important}
  .service-row,.service-row.reverse{max-width:1240px!important}
  .service-row figure{max-width:590px!important}
  .service-row figure img{max-height:470px!important}
  .page-deltona-photo-studio .hero-media,.page-deltona-photo-studio .hero-primary{max-width:720px!important}
  .page-deltona-photo-studio .hero-primary img{max-height:720px!important}
}
.page-deltona-photo-studio .studio-editorial-grid{max-width:1120px;margin-inline:auto}
.page-deltona-photo-studio .studio-editorial-grid figure{display:grid;place-items:center}
.page-deltona-photo-studio .studio-editorial-grid img{width:100%!important;height:auto!important;max-height:720px!important;object-fit:contain!important}
.page-deltona-photo-studio .studio-wide-grid{max-width:1280px;margin-inline:auto}
.page-deltona-photo-studio .studio-wide-grid figure{aspect-ratio:3/2!important}
.page-deltona-photo-studio .studio-wide-grid img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important}
.page-portfolio .portfolio-location-grid{align-items:start!important}
.page-portfolio .portfolio-location-grid figure{overflow:hidden!important}
.page-portfolio .portfolio-location-grid img{display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;object-position:center!important}
@media (min-width:900px){
  .page-portfolio .portfolio-location-grid .portfolio-feature-wide{grid-column:span 2!important}
  .page-portfolio .portfolio-location-grid .portfolio-feature-wide img{max-height:720px!important;width:100%!important;object-fit:contain!important}
}
@media (max-width:720px){
  .hero-media,.hero-primary{width:100%!important;max-width:none!important}
  .hero-primary img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
  .page-portfolio .portfolio-location-grid .portfolio-feature-wide{grid-column:auto!important}
}


/* V23: high-impact hero scale with orientation-aware framing */
@media (min-width:1081px){
  .hero-grid{
    width:min(94vw,1700px)!important;
    max-width:1700px!important;
    grid-template-columns:minmax(470px,.82fr) minmax(720px,1.18fr)!important;
    gap:clamp(3rem,4.5vw,6.5rem)!important;
  }
  .hero-copy{max-width:700px!important}
  .hero-media{
    width:100%!important;
    max-width:920px!important;
    justify-self:end!important;
  }
  .hero-primary{
    width:100%!important;
    max-width:920px!important;
    margin-inline:0!important;
  }
  .hero-primary img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:760px!important;
    object-fit:contain!important;
    object-position:center!important;
    margin:0!important;
  }

  /* Portrait studio hero: the white frame follows the photograph instead of a landscape box. */
  .page-deltona-photo-studio .hero-grid{
    grid-template-columns:minmax(500px,1fr) minmax(430px,.78fr)!important;
    max-width:1500px!important;
  }
  .page-deltona-photo-studio .hero-media{
    width:100%!important;
    max-width:540px!important;
    justify-self:center!important;
  }
  .page-deltona-photo-studio .hero-primary{
    width:min(100%,500px)!important;
    max-width:500px!important;
    padding:.5rem!important;
    margin-inline:auto!important;
  }
  .page-deltona-photo-studio .hero-primary picture,
  .page-deltona-photo-studio .hero-primary img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
  }
}
@media (min-width:721px) and (max-width:1080px){
  .hero-media,.hero-primary{width:100%!important;max-width:820px!important}
  .hero-primary img{width:100%!important;height:auto!important;max-height:none!important}
  .page-deltona-photo-studio .hero-media,
  .page-deltona-photo-studio .hero-primary{width:min(100%,480px)!important;max-width:480px!important;margin-inline:auto!important}
}


/* V24: equal, comparison-friendly pricing cards */
.pricing-grid{align-items:stretch}
.price-card{display:flex;flex-direction:column;height:100%}
.price-card h3{min-height:2.35em}
.price-card ul{flex:1}
.price-card .text-link{align-self:flex-start;margin-top:auto}
@media (max-width:760px){.price-card h3{min-height:0}}


/* V25: polished card depth and Sprout iframe */
.price-card{
  position:relative;
  overflow:hidden;
  border-color:rgba(94,72,68,.16);
  background:linear-gradient(145deg,#fff 0%,#fefbf9 100%);
  box-shadow:0 16px 38px rgba(55,41,39,.09),0 3px 8px rgba(55,41,39,.05);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.price-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,rgba(196,137,139,.2),rgba(196,137,139,.72),rgba(196,137,139,.2));
}
.price-card.featured{
  border-color:rgba(174,105,110,.58);
  box-shadow:0 22px 48px rgba(78,50,50,.14),0 5px 12px rgba(78,50,50,.07);
}
@media (hover:hover) and (pointer:fine){
  .price-card:hover,.price-card:focus-within{z-index:2;transform:translateY(-5px) scale(1.012);border-color:rgba(174,105,110,.42);box-shadow:0 24px 52px rgba(55,41,39,.14),0 6px 14px rgba(55,41,39,.07)}
}
.sprout-form iframe{display:block;width:100%;min-height:1000px;border:0;background:#fff}


/* V26: visibly larger heroes, unmistakable package depth, and cache-busted delivery */
@media (min-width:1081px){
  .hero{
    padding-top:clamp(2.6rem,3.8vw,4.8rem)!important;
    padding-bottom:clamp(4.5rem,6vw,7rem)!important;
  }
  .hero-grid{
    width:min(98vw,1880px)!important;
    max-width:1880px!important;
    grid-template-columns:minmax(420px,.68fr) minmax(780px,1.32fr)!important;
    gap:clamp(1.75rem,2.8vw,3.75rem)!important;
  }
  .hero-copy{
    max-width:660px!important;
    padding-left:clamp(.5rem,1vw,1.25rem)!important;
  }
  .hero-media,
  .hero-primary{
    width:100%!important;
    max-width:1100px!important;
  }
  .hero-media{justify-self:end!important}
  .hero-primary{padding:clamp(.55rem,.7vw,.8rem)!important}
  .hero-primary img{
    width:100%!important;
    height:auto!important;
    max-height:840px!important;
    object-fit:contain!important;
  }
  .page-deltona-photo-studio .hero-grid{
    grid-template-columns:minmax(460px,.86fr) minmax(520px,1fr)!important;
    max-width:1620px!important;
  }
  .page-deltona-photo-studio .hero-media{max-width:650px!important}
  .page-deltona-photo-studio .hero-primary{width:min(100%,610px)!important;max-width:610px!important}
  .page-deltona-photo-studio .hero-primary img{max-height:none!important}
}
@media (min-width:721px) and (max-width:1080px){
  .hero-grid{width:min(96vw,980px)!important}
  .hero-media,.hero-primary{max-width:900px!important}
}

.price-card{
  transform:translateY(-5px);
  border:1px solid rgba(131,81,88,.30)!important;
  background:linear-gradient(145deg,#fff 0%,#fffaf8 100%)!important;
  box-shadow:
    0 2px 0 rgba(255,255,255,.95) inset,
    0 28px 58px rgba(69,43,47,.18),
    0 9px 20px rgba(69,43,47,.11)!important;
}
.price-card::before{
  height:6px!important;
  background:linear-gradient(90deg,rgba(184,120,128,.35),rgba(131,81,88,.88),rgba(184,120,128,.35))!important;
}
.price-card.featured{
  border-color:rgba(131,81,88,.62)!important;
  box-shadow:
    0 2px 0 rgba(255,255,255,.98) inset,
    0 34px 68px rgba(69,43,47,.23),
    0 11px 24px rgba(69,43,47,.13)!important;
}
@media (hover:hover) and (pointer:fine){
  .price-card:hover,.price-card:focus-within{
    z-index:3;
    transform:translateY(-13px) scale(1.025)!important;
    border-color:rgba(131,81,88,.7)!important;
    box-shadow:
      0 2px 0 rgba(255,255,255,.98) inset,
      0 40px 78px rgba(69,43,47,.25),
      0 14px 28px rgba(69,43,47,.15)!important;
  }
}
@media (prefers-reduced-motion:reduce){
  .price-card{transition:none!important}
  .price-card:hover,.price-card:focus-within{transform:translateY(-5px)!important}
}

/* Client testimonial carousels */
.review-feature.review-feature-slider,
.review-proof.review-feature-slider{
  display:grid!important;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)!important;
  gap:clamp(2rem,4.5vw,5rem)!important;
  align-items:center!important;
  max-width:1180px!important;
  margin-inline:auto!important;
}
.review-feature-intro p:last-child{color:var(--muted);font-size:.85rem}
.testimonial-slider{min-width:0;position:relative;outline:none}
.testimonial-slider:focus-visible{outline:2px solid var(--rose);outline-offset:8px}
.testimonial-viewport{overflow:hidden}
.testimonial-track{display:flex;align-items:stretch;transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}
.testimonial-slide{
  box-sizing:border-box;
  display:flex;
  flex:0 0 100%;
  flex-direction:column;
  justify-content:center;
  min-height:270px;
  margin:0!important;
  padding:clamp(1.5rem,3vw,2.6rem);
  border:1px solid rgba(255,255,255,.17);
  background:rgba(255,255,255,.055);
}
.testimonial-slide p{font-size:clamp(1.35rem,2vw,2.25rem)!important;line-height:1.35!important;max-width:33ch!important}
.testimonial-slide cite{display:block;margin-top:1.25rem;font-style:normal;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}
.testimonial-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}
.testimonial-arrow{
  display:grid;
  place-items:center;
  flex:0 0 42px;
  width:42px;
  height:42px;
  border:1px solid currentColor;
  border-radius:50%;
  background:transparent;
  color:inherit;
  font-size:1.15rem;
  cursor:pointer;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.testimonial-arrow:hover,.testimonial-arrow:focus-visible{background:var(--rose);border-color:var(--rose);color:#fff;transform:translateY(-2px)}
.testimonial-dots{display:flex;align-items:center;justify-content:center;gap:.55rem;flex:1}
.testimonial-dot{width:8px;height:8px;padding:0;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;cursor:pointer;opacity:.65}
.testimonial-dot[aria-current="true"]{background:currentColor;opacity:1;transform:scale(1.25)}
@media(max-width:900px){
  .review-feature.review-feature-slider,.review-proof.review-feature-slider{grid-template-columns:1fr!important;max-width:820px!important}
  .testimonial-slide{min-height:245px}
}
@media(max-width:560px){
  .testimonial-slide{min-height:310px;padding:1.35rem}
  .testimonial-slide p{font-size:clamp(1.2rem,5.7vw,1.55rem)!important}
  .testimonial-arrow{width:38px;height:38px;flex-basis:38px}
}
@media(prefers-reduced-motion:reduce){.testimonial-track{transition:none}}

/* V28: one consistent hero scale across every standard page */
@media (min-width:1081px){
  .hero .hero-grid{
    width:min(98vw,1880px)!important;
    max-width:1880px!important;
    grid-template-columns:minmax(420px,.68fr) minmax(780px,1.32fr)!important;
    gap:clamp(1.75rem,2.8vw,3.75rem)!important;
  }
  .hero .hero-media,
  .hero .hero-primary,
  .page-deltona-photo-studio .hero-media,
  .page-deltona-photo-studio .hero-primary{
    width:100%!important;
    max-width:1100px!important;
    margin-inline:0!important;
    justify-self:end!important;
  }
  .hero .hero-primary picture{display:block;width:100%!important}
  .hero .hero-primary img,
  .page-deltona-photo-studio .hero-primary img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:840px!important;
    object-fit:contain!important;
    object-position:center!important;
  }
}
@media (min-width:721px) and (max-width:1080px){
  .hero .hero-media,.hero .hero-primary,
  .page-deltona-photo-studio .hero-media,.page-deltona-photo-studio .hero-primary{
    width:100%!important;
    max-width:900px!important;
    margin-inline:0!important;
    justify-self:start!important;
  }
}
@media (max-width:720px){
  .hero .hero-media,.hero .hero-primary,
  .page-deltona-photo-studio .hero-media,.page-deltona-photo-studio .hero-primary{
    width:100%!important;
    max-width:none!important;
    margin-inline:0!important;
  }
}

/* V29: Central Florida landing page and complete-session gallery */
.page-central-florida-photographer #real-galleries{scroll-margin-top:7rem}
.page-central-florida-photographer .real-gallery-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(1rem,2.4vw,2rem);
  margin-top:clamp(2rem,4vw,3.5rem);
}
.page-central-florida-photographer .real-gallery-card{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(85,71,69,.18);
  background:#fff;
  color:var(--ink);
  text-decoration:none;
  box-shadow:0 16px 40px rgba(65,53,50,.08);
  transition:transform .22s ease,box-shadow .22s ease;
}
.page-central-florida-photographer .real-gallery-card:hover,
.page-central-florida-photographer .real-gallery-card:focus-visible{
  transform:translateY(-4px);
  box-shadow:0 22px 48px rgba(65,53,50,.14);
}
.page-central-florida-photographer .real-gallery-card:focus-visible{
  outline:2px solid var(--rose);
  outline-offset:4px;
}
.page-central-florida-photographer .real-gallery-card figure{
  aspect-ratio:3/2;
  min-width:0;
  margin:0;
  overflow:hidden;
  background:var(--ivory);
}
.page-central-florida-photographer .real-gallery-card picture{display:block;width:100%;height:100%}
.page-central-florida-photographer .real-gallery-card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.page-central-florida-photographer .real-gallery-card:hover img{transform:scale(1.025)}
.page-central-florida-photographer .real-gallery-card>div{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:clamp(1.15rem,2.5vw,2rem);
}
.page-central-florida-photographer .real-gallery-card h3{margin:.3rem 0 1rem}
.page-central-florida-photographer .real-gallery-card .text-link{margin-top:auto}
.page-central-florida-photographer .location-card>div{display:flex;flex:1;flex-direction:column}
.page-central-florida-photographer .location-card .text-link{margin-top:auto}
@media(max-width:1080px){
  .page-central-florida-photographer .real-gallery-card{grid-template-columns:1fr}
}
@media(max-width:720px){
  .page-central-florida-photographer .real-gallery-grid{grid-template-columns:1fr}
  .page-central-florida-photographer .real-gallery-card{grid-template-columns:minmax(0,1.15fr) minmax(180px,.85fr)}
}
@media(max-width:520px){
  .page-central-florida-photographer .real-gallery-card{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .page-central-florida-photographer .real-gallery-card,
  .page-central-florida-photographer .real-gallery-card img{transition:none}
}

/* Family pricing previews */
.family-pricing-preview{position:relative;overflow:hidden;padding:clamp(4rem,7vw,7rem) 1.25rem;background:linear-gradient(135deg,#f7efed 0%,#fffaf8 55%,#f0dfdc 100%);color:#342d2b}.family-pricing-preview:before{content:"";position:absolute;inset:-25% auto auto -8%;width:28rem;height:28rem;border:1px solid rgba(151,96,101,.17);border-radius:50%;pointer-events:none}.family-pricing-preview .shell{position:relative;max-width:1220px}.family-pricing-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(2rem,6vw,6rem);align-items:end;margin-bottom:2.5rem}.family-pricing-heading h2{max-width:760px;margin:.3rem 0 0;font-size:clamp(2.6rem,5vw,5rem);line-height:.92}.family-pricing-heading .lead{margin:0;max-width:520px}.family-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.family-price-card{position:relative;display:flex;flex-direction:column;min-height:285px;padding:clamp(1.5rem,3vw,2.25rem);background:rgba(255,255,255,.82);border:1px solid rgba(68,53,51,.13);box-shadow:0 18px 45px rgba(76,48,45,.08)}.family-price-card--featured{background:#3a3130;color:#fff;transform:translateY(-.55rem);box-shadow:0 24px 55px rgba(55,36,34,.22)}.family-price-card .kicker{margin:0 0 .4rem;font:600 .68rem Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#a36d70}.family-price-card--featured .kicker{color:#e7c8c5}.family-price-card h3{margin:0;font-size:clamp(1.8rem,3vw,2.5rem)}.family-price-card .family-price{margin:.6rem 0 1rem;font-family:"Cormorant Garamond",serif;font-size:clamp(3.2rem,6vw,5.1rem);font-weight:300;line-height:.85}.family-price-card .family-price span{font:500 .68rem Montserrat,sans-serif;letter-spacing:.11em;text-transform:uppercase}.family-price-card ul{display:grid;gap:.5rem;margin:auto 0 0;padding:0;list-style:none;font-size:.92rem}.family-price-card li:before{content:"—";margin-right:.5rem;color:#a36d70}.family-price-card--featured li:before{color:#e7c8c5}.family-pricing-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.8rem;margin-top:2.25rem}.family-pricing-note{margin:1rem auto 0;max-width:720px;text-align:center;font-size:.82rem;color:#6c5d5a}@media(max-width:800px){.family-pricing-heading{grid-template-columns:1fr;gap:1rem}.family-pricing-grid{grid-template-columns:1fr}.family-price-card--featured{transform:none}.family-price-card{min-height:auto}.family-price-card ul{margin-top:1rem}}@media(prefers-reduced-motion:reduce){.family-price-card--featured{transform:none}}


/* V30: editorial polish and a lower-friction conversion path */
.family-price-card--featured h3,
.family-price-card--featured .family-price,
.family-price-card--featured .family-price span,
.family-price-card--featured li{color:#fff}
.family-price-card--featured{border-color:rgba(255,255,255,.2)}

.button{
  min-height:52px;
  padding:.9rem 1.55rem;
  border-radius:2px;
  box-shadow:0 10px 24px rgba(48,38,37,.13);
  transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.button:hover{box-shadow:0 14px 30px rgba(48,38,37,.18)}
.button:focus-visible,.text-link:focus-visible{outline:2px solid var(--rose-deep);outline-offset:4px}
.button-ghost{box-shadow:none;background:rgba(255,255,255,.32)}
.site-header .button-small{min-height:42px;padding:.68rem 1.05rem;box-shadow:none}

.hero-primary{
  border:1px solid rgba(84,65,63,.1);
  box-shadow:0 28px 70px rgba(54,40,39,.14),0 7px 18px rgba(54,40,39,.07)!important;
}
.service-row figure,.image-duo figure,.image-cluster figure,.newborn-stack figure{
  border:1px solid rgba(84,65,63,.08);
  transition:transform .35s ease,box-shadow .35s ease;
}
@media (hover:hover) and (pointer:fine){
  .service-row:hover figure{transform:translateY(-4px);box-shadow:0 24px 56px rgba(54,40,39,.13)!important}
}

.price-card .text-link{
  display:flex;
  width:100%;
  min-height:48px;
  justify-content:center;
  padding:.8rem 1rem;
  border:1px solid var(--ink);
  background:var(--ink);
  color:#fff;
  text-align:center;
}
.price-card .text-link:hover{border-color:var(--rose-deep);background:var(--rose-deep)}
.price-card .text-link::after{margin-left:.2rem}
.price-card.featured .text-link{border-color:var(--rose-deep);background:var(--rose-deep)}

.booking-reassurance{
  display:flex;
  align-items:center;
  gap:.55rem;
  margin:1rem 0 0;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.5;
}
.booking-reassurance::before{
  content:"✓";
  display:grid;
  width:1.25rem;
  height:1.25rem;
  flex:0 0 1.25rem;
  place-items:center;
  border:1px solid rgba(126,83,87,.42);
  border-radius:50%;
  color:var(--rose-deep);
  font-size:.7rem;
  font-weight:700;
}
.cta-band{border-top:1px solid rgba(133,91,94,.13);border-bottom:1px solid rgba(133,91,94,.13)}
.cta-inner h2{max-width:12ch}
.cta-inner .button{min-width:190px}

.mobile-booking-bar{display:none}
@media(max-width:820px){
  body.has-mobile-booking-bar{padding-bottom:76px}
  .mobile-booking-bar{
    position:fixed;
    z-index:980;
    right:0;
    bottom:0;
    left:0;
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);
    gap:.55rem;
    padding:.65rem max(.75rem,env(safe-area-inset-right)) calc(.65rem + env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left));
    border-top:1px solid rgba(80,62,60,.16);
    background:rgba(253,251,249,.97);
    box-shadow:0 -12px 34px rgba(49,38,37,.13);
    backdrop-filter:blur(14px);
  }
  .mobile-booking-bar .button{min-height:48px;padding:.72rem .7rem;font-size:.65rem;letter-spacing:.09em}
  .mobile-booking-bar .button-ghost{background:#fff}
}
@media(prefers-reduced-motion:reduce){
  .button,.service-row figure{transition:none}
  .service-row:hover figure{transform:none}
}
