#plp-site-root .service-main{padding-top:100px}
body.plp-migration.service-page #plp-site-root figure{margin:0}
body.plp-migration.service-page #plp-site-root small{font-size:10px;letter-spacing:.16em;color:#087baa}
#plp-site-root .service-hero{padding:75px 7% 80px;display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:center;background:#f1f7f9}
#plp-site-root .service-hero h1{font-size:clamp(45px,4.8vw,70px);line-height:1.09;letter-spacing:-.05em}
#plp-site-root .service-hero-copy>p{font-size:17px;line-height:1.85;max-width:460px;margin:27px 0 32px}
#plp-site-root .service-hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}
#plp-site-root .service-text-link{display:inline-flex;gap:15px;align-items:center;font-size:13px;color:#31546a;padding:12px 0;border-bottom:1px solid #bcd7e2}
#plp-site-root .service-text-link span{color:#078eb8;font-size:20px}
#plp-site-root .service-hero-photo{border-radius:18px;overflow:hidden}
#plp-site-root .service-hero-photo img{display:block;width:100%;height:540px;object-fit:cover}
#plp-site-root .swimming-pools-page .service-hero-photo img{object-position:48% center}
body.plp-migration.decking-page #plp-site-root .service-hero-photo img{object-position:center}
#plp-site-root .service-introduction{padding:85px 9%}
#plp-site-root .service-intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}
#plp-site-root .service-intro-columns h2{font-size:clamp(34px,3.5vw,50px)}
#plp-site-root .service-intro-columns p{margin:0;font-size:16px;line-height:1.9;max-width:520px}
#plp-site-root .service-options{padding:80px 7% 85px;background:#edf5f8}
#plp-site-root .service-section-heading h2{font-size:clamp(34px,3.7vw,52px);max-width:850px}
#plp-site-root .service-option-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:42px}
#plp-site-root .service-option-grid.two-options{grid-template-columns:repeat(2,minmax(0,1fr))}
#plp-site-root .service-option-grid article{background:white;padding:28px 24px;border-radius:13px;border:1px solid #dbe8ee}
#plp-site-root .service-option-number{display:block;font-size:11px;color:#087baa;margin-bottom:27px}
#plp-site-root .service-option-grid h3{font-size:24px;line-height:1.2}
#plp-site-root .service-option-grid p{font-size:14px;line-height:1.8;margin-bottom:0}
#plp-site-root .service-gallery{padding:90px 7%;scroll-margin-top:125px}
#plp-site-root .service-gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:40px}
#plp-site-root .service-gallery-heading h2{font-size:clamp(36px,4vw,55px)}
#plp-site-root .service-gallery-heading p{font-size:14px;margin-bottom:0}
#plp-site-root .service-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 28px}
#plp-site-root .service-photo-open{display:block;position:relative;overflow:hidden;border-radius:13px;background:#edf5f8}
#plp-site-root .service-project img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s ease}
#plp-site-root .service-photo-open:hover img{transform:scale(1.025)}
#plp-site-root .service-photo-expand{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:36px;height:36px;background:#ffffffed;color:#092b48;border-radius:50%;font-size:22px}
#plp-site-root .service-project figcaption{padding:17px 2px 0;display:flex;gap:17px;color:#385b70;font-size:14px}
#plp-site-root .service-project figcaption>span{font-size:10px;color:#087baa;padding-top:3px}
#plp-site-root .service-process{padding:85px 7% 90px;background:#092e49;color:white}
#plp-site-root .service-process small,#plp-site-root .service-process em{color:#83d9ee}
#plp-site-root .service-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:48px}
#plp-site-root .service-process-grid article{padding-top:24px;border-top:1px solid #ffffff38}
#plp-site-root .service-process-grid article>span{display:block;color:#83d9ee;font-size:11px;margin-bottom:25px}
#plp-site-root .service-process-grid h3{font-size:26px}
#plp-site-root .service-process-grid p{color:#c5dce7;font-size:15px;line-height:1.85}
#plp-site-root .service-faq{padding:90px 9%;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
#plp-site-root .service-faq h2{font-size:clamp(34px,3.5vw,49px)}
#plp-site-root .service-faq-list details{border-top:1px solid #d4e3e9;padding:23px 0}
#plp-site-root .service-faq-list details:last-child{border-bottom:1px solid #d4e3e9}
#plp-site-root .service-faq-list summary{list-style:none;cursor:pointer;font-size:18px;line-height:1.5;display:flex;gap:20px;justify-content:space-between}
#plp-site-root .service-faq-list summary::-webkit-details-marker{display:none}
#plp-site-root .service-faq-list summary:after{content:'+';color:#087baa;font-size:24px}
#plp-site-root .service-faq-list details[open]>summary:after{content:'−'}
#plp-site-root .service-faq-list p{font-size:15px;line-height:1.85;margin:18px 25px 0 0}
#plp-site-root .service-cta{padding:90px 7%;background:#e9f6fb;text-align:center}
#plp-site-root .service-cta h2{font-size:clamp(42px,5vw,70px)}
#plp-site-root .service-cta p{margin:26px 0 32px}
body.plp-migration.service-page #plp-site-root .nav .service-menu-current,body.plp-migration.service-page #plp-site-root .nav [aria-current=page]{color:#008ebc}
#plp-site-root .service-lightbox{width:min(1100px,94vw);max-height:94svh;padding:18px;border:0;border-radius:14px;background:#082b45;color:white;box-shadow:0 25px 80px #0006}
#plp-site-root .service-lightbox::backdrop{background:#031a2de8}
#plp-site-root .service-lightbox-toolbar{display:flex;justify-content:flex-end;gap:10px;margin-bottom:12px}
#plp-site-root .service-lightbox-toolbar button{border:1px solid #ffffff55;border-radius:7px;background:transparent;color:white;min-width:42px;min-height:42px;font-size:22px;cursor:pointer}
#plp-site-root .service-lightbox>img{width:100%;height:calc(82svh - 110px);object-fit:contain;display:block}
#plp-site-root .service-lightbox>p{color:#d4e9f2;text-align:center;font-size:14px;margin:15px 0 4px}
@media(max-width:1100px){#plp-site-root .service-hero{gap:35px}
#plp-site-root .service-hero-photo img{height:470px}
#plp-site-root .service-intro-columns{gap:40px}
#plp-site-root .service-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#plp-site-root .service-faq{gap:40px}}
@media(max-width:760px){#plp-site-root .service-main{padding-top:84px}
#plp-site-root .service-hero{padding:60px 7%;grid-template-columns:1fr;gap:35px}
#plp-site-root .service-hero h1{font-size:clamp(42px,7.5vw,60px)}
#plp-site-root .service-hero-copy>p{font-size:16px;max-width:100%;margin:23px 0 28px}
#plp-site-root .service-hero-photo img{height:360px}
#plp-site-root .service-introduction{padding:60px 7%}
#plp-site-root .service-intro-columns{grid-template-columns:1fr;gap:22px}
#plp-site-root .service-options{padding:60px 7%}
#plp-site-root .service-option-grid{gap:16px;margin-top:30px}
#plp-site-root .service-option-grid article{padding:24px 20px}
#plp-site-root .service-option-grid h3{font-size:23px}
#plp-site-root .service-gallery{padding:60px 7%;scroll-margin-top:108px}
#plp-site-root .service-gallery-heading{align-items:start;flex-direction:column;gap:10px}
#plp-site-root .service-gallery-grid{gap:25px 18px}
#plp-site-root .service-project figcaption{font-size:13px;line-height:1.5;gap:10px}
#plp-site-root .service-process{padding:65px 7%}
#plp-site-root .service-process-grid{grid-template-columns:1fr;gap:23px;margin-top:33px}
#plp-site-root .service-process-grid article>span{margin-bottom:16px}
#plp-site-root .service-faq{padding:65px 7%;grid-template-columns:1fr;gap:30px}
#plp-site-root .service-cta{padding:70px 7%}
#plp-site-root .service-faq-list summary{font-size:17px}}
@media(max-width:480px){#plp-site-root .service-option-grid,#plp-site-root .service-option-grid.two-options,#plp-site-root .service-gallery-grid{grid-template-columns:1fr}
#plp-site-root .service-hero-actions{gap:15px}
#plp-site-root .service-hero-actions .btn{width:100%}
#plp-site-root .service-project figcaption{font-size:14px}}
@media(prefers-reduced-motion:reduce){#plp-site-root .service-project img{transition:none}
#plp-site-root .service-photo-open:hover img{transform:none}}

