
#phore-portfolio-root,
.pps-archive,
.pps-featured,
.pps-archive *,
.pps-featured *{
    box-sizing:border-box!important;
}

.pps-archive,
.pps-featured{
    --pps-orange:#e8550a;
    --pps-orange-dark:#bf4305;
    --pps-ink:#202327;
    --pps-text:#4c5158;
    --pps-muted:#787d84;
    --pps-cream:#faf7f2;
    --pps-soft:#f4eee8;
    --pps-line:rgba(32,35,39,.12);
    --pps-white:#fff;
    width:100%!important;
    color:var(--pps-ink)!important;
    font-family:"DM Sans",Arial,sans-serif!important;
}

.pps-archive a,
.pps-featured a{
    text-decoration:none!important;
}

.pps-hero{
    padding:68px 0 42px!important;
    border-bottom:1px solid var(--pps-line)!important;
}

.pps-eyebrow,
.pps-kicker{
    color:var(--pps-orange)!important;
    font-size:11px!important;
    font-weight:700!important;
    line-height:1.3!important;
    letter-spacing:.15em!important;
    text-transform:uppercase!important;
}

.pps-hero h1{
    max-width:850px!important;
    margin:12px 0 18px!important;
    color:var(--pps-ink)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(40px,5vw,72px)!important;
    font-weight:600!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
}

.pps-hero>p{
    max-width:880px!important;
    margin:0!important;
    color:var(--pps-text)!important;
    font-size:16px!important;
    line-height:1.8!important;
}

.pps-hero-note{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:8px 16px!important;
    margin-top:25px!important;
    padding-top:20px!important;
    border-top:1px solid var(--pps-line)!important;
    color:var(--pps-muted)!important;
    font-size:12px!important;
    font-weight:600!important;
}

.pps-hero-note span{
    color:var(--pps-muted)!important;
}

.pps-hero-note a{
    color:var(--pps-orange)!important;
    font-weight:700!important;
}

.pps-controls{
    display:grid!important;
    grid-template-columns:minmax(250px,1fr) 220px 220px auto auto!important;
    gap:10px!important;
    align-items:center!important;
    padding:26px 0!important;
    border-bottom:1px solid var(--pps-line)!important;
}

.pps-search{
    position:relative!important;
}

.pps-search svg{
    position:absolute!important;
    left:14px!important;
    top:50%!important;
    width:17px!important;
    height:17px!important;
    transform:translateY(-50%)!important;
    color:var(--pps-muted)!important;
    pointer-events:none!important;
}

.pps-controls input,
.pps-controls select{
    width:100%!important;
    height:46px!important;
    margin:0!important;
    padding:0 13px!important;
    border:1px solid var(--pps-line)!important;
    border-radius:4px!important;
    outline:none!important;
    background:#fff!important;
    color:var(--pps-ink)!important;
    box-shadow:none!important;
    font-family:"DM Sans",Arial,sans-serif!important;
    font-size:13px!important;
    font-weight:500!important;
}

.pps-controls .pps-search input{
    padding-left:42px!important;
}

.pps-controls input:focus,
.pps-controls select:focus{
    border-color:var(--pps-orange)!important;
}

.pps-controls button{
    height:46px!important;
    padding:0 20px!important;
    border:1px solid var(--pps-orange)!important;
    border-radius:4px!important;
    background:var(--pps-orange)!important;
    color:#fff!important;
    font-family:"DM Sans",Arial,sans-serif!important;
    font-size:12px!important;
    font-weight:700!important;
    cursor:pointer!important;
}

.pps-controls button:hover{
    background:var(--pps-orange-dark)!important;
}

.pps-clear{
    color:var(--pps-muted)!important;
    font-size:12px!important;
    font-weight:700!important;
}

.pps-result-bar{
    display:flex!important;
    align-items:baseline!important;
    gap:6px!important;
    padding:24px 0 16px!important;
    color:var(--pps-muted)!important;
    font-size:13px!important;
}

.pps-result-bar strong{
    color:var(--pps-ink)!important;
    font-size:18px!important;
}

.pps-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
}

.pps-card{
    min-width:0!important;
    overflow:hidden!important;
    border:1px solid var(--pps-line)!important;
    border-radius:6px!important;
    background:#fff!important;
    box-shadow:none!important;
    transition:transform .2s ease,border-color .2s ease!important;
}

.pps-card:hover{
    transform:translateY(-3px)!important;
    border-color:rgba(232,85,10,.35)!important;
}

.pps-card-image{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    aspect-ratio:4/3!important;
    padding:12px!important;
    overflow:hidden!important;
    background:var(--pps-cream)!important;
    border-bottom:1px solid var(--pps-line)!important;
}

.pps-card-image img{
    width:100%!important;
    height:100%!important;
    display:block!important;
    object-fit:contain!important;
    object-position:center!important;
    transition:transform .35s ease!important;
}

.pps-card:hover .pps-card-image img{
    transform:scale(1.018)!important;
}

.pps-badge{
    position:absolute!important;
    z-index:3!important;
    left:10px!important;
    top:10px!important;
    max-width:calc(100% - 20px)!important;
    padding:6px 8px!important;
    border-radius:3px!important;
    background:rgba(255,255,255,.94)!important;
    color:var(--pps-orange)!important;
    box-shadow:0 2px 10px rgba(0,0,0,.05)!important;
    font-size:9px!important;
    font-weight:800!important;
    line-height:1.2!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
}

.pps-card-body{
    padding:15px 16px 16px!important;
}

.pps-card-meta{
    display:flex!important;
    justify-content:space-between!important;
    gap:8px!important;
    margin-bottom:7px!important;
    color:var(--pps-muted)!important;
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.07em!important;
    text-transform:uppercase!important;
}

.pps-card h3{
    min-height:44px!important;
    margin:0!important;
    color:var(--pps-ink)!important;
    font-family:"DM Sans",Arial,sans-serif!important;
    font-size:15px!important;
    font-weight:700!important;
    line-height:1.45!important;
}

.pps-card h3 a{
    color:var(--pps-ink)!important;
}

.pps-card h3 a:hover{
    color:var(--pps-orange)!important;
}

.pps-card-bottom{
    display:flex!important;
    justify-content:space-between!important;
    align-items:center!important;
    gap:10px!important;
    margin-top:14px!important;
    padding-top:12px!important;
    border-top:1px solid var(--pps-line)!important;
}

.pps-card-bottom span{
    color:var(--pps-muted)!important;
    font-size:10px!important;
    font-weight:600!important;
}

.pps-card-bottom a{
    color:var(--pps-orange)!important;
    font-size:11px!important;
    font-weight:800!important;
    white-space:nowrap!important;
}

.pps-pagination{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    justify-content:center!important;
    padding:40px 0 10px!important;
}

.pps-pagination a{
    min-width:38px!important;
    height:38px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 8px!important;
    border:1px solid var(--pps-line)!important;
    border-radius:4px!important;
    color:var(--pps-text)!important;
    background:#fff!important;
    font-size:12px!important;
    font-weight:700!important;
}

.pps-pagination a.is-current,
.pps-pagination a:hover{
    border-color:var(--pps-orange)!important;
    background:var(--pps-orange)!important;
    color:#fff!important;
}

.pps-empty{
    margin:30px 0!important;
    padding:50px 25px!important;
    text-align:center!important;
    background:var(--pps-cream)!important;
    border:1px solid var(--pps-line)!important;
}

.pps-empty h3{
    color:var(--pps-ink)!important;
    font-size:22px!important;
}

.pps-empty p{
    color:var(--pps-muted)!important;
}

.pps-featured-head{
    display:flex!important;
    justify-content:space-between!important;
    align-items:end!important;
    gap:30px!important;
    margin-bottom:28px!important;
}

.pps-featured-head h2{
    margin:8px 0 0!important;
    color:var(--pps-ink)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(30px,3vw,48px)!important;
    font-weight:600!important;
    line-height:1.08!important;
    letter-spacing:-.03em!important;
}

.pps-text-link{
    color:var(--pps-orange)!important;
    font-size:12px!important;
    font-weight:800!important;
    white-space:nowrap!important;
}

.pps-no-image{
    color:var(--pps-muted)!important;
    font-size:12px!important;
    font-weight:700!important;
}

@media(max-width:1120px){
    .pps-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
    .pps-controls{grid-template-columns:1fr 1fr 1fr!important}
    .pps-search{grid-column:1/-1!important}
}

@media(max-width:760px){
    .pps-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .pps-controls{grid-template-columns:1fr!important}
    .pps-search{grid-column:auto!important}
    .pps-hero{padding-top:48px!important}
    .pps-hero h1{font-size:44px!important}
    .pps-featured-head{align-items:flex-start!important;flex-direction:column!important}
}

@media(max-width:480px){
    .pps-grid{grid-template-columns:1fr!important}
    .pps-card-image{aspect-ratio:5/4!important}
}
