/* Photo journal presentation. Content comes from native Elementor, Porto and album fields. */
.ps-site.ps-native-page .elementor .ps-photo-page-section>.hn-wrap {max-width:1160px;}
.ps-photo-page-hero {overflow:hidden;position:relative;}
.ps-photo-page-title em {font-family:PSSerif,Georgia,serif;font-weight:400;color:#006b54;}
.ps-photo-page-copy {max-width:540px;}
.ps-photo-feature .posts-wrap {margin:0!important;}
.ps-photo-feature .porto-tb-item {width:100%!important;padding:0!important;}
.ps-site .ps-photo-tile {border:0;background:transparent;box-shadow:none;overflow:visible;}
.ps-photo-tile .ps-photo-tile-image {overflow:hidden;border-radius:20px;position:relative;}
.ps-photo-tile .ps-photo-tile-image a {display:block;}
.ps-photo-tile .ps-photo-tile-image img {width:100%;aspect-ratio:1.6;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.7,.2,1);}
.ps-photo-tile:focus-within .ps-photo-tile-image img,.ps-photo-tile:hover .ps-photo-tile-image img {transform:scale(1.035);}
.ps-site .ps-photo-tile .ps-photo-tile-body {padding:22px 0 26px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid #dce5e9;}
.ps-photo-tile-meta {display:flex;flex-wrap:wrap;gap:14px;align-items:center;}
.ps-photo-tile-count {margin-left:auto;}
.ps-site .ps-photo-tile-name {margin:0;}
.ps-photo-tile-name a {display:flex;justify-content:space-between;gap:18px;color:inherit;}
.ps-photo-tile-name a::after {content:"";width:13px;height:13px;border-top:1.5px solid #006b54;border-right:1.5px solid #006b54;background:linear-gradient(135deg,transparent 44%,#006b54 44%,#006b54 55%,transparent 55%);flex-shrink:0;margin-top:5px;}
.ps-photo-feature .ps-photo-tile-image img {aspect-ratio:1.28;}
.ps-photo-feature .ps-photo-tile-body {padding:20px 22px 22px!important;border:0!important;background:#ffffff;border-radius:0 0 20px 20px;}
.ps-photo-feature .ps-photo-tile-image {border-radius:20px 20px 0 0;}
.ps-photo-feature .ps-photo-tile-name {font-size:20px!important;}
.ps-site .ps-photo-archive .posts-wrap {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 34px;margin:0!important;}
.ps-site .ps-photo-archive .porto-tb-item {width:auto!important;max-width:none!important;padding:0!important;margin:0!important;}
.ps-photo-archive .porto-tb-item:last-child:nth-child(odd) {grid-column:1/-1;}
.ps-photo-archive .porto-tb-item:last-child:nth-child(odd) .ps-photo-tile-image img {aspect-ratio:2.65;}
.ps-photo-archive-head {border-bottom:1px solid #dce5e9;padding-bottom:28px!important;}
.ps-album-story {background:#ffffff;}
.ps-album-hero {padding:34px 0 64px;background:#f2f6f7;border-bottom:1px solid #dce5e9;}
.ps-album-back {display:inline-flex;margin-bottom:34px;color:#526774;font-size:13px;}
.ps-album-introduction {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:58px;align-items:center;}
.ps-album-copy h1 {font-size:clamp(38px,4.2vw,60px);font-weight:680;letter-spacing:-2.4px;line-height:1.08;margin:18px 0 24px;color:#102536;}
.ps-album-copy .ps-eyebrow {font-size:10px;letter-spacing:1.8px;color:#006b54;}
.ps-album-copy .ps-album-context {font-size:14px;line-height:1.8;color:#526774;margin:22px 0 0;}
.ps-album-facts {display:flex;gap:12px;flex-wrap:wrap;font-size:12px;font-weight:550;color:#006b54;}
.ps-album-facts span,.ps-album-facts time {border:1px solid #cbded7;border-radius:30px;padding:8px 12px;background:#ffffff;}
.ps-album-open {margin-top:28px;}
.ps-album-cover {display:block;position:relative;overflow:hidden;border-radius:24px;isolation:isolate;}
.ps-album-cover img {display:block;width:100%;aspect-ratio:1.35;object-fit:cover;}
.ps-album-cover>span {position:absolute;bottom:18px;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;background:#0b2233e6;border:1px solid #ffffff2a;border-radius:10px;padding:14px 18px;color:#cef47b;font-size:10px;letter-spacing:1.8px;}
.ps-album-cover>span>span {font-size:22px;line-height:1;}
.ps-album-body {padding-block:64px 76px;}
.ps-site .ps-album-story .ps-local-album {margin:0;scroll-margin-top:140px;}
.ps-album-section-head {display:flex;gap:40px;justify-content:space-between;align-items:flex-end;margin-bottom:32px;}
.ps-album-section-head h2,.ps-album-update h2 {font-size:36px;letter-spacing:-1.4px;font-weight:650;line-height:1.15;margin:12px 0 0;color:#102536;}
.ps-album-section-head p {font-size:14px;line-height:1.7;max-width:300px;color:#526774;margin:0;}
.ps-site .ps-album-story .gallery {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.ps-site .ps-album-story .ps-album-photos-roomy .gallery {grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:200px;grid-auto-flow:dense;}
.ps-album-story .ps-album-photos-roomy .gallery-item:first-child {grid-column:span 2;grid-row:span 2;}
.ps-album-story .gallery-item {position:relative;min-width:0;overflow:hidden;border-radius:16px;}
.ps-site .ps-album-story .gallery-icon,.ps-site .ps-album-story .gallery-icon a {height:100%;}
.ps-site .ps-album-story .gallery img {height:100%;width:100%;border-radius:0;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1);}
.ps-album-story .gallery-icon a:hover img,.ps-album-story .gallery-icon a:focus-visible img {transform:scale(1.04);}
.ps-album-story .gallery-icon a::before {content:"";position:absolute;right:12px;bottom:12px;width:38px;height:38px;background:#0b2233d9;border:1px solid #ffffff4d;border-radius:50%;pointer-events:none;z-index:1;}
.ps-album-story .gallery-icon a::after {content:"";position:absolute;right:25px;bottom:25px;width:12px;height:12px;border-top:1.5px solid #ffffff;border-right:1.5px solid #ffffff;background:linear-gradient(135deg,transparent 44%,#ffffff 44%,#ffffff 55%,transparent 55%);pointer-events:none;z-index:1;}
.ps-album-story .gallery-caption {position:absolute;bottom:0;background:#0b2233eb;color:#ffffff;padding:12px 52px 12px 12px!important;width:100%;}
.ps-album-update {display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 34px;background:#f2f6f7;border:1px solid #dce5e9;border-radius:20px;margin-top:48px;}
.ps-album-update h2 {font-size:27px;margin-top:9px;}
.ps-album-adjacent {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:34px;}
.ps-album-adjacent>a {display:flex;gap:18px;align-items:center;border-top:1px solid #dce5e9;padding-top:24px;color:#102536;}
.ps-album-adjacent img {width:72px;height:72px;object-fit:cover;border-radius:12px;}
.ps-album-adjacent small {font-size:9px;letter-spacing:1.5px;color:#526774;display:block;margin-bottom:7px;}
.ps-album-adjacent strong {font-size:15px;line-height:1.4;font-weight:600;}
.ps-album-adjacent>a>span:last-child {margin-left:auto;color:#006b54;}
.ps-site .elementor-lightbox .elementor-swiper-button {width:48px;height:48px;align-items:center;justify-content:center;border-radius:50%;background:#0b2233c9;border:1px solid #ffffff59;margin-inline:14px;font-size:23px;}
.ps-site .elementor-lightbox .elementor-swiper-button svg {width:20px;height:20px;}
.ps-site .elementor-lightbox .elementor-swiper-button:hover {background:#006b54;}
.ps-site .elementor-lightbox .elementor-slideshow__counter {background:#0b2233;border:1px solid #ffffff2a;padding:8px 12px;border-radius:30px;color:#cef47b;font-size:13px;}
@media(max-width:1024px){
 .ps-album-introduction {gap:30px;}
 .ps-album-copy h1 {font-size:42px;letter-spacing:-1.6px;}
 .ps-album-story .ps-album-photos-roomy .gallery {grid-auto-rows:165px!important;}
 .ps-photo-archive .posts-wrap {gap:28px!important;}
}
@media(max-width:767px){
 .ps-site .ps-photo-archive .posts-wrap {grid-template-columns:1fr;gap:28px!important;}
 .ps-photo-archive .porto-tb-item:last-child:nth-child(odd) .ps-photo-tile-image img {aspect-ratio:1.6;}
 .ps-photo-tile-name {font-size:23px!important;}
 .ps-album-hero {padding:24px 0 36px;}
 .ps-album-back {margin-bottom:28px;}
 .ps-album-introduction {grid-template-columns:1fr;gap:32px;}
 .ps-album-copy h1 {font-size:38px;letter-spacing:-1.5px;}
 .ps-album-cover img {aspect-ratio:1.3;}
 .ps-album-body {padding-block:40px 48px;}
 .ps-album-section-head {flex-direction:column;align-items:flex-start;gap:16px;}
 .ps-album-section-head h2 {font-size:31px;}
 .ps-site .ps-album-story .gallery,.ps-site .ps-album-story .ps-album-photos-roomy .gallery {grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:135px!important;gap:12px;}
 .ps-album-story .ps-album-photos-roomy .gallery-item:first-child {grid-column:1/-1;grid-row:span 2;}
 .ps-album-update {align-items:flex-start;flex-direction:column;padding:24px;gap:22px;margin-top:32px;}
 .ps-album-update h2 {font-size:24px;}
 .ps-album-adjacent {grid-template-columns:1fr;gap:24px;}
 .ps-site .elementor-lightbox .elementor-swiper-button {width:44px;height:44px;margin-inline:4px;}
}
@media(prefers-reduced-motion:reduce){.ps-photo-tile img,.ps-album-story .gallery img {transition:none!important;transform:none!important;}}
