:root{--navy:#142c3b;--teal:#087f91;--sky:#eaf7fa;--gold:#c6a15d;--muted:#58707b}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--navy);line-height:1.65}a{text-decoration:none;color:inherit}header{background:white;position:sticky;top:0;z-index:5;box-shadow:0 2px 20px #142c3b12}.nav{max-width:1180px;margin:auto;padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font-weight:800;letter-spacing:.04em;line-height:1.2}.brand small{display:block;font-weight:400;color:var(--teal);font-size:11px;letter-spacing:.15em}.links{display:flex;gap:22px;align-items:center;font-size:14px;font-weight:600}.btn{display:inline-block;background:var(--teal);color:white;border-radius:3px;padding:12px 22px;font-weight:700}.btn.gold{background:var(--gold);color:var(--navy)}.btn.outline{background:transparent;border:1px solid var(--teal);color:var(--teal)}.hero{min-height:570px;display:grid;grid-template-columns:1.1fr .9fr;background:var(--sky)}.hero .copy{padding:90px max(28px,calc((100vw - 1180px)/2));padding-right:50px;display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;color:var(--teal);letter-spacing:.22em;font-size:12px;font-weight:800}h1,h2,h3{font-family:Georgia,serif;line-height:1.16}h1{font-size:clamp(40px,5vw,70px);margin:16px 0}h2{font-size:clamp(30px,3.5vw,46px);margin:10px 0 22px}h3{font-size:25px;margin:12px 0}.lead{font-size:18px;color:#425d69;max-width:600px}.hero img{width:100%;height:100%;object-fit:cover;min-height:420px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.wrap{max-width:1180px;margin:auto;padding:80px 22px}.center{text-align:center;max-width:720px;margin:0 auto 40px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cards.two{grid-template-columns:repeat(2,1fr)}.card{border:1px solid #d9e7ea;background:white;overflow:hidden}.card img{width:100%;height:250px;object-fit:cover}.card .inside{padding:28px}.card p{color:var(--muted)}.soft{background:#f2f9fa}.dark{background:var(--navy);color:white}.dark p{color:#d3e3e9}.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.split img{width:100%;height:420px;object-fit:cover}.pill{display:inline-block;background:#d8eff2;color:#087f91;padding:7px 12px;margin:4px;font-size:13px;font-weight:700}.cta{text-align:center;padding:75px 20px;background:var(--navy);color:white}.cta p{color:#d6e7ea}footer{background:#0e202a;color:#e4eef1;padding:36px 22px;font-size:14px}footer .foot{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}footer a{color:#aee3e9}.note{font-size:12px;color:#6b818a}.contact{display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact .panel{padding:28px;background:var(--sky)}@media(max-width:760px){.nav{align-items:flex-start;flex-direction:column}.links{flex-wrap:wrap;gap:12px}.hero{grid-template-columns:1fr}.hero .copy{padding:56px 24px}.hero img{height:320px;min-height:0}.wrap{padding:55px 20px}.cards,.cards.two,.split,.contact{grid-template-columns:1fr}.split img{height:300px}.card img{height:220px}}
.social-strip{background:#eaf7fa;padding:58px 22px}.social-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr 1.2fr;gap:30px;align-items:center}.social-inner h2{font-size:32px}.social-icons{display:flex;gap:10px;flex-wrap:wrap}.social-link{display:flex;gap:9px;align-items:center;background:white;border:1px solid #d9e7ea;border-radius:5px;padding:11px 13px;font-size:13px;font-weight:700}.social-link img{width:19px;height:19px}.review-note{text-align:center;font-size:12px;color:#58707b;margin-top:18px}@media(max-width:760px){.social-inner{grid-template-columns:1fr}}

.brand-with-logo{display:flex;align-items:center;gap:12px}.brand-with-logo img{width:76px;height:76px;object-fit:contain;flex-shrink:0}.brand-copy{display:flex;flex-direction:column;gap:4px}.brand-copy>span{font-size:19px}.brand-copy small{max-width:350px;font-size:10px;line-height:1.45;color:#087f91;letter-spacing:.075em}@media(max-width:760px){.brand-with-logo img{width:62px;height:62px}.brand-copy>span{font-size:17px}.brand-copy small{font-size:9px;max-width:240px}}

.nav{max-width:1320px}.links{gap:14px;flex-wrap:wrap}.links>a{white-space:nowrap}.links .btn{padding:10px 14px}.interior-hero{background:linear-gradient(120deg,#eaf7fa,#f8fbfb);border-bottom:1px solid #d9e7ea}.interior-hero .wrap{padding-top:70px;padding-bottom:70px}.interior-hero h1{max-width:900px}.about-logo{max-height:440px;object-fit:contain!important}.gallery-placeholder{min-height:235px;background:linear-gradient(145deg,#dceff3,#f9fbfa);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;padding:25px;border-bottom:1px solid #d9e7ea}.gallery-placeholder span{font:40px Georgia,serif;color:#c6a15d}.gallery-placeholder strong{font:24px Georgia,serif;color:#142c3b}.gallery-placeholder small{color:#58707b}.gallery-wide{min-height:190px;border:1px solid #d9e7ea}.price-pending{font-weight:700;color:#087f91!important}@media(max-width:1000px){.nav{align-items:flex-start;flex-direction:column}.links{gap:12px}}@media(max-width:760px){.interior-hero .wrap{padding-top:50px;padding-bottom:50px}.links{font-size:12px}.links .btn{padding:9px 11px}}

.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.photo-item{margin:0;border:1px solid #d9e7ea;background:white;overflow:hidden}.photo-item img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;transition:transform .2s}.photo-item img:hover{transform:scale(1.035)}.photo-item figcaption{padding:13px 14px;font-size:13px;color:#425d69}@media(max-width:900px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.photo-grid{gap:10px}.photo-item figcaption{font-size:11px;padding:10px}}

.price-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.price-group{border:1px solid #d9e7ea;background:white;padding:25px}.price-group h3{font-size:24px;border-bottom:2px solid #eaf7fa;padding-bottom:14px}.price-entry{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e9eff1;align-items:start}.price-entry:last-child{border:0}.price-entry strong{font-size:14px}.price-entry p{font-size:12px;color:#58707b;margin:2px 0 0}.price-entry>span{white-space:nowrap;font-weight:700;color:#087f91;font-size:14px}@media(max-width:760px){.price-groups{grid-template-columns:1fr}.price-group{padding:19px}}

/* Recognizable platform-brand social icons and touch-friendly profile links */
.social-icons{gap:12px}.social-link{border-radius:10px;padding:10px 14px;min-height:46px;transition:transform .15s ease,box-shadow .15s ease}.social-link:hover,.social-link:focus-visible{transform:translateY(-2px);box-shadow:0 5px 15px #142c3b20}.social-link img{width:22px;height:22px;flex-shrink:0}.social-link[href*="instagram.com"]{background:linear-gradient(120deg,#833ab4,#c13584,#e1306c,#f77737);color:#fff;border-color:transparent}.social-link[href*="facebook.com"]{background:#1877f2;color:#fff;border-color:#1877f2}.social-link[href*="tiktok.com"]{background:#101010;color:#fff;border-color:#101010}.social-link[href*="youtube.com"]{background:#ff0033;color:#fff;border-color:#ff0033}.social-link[href*="linkedin.com"]{background:#0a66c2;color:#fff;border-color:#0a66c2}.social-link[href*="g.co"],.social-link[href*="maps.app.goo.gl"]{background:#fff;color:#202124;border-color:#dadce0}.social-link:not([href*="g.co"]):not([href*="maps.app.goo.gl"]) img{filter:brightness(0) invert(1)}

/* Responsive accessible navigation */
.mobile-menu-toggle{display:none;align-items:center;gap:8px;border:1px solid #bcd7dc;background:white;color:var(--navy);border-radius:7px;font-size:16px;font-weight:700;padding:9px 13px;cursor:pointer}
@media(max-width:760px){.nav{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:10px 16px}.brand-with-logo{max-width:calc(100% - 110px)}.brand-with-logo img{width:48px;height:48px}.brand-copy>span{font-size:14px}.brand-copy small{font-size:8px;letter-spacing:0;max-width:210px}.mobile-menu-toggle{display:inline-flex}.links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 12px;border-top:1px solid #e5eff1}.links.is-open{display:flex}.links>a{display:block;padding:12px 8px;font-size:15px;border-bottom:1px solid #edf2f3}.links>a.btn{text-align:center;margin-top:8px}.hero .copy{padding:45px 22px}.hero img{min-height:280px}.wrap{padding-top:48px;padding-bottom:48px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-item figcaption{font-size:12px;padding:8px}.social-link{min-height:46px}}
@media(max-width:370px){.brand-copy small{display:none}.photo-grid{grid-template-columns:1fr}}

/* Readability and accessible contrast refinements */
:root{--teal:#076b7b;--muted:#4d626b}
.eyebrow{color:#076b7b}.photo-item figcaption{font-size:14px}.review-date{color:#4d626b;font-size:13px}
@media(max-width:760px){.brand-copy small{font-size:10px;line-height:1.3;letter-spacing:0}.photo-item figcaption{font-size:13px}.eyebrow{font-size:13px}.review-date{font-size:13px}}

/* In-page gallery lightbox, with native Escape-to-close and focus management */
.gallery-lightbox{width:min(94vw,1080px);max-width:1080px;max-height:94vh;border:0;border-radius:12px;padding:12px;background:#fff;color:#142c3b;box-shadow:0 20px 70px #0005}.gallery-lightbox::backdrop{background:#071821dd}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:4px 4px 12px}.lightbox-caption{font-size:15px;font-weight:600}.lightbox-close{border:0;background:#eaf7fa;color:#142c3b;border-radius:50%;width:42px;height:42px;font-size:29px;line-height:1;cursor:pointer;flex-shrink:0}.lightbox-close:focus-visible{outline:3px solid #076b7b;outline-offset:2px}.lightbox-image{display:block;max-width:100%;width:auto;max-height:calc(94vh - 90px);object-fit:contain;margin:auto}

.story-content{max-width:780px;margin:24px auto 0;font-size:17px;line-height:1.8}.story-content p{margin:0 0 17px}.story-content strong{color:#076b7b;font-size:20px}

.review-card .inside{height:100%}.review-stars{display:block;color:#b77908;font-size:1.35rem;letter-spacing:.13em;margin-bottom:12px}.review-card .note{color:#465563;font-size:.85rem}.review-note{color:#465563;text-align:center;font-size:.92rem;margin-top:22px}

/* Pre-final mobile polish */
@media(max-width:760px){.photo-grid{gap:16px}.photo-item img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.review-card .note,.review-note{color:#405864}.interior-hero .wrap{padding-top:48px;padding-bottom:48px}.about-logo{max-width:min(88vw,430px);height:auto}}

/* Gallery: preserve full images and collection artwork labels */
.photo-item img{object-fit:contain;background:#f4f6f7}.collection-artwork .photo-item img{object-fit:contain}.review-card .note{color:#405864}

/* Final preview refinements: no cropping of original work on any viewport */
.photo-item img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;object-position:center;background:#f5f7f8}
@media(max-width:760px){.photo-item img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain}}
.collection-artwork .photo-item img{aspect-ratio:auto;max-height:420px;object-fit:contain}
.footer-copyright{max-width:1180px;margin:18px auto 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.18);font-size:12px;opacity:.85}

/* Individual quotation links in the service price list */
.quote-price{display:inline-block;max-width:180px;text-align:right;font-weight:700;font-size:13px;line-height:1.45;color:#087f91;text-decoration:underline;text-underline-offset:3px}
.quote-price:hover,.quote-price:focus-visible{color:#064e60}
@media(max-width:520px){.quote-price{max-width:140px;font-size:12px}}

/* Comfortable touch targets for quote enquiries */
.quote-price{display:inline-flex;align-items:center;justify-content:flex-end;min-height:44px;padding:8px 0 8px 10px;font-size:14px}
@media(max-width:520px){.quote-price{font-size:13px;min-height:44px}}

/* Completed orders: preserve full garments and clear the sticky header on arrival. */
.completed-order{scroll-margin-top:190px}.completed-project-grid .photo-item img{height:auto;aspect-ratio:4/5;object-fit:contain;background:#f5f7f7}.completed-project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:760px){.completed-order{scroll-margin-top:210px}.completed-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:370px){.completed-project-grid{grid-template-columns:1fr}}

/* Arrival guide: keep building landmarks and entrance arrows visible. */
.location-guide{scroll-margin-top:150px}.location-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.location-grid .photo-item img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;background:#f5f7f7}@media(max-width:760px){.location-grid{grid-template-columns:1fr}.location-grid .photo-item img{aspect-ratio:auto}.location-guide{scroll-margin-top:180px}}

/* Four distinct arrival views, including the main-street minimart landmark. */
.location-grid-landmarks{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){.location-grid-landmarks{grid-template-columns:1fr}}
