/* Responsive release: small phones, landscape phones, tablets and wide screens. */
:root{--pk-admin-offset:0px}
html{scroll-padding-top:calc(124px + var(--pk-admin-offset))}
main,section,article,aside,.wrap,.header-inner,.footer-inner,.detail-copy,.service-copy,.project-copy,.form-panel{min-width:0}
input,select,textarea{max-width:100%}
.contact-form input,.contact-form select,.contact-form textarea{font-size:16px;min-height:48px}
.contact-form textarea{min-height:170px;resize:vertical;line-height:1.6}
.contact-form label{line-height:1.5}.contact-form .field{min-width:0}
.contact-form .button{min-height:49px}
.contact-form input,.contact-form select{width:100%}
.project-preview.screenshot{background:#1d3340;border-color:#b9d3dd3b}
.project-preview.screenshot>img{object-fit:contain;object-position:center;padding:0;background:transparent}
.project-preview.screenshot:hover>img{transform:scale(1.012);filter:brightness(.96)}
.project-preview.screenshot:focus-visible>img{transform:none}
.reference-note{font-size:12px;line-height:1.75;max-width:1040px;color:#c5d8e0;margin-top:27px}
.dialog-copy .asset-note{font-size:11px;line-height:1.75}
.project-dialog .dialog-image>img{background:#f2f3f1;max-width:100%;object-fit:contain}
.project-copy h3,.project-summary,.channel strong,.legal-content p,.legal-content address,.contact-facts p{overflow-wrap:break-word}
.channel small,.legal-content a{overflow-wrap:anywhere}
.dialog-copy{min-width:0}.dialog-actions .text-link{white-space:normal}
.scroll-stack>.project-card:nth-child(1){--stack-index:0}.scroll-stack>.project-card:nth-child(2){--stack-index:1}.scroll-stack>.project-card:nth-child(3){--stack-index:2}.scroll-stack>.project-card:nth-child(4){--stack-index:3}.scroll-stack>.project-card:nth-child(5){--stack-index:4}
@media(min-width:1600px){
 .home-hero,.hero-inner{min-height:660px}
 .hero-copy{max-width:740px}.hero-copy h1{font-size:76px}
 .hero-art>img{object-position:70% 47%}.hero-note{right:24%;top:72px}
 .scroll-stack>.project-card{padding:30px;gap:45px}
}
@media(min-width:961px) and (max-width:1100px){
 .header-inner{width:94%;gap:15px}.brand{gap:9px}.brand .logo-emblem{width:60px;height:60px}
 .wordmark strong{font-size:28px}.wordmark small{font-size:10px}
 .nav{gap:17px;font-size:13px}.nav .button{padding:11px 19px;font-size:13px;min-height:45px}
 .pk-menu{gap:17px}.hero-copy{width:66%}.hero-copy h1{font-size:clamp(44px,4.7vw,52px)}
 .hero-intro{font-size:20px}.hero-note{font-size:24px;right:16%;top:50px}
 .gateway>div{width:78%;padding:25px}.gateway h3{font-size:30px}.gateway p.gateway-tags{white-space:normal;font-size:12px}
 .gateway>div>p:not(.gateway-tags){font-size:14px;max-width:205px}
 .about-copy .eyebrow{letter-spacing:1.8px;font-size:10px}
 .contact-layout{gap:30px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
 .contact-form>.field{flex-basis:100%;width:100%}
}
@media(min-width:641px) and (max-width:960px){
 .project-grid,.all-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}
 .project-copy h3,.all-projects .project-copy h3{font-size:27px;line-height:1.13}
 .project-summary,.all-projects .project-copy dd{font-size:15px;line-height:1.6}
 .project-preview{aspect-ratio:1.6}.project-preview .project-open{font-size:11px;padding:8px 11px;left:12px;bottom:12px;opacity:1;transform:none}
 .contact-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:27px}
 .form-panel{padding:28px 24px}.form-panel>h2{font-size:34px}
 .contact-portrait{height:auto;aspect-ratio:1.5;min-height:190px;max-width:100%}
 .contact-portrait img{width:44%}.contact-portrait figcaption{left:49%;right:12px}.contact-portrait strong{font-size:18px;line-height:1.25}
 .contact-portrait span{font-size:11px}.channel{gap:12px;padding-block:20px}.channel strong{font-size:18px;line-height:1.3}.channel small{font-size:13px}
 .contact-facts h3{font-size:22px}.contact-facts p{font-size:15px}
 .gateway{min-height:340px}.gateway>div{width:88%;padding:25px 22px}.gateway h3{font-size:30px}.gateway p.gateway-tags{white-space:normal}
 .gateway>div>p:not(.gateway-tags){max-width:220px;font-size:14px}
 .gateway:after{background:linear-gradient(90deg,#293f4cf5,#293f4cda 40%,#293f4c55)}
 .personal-grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:30px}
 .porthole{width:100%;padding:13px}.porthole figcaption{left:14%;right:14%}.porthole figcaption strong{font-size:21px}
 .price-panel{gap:35px;padding:34px}.price-panel h2{font-size:34px}.price strong{font-size:70px}
}
@media(max-width:640px){
 html{scroll-padding-top:calc(98px + var(--pk-admin-offset))}
 .wrap{width:90%}.header-inner{width:92%;gap:14px;min-height:82px}
 .project-grid,.all-projects{display:grid;grid-template-columns:minmax(0,1fr);gap:34px}
 .contact-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:33px}
 .contact-aside{padding-inline:0}.contact-portrait{max-width:100%;height:230px}
 .contact-portrait strong{font-size:23px}.contact-portrait figcaption{right:20px}
 .form-panel{padding:27px 23px}.contact-form{gap:22px}
 .contact-form>.field{flex:0 0 100%;width:100%}.contact-form>.button{max-width:100%;white-space:normal}
 .contact-form label{font-size:14px}.contact-form textarea{min-height:190px}
 .form-panel>h2{font-size:34px}.channel strong{font-size:21px}.channel small{font-size:14px}
 .project-preview{aspect-ratio:1.6}.project-open{padding:9px 12px;font-size:12px}
 .project-copy h3,.all-projects h3{font-size:29px}.project-summary{font-size:16px;line-height:1.6}
 .reference-note{font-size:12px;margin-top:26px;line-height:1.8}
 .hero-copy h1{font-size:clamp(35px,8.8vw,53px);letter-spacing:-.025em}
 .hero-inner{min-height:770px;padding-bottom:340px}.hero-copy .eyebrow{letter-spacing:1.5px;gap:14px}
 .hero-actions{column-gap:11px;row-gap:12px}.hero-actions .button{min-height:47px;padding:13px 18px;font-size:13px}
 .home-services .section-heading h2{font-size:34px;line-height:1.13}
 .gateway h3{font-size:32px}.gateway>div{width:85%;padding:27px 25px}.gateway p.gateway-tags{font-size:12px;white-space:normal}
 .gateway>div>p:not(.gateway-tags){max-width:235px;font-size:15px}.gateway{min-height:360px}
 .service-nav{justify-content:flex-start;gap:4px 22px}.service-nav a{padding-block:13px;line-height:1.4;font-size:13px}
 .detail-copy h1,.page-intro h1{font-size:clamp(39px,9.5vw,58px)}
 .service-copy h2{font-size:35px}.service-copy>p:not(.eyebrow){font-size:17px}.check-list li{font-size:16px}
 .personal-grid{grid-template-columns:minmax(0,1fr)}.porthole{max-width:370px}
 .price-panel{padding:29px 25px}.price-panel h2{font-size:34px}.price strong{font-size:76px}
 .price-panel>div>p:not(.eyebrow):not(.price){font-size:15px}
 .faq summary{font-size:20px;line-height:1.4;padding-right:37px}.faq details>p{font-size:16px;line-height:1.65}
 .legal-layout{grid-template-columns:minmax(0,1fr)}.legal-content{padding:25px 22px}
 .legal-intro h1{font-size:clamp(29px,6.9vw,44px);overflow-wrap:anywhere}
 .legal-content h2{font-size:23px;line-height:1.3}.legal-toc{gap:9px 17px}.legal-toc a{padding-block:8px}
 .project-dialog{width:94vw;max-height:89dvh}.dialog-image{padding:20px 35px}.dialog-image>img{height:auto;max-height:190px}
 .dialog-copy{padding:24px}.dialog-copy h2{font-size:30px}.dialog-copy .asset-note{font-size:11px}
 .dialog-close{width:42px;height:42px}.dialog-actions .text-link{font-size:14px;line-height:1.6}
 .site-footer nav{flex-wrap:wrap;gap:3px 22px;font-size:13px}.site-footer nav a{padding-block:12px;min-height:44px;display:inline-flex;align-items:center}
 .footer-inner{gap:19px}.footer-brand .wordmark strong{font-size:27px}
}
@media(max-width:380px){
 .brand{gap:8px}.wordmark strong{font-size:23px}.wordmark small{font-size:9px}.brand .logo-emblem{width:48px;height:48px}
 .menu-toggle{width:44px;height:44px;padding:10px;justify-content:center}.menu-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .hero-copy h1{font-size:clamp(33px,9.4vw,36px)}.hero-inner{min-height:810px}.hero-intro{font-size:18px}
 .eyebrow{font-size:9px;letter-spacing:1.5px;gap:12px}.eyebrow:after{width:42px}
 .gateway>div{padding:25px 22px;width:92%}.gateway h3{font-size:29px}.gateway{min-height:380px}
 .contact-portrait{height:210px}.contact-portrait strong{font-size:20px}.contact-portrait figcaption{right:13px}
 .form-panel{padding:25px 20px}.form-panel>h2{font-size:31px}.channel strong{font-size:19px}
 .page-index .about-copy h2{font-size:33px}.contact-cta>h2{font-size:33px}
}
@media(max-height:550px) and (orientation:landscape){
 .header-inner{min-height:72px}.brand .logo-emblem{width:50px;height:50px}
 .site-header.enhanced .nav.open{max-height:calc(100svh - 85px);overscroll-behavior:contain}
 .project-dialog{max-height:92dvh}.project-dialog[open]{display:grid;grid-template-columns:.8fr 1.2fr}
 .dialog-image{padding:20px;min-height:0}.dialog-image>img{max-height:210px;height:auto}.dialog-copy{padding:27px 24px}
}
@media(prefers-reduced-motion:reduce){.project-preview.screenshot:hover>img{transform:none;filter:none}}
@media(max-width:960px){.gateway,.gateway:nth-child(2){height:auto}}
@media(max-width:960px){
 .section-heading{display:block}
 .section-heading h2{margin-bottom:18px}
 .section-heading>p,.section-heading>div{max-width:none}
 .section-heading>p{margin-top:15px}
}
