/* Fotos / welcoming, playful editorial composition built from real Studioart work */
.page-fotos{--page:#faf7ee;--ink:#342f2b;background:var(--page);color:#342f2b}
.page-fotos .site-nav{color:#342f2b}
.page-fotos .nav-action{background:#3f443b;color:white;border-color:#3f443b}
.page-fotos .nav-action:hover{background:#cc6857;border-color:#cc6857}
.p-hero{min-height:810px;display:grid;grid-template-columns:.95fr 1.05fr;position:relative;overflow:hidden;padding:150px clamp(22px,5.5vw,95px) 70px;background:#faf7ee}
.p-hero::before{content:"";position:absolute;width:750px;height:750px;top:-390px;right:-190px;border-radius:50%;background:#eddfd0;opacity:.76}
.p-hero-copy{z-index:5;align-self:center;padding:0 0 60px max(0px,calc((100vw - 1500px)/2))}
.p-hero .eyebrow{color:#aa5e50}
.p-hero h1{font:400 clamp(74px,10.6vw,174px)/.92 var(--serif);letter-spacing:-.08em;margin:24px 0}
.p-hero h1 em{display:block;color:#b66d65;font-weight:400}
.p-hero p{line-height:1.85;font-size:clamp(16px,1.4vw,20px);max-width:490px;color:#5b5650;margin:27px 0 31px}
.p-hero .p-actions{display:flex;gap:15px;flex-wrap:wrap;align-items:center}
.p-hero .pill-solid{background:#435246;color:white}
.p-hero .pill-outline{border-color:#6d6862}
.p-collage{position:relative;min-height:620px;width:100%;align-self:center;isolation:isolate}
.p-collage .photo{position:absolute;box-shadow:0 20px 60px #1e1a1232;border:8px solid #faf7ee;overflow:hidden;transition:transform .6s var(--ease)}
.p-collage .photo img{height:100%;width:100%;object-fit:cover}
.p-collage .photo-1{width:66%;height:78%;right:11%;top:6%;transform:rotate(5deg)}
.p-collage .photo-2{width:40%;height:46%;left:0;top:36%;transform:rotate(-10deg);z-index:3}
.p-collage .photo-3{width:33%;height:37%;right:-4%;bottom:0;transform:rotate(9deg);z-index:4}
.p-collage .photo-1:hover{transform:rotate(2deg) translateY(-12px)}
.p-collage .photo-2:hover{transform:rotate(-6deg) translateY(-13px)}
.p-collage .photo-3:hover{transform:rotate(4deg) translateY(-13px)}
.p-collage .p-stamp{position:absolute;z-index:4;top:0;left:13%;width:124px;height:124px;display:grid;place-items:center;background:#d0dba7;border-radius:50%;text-align:center;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;transform:rotate(-12deg)}
.p-trustbar{display:flex;gap:25px;align-items:center;justify-content:space-around;flex-wrap:wrap;background:#d9e0ce;padding:28px 5vw;color:#40513e;font-size:11px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.p-trustbar b{font-size:17px;opacity:.5;font-weight:500}
.p-intro{padding-top:137px;padding-bottom:104px}
.p-intro-inner{display:grid;grid-template-columns:1.05fr .8fr;gap:8vw;align-items:end}
.p-intro h2{font:400 clamp(52px,7.5vw,116px)/1.02 var(--serif);letter-spacing:-.07em;margin:24px 0 0}
.p-intro h2 em{color:#b76f64}
.p-intro p{font-size:18px;line-height:1.8;max-width:410px;color:#69625a}
.p-gallery{padding-top:0;padding-bottom:130px}
.p-filter-nav{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:36px}
.p-filter-nav button{border-radius:100px;border:1px solid #878777;background:transparent;padding:12px 20px;color:#4d4a41;font-size:12px;font-weight:750;transition:.25s}
.p-filter-nav button.active,.p-filter-nav button:hover{background:#435246;color:#fff;border-color:#435246}
.p-gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-flow:row dense;gap:clamp(11px,1.5vw,24px)}
.photo-item{grid-column:span 4;margin:0;position:relative}
.photo-item:nth-child(4n+1){grid-column:span 5}
.photo-item:nth-child(4n+2){grid-column:span 3}
.photo-item:nth-child(4n+3){grid-column:span 4}
.photo-item:nth-child(4n+4){grid-column:span 4}
.photo-item .img-frame{aspect-ratio:4/5}
.photo-item:nth-child(3n) .img-frame{aspect-ratio:4/4.35}
.photo-item:nth-child(4n+1) .img-frame{aspect-ratio:4/3.25}
.photo-item figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;font-size:13px;font-weight:750;color:#50483f}
.photo-item figcaption span{font-size:11px;opacity:.58;font-weight:500}
#gallery-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.p-guide{background:#e9b8ae;padding-top:130px;padding-bottom:138px;color:#352e2a}
.p-guide-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:10vw;align-items:center}
.p-guide .img-frame{aspect-ratio:3/4;transform:rotate(-3deg);box-shadow:18px 18px 0 #ec9686}
.p-guide h2{font:400 clamp(53px,6.2vw,101px)/1.03 var(--serif);letter-spacing:-.075em;margin:18px 0 24px}
.p-guide h2 em{color:#795143}
.p-guide p{font-size:17px;line-height:1.85;max-width:590px}
.p-guide .pill{margin-top:22px;background:#435246}
.p-packages{background:#435246;color:#fcfbf5;padding-top:130px;padding-bottom:130px}
.p-package-head{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;align-items:end;margin-bottom:55px}
.p-package-head h2{font:400 clamp(53px,7vw,106px)/1.01 var(--serif);letter-spacing:-.08em;margin:22px 0 0}
.p-package-head h2 em{color:#d5e1ad}
.p-package-head p{max-width:350px;color:#e5e9d7d9;line-height:1.8;font-size:16px}
.p-package-list{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.p-package{border:1px solid #e3e3d060;padding:30px 28px 32px;display:flex;flex-direction:column;min-height:385px;transition:transform .35s,background .35s}
.p-package:hover{transform:translateY(-6px);background:#fff1}
.p-package.featured{background:#ecebd9;color:#394236}
.p-package.featured .p-package-description{color:#4f554d}
.p-package .p-package-number{font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.72}
.p-package h3{font:400 clamp(29px,3vw,48px)/1 var(--serif);letter-spacing:-.06em;margin:34px 0 9px}
.p-package .p-price{font-size:clamp(40px,4vw,65px);letter-spacing:-.08em;font-weight:600}
.p-package-description{font-size:14px;line-height:1.8;color:#e2e7dc;margin:12px 0 27px}
.p-package .p-book{display:flex;align-items:center;justify-content:space-between;border-top:1px solid currentColor;padding-top:17px;margin-top:auto;font-size:13px;font-weight:780}
.p-package .p-book span{font-size:27px;font-weight:400}
.p-package-meta{max-width:870px;margin-top:28px;line-height:1.7;font-size:12px;color:#e2e8da}
.p-close{background:#faf7ee;color:#322d29;display:grid;grid-template-columns:.87fr 1.13fr;align-items:stretch;min-height:680px}
.p-close-copy{padding:clamp(70px,9vw,150px) clamp(24px,7vw,100px) clamp(75px,8vw,130px)}
.p-close-copy h2{font:400 clamp(53px,6.5vw,110px)/1.01 var(--serif);letter-spacing:-.07em;margin:24px 0}
.p-close-copy h2 em{color:#b66d65}
.p-close-copy p{line-height:1.75;font-size:17px;max-width:500px;color:#635b54}
.p-close-copy .pill{margin-top:28px;background:#435246}
.p-close-image .img-frame{height:100%;min-height:650px}
.p-close-image img{object-position:center}
.page-fotos .footer{background:#435246}
@media(max-width:900px){
 .p-hero{grid-template-columns:1fr 1fr;padding-left:25px;padding-right:25px}
 .p-hero h1{font-size:clamp(63px,8.5vw,112px)}
 .p-collage{min-height:550px}
 .p-intro-inner,.p-guide-grid,.p-package-head{grid-template-columns:1fr;gap:35px}
 .p-guide .img-frame{max-width:500px}
 .p-close{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
 .p-hero{grid-template-columns:1fr;min-height:800px;padding:130px 22px 15px}
 .p-hero-copy{padding:0;align-self:start}
 .p-hero h1{font-size:clamp(66px,14vw,108px)}
 .p-hero p{font-size:16px;line-height:1.65;max-width:500px}
 .p-collage{min-height:350px;max-width:450px;align-self:center;margin-top:20px}
 .p-collage .photo{border-width:5px}
 .p-collage .photo-1{width:62%;height:85%;right:14%}
 .p-collage .photo-2{width:41%;height:50%;left:2%;top:39%}
 .p-collage .photo-3{width:34%;height:41%;right:0}
 .p-collage .p-stamp{width:86px;height:86px;font-size:9px;left:8%}
 .p-trustbar{justify-content:center;padding:19px 12px;gap:9px}
 .p-trustbar span{font-size:9px}
 .p-trustbar b{font-size:12px}
 .p-intro{padding-top:90px;padding-bottom:52px}
 .p-intro h2{font-size:clamp(50px,11vw,78px)}
 .p-gallery{padding-bottom:85px}
 .p-filter-nav{gap:7px}
 .p-filter-nav button{padding:10px 14px;font-size:11px}
 .p-gallery-grid{grid-template-columns:repeat(2,1fr);gap:14px}
 .photo-item,.photo-item:nth-child(n){grid-column:span 1}
 .photo-item:first-child{grid-column:span 2}
 .photo-item .img-frame,.photo-item:nth-child(n) .img-frame{aspect-ratio:4/5}
 .photo-item:first-child .img-frame{aspect-ratio:16/10}
 .photo-item figcaption{font-size:11px;flex-wrap:wrap}
 .p-guide{padding-top:90px;padding-bottom:100px}
 .p-guide .img-frame{max-width:70vw}
 .p-packages{padding-top:90px;padding-bottom:100px}
 .p-package-list{grid-template-columns:1fr}
 .p-package{min-height:315px}
 .p-close{display:flex;flex-direction:column}
 .p-close-copy{padding:92px 22px 48px}
 .p-close-image .img-frame{min-height:390px;max-height:530px}
}
