/* Veganic Photo Collection / 2026-10-21. Complementary editorial features; original animations intact. */
.veganic-photo-story{position:relative;isolation:isolate;background:#e9ede3;color:#173527;padding:125px 0 115px;overflow:hidden}
.veganic-photo-story:before{content:"✳";position:absolute;z-index:-1;left:-38px;bottom:-190px;font-family:Georgia,serif;font-size:470px;line-height:1;color:rgba(26,74,42,.045);animation:vg-photo-turn 43s linear infinite}
.vg-story-layout{display:grid;grid-template-columns:minmax(330px,.95fr) minmax(380px,1.05fr);gap:7%;align-items:center}
.vg-story-overline{display:block;font-size:10px;font-weight:700;letter-spacing:.22em;color:#647f68;margin-bottom:26px}
.vg-story-words h2{font-size:clamp(42px,4.7vw,73px);font-weight:400;line-height:1.1;letter-spacing:-.045em}
.vg-story-words h2 em{color:#c5753e;font-weight:400}
.vg-story-words p{max-width:370px;font-size:15px;color:#66776a;line-height:1.9;margin-top:29px}
.vg-story-link{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;gap:30px;border-bottom:1px solid #aab7a9;padding:14px 0;margin-top:25px;transition:color .35s,gap .35s}
.vg-story-link:hover{gap:42px;color:#bd692d}
.vg-story-images{position:relative;min-height:545px}
.vg-photo-frame{overflow:hidden;position:absolute;margin:0;box-shadow:0 18px 60px rgba(17,43,23,.2);background:#d8e3cf}
.vg-photo-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(1.07);transition:transform 1.25s cubic-bezier(.2,.65,.2,1)}
.vg-photo-frame:hover img{transform:scale(1.07)}
.vg-frame-one{left:4%;top:4%;width:49%;height:78%;transform:rotate(-6deg);animation:vg-drift-one 9s ease-in-out infinite alternate}
.vg-frame-two{right:2%;top:15%;width:51%;height:73%;transform:rotate(5deg);animation:vg-drift-two 11s ease-in-out infinite alternate}
.vg-frame-three{left:31%;bottom:-1%;width:37%;height:38%;border:8px solid #e9ede3;transform:rotate(-2deg);box-shadow:0 22px 60px rgba(17,43,23,.21);animation:vg-drift-three 12s ease-in-out infinite alternate}
.veganic-photo-story .vg-photo-frame.reveal{opacity:1}
.portfolio-tile img{transition:transform 1.5s cubic-bezier(.2,.65,.2,1),filter .8s;object-position:center 43%}
.portfolio-tile:hover img{transform:scale(1.065);filter:saturate(1.14)}
@keyframes vg-drift-one{from{transform:rotate(-6deg) translateY(0)}to{transform:rotate(-4deg) translateY(-13px)}}
@keyframes vg-drift-two{from{transform:rotate(5deg) translateY(-5px)}to{transform:rotate(3deg) translateY(15px)}}
@keyframes vg-drift-three{from{transform:rotate(-2deg) translateY(0)}to{transform:rotate(-.5deg) translateY(-14px)}}
@keyframes vg-photo-turn{to{transform:rotate(360deg)}}
@media(max-width:1020px){.veganic-photo-story{padding:100px 0}.vg-story-layout{gap:3%;grid-template-columns:1fr 1fr}.vg-story-images{min-height:430px}.vg-story-words h2{font-size:clamp(39px,5vw,58px)}}
@media(max-width:700px){.hero-slide[style*="--vg-mobile-hero"]{background-image:var(--vg-mobile-hero)!important;background-position:center 35%!important}.veganic-photo-story{padding:79px 0 95px}.vg-story-layout{display:flex;flex-direction:column;gap:37px;align-items:stretch}.vg-story-words h2{font-size:clamp(44px,10vw,58px)}.vg-story-images{height:420px;min-height:420px}.vg-frame-one{width:51%;left:1%;top:3%;height:76%}.vg-frame-two{width:52%;right:1%;top:12%;height:76%}.vg-frame-three{width:38%;left:30%;bottom:0;height:38%;border-width:6px}}
@media(max-width:400px){.vg-story-images{height:350px;min-height:350px}.vg-story-words h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){.veganic-photo-story:before,.vg-photo-frame{animation:none!important}.vg-photo-frame img{transition:none!important}}
