/*
Theme Name: Tattvam Films
Theme URI: https://www.tattvamfilms.com
Author: Tattvam Films
Description: Fully editable cinematic WordPress theme for Tattvam Films. Includes projects, clients, services, team, media, SEO and homepage administration.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: tattvam-films
*/

:root{--ink:#111112;--soft:#1d1d1f;--paper:#f5f5f7;--white:#fff;--orange:#e24a2a;--muted:#6e6e73;--line:rgba(17,17,18,.13);--gutter:max(24px,4.15vw);--radius:30px;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.admin-bar .topbar{top:32px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}img{display:block;max-width:100%}em{font:inherit;font-style:normal;color:var(--orange)}::selection{background:var(--orange);color:#fff}[hidden]{display:none!important}.skip-link{position:fixed;z-index:99999;left:18px;top:12px;padding:12px 16px;border-radius:99px;background:#fff;box-shadow:0 8px 24px #0002;transform:translateY(-160%)}.skip-link:focus{transform:none}.section{padding:clamp(74px,8vw,138px) var(--gutter)}.black{background:var(--soft);color:#fff}.rust{background:var(--orange);color:#fff}.rust em{color:var(--ink)}.label{margin:0 0 24px;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.13em}.pill,.underlink{display:inline-block;padding-bottom:5px;border-bottom:1px solid;font-size:13px;font-weight:650}

.topbar{position:sticky;top:0;z-index:1000;height:110px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);background:rgba(250,250,252,.86);border-bottom:1px solid #00000012;backdrop-filter:saturate(180%) blur(22px)}.logo{width:175px;height:100px;display:flex;align-items:center}.logo img,.logo .custom-logo{width:100%;height:auto;max-height:80px;object-fit:contain;object-position:left center}.nav{display:flex;align-items:center;gap:clamp(12px,1.55vw,25px)}.nav a{position:relative;font-size:18px;font-weight:500}.nav a:not(.start):after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:1px;background:var(--ink);transition:right .3s var(--ease)}.nav a:hover:after{right:0}.nav .start{padding:13px 18px;border-radius:99px;background:var(--ink);color:#fff}.nav .start:hover{background:var(--orange)}.nav .start span{margin-left:10px}.nav .menu-item{list-style:none}.menu{display:none;width:44px;height:44px;border:0;background:transparent}.menu i{display:block;height:1px;margin:7px 0;background:var(--ink)}

.hero{--hero-scale:1.04;--hero-shift:0px;position:relative;isolation:isolate;min-height:calc(112svh - 110px);overflow:hidden;padding:clamp(47px,5.4vh,67px) var(--gutter) 42px;display:grid;grid-template-rows:auto 1fr auto;background:radial-gradient(circle at 75% 8%,#e24a2a20,transparent 30%),linear-gradient(180deg,#fff,#f5f5f7 62%)}.hero-image,.hero-overlay{position:absolute;z-index:-2;left:var(--gutter);right:var(--gutter);top:clamp(200px,24vh,280px);bottom:clamp(90px,11vh,130px);overflow:hidden;border-radius:clamp(24px,3vw,48px)}.hero-image{background:#000;box-shadow:0 50px 100px #0003;transform:translateY(var(--hero-shift))}.hero-image img{width:100%;height:100%;object-fit:cover;transform:scale(var(--hero-scale));filter:saturate(.92) contrast(1.04)}.hero-overlay{z-index:-1;background:linear-gradient(180deg,#00000008,#0006)}.hero-tag{margin:0;text-align:center;text-transform:uppercase;letter-spacing:.16em;font-size:15px;font-weight:650;color:var(--muted)}.hero h1{z-index:2;margin:clamp(25px,3vh,41px) auto 0;text-align:center;font-size:clamp(46px,7.5vw,120px);line-height:.79;letter-spacing:-.075em}.hero h1 span,.hero h1 em{display:inline}.hero h1 span:after{content:" "}.play-reel{position:absolute;z-index:3;right:calc(var(--gutter) + 30px);bottom:calc(clamp(90px,11vh,130px) + 28px);display:flex;align-items:center;gap:12px;padding:8px 14px 8px 8px;border:0;border-radius:99px;background:#fffffff0;box-shadow:0 12px 40px #0003;font-size:12px;font-weight:700;text-align:left;cursor:pointer}.play-reel i{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:#fff;font-style:normal}.hero-foot{align-self:end;display:flex;justify-content:flex-end;position:relative;z-index:2}.hero-foot a{font-size:15px;font-weight:650;padding-bottom:5px;border-bottom:1px solid}.hero-foot b{margin-left:18px;color:var(--orange)}

.manifesto{min-height:78vh;display:grid;grid-template-columns:minmax(160px,.55fr) 2fr;gap:5vw;align-content:center;background:#fff}.manifesto h2,.heading h2,.why h2,.process h2,.page-hero h1{margin:0;font-size:clamp(54px,7.2vw,116px);font-weight:650;line-height:.92;letter-spacing:-.065em}.manifesto h2{grid-column:2}.manifesto>div{grid-column:2;display:grid;grid-template-columns:1fr auto;align-items:end;gap:40px;width:min(760px,78%);margin:60px 0 0 auto}.manifesto p{margin:0;color:var(--muted);font-size:clamp(16px,1.35vw,21px);line-height:1.55}.heading{display:grid;grid-template-columns:minmax(0,2.45fr) minmax(220px,.75fr);gap:4vw;align-items:end;margin-bottom:clamp(52px,6vw,90px)}.heading>p,.heading>div p{margin:0;color:var(--muted);font-size:18px;line-height:1.55}.heading-clean h2{grid-column:1}

.films{position:relative;overflow:hidden}.films:before{content:"";position:absolute;right:-24vw;top:-18vw;width:48vw;height:48vw;border-radius:50%;background:#e24a2a1f;filter:blur(100px)}.film-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(34px,4vw,70px) clamp(16px,1.4vw,26px)}.film-card{min-width:0;padding:0;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer}.film-card>div{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:clamp(18px,2vw,28px);background:#050505}.film-card img{width:100%;height:100%;object-fit:cover;opacity:.87;transition:.6s var(--ease)}.film-card:hover img{opacity:1;transform:scale(1.045)}.film-card i{position:absolute;left:18px;bottom:18px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);font-style:normal}.film-card>div span{position:absolute;right:16px;top:14px}.film-card h3{margin:17px 0 8px;font-size:clamp(18px,1.55vw,25px);line-height:1.18}.film-card p{margin:0;color:#a1a1a6;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.playlist-fallback{text-align:center;padding:60px}

.services-home{overflow:hidden}.services-intro{display:grid;grid-template-columns:minmax(0,2.45fr) minmax(220px,.75fr);gap:4vw;align-items:end;margin-bottom:clamp(52px,7vw,104px)}.services-intro h2{margin:0;font-size:clamp(58px,7.5vw,118px);line-height:.9;letter-spacing:-.07em}.services-intro span{display:block;margin-bottom:12px;font-weight:700}.services-intro p{margin:0;color:var(--muted);font-size:18px;line-height:1.55}.service-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.service-grid article{position:relative;grid-column:span 4;min-height:clamp(380px,39vw,590px);overflow:hidden;border-radius:var(--radius);background:#111;color:#fff;isolation:isolate}.service-grid article:nth-child(1),.service-grid article:nth-child(7){grid-column:span 8}.service-grid article:nth-child(8),.service-grid article:nth-child(9){grid-column:span 6}.service-card-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.service-grid article:hover .service-card-image{transform:scale(1.04)}.service-card-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#00000008 35%,#000e)}.service-card-copy{position:absolute;left:clamp(24px,2.5vw,42px);right:clamp(24px,2.5vw,42px);bottom:clamp(24px,2.5vw,42px)}.service-card-copy h3{margin:0 0 16px;font-size:clamp(29px,3vw,52px);line-height:.96;letter-spacing:-.045em}.service-card-copy p{max-width:560px;margin:0;color:#ffffffc4;font-size:16px;line-height:1.5}

.clients-section{background:#fff;overflow:hidden}.client-group{margin-bottom:clamp(52px,6vw,90px)}.client-group__header{display:grid;grid-template-columns:1fr auto;align-items:end;padding-bottom:24px;border-bottom:1px solid var(--line)}.client-group__header p{margin:0 0 10px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.13em}.client-group__header h3{margin:0;font-size:clamp(30px,3.25vw,52px)}.client-group__header strong{font-size:12px;text-transform:uppercase;letter-spacing:.14em}.client-logo-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));column-gap:clamp(7px,.95vw,17px);row-gap:clamp(17px,1.98vw,31px);padding:clamp(32px,3.84vw,61px) 0 5px}.client-mark{min-height:100px;display:grid;place-items:center}.client-mark__visual{width:100%;height:100px;display:grid;place-items:center;text-align:center}.client-mark img{width:min(160px,100%);height:86px;object-fit:contain;transition:transform .3s}.client-mark:hover img{transform:scale(1.055)}.client-mark span{font-weight:750;font-size:14px}.client-network{width:calc(100% + var(--gutter)*2);margin:12px calc(0px - var(--gutter)) calc(0px - clamp(74px,8vw,138px));padding:clamp(34px,3.5vw,58px) var(--gutter);background:var(--orange);color:#fff}.client-network p{max-width:1280px;margin:0;font-size:clamp(23px,3.125vw,50px);font-weight:650;line-height:.98;letter-spacing:-.05em}

.client-index{background:var(--paper)}.credits-heading{padding-bottom:clamp(32px,4vw,58px);border-bottom:1px solid var(--line)}.project-filters{display:flex;gap:24px;margin:0 0 28px;padding:0 0 14px;border-bottom:1px solid var(--line)}.project-filters button{padding:0 0 8px;border:0;border-bottom:1px solid transparent;background:transparent;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.project-filters button.active{color:var(--ink);border-color:var(--orange)}.project-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.project-index article{min-width:0;padding:14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.project-index article:hover{background:#fff}.project-image-tile{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:14px;background:#dedee2}.project-image-tile img{width:100%;height:100%;object-fit:cover;transition:.6s var(--ease)}.project-index article:hover img{transform:scale(1.045)}.project-image-tile span{position:absolute;left:10px;top:10px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fffffff0;font-size:10px}.credit-body{padding:17px 3px 3px}.credit-body p{margin:0 0 8px;color:#8a8a8f;font-size:10px;text-transform:uppercase;letter-spacing:.13em}.credit-body h3{margin:0;font-size:clamp(18px,1.45vw,23px);line-height:1.07}

.why{display:grid;grid-template-columns:1fr 1fr;gap:7vw;background:#fff}.proof{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.founder-card{overflow:hidden;border-radius:24px;background:var(--paper)}.founder-portrait{aspect-ratio:4/5;overflow:hidden;background:#171719}.founder-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:.6s}.founder-card:hover img{transform:scale(1.025)}.founder-details{padding:24px 26px 27px}.founder-details strong{display:block;margin-bottom:10px;font-size:clamp(23px,2vw,32px);line-height:1.05}.founder-details span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.12em}.process-row{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:clamp(42px,6vw,90px)}.process-row article{min-height:290px;padding:24px;border-radius:24px;background:#ffffff21;display:flex;flex-direction:column}.process-row span{font-size:12px}.process-row h3{margin:auto 0 16px;font-size:clamp(25px,2vw,34px)}.process-row p{margin:0;color:#ffffffc7;font-size:15px;line-height:1.55}.editable-section{background:#fff}.editable-section h2{max-width:1000px;margin:0 0 40px;font-size:clamp(42px,6vw,92px);line-height:.95}.editable-section__image{width:100%;max-height:720px;object-fit:cover;margin:0 0 42px;border-radius:var(--radius)}.rich-copy{max-width:780px;margin-left:auto;color:var(--muted);font-size:18px;line-height:1.65}

.contact-onepage{background:#111;color:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw}.contact-grid>div:first-child{display:flex;flex-direction:column;align-items:flex-start;gap:15px}.contact-grid>div:first-child a{font-size:clamp(19px,2vw,32px)}.contact-grid>div:first-child p:last-child{max-width:440px;color:#aaa;font-size:16px;line-height:1.6}.enquiry{display:grid;grid-template-columns:1fr 1fr;gap:24px}.enquiry label{display:flex;flex-direction:column;gap:9px}.enquiry label span{color:#a1a1a6;font-size:12px}.enquiry input,.enquiry textarea{width:100%;padding:12px 0;border:0;border-bottom:1px solid #ffffff38;background:transparent;color:#fff;outline:none}.enquiry input:focus,.enquiry textarea:focus{border-color:var(--orange)}.enquiry .wide,.enquiry button,.form-status{grid-column:1/-1}.enquiry button{justify-self:start;padding:15px 20px;border:0;border-radius:99px;background:#fff;color:#111;font-weight:700;cursor:pointer}.enquiry button b{margin-left:28px;color:var(--orange)}.form-status{color:#a1a1a6}

.page-hero{padding:clamp(90px,11vw,170px) var(--gutter);background:#fff}.page-hero p{max-width:780px;color:var(--muted);font-size:19px;line-height:1.6}.content-shell{max-width:980px;margin:auto;padding:90px var(--gutter)}.content-shell .entry-content{font-size:18px;line-height:1.7}.content-shell img{height:auto}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.archive-grid article{padding:16px;border:1px solid var(--line)}.archive-grid img{width:100%;aspect-ratio:16/10;object-fit:cover}.archive-grid h2{font-size:25px}

.footer{padding:0 var(--gutter) 24px;background:#000;color:#fff}.footer-grid{display:grid;grid-template-columns:1.6fr .7fr .8fr 1.1fr;gap:6vw;padding:54px 0}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-logo{width:180px;height:auto}.footer-grid p,.footer-grid a{margin:0;color:#c7c7cc;font-size:13px;line-height:1.5}.footer-grid small{color:#777;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.footer .menu-item{list-style:none}.copyright{display:flex;justify-content:space-between;padding-top:20px;border-top:1px solid #ffffff2e;color:#777;font-size:10px;text-transform:uppercase;letter-spacing:.1em}

.video-modal{position:fixed;inset:0;z-index:3000;padding:7vw;display:grid;place-items:center;background:#000e;backdrop-filter:blur(18px)}.video-modal[hidden]{display:none}.video-modal-panel{position:relative;width:min(1180px,100%)}.video-modal iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:22px;background:#000}.video-modal-close{position:absolute;right:0;top:-52px;width:38px;height:38px;border:0;border-radius:50%;background:#fff;font-size:20px;cursor:pointer}

@media(max-width:1180px){.client-logo-grid{grid-template-columns:repeat(5,1fr)}.nav{gap:14px}.nav a{font-size:15px}}
@media(max-width:900px){body.admin-bar .topbar{top:46px}.menu{display:block}.nav{position:absolute;top:110px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;padding:12px 24px 24px;background:#fafafcf7;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a{padding:14px 0;font-size:20px}.nav .start{text-align:center}.heading,.services-intro{grid-template-columns:1fr;gap:22px}.film-grid{grid-template-columns:repeat(2,1fr)}.service-grid article{grid-column:span 6}.service-grid article:nth-child(1),.service-grid article:nth-child(7){grid-column:span 12}.client-logo-grid{grid-template-columns:repeat(4,1fr)}.project-index{grid-template-columns:repeat(2,1fr)}.why,.contact-grid{grid-template-columns:1fr}.process-row{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto}}
@media(max-width:580px){:root{--gutter:20px;--radius:24px}.topbar{height:100px}.logo{width:140px;height:90px}.nav{top:100px}.hero{min-height:900px;padding-top:38px}.hero-tag{text-align:left}.hero h1{margin:31px 0 0;text-align:left;font-size:11.9vw}.hero h1 span,.hero h1 em{display:block}.hero-image,.hero-overlay{left:12px;right:12px;top:252px;bottom:115px;border-radius:26px}.play-reel{right:24px;bottom:138px}.play-reel span{display:none}.manifesto{grid-template-columns:1fr;min-height:auto}.manifesto h2,.manifesto>div{grid-column:1}.manifesto>div{display:block;width:100%;margin-top:44px}.manifesto .underlink{margin-top:30px}.film-grid{grid-template-columns:1fr}.service-grid{gap:12px}.service-grid article,.service-grid article:nth-child(1),.service-grid article:nth-child(7),.service-grid article:nth-child(8),.service-grid article:nth-child(9){grid-column:span 12;min-height:420px}.client-logo-grid{grid-template-columns:repeat(2,1fr);gap:16px 10px}.client-mark,.client-mark__visual{min-height:82px;height:82px}.client-mark img{height:68px}.project-index{grid-template-columns:1fr}.proof{grid-template-columns:1fr}.process-row{grid-template-columns:1fr}.process-row article{min-height:220px}.enquiry{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.copyright{flex-direction:column;gap:8px}.archive-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.hero-image,.hero-image img{transform:none!important}}
