/* Comfortable text and touch controls on desktop and mobile. */
.realisations-section .realisations-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}@media(max-width:900px){.realisations-section .realisations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.realisations-section .realisations-grid{grid-template-columns:1fr}}
.realisations-section{padding:10px 0 55px}.realisations-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:25px}.realisations-heading h2{font-size:32px;letter-spacing:-1px;margin:0}.realisations-heading .eyebrow{margin-bottom:12px}.realisations-heading>p{color:#71848d;font-size:16px;line-height:1.6;margin:0}.realisations-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.realisation-card{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.realisation-image{position:relative;display:flex;align-items:center;justify-content:center;padding:14px 14px 42px;background:#edf2f2;text-decoration:none;min-height:390px}.realisation-image img{display:block;width:100%;height:350px;object-fit:contain;transition:transform .2s}.realisation-image:hover img{transform:scale(1.015)}.realisation-image>span{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:var(--teal);font-size:13px;font-weight:600}.realisation-caption{padding:23px}.realisation-category{font-size:12px;font-weight:650;letter-spacing:1.3px;color:var(--teal)}.realisation-caption h3{font-size:23px;letter-spacing:-.6px;margin:9px 0}.realisation-caption p{font-size:16px;line-height:1.6;color:#73858e;margin:0}@media(max-width:900px){.realisations-grid{gap:25px}.realisations-heading{align-items:start}.realisation-image img{height:300px}.realisation-image{min-height:350px}}@media(max-width:550px){.realisations-section{padding:10px 0 34px}.realisations-heading{display:block}.realisations-heading h2{font-size:28px}.realisations-heading>p{margin-top:12px;font-size:16px}.realisations-grid{grid-template-columns:1fr;gap:20px}.realisation-caption{padding:20px}.realisation-image img{height:330px}.realisation-image{min-height:380px}}
.appointment-section{border-top:1px solid var(--line);padding-top:20px;margin-top:18px}.appointment-section h3{font-size:18px;margin:22px 0 12px}.appointment-help,.appointment-feedback{font-size:14px;line-height:1.6}.appointment-help{color:var(--muted);margin-bottom:18px}.appointment-feedback{color:var(--teal);margin-bottom:0}.summary-edit{border:1px solid var(--line);background:white;color:var(--teal);border-radius:8px;min-height:44px;font-size:14px;padding:10px 16px;width:100%}[hidden]{display:none!important}
.price-box{background:#eef7f5;border:1px solid #d3e9e5;border-radius:9px;padding:15px 17px;margin:0 0 17px}.price-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.price-top>span{font-size:13px;color:#647d81}.price-top strong{color:var(--teal);font-size:22px;letter-spacing:-.6px;text-align:right}.price-box p{font-size:12px;line-height:1.6;color:#728b8d;margin:9px 0 0}.quote-total{border-top:1px solid var(--line);margin:16px 0 0;padding:14px 0;font-size:14px}.quote-total strong{font-size:20px;color:var(--teal)}.quote-total small{display:block;font-size:12px;line-height:1.6;color:#768d91;margin-top:6px}.cart-price{display:block;color:var(--teal);font-size:12px;margin-top:3px}
body{font-size:16px}.intro>p:last-child{font-size:16px}.header-link{font-size:14px}.demo-bar,.demo-bar span{font-size:12px}.eyebrow{font-size:12px}.section-label,.section-label span+span{font-size:12px}.free-tag{font-size:12px!important}.card-intro{font-size:14px}.client-toggle span{font-size:14px}.field{font-size:14px}.field input,.field select{font-size:14px;min-height:46px}.details summary,.issues legend{font-size:14px}.check{font-size:13px;min-height:24px;line-height:1.4}.help{font-size:12px}.add-button{font-size:14px}.add-line{flex-wrap:wrap;gap:7px}#saved-count{font-size:12px}.cart-item{font-size:14px}.cart-item button{font-size:12px;min-height:28px}.form-divider span{font-size:12px}.photo-drop strong{font-size:14px}.photo-drop small,.photo-help{font-size:12px}.photo-preview{width:72px;height:72px}.photo-preview button{width:26px;height:26px}.error{font-size:14px}.primary{font-size:15px;min-height:54px}.demo-note{font-size:12px}.tile-overlay small{font-size:12px}.tile-overlay em{font-size:14px;line-height:1.5}.pro-callout strong{font-size:14px}.pro-callout p{font-size:12px;line-height:1.5}.pro-callout button{font-size:13px;min-height:40px}.reassurance{font-size:12px;flex-wrap:wrap}.map-bottom strong{font-size:14px}.map-bottom p,.google-link{font-size:13px}.reviews-card>p:not(.stars){font-size:16px}.review-link{font-size:14px;min-height:46px}.photos-link{font-size:13px}.review-note{font-size:12px;line-height:1.5}footer p,footer>span{font-size:12px}.summary-notice{font-size:14px}.summary-section dl{font-size:14px}.service-tile{height:300px}#service-note:empty{display:none}.photo-drop:has(+input:focus-visible){outline:3px solid var(--teal);outline-offset:4px}
@media(max-width:900px){.service-tile{height:260px}.tile-overlay{padding:20px 14px}.tile-overlay em{font-size:12px}.intro>p:last-child{font-size:16px}.tile-overlay{display:flex}.tile-overlay strong{font-size:22px}.header-link{font-size:12px}.pro-callout p{font-size:12px}}
@media(max-width:550px){.demo-bar,.demo-bar span{font-size:10px;letter-spacing:0}.demo-bar span{margin-left:6px}.brand img{width:165px}.header-link{font-size:12px;max-width:110px}.services{grid-template-columns:1fr;gap:12px}.service-tile{height:195px}.tile-overlay{padding:20px}.tile-overlay strong{font-size:26px}.tile-overlay em{font-size:13px}.tile-arrow{width:30px;height:30px;top:16px;right:16px}.section-label,.section-label span+span{font-size:11px}.field{font-size:14px}.field input,.field select{font-size:16px}.fields-grid{grid-template-columns:1fr}.field{margin-bottom:16px}.pro-callout{flex-wrap:wrap}.pro-callout strong{font-size:14px}.pro-callout button{font-size:13px}.pro-callout p{font-size:12px}.reassurance{font-size:12px}.map-bottom{display:block}.google-link{display:inline-block;margin-top:12px}.map-bottom p{font-size:13px}.photo-drop small{font-size:12px}.eyebrow{font-size:11px}}
