.rp-gallery,.rp-transformation{--rp-blue:var(--brand,#102d50);--rp-ink:var(--ink,#f3f5f8);--rp-muted:var(--muted,#a5afc2);--rp-line:var(--line,#a6b9dc2b);color:var(--rp-ink)}.rp-gallery{background:linear-gradient(180deg, #0d1422 0%, var(--paper,#090d16) 100%);border-top:1px solid var(--rp-line)}.rp-gallery .section-head,.rp-transformation .section-head{gap:32px}.rp-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;display:grid}.rp-project{min-width:0}.rp-project-photo,.rp-comparison-photo{isolation:isolate;border:1px solid var(--rp-line);width:100%;color:var(--rp-ink);cursor:zoom-in;background:#070b12;border-radius:20px;padding:0;transition:border-color .25s,box-shadow .25s;display:block;position:relative;overflow:hidden}.rp-project-photo{aspect-ratio:4/5;max-height:660px}.rp-project-photo img,.rp-comparison-photo img{object-fit:scale-down;width:100%;height:100%;display:block}.rp-project-photo:hover,.rp-comparison-photo:hover{border-color:#d1ad5880;box-shadow:0 16px 50px #0003}.rp-zoom{color:#f3f5f8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#090f1bdb;border:1px solid #d1ad5859;border-radius:50%;place-items:center;width:44px;height:44px;transition:background .2s,border-color .2s,transform .2s;display:grid;position:absolute;bottom:16px;right:16px}.rp-project-photo:hover .rp-zoom,.rp-comparison-photo:hover .rp-zoom{background:var(--rp-blue);border-color:var(--accent);transform:rotate(90deg)}.rp-photo-count{letter-spacing:.02em;color:#f3f5f8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#090f1bdb;border:1px solid #d1ad584d;border-radius:20px;padding:6px 12px;font-size:11px;position:absolute;bottom:21px;left:16px}.rp-project-caption{padding:26px 4px 0}.rp-project-service{letter-spacing:.11em;text-transform:uppercase;color:var(--accent,#d1ad58);margin-bottom:11px;font-size:11px;font-weight:600;line-height:1.7}.rp-project-caption h3{letter-spacing:-.035em;max-width:520px;font-family:inherit;font-size:clamp(23px,2.2vw,31px);font-weight:600;line-height:1.2}.rp-project-caption h3 button{color:inherit;font:inherit;text-align:left;line-height:inherit;cursor:pointer;background:0 0;padding:0}.rp-project-description{color:var(--rp-muted);margin-top:16px;font-size:14px;line-height:1.85}.rp-project-links{border-top:1px solid var(--rp-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:13px;margin-top:23px;padding-top:16px;display:flex}.rp-project-links .text-link{gap:10px;font-size:13px}.rp-source-link{min-height:44px;color:var(--rp-muted);text-underline-offset:4px;align-items:center;gap:5px;font-size:12px;text-decoration:underline;display:inline-flex}.rp-source-link:hover{color:var(--rp-ink)}.rp-gallery-full .rp-project-grid{gap:56px 36px}.rp-gallery-full .rp-project-caption h3{font-size:clamp(25px,2.4vw,34px)}.rp-transformation{background:var(--paper,#090d16)}.rp-intro{max-width:345px;color:var(--rp-muted);font-size:14px;line-height:1.8}.rp-comparison-choices{flex-wrap:wrap;gap:9px;margin:0 0 28px;display:flex}.rp-comparison-choices button{min-height:46px;color:var(--rp-muted);border:1px solid var(--rp-line);background:var(--surface,#111827);cursor:pointer;border-radius:14px;padding:11px 18px;font-size:12px;line-height:1.4;transition:color .2s,background .2s,border-color .2s}.rp-comparison-choices button:hover{color:var(--rp-ink);background:var(--surface-raised,#172133);border-color:#d1ad5866}.rp-comparison-choices button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.rp-comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.rp-comparison-grid figure{min-width:0;margin:0}.rp-comparison-grid figcaption{justify-content:space-between;align-items:center;gap:10px;padding:0 4px 15px;display:flex}.rp-comparison-grid figcaption>span{letter-spacing:.11em;text-transform:uppercase;color:var(--accent,#d1ad58);font-size:12px;font-weight:600}.rp-comparison-grid figcaption small{color:var(--rp-muted);font-size:12px}.rp-comparison-photo{aspect-ratio:4/5;max-height:650px}.rp-comparison-foot{justify-content:space-between;align-items:center;gap:28px;padding-top:26px;display:flex}.rp-comparison-foot h3{letter-spacing:-.035em;font-family:inherit;font-size:clamp(22px,2.2vw,30px);font-weight:600;line-height:1.25}.rp-comparison-foot p{color:var(--rp-muted);margin-top:10px;font-size:12px;line-height:1.75}.rp-comparison-foot .text-link{flex-shrink:0;font-size:13px}.rp-lightbox{box-sizing:border-box;color:#f3f5f8;overscroll-behavior:contain;background:#111827;border:1px solid #a6b9dc33;border-radius:20px;width:min(1160px,96vw);max-width:96vw;max-height:94svh;margin:auto;padding:0;overflow:auto;box-shadow:0 30px 100px #00000080}.rp-lightbox::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#03070eeb}.rp-lightbox-top{border-bottom:1px solid #a6b9dc2b;justify-content:space-between;align-items:center;gap:18px;padding:12px 17px 12px 24px;display:flex}.rp-lightbox-top p{font-size:14px;font-weight:500;line-height:1.5}.rp-icon-button{color:#f3f5f8;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;padding:0;transition:background .2s,border-color .2s;display:grid}.rp-icon-button:hover{background:#1c2c48;border-color:#d1ad584d}.rp-icon-button:disabled{opacity:.35;cursor:default}.rp-lightbox-figure{margin:0}.rp-lightbox-image{background:#060910;width:100%;height:min(66svh,720px)}.rp-lightbox-image img{object-fit:scale-down;width:100%;height:100%;display:block}.rp-lightbox-figure figcaption{text-align:center;color:#c7d0e0;justify-content:center;align-items:flex-start;gap:12px;padding:17px 25px 6px;font-size:13px;line-height:1.65;display:flex}.rp-photo-label{background:var(--brand);color:var(--accent-light);border:1px solid var(--accent-line);border-radius:8px;flex-shrink:0;padding:3px 9px;font-size:11px;line-height:1.5}.rp-lightbox-controls{justify-content:center;align-items:center;gap:28px;padding:5px 20px 12px;display:flex}.rp-lightbox-controls p{text-align:center;min-width:45px;font-size:13px}.rp-lightbox-controls p span{color:#a5afc2}.rp-project button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.rp-comparison-photo:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.rp-comparison-choices button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.rp-lightbox button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media (max-width:1050px){.rp-project-grid{gap:26px}.rp-project-links{flex-direction:column;align-items:flex-start;gap:6px}.rp-gallery-full .rp-project-grid{gap:42px 26px}}@media (max-width:760px){.rp-gallery .section-head,.rp-transformation .section-head{gap:22px}.rp-project-grid,.rp-gallery-full .rp-project-grid{grid-template-columns:minmax(0,1fr);gap:42px}.rp-project-photo{aspect-ratio:4/5;max-height:680px}.rp-project-caption{padding:21px 2px 0}.rp-project-caption h3,.rp-gallery-full .rp-project-caption h3{font-size:27px;line-height:1.2}.rp-project-service{letter-spacing:.08em;margin-bottom:9px;font-size:11px}.rp-project-links{flex-direction:row;align-items:center;gap:10px;margin-top:20px;padding-top:14px}.rp-project-links .text-link{font-size:13px}.rp-project-description{font-size:14px;line-height:1.8}.rp-intro{max-width:100%;font-size:14px}.rp-comparison-choices{gap:8px;margin-bottom:23px}.rp-comparison-choices button{border-radius:12px;min-height:44px;padding:10px 13px;font-size:11px}.rp-comparison-grid{gap:10px}.rp-comparison-grid figcaption{flex-direction:column;align-items:flex-start;gap:4px;padding:0 2px 11px}.rp-comparison-grid figcaption>span,.rp-comparison-grid figcaption small{font-size:11px}.rp-comparison-photo{aspect-ratio:3/4;border-radius:14px}.rp-comparison-photo .rp-zoom{width:34px;height:34px;bottom:8px;right:8px}.rp-comparison-photo .rp-zoom svg{width:17px;height:17px}.rp-comparison-foot{flex-direction:column;align-items:flex-start;gap:18px;padding-top:22px}.rp-comparison-foot h3{font-size:24px}.rp-comparison-foot p{max-width:360px;font-size:12px}.rp-comparison-foot .text-link{font-size:13px}.rp-lightbox{border-radius:14px;width:96vw;max-height:94svh}.rp-lightbox-top{gap:8px;padding:9px 9px 9px 16px}.rp-lightbox-top p{font-size:12px}.rp-lightbox-image{height:57svh}.rp-lightbox-figure figcaption{flex-wrap:wrap;gap:8px;padding:14px 14px 4px;font-size:12px}.rp-lightbox-controls{gap:24px;padding-bottom:7px}}@media (prefers-reduced-motion:reduce){.rp-project-photo,.rp-comparison-photo,.rp-comparison-choices button,.rp-icon-button,.rp-zoom{transition:none}.rp-project-photo:hover .rp-zoom,.rp-comparison-photo:hover .rp-zoom{transform:none}}.site-news{background:linear-gradient(135deg,#102139,#080f1a 65%);border-top:1px solid #d1ad5826}.news-heading{justify-content:space-between;align-items:end;gap:3rem;margin-bottom:4rem;display:flex}.news-heading>p{max-width:390px;color:var(--muted);line-height:1.8}.news-timeline{gap:3rem;display:grid}.news-entry{grid-template-columns:170px minmax(0,1fr);gap:2rem;display:grid}.news-date{border-top:1px solid var(--accent);color:var(--accent);padding-top:1rem;font-size:.85rem}.news-date small{color:var(--muted);margin-top:.7rem;font-size:.7rem;display:block}.news-story{border-top:1px solid #ffffff20;min-width:0;padding-top:1rem}.news-location{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.65rem;display:flex}.news-story h3{margin:1rem 0;font-size:clamp(1.5rem,3vw,2.4rem)}.news-description{max-width:760px;color:var(--muted);margin-bottom:1.6rem;line-height:1.8}.news-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.news-photo-grid figure{background:#101c2b;border:1px solid #ffffff12;margin:0}.news-photo-grid button{cursor:zoom-in;background:#080f1a;border:0;width:100%;padding:0;display:block;position:relative}.news-photo-grid img{object-fit:scale-down;width:100%;height:340px;display:block}.news-photo-grid figcaption{color:var(--muted);gap:.5rem;padding:1rem;font-size:.8rem;line-height:1.6;display:grid}.news-photo-grid figcaption strong{color:var(--accent);font-weight:500}.news-zoom{color:#fff;background:#102d50dd;border-radius:50%;padding:8px;display:flex;position:absolute;bottom:12px;right:12px}.news-comparisons{border-top:1px solid #ffffff20;margin-top:1.5rem;padding-top:1rem}.news-comparisons summary{cursor:pointer;color:var(--accent);padding:.5rem 0}.news-comparisons>p{color:var(--muted);margin:1rem 0;font-size:.8rem}.news-comparisons .news-photo-grid{margin:1rem 0}.news-more{cursor:pointer;background:0 0;border:0;margin-top:1.3rem;padding:0}.news-footer{border-top:1px solid #ffffff20;justify-content:space-between;gap:2rem;margin-top:3rem;padding-top:1.5rem;display:flex}.news-footer p{color:var(--muted);max-width:500px;font-size:.75rem}:is(.site-news button:focus-visible,.site-news summary:focus-visible){outline:2px solid var(--accent);outline-offset:4px}@media (max-width:750px){.news-heading{margin-bottom:2rem;display:block}.news-heading>p{margin-top:1.5rem}.news-entry{grid-template-columns:1fr;gap:1rem}.news-date small{margin-left:.8rem;display:inline}.news-photo-grid{gap:.5rem}.news-photo-grid img{height:240px}.news-photo-grid figcaption{padding:.7rem;font-size:.72rem}.news-footer{display:block}.news-footer a{margin-top:1rem}}@media (max-width:420px){.news-photo-grid img{height:200px}}.google-reviews{background:#101c2b;border-block:1px solid #d1ad5826}.google-score{gap:.45rem;display:grid}.google-score strong{color:var(--accent);font-size:1.6rem}.google-score span,.google-review-label,.google-review-actions p{color:var(--muted);line-height:1.6}.google-review-label{margin:1rem 0}.google-review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.google-review-grid article{background:#080f1a;border:1px solid #d1ad5830;border-radius:16px;align-content:start;gap:1rem;padding:clamp(18px,3vw,32px);display:grid}.google-stars{color:var(--accent);gap:4px;display:flex}.google-review-grid blockquote{margin:0;line-height:1.65}.google-review-grid article p{font-size:.85rem}.google-review-grid article p span{color:var(--muted)}.google-review-actions{flex-wrap:wrap;align-items:center;gap:1.4rem;padding-top:2rem;display:flex}.google-review-actions>div{flex:280px}.google-review-actions h3{margin-bottom:.4rem;font-size:1.2rem}@media (max-width:760px){.google-review-grid{grid-template-columns:1fr}}
