/* Visible editorial refinement of the existing PONTOSPOOL identity. */
.pp-editorial{--editorial-navy:#112943;--editorial-paper:#f4f7f8}
.pp-editorial .feature-section.bento-upgrade{background:var(--editorial-paper)!important;padding:112px 0 96px}
.pp-editorial .feature-section.bento-upgrade::before{display:none}
.pp-editorial .feature-section.bento-upgrade .bento-header{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;max-width:none;margin-bottom:64px;align-items:end}
.pp-editorial .feature-section.bento-upgrade .bento-header h2{font-size:clamp(36px,4.2vw,60px);line-height:1.05;letter-spacing:-.045em;margin:0}
.pp-editorial .feature-section.bento-upgrade .bento-header p{font-size:18px;line-height:1.8;margin:0;max-width:48ch}
.pp-editorial .section-caption{display:flex;align-items:center;gap:14px;margin:0 0 24px;font-size:12px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#38647a}
.pp-editorial .section-caption::before{content:'';width:30px;height:1px;background:currentColor}
.pp-editorial .feature-section.bento-upgrade .bento-grid{grid-template-columns:1.3fr 1fr 1fr;gap:24px}
.pp-editorial .feature-section.bento-upgrade .bento-card{border-radius:12px;padding:32px;box-shadow:none;border:none}
.pp-editorial .feature-section.bento-upgrade .bento-card h3{font-size:25px;letter-spacing:-.035em;line-height:1.15}
.pp-editorial .feature-section.bento-upgrade .bento-card p{color:#465c6b;line-height:1.75}
.pp-editorial .feature-section.bento-upgrade .bento-card.slot-1{padding:0;background:#112943;min-height:640px;display:flex;justify-content:flex-end;isolation:isolate;overflow:hidden}
.pp-editorial .feature-section.bento-upgrade .slot-1 .slot1-photo{position:absolute;inset:0;margin:0;border-radius:0;overflow:hidden;perspective:none}
.pp-editorial .slot-1 .slot1-photo::before{display:none}
.pp-editorial .slot-1 .slot1-photo .pp-depth-frame{height:100%;transform:none!important;box-shadow:none;border-radius:0}
.pp-editorial .slot-1 .slot1-photo img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:25% center}
.pp-editorial .slot-1 .hero-content{position:relative;z-index:2;padding:100px 32px 32px;background:linear-gradient(transparent,#0a2139e8 38%,#0a2139)}
.pp-editorial .feature-section.bento-upgrade .slot-1 .hero-content h3{font-size:38px;color:white}
.pp-editorial .feature-section.bento-upgrade .slot-1 .hero-content p{color:#dae7ed;font-size:16px}
.pp-editorial .feature-section.bento-upgrade :is(.slot-2,.slot-3,.slot-team,.slot-5){background:#fff;border-top:2px solid #a2d9e7;justify-content:flex-start}
.pp-editorial .feature-section.bento-upgrade .card-foot{margin-top:auto;padding-top:24px}
.pp-editorial .feature-section.bento-upgrade .slot-digital{background:#e3eef2;display:flex;align-items:center;gap:40px;padding:36px 40px;border-radius:12px}
.pp-editorial .feature-section.bento-upgrade .slot-digital h3{font-size:28px}
.pp-editorial .feature-section.bento-upgrade .slot-6{background:#112943;border:0;padding:44px 40px;box-shadow:0 22px 44px -28px #11294390}
.pp-editorial .feature-section.bento-upgrade .slot-6 h3{color:#fff;font-size:30px}
.pp-editorial .feature-section.bento-upgrade .slot-6 p{color:#d7e4ec}
.pp-editorial .project-panorama{margin:0;background:#112943;position:relative;isolation:isolate;overflow:hidden}
.pp-editorial .project-panorama img{width:100%;height:clamp(420px,47vw,650px);display:block;object-fit:cover;object-position:center 58%}
.pp-editorial .project-panorama::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 40%,#071c35c9);pointer-events:none;z-index:0}
.pp-editorial .project-panorama figcaption{position:absolute;inset:auto 0 0;z-index:1;padding:44px max(24px,calc((100% - 1170px)/2));color:white;display:flex;justify-content:space-between;align-items:end;gap:32px}
.pp-editorial .project-panorama figcaption strong{font-size:clamp(30px,4vw,52px);line-height:1.1;letter-spacing:-.035em;max-width:17ch;font-weight:600}
.pp-editorial .project-panorama figcaption span{font-size:14px;letter-spacing:.02em}
.pp-editorial :is(.process-timeline-section,.home-service,.home-faq){padding-top:112px;padding-bottom:112px}
.pp-editorial :is(.pt-header,.hs-header,.hf-header) h2{font-size:clamp(34px,4vw,56px);letter-spacing:-.04em;line-height:1.08}
.pp-editorial :is(.hs-header,.hf-header){text-align:left;max-width:780px;margin-left:0;margin-bottom:56px}
.pp-editorial :is(.hs-header,.hf-header) p{font-size:18px;line-height:1.75;margin-left:0;max-width:55ch}
.pp-editorial :is(.pa-content,.ka-content) h2{font-size:clamp(36px,4vw,56px);line-height:1.08;letter-spacing:-.04em}
.pp-editorial .home-service{background:#f4f7f8}
.pp-editorial .hs-grid .sy-zeile{background:#fff;border-radius:10px;padding:24px;border:0;border-top:1px solid #c7dce5;box-shadow:none}
.pp-editorial .hs-grid dt{font-size:21px;letter-spacing:-.025em;line-height:1.25}
.pp-editorial .hs-grid dd{font-size:16px;line-height:1.75;color:#465c6b;margin-top:10px}
.pp-editorial .hf-list{border-top:1px solid #c6d7e2}
.pp-editorial .hf-list details{border:0!important;border-bottom:1px solid #c6d7e2!important;border-radius:0;box-shadow:none;margin:0;background:transparent}
.pp-editorial .hf-list summary{padding:25px 52px 25px 0;font-size:19px;letter-spacing:-.015em}
.pp-editorial .hf-list details[open]{padding-left:20px;padding-right:20px}
.pp-editorial .home-contact{padding:96px 0;background:#e5f2f6}
.pp-editorial .hc-inner{gap:72px;align-items:center}
.pp-editorial .hc-inner h2{font-size:clamp(36px,4vw,54px);letter-spacing:-.045em;line-height:1.08;color:#112943;max-width:16ch}
.pp-editorial .hc-text{font-size:18px;line-height:1.8;color:#3b5366}
.pp-editorial .hc-region{font-size:14px;line-height:1.8;color:#4b6578}
.pp-editorial .hc-card{padding:40px;background:#112943;border:1px solid #ffffff20;border-radius:16px;box-shadow:0 28px 60px -30px #11294388;color:#fff}
.pp-editorial .hc-card :is(li,a,span){color:inherit}
.pp-editorial .hc-card .hc-btn-primary{background:#91dbea;color:#102b45}
@media(max-width:991px){
 .pp-editorial .feature-section.bento-upgrade .bento-header{grid-template-columns:1fr;gap:28px}
 .pp-editorial .feature-section.bento-upgrade .bento-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pp-editorial .feature-section.bento-upgrade .slot-1{grid-column:1/-1;grid-row:auto;min-height:540px}
 .pp-editorial .feature-section.bento-upgrade :is(.slot-digital,.slot-6){grid-column:1/-1}
 .pp-editorial .slot-1 .hero-content{max-width:100%;padding-top:140px}
 .pp-editorial .hc-inner{gap:32px}
}
@media(max-width:600px){
 .pp-editorial .feature-section.bento-upgrade,.pp-editorial :is(.process-timeline-section,.home-service,.home-faq,.home-contact){padding:64px 0}
 .pp-editorial .feature-section.bento-upgrade .bento-header{margin-bottom:32px}
 .pp-editorial .feature-section.bento-upgrade .bento-grid{grid-template-columns:1fr;gap:16px}
 .pp-editorial .feature-section.bento-upgrade .bento-card{grid-column:1!important;padding:26px}
 .pp-editorial .feature-section.bento-upgrade .bento-card.slot-1{padding:0;min-height:560px}
 .pp-editorial .slot-1 .hero-content{padding:100px 26px 26px}
 .pp-editorial .feature-section.bento-upgrade :is(.slot-digital,.slot-6){display:flex;flex-direction:column;align-items:flex-start;gap:24px}
 .pp-editorial .feature-section.bento-upgrade .bento-header p{font-size:17px}
 .pp-editorial .project-panorama figcaption{padding:28px 24px;display:block}
 .pp-editorial .project-panorama figcaption strong{display:block;margin-bottom:18px}
 .pp-editorial .project-panorama img{height:480px}
 .pp-editorial .hc-card{padding:28px 24px}
 .pp-editorial .hf-list summary{font-size:17px}
}

/* Aerial project photo: keep the pool central at narrow widths. */
.pp-editorial .project-panorama img{object-position:50% 62%}
/* Keep the measuring work visible: caption below the photograph. */
.pp-editorial .feature-section.bento-upgrade .bento-card.slot-1{justify-content:flex-start;min-height:0}
.pp-editorial .feature-section.bento-upgrade .slot-1 .slot1-photo{position:relative;inset:auto;flex:none;width:100%;aspect-ratio:1.15;margin:0;overflow:hidden}
.pp-editorial .slot-1 .slot1-photo img{object-position:25% 75%}
.pp-editorial .slot-1 .hero-content{padding:28px 32px 32px;background:#112943;flex:1}
@media(max-width:600px){
 .pp-editorial .feature-section.bento-upgrade .bento-card.slot-1{min-height:0}
 .pp-editorial .slot-1 .hero-content{padding:26px}
 .pp-editorial .feature-section.bento-upgrade .slot-1 .hero-content h3{font-size:32px}
}
/* Blend only the lower edge; keep hands and measuring stick unobscured. */
.pp-editorial .feature-section.bento-upgrade .slot-1 .slot1-photo::after{content:'';position:absolute;inset:auto 0 0;height:24%;background:linear-gradient(to bottom,rgba(17,41,67,0),rgba(17,41,67,.35) 38%,#112943 100%);pointer-events:none;z-index:2}
.pp-editorial .slot-1 .hero-content{margin-top:-1px;padding-top:14px}
@media(max-width:600px){.pp-editorial .slot-1 .hero-content{padding-top:14px}}
/* Project image belongs to the editorial page grid, with room for its caption. */
.pp-editorial .project-panorama{width:calc(100% - 48px);max-width:1280px;margin:0 auto;border-radius:24px;background:#112943;box-shadow:0 24px 54px -36px #11294380;z-index:2}
.pp-editorial .project-panorama img{height:clamp(480px,48vw,680px);object-position:50% 55%}
.pp-editorial .project-panorama::after{background:linear-gradient(180deg,transparent 38%,rgba(10,30,49,.12) 52%,rgba(10,30,49,.7) 79%,#112943 100%)}
.pp-editorial .project-panorama figcaption{padding:44px 48px;align-items:end;gap:32px}
.pp-editorial .project-panorama figcaption strong{font-size:clamp(34px,3.8vw,52px);max-width:21ch;line-height:1.08}
.pp-editorial .project-panorama figcaption span{font-size:14px;line-height:1.7;color:#e0edf3;padding-left:20px;border-left:1px solid #92d9e980;max-width:240px;text-wrap:balance}
.pp-editorial .project-panorama + .process-timeline-section{margin-top:0;border-radius:0;padding-top:100px;box-shadow:none;background:#f4f7f8}
@media(max-width:600px){
 .pp-editorial .project-panorama{width:calc(100% - 30px);border-radius:16px}
 .pp-editorial .project-panorama img{height:520px;object-position:52% 55%}
 .pp-editorial .project-panorama figcaption{padding:28px 24px;display:block}
 .pp-editorial .project-panorama figcaption strong{font-size:34px;max-width:18ch;margin-bottom:22px}
 .pp-editorial .project-panorama figcaption span{display:block;font-size:13px;max-width:none;padding-left:12px}
 .pp-editorial .project-panorama + .process-timeline-section{padding-top:64px}
}
/* Full-width project scene; captions follow the content grid. */
.pp-editorial .project-panorama{width:100%;max-width:none;margin:0;border-radius:0;box-shadow:none}
.pp-editorial .project-panorama figcaption{padding-left:max(24px,calc((100% - 1170px)/2));padding-right:max(24px,calc((100% - 1170px)/2))}
@media(max-width:600px){.pp-editorial .project-panorama{width:100%;border-radius:0}.pp-editorial .project-panorama figcaption{padding-left:24px;padding-right:24px}}

.ka-store-links{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0 18px}.ka-store-link{display:flex;align-items:center;gap:14px;min-height:72px;min-width:205px;padding:13px 19px;border:1px solid #233b56;border-radius:12px;background:#0d2344;color:#fff;box-shadow:0 4px 12px rgba(13,35,68,.08);transition:background-color .18s ease}.ka-store-link .fab{font-size:32px;width:32px;text-align:center}.ka-store-link small,.ka-store-link strong{display:block;color:inherit;line-height:1.25}.ka-store-link small{font-size:12px;font-weight:400;margin-bottom:3px}.ka-store-link strong{font-size:20px;font-weight:600}.ka-store-link .ka-store-arrow{font-size:20px;margin-left:auto;color:#6fd1e5}.ka-store-link:hover{background:#163c5c;color:#fff}.ka-store-link:focus-visible{outline:3px solid #0e7490;outline-offset:4px}@media(max-width:480px){.ka-store-link{flex:1 1 210px}}@media(prefers-reduced-motion:reduce){.ka-store-link{transition:none}}
@font-face{font-family:PontosStoreIcons;font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/fa-brands-400.woff2') format('woff2')}.ka-store-link .fab{font-family:PontosStoreIcons;font-style:normal;font-weight:400}.ka-store-link .fa-apple:before{content:'\f179'}.ka-store-link .fa-android:before{content:'\f17b'}
