/* photography-v2-styles */



:root{
    --photo-bg:#080808;
    --photo-panel:#111;
    --photo-line:rgba(255,255,255,.11);
    --photo-text:#f5f5f1;
    --photo-muted:#969691;
    --photo-accent:#c8ff00;
}
body{background:var(--photo-bg)}
.single-page-hero-area{
    position:relative;
    min-height:82vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    padding:180px 0 105px;
    background:
      radial-gradient(circle at 80% 18%,rgba(200,255,0,.09),transparent 27%),
      radial-gradient(circle at 12% 90%,rgba(255,255,255,.05),transparent 26%),
      #080808;
}
.single-page-hero-area:after{
    content:"PHOTO";
    position:absolute;
    right:-1vw;
    bottom:-5vw;
    font-size:clamp(120px,21vw,350px);
    line-height:.8;
    font-weight:800;
    letter-spacing:-.08em;
    color:rgba(255,255,255,.022);
    pointer-events:none;
}
.single-page-hero-area .container{
    position:relative;
    z-index:2;
    max-width:1320px;
}
.photo-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
    gap:72px;
    align-items:end;
}
.photo-kicker{
    display:block;
    margin-bottom:24px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.22em;
    color:#9b9b96;
}
.photo-hero-copy h1{
    max-width:1040px;
    margin:0;
    font-size:clamp(58px,8.5vw,124px);
    line-height:.86;
    letter-spacing:-.07em;
    color:#fff;
}
.photo-hero-copy h1 em{
    font-style:normal;
    color:#777;
}
.photo-hero-copy p{
    max-width:720px;
    margin:38px 0 0;
    font-size:clamp(18px,2vw,24px);
    line-height:1.55;
    color:#aaa9a4;
}
.photo-hero-note{
    padding:24px 0 5px 28px;
    border-left:1px solid var(--photo-line);
}
.photo-hero-note span{
    display:block;
    margin-bottom:17px;
    font-size:11px;
    font-weight:700;
    letter-spacing:.17em;
    color:#777773;
}
.photo-hero-note strong{
    display:block;
    font-size:22px;
    line-height:1.45;
    font-weight:500;
    color:#eee;
}
.photo-stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-width:1080px;
    margin-top:76px;
    border-top:1px solid var(--photo-line);
}
.photo-stats>div{padding:26px 28px 0 0}
.photo-stats strong{
    display:block;
    font-size:25px;
    color:#fff;
}
.photo-stats span{
    display:block;
    margin-top:7px;
    font-size:13px;
    color:#777773;
}
.blog-area{
    padding:125px 0 145px;
    background:#0b0b0b;
}
.photo-shell{
    max-width:1600px;
    padding-left:clamp(20px,4vw,68px);
    padding-right:clamp(20px,4vw,68px);
}
.photo-heading{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);
    gap:60px;
    align-items:end;
    margin-bottom:50px;
}
.photo-heading h2{
    margin:0;
    font-size:clamp(42px,5.6vw,86px);
    line-height:.96;
    letter-spacing:-.06em;
    color:var(--photo-text);
}
.photo-heading p{
    max-width:470px;
    margin:0 0 8px;
    font-size:17px;
    line-height:1.72;
    color:var(--photo-muted);
}
.photo-gallery-grid{
    columns:3;
    column-gap:22px;
}
.photo-gallery-item{
    width:100%;
    display:inline-block;
    margin:0 0 22px;
    break-inside:avoid;
}
.photo-card{
    position:relative;
    overflow:hidden;
    border:1px solid var(--photo-line);
    border-radius:18px;
    background:#111;
    transition:transform .35s ease,border-color .35s ease;
}
.photo-card:hover{
    transform:translateY(-5px);
    border-color:rgba(255,255,255,.24);
}
.photo-index{
    position:absolute;
    top:15px;
    right:16px;
    z-index:3;
    font-size:10px;
    font-weight:700;
    letter-spacing:.15em;
    color:rgba(255,255,255,.78);
    text-shadow:0 1px 12px rgba(0,0,0,.55);
}
.photo-media{
    position:relative;
    overflow:hidden;
    background:#111;
}
.photo-media>img{
    display:block;
    width:100%;
    height:auto;
    transition:transform .8s cubic-bezier(.2,.75,.2,1),filter .5s ease;
}
.photo-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.42));
    opacity:.45;
    pointer-events:none;
    transition:opacity .35s ease;
}
.photo-card:hover .photo-media>img{
    transform:scale(1.035);
    filter:brightness(.9);
}
.photo-card:hover .photo-overlay{opacity:.85}
.photo-card .instagram-media{
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    border-radius:0!important;
}
.call-to-action-area{
    background:#080808!important;
    padding:110px 0!important;
}
.call-to-action-part{
    background:#c8ff00!important;
    border:none!important;
    color:#111!important;
}
.call-to-action-part h2,
.call-to-action-part p{color:#111!important}
.call-to-action-part .theme-btn{
    background:#111!important;
    color:#fff!important;
}
.main-footer{background:#080808}
@media (max-width:991px){
    .single-page-hero-area{
        min-height:auto;
        padding:155px 0 90px;
    }
    .photo-hero-grid,
    .photo-heading{
        grid-template-columns:1fr;
    }
    .photo-hero-note{
        padding-left:0;
        border-left:0;
    }
    .photo-gallery-grid{columns:2}
}
@media (max-width:767px){
    .single-page-hero-area{padding:135px 0 75px}
    .photo-hero-copy h1{font-size:clamp(52px,16vw,78px)}
    .photo-stats{grid-template-columns:1fr;margin-top:50px}
    .photo-stats>div{
        padding:18px 0;
        border-bottom:1px solid var(--photo-line);
    }
    .blog-area{padding:88px 0 100px}
    .photo-heading h2{font-size:44px}
    .photo-gallery-grid{columns:1}
    .photo-gallery-item{margin-bottom:18px}
    .photo-card{border-radius:14px}
}
