/* Phase 2 SEO landing pages: shared visual system matching the existing Reva Films website. */
:root{
  --brass:#A77A2D;
  --brass-2:#C79A42;
  --brass-soft:#E8DEC6;
  --paper:#FAF7F0;
  --white:#FFFFFF;
  --line:rgba(167,122,45,.18);
  --line-strong:rgba(167,122,45,.42);
  --ink:#111827;
  --muted:#4B5563;
  --soft:#6B7280;
  --font-display:"Aptos Display","Segoe UI",Arial,sans-serif;
  --font-body:Aptos,"Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--font-body);background:var(--paper);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 44px));margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:1rem;background:var(--ink);color:var(--white);padding:.7rem 1rem;z-index:999}
.skip-link:focus{left:1rem}
.site-header{position:sticky;top:0;z-index:50;background:rgba(250,247,240,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.logo img{height:54px;width:auto;max-width:178px;object-fit:contain}
.nav-links{display:flex;align-items:center;gap:1.45rem;list-style:none;font-size:.82rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.nav-links a{transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--brass)}
.nav-cta,.btn-primary,.btn-secondary,.btn-text{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:0;font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.76rem;transition:transform .2s,background .2s,border-color .2s,color .2s}
.nav-cta,.btn-primary{background:var(--ink);color:var(--white);padding:.82rem 1.15rem;border:1px solid var(--ink)}
.nav-cta:hover,.btn-primary:hover{background:var(--brass);border-color:var(--brass);transform:translateY(-1px)}
.btn-secondary{border:1px solid var(--line-strong);color:var(--ink);padding:.9rem 1.2rem;background:transparent}.btn-secondary:hover{background:var(--brass-soft);border-color:var(--line-strong);transform:translateY(-1px)}
.btn-text{color:var(--brass);font-size:.72rem;letter-spacing:.14em}.menu-btn{display:none;border:1px solid var(--line);background:var(--white);padding:.7rem;color:var(--ink)}
.mobile-panel{display:none;border-top:1px solid var(--line);background:var(--white)}.mobile-panel.open{display:block}.mobile-panel a{display:block;padding:1rem 22px;border-bottom:1px solid rgba(167,122,45,.12);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:var(--muted)}
.page-hero{padding:5.4rem 0 4.2rem;background:linear-gradient(180deg,var(--white),var(--paper));border-bottom:1px solid var(--line)}
.breadcrumb{font-size:.78rem;color:var(--soft);margin-bottom:1rem}.breadcrumb a{color:var(--brass);font-weight:800}
.eyebrow,.label{font-size:.75rem;letter-spacing:.26em;text-transform:uppercase;color:var(--brass);font-weight:900;margin-bottom:1rem}
h1{font-family:var(--font-display);font-size:clamp(2.1rem,3.1vw,3.75rem);line-height:1.08;letter-spacing:-.015em;color:var(--ink);font-weight:700;max-width:920px}
.hero-copy{font-size:1.06rem;color:var(--muted);max-width:790px;margin:1.45rem 0 0;line-height:1.85}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}
section{padding:5.2rem 0}.section-white{background:var(--white)}.section-paper{background:var(--paper)}.section-dark{background:var(--ink);color:var(--white)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.2rem}.section-head p{max-width:620px;color:var(--muted)}.section-dark .section-head p,.section-dark p{color:#D1D5DB}
.h2{font-family:var(--font-display);font-size:clamp(1.75rem,2.5vw,3rem);line-height:1.08;letter-spacing:-.015em;color:inherit;font-weight:700}.h3{font-family:var(--font-display);font-size:1.28rem;line-height:1.2;color:inherit}
.content-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem;align-items:start}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.two-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}
.card,.proof-card,.faq-item{background:var(--white);border:1px solid var(--line);padding:1.45rem;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.card:hover,.proof-card:hover{background:var(--brass-soft);border-color:var(--line-strong);box-shadow:0 18px 45px rgba(88,72,43,.13);transform:translateY(-2px)}
.card .num{font-family:var(--font-display);font-size:.82rem;color:var(--brass);font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem}.card p,.proof-card p{color:var(--muted);font-size:.94rem;margin-top:.65rem}
.list{display:grid;gap:.75rem;margin-top:1.2rem}.list li{list-style:none;padding-left:1.4rem;position:relative;color:var(--muted)}.list li:before{content:"";position:absolute;left:0;top:.72rem;width:6px;height:6px;background:var(--brass)}
.process{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.process-item{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:1.25rem}.process-item:before{counter-increment:step;content:"0" counter(step);display:block;font-family:var(--font-display);color:var(--brass-2);font-weight:800;margin-bottom:1rem}.process-item p{font-size:.9rem}
.cta-band{background:var(--ink);color:var(--white);padding:3rem;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;gap:2rem}.cta-band p{color:#D1D5DB;margin-top:.5rem;max-width:620px}
.faq{display:grid;gap:.85rem}.faq-item h3{font-size:1rem;margin-bottom:.4rem}.faq-item p{color:var(--muted)}
.footer{background:var(--white);border-top:1px solid var(--line);padding:3rem 0 2rem}.footer-grid{display:grid;grid-template-columns:1.1fr repeat(4,.78fr);gap:1.6rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}.footer-logo img{height:46px;width:auto;max-width:170px;object-fit:contain}.footer p{color:var(--muted);margin-top:1rem;max-width:390px}.footer-title{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);font-weight:900;margin-bottom:.8rem}.footer a{display:block;color:var(--muted);margin:.36rem 0;font-size:.92rem}.footer a:hover{color:var(--brass)}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;color:var(--soft);font-size:.84rem;padding-top:1.5rem}
@media(max-width:980px){.nav-links,.nav-cta{display:none}.menu-btn{display:inline-flex}.content-grid{grid-template-columns:1fr}.card-grid,.two-grid,.footer-grid{grid-template-columns:1fr 1fr}.process{grid-template-columns:repeat(2,1fr)}.section-head,.cta-band{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.container{width:min(100% - 32px,1180px)}.nav{height:76px}.logo img{height:44px}.hero-actions,.footer-bottom{flex-direction:column;align-items:flex-start}.card-grid,.two-grid,.process,.footer-grid{grid-template-columns:1fr}.cta-band{padding:1.4rem}section{padding:4rem 0}h1{font-size:2.15rem}}


.qualification-box{background:var(--white);border:1px solid var(--line);padding:1.35rem;margin-bottom:1rem}.qualification-box h2{font-family:var(--font-display);font-size:1.55rem;line-height:1.15;margin-bottom:.65rem}.qualification-box p{color:var(--muted);margin-bottom:.8rem}.qualification-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem}.qualification-list span{color:var(--ink);font-weight:700;border-left:3px solid var(--brass);padding-left:.65rem}

/* Phase 7 strengthening: proof videos and compact related service links. */
.project-video-section{display:none}.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.video-card{background:var(--white);border:1px solid var(--line);padding:1rem}.video-shell{position:relative;aspect-ratio:16/9;background:#111;overflow:hidden;border:1px solid rgba(167,122,45,.22)}.video-shell iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-card h3{font-size:1rem;margin-top:.8rem;color:var(--ink)}.small-related{padding:3.2rem 0}.small-related .hero-actions{margin-top:0}.small-related .btn-secondary{font-size:.68rem;padding:.72rem .9rem}.compact-list{columns:2;column-gap:2rem}.compact-list li{break-inside:avoid}
@media(max-width:620px){.video-grid{grid-template-columns:1fr}.compact-list{columns:1}}

