/* Editorial finishing and interaction details. */
.navigation-photo{width:100%;aspect-ratio:1.9;object-fit:cover;margin:0 0 6px;filter:saturate(.82);transition:filter .25s}
.service-navigation-panel>a{border-top:0;padding-top:0;gap:12px}
.service-navigation-panel>a:hover .navigation-photo{filter:saturate(1)}
.service-navigation-panel>a>strong{font-size:23px;min-height:58px}
.service-navigation-panel>a>span{width:max-content;border-bottom:1px solid #b5aa96;padding-bottom:4px}
.service-navigation-panel{box-shadow:0 18px 26px #21212618}
#mobile-menu{max-height:calc(100dvh - 96px);overflow-y:auto;overscroll-behavior:contain}
#mobile-menu .mobile-service-links{padding:8px 0 18px;border-bottom:1px solid #d6d3cc;display:grid;grid-template-columns:1fr 1fr;gap:16px}
#mobile-menu .mobile-service-links a{display:flex;gap:14px;align-items:center;border:0;font-size:15px;line-height:1.4;padding:0;min-height:60px}
.mobile-service-links img{width:72px;height:54px;object-fit:cover;flex-shrink:0}
.mobile-service-links span{max-width:180px}
.portfolio-mobile-photo{display:none}
.company-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:48px;border-top:1px solid #cfc7ba;padding-top:28px}
.company-facts>div+div{border-left:1px solid #d7cebf;padding-left:32px}
.company-facts span{display:block;font-size:10px;line-height:1.5;letter-spacing:.09em;color:#7f725f}
.company-facts strong{display:block;font:500 clamp(25px,2.3vw,34px)/1.25 var(--display);letter-spacing:-.025em;color:#343a3c;margin-top:12px}
.portfolio-visual{isolation:isolate}.portfolio-visual>img,.hero-photo>img{will-change:auto}
.portfolio-row[data-active] .portfolio-open{color:#8e2553;border-color:#8e2553}
.portfolio-row .portfolio-open{transition:color .2s,border-color .2s}
.related-photo{display:block;width:100%;aspect-ratio:1.85;object-fit:cover;margin-bottom:4px;filter:saturate(.85);transition:filter .25s}
.related-services>div:last-child>a{border-top:0;padding-top:0}
.related-services>div:last-child>a:hover .related-photo{filter:saturate(1)}
.related-services a>small{width:max-content;border-bottom:1px solid #b7a994;padding-bottom:4px}
.page-sections a[aria-current=true]{color:#8e2553;border-bottom-color:#8e2553}
.enquiry-progress{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:24px 40px 0;list-style:none;gap:24px}
.enquiry-progress li{position:relative;font-size:12px;line-height:1.5;color:#8a8a83;border-top:2px solid #d5d2ca;padding-top:13px;display:flex;gap:11px;align-items:center}
.enquiry-progress li>span{font-size:10px;color:#8b8173}
.enquiry-progress li[data-state=current]{border-color:#8e2553;color:#8e2553;font-weight:500}
.enquiry-progress li[data-state=current]>span{color:#8e2553}
.enquiry-progress li[data-state=complete]{border-color:#b99a6a;color:#494e4b}
.enquiry-inner{padding-top:32px;align-items:start}
.enquiry-context{border-left:2px solid #c79a52;padding:0 0 0 16px;margin-bottom:28px}
.enquiry-context>span{display:block;font-size:10px;line-height:1.5;letter-spacing:.065em;color:#7d7668}
.enquiry-context>strong{font:500 21px/1.35 var(--display);letter-spacing:-.02em;display:block;margin-top:8px}
.review-summary{background:#eeebe3;padding:20px 24px;margin-top:28px;border-top:1px solid #d0c4af}
.review-label{font-size:10px;line-height:1.5;letter-spacing:.075em;color:#8c7657}
.review-summary dl{margin:16px 0 0}
.review-summary dl>div{display:grid;grid-template-columns:95px 1fr;gap:20px;padding:10px 0;border-top:1px solid #d8d1c5;font-size:13px;line-height:1.6}
.review-summary dt{color:#797263}.review-summary dd{margin:0;color:#363d3e;overflow-wrap:anywhere}
#enquiry-result:not(:empty){padding:24px;background:#eee9df;border-left:2px solid #c79a52;margin-top:28px}
#enquiry-result>strong{font:500 23px/1.3 var(--display);letter-spacing:-.025em;display:block}
#enquiry-result>p{font-size:14px;line-height:1.7;color:#66655b;margin-top:14px}
#enquiry-result>a{display:block;background:#8e2553;color:#fff;text-decoration:none;font-size:14px;line-height:1.5;padding:16px 20px;margin-top:20px;text-align:center}
#enquiry-result>a:hover{background:#63213d}
button:disabled{cursor:default;opacity:.55}
@media(hover:hover){.flagship-actions>button,.primary-button,.solid-button,.contact-hero-button{transition:background .2s,box-shadow .2s}.flagship-actions>button:hover,.contact-hero-button:hover{box-shadow:0 5px 14px #10151c15}}
@media(max-width:1000px){#mobile-menu{max-height:calc(100dvh - 96px)}}
@media(max-width:700px){
 #mobile-menu{max-height:calc(100dvh - 80px)}
 #mobile-menu .mobile-service-links{grid-template-columns:1fr;gap:16px;padding:8px 0 24px}
 #mobile-menu .mobile-service-links a{font-size:15px;min-height:54px;gap:16px;padding:0}
 .mobile-service-links img{width:76px;height:54px}.mobile-service-links span{max-width:none}
 .company-facts{gap:16px;margin-top:32px;padding-top:24px;grid-template-columns:1fr 1fr}
 .company-facts>div+div{padding-left:20px}.company-facts>div:last-child{grid-column:1/-1;border-left:0;border-top:1px solid #d7cebf;padding-left:0;padding-top:20px;margin-top:4px}
 .company-facts span{font-size:10px;letter-spacing:.06em}.company-facts strong{font-size:27px;margin-top:10px}
 .portfolio-row{grid-template-columns:76px 1fr;gap:10px 18px;padding:24px 0;align-items:start}
 .portfolio-mobile-photo{display:block;width:76px;height:100px;object-fit:cover;grid-column:1;grid-row:1/4;margin-top:4px}
 .portfolio-number{grid-column:2;font-size:10px;padding-top:0;line-height:1.5}.portfolio-row>div{grid-column:2}.portfolio-row h3{font-size:23px;line-height:1.25;letter-spacing:-.025em}.portfolio-row p{font-size:13px;line-height:1.6;margin-top:10px}.portfolio-open{grid-column:2;font-size:12px;margin-top:2px}
 .portfolio-row:before{left:-12px}.portfolio-row[data-active]:before{transform:scaleY(0)}.portfolio-row:focus-visible:before{transform:scaleY(1)}
 .related-services>div:last-child>a{margin-bottom:30px;padding:0 0 20px;border-bottom:1px solid #cfc7ba;gap:14px}.related-photo{aspect-ratio:1.9;margin-bottom:2px}.related-services a>strong{font-size:25px;line-height:1.25}
 .enquiry-progress{gap:16px;padding:20px 20px 0}.enquiry-progress li{font-size:11px;padding-top:10px;gap:7px;line-height:1.5}.enquiry-progress li>span{font-size:9px}
 .enquiry-inner{padding-top:28px}.enquiry-context{margin-bottom:24px;padding-left:14px}.enquiry-context>span{font-size:10px}.enquiry-context>strong{font-size:19px;line-height:1.35;margin-top:7px}
 .review-summary{padding:20px;margin-top:24px}.review-summary dl>div{grid-template-columns:75px 1fr;gap:14px;font-size:13px;line-height:1.6}.review-summary dl{margin-top:14px}
 #enquiry-result:not(:empty){padding:20px;margin-top:24px}#enquiry-result>strong{font-size:21px}#enquiry-result>p{font-size:14px}#enquiry-result>a{font-size:14px;line-height:1.5;padding:15px 16px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.navigation-photo,.related-photo{transition:none}}
.dialog-top{position:sticky;top:0;z-index:5;background:var(--paper)}
.enquiry-heading{position:sticky;top:96px}
@media(max-width:700px){.enquiry-heading{position:static}}
@media(max-width:700px){.portfolio-row[data-active] h3{color:var(--ink)}.portfolio-row:focus-visible h3{color:#8e2553}}
.navigation-photo,.related-photo{height:auto}
