/* A photographic and motion layer for the supplied Sree Nandaka template. */
:root{--photo-radius:24px;--photo-shadow:0 20px 60px rgba(18,74,98,.13)}
figure{margin:0}
img{display:block}
.hero{padding-bottom:82px}
.hero-grid{gap:60px}
.hero-art.photo-hero{width:100%;max-width:460px;justify-self:end;isolation:isolate}
.photo-hero::before{content:"";position:absolute;inset:28px -18px -18px 28px;z-index:-1;border:1px solid color-mix(in srgb,var(--brand-blue) 32%,transparent);border-radius:28px 110px 28px 110px}
.photo-hero::after{content:"";position:absolute;left:-15px;top:45px;width:5px;height:82px;background:var(--brand-green);border-radius:4px}
.hero-photo{position:relative;aspect-ratio:4/5;border-radius:24px 100px 24px 100px;overflow:hidden;box-shadow:var(--photo-shadow);background:var(--blue-faint)}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;animation:sn-photo-settle 1.6s cubic-bezier(.2,.65,.3,1) both}
.hero-photo figcaption{position:absolute;right:20px;bottom:17px;color:#fff;background:rgba(15,38,46,.72);padding:4px 10px;border-radius:20px;font-size:12px;line-height:1.6}
.page-head-photo{display:block;width:100%;max-width:380px;justify-self:end;align-self:center}
.page-head-photo img{width:100%;height:270px;object-fit:cover;object-position:center;border-radius:18px 72px 18px 18px;box-shadow:var(--photo-shadow)}
.page-head-photo figcaption,.story-photo figcaption,.article-photo figcaption{font-size:12px;color:var(--muted);margin-top:9px;text-align:right;line-height:1.5}
.photo-card.card{padding:0;overflow:hidden;border-radius:20px;display:flex;flex-direction:column}
.card-image{height:178px;overflow:hidden;position:relative;background:var(--blue-faint);flex-shrink:0}
.card-image img{width:100%;height:100%;object-fit:cover;object-position:center 42%;transition:transform .6s cubic-bezier(.2,.65,.3,1)}
.photo-card-body{padding:24px;flex:1;display:flex;flex-direction:column;align-items:flex-start}
.photo-card-body>.card-ico{display:none}
.photo-card-body>h3{font-size:1.16rem;line-height:1.4}
.photo-card-body>p{font-size:1rem;line-height:1.65}
.photo-card-body>.card-more{padding-top:17px;margin-top:auto;font-size:.95rem}
.photo-card-body>.art-meta{padding-top:17px;margin-top:auto}
a.photo-card:hover,a.photo-card:focus-visible{transform:translateY(-5px);box-shadow:0 18px 36px rgba(18,74,98,.1)}
a.photo-card:hover .card-image img,a.photo-card:focus-visible .card-image img{transform:scale(1.045)}
.feat-card .feature-photo{align-self:stretch;border-radius:14px;overflow:hidden;min-height:260px}
.feature-photo img{width:100%;height:100%;max-height:440px;object-fit:cover}
.story-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:24px 76px 24px 24px;box-shadow:var(--photo-shadow)}
.article-photo{margin:0 0 40px}
.article-photo img{width:100%;height:clamp(220px,35vw,360px);object-fit:cover;border-radius:20px}
.real-portrait{background:var(--blue-faint);border:1px solid var(--border);border-radius:18px}
.real-portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform .65s cubic-bezier(.2,.65,.3,1)}
.tcard:hover .real-portrait img{transform:scale(1.025)}
.portrait-pending{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;background:linear-gradient(140deg,var(--blue-faint),var(--surface-2));color:var(--blue-deep);border:1px solid var(--border)}
.portrait-pending>span{font-family:'Playfair Display',serif;font-size:4rem;font-weight:500;opacity:.8}
.portrait-pending>small{font-size:14px;color:var(--muted)}
.journey .jstep{transition:opacity .4s}
.journey .jnum{transition:box-shadow .5s,background-color .5s}
.journey .sn-revealed .jnum{box-shadow:0 0 0 7px color-mix(in srgb,var(--brand-blue) 10%,transparent)}
.btn{transition:transform .25s,background-color .25s,box-shadow .25s}
@media(hover:hover){.btn:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(18,74,98,.13)}}
:is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--brand-blue);outline-offset:4px}
.sn-revealed{animation:sn-enter .75s cubic-bezier(.2,.65,.3,1) backwards;animation-delay:var(--entry-delay,0ms)}
@keyframes sn-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes sn-photo-settle{from{transform:scale(1.045);filter:brightness(.95)}to{transform:scale(1);filter:brightness(1)}}
.visual-preferences{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px max(24px,calc((100vw - 1092px)/2));background:var(--footer-bg);color:var(--footer-ink);font-size:12px;line-height:1.6;border-top:1px solid rgba(255,255,255,.1)}
.motion-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--footer-ink);border:1px solid rgba(255,255,255,.3);padding:8px 13px;border-radius:30px;background:transparent;font:inherit;font-size:14px;white-space:nowrap;cursor:pointer;min-height:40px}
.motion-toggle[hidden]{display:none}
.motion-toggle:hover{background:rgba(255,255,255,.07)}
.motion-symbol{font-size:14px;min-width:14px;text-align:center}
.preview-page{text-align:center;background:var(--footer-bg);color:var(--footer-ink);font-size:12px;padding:5px 24px 10px}
.gal-item:not(.has-photo) .gal-shoot{display:none}
.gal-tag{font-size:12px;letter-spacing:.02em;text-transform:none}
.gal-ph{background-image:none}
html[data-motion="paused"] *,html[data-motion="paused"] *::before,html[data-motion="paused"] *::after{animation-play-state:paused!important;scroll-behavior:auto!important;transition:none!important}
html[data-motion="paused"] .sn-revealed,html[data-motion="paused"] .hero-photo img,html[data-motion="paused"] .rise{animation:none!important;opacity:1!important;transform:none!important}
html[data-motion="paused"] .cellstage{animation:none!important;opacity:0!important}
html[data-motion="paused"] .cellstage.cs5{opacity:1!important}
@media(max-width:1000px){.hero-grid{gap:36px}.hero-art.photo-hero{max-width:400px}}
@media(max-width:900px){
 .hero{padding-top:124px;padding-bottom:60px}
 .hero-grid{gap:36px}
 .hero-art.photo-hero{order:0;width:100%;max-width:570px;margin:0;justify-self:center}
 .hero-photo{aspect-ratio:5/4;border-radius:20px 80px 20px 60px}
 .hero-photo img{object-position:center 37%}
 .photo-hero::before{inset:20px -10px -10px 20px;border-radius:20px 80px 20px 60px}
 .hero-sub{max-width:640px}
}
@media(max-width:820px){
 .page-head-photo{display:block;max-width:100%;justify-self:stretch}
 .page-head-photo img{height:240px;border-radius:18px 64px 18px 18px}
 .page-head-photo figcaption{margin-top:7px}
}
@media(max-width:600px){
 .hero-art.photo-hero{max-width:460px}
 .hero h1{font-size:clamp(2.2rem,9vw,3rem)}
 .card-image{height:200px}
 .photo-card-body{padding:22px}
 .page-head-photo img{height:210px}
 .hero-photo figcaption{right:13px;bottom:13px}
 .visual-preferences{align-items:flex-start;flex-direction:column;gap:12px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .sn-revealed,.rise{opacity:1!important;transform:none!important}
 .cellstage{opacity:0!important}.cellstage.cs5{opacity:1!important}
}
@media print{.motion-toggle,.visual-preferences,.preview-page{display:none}.sn-revealed{animation:none;opacity:1;transform:none}}
