
:root{--ink:#171c1b;--paper:#f7f6f2;--gold:#d7b68d;--muted:#63706a;--line:#d2d7d1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.7 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b5824c;outline-offset:5px}.wrap{max-width:1450px;margin:auto;padding:0 6%}.eyebrow{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600}.brand{font:32px/1 Georgia,serif;letter-spacing:3px}.brand small{display:block;font:10px Arial,sans-serif;letter-spacing:3.6px;margin-top:8px}.topline{background:var(--ink);color:#e6e7e2;font-size:12px;letter-spacing:1px;padding:9px 6%;display:flex;justify-content:space-between}.header{background:var(--paper)}nav{height:94px;display:flex;align-items:center;justify-content:space-between;gap:20px}.navlinks{display:flex;align-items:center;gap:28px;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);padding:15px 24px;background:var(--ink);color:#fff;font-size:14px;font-weight:600;line-height:1.35;min-height:48px}.btn.gold{background:var(--gold);color:var(--ink);border-color:var(--gold)}.btn.outline{background:transparent;border-color:#969e99;color:white}.hero{position:relative;min-height:720px;display:flex;align-items:center;background:#29322f;color:#fff}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 45%;inset:0}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,19,17,.85),rgba(7,19,17,.58) 39%,rgba(7,19,17,0) 78%)}.hero .wrap{z-index:1;position:relative;width:100%;padding-top:65px;padding-bottom:90px}.hero h1{font:clamp(55px,6vw,88px)/1.05 Georgia,serif;letter-spacing:-2px;max-width:660px;margin:25px 0}.hero h1 em{font-weight:400;color:#e1c19b}.hero p{max-width:425px;color:#edf0ea;font-size:18px;line-height:1.7;margin-bottom:30px}.actions{display:flex;gap:14px;flex-wrap:wrap}.image-note{font-size:12px;line-height:1.5;letter-spacing:.2px;color:#606c65}.hero .image-note{position:absolute;bottom:15px;right:20px;z-index:2;color:#fff;background:#171c1bb3;padding:4px 9px}.introbar{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:35px;padding-top:30px;padding-bottom:30px;border-bottom:1px solid var(--line)}.introbar strong{font:21px Georgia;display:block;margin-bottom:5px}.introbar span{font-size:13px;color:var(--muted)}.section{padding-top:95px;padding-bottom:95px}h2{font:clamp(36px,4.5vw,62px)/1.12 Georgia,serif;letter-spacing:-1.5px;margin:16px 0 26px}h3{font:29px/1.25 Georgia,serif;margin:0 0 12px}p{margin-top:0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:38px}.section-head p{max-width:440px;color:var(--muted);margin-bottom:26px}.gallery{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}.gallery button{display:block;position:relative;border:0;padding:0;text-align:left;background:#29322f;color:white;overflow:hidden;width:100%}.gallery img{width:100%;height:460px;object-fit:cover;display:block;transition:transform .5s}.gallery button:hover img{transform:scale(1.025)}.gallery button:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,#111c19db)}.gallery .caption{position:absolute;bottom:26px;left:28px;right:28px;z-index:1}.caption small{display:block;font-size:12px;letter-spacing:2px;text-transform:uppercase;margin-bottom:8px}.caption strong{font:31px/1.2 Georgia}.gallery-note{display:flex;justify-content:space-between;gap:20px;margin-top:14px}.gallery-note a{font-size:14px;text-decoration:underline}.owner{background:var(--ink);color:white}.owner-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:center}.portrait{margin:0;position:relative}.portrait img{width:100%;height:610px;object-fit:cover;object-position:center 20%;display:block}.portrait figcaption{position:absolute;bottom:20px;left:25px;background:var(--ink);padding:10px 18px;font-size:13px}.owner p{color:#cbd3cc;max-width:640px}.owner .lead{font:26px/1.5 Georgia;color:#f6f4ee}.owner .eyebrow{color:var(--gold)}.owner .sign{font:italic 35px Georgia;margin:30px 0}.roles{display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid #55615a;padding-top:22px;font-size:12px;letter-spacing:1.5px;text-transform:uppercase}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-left:1px solid var(--line);border-top:1px solid var(--line)}.service{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:35px;transition:background .2s}.service:hover{background:#e9ece6}.service .num{font:14px Arial;color:#a16e3b;display:block;margin-bottom:35px}.service p{font-size:15px;line-height:1.8;color:var(--muted)}.service a{font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:5px}.workscene{display:grid;grid-template-columns:1.2fr 1fr;background:#e7ebe5}.workscene figure{margin:0;position:relative;min-height:620px}.workscene img{width:100%;height:100%;position:absolute;object-fit:cover}.workscene figcaption{position:absolute;bottom:12px;left:18px;background:#ffffffdf;padding:3px 8px}.workcopy{padding:75px 13%}.workcopy p{color:#58655c}.step{display:grid;grid-template-columns:25px 1fr;gap:15px;border-top:1px solid #bdc6bd;padding-top:18px;margin-top:24px}.step span{font-size:12px;color:#926438}.step strong{font-size:17px}.step p{font-size:14px;margin:5px 0 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.contact h2{max-width:540px}.phone{font:34px/1.4 Georgia;display:block;margin:24px 0 8px}.otherphones{font-size:14px;margin-bottom:17px}.otherphones a{display:inline-block;margin-right:18px}.email{font-size:17px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:5px}.contact form{background:#e8ece6;padding:35px}.contact label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}.contact input,.contact select,.contact textarea{width:100%;padding:12px;border:1px solid #a7b2a6;border-radius:0;background:#fff;color:var(--ink);margin-bottom:18px;min-width:0}.contact textarea{min-height:110px;resize:vertical}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fine{font-size:13px;color:var(--muted);line-height:1.6;margin:16px 0 0}.faq{max-width:900px;margin:auto;border-top:1px solid var(--line);padding-top:50px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{font-size:17px;font-weight:600;cursor:pointer}details p{font-size:15px;color:var(--muted);margin:16px 0 0}footer{background:var(--ink);color:#e4e8df;padding:45px 0}footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}footer p{font-size:13px;margin:0}.mobile-call{display:none}dialog{width:min(1100px,94vw);max-height:94vh;padding:18px;border:0;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#08110fec}dialog img{width:100%;max-height:73vh;object-fit:contain;display:block}dialog .dialog-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}dialog button{padding:9px 15px;border:1px solid var(--ink);background:none}dialog p{margin:10px 0 0;font-size:13px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;padding:10px;background:white;z-index:10}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:1000px){.navlinks{gap:16px}.navlinks a:not(.btn){display:none}.hero{min-height:680px}.hero:after{background:linear-gradient(90deg,#071311d9,#07131170 65%,#07131110)}.owner-grid{gap:6%}.portrait img{height:530px}.gallery img{height:370px}.workcopy{padding:50px 9%}.workscene figure{min-height:590px}.contact-grid{gap:5%}}@media(max-width:700px){.topline{font-size:10px;gap:10px}.topline a{white-space:nowrap}nav{height:80px}.brand{font-size:26px}.navlinks .btn{padding:12px 14px;font-size:12px}.hero{min-height:760px;align-items:end}.hero>img{object-position:63% center}.hero:after{background:linear-gradient(0deg,#071311f2,#0713119e 43%,#07131100 80%)}.hero .wrap{padding-top:280px;padding-bottom:55px}.hero h1{font-size:52px;max-width:400px;letter-spacing:-1px}.hero p{font-size:16px;max-width:360px}.hero .image-note{font-size:10px}.introbar{grid-template-columns:1fr;gap:15px}.introbar>div{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.introbar strong{font-size:18px}.introbar span{font-size:12px;text-align:right}.section{padding-top:60px;padding-bottom:60px}.section-head{display:block;margin-bottom:25px}.section-head p{margin-bottom:20px}.gallery,.owner-grid,.workscene,.contact-grid{grid-template-columns:1fr}.gallery img{height:350px}.gallery-note{display:block}.gallery-note p{margin-bottom:7px}.owner-grid{gap:38px}.portrait img{height:470px;object-fit:cover}.services{grid-template-columns:1fr 1fr}.service{padding:25px 20px}.service h3{font-size:25px}.service .num{margin-bottom:22px}.workscene figure{min-height:430px}.workcopy{padding:45px 6%}.contact-grid{gap:35px}.contact form{padding:25px}.formrow{grid-template-columns:1fr;gap:0}footer .wrap{flex-direction:column;align-items:flex-start}footer{padding-bottom:90px}.mobile-call{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:4;background:var(--ink);color:white;justify-content:space-between;align-items:center;padding:10px 6%;border-top:1px solid #47554b;font-size:13px}.mobile-call a{background:var(--gold);color:var(--ink);padding:8px 18px;font-weight:bold}}@media(max-width:380px){.services{grid-template-columns:1fr}.hero h1{font-size:46px}.introbar>div{display:block}.phone{font-size:29px}}

/* Photo-led navigation and service links */
.btn{padding:0;overflow:hidden;gap:0;text-align:left}.btn .action-photo{width:76px;height:64px;object-fit:cover;align-self:stretch;flex:none}.btn>span{padding:14px 20px}.btn.outline{background:#17241ee6}.navlinks{gap:18px}.nav-photo{display:flex;align-items:center;gap:9px}.nav-photo img{width:38px;height:44px;object-fit:cover}.navlinks .btn{max-width:220px}.navlinks .btn .action-photo{width:54px;height:56px}.navlinks .btn>span{padding:10px 12px}.services{gap:24px;border:0}.service{padding:0;display:flex;flex-direction:column;border:1px solid var(--line);overflow:hidden;text-decoration:none}.service-photo{height:225px;width:100%;object-fit:cover;display:block;transition:transform .3s}.service:hover .service-photo{transform:scale(1.025)}.service-copy{padding:28px;display:flex;flex-direction:column;flex:1}.service .num{margin-bottom:22px}.service p{flex:1}.service-link{font-size:14px;font-weight:bold;text-decoration:underline;text-underline-offset:5px}.service-note{margin-top:18px}.small-photo-link{display:inline-flex!important;align-items:center;gap:12px}.small-photo-link img{width:62px;height:45px;object-fit:cover}.mobile-call .small-photo-link{padding:0 12px 0 0;gap:9px}.mobile-call .small-photo-link img{width:46px;height:38px}.portrait img{object-position:center 25%}.owner .btn{max-width:360px}.contact .btn{width:100%;justify-content:flex-start}.contact .btn>span{padding:14px 16px}.navlinks a:focus-visible,.service:focus-visible{outline-offset:4px}@media(max-width:1000px){.navlinks .nav-photo{display:none}.service-copy{padding:22px}.service-photo{height:190px}}@media(max-width:700px){.navlinks .btn{padding:0;max-width:185px}.navlinks .btn .action-photo{height:50px;width:47px}.navlinks .btn>span{padding:8px 10px}.actions .btn .action-photo{width:60px;height:62px}.actions .btn>span{padding:12px 15px}.services{gap:20px;grid-template-columns:1fr}.service-photo{height:250px}.service-copy{padding:25px}.hero{min-height:830px}.portrait img{height:510px}.small-photo-link img{flex:none}.contact .btn{font-size:13px}} 

/* Bright white, airy editorial direction. */
:root{--ink:#304957;--paper:#ffffff;--gold:#e9d8c5;--muted:#607783;--line:#e0e8ec}
body{background:#fff;color:var(--ink)}
.topline{background:#eef5f8;color:#435d6b;border-bottom:1px solid #e3edf1}
.header{background:#fff}.brand{color:#34576a}.header nav{height:102px}
.eyebrow{color:#6b8595}.hero{color:#304957;background:#f7fafb;min-height:740px}
.hero:after{background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.94) 22%,rgba(255,255,255,.73) 39%,rgba(255,255,255,.16) 55%,rgba(255,255,255,0) 67%)}
.hero h1{font-size:clamp(52px,5.7vw,82px);line-height:1.1;font-weight:400;color:#304957;max-width:640px}
.hero h1 em{color:#7895a5}.hero p{color:#526a78;max-width:410px}.hero .image-note{background:#ffffffdc;color:#607783;border:1px solid #e4ebef}
.btn,.btn.gold{background:#e7f0f5;color:#304f62;border:1px solid #cddde6;font-weight:600;border-radius:4px;box-shadow:0 3px 12px #355f7210}
.btn:hover,.btn.gold:hover{background:#d8e8f1}.btn.outline{background:#ffffffed;color:#405f72;border-color:#d8e2e8}
.introbar{padding-top:32px;padding-bottom:32px;background:#fff}.introbar strong{color:#466373}.introbar span{color:#6a808c}
.section{padding-top:100px;padding-bottom:100px}h2{color:#365565;font-weight:400}h3{color:#3f6173}
.section-head{gap:70px}.section-head p{line-height:1.85}
.gallery{gap:30px}.gallery button{background:#f6fafc;color:#365565;border:1px solid #e4edf2;border-radius:5px}
.gallery button:after{display:none}.gallery .caption{position:static;display:block;padding:24px 28px 30px}.caption small{color:#7792a1}.caption strong{font-size:29px;font-weight:400}.gallery img{height:390px}.gallery-note{padding-top:5px}
.owner{background:#f0f6f9;color:#365565;border-top:1px solid #e8f0f4;border-bottom:1px solid #e8f0f4}.owner .eyebrow{color:#7292a5}.owner p{color:#607785}.owner .lead{color:#476675;font-size:25px}.owner .sign{color:#567d93}.roles{border-color:#cfdee6;color:#5e7e91}.portrait img{border-radius:5px}.portrait figcaption{background:#fffffff0;color:#426174;box-shadow:0 4px 20px #354b6010;border-radius:3px}
.services{gap:28px}.service{background:#fff;border:1px solid #e3ebef;border-radius:5px;box-shadow:0 5px 22px #405c6b08}.service:hover{background:#f7fbfd}.service .num{color:#799aaa}.service-copy{padding:30px}.service-link{color:#587f96}
.workscene{background:#f8f5f0}.workcopy .eyebrow{color:#9a866c}.workcopy p{color:#6c7d82}.step{border-color:#e3ded5}.step span{color:#a18b70}.step strong{color:#506a77}.workscene figcaption{background:#ffffffeb;color:#677f8b}
.contact form{background:#f1f7fa;border:1px solid #e0eaf0;border-radius:6px;padding:38px}.contact label{color:#4d6b7b}.contact input,.contact select,.contact textarea{background:#fff;border:1px solid #cbdce5;color:#304957;border-radius:3px}.phone{color:#527b94}.email{color:#527b94}.contact .btn{background:#dcebf3}
footer{background:#f1f6f9;color:#5e7886;border-top:1px solid #e0eaf0}.mobile-call{background:#fffffffa;color:#476779;border-top:1px solid #d8e6ed;box-shadow:0 -3px 20px #435d6910}.mobile-call a{background:#dfedf4;color:#3a5e73}.small-photo-link{color:inherit}.faq{border-color:#e1eaf0}details{border-color:#e1eaf0}summary{color:#476777}dialog{background:#fff;color:#365565;border-radius:6px}dialog::backdrop{background:#3a526acc}dialog button{border-color:#cddde6;background:#edf5f9;color:#395e73;border-radius:3px}
@media(max-width:1000px){.hero:after{background:linear-gradient(90deg,#fffffffa,#ffffffd4 35%,#ffffff26 70%,transparent)}.hero h1{max-width:540px}.gallery img{height:330px}}
@media(max-width:700px){.header nav{height:84px}.hero{min-height:0;display:flex;flex-direction:column;align-items:stretch;background:#fff}.hero>img{position:relative;inset:auto;width:100%;height:390px;object-fit:cover;object-position:70% center}.hero:after{display:none}.hero .wrap{padding-top:32px;padding-bottom:40px}.hero h1{font-size:49px;line-height:1.12;margin:18px 0;max-width:100%}.hero h1 br:nth-of-type(2){display:none}.hero p{max-width:100%;font-size:16px}.hero .image-note{position:static;order:3;padding:8px 6%;border:0;background:#f5f9fb;font-size:11px}.hero .eyebrow{font-size:11px}.actions{gap:12px}.actions .btn{flex:1;min-width:230px}.actions .btn .action-photo{width:65px}.section{padding-top:65px;padding-bottom:65px}.gallery img{height:300px}.gallery .caption{padding:22px}.caption strong{font-size:27px}.service-copy{padding:26px}.contact form{padding:25px}.owner-grid{gap:35px}.section-head{gap:24px}.portrait img{height:500px}.workcopy{padding:45px 6%}}

.site-nav{display:flex;gap:12px;align-items:center}.site-nav a{display:flex;align-items:center;gap:8px;font-size:14px;padding:8px;color:#496c80;border-radius:3px}.site-nav img{width:32px;height:36px;object-fit:cover;border-radius:2px}.site-nav a[aria-current=page]{background:#edf5f9;color:#2f566d}.site-nav a:hover{background:#f3f8fa}.header nav{height:auto;min-height:94px;gap:20px}.page-heading{padding-top:40px;padding-bottom:30px}.page-heading h1{font:clamp(38px,4.5vw,60px)/1.12 Georgia,serif;color:#365565;margin:16px 0}.breadcrumb{font-size:13px;color:#6d8795;display:block;margin-bottom:22px}.page-heading p{max-width:680px;color:#607783}.quick-links{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:34px;padding-bottom:45px}.quick-links a{border:1px solid #e0eaf0;border-radius:5px;overflow:hidden;background:#f8fbfd}.quick-links img{width:100%;height:160px;object-fit:cover;display:block}.quick-links span{display:block;padding:16px 18px;font:23px Georgia,serif}.hero{min-height:600px}.hero .wrap{padding-top:45px;padding-bottom:55px}.hero h1{font-size:clamp(50px,5.2vw,74px)}.section{padding-top:45px;padding-bottom:55px}.service-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:start;padding-bottom:55px}.service-detail figure{margin:0}.service-detail figure img{width:100%;max-height:530px;object-fit:cover;border-radius:5px}.service-detail h2{font-size:35px;margin-top:0}.service-detail ul{padding-left:20px;color:#607783}.service-detail li{margin-bottom:12px}.service-detail .btn{margin-top:16px}.detail-image{width:100%;max-height:65vh;object-fit:contain;background:#f5f9fb}.detail-actions{display:flex;gap:16px;flex-wrap:wrap;margin:25px 0 40px}.gallery .gallery-page-link{display:block;position:relative;border:1px solid #e4edf2;background:#f6fafc;color:#365565;overflow:hidden;border-radius:5px}.gallery .gallery-page-link img{transition:transform .3s}.gallery .gallery-page-link:hover img{transform:scale(1.015)}.owner .portrait img{height:510px}.owner h2{font-size:45px}.contact h2{font-size:46px}.service-copy p{font-size:14px}.service-photo{height:190px}.service-copy{padding:24px}.service h3{font-size:25px}footer .wrap{flex-wrap:wrap}.footer-nav{display:flex;gap:18px;font-size:14px}.gallery-note{margin-bottom:0}
@media(max-width:1000px){.header nav{flex-wrap:wrap;padding-top:20px;padding-bottom:15px}.site-nav{flex-wrap:wrap}.site-nav a{padding:5px;font-size:13px}.service-detail{gap:30px}.quick-links{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.header nav{min-height:0;gap:16px;align-items:flex-start}.header .brand{margin-top:5px}.site-nav{width:100%;display:grid;grid-template-columns:repeat(5,1fr);gap:3px}.site-nav a{flex-direction:column;gap:5px;font-size:12px;text-align:center;padding:5px 0}.site-nav img{width:100%;height:38px;max-width:65px}.hero{min-height:0}.hero>img{height:300px}.hero .wrap{padding-top:24px;padding-bottom:30px}.hero h1{font-size:44px}.hero h1 br{display:none}.hero h1 br:after{content:' '}.hero p{font-size:15px}.quick-links{gap:14px;padding-top:25px;padding-bottom:30px}.quick-links img{height:125px}.quick-links span{font-size:20px;padding:13px}.page-heading{padding-top:28px;padding-bottom:20px}.page-heading h1{font-size:39px}.service-detail{grid-template-columns:1fr;gap:26px}.service-detail figure img{max-height:310px}.service-detail h2{font-size:31px}.section{padding-top:25px;padding-bottom:40px}.owner h2{font-size:37px}.owner .portrait img{height:400px}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-photo{height:135px}.service-copy{padding:16px}.service h3{font-size:22px}.service .num{font-size:11px;margin-bottom:14px}.service-copy p{display:none}.service-link{font-size:12px;margin-top:15px}.gallery img{height:275px}.contact h2{font-size:38px}.footer-nav{flex-wrap:wrap}.detail-image{max-height:55vh}}@media(max-width:370px){.services{grid-template-columns:1fr}}
/* Keep the complete portrait visible within the wide About thumbnail. */
.quick-links a[href="/about.html"] img,.quick-links a[href="/about"] img{object-fit:contain;object-position:center;background:#eef5f8}
.site-nav a[href="/about.html"] img,.site-nav a[href="/about"] img{object-position:center 15%}
.service-detail figure .work-photo{aspect-ratio:3/2;object-fit:cover}
/* Preserve the complete top of the approved homepage photograph. */
.hero>img{object-position:center top}
@media(min-width:701px){.hero{min-height:clamp(600px,39.1vw,820px)}}
@media(max-width:700px){.hero>img{height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center top}}
/* Display replacement portraits without cropping the face at any size. */
.portrait img,.owner .portrait img,.owner-grid .portrait img{object-fit:contain;object-position:center;background:#edf5f8}

/* Text-only top navigation; photo cards remain in the page content. */
.site-nav{gap:24px}.site-nav a{padding:10px 14px;font-size:15px}.site-nav a img{display:none}
@media(max-width:700px){.site-nav{gap:2px}.site-nav a{padding:10px 3px;font-size:13px;min-height:44px;justify-content:center}.header nav{gap:10px;padding-bottom:10px}}

/* Original project photography: full-frame images and short gallery albums. */
.real-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.real-gallery-card{border:1px solid #dce6ec;background:#fff;display:block}.real-gallery-card img{display:block;width:100%;height:300px;object-fit:contain;background:#f0f5f7}.real-gallery-card div{padding:22px}.real-gallery-card h3{font-size:27px}.real-gallery-card p{margin:0;color:#526773;font-size:16px}.section h1{font:clamp(36px,4.5vw,60px)/1.12 Georgia,serif;margin:16px 0 30px}.project-album{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.project-album figure{margin:0;border:1px solid #dce6ec;background:#f4f8fa}.project-album img{display:block;width:100%;height:480px;object-fit:contain}.project-album figcaption{padding:16px 20px;font-size:16px;background:white}.album-back{text-decoration:underline;font-size:16px}.inspiration-links{margin-top:28px;font-size:16px}.inspiration-links summary{cursor:pointer}.inspiration-links p{margin:14px 0 6px}.inspiration-links a{text-decoration:underline}@media(max-width:800px){.real-gallery-grid{grid-template-columns:1fr}.real-gallery-card{display:grid;grid-template-columns:130px 1fr;align-items:center}.real-gallery-card img{height:180px}.real-gallery-card h3{font-size:23px}.real-gallery-card div{padding:16px}.project-album{grid-template-columns:1fr}.project-album img{height:auto;max-height:70vh;object-fit:contain}}

/* Refined portfolio presentation, keeping original photographs intact. */
.portfolio-shell{width:min(1040px,88%);margin:0 auto;padding:42px 0 54px}.portfolio-intro{max-width:680px;margin-bottom:34px}.portfolio-intro h1{font:clamp(34px,3.6vw,48px)/1.12 Georgia,serif;letter-spacing:-1px;margin:18px 0}.portfolio-intro>p{font-size:17px;line-height:1.6;color:#5b707b;max-width:580px;margin:0}.album-back{font-size:14px;color:#587584;text-decoration:none}.rachelle-editorial{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.editorial-photo{margin:0;min-width:0}.editorial-photo>a{display:block;max-width:380px}.editorial-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.editorial-second{padding-top:62px}.editorial-photo figcaption{padding:20px 0 0;max-width:380px;border:0;background:none}.editorial-photo figcaption span{font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:#66808e}.editorial-photo figcaption h2{font:29px/1.2 Georgia,serif;letter-spacing:-.4px;margin:10px 0}.editorial-photo figcaption p{font-size:16px;color:#5b707b;line-height:1.5;margin:0}.portfolio-end{margin-top:38px;padding-top:22px;border-top:1px solid #dce6ec;display:flex;justify-content:space-between;gap:20px;font-size:15px}.portfolio-end a{text-decoration:underline;text-underline-offset:5px}.real-gallery-grid{gap:30px}.real-gallery-card{border:0;background:transparent}.real-gallery-card img{height:auto;aspect-ratio:4/5;object-fit:cover;background:transparent}.real-gallery-card:first-child img{object-position:center}.real-gallery-card div{padding:20px 0}.real-gallery-card h3{font-size:28px}.real-gallery-card p{font-size:16px}.project-collection .section{max-width:1120px;padding-top:35px}.project-collection .section h1{font-size:44px}.project-album{gap:32px;align-items:start}.project-album figure{border:0;background:none}.project-album img{height:auto;max-height:560px;object-fit:contain;object-position:left}.project-album figcaption{padding:14px 0;font-size:15px;border-bottom:1px solid #e2eaf0;color:#587180}.project-collection .project-album figure:nth-child(even){margin-top:45px}
@media(max-width:700px){.portfolio-shell{padding-top:28px;width:88%}.portfolio-intro{margin-bottom:28px}.rachelle-editorial{gap:28px;grid-template-columns:1fr}.editorial-photo>a,.editorial-photo figcaption{max-width:100%}.editorial-photo img{max-height:520px;width:auto;max-width:100%}.editorial-second{padding-top:0}.editorial-photo figcaption h2{font-size:27px}.portfolio-end{flex-wrap:wrap}.real-gallery-card{display:block}.real-gallery-card img{height:auto;max-height:360px;aspect-ratio:4/3;object-fit:cover}.real-gallery-card:first-child img{aspect-ratio:3/4;max-height:390px;object-fit:contain;object-position:left}.real-gallery-card div{padding:15px 0 8px}.project-collection .section h1{font-size:36px}.project-collection .project-album figure:nth-child(even){margin-top:0}}

/* Room-by-room before and after comparisons. */
.comparison-wrap{width:min(1120px,88%);margin:0 auto;padding:35px 0 45px}.comparison-wrap>h1{font:clamp(32px,3.6vw,46px)/1.15 Georgia,serif;letter-spacing:-1px;margin:18px 0 30px}.room-comparison{margin:0 0 36px}.room-comparison h2{font:26px/1.2 Georgia,serif;letter-spacing:0;margin:0 0 16px}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.before-after figure{margin:0;min-width:0}.before-after figcaption{font-size:14px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;border-top:1px solid #cbdbe4;padding:10px 0;color:#34596c}.before-after img{display:block;width:100%;height:420px;object-fit:contain;background:#f6f8fa}.before-after a{display:block}@media(max-width:700px){.comparison-wrap{width:90%;padding-top:25px}.before-after{gap:12px}.before-after img{height:260px}.room-comparison h2{font-size:24px}.comparison-wrap>h1{font-size:34px}}@media(max-width:420px){.before-after img{height:220px}}
/* Keep the six navigation destinations balanced on small screens. */
@media(max-width:700px){.site-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Homeowner process */
.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;padding-bottom:50px;align-items:start}.process-grid figure{margin:0}.process-grid figure>img{width:100%;height:auto;max-height:390px;object-fit:contain;background:#f5f9fb;border-radius:4px}.process-grid figure h2{font-size:32px;letter-spacing:-.5px;margin:24px 0 16px}.process-grid p{color:#526975;font-size:16px}.process-steps{padding:0;margin:0;list-style:none;counter-reset:steps}.process-steps li{border-bottom:1px solid #dce6ec;padding:0 0 20px;margin-bottom:23px}.process-steps h2{font:27px/1.2 Georgia,serif;letter-spacing:-.3px;margin:9px 0 12px}.process-steps p{margin:0}.process-steps .eyebrow{font-size:10px;letter-spacing:1.6px}.process-inline{display:inline-flex;align-items:center;gap:14px;margin:18px 0;font-size:15px;font-weight:600;color:#34596c}.process-inline img{width:66px;height:54px;object-fit:cover;border-radius:3px}.process-service-link{padding-bottom:35px}.site-nav{gap:12px}.site-nav a{font-size:13px}@media(max-width:800px){.process-grid{grid-template-columns:1fr;gap:30px}.process-grid figure>img{max-height:290px}.site-nav{grid-template-columns:repeat(4,1fr)}}

/* Keep the About portrait at the start of the story, regardless of copy length. */
.about-page .owner-grid{align-items:start}
.about-page .portrait{align-self:start}
.about-page .page-heading{padding-top:24px;padding-bottom:12px}
.about-page .page-heading .breadcrumb{margin-bottom:12px}
.about-page .page-heading p{margin-bottom:0}
.about-page .owner{padding-top:24px}
@media(max-width:700px){
.about-page .page-heading{padding-top:18px;padding-bottom:12px}
.about-page .page-heading h1{font-size:34px;margin:10px 0}
.about-page .page-heading p{font-size:15px;line-height:1.5}
.about-page .owner{padding-top:16px}
.about-page .owner-grid{row-gap:25px}
.about-page .owner .portrait img{height:auto;max-height:360px;object-fit:contain;object-position:center top}
.about-page .portrait figcaption{position:static;margin-top:8px;padding:8px 12px;box-shadow:none}
}

.rachelle-editorial.single-milestone{display:block}.single-milestone .editorial-photo{display:grid;grid-template-columns:minmax(0,380px) 1fr;gap:42px;align-items:start}.single-milestone .editorial-photo figcaption{padding-top:8px}@media(max-width:700px){.single-milestone .editorial-photo{grid-template-columns:1fr;gap:14px}}

/* Keep the homeowner enquiry visually grouped. */
.contact #enquiry{align-self:start;min-width:0}
.contact .enquiry-title{font-size:28px;margin:0 0 10px}
.contact .enquiry-help{font-size:14px;line-height:1.6;color:#607783;margin:0 0 24px}
.contact #enquiry .formrow>div{min-width:0}
.contact #enquiry input,.contact #enquiry select{min-height:48px}
.contact #enquiry textarea{min-height:130px}

/* Approved Signature RR identity: one consistent lockup on every page. */
.brand{display:inline-flex;align-items:center;flex-shrink:0;max-width:100%;line-height:0;letter-spacing:0}
.brand-logo{display:block;width:252px;max-width:100%;height:auto;object-fit:contain;mix-blend-mode:multiply}
.header .brand{margin:0}
.header nav{height:auto;min-height:104px}
footer .brand-logo{width:230px}
@media(max-width:1180px){.header nav{flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:8px}.header .site-nav{width:100%;justify-content:space-between;flex-wrap:wrap}}
@media(max-width:700px){.header nav{min-height:0;padding-top:8px;padding-bottom:8px;gap:5px}.brand-logo{width:222px}footer .brand-logo{width:220px}}

/* Pair Rachelle's graduation milestone with her story without delaying the lead portrait. */
.about-page .owner-grid{row-gap:40px}
.about-story-intro,.about-story-details,.about-milestone{min-width:0}
.about-story-intro p:last-child{margin-bottom:0}
.about-milestone{margin:0;align-self:start;border:1px solid #dce6ec;border-radius:5px;overflow:hidden;background:#fff}
.about-milestone>a{display:block}
.about-milestone img{display:block;width:100%;height:auto;object-fit:contain}
.about-milestone figcaption{padding:22px 24px 24px}
.about-milestone .eyebrow{font-size:10px;letter-spacing:1.8px}
.about-milestone h3{font-size:27px;margin:10px 0}
.about-milestone p{font-size:15px;line-height:1.6;margin:0 0 12px}
.about-milestone .original-photo-link{font-size:12px;text-decoration:underline;text-underline-offset:3px;color:#567382}
.about-story-details h3:not(:first-child){margin-top:28px}
@media(max-width:700px){
 .about-page .owner-grid{row-gap:28px}
 .about-milestone figcaption{padding:18px 20px 20px}
 .about-milestone h3{font-size:25px}
}
