:root{
  --ivory:#f6f2ea;
  --paper:#fbf8f2;
  --charcoal:#2a2924;
  --olive:#444634;
  --sage:#737762;
  --cognac:#9a6b45;
  --line:#c8bdaa;
  --muted:#6e6a61;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--charcoal);font-family:Manrope,Arial,sans-serif;font-weight:300;line-height:1.55}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
h1,h2,h3,h4{font-family:"Cormorant Garamond",Georgia,serif;margin:0;font-weight:500;line-height:.98}
h1{font-size:clamp(3.2rem,5.4vw,6.5rem)}
h2{font-size:clamp(2.2rem,3.5vw,4.3rem)}
h3{font-size:2rem}
p{margin:0 0 1.25rem}.eyebrow{font-size:.72rem;letter-spacing:.22em;font-weight:500;margin-bottom:.45rem}.short-rule{display:block;width:28px;border-top:1px solid var(--cognac);margin:.5rem 0 1.3rem}.content-wrap{max-width:1500px;margin:0 auto;padding:58px 5vw}.section-frame{max-width:1500px;margin:0 auto}
.site-header{max-width:1500px;margin:0 auto;padding:24px 4vw;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(120,105,82,.12)}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-text{display:flex;flex-direction:column}.brand-text strong{font:500 1.55rem/1 "Cormorant Garamond",Georgia,serif;letter-spacing:.01em}.brand-text small,.footer-brand small{font-size:.52rem;letter-spacing:.15em;margin-top:3px}.brand-door{width:30px;height:43px;border:1px solid var(--cognac);border-bottom:0;position:relative;display:inline-block}.brand-door:before{content:"";position:absolute;left:8px;top:8px;width:18px;height:35px;border:1px solid var(--cognac);border-bottom:0;transform:skewY(-12deg);opacity:.8}.brand-door.small{width:22px;height:31px}.brand-door.small:before{left:6px;top:6px;width:13px;height:25px}
.site-nav{display:flex;align-items:center;gap:28px;font-size:.84rem}.site-nav>a:not(.nav-cta){padding-bottom:4px;border-bottom:1px solid transparent}.site-nav>a:hover{border-color:var(--charcoal)}.nav-cta,.button{background:var(--olive);color:white;padding:14px 22px;display:inline-block;font-size:.78rem;letter-spacing:.02em;border:1px solid var(--olive)}.menu-toggle{display:none;background:none;border:0;font-size:1.6rem}
.hero{display:grid;grid-template-columns:35% 65%;min-height:530px;background:var(--ivory);overflow:hidden}.hero-copy{padding:55px 5vw 48px;display:flex;flex-direction:column;justify-content:center}.hero-copy p{max-width:330px;font-size:.95rem}.hero img{min-height:530px}
.difference{display:grid;grid-template-columns:32% 36% 32%;background:var(--paper);border-top:6px solid white;border-bottom:6px solid white;min-height:280px}.difference-title,.difference-copy{padding:42px 4vw;display:flex;flex-direction:column;justify-content:center}.difference-title{border-left:1px solid rgba(100,90,73,.15);border-right:1px solid rgba(100,90,73,.15)}.difference-copy{font-size:.86rem}.difference-copy p:last-child{margin-bottom:0}
.services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:24px;border-top:1px solid rgba(100,90,73,.18);border-bottom:1px solid rgba(100,90,73,.18)}.service-card{display:grid;grid-template-columns:34% 66%;gap:18px;padding:28px 3vw;border-right:1px solid var(--line)}.service-card:last-child{border-right:0}.service-card img{height:210px}.service-number{font-size:.72rem}.service-name{margin:0;font-size:.85rem}.price{color:var(--cognac);font-weight:500}.service-copy>p:not(.service-name):not(.price){font-size:.77rem;line-height:1.6;margin-top:16px}.service-copy a,.project-copy a,.about-copy a{font-size:.75rem;text-decoration:underline;text-underline-offset:4px}
.project{display:grid;grid-template-columns:40% 38% 22%;min-height:290px;border-top:6px solid white;border-bottom:6px solid white}.project-copy{padding:36px 3vw;display:flex;flex-direction:column;justify-content:center}.project h4{font-size:1rem;letter-spacing:.18em;margin:4px 0 14px}.project-copy p{font-size:.84rem}.project img{min-height:290px}
.about{display:grid;grid-template-columns:27% 36% 37%;background:var(--paper);min-height:360px}.about-copy{padding:42px 3vw}.about blockquote{font:italic 1.02rem/1.45 "Cormorant Garamond",Georgia,serif;margin:24px 0}.about-copy>p:last-of-type{font-size:.82rem}.process{padding:42px 4vw;border-left:1px solid var(--line)}.process-step{display:grid;grid-template-columns:44px 1fr;gap:14px;margin:15px 0}.process-step>span{font:500 .9rem "Cormorant Garamond",serif;border:1px solid var(--line);border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.process-step strong{font-family:"Cormorant Garamond",serif;font-size:1.2rem}.process-step p{font-size:.72rem;margin:.1rem 0 0}
.footer-cta{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:27% 33% 18% 22%;align-items:stretch;background:var(--olive);color:white;min-height:180px}.footer-cta>img{display:block;width:100%;height:100%;min-height:180px;object-fit:cover;object-position:center top}.footer-copy{padding:25px 2.4vw}.footer-copy h2{font-size:2.25rem;margin:3px 0 10px}.footer-copy p:last-child{font-size:.75rem;margin:0}.button-light{background:var(--paper);color:var(--charcoal);border-color:var(--paper);justify-self:center}.footer-brand{padding:0 2.5vw;border-left:1px solid rgba(255,255,255,.4);display:flex;flex-direction:column;align-items:flex-start;gap:3px}.footer-brand strong{font:500 1.2rem "Cormorant Garamond",serif}.footer-brand a{font-size:.65rem;margin-top:8px}

.section-break{max-width:1500px;height:44px;margin:0 auto;background:var(--ivory)}
.consultation-hero{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:42% 58%;background:var(--ivory);min-height:520px}
.consultation-hero .consultation-copy{padding:70px 5vw;display:flex;flex-direction:column;justify-content:center}
.consultation-hero .consultation-copy p{max-width:560px}
.consultation-meta{display:flex;gap:28px;flex-wrap:wrap;margin:8px 0 24px}
.consultation-meta strong{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.45rem;font-weight:500}
.consultation-details{max-width:1180px;margin:0 auto;padding:58px 5vw;display:grid;grid-template-columns:1fr 1fr;gap:70px}
.consultation-details h2{font-size:3rem;margin-bottom:20px}
.consultation-details ul{padding-left:1.2rem;margin:0}
.consultation-details li{margin:.55rem 0}
.booking-form{background:var(--ivory);padding:34px;border:1px solid rgba(100,90,73,.14)}
.booking-form label{display:block;font-size:.73rem;letter-spacing:.08em;font-weight:500;margin:15px 0 6px}
.booking-form input,.booking-form select,.booking-form textarea{width:100%;padding:12px 13px;border:1px solid var(--line);background:var(--paper);font:400 .9rem Manrope,Arial,sans-serif;color:var(--charcoal)}
.booking-form textarea{min-height:130px;resize:vertical}
.booking-form .button{margin-top:18px;cursor:pointer}
.form-note{font-size:.72rem;color:var(--muted);margin-top:12px}
.success-wrap{max-width:760px;margin:0 auto;padding:100px 24px;text-align:center}.success-wrap h1{font-size:4rem}.success-wrap p{max-width:560px;margin:22px auto 30px}

/* Keep the services row contained and give the project photography more presence. */
.services{overflow:hidden}
.service-grid{overflow:hidden;align-items:stretch}
.service-card{min-width:0;display:flex;gap:16px;padding:24px 22px;align-items:flex-start;overflow:hidden}
.service-copy{min-width:0;overflow-wrap:anywhere}
.service-card img{flex:0 0 32%;width:32%;height:220px;min-width:0}
.section-break{height:28px}
.project{grid-template-columns:36% 36% 28%;height:420px;min-height:420px;align-items:stretch;overflow:hidden;border:0}
.project>img{display:block;width:100%;height:420px;min-height:0;object-fit:cover;object-position:center}
.project-copy{padding:32px 2.5vw;justify-content:center}
.project-copy a{align-self:flex-start;margin-top:6px;padding:10px 0}
.about{min-height:460px;align-items:stretch}
.jenny-image{width:100%;height:100%;min-height:460px;object-fit:cover;object-position:center 8%}
.project-detail{max-width:1500px;margin:0 auto}
.project-detail-hero{display:grid;grid-template-columns:42% 58%;background:var(--ivory);min-height:460px}
.project-detail-copy{padding:54px 5vw;display:flex;flex-direction:column;justify-content:center}
.project-detail-copy h1{font-size:clamp(2.8rem,4.6vw,5rem);margin:.4rem 0}
.project-detail-copy h2{font-size:1rem;letter-spacing:.16em;margin:8px 0 20px}
.project-detail-copy p{max-width:500px}
.project-detail-hero img{min-height:460px}
.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:32px 5vw}
.project-gallery img{height:420px}
.project-detail-cta{padding:12px 0 46px;text-align:center}
.project-detail-cta a{display:inline-block;padding:12px 18px;background:var(--olive);color:#fff;font-size:.8rem}

@media(max-width:980px){
 .site-header{padding:18px 22px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.site-nav.open{display:flex}
 .consultation-hero{grid-template-columns:1fr}.consultation-hero img{height:360px}.consultation-details{grid-template-columns:1fr;gap:34px}
 .hero{grid-template-columns:1fr}.hero-copy{order:2}.hero img{order:1;min-height:360px}.difference{grid-template-columns:1fr}.difference img{height:280px}.difference-title{border:0}.service-grid{grid-template-columns:1fr}.service-card{display:flex;border-right:0;border-bottom:1px solid var(--line);padding:22px 0}.service-card img{flex:0 0 34%;width:34%;height:220px}.project{grid-template-columns:1fr;height:auto;min-height:0}.project>img{height:320px;min-height:320px}.project-detail-hero{grid-template-columns:1fr}.project-detail-hero img{min-height:320px;height:320px;order:1}.project-detail-copy{padding:38px 24px;order:2}.project-gallery{grid-template-columns:1fr;padding:24px}.project-gallery img{height:320px}.about{grid-template-columns:1fr 1fr;min-height:0}.jenny-image{height:460px;min-height:460px}.process{grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}.footer-cta{grid-template-columns:1fr 1.5fr}.footer-cta>img{height:220px}.button-light{justify-self:start;margin-left:24px}.footer-brand{border-left:0;padding:28px 24px}
}
@media(max-width:640px){
 .brand-text strong{font-size:1.2rem}.brand-text small{font-size:.42rem}.brand-door{width:24px;height:35px}.site-header{gap:12px}
 .consultation-hero .consultation-copy{padding:42px 24px}.consultation-details{padding:40px 24px}.booking-form{padding:24px}.section-break{height:28px}
 .hero-copy{padding:38px 24px 42px}.hero img{min-height:300px}.difference-title,.difference-copy,.project-copy,.about-copy,.process{padding:34px 24px}.content-wrap{padding:40px 24px}.service-card{padding:20px 0;gap:12px}.service-card img{flex-basis:34%;width:34%;height:190px}.project>img{height:280px;min-height:280px}.project-detail-hero img{height:280px;min-height:280px}.project-detail-copy{padding:32px 24px}.project-gallery img{height:280px}.about{grid-template-columns:1fr}.jenny-image{height:420px;min-height:420px}.footer-cta{grid-template-columns:1fr}.footer-cta>img{height:200px}.footer-copy,.footer-brand{padding:28px 24px}.button-light{margin:0 24px 28px}
}

/* Peterborough House V4: intentional crops for the new full-resolution photography. */
.project>img[src*="peterborough-living-wide-v4"]{object-position:center 58%}
.project>img[src*="peterborough-bedroom-v4"]{object-position:center 58%}
.project-detail-hero img[src*="peterborough-living-wide-v4"]{object-position:center 58%}
.project-gallery img[src*="peterborough-living-detail-v4"]{object-position:center 58%}
.project-gallery img[src*="peterborough-bedroom-v4"]{object-position:center 56%}

/* Gallery additions: original site styling retained. */
.gallery-invite{max-width:1500px;margin:0 auto;padding:46px 5vw;background:var(--ivory);display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:6px solid white}.gallery-invite h2{font-size:clamp(2rem,3vw,3.5rem);margin:8px 0 12px}.gallery-invite p:last-child{margin:0;font-size:.88rem}.gallery-invite .button{flex-shrink:0}.gallery-main{max-width:1500px;margin:0 auto}.gallery-heading{padding:75px 5vw 55px;text-align:center;background:var(--ivory)}.gallery-heading .short-rule{margin:15px auto}.gallery-heading h1{font-size:clamp(3.1rem,6vw,6rem)}.gallery-heading>p:last-child{max-width:650px;margin:22px auto 0}.gallery-main em,.gallery-invite em{font-weight:400}.gallery-feature{display:grid;grid-template-columns:40% 60%;background:var(--paper);border-top:6px solid white;min-height:500px}.gallery-feature>img{height:580px;object-fit:cover;object-position:center 42%}.gallery-feature-copy{padding:68px 6vw;align-self:center}.gallery-feature-copy h2{margin:14px 0 22px}.gallery-feature-copy p{max-width:440px;font-size:.92rem}.gallery-disclaimer{font-size:.73rem!important;color:var(--muted);margin-top:24px}.gallery-board-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:34px 4vw 56px;background:var(--ivory)}.gallery-board-grid figure{margin:0}.gallery-board-grid img{height:385px;object-fit:cover;object-position:top;border:1px solid rgba(100,90,73,.12)}.gallery-board-grid figcaption{text-align:center;margin:16px 0 0;font-size:.73rem;letter-spacing:.12em;text-transform:uppercase}.gallery-feature-two{grid-template-columns:40% 60%}.gallery-feature-two>img{object-position:center 58%}.gallery-peter-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px 4vw 50px}.gallery-peter-grid img{height:380px}.gallery-last{text-align:center;padding:65px 24px 85px;background:var(--ivory)}.gallery-last h2{margin:18px 0}.gallery-last p{margin:18px 0 24px}.gallery-feature-copy .button{margin-top:10px}
@media(max-width:980px){.gallery-feature,.gallery-feature-two{grid-template-columns:1fr}.gallery-feature>img{height:420px}.gallery-board-grid{grid-template-columns:repeat(2,1fr)}.gallery-board-grid img{height:470px}.gallery-invite{flex-direction:column;align-items:flex-start}}
@media(max-width:640px){.gallery-heading{padding:48px 24px}.gallery-feature-copy{padding:38px 24px}.gallery-feature>img{height:320px}.gallery-board-grid{gap:12px;padding:20px 18px 35px}.gallery-board-grid img{height:270px}.gallery-board-grid figcaption{font-size:.61rem}.gallery-peter-grid{grid-template-columns:1fr}.gallery-peter-grid img{height:270px}}

/* V6: make the three services the clear homepage priority. */
.services{padding-top:74px;padding-bottom:78px;background:#f2ece1}
.services-heading{font-size:clamp(2.7rem,4vw,4.8rem);max-width:850px;margin:12px 0 22px}
.services .service-grid{gap:18px;border:0;margin-top:30px}
.services .service-card{display:block;min-width:0;padding:0;background:var(--paper);border:1px solid var(--line);overflow:visible}
.services .service-card img{width:100%;height:250px;object-fit:cover;display:block}
.services .service-copy{padding:28px 28px 32px;overflow-wrap:normal}
.services .service-copy h3{font-size:clamp(2.8rem,3.4vw,4.15rem);line-height:1.02;margin:6px 0 10px}
.services .service-name{font-size:1.07rem;font-weight:500;margin:0 0 10px}
.services .price{font-size:1.1rem;margin:0 0 12px}
.services .service-copy>p:not(.service-name):not(.price){font-size:.91rem;line-height:1.65;margin:8px 0 0}
/* Give the featured-project heading room to wrap without clipping characters. */
.project-copy{min-width:0;overflow:visible}
.project-copy h2{font-size:clamp(2rem,2.75vw,3.35rem);line-height:1.02;letter-spacing:-.015em;overflow-wrap:normal;word-break:normal}
@media(max-width:980px){.services{padding-top:48px;padding-bottom:52px}.services .service-grid{gap:16px}.services .service-card{display:grid;grid-template-columns:40% 60%}.services .service-card img{height:100%;min-height:250px}.services .service-copy{padding:24px}.services .service-copy h3{font-size:3rem}}
@media(max-width:640px){.services .service-card{display:block}.services .service-card img{height:210px;min-height:0}.services .service-copy{padding:22px}.services .service-copy h3{font-size:3.15rem}.services-heading{font-size:2.9rem}.project-copy h2{font-size:2.6rem}}

/* V7: three prominent equal cards side-by-side until narrow mobile screens. */
.services{padding-top:82px;padding-bottom:90px}
.services-heading{font-size:clamp(3.25rem,4.3vw,5.2rem);max-width:none;line-height:1.03}
.services .service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;overflow:visible}
.services .service-card{display:flex;flex-direction:column;min-width:0;padding:0;gap:0;background:var(--paper);border:1px solid var(--line);overflow:hidden}
.services .service-card img{display:block;flex:none;width:100%;height:clamp(190px,18vw,290px);min-height:0;object-fit:cover}
.services .service-copy{padding:25px clamp(16px,2.2vw,34px) 34px;display:flex;flex-direction:column;align-items:flex-start}
.services .service-copy h3{font-size:clamp(2.65rem,3.7vw,4.55rem);line-height:1.06;margin:11px 0 12px;overflow-wrap:normal}
.services .service-copy .service-number{font-size:.79rem;letter-spacing:.1em}
.services .service-name{font-size:clamp(1.02rem,1.15vw,1.23rem);font-weight:600;line-height:1.5}
.services .price{font-size:1.17rem}
.services .service-copy>p:not(.service-name):not(.price){font-size:.91rem;line-height:1.65}
@media(max-width:850px){
 .services .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
 .services .service-card{display:flex;flex-direction:column;grid-template-columns:none}
 .services .service-card img{height:175px;min-height:0;width:100%}
 .services .service-copy{padding:18px 14px 24px}
 .services .service-copy h3{font-size:clamp(2rem,4vw,3rem)}
 .services .service-name{font-size:.9rem}
 .services .service-copy>p:not(.service-name):not(.price){font-size:.78rem}
}
@media(max-width:620px){
 .services{padding-top:49px;padding-bottom:58px}
 .services-heading{font-size:clamp(2.5rem,9vw,3.2rem)}
 .services .service-grid{grid-template-columns:1fr;gap:17px}
 .services .service-card img{height:230px}
 .services .service-copy{padding:22px 24px 27px}
 .services .service-copy h3{font-size:3.35rem}
 .services .service-name{font-size:1.1rem}
 .services .service-copy>p:not(.service-name):not(.price){font-size:.9rem}
}

/* v11: spacious editorial statement and single three-project gallery */
.difference-v11{display:grid;grid-template-columns:minmax(240px,32%) minmax(0,68%);min-height:460px;align-items:stretch;border-top:12px solid white;border-bottom:12px solid white;overflow:visible}
.difference-v11>img{grid-row:1/3;grid-column:1;width:100%;height:100%;min-height:460px;object-fit:cover;object-position:center center}
.difference-v11 .difference-title{grid-row:1;grid-column:2;padding:60px clamp(36px,6vw,110px) 6px;border:0;display:block}
.difference-v11 .difference-title h2{font-size:clamp(3rem,4.5vw,5.6rem);line-height:1.03;max-width:950px;margin:12px 0}
.difference-v11 .difference-copy{grid-column:2;grid-row:2;padding:0 clamp(36px,6vw,110px) 58px;max-width:1050px;display:block;font-size:clamp(.95rem,1.15vw,1.15rem);line-height:1.75}
.difference-v11 .difference-copy p{margin:0 0 15px}
.v11-gallery{background:#f6f2eb;color:#29251f}.v11-gallery-intro{text-align:center;padding:85px 20px 70px;background:#f9f6f0}.v11-gallery-intro h1{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(4rem,7vw,7rem);margin:8px 0}.v11-gallery-intro>p:last-child{font-size:1rem}.v11-project-block{max-width:1400px;margin:auto;padding:55px 30px 75px;border-top:1px solid #ded3c3}.v11-project-intro{max-width:880px;margin:0 auto 34px;text-align:center}.v11-project-intro h2{font-family:'Cormorant Garamond',serif;font-size:clamp(3rem,5vw,5rem);line-height:1.1;font-weight:500;margin:10px 0}.v11-project-intro p{line-height:1.7}.v11-project-intro a{display:inline-block;margin:12px 0;color:#8b623d}.v11-gallery-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:980px;margin:0 auto}.v11-gallery-photos img{display:block;width:100%;height:310px;object-fit:cover}.v11-peter img:first-child{object-position:center 56%}.v11-gretel-photos img{height:310px;object-fit:cover}.v11-belrose-grid{grid-template-columns:repeat(6,minmax(0,1fr));max-width:1040px}.board-thumb{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;grid-column:span 2}.board-thumb img{width:100%;height:310px;object-fit:contain;background:#faf8f2;box-shadow:0 10px 30px #4a38201c}.board-thumb span{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;text-align:center}.v11-gallery-cta{text-align:center;padding:30px 20px 80px}
@media(max-width:850px){.difference-v11{grid-template-columns:1fr}.difference-v11>img{grid-row:1;grid-column:1;height:320px;min-height:0}.difference-v11 .difference-title{grid-row:2;grid-column:1;padding:45px 28px 8px}.difference-v11 .difference-copy{grid-row:3;grid-column:1;padding:8px 28px 44px}.v11-gallery-photos,.v11-gretel-photos,.v11-peter{grid-template-columns:repeat(2,1fr)}.v11-belrose-grid{grid-template-columns:repeat(2,1fr)}.v11-belrose-grid>a:nth-child(4),.v11-belrose-grid>a:nth-child(5){grid-column:auto}.v11-gallery-photos img,.v11-gretel-photos img,.board-thumb img{height:260px}}
@media(max-width:520px){.v11-gallery-photos,.v11-gretel-photos,.v11-peter,.v11-belrose-grid{grid-template-columns:1fr}.v11-belrose-grid>a:nth-child(4),.v11-belrose-grid>a:nth-child(5){grid-column:auto}.v11-gallery-photos img,.v11-gretel-photos img,.board-thumb img{height:240px}.v11-project-block{padding:45px 18px}.v11-gallery-intro{padding:60px 20px 50px}.difference-v11 .difference-title h2{font-size:3.05rem}}

.v11-peter,.v11-gretel-photos{max-width:1180px;margin:0 auto;grid-template-columns:repeat(3,minmax(0,1fr));}
.v11-peter img,.v11-gretel-photos img{height:310px;object-fit:cover;}
.v11-belrose-grid>a:nth-child(4){grid-column:2 / span 1;}
.v11-belrose-grid>a:nth-child(5){grid-column:4 / span 1;}

/* v15 focused layout repair: preserve artwork and existing copy. */
.footer-cta { grid-template-columns:minmax(0,1.7fr) auto minmax(190px,.7fr)!important; gap:28px; padding:32px clamp(22px,4vw,60px); align-items:center; }
.footer-cta>.footer-copy { padding:0!important; }
.footer-cta>.button-light { background:var(--paper); color:var(--charcoal); justify-self:center; border:1px solid var(--paper); margin:0!important; white-space:nowrap; padding:16px 22px; }
.footer-cta>.footer-brand { padding:0 0 0 22px!important; }
.v11-gallery-photos.v11-peter,
.v11-gallery-photos.v11-gretel-photos { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:22px; max-width:1020px; }
.v11-gallery-photos.v11-peter img,
.v11-gallery-photos.v11-gretel-photos img { width:100%; height:260px!important; object-fit:cover; display:block; }
/* Each Ashworth board gets an identical framed tile; no alterations to the original artwork. */
.v11-gallery-photos.v11-belrose-grid { display:grid!important; grid-template-columns:repeat(6,minmax(0,1fr))!important; gap:24px; max-width:1020px; align-items:start; }
.v11-belrose-grid>.board-thumb { grid-column:span 2!important; min-width:0; display:flex; flex-direction:column; padding:10px; background:#fffdfa; border:1px solid #e4dcd0; text-decoration:none; color:inherit; }
.v11-belrose-grid>.board-thumb:nth-child(4) { grid-column:2 / span 2!important; }
.v11-belrose-grid>.board-thumb:nth-child(5) { grid-column:4 / span 2!important; }
.v11-belrose-grid>.board-thumb img { width:100%;height:285px!important;object-fit:contain!important;background:#f8f5ef;box-shadow:none; }
.v11-belrose-grid>.board-thumb span { padding:4px 0 7px; }
@media(max-width:900px) {
 .footer-cta { grid-template-columns:minmax(0,1fr) auto!important; }
 .footer-brand { grid-column:1 / -1; }
 .v11-gallery-photos.v11-peter,.v11-gallery-photos.v11-gretel-photos { gap:12px; }
 .v11-gallery-photos.v11-peter img,.v11-gallery-photos.v11-gretel-photos img {height:190px!important;}
}
@media(max-width:650px) {
 .footer-cta {grid-template-columns:1fr!important;gap:16px;}
 .footer-cta>.button-light {justify-self:start;}
 .v11-gallery-photos.v11-peter,.v11-gallery-photos.v11-gretel-photos { grid-template-columns:1fr!important; }
 .v11-gallery-photos.v11-peter img,.v11-gallery-photos.v11-gretel-photos img {height:250px!important;}
 .v11-gallery-photos.v11-belrose-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:12px;}
 .v11-belrose-grid>.board-thumb,.v11-belrose-grid>.board-thumb:nth-child(4),.v11-belrose-grid>.board-thumb:nth-child(5) {grid-column:span 1!important;}
 .v11-belrose-grid>.board-thumb img {height:220px!important;}
}

/* v16: deliberately simple, stable gallery tiles */
.gallery-final-grid {max-width:1120px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start;}
.gallery-final-card{margin:0;min-width:0;background:#fffdf9;padding:10px;border:1px solid #e0d7cc;}
.gallery-final-card a{display:block;width:100%;aspect-ratio:1/1;overflow:hidden;background:#f5f1e9;}
.gallery-final-card img{display:block;width:100%;height:100%;object-fit:contain;}
.gallery-final-card figcaption{text-align:center;font-size:.77rem;letter-spacing:.09em;text-transform:uppercase;margin:14px 4px 5px;}
.gallery-final-five .gallery-final-card:nth-child(4){grid-column:1/3;justify-self:end;width:calc(50% - 11px)}
.gallery-final-five .gallery-final-card:nth-child(5){grid-column:2/4;justify-self:start;width:calc(50% - 11px)}
/* Avoid residual original image beneath the founder portrait */
.footer-cta>img{display:none!important;}
.footer-cta{grid-template-columns:minmax(0,1fr) auto minmax(175px,0.6fr)!important;gap:26px!important;max-width:1500px;align-items:center;padding:36px 4vw!important;background:var(--olive)}
.footer-cta>.button-light{background:var(--paper)!important;color:var(--charcoal)!important;padding:16px 22px!important;border:1px solid var(--paper)!important;white-space:nowrap;}
@media(max-width:900px){.gallery-final-grid{gap:12px}.footer-cta{grid-template-columns:1fr auto!important}.footer-cta>.footer-brand{grid-column:1/-1}}
@media(max-width:640px){.gallery-final-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-final-five .gallery-final-card:nth-child(4),.gallery-final-five .gallery-final-card:nth-child(5){grid-column:auto;width:auto;justify-self:stretch}.footer-cta{grid-template-columns:1fr!important;gap:20px!important}.footer-cta>.button-light{justify-self:start}}

/* v17 separate photo gallery and concept design portfolio */
.gallery-invite{column-gap:18px;row-gap:14px;flex-wrap:wrap}.gallery-final-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v11-gretel .gallery-final-card img{object-fit:cover}.v11-gallery-cta{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}@media(max-width:700px){.gallery-final-grid{grid-template-columns:1fr}.gallery-invite{flex-direction:column}}
