/* Faithful company presentation, rebuilt as an editorial website. */
.document-section{isolation:isolate;padding-top:85px;padding-bottom:85px;border-top:1px solid #d7e2ed55}.document-section>*{position:relative;z-index:1}.document-section.wash{background:#f3f6fa}.document-section.wash:before{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#f6f9fbd9,#f6f9fbba),url('assets/p5-3.webp') center/cover;opacity:1;pointer-events:none}.document-section.dark:before{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#102e58ef,#102e58d9),url('assets/p5-2.webp') center/cover;pointer-events:none}.document-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid #6385ac38}.document-heading h2{font-size:clamp(30px,3.3vw,48px);line-height:1.4;letter-spacing:-.5px}.document-heading .eyebrow{margin-bottom:12px}.document-heading>p{max-width:380px;font-size:15px}.dark .document-heading{border-color:#b1ccea33}.document-about{display:grid;grid-template-columns:1fr .92fr;gap:7%;align-items:start}.document-copy h3{font-size:27px;line-height:1.5;margin-bottom:24px}.document-copy p{font-size:16px;line-height:1.95;margin-bottom:19px;color:#334e6c}.about-photo-stack{display:grid;gap:20px;align-self:stretch;grid-template-rows:1fr 1fr}.photo-tile{display:block;position:relative;border:1px solid #dce6ef;background:#fff;padding:8px;overflow:hidden;width:100%;min-width:0;transition:transform .6s,box-shadow .6s}.photo-tile img{height:100%;width:100%;object-fit:contain;aspect-ratio:1.5;transition:filter .6s;background:#f4f7fa}.photo-tile:hover{transform:translateY(-4px);box-shadow:0 17px 30px #091f431c}.photo-tile:hover img{filter:brightness(1.04)}.photo-tile .expand-photo{position:absolute;right:17px;bottom:17px;display:grid;place-items:center;background:#fffef5ee;color:#102e58;width:30px;height:30px;box-shadow:0 3px 15px #102e5822;font-size:18px;opacity:.85;transition:.3s}.photo-tile:hover .expand-photo{background:#1056a7;color:white;opacity:1}.dark .photo-tile{background:#ffffff0e;border-color:#b5d2ef33}.dark .photo-tile img{background:#071c38}.about-photo-stack .photo-tile{align-self:stretch}.about-photo-stack img{aspect-ratio:1.5;object-fit:contain}.document-services{display:grid;grid-template-columns:1fr 1fr;gap:32px}.service-summary{background:#fff;box-shadow:0 12px 40px #12345609;border:1px solid #dce6f0;min-width:0}.summary-photo{position:relative;display:block;overflow:hidden;background:#edf3f9;padding:8px}.summary-photo img{height:275px;object-fit:contain;transition:.8s}.summary-photo:hover img{transform:scale(1.02)}.summary-photo>span{position:absolute;bottom:20px;left:22px;right:22px;color:white;display:flex;justify-content:space-between;font-size:30px;line-height:1;text-shadow:0 2px 12px #031529}.summary-photo>span b{display:grid;place-items:center;width:37px;height:37px;background:white;color:#102e58;text-shadow:none;font-size:23px}.summary-body{padding:26px 30px 30px}.summary-index{font-size:10px;letter-spacing:2px;color:var(--blue)}.summary-body h3{font-size:25px;line-height:1.5;margin:10px 0 18px}.summary-body p{font-size:15px;line-height:1.85}.container-types{margin:0}.container-types>div{display:grid;grid-template-columns:165px 1fr;gap:14px;border-top:1px solid #e4ebf3;padding:9px 0;font-size:13px}.container-types dt{color:#1056a7;font-weight:500}.container-types dd{margin:0;color:#53677e}.photo-grid{display:grid;gap:20px}.cols-3{grid-template-columns:repeat(3,1fr)}.photo-grid .photo-tile img{aspect-ratio:1.5}.portrait-grid .photo-tile img{aspect-ratio:1;max-height:370px}.gallery-statement{border-left:3px solid #579ee7;padding:7px 0 7px 23px;margin:35px auto 0;max-width:760px;text-align:left}.gallery-statement>span{font-size:10px;letter-spacing:2px;color:#7eb7f0}.gallery-statement h3{font-size:27px;line-height:1.5;margin-top:7px}.gallery-statement p{font-size:17px;margin-top:5px}.paired-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.photo-pair{display:grid;gap:18px;min-width:0}.rental-grid .photo-tile img{aspect-ratio:.8;max-height:330px}.repair-column{display:grid;grid-template-rows:auto 1fr 1fr;gap:17px;min-width:0}.repair-column .photo-tile img{aspect-ratio:.9;max-height:305px}.repair-label{font-size:22px;text-align:center;background:#e6eef8;padding:13px;border-bottom:2px solid #1056a7}.project-pairs{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.project-pair{display:grid;grid-template-rows:auto auto 1fr;gap:18px;align-content:start;min-width:0}.project-pair .photo-tile img{aspect-ratio:1.5;object-fit:contain}.project-pair>h3{font-size:17px;line-height:1.7;margin-top:4px;border-top:1px solid #9cb2cc44;padding-top:17px;font-weight:500}.csr-pairs .photo-tile img{aspect-ratio:1.35}.document-certificates{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:start;max-width:1060px;margin:0 auto}.document-certificates .photo-tile{padding:16px;box-shadow:0 18px 50px #122f5614}.document-certificates .photo-tile img{aspect-ratio:auto;height:auto;max-height:570px;background:#fff}.document-why{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}.why-photo-column{position:sticky;top:120px}.why-photo-column .photo-tile img{aspect-ratio:1.2}.why-photo-column blockquote{margin:28px 0 0;padding:0 0 0 24px;border-left:2px solid #82baf2;color:#e1effb;font-size:22px;line-height:1.85}.document-reasons{display:grid;gap:0}.document-reasons article{display:flex;gap:23px;border-bottom:1px solid #bdd5ee30;padding:20px 0}.document-reasons article:first-child{padding-top:0}.document-reasons article>span{color:#84b7ed;font-size:14px;line-height:2}.document-reasons h3{font-size:22px;line-height:1.5;margin-bottom:7px}.document-reasons p{font-size:15px;line-height:1.85}.document-section#clients{padding-left:0;padding-right:0}.document-section#clients>.document-heading{margin-left:7%;margin-right:7%}.document-section#clients .logo-wall:after{background:linear-gradient(90deg,#f3f7fa,transparent 8%,transparent 92%,#f3f7fa)}.logo-cell img{background:#fff}.tax-id{font-size:14px;margin:0 0 25px!important;color:#c7dbed!important}.contact .eyebrow{letter-spacing:2px}.contact .contact-inner>div>p{font-size:18px;line-height:1.8}.contact .contact-inner>div>.tax-id{font-size:14px}.js .photo-tile.reveal{transition:opacity .8s,transform .8s,box-shadow .4s}.photo-grid>.photo-tile:nth-child(3n+2),.project-pair:nth-child(2) .photo-tile,.paired-grid>div:nth-child(2) .photo-tile{transition-delay:60ms}.photo-grid>.photo-tile:nth-child(3n),.project-pair:nth-child(3) .photo-tile,.paired-grid>div:nth-child(3) .photo-tile{transition-delay:120ms}
@media(min-width:1500px){.document-section{padding-left:max(7%,calc((100vw - 1360px)/2));padding-right:max(7%,calc((100vw - 1360px)/2))}.document-section#clients{padding-left:0;padding-right:0}}
@media(max-width:1000px){.document-about{gap:5%;grid-template-columns:1.15fr 1fr}.document-copy h3{font-size:23px}.document-copy p{font-size:15px}.summary-photo img{height:220px}.summary-body{padding:23px}.summary-body h3{font-size:23px}.container-types>div{grid-template-columns:1fr;gap:1px}.paired-grid{gap:13px}.project-pairs{gap:17px}.document-why{gap:35px}.why-photo-column blockquote{font-size:20px}.document-reasons h3{font-size:20px}.document-reasons p{font-size:14px}}
@media(max-width:760px){.document-section{padding:60px 6%}.document-heading{margin-bottom:28px;padding-bottom:20px;display:block}.document-heading h2{font-size:30px;line-height:1.45}.document-heading .eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:12px}.document-about{grid-template-columns:1fr;gap:25px}.document-copy h3{font-size:24px;line-height:1.55}.document-copy p{font-size:15px;line-height:1.95;margin-bottom:18px}.about-photo-stack{gap:15px;grid-template-rows:auto auto}.about-photo-stack .photo-tile img{height:auto;aspect-ratio:auto}.document-services{grid-template-columns:1fr;gap:25px}.summary-photo img{height:auto;aspect-ratio:1.55}.summary-body{padding:23px}.summary-body h3{font-size:23px}.summary-index{font-size:9px}.container-types>div{grid-template-columns:135px 1fr;font-size:12px;gap:10px}.photo-grid{gap:12px}.cols-3{grid-template-columns:repeat(2,1fr)}.photo-tile{padding:5px}.photo-grid .photo-tile img{aspect-ratio:1.1}.photo-tile .expand-photo{right:10px;bottom:10px;width:24px;height:24px;font-size:15px}.gallery-statement{margin-top:25px;padding-left:17px}.gallery-statement h3{font-size:23px}.gallery-statement p{font-size:15px}.paired-grid{grid-template-columns:1fr 1fr;gap:23px 12px}.photo-pair{gap:12px}.rental-grid .photo-tile img{aspect-ratio:.85}.repair-column{gap:12px}.repair-label{font-size:20px;padding:10px}.repair-column .photo-tile img{aspect-ratio:1}.project-pairs{grid-template-columns:1fr;gap:30px}.project-pair{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:12px}.project-pair .photo-tile img{aspect-ratio:1.1}.project-pair>h3{grid-column:1/-1;font-size:17px;margin-top:1px;padding-top:13px}.csr-pairs .photo-tile img{aspect-ratio:1.15}.document-certificates{grid-template-columns:1fr;gap:25px}.document-certificates .photo-tile{padding:12px}.document-certificates .photo-tile img{max-height:500px}.document-why{grid-template-columns:1fr;gap:35px}.why-photo-column{position:static}.why-photo-column blockquote{font-size:20px;margin-top:22px;padding-left:18px}.document-reasons article{gap:17px;padding:20px 0}.document-reasons h3{font-size:21px}.document-reasons p{font-size:15px}.contact .contact-inner>div>p{font-size:17px}.document-section#clients>.document-heading{margin-left:6%;margin-right:6%}.logo-cell{width:150px;height:93px}.portrait-grid .photo-tile img{aspect-ratio:.9}.document-section.wash:before{background:linear-gradient(90deg,#f6f9fbe0,#f6f9fbbe),url('assets/p5-3.webp') center/cover}.photo-tile:active{transform:scale(.99)}}
@media(prefers-reduced-motion:reduce){.photo-tile:hover,.summary-photo:hover img{transform:none}}
/* Rounded, spacious compositions. Each photograph retains its own frame. */
.photo-tile{border-radius:24px;padding:7px;box-shadow:0 8px 28px #0b2b5210}.photo-tile img{border-radius:18px}.photo-tile .expand-photo{border-radius:50%;width:34px;height:34px;right:18px;bottom:18px}.service-summary{border-radius:30px;overflow:hidden;border:1px solid #dce6f080}.summary-photo{padding:12px 12px 0;border-radius:30px 30px 0 0;background:white}.summary-photo img{border-radius:21px}.summary-photo>span b{border-radius:50%}.document-services{gap:34px}.document-services .service-summary:nth-child(even){transform:translateY(26px)}.document-services .service-summary:nth-child(even).visible{transform:translateY(26px)}.document-services{padding-bottom:26px}.about-photo-stack .photo-tile:first-child{border-radius:70px 24px 24px 24px}.about-photo-stack .photo-tile:first-child img{border-radius:62px 18px 18px 18px}.about-photo-stack .photo-tile:last-child{border-radius:24px 24px 70px 24px}.about-photo-stack .photo-tile:last-child img{border-radius:18px 18px 62px 18px}.photo-grid{gap:24px}.paired-grid{gap:23px}.photo-pair,.repair-column{gap:20px}.repair-label{border-radius:16px;font-weight:500;border:0}.project-pairs{gap:30px}.project-pair{padding:16px;border-radius:30px;background:#ffffffa8;box-shadow:0 12px 40px #102e580a;border:1px solid #b9cde333;gap:17px}.dark .project-pair{background:#ffffff09;box-shadow:0 15px 45px #02172f14;border-color:#b9cde328}.project-pair .photo-tile{padding:0;border-radius:18px;border:0;box-shadow:none;background:transparent}.project-pair .photo-tile img{border-radius:18px}.project-pair>h3{padding:15px 6px 2px;border-top:1px solid #9cb2cc30}.document-certificates .photo-tile{border-radius:28px}.why-photo-column .photo-tile{border-radius:55px 24px 24px 24px}.why-photo-column .photo-tile img{border-radius:45px 18px 18px 18px}.gallery-statement{border:1px solid #8bacce30;border-left:3px solid #579ee7;border-radius:0 24px 24px 0;padding:22px 28px;background:#ffffff85}.dark .gallery-statement{background:#ffffff07;border-color:#b1c9e222;border-left-color:#7fbbf7}.document-reasons article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:#ffffff0b;flex-shrink:0}.logo-cell{border-radius:20px;box-shadow:0 10px 25px #132e4e0a}.header-cta,.button{border-radius:12px}.locations article{border-radius:0}.mobile-dock a{border-radius:10px}.gallery-body img{border-radius:16px}.close-dialog,.gallery-controls button{border-radius:12px}dialog{border-radius:24px}.document-section.wash:after{content:'';position:absolute;z-index:0;inset:0;background:radial-gradient(ellipse at 100% 0%,#c9def170,transparent 50%);pointer-events:none}.contact-inner{border-radius:0}.document-copy h3{color:var(--blue)}.contact .line-button{border-radius:14px}.trust-strip{border-radius:0 0 30px 30px}.photo-tile:focus-visible{outline-offset:5px}.document-heading h2{max-width:970px}.document-section#inspection .document-heading h2,.document-section#maintenance .document-heading h2{font-size:clamp(29px,3vw,43px)}
@media(max-width:760px){.photo-tile{border-radius:18px;padding:5px}.photo-tile img{border-radius:13px}.photo-tile .expand-photo{width:26px;height:26px;right:11px;bottom:11px}.photo-grid{gap:13px}.service-summary{border-radius:24px}.summary-photo{border-radius:24px 24px 0 0;padding:10px 10px 0}.summary-photo img{border-radius:16px}.document-services .service-summary:nth-child(even),.document-services .service-summary:nth-child(even).visible{transform:none}.document-services{padding-bottom:0;gap:22px}.paired-grid{gap:25px 14px}.photo-pair,.repair-column{gap:13px}.repair-label{border-radius:12px}.project-pair{padding:13px;border-radius:24px;gap:12px}.project-pair .photo-tile,.project-pair .photo-tile img{border-radius:14px}.project-pair>h3{padding-left:2px;padding-right:2px}.gallery-statement{padding:18px 19px;border-radius:0 20px 20px 0}.about-photo-stack .photo-tile:first-child{border-radius:45px 20px 20px 20px}.about-photo-stack .photo-tile:first-child img{border-radius:38px 14px 14px 14px}.about-photo-stack .photo-tile:last-child{border-radius:20px 20px 45px 20px}.about-photo-stack .photo-tile:last-child img{border-radius:14px 14px 38px 14px}.why-photo-column .photo-tile{border-radius:40px 20px 20px 20px}.why-photo-column .photo-tile img{border-radius:33px 14px 14px 14px}.document-section#inspection .document-heading h2,.document-section#maintenance .document-heading h2{font-size:29px}.document-reasons article>span{width:32px;height:32px;border-radius:11px}.logo-cell{border-radius:16px}.trust-strip{border-radius:0 0 22px 22px}}
/* Client brands remain free-standing, exactly as in the company profile. */
.document-section#clients{background:#fff}.document-section#clients:before,.document-section#clients:after{display:none}.logo-cell{border:0;border-radius:0;background:transparent;box-shadow:none;transform:none;padding:15px 18px;width:175px;height:105px}.logo-cell img{background:transparent;object-fit:contain}.logo-cell:hover{box-shadow:none;transform:translateY(-5px)}.logo-row{padding:16px 0}.logo-track{gap:30px}.document-section#clients .logo-wall:after{background:linear-gradient(90deg,#fff,transparent 7%,transparent 93%,#fff)}@media(max-width:760px){.logo-cell{width:140px;height:88px;padding:12px 15px;border:0;border-radius:0;box-shadow:none}.logo-track{gap:18px}.logo-row{padding:13px 0}}
/* Round the visible photograph itself while preserving its original proportions. */
.photo-tile img,.photo-grid .photo-tile img,.project-pair .photo-tile img,.csr-pairs .photo-tile img{width:100%;height:auto;aspect-ratio:auto;max-height:none;background:transparent}.photo-tile{align-self:start}.about-photo-stack{align-self:start;grid-template-rows:auto auto}.portrait-grid .photo-tile img{height:330px;width:auto;max-width:100%;margin:auto;object-fit:contain;aspect-ratio:auto}.rental-grid .photo-tile img,.repair-column .photo-tile img{height:270px;width:auto;max-width:100%;margin:auto;object-fit:contain;aspect-ratio:auto}.portrait-grid .photo-tile,.rental-grid .photo-tile,.repair-column .photo-tile{display:grid;place-items:center;min-height:286px}.portrait-grid .photo-tile{min-height:346px}.photo-pair{align-content:start}.repair-column{grid-template-rows:auto auto auto}.why-photo-column .photo-tile img{aspect-ratio:auto}.document-certificates .photo-tile img{width:100%;height:auto;max-height:none}.document-services .service-summary:nth-child(even){margin-top:26px;transform:none}.document-services .service-summary:nth-child(even).visible{transform:none}
@media(max-width:760px){.portrait-grid .photo-tile img{height:210px;max-width:100%}.portrait-grid .photo-tile{min-height:222px}.rental-grid .photo-tile img,.repair-column .photo-tile img{height:195px}.rental-grid .photo-tile,.repair-column .photo-tile{min-height:207px}.document-services .service-summary:nth-child(even){margin-top:0}.photo-grid .photo-tile img{aspect-ratio:auto}.project-pair .photo-tile img{aspect-ratio:auto}.csr-pairs .photo-tile img{aspect-ratio:auto}.project-pair{align-items:start}}
/* FINAL: image sizes and visible compositions follow the client's PDF frames. */
.photo-tile,.dark .photo-tile,.project-pair .photo-tile,.document-certificates .photo-tile{padding:0;border:0;background:transparent;box-shadow:none;display:block;min-height:0;border-radius:20px;overflow:hidden}.photo-tile img,.dark .photo-tile img,.photo-grid .photo-tile img,.portrait-grid .photo-tile img,.rental-grid .photo-tile img,.repair-column .photo-tile img,.project-pair .photo-tile img,.csr-pairs .photo-tile img{width:100%;height:auto;max-width:100%;max-height:none;aspect-ratio:auto;border-radius:20px;object-fit:fill;background:transparent;margin:0}.photo-tile:hover{box-shadow:none;transform:translateY(-3px)}#storage .photo-grid{grid-template-columns:337fr 415fr 404fr;max-width:1200px;margin:auto;gap:30px 22px;align-items:start}#rent .rental-grid{grid-template-columns:206fr 207fr 228fr 324fr;max-width:1130px;margin:auto;gap:35px}#rent .photo-pair{gap:20px;align-content:start}#inspection .portrait-grid{grid-template-columns:245fr 229fr 198fr;gap:35px 60px;max-width:806px;margin:auto;align-items:start}#maintenance .repair-grid{grid-template-columns:283fr 270fr 309fr 200fr;gap:35px;max-width:1254px;margin:auto}#maintenance .repair-column{display:flex;flex-direction:column;gap:18px}#maintenance .repair-column>.photo-tile:first-of-type{order:0}#maintenance .repair-label{order:1;background:transparent;padding:0;font-size:21px;margin:0}#maintenance .repair-column>.photo-tile:last-of-type{order:2}#modification .project-pairs{grid-template-columns:325fr 379fr 379fr;max-width:1170px;margin:auto;gap:40px}#other-services .project-pairs{grid-template-columns:313fr 307fr 330fr;max-width:1133px;margin:auto;gap:45px}#responsibility .project-pairs{grid-template-columns:403fr 380fr 311fr;max-width:1220px;margin:auto;gap:50px}.project-pair,.dark .project-pair{display:flex;flex-direction:column;justify-content:flex-start;border:0;box-shadow:none;background:transparent;padding:0;border-radius:0;gap:18px;min-width:0}.project-pair>.photo-tile:first-of-type{order:0}.project-pair>h3{order:1;padding:0;margin:0;border:0;font-size:16px;text-align:center;min-height:48px}.project-pair>.photo-tile:last-of-type{order:2}.project-pair .photo-tile,.project-pair .photo-tile img{border-radius:20px}.photo-pair{display:flex;flex-direction:column}.document-why .photo-tile,.document-why .photo-tile img{border-radius:28px}.about-photo-stack .photo-tile,.about-photo-stack .photo-tile img{border-radius:24px!important}.summary-photo{padding:0;background:transparent}.summary-photo img{object-fit:cover;aspect-ratio:1.75;height:auto}.document-certificates .photo-tile,.document-certificates .photo-tile img{border-radius:20px}.photo-tile .expand-photo{width:28px;height:28px;right:12px;bottom:12px;opacity:0}.photo-tile:hover .expand-photo,.photo-tile:focus-visible .expand-photo{opacity:1}.gallery-statement{max-width:100%;border:0;border-radius:0;background:transparent!important;text-align:center;padding:12px 0 0;margin-top:25px}.gallery-statement>span{display:none}.gallery-statement h3{font-size:24px}.gallery-statement p{font-size:17px}.document-section{padding-top:70px;padding-bottom:65px}
@media(max-width:760px){#storage .photo-grid{grid-template-columns:337fr 415fr 404fr;gap:13px 10px}#rent .rental-grid{grid-template-columns:206fr 207fr 228fr 324fr;gap:10px}#rent .photo-pair{gap:12px}#inspection .portrait-grid{grid-template-columns:245fr 229fr 198fr;gap:20px 14px;max-width:100%}#maintenance .repair-grid{grid-template-columns:283fr 270fr 309fr 200fr;gap:10px}#maintenance .repair-column{gap:12px}#maintenance .repair-label{font-size:12px;line-height:1.5;min-height:36px}#modification .project-pairs{grid-template-columns:325fr 379fr 379fr;gap:12px}#other-services .project-pairs{grid-template-columns:313fr 307fr 330fr;gap:12px}#responsibility .project-pairs{grid-template-columns:403fr 380fr 311fr;gap:12px}.project-pair{gap:12px}.project-pair>h3{font-size:10px;line-height:1.65;min-height:65px;text-align:left}.photo-tile,.photo-tile img,.dark .photo-tile img,.project-pair .photo-tile,.project-pair .photo-tile img{border-radius:10px!important}.gallery-statement h3{font-size:20px}.gallery-statement p{font-size:14px}.document-section{padding:50px 5%}.document-heading h2{font-size:27px}.document-section#inspection .document-heading h2,.document-section#maintenance .document-heading h2{font-size:25px}.photo-tile .expand-photo{opacity:0}.document-copy p{font-size:15px}.document-certificates .photo-tile,.document-certificates .photo-tile img{border-radius:16px!important}}
@media(max-width:760px){#storage .photo-grid,#inspection .portrait-grid{grid-template-columns:1fr 1fr;gap:16px}#rent .rental-grid,#maintenance .repair-grid{grid-template-columns:1fr 1fr;gap:24px 16px}#maintenance .repair-label{font-size:18px;min-height:0}#modification .project-pairs,#other-services .project-pairs,#responsibility .project-pairs{grid-template-columns:1fr;gap:28px}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:13px;align-items:start}.project-pair>.photo-tile:first-of-type{order:0}.project-pair>.photo-tile:last-of-type{order:1}.project-pair>h3{order:2;grid-column:1/-1;min-height:0;font-size:16px;line-height:1.75}.photo-tile,.photo-tile img,.dark .photo-tile img,.project-pair .photo-tile,.project-pair .photo-tile img{border-radius:14px!important}}
/* Approved revision: company name first, centered content headings, subtle corners. */
.document-heading{display:block;text-align:center}.document-heading>div{width:100%}.document-heading h2{max-width:1100px;margin-left:auto;margin-right:auto}.document-heading .eyebrow{justify-content:center}.document-heading>p{margin:15px auto 0}main section:not(.hero) h2,main section:not(.hero) h3{text-align:center}.contact-inner>div:first-child>.eyebrow,.locations .eyebrow{justify-content:center}.contact-inner>div:first-child>h2{width:100%}.about-photo-stack{display:block;align-self:start}.about-photo-stack .photo-tile{width:100%;display:block}.about-photo-stack .photo-tile img{width:100%;height:auto;aspect-ratio:auto}.photo-tile,.photo-tile img,.dark .photo-tile,.dark .photo-tile img,.project-pair .photo-tile,.project-pair .photo-tile img,.about-photo-stack .photo-tile,.about-photo-stack .photo-tile img,.why-photo-column .photo-tile,.why-photo-column .photo-tile img,.document-certificates .photo-tile,.document-certificates .photo-tile img{border-radius:7px!important}.photo-tile,.project-pair .photo-tile,.document-certificates .photo-tile{box-shadow:0 9px 25px #0a25422b,0 2px 5px #0a254218!important}.dark .photo-tile{box-shadow:0 12px 30px #00122f66,0 2px 8px #00122f33!important}.photo-tile:hover{box-shadow:0 15px 32px #081e4340!important}.summary-photo,.summary-photo img{border-radius:7px!important}.summary-photo{box-shadow:0 8px 24px #102e582a}.service-summary{border-radius:9px}.logo-cell,.logo-cell:hover{box-shadow:none!important;border:0!important;background:transparent!important}.document-certificates{grid-template-columns:1fr 1fr;max-width:970px;gap:55px;align-items:center}.document-certificates .photo-tile{width:100%;height:450px;display:flex;align-items:center;justify-content:center;background:#fff;padding:20px}.document-certificates .photo-tile img{width:100%;height:100%;max-height:410px;object-fit:contain;aspect-ratio:auto;border-radius:0!important}.hero-content{z-index:4;padding-top:70px;max-width:1190px}.hero .company-headline{font-size:clamp(42px,4.8vw,70px);line-height:1.08;letter-spacing:-.8px;font-weight:800;text-align:left;text-shadow:0 3px 25px #05182d33}.hero-service-title{font-size:clamp(23px,2.6vw,34px);font-weight:700;line-height:1.5;letter-spacing:0;margin-top:22px;color:#fff;text-align:left}.hero-content>p{font-size:18px;margin:15px 0 28px;color:#d8e8f9;line-height:1.8}.hero .hero-actions{margin-top:0}.hero{min-height:650px}.hero-grid{opacity:.5}.document-section>.particle-layer,.hero>.particle-layer,.contact>.particle-layer{position:absolute!important;inset:0;pointer-events:none;overflow:hidden;z-index:0;contain:strict}.hero>.particle-layer{z-index:3}.particle-layer i{position:absolute;display:block;left:var(--px);top:var(--py);width:3px;height:3px;border-radius:50%;background:#2083d6;box-shadow:0 0 9px #5299e499;opacity:0;animation:particleFlight var(--pd) var(--delay) linear infinite;animation-play-state:paused;will-change:transform,opacity}.particle-layer i:nth-child(3n){width:33px;height:1px;border-radius:1px;background:linear-gradient(90deg,transparent,#4499e9)}.dark>.particle-layer i,.hero>.particle-layer i{background:#b0ddff;box-shadow:0 0 11px #85c7ffa3}.dark>.particle-layer i:nth-child(3n),.hero>.particle-layer i:nth-child(3n){background:linear-gradient(90deg,transparent,#a1d3ff)}.motion-active>.particle-layer i{animation-play-state:running}@keyframes particleFlight{0%{transform:translate3d(-90px,170px,0) rotate(-32deg);opacity:0}14%{opacity:.65}80%{opacity:.5}100%{transform:translate3d(210px,-210px,0) rotate(-32deg);opacity:0}}.document-section>.particle-layer~*,.contact>.particle-layer~*{position:relative;z-index:1}.js .reveal{transition-duration:.65s,.75s}.hero-photos:after{animation-duration:5.5s}.photo-tile .expand-photo{border-radius:50%!important}
@media(max-width:760px){.document-heading{text-align:center}.document-heading h2{font-size:28px}.document-heading .eyebrow{justify-content:center}.hero{min-height:670px;height:calc(100svh - 76px);max-height:820px}.hero-content{padding:85px 6% 55px}.hero .company-headline{font-size:clamp(29px,7.7vw,47px);line-height:1.14;letter-spacing:-.3px}.hero-service-title{font-size:23px;margin-top:22px;line-height:1.5}.hero-content>p{font-size:15px;line-height:1.9;margin:17px 0 24px}.hero-actions{gap:15px}.document-certificates{grid-template-columns:1fr 1fr;gap:15px;max-width:100%;align-items:center}.document-certificates .photo-tile{height:225px;padding:10px}.document-certificates .photo-tile img{height:100%;max-height:205px;object-fit:contain}.photo-tile,.photo-tile img,.dark .photo-tile,.dark .photo-tile img,.project-pair .photo-tile,.project-pair .photo-tile img,.about-photo-stack .photo-tile,.about-photo-stack .photo-tile img,.document-certificates .photo-tile{border-radius:6px!important}.about-photo-stack .photo-tile img{height:auto;aspect-ratio:auto}.particle-layer i{width:2px;height:2px}.particle-layer i:nth-child(3n){width:25px}.contact .eyebrow{justify-content:center}.document-reasons article h3{text-align:center}.document-section#inspection .document-heading h2,.document-section#maintenance .document-heading h2{font-size:25px}.summary-body h3{text-align:center}}
@media(prefers-reduced-motion:reduce){.particle-layer{display:none}.hero-photos:after{display:none}}
.contact>.contact-photo{position:absolute!important;inset:0;z-index:0}.document-section>.particle-layer{z-index:0!important}.hero .hero-service-title{animation:fadeIn .8s .18s both}.hero .company-headline{animation:fadeIn .8s both}
/* Requested exceptions to centered headings. */
main #contact h2,main #contact h3,main #contact p,main #contact .socials{text-align:left}.contact-inner>div:first-child>.eyebrow,main #contact .locations .eyebrow{justify-content:flex-start}main #why-us .document-reasons h3,main #why-us .document-reasons p{text-align:left}.document-reasons article{align-items:flex-start}.document-reasons article>div{flex:1;min-width:0}.document-reasons article>span{margin-top:2px}
/* Center the complete banner copy block vertically, retain left alignment. */
.hero{display:flex;align-items:center}.hero-content{width:100%;padding-top:45px;padding-bottom:45px;align-self:center}.hero .company-headline{animation:bannerFade .8s both}.hero .hero-service-title{animation:bannerFade .8s .16s both}.hero-content>p{animation:bannerFade .8s .26s both}.hero-actions{animation:bannerFade .8s .36s both;gap:18px}.hero-actions>.button{min-height:62px;display:inline-flex;justify-content:center;align-items:center;padding:16px 24px;gap:30px;font-size:16px;font-weight:500;border-radius:9px;border:1px solid #fff9;box-shadow:0 9px 25px #03122545;line-height:1.5}.hero-actions>.white{background:#fff;color:#102e58}.hero-actions>.hero-contact-button{background:#1464be;color:#fff;border-color:#83c0ff;box-shadow:0 9px 25px #03122555,inset 0 1px 0 #ffffff25}.hero-actions>.button:hover{transform:translateY(-3px);box-shadow:0 12px 30px #03122566}.hero-actions>.hero-contact-button:hover{background:#2375d3}.hero-actions>.button span,.hero-actions>.button b{font-size:23px;color:inherit;line-height:1}
.trust-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding-top:31px;padding-bottom:31px}.trust-strip>.trust-item{min-width:0;padding:0 26px;display:flex;gap:17px;align-items:center;border-right:1px solid #ccd9e8}.trust-strip>.trust-item:first-child{padding-left:0}.trust-strip>.trust-item:last-child{border-right:0;padding-right:0}.trust-strip strong{display:flex;align-items:baseline;gap:0;font-size:36px;line-height:1.1;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-1px;min-width:72px}.trust-strip strong small{font-size:.7em;line-height:1;margin:0 1px}.trust-strip .scramble-word{font-size:35px;min-width:82px;display:block;letter-spacing:-1px}.trust-strip>.trust-item>span{font-size:13px;line-height:1.6}.stats-animating strong{animation:statGlow .65s ease-in-out 2}@keyframes statGlow{50%{filter:drop-shadow(0 0 7px #398ee466)}}@keyframes bannerFade{from{opacity:0}to{opacity:1}}
@media(max-width:1100px){.trust-strip>.trust-item{padding:0 18px;gap:10px;flex-direction:column;align-items:flex-start}.trust-strip strong{font-size:33px}.trust-strip>.trust-item>span{font-size:12px}.trust-strip .scramble-word{font-size:33px}}
@media(max-width:760px){.hero{height:calc(100svh - 76px);min-height:650px;align-items:center}.hero-content{padding:35px 6%;align-self:center}.hero-actions{flex-direction:column;align-items:stretch;gap:13px;max-width:315px}.hero-actions>.button{min-height:56px;padding:14px 19px;font-size:14px;justify-content:space-between;gap:15px;width:100%}.hero-actions>.button b,.hero-actions>.button span{font-size:21px}.hero-content>p{font-size:14px}.trust-strip{grid-template-columns:repeat(2,minmax(0,1fr));padding:25px 6%;gap:0}.trust-strip>.trust-item{padding:18px!important;gap:9px;flex-direction:column;align-items:center;text-align:center;border-right:1px solid #ccd9e8}.trust-strip>.trust-item:nth-child(even){border-right:0}.trust-strip>.trust-item:nth-child(-n+2){border-bottom:1px solid #ccd9e8;padding-top:4px!important}.trust-strip>.trust-item:nth-child(n+3){padding-bottom:4px!important}.trust-strip strong{font-size:34px;justify-content:center;min-width:0}.trust-strip .scramble-word{font-size:34px;min-width:100px;text-align:center}.trust-strip>.trust-item>span{font-size:12px}main #contact .eyebrow{justify-content:flex-start}main #contact h2,main #contact h3,main #why-us .document-reasons h3{text-align:left}}
@media(prefers-reduced-motion:reduce){.hero .company-headline,.hero .hero-service-title,.hero-content>p,.hero-actions,.stats-animating strong{animation:none}}
/* About copy: original paragraphs, stronger type and a quieter reading area. */
#about.document-section.wash:before{background:linear-gradient(90deg,#f6f9fbed,#f6f9fbce),url('assets/p5-3.webp') center/cover}.document-about{grid-template-columns:1.12fr .88fr;gap:6%;align-items:start}.document-copy{padding:27px 28px 14px;background:#ffffffcf;border-radius:8px}.document-copy h3{font-size:27px;line-height:1.55;margin-bottom:22px;text-align:center}.document-copy p{font-size:17px;line-height:1.95;font-weight:500;color:#172c46;text-align:center;margin-bottom:25px;overflow-wrap:break-word}.document-copy p:last-child{margin-bottom:12px}.document-copy p:first-of-type{font-size:17px;font-weight:500}.about-photo-stack{align-self:center}
@media(max-width:1000px){.document-about{grid-template-columns:1.08fr .92fr;gap:4%}.document-copy{padding:24px 22px 12px}.document-copy p{font-size:16px}.document-copy p:first-of-type{font-size:16px}.document-copy h3{font-size:25px}}
@media(max-width:760px){.document-about{grid-template-columns:1fr;gap:25px}.document-copy{padding:24px 19px 12px;background:#ffffffdf}.document-copy h3{font-size:24px;line-height:1.6}.document-copy p,.document-copy p:first-of-type{font-size:16px;line-height:1.95;font-weight:500;text-align:center;margin-bottom:24px}#about.document-section.wash:before{background:linear-gradient(90deg,#f6f9fbef,#f6f9fbde),url('assets/p5-3.webp') center/cover}}
/* Remove inherited minimum heights and empty mattes from every photo frame. */
#storage .photo-tile,#rent .photo-tile,#inspection .photo-tile,#maintenance .photo-tile,#modification .photo-tile,#other-services .photo-tile,#responsibility .photo-tile,#about .photo-tile,#why-us .photo-tile{display:block!important;min-height:0!important;height:auto!important;padding:0!important;border:0!important;background:transparent!important;line-height:0;align-self:start;overflow:hidden;box-shadow:0 9px 22px #081e4340!important}
#storage .photo-tile img,#rent .photo-tile img,#inspection .photo-tile img,#maintenance .photo-tile img,#modification .photo-tile img,#other-services .photo-tile img,#responsibility .photo-tile img,#about .photo-tile img,#why-us .photo-tile img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;aspect-ratio:auto!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;background:transparent!important}
/* Linked social channels: clear targets, official brand colors, readable handles. */
#contact .connected-socials{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:28px;font-size:14px;color:white}.social-card{display:flex;align-items:center;gap:12px;padding:14px 12px;border:1px solid #b8d4ef35;background:#071c3780;border-radius:8px;min-width:0;transition:background .25s,transform .25s,border-color .25s}.social-card:hover{background:#1c4878;border-color:#a9d2ff;transform:translateY(-3px)}#contact .social-icon{display:grid;place-items:center;flex-shrink:0;width:34px;height:36px}.social-icon svg{width:30px;height:30px;display:block}.social-line .social-icon{color:#20d362}.social-facebook .social-icon{color:#63a5ff}.social-instagram .social-icon{color:#ff81ae}.social-tiktok .social-icon{color:#8ce7ed}.social-label{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.social-label b{font-size:15px;line-height:1.3;font-weight:500}.social-label small{font-size:10px;line-height:1.55;color:#d1e2f4;overflow-wrap:anywhere}.social-arrow{color:#a9d1ff;font-size:18px;flex-shrink:0}
@media(max-width:1000px){#contact .connected-socials{grid-template-columns:1fr}.social-label small{font-size:12px}}
@media(max-width:760px){#contact .connected-socials{grid-template-columns:1fr;gap:12px}.social-card{padding:15px 17px;gap:15px}.social-label b{font-size:16px}.social-label small{font-size:12px}.social-icon svg{width:31px;height:31px}}
/* A restrained shadow, attached only to the actual image edge. */
#storage .photo-tile,#rent .photo-tile,#inspection .photo-tile,#maintenance .photo-tile,#modification .photo-tile,#other-services .photo-tile,#responsibility .photo-tile,#about .photo-tile,#why-us .photo-tile{box-shadow:0 5px 14px #102e581f!important}.dark .photo-tile{box-shadow:0 6px 17px #00152d30!important}.photo-tile:hover{box-shadow:0 8px 20px #102e5829!important}.document-certificates .photo-tile{box-shadow:0 6px 18px #102e581f!important}
/* Five-page navigation and streamlined section titles. */
.eyebrow{display:none!important}.document-copy{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important}.page-intro{position:relative;padding:58px 6% 55px;text-align:center;background:linear-gradient(110deg,#f2f7fc,#e7f0f8);color:#102e58;border-bottom:1px solid #d7e3ef;isolation:isolate;overflow:hidden}.page-intro:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f2f7fcee,#eef5fbea),url('assets/p5-3.webp') center/cover}.page-intro h1{font-size:clamp(34px,4vw,54px);line-height:1.4;font-weight:700}.page-intro p{margin-top:18px}.page-intro>.particle-layer{position:absolute;inset:0;pointer-events:none;z-index:0}.page-intro h1,.page-intro p{position:relative;z-index:1}.document-heading{margin-bottom:34px}.document-heading h2{margin-top:0}nav a[aria-current=page]:after{width:100%}.home-contact{text-align:center}.home-contact-actions,.quotation-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;margin-top:30px}.navy-button{background:#102e58;color:#fff;border:1px solid #102e58}.blue-button{background:#1768c4;color:#fff;border:1px solid #8ac2ff}.quote-email{background:white;color:#102e58;border:1px solid #a9bed6}.document-copy .button{margin:5px auto 0;display:flex;width:max-content;max-width:100%;font-size:14px}.service-guide-grid{display:grid;gap:35px}.service-guide-item{display:grid;grid-template-columns:.85fr 1.15fr;gap:35px;padding:26px 0;border-bottom:1px solid #c4d4e5;align-items:center}.service-guide-item>img{width:100%;height:260px;object-fit:cover;border-radius:7px;box-shadow:0 5px 14px #102e581c}.service-guide-item h2{font-size:28px;text-align:left!important;line-height:1.5}.service-guide-item p{font-size:16px;font-weight:500;line-height:1.85;color:#334c69;margin:15px 0}.service-guide-actions{display:flex;flex-wrap:wrap;gap:14px 26px;margin-top:20px}.service-guide-actions a{font-size:14px;color:#1056a7;font-weight:500;border-bottom:1px solid #9bb7d5;padding-bottom:5px}.portfolio-shell{scroll-margin-top:90px}.project-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:30px 6% 15px;background:#fff}.project-filters button{border:1px solid #c6d6e7;border-radius:7px;background:#f5f8fc;color:#234465;padding:11px 18px;font-weight:500;font-size:14px;transition:.25s}.project-filters button:hover{background:#e1edf9;border-color:#7ca7d6}.project-filters button.selected{background:#102e58;border-color:#102e58;color:white;box-shadow:0 5px 12px #102e581c}.filter-announcement{text-align:center;font-size:13px;color:#536a84;padding:5px 5% 24px;background:white}.portfolio-group[hidden]{display:none!important}.quotation-intro{text-align:center}.header-cta{white-space:nowrap}.service-guide-item:last-child{border-bottom:0}.home-contact .button{min-width:220px}
@media(max-width:1000px){header nav{gap:16px}header nav a{font-size:13px}.service-guide-item{gap:25px}.service-guide-item h2{font-size:25px}}
@media(max-width:760px){.page-intro{padding:38px 6%;}.page-intro h1{font-size:33px}.header-cta{font-size:12px;padding:10px 12px;gap:12px}.service-guide-item{grid-template-columns:1fr;gap:23px;padding:10px 0 30px}.service-guide-item>img{height:235px}.service-guide-item h2{font-size:25px}.service-guide-item p{font-size:15px}.service-guide-grid{gap:30px}.project-filters{gap:9px;padding:24px 5% 12px}.project-filters button{font-size:12px;padding:9px 11px}.filter-announcement{font-size:12px;padding-bottom:18px}.home-contact-actions,.quotation-actions{flex-direction:column;align-items:stretch;gap:13px}.home-contact-actions .button,.quotation-actions .button{justify-content:center;font-size:14px}.document-copy .button{margin-top:10px}.portfolio-shell{scroll-margin-top:76px}.document-heading{margin-bottom:28px}.quotation-intro h2{text-align:center!important}}
/* Portfolio is one continuous gallery, grouped by service with no photo captions. */
.portfolio-shell>.document-section{scroll-margin-top:85px}.portfolio-shell .repair-column{gap:22px}.portfolio-shell .project-pair{gap:22px}.portfolio-shell .document-heading{margin-bottom:36px}.portfolio-shell .photo-tile{cursor:zoom-in}.portfolio-shell .photo-tile .expand-photo{display:none}.portfolio-shell .project-pairs{align-items:start}
@media(max-width:760px){.portfolio-shell>.document-section{scroll-margin-top:76px}.portfolio-shell .repair-column,.portfolio-shell .project-pair{gap:13px}.portfolio-shell .document-heading{margin-bottom:25px}}

/* Spacious photographic banners for the four inner pages. */
.page-intro{min-height:410px;padding:95px 7%;display:flex;align-items:center;justify-content:center;background:#102e58;color:#fff;border:0;isolation:isolate;box-sizing:border-box}
.page-intro:before{background:linear-gradient(90deg,rgba(5,23,48,.88),rgba(10,39,73,.65),rgba(5,23,48,.79)),var(--page-banner) center 52%/cover;z-index:-2;transform:scale(1.03)}
body[data-page="about.html"]{--page-banner:url('assets/p13-1.webp')}
body[data-page="services.html"]{--page-banner:url('assets/p5-1.webp')}
body[data-page="projects.html"]{--page-banner:url('assets/p1-1.webp')}
body[data-page="contact.html"]{--page-banner:url('assets/p5-3.webp')}
.page-intro:after{content:'';position:absolute;inset:-70% -40%;pointer-events:none;background:linear-gradient(115deg,transparent 43%,rgba(157,214,255,.14) 49%,rgba(255,255,255,.18) 50%,transparent 57%);transform:translateX(-50%);animation:inner-banner-sweep 6s ease-in-out infinite;z-index:-1}
.page-intro h1{font-size:clamp(48px,5.4vw,78px);font-weight:700;line-height:1.35;letter-spacing:-.025em;margin:0;text-align:center;text-shadow:0 4px 25px #03172b80}
.page-intro h1:after{content:'';display:block;width:74px;height:4px;background:linear-gradient(90deg,#55aaff,#c3e8ff);border-radius:4px;margin:25px auto 0;box-shadow:0 0 22px #55aaff88}
@keyframes inner-banner-sweep{0%,15%{transform:translateX(-50%)}75%,100%{transform:translateX(50%)}}
@media(max-width:760px){.page-intro{min-height:300px;padding:68px 6%}.page-intro h1{font-size:clamp(38px,9vw,54px)}.page-intro h1:after{margin-top:20px;width:58px;height:3px}}
@media(prefers-reduced-motion:reduce){.page-intro:after{animation:none;transform:none}}

.portfolio-actions{display:flex;justify-content:center;margin-top:34px}.portfolio-all{background:#fff;color:#102e58;border:1px solid #b8cce2;min-width:240px;justify-content:center;cursor:pointer;font-weight:600}.wash .portfolio-all{background:#102e58;color:#fff;border-color:#102e58}.portfolio-all:hover{transform:translateY(-3px);box-shadow:0 7px 18px #102e5826}.portfolio-preview .photo-tile{width:100%;align-self:start}.portfolio-preview{align-items:start}
/* Platform branded contact buttons. */
#contact .social-card{border:1px solid #ffffff38;border-radius:10px;padding:18px 16px;color:#fff;position:relative;overflow:hidden;box-shadow:0 5px 14px #00132620;transition:transform .25s,box-shadow .25s,filter .25s}
#contact .social-line{background:linear-gradient(120deg,#078a3d,#06ad49)}
#contact .social-facebook{background:linear-gradient(120deg,#0750b9,#1877ed)}
#contact .social-instagram{background:linear-gradient(115deg,#7136b5 0%,#b72a89 38%,#d93c57 72%,#b65c21 100%)}
#contact .social-tiktok{background:linear-gradient(120deg,#080d15,#202932);border-left:3px solid #25f4ee;border-right:3px solid #fe2c55}
#contact .social-card:hover{transform:translateY(-4px);filter:brightness(1.1);box-shadow:0 9px 22px #00132635}
#contact .social-card .social-icon{color:#fff;width:42px;height:42px;border-radius:9px;background:#ffffff18}
#contact .social-line .social-icon{background:#fff;color:#069e43}
#contact .social-tiktok .social-icon svg{filter:drop-shadow(-1.3px -1px 0 #25f4ee) drop-shadow(1.3px 1px 0 #fe2c55)}
#contact .social-label b{font-weight:700;font-size:17px;color:#fff}
#contact .social-label small{color:#fff;font-weight:400}
#contact .social-arrow{color:#fff;font-size:21px}
#contact .line-button{background:#06a746;color:#fff;border:1px solid #54dc85;box-shadow:0 5px 18px #00132624}
a.button[href*="line.me"]{background:#079b43;color:#fff;border-color:#43cb7b}
.mobile-dock a[href*="line.me"]{background:#079b43;color:#fff}
/* Contemporary inner-page art direction; the restored homepage is unchanged. */
.inner-page{background:#f4f7fb}
.inner-page .page-intro{display:grid;grid-template-columns:1fr 1fr;min-height:540px;padding:0;text-align:left;background:radial-gradient(ellipse at 28% 80%,#174775 0%,#0a213e 58%,#071a31 100%);position:relative;overflow:hidden}
.inner-page .page-intro:before{background:repeating-linear-gradient(90deg,transparent 0,transparent 109px,#a6cced08 110px,#a6cced08 111px);transform:none;z-index:0}
.inner-page .page-intro:after{inset:0;z-index:1;background:linear-gradient(110deg,transparent 42%,#92d5ff18 50%,transparent 57%);pointer-events:none}
.page-banner-copy{padding:65px 5% 70px 13%;position:relative;z-index:3;max-width:740px}
.page-breadcrumb{display:inline-block;color:#c0d5e8;font-size:14px;margin-bottom:30px;transition:color .2s}.page-breadcrumb:hover{color:#fff}
.inner-page .page-intro h1{font-size:clamp(48px,5.7vw,84px);font-weight:800;line-height:1.24;letter-spacing:-.04em;text-align:left;margin:0;color:#fff;text-shadow:none;overflow-wrap:anywhere}
.inner-page .page-intro h1:after{display:none}
.page-banner-actions{display:flex;margin-top:35px}
.banner-quote{padding:14px 24px!important;background:#e9f5ff!important;color:#0d345e!important;border:1px solid #fff!important;border-radius:7px!important;font-weight:700;box-shadow:0 5px 22px #0002;font-size:15px;gap:24px}
.page-banner-media{position:absolute;right:0;inset-block:0;width:49%;overflow:hidden;clip-path:polygon(17% 0,100% 0,100% 100%,0 100%);z-index:1;background:#163855}
.page-banner-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b284444,transparent 65%),linear-gradient(0deg,#091f3b66,transparent 55%);box-shadow:inset 0 -3px 0 #6dbbff}
.page-banner-media img{height:100%;width:100%;object-fit:cover;animation:banner-photo-drift 12s ease-in-out infinite alternate;filter:saturate(.85) contrast(1.05)}
@keyframes banner-photo-drift{from{transform:scale(1.02)}to{transform:scale(1.09) translateX(-1%)}}
.inner-page .document-section{padding-top:82px;padding-bottom:82px}
.inner-page .document-heading{margin-bottom:38px}
.inner-page .document-heading h2{font-size:clamp(30px,3.4vw,46px);font-weight:700;letter-spacing:-.03em}
.inner-page .wash{background-color:#f6f8fc}
.inner-page .service-guide-grid{gap:24px}
.inner-page .service-guide-item{background:#fff;padding:24px;border:1px solid #dae5ef;border-radius:12px;gap:38px;box-shadow:0 7px 26px #12355907;overflow:hidden;transition:border-color .25s,transform .25s}
.inner-page .service-guide-item:hover{border-color:#8bb8e2;transform:translateY(-3px)}
.inner-page .service-guide-item:nth-child(even){grid-template-columns:1.15fr .85fr}
.inner-page .service-guide-item:nth-child(even)>img{grid-column:2;grid-row:1}
.inner-page .service-guide-item:nth-child(even)>div{grid-column:1;grid-row:1}
.inner-page .service-guide-item>img{height:315px;border-radius:7px;box-shadow:none}
.inner-page .service-guide-item h2{font-size:clamp(24px,2.4vw,34px)}
.inner-page .service-guide-actions a{font-size:14px;font-weight:500;padding:10px 0;border-bottom:2px solid #a1c3e5}
.inner-page .service-guide-actions a:last-child{background:#102e58;color:#fff;border:0;padding:10px 18px;border-radius:6px}
.inner-page .document-about{gap:55px;align-items:center}
.inner-page #about .document-copy h3{font-size:clamp(26px,3vw,38px);line-height:1.45;font-weight:700;margin-bottom:22px}
.inner-page #standards .certificate-card{border-color:#d7e3f0}
.inner-page .portfolio-all{border-radius:7px;font-weight:700;padding:14px 26px;background:#eff7ff;color:#102e58}
.inner-page .portfolio-group+.portfolio-group{border-top:1px solid #9cb4cf22}
.inner-page .contact-inner{gap:64px}
.inner-page #contact .connected-socials{gap:16px}
.quote-section{padding:80px 6%;max-width:1440px;margin:auto}
.quote-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px;align-items:start}
.quote-aside{position:sticky;top:120px}.quote-aside h2{font-size:42px;text-align:left!important;letter-spacing:-.04em;line-height:1.3}.quote-aside>p{font-size:17px;margin-top:24px;color:#46607b}
.quote-steps{display:grid;gap:24px;margin:36px 0}.quote-steps>div{display:flex;align-items:center;gap:17px}.quote-steps b{display:grid;place-items:center;width:43px;height:43px;border:1px solid #c4d7ea;border-radius:50%;color:#1056a7;font-size:14px}.quote-steps span{font-weight:500;font-size:16px}
.quote-phone{display:flex;flex-direction:column;padding-top:24px;border-top:1px solid #c9d8e6;color:#46607b;font-size:14px}.quote-phone strong{font-size:27px;color:#102e58;font-weight:700;margin-top:7px}
.quote-form{background:#fff;border:1px solid #dce5ef;border-radius:12px;padding:36px;box-shadow:0 12px 35px #102e5807}
.quote-form fieldset{border:0;padding:0;margin:0 0 32px;min-width:0}.quote-form fieldset+fieldset{padding-top:27px;border-top:1px solid #e0e9f1}
.quote-form legend{font-size:22px;font-weight:700;padding:0;margin-bottom:20px}.quote-form legend span,.quote-form em{color:#b53746;font-style:normal}
.service-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-choices label{position:relative;cursor:pointer}.service-choices input{position:absolute;opacity:0;width:1px;height:1px}.service-choices span{display:flex;align-items:center;min-height:57px;padding:13px 13px 13px 39px;font-size:14px;font-weight:500;border:1px solid #cbd9e7;border-radius:7px;background:#fafcfe;transition:.2s}.service-choices span:before{content:'';position:absolute;left:13px;width:16px;height:16px;border:1.5px solid #a2b5c8;border-radius:4px;background:white}.service-choices input:checked+span{background:#edf5ff;border-color:#2976bd;color:#104e89}.service-choices input:checked+span:before{content:'✓';display:grid;place-items:center;color:white;font-size:12px;background:#1056a7;border-color:#1056a7}.service-choices input:focus-visible+span{outline:3px solid #91caff;outline-offset:3px}
.quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}.quote-fields>label{display:block;color:#264362;font-size:14px;font-weight:500}.quote-fields .full{grid-column:1/-1}
.quote-fields input,.quote-fields textarea{display:block;width:100%;font:16px/1.5 Kanit,sans-serif;color:#102e58;background:#fbfcfe;border:1px solid #c9d7e6;border-radius:6px;padding:12px 13px;margin-top:8px;min-width:0;transition:border-color .2s,box-shadow .2s}.quote-fields input{min-height:49px}.quote-fields textarea{resize:vertical}.quote-fields input:focus,.quote-fields textarea:focus{outline:none;border-color:#2878be;box-shadow:0 0 0 3px #328de51a}.quote-fields input::placeholder,.quote-fields textarea::placeholder{font-size:14px;color:#7a8ca0;font-weight:400}
.quote-note{font-size:13px;line-height:1.8;margin:0 0 20px;color:#62758a}.quote-submit{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#1056a7;color:#fff;border:0;border-radius:7px;padding:16px 23px;font-weight:700;font-size:16px}.quote-form>.quote-submit{width:100%}.draft-status{font-size:12px;margin-top:12px;color:#65788a}.field-error{color:#b53746;font-size:13px;margin-top:10px}
.quote-review{margin-top:50px;padding:36px;background:#fff;border:1px solid #b6cde4;border-top:4px solid #1056a7;border-radius:10px;scroll-margin-top:110px}.quote-review[hidden]{display:none}.quote-review h2{font-size:30px}.quote-review pre{white-space:pre-wrap;overflow-wrap:anywhere;font:16px/1.85 Kanit,sans-serif;color:#254563;background:#f4f8fc;padding:24px;border-radius:6px;margin:25px 0}.quote-send-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.quote-line{background:#069944;color:#fff;border:0;border-radius:7px;padding:16px 22px;font-weight:700}.quote-text-button{background:transparent;border:0;color:#1056a7;text-decoration:underline;font-size:14px;padding:10px}.quote-review #quote-feedback{font-size:14px;margin-top:20px}.quote-open-line{font-weight:700;text-decoration:underline;color:#07883e}
@media(min-width:1600px){.page-banner-copy{padding-left:20%}}
@media(max-width:1000px){.inner-page .page-intro{min-height:460px}.page-banner-copy{padding:50px 5% 55px 10%}.inner-page .page-intro h1{font-size:60px}.quote-layout{grid-template-columns:1fr;gap:35px}.quote-aside{position:static}.quote-steps{grid-template-columns:repeat(3,1fr);gap:12px}.quote-steps>div{align-items:flex-start}.quote-phone{display:none}.inner-page .service-guide-item,.inner-page .service-guide-item:nth-child(even){gap:23px}.inner-page .service-guide-item>img{height:290px}}
@media(max-width:760px){.inner-page .page-intro{display:flex;align-items:stretch;min-height:0;flex-direction:column}.page-banner-copy{padding:35px 7% 38px;max-width:none}.page-breadcrumb{margin-bottom:18px;font-size:12px}.inner-page .page-intro h1{font-size:clamp(40px,10vw,58px);max-width:100%;line-height:1.25}.page-banner-actions{margin-top:23px}.banner-quote{padding:11px 19px!important;font-size:14px}.page-banner-media{position:relative;width:100%;height:215px;clip-path:polygon(0 9%,100% 0,100% 100%,0 100%);margin-top:-14px}.inner-page .document-section{padding-top:52px;padding-bottom:52px}.inner-page .document-heading{margin-bottom:28px}.inner-page .service-guide-item,.inner-page .service-guide-item:nth-child(even){grid-template-columns:1fr;padding:17px;gap:24px;border-radius:10px}.inner-page .service-guide-item:nth-child(even)>img,.inner-page .service-guide-item:nth-child(even)>div{grid-column:auto;grid-row:auto}.inner-page .service-guide-item>img{height:235px}.inner-page .service-guide-item h2{font-size:26px}.inner-page .document-about{gap:30px}.inner-page .contact-inner{gap:40px}.quote-section{padding:45px 5%}.quote-aside h2{font-size:32px}.quote-aside>p{font-size:16px;margin-top:16px}.quote-steps{grid-template-columns:1fr;gap:14px;margin:25px 0 0}.quote-steps>div{align-items:center}.quote-steps b{width:34px;height:34px;flex-shrink:0}.quote-steps span{font-size:14px}.quote-form{padding:23px 18px}.quote-form legend{font-size:21px}.service-choices{gap:10px;grid-template-columns:1fr}.service-choices span{font-size:15px}.quote-fields{grid-template-columns:1fr;gap:18px}.quote-fields .full{grid-column:auto}.quote-review{padding:24px 18px}.quote-review h2{font-size:26px}.quote-review pre{padding:17px;font-size:14px}.quote-send-actions{flex-direction:column;align-items:stretch}.quote-send-actions .button{justify-content:center;font-size:14px}.quote-form>.quote-submit{font-size:15px;padding:15px}.quote-text-button{text-align:center}}
@media(prefers-reduced-motion:reduce){.page-banner-media img{animation:none}.inner-page .service-guide-item:hover{transform:none}}
