@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--paper:#f6f4ee;--ink:#262a24;--muted:#74776c;--line:#dcded3;--green:#3b4739;--accent:#b5a486}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid #8b704c;outline-offset:5px}button{cursor:pointer}img{display:block;max-width:100%}.announcement{height:34px;background:var(--green);color:#eeeede;font-size:9px;letter-spacing:2px;padding:8px 5%;text-align:center}.announcement span{float:right;font-size:8px}header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{font-family:'Manrope',sans-serif;font-size:42px;letter-spacing:-3px;line-height:1}.brand span{font-family:'DM Sans',sans-serif;display:block;font-size:8px;font-weight:600;letter-spacing:2px;margin-top:9px}nav{display:flex;gap:33px;font-size:12px}nav a{padding:7px 0}nav a:hover,nav a.active{border-bottom:1px solid var(--ink)}.navbook{font-size:11px;border:1px solid var(--ink);padding:12px 18px}.navbook span{margin-left:22px}.menu{display:none;background:none;border:none;font-size:25px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:655px;margin:0 5%;border-bottom:1px solid var(--line)}.hero-copy{padding:75px 8% 48px 0;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;display:flex;align-items:center;gap:12px;margin-bottom:24px}.eyebrow:before{content:'';width:30px;height:1px;background:var(--accent)}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.12;margin:0}h1{font-size:clamp(48px,5.5vw,83px);letter-spacing:-3px}em{font-weight:400;color:#78806b}.hero p{max-width:335px;color:var(--muted);font-size:13px;margin:26px 0 30px}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.button{background:var(--green);color:#fff;padding:15px 24px;font-size:11px;border:1px solid var(--green);display:inline-flex;align-items:center;justify-content:space-between;gap:30px}.button:hover{background:#263124}.text-link{font-size:11px;border-bottom:1px solid var(--ink);padding-bottom:4px}.hero-meta{margin-top:55px;display:flex;align-items:center;gap:13px;font-size:9px;color:var(--muted)}.seal{border:1px solid #b5b9aa;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-size:20px;color:#8a7856}.hero-visual{position:relative;margin:30px 0 30px 20px;min-height:570px;background:#282924;overflow:hidden}.hero-visual img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:50% 50%;filter:contrast(.96)}.hero-visual:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0009)}.image-caption{position:absolute;bottom:28px;left:30px;right:30px;color:white;z-index:1;display:flex;justify-content:space-between;align-items:end;font-size:9px;letter-spacing:2px}.image-caption strong{display:block;font-family:'Playfair Display',serif;letter-spacing:0;font-size:26px;font-weight:400}.vertical{position:absolute;right:16px;top:20px;color:#fff8;font-size:8px;writing-mode:vertical-rl;letter-spacing:3px;z-index:1}.service-strip{display:flex;justify-content:space-between;gap:20px;padding:23px 5%;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:1.7px}.service-strip span{color:#9b9f8e}.section{padding:85px 5%}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px;gap:25px}.section-head h2,h2{font-size:45px;letter-spacing:-1.5px}.section-head p{margin:12px 0 0;max-width:440px;color:var(--muted);font-size:13px}.work-grid{display:grid;grid-template-columns:1.05fr .85fr 1.05fr;gap:25px}.work-card{border:0;background:transparent;text-align:left;padding:0;color:inherit}.work-card .frame{overflow:hidden;background:#dedfd6;height:365px;position:relative}.work-card:nth-child(2){padding-top:55px}.work-card:nth-child(2) .frame{height:310px}.work-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.work-card:hover img{transform:scale(1.035)}.work-card .label{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.label h3{font-size:23px}.label small{font-size:8px;letter-spacing:1.6px;color:var(--muted)}.label span{font-size:21px}.note{font-size:11px;color:var(--muted);margin-top:25px}.experience{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#e9eadd}.experience h2{font-size:48px}.experience p{font-size:13px;color:var(--muted)}.service-list a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #cbd0c0;padding:19px 0;font-family:'Playfair Display',serif;font-size:24px}.service-list small{font-family:'DM Sans',sans-serif;font-size:10px;display:block;color:var(--muted)}.reviews{text-align:center;padding:80px 18%}.stars{letter-spacing:6px;color:#a18a5e;font-size:14px}.reviews blockquote{font-family:'Playfair Display',serif;font-size:29px;line-height:1.5;margin:20px auto}.reviews cite{font-style:normal;font-size:10px;letter-spacing:1.6px}.reviews .actions{justify-content:center;margin-top:28px}.cta{background:var(--green);color:var(--paper);padding:60px 5%;display:flex;align-items:center;justify-content:space-between;gap:35px}.cta h2{font-size:44px}.cta p{color:#d1d5c8;font-size:12px}.cta .button{background:var(--paper);color:var(--ink);white-space:nowrap}footer{padding:60px 5% 20px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:45px}.footer-top p{font-family:'Playfair Display',serif;font-size:23px;line-height:1.4}.footer-top>a:last-child{font-size:12px;border-bottom:1px solid #888}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;gap:25px;font-size:9px;color:var(--muted)}.footer-bottom span:first-child{margin-right:auto}.page-intro{padding:65px 5% 45px;max-width:950px}.page-intro h1{font-size:64px}.page-intro p{color:var(--muted);max-width:590px;font-size:14px}.filters{display:flex;gap:12px;flex-wrap:wrap;padding:0 5% 30px}.filters button{border:1px solid var(--line);padding:9px 18px;background:transparent;font-size:11px}.filters button.active{background:var(--green);color:white;border-color:var(--green)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;padding:0 5% 60px}.gallery-grid .work-card:nth-child(n){padding:0}.gallery-grid .frame{height:370px}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;padding:0 5% 65px}.service-card{border:1px solid var(--line);padding:35px;display:grid;grid-template-columns:100px 1fr;gap:25px}.service-card img{width:100px;height:135px;object-fit:cover}.service-card h2{font-size:27px;letter-spacing:-.5px}.service-card p{font-size:12px;color:var(--muted)}.price{font-size:12px;margin:15px 0}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;padding:0 5% 80px}.booking-aside{padding:30px 0}.booking-aside h2{font-size:33px}.steps{list-style:none;padding:0;counter-reset:steps}.steps li{counter-increment:steps;display:flex;gap:16px;margin:24px 0;font-size:12px;align-items:center}.steps li:before{content:'0' counter(steps);color:#999980;border-bottom:1px solid #ccc;font-size:11px}.booking-form{border:1px solid var(--line);padding:35px;background:#fff9}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px;font-size:11px}.field.full{grid-column:1/-1}input,select,textarea{width:100%;padding:12px;border:1px solid #d0d3c8;background:#fafaf6;border-radius:0;color:var(--ink);font-size:13px}textarea{resize:vertical;min-height:90px}.booking-form .button{width:100%;margin-top:22px}.status{padding:15px;background:#e9eadd;font-size:12px;margin-top:15px}.status:empty{display:none}.check{display:flex;align-items:start;gap:9px;margin-top:22px;font-size:11px;color:var(--muted)}.check input{width:15px;flex:none;margin-top:3px}.guidelines{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:0 5% 60px}.guidelines article{border-top:1px solid var(--line);padding-top:25px}.guidelines h2{font-size:30px}.guidelines ul{padding-left:18px;font-size:13px;color:var(--muted)}.guidelines li{margin:15px 0}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:0 5% 80px;align-items:center}.about-layout img{width:100%;max-height:600px;object-fit:cover}.about-layout p{color:var(--muted);font-size:14px}.award{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin:25px 0;font-family:'Playfair Display',serif;font-size:23px}.award small{font-family:'DM Sans',sans-serif;font-size:10px;display:block;margin-top:8px;color:var(--muted)}dialog{border:none;padding:40px 20px 15px;max-width:90vw;max-height:95vh;background:var(--paper)}dialog::backdrop{background:#111d}dialog img{max-height:76vh;margin:auto;object-fit:contain}dialog p{font-size:12px;text-align:center}.close{position:absolute;right:10px;top:3px;font-size:30px;background:none;border:none}.empty{grid-column:1/-1;padding:30px}.prose{max-width:800px;padding:0 5% 65px}.prose h2{font-size:27px;margin-top:30px}.prose p{color:var(--muted);font-size:13px}.draft-note{font-size:10px;padding:10px 5%;background:#eeeadf;color:#6b6455;border-bottom:1px solid var(--line)}
@media(min-width:1500px){main,header,footer,.announcement{padding-left:max(5%,calc((100vw - 1400px)/2));padding-right:max(5%,calc((100vw - 1400px)/2))}main{padding:0;max-width:1600px;margin:auto}}
@media(max-width:900px){nav{gap:18px}header{gap:15px}.hero-copy{padding-top:40px}h1{letter-spacing:-2px}.hero-visual{min-height:520px}.hero-meta{margin-top:35px}.work-grid{gap:16px}.work-card .frame{height:290px}.work-card:nth-child(2) .frame{height:235px}.service-card{grid-template-columns:1fr}.service-card img{width:100%;height:180px}.gallery-grid .frame{height:280px}.reviews{padding:60px 10%}}
@media(max-width:650px){.announcement{font-size:7px;letter-spacing:1.7px}.announcement span{display:none}header{height:83px}.brand{font-size:35px}.brand span{font-size:6px}.navbook{margin-left:auto;padding:9px 12px;font-size:9px}.navbook span{margin-left:5px}.menu{display:block}nav{display:none;position:absolute;top:117px;left:0;right:0;padding:25px 5%;background:var(--paper);z-index:10;box-shadow:0 10px 20px #0001}nav.open{display:flex;flex-direction:column;gap:15px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 0 30px}.hero h1{font-size:57px;max-width:430px}.hero p{max-width:320px;margin-top:20px}.hero-meta{margin-top:30px}.hero-visual{margin:0 0 25px;min-height:400px}.service-strip{overflow-x:auto;white-space:nowrap;gap:25px;font-size:8px;padding-top:18px;padding-bottom:18px}.section{padding:55px 5%}.section-head{align-items:start}.section-head h2,h2{font-size:35px}.section-head .text-link{white-space:nowrap}.work-grid{grid-template-columns:1fr;gap:32px}.work-card:nth-child(2){padding-top:0}.work-card .frame,.work-card:nth-child(2) .frame{height:390px}.experience{grid-template-columns:1fr;gap:25px}.experience h2{font-size:37px}.reviews{padding:55px 6%}.reviews blockquote{font-size:24px}.cta{flex-direction:column;align-items:start;padding-top:40px;padding-bottom:40px}.cta h2{font-size:37px}.footer-top{align-items:start;flex-wrap:wrap;gap:25px}.footer-top p{font-size:20px;margin:0}.footer-top>a:last-child{width:100%;padding-bottom:10px}.footer-bottom{flex-wrap:wrap;gap:15px}.footer-bottom span:first-child{width:100%}.page-intro{padding-top:45px}.page-intro h1{font-size:48px;letter-spacing:-1.5px}.gallery-grid{grid-template-columns:1fr 1fr;gap:18px}.gallery-grid .frame{height:240px}.gallery-grid .label h3{font-size:19px}.gallery-grid .label small{font-size:7px}.cards,.guidelines,.about-layout,.form-layout{grid-template-columns:1fr}.cards{gap:18px}.service-card{grid-template-columns:80px 1fr;padding:22px;gap:18px}.service-card img{width:80px;height:110px}.service-card h2{font-size:24px}.form-layout{gap:20px}.booking-aside{padding:0}.booking-form{padding:22px}.fields{gap:17px}.field{grid-column:1/-1}.guidelines{gap:30px}.about-layout{gap:30px}.about-layout img{max-height:380px}.eyebrow{font-size:8px}.hero-visual img{object-position:center 42%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Original studio logo, preserved in its original colours and proportions. */
.brand{display:block;flex-shrink:0;line-height:0;letter-spacing:normal}.brand img{width:84px;height:84px;object-fit:contain}footer .brand img{width:108px;height:108px}@media(max-width:650px){.brand img{width:65px;height:65px}footer .brand img{width:90px;height:90px}}
/* Readable navigation and a soft photographic fade into the page. */
nav{font-size:16px;font-weight:700;gap:30px}.navbook{font-size:14px;font-weight:700;padding:13px 19px}.hero-visual{background:transparent;-webkit-mask-image:linear-gradient(to right,transparent,#000 18%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 8%,#000 90%,transparent);mask-image:linear-gradient(to right,transparent,#000 18%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 8%,#000 90%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}.image-caption{left:65px;bottom:45px;z-index:2}.vertical{right:30px;top:45px}@media(max-width:1050px) and (min-width:651px){nav{gap:16px;font-size:14px}.navbook{font-size:12px;padding:12px}.navbook span{margin-left:8px}header{gap:18px}}@media(max-width:650px){nav{font-size:18px;font-weight:700}.navbook{font-size:12px;padding:10px 12px}.image-caption{left:35px;bottom:35px}.image-caption strong{font-size:23px}.hero-visual{-webkit-mask-image:linear-gradient(to right,transparent,#000 9%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 9%,#000 90%,transparent);mask-image:linear-gradient(to right,transparent,#000 9%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 9%,#000 90%,transparent)}}
/* Logo-inspired palette: warm porcelain, deep teal and restrained copper. */
:root{--paper:#faf6ef;--ink:#173b3e;--muted:#607174;--line:#dedfd8;--green:#006d73;--accent:#c76a2b}header{background:#fffaf3}.announcement{background:#07545a;color:#fff6e9}h1 em,h2 em,em{color:#007c82}.button{background:#006d73;border-color:#006d73}.button:hover{background:#07545a;border-color:#07545a}.navbook{border-color:#006d73;color:#07545a}.navbook:hover{background:#e4f0ee}.navbook span,.label>span,.service-list>a>span{color:#bd591f}.text-link{border-bottom-color:#c76a2b}.eyebrow:before{background:#ce7435}.seal{color:#b45e25;border-color:#d5b18c}.experience{background:#e6efeb}.service-list a{border-color:#c5d7d3}.service-list small{color:#526d6d}.cta{background:#07545a}.cta .button{background:#fff6e9;color:#07545a;border-color:#fff6e9}.cta .button:hover{background:#f3dfc5}.cta .eyebrow:before{background:#ef9b58}.stars{color:#b76326}.reviews cite{color:#07545a}.status{background:#e4efea}.filters button.active{background:#006d73;border-color:#006d73}.award{color:#07545a}.footer-top>a:last-child{border-color:#c76a2b}.brand img{filter:none}
/* Increase the small text called out in the review screenshots. */
.hero .button,.hero .text-link{font-size:14px}.hero-meta{font-size:12px;line-height:1.7}.service-strip{font-size:12px;font-weight:600;letter-spacing:1.6px}.label small{font-size:11px;font-weight:600;letter-spacing:1.5px}.label h3{font-size:26px}@media(max-width:900px){.service-strip{flex-wrap:wrap;justify-content:center;gap:12px 22px}}@media(max-width:650px){.hero .button,.hero .text-link{font-size:14px}.hero-meta{font-size:11px}.service-strip{font-size:11px;letter-spacing:1px;white-space:normal;overflow:visible;line-height:1.7;padding:20px 5%}.service-strip span{display:none}.label small,.gallery-grid .label small{font-size:10px}.label h3{font-size:24px}.gallery-grid .label h3{font-size:21px}}
/* A very pale orange drawn from the studio logo. */
:root{--paper:#fff1e3;--line:#e8d9cd}header{background:#fff6ed}.experience{background:#f9e6d4}.booking-form{background:#fff8f1}.filters button{border-color:#dfc9b7}input,select,textarea{background:#fffaf5}.service-strip{border-color:#e8d9cd}
/* Softer light beige, with the existing dark teal preserved. */
:root{--paper:#faf7f0;--line:#e2ded4}header{background:#fdfbf6}.experience{background:#f1ece1}.booking-form{background:#fffdf8}.filters button{border-color:#dcd5c8}input,select,textarea{background:#fffdf9}.service-strip{border-color:#e2ded4}
/* Align the featured portfolio photographs in identical frames. */
.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.work-grid .work-card,.work-grid .work-card:nth-child(2){padding-top:0}.work-grid .work-card .frame,.work-grid .work-card:nth-child(2) .frame{height:auto;aspect-ratio:4/5}.work-grid .work-card img{height:100%;width:100%;object-fit:cover;object-position:center}.work-grid .work-card:first-child img{object-position:center top}.work-grid .label{align-items:start}.work-grid .label>span{padding-top:8px}@media(max-width:650px){.work-grid{grid-template-columns:1fr}.work-grid .work-card .frame,.work-grid .work-card:nth-child(2) .frame{aspect-ratio:4/5;max-height:420px}.work-grid .work-card:nth-child(2) img{object-position:center 35%}}
.work-grid .work-card .frame,.work-grid .work-card:nth-child(2) .frame{height:clamp(280px,32vw,380px);aspect-ratio:auto}@media(max-width:650px){.work-grid .work-card .frame,.work-grid .work-card:nth-child(2) .frame{height:360px}}
/* Extend the photograph beneath the copy, with a gradual fade to the left. */
.hero{position:relative;display:block;margin:0;padding:0 5%;min-height:650px;isolation:isolate;overflow:hidden}.hero-copy{position:relative;z-index:2;width:47%;min-height:650px;padding:65px 0 50px}.hero-visual{position:absolute;inset:0;margin:0;min-height:0;z-index:0;-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,.025) 0%,rgba(0,0,0,.06) 20%,rgba(0,0,0,.13) 37%,rgba(0,0,0,.3) 49%,rgba(0,0,0,.85) 68%,#000 100%),linear-gradient(to bottom,transparent,#000 5%,#000 94%,transparent);mask-image:linear-gradient(to right,rgba(0,0,0,.025) 0%,rgba(0,0,0,.06) 20%,rgba(0,0,0,.13) 37%,rgba(0,0,0,.3) 49%,rgba(0,0,0,.85) 68%,#000 100%),linear-gradient(to bottom,transparent,#000 5%,#000 94%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.hero-visual .image-caption{left:62%;right:5%;bottom:50px}.hero-visual .vertical{right:3%;top:50px}.hero p{color:#425b5c}.hero .hero-meta{color:#4b6263}@media(max-width:900px) and (min-width:651px){.hero-copy{width:53%}.hero-visual .image-caption{left:61%}.hero-visual .image-caption strong{font-size:23px}}@media(max-width:650px){.hero{min-height:610px}.hero-copy{min-height:610px;width:100%;padding:40px 0 100px}.hero h1{font-size:51px;max-width:340px}.hero p{max-width:290px}.hero-visual{margin:0;min-height:0;-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,.04),rgba(0,0,0,.1) 40%,rgba(0,0,0,.4) 75%,rgba(0,0,0,.65)),linear-gradient(to bottom,transparent,#000 5%,#000 92%,transparent);mask-image:linear-gradient(to right,rgba(0,0,0,.04),rgba(0,0,0,.1) 40%,rgba(0,0,0,.4) 75%,rgba(0,0,0,.65)),linear-gradient(to bottom,transparent,#000 5%,#000 92%,transparent)}.hero-visual .image-caption{left:auto;right:6%;bottom:28px;text-align:right}.hero-visual .image-caption>span,.hero-visual .vertical{display:none}.hero-visual .image-caption strong{font-size:22px}.hero-visual img{object-position:62% center}}
/* Keep the closing invitation together, with a clear, readable action. */
.cta{flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center;padding:44px 5%}.cta>div{max-width:800px}.cta .eyebrow{justify-content:center;margin-bottom:17px}.cta h2{font-size:40px;line-height:1.2}.cta h2 br{display:none}.cta h2 i{display:block}.cta p{font-size:15px;margin:17px 0 0}.cta .button{font-size:17px;font-weight:600;padding:16px 27px;gap:26px}.button{font-size:15px;font-weight:600}.hero .button{font-size:16px}@media(max-width:650px){.cta{padding:35px 6%;align-items:center;gap:20px}.cta h2{font-size:33px}.cta p{font-size:14px}.cta .button{font-size:16px;padding:15px 22px}.cta .eyebrow{font-size:8px;letter-spacing:1.5px}}
.recognition{margin:0 5% 65px;padding:35px 0;border-top:1px solid #cfb894;border-bottom:1px solid #cfb894;display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:30px;align-items:center}.recognition-mark{width:72px;height:72px;border:1px solid #c79b71;border-radius:50%;display:grid;place-items:center;font-size:44px;color:#a55a28}.recognition .eyebrow{margin-bottom:14px;font-size:10px}.recognition h2{font-size:34px;letter-spacing:-.7px}.recognition-subtitle{font-size:15px;color:#07545a;margin-top:10px;font-weight:600}.recognition p{font-size:14px;line-height:1.7;color:var(--muted);max-width:720px;margin:14px 0 0}.recognition p.recognition-presentation{font-size:12px;margin-top:10px}.recognition>.text-link{white-space:nowrap;font-size:14px}.award p.award-presentation{font-family:'DM Sans',sans-serif;font-size:12px;margin-bottom:0}@media(max-width:900px){.recognition{grid-template-columns:65px 1fr;gap:20px}.recognition-mark{width:60px;height:60px}.recognition>.text-link{grid-column:2;justify-self:start}}@media(max-width:650px){.recognition{grid-template-columns:1fr;margin-bottom:45px;padding:28px 0;gap:18px}.recognition h2{font-size:29px}.recognition>.text-link{grid-column:1}.recognition .eyebrow{font-size:9px;letter-spacing:1.6px}.recognition-subtitle{font-size:14px}}
/* Five collections: three across, then two spanning the full second row. */
.work-grid,.gallery-grid:has(>.work-card:nth-child(5):last-child){grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 25px}.work-grid>.work-card,.gallery-grid:has(>.work-card:nth-child(5):last-child)>.work-card{grid-column:span 2}.work-grid>.work-card:nth-child(n+4),.gallery-grid:has(>.work-card:nth-child(5):last-child)>.work-card:nth-child(n+4){grid-column:span 3}.work-grid>.work-card:nth-child(n+4) .frame{height:clamp(280px,29vw,350px)}@media(max-width:650px){.work-grid,.gallery-grid:has(>.work-card:nth-child(5):last-child){grid-template-columns:1fr;gap:30px}.work-grid>.work-card,.work-grid>.work-card:nth-child(n+4),.gallery-grid:has(>.work-card:nth-child(5):last-child)>.work-card,.gallery-grid:has(>.work-card:nth-child(5):last-child)>.work-card:nth-child(n+4){grid-column:auto}.work-grid>.work-card:nth-child(n+4) .frame{height:360px}}
/* Give the award heading a clear visual emphasis. */
.recognition .eyebrow{display:inline-flex;background:#07545a;color:#fff8ed;padding:9px 14px;font-size:12px;font-weight:700;letter-spacing:1.8px;margin-bottom:20px}.recognition .eyebrow:before{background:#efa564;width:22px}.recognition h2{font-size:42px;font-weight:600;color:#07545a;line-height:1.2}.recognition h2:after{content:'';display:block;width:88px;height:3px;background:#c76a2b;margin-top:15px}.recognition-subtitle{margin-top:17px;font-size:16px}.recognition-mark{background:#f5e8d6;border-color:#c76a2b}@media(max-width:650px){.recognition h2{font-size:34px}.recognition .eyebrow{font-size:10px;letter-spacing:1.2px;padding:9px 11px}.recognition-subtitle{font-size:14px}}
/* Keep the studio link with the award copy; reserve the right column for the shield. */
.recognition{grid-template-columns:72px minmax(0,1fr) minmax(200px,26%);gap:28px}.recognition-link{display:inline-block;margin-top:20px;font-size:15px}.award-image-space{min-height:230px}.recognition h2{font-size:38px}@media(max-width:900px){.recognition{grid-template-columns:60px minmax(0,1fr) minmax(140px,22%);gap:20px}.recognition h2{font-size:32px}.recognition .eyebrow{font-size:10px;letter-spacing:1.3px}.award-image-space{min-height:180px}}@media(max-width:650px){.recognition{grid-template-columns:1fr}.recognition h2{font-size:34px}.award-image-space:empty{display:none}.recognition-link{margin-top:20px}}
.about-summary{border-top:1px solid var(--line)}.about-summary-layout{display:grid;grid-template-columns:.85fr 1.35fr;gap:8%;align-items:start}.about-summary h2{font-size:41px;line-height:1.2}.about-summary-intro{color:var(--muted);font-size:15px;margin:22px 0}.about-summary .text-link{font-size:15px}.about-summary-copy p{font-size:16px;line-height:1.85;color:#4b6263;margin:0 0 19px}.about-summary-copy p:last-child{margin-bottom:0}.about-summary-copy strong{color:#07545a}@media(max-width:650px){.about-summary-layout{grid-template-columns:1fr;gap:30px}.about-summary h2{font-size:34px}.about-summary-copy p{font-size:15px;line-height:1.8}}
.package-details{padding-left:19px;margin:18px 0 23px;font-size:14px;line-height:1.7}.package-details li{padding-left:3px;margin:7px 0}.package-details li::marker{color:#b96428}.service-card .text-link{font-size:14px}
.detail-breadcrumb{padding:30px 5% 0;font-size:13px;color:var(--muted)}.detail-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.detail-overview{padding:0 5% 55px;display:grid;grid-template-columns:.9fr 1.1fr;gap:7%;align-items:center}.detail-image>img{width:100%;height:340px;object-fit:contain;background:#f0ebe2}.detail-image button{background:none;border:0;border-bottom:1px solid var(--accent);padding:10px 0 3px;margin-top:10px;display:block;font-size:14px}.detail-packages h2,.detail-information h2{font-size:30px;letter-spacing:-.5px}.detail-packages .package-details{font-size:16px;line-height:1.8}.detail-packages .note{font-size:13px}.detail-packages .button{margin-top:10px;font-size:15px}.detail-information{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:40px 5% 55px;background:#f1ece1}.detail-information ul{padding-left:20px;font-size:15px;line-height:1.9;color:#4b6263}.detail-information li{margin:12px 0}.detail-information details{border-bottom:1px solid #d4cbbd;padding:15px 0}.detail-information summary{font-size:15px;cursor:pointer;font-weight:600}.detail-information details p{font-size:14px;color:#4b6263}.detail-related{padding:40px 5% 50px}.detail-related>div:last-child{display:flex;gap:25px;flex-wrap:wrap}.detail-related a{font-size:15px;border-bottom:1px solid var(--accent)}.detail-related a[aria-current]{font-weight:700}.detail-information+.guidelines{padding-top:45px}.work-grid>a.work-card{display:block}.service-card h2{line-height:1.2}@media(max-width:650px){.detail-overview,.detail-information{grid-template-columns:1fr;gap:30px}.detail-image>img{height:275px}.detail-packages h2,.detail-information h2{font-size:28px}.detail-packages .button{font-size:14px;gap:12px}.detail-related>div:last-child{gap:18px}.detail-overview{padding-bottom:35px}}
/* Google rating and attributed review excerpts, verified October 31, 2026. */
.hero-rating{display:flex;align-items:center;flex-wrap:wrap;gap:8px 13px;margin-top:25px;font-size:13px;max-width:430px}.hero-rating .stars{font-size:14px;letter-spacing:2px;color:#ad5c21}.hero-rating strong{color:#07545a}.hero-rating>span:last-child{color:#425b5c}.hero-rating+.hero-meta{margin-top:22px}.google-reviews{padding:65px 5%;text-align:center}.google-reviews>.eyebrow{justify-content:center}.google-reviews h2{font-size:40px}.google-rating-summary{display:flex;align-items:center;justify-content:center;gap:22px;margin:25px auto 10px}.google-rating-summary>strong{font-size:58px;font-weight:600;line-height:1;color:#07545a;letter-spacing:-2px}.google-rating-summary>strong>span{font-size:20px;color:var(--muted);letter-spacing:0}.google-rating-summary p{font-size:15px;margin:6px 0 0}.review-snapshot{font-size:11px;color:var(--muted);margin:15px 0 28px}.review-cards{display:grid;grid-template-columns:1fr 1fr;gap:25px;max-width:1000px;margin:0 auto;text-align:left}.review-cards article{border:1px solid #ded5c7;padding:30px;background:#fffdf7}.review-cards .stars{font-size:13px;letter-spacing:3px}.review-cards blockquote{font-size:23px;line-height:1.5;margin:16px 0 22px}.review-cards cite{display:block;font-size:14px;letter-spacing:0;font-weight:600;color:#07545a}.review-attribution{display:block;color:var(--muted);font-size:12px;margin-top:5px}.google-reviews .actions{margin-top:28px}.google-reviews .text-link{font-size:15px}@media(max-width:650px){.hero-rating{max-width:300px;gap:7px 10px;font-size:12px}.hero-rating .stars{font-size:13px}.hero-rating+.hero-meta{margin-top:18px}.google-reviews{padding:45px 5%}.google-reviews h2{font-size:33px}.google-rating-summary>strong{font-size:48px}.google-rating-summary p{font-size:13px}.review-cards{grid-template-columns:1fr;gap:18px}.review-cards article{padding:24px}.review-cards blockquote{font-size:22px}}
.review-carousel{position:relative;margin:42px auto 0;max-width:1200px;--review-width:min(520px,75vw)}.review-window{overflow:hidden;padding:30px 0 10px}.review-track{display:flex;gap:24px;align-items:stretch;transform:translateX(calc(50% - var(--review-width)/2 - var(--review-index,1)*(var(--review-width) + 24px)));transition:transform .35s ease}.review-slide{position:relative;flex:0 0 var(--review-width);padding:52px 30px 30px;border:1px solid #ddd4c7;border-radius:12px;background:#fffdf8;opacity:.35;transform:scale(.94);transition:opacity .3s,transform .3s;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:330px}.review-slide.is-active{opacity:1;transform:scale(1);border-color:#749c9a;box-shadow:0 8px 25px #173b3e0c}.review-avatar{position:absolute;top:-26px;background:#07545a;color:#fff9ef;border:5px solid var(--paper);width:59px;height:59px;border-radius:50%;display:grid;place-items:center;font-size:15px;font-weight:600}.review-slide h3{font-size:28px;margin-bottom:18px}.review-slide blockquote{font-size:20px;line-height:1.65;margin:20px 0}.review-slide cite{font-family:'DM Sans',sans-serif;letter-spacing:0;font-size:16px;font-weight:600;font-style:normal}.review-slide .review-attribution{font-size:11px;margin-top:8px}.review-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;border:1px solid #c9d2c9;border-radius:50%;width:44px;height:44px;background:#fffdf5;color:#07545a;font-size:34px;line-height:1;display:grid;place-items:center;box-shadow:0 3px 12px #0001}.review-arrow.previous{left:0}.review-arrow.next{right:0}.review-position{font-size:12px;color:var(--muted);margin-top:15px}@media(max-width:650px){.review-carousel{--review-width:78vw;margin-top:30px}.review-slide{padding:44px 22px 25px;min-height:350px}.review-slide h3{font-size:24px}.review-slide blockquote{font-size:18px}.review-arrow{width:35px;height:35px;font-size:28px}.review-arrow.previous{left:-5px}.review-arrow.next{right:-5px}}
/* Bring reviews close to the award and highlight the community label. */
.recognition{margin-bottom:0}.recognition+.google-reviews{padding-top:30px}.google-reviews>.eyebrow{display:inline-flex;align-items:center;gap:15px;padding:11px 20px;background:#07545a;color:#fff8ed;font-size:17px;font-weight:700;letter-spacing:1.8px;line-height:1.4;margin-bottom:24px}.google-reviews>.eyebrow:before{width:24px;background:#efa564}.google-rating-summary{margin-top:22px}@media(max-width:650px){.recognition{margin-bottom:0}.recognition+.google-reviews{padding-top:25px}.google-reviews>.eyebrow{font-size:14px;padding:10px 17px;letter-spacing:1.5px}}

/* Matching medium-size highlighted section headings. */
.recognition .eyebrow,.google-reviews>.eyebrow{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:700;letter-spacing:1.5px;line-height:1.4;padding:11px 18px;gap:14px}
.recognition .eyebrow:before,.google-reviews>.eyebrow:before{width:24px;flex-shrink:0}
@media(max-width:650px){.recognition .eyebrow,.google-reviews>.eyebrow{font-size:12px;letter-spacing:1px;padding:10px 14px;gap:10px}}

.recognition .award-feature {
  justify-self: center;
  width: min(100%, 280px);
}
.award-open {
  display: grid;
  width: 100%;
  gap: 6px;
  padding: 0 0 12px;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: center;
}
.award-open:hover strong { text-decoration: underline; }
.award-feature img { width: 100%; border-radius: 8px; }
.community-awards {
  grid-column: 1 / -1;
  border-top: 1px solid var(--line);
  padding-top: 28px;
  text-align: center;
}
.community-awards h3 { font-size: clamp(25px, 4vw, 36px); color: #07545a; }
.recognition .community-awards > p { margin: 8px auto 22px; }
.award-grid {
  display: grid;
  grid-template-columns: 1.2fr repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 0;
  margin: 0;
  list-style: none;
}
.award-card {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fffdf8;
}
.award-card:first-child { border: 2px solid #07545a; }
.award-card img {
  width: 100%;
  height: clamp(120px, 16vw, 210px);
  object-fit: contain;
  padding: 0;
  border-radius: 7px;
  background: #f3e9d9;
}
.award-year { color: #07545a; font-weight: 700; }
.award-card strong { font-size: 14px; padding: 0 5px; }
@media (max-width: 650px) {
  .award-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .award-card:first-child { grid-column: 1 / -1; }
  .award-card:first-child img { height: 195px; }
  .recognition .award-feature { width: min(100%, 230px); }
}

.recognition .award-feature-photos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  gap: 12px;
}
.award-feature-photos button { align-content: start; }
.award-feature-photos img {
  height: clamp(120px, 15vw, 200px);
  object-fit: contain;
  background: #f3e9d9;
}
.award-feature-photos strong, .award-spotlight strong { font-size: 13px; }
.award-spotlight {
  display: grid;
  grid-template-columns: 1fr minmax(125px, 200px);
  align-items: center;
  gap: 20px;
  text-align: left;
}
.award-spotlight img { width: 100%; border-radius: 8px; }
@media (max-width: 650px) {
  .award-feature-photos img { height: 160px; }
}
