/* 
   homepage css
   dependency on /resources/global.css for all else
 */
/* masthead */
.hero {padding:110px 40px 90px;max-width:1180px;margin:0 auto;background-image:url('/resources/studioshot.webp');background-size:cover;background-position:center right;background-repeat:no-repeat;}
.hero-inner {max-width:760px;}
.hero h1 {font-family:'Fraunces',serif;font-weight:300;font-size:clamp(36px,6vw,72px);line-height:1.02;letter-spacing:-0.01em;margin:0 0 32px;}
.hero h1 em {font-style:normal;}
.hero h1 .accent {font-style:italic;color:var(--spot);}
.cta {display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:#fff;font-family:'Barlow',monospace;font-size:13px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;text-decoration:none;padding:16px 26px;border-radius:3px;transition:background .15s ease, transform .1s ease;}
.cta:hover {background:var(--spot);}
.cta:active {transform:scale(0.98);}
.cta svg {width:14px;height:14px;}
/* services */
.services {border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.services-grid {max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);}
.service {padding:36px 30px;border-right:1px solid var(--line);}
.service:last-child {border-right:none;}
.service h2 {font-family:'Fraunces',serif;font-weight:300;font-size:21px;margin:0 0 10px;}
.service p {font-size:14.5px;color:var(--slate);line-height:1.55;margin:0;}
/* about us */
.about {background:#efefef;padding:100px 0;}
.about-inner {max-width:1180px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:1fr 1fr;gap:70px;}
.logos {max-width:1180px;margin:70px auto 0;padding:60px 40px 0;border-top:1px solid var(--line);}
.about h2 {font-family:'Fraunces',serif;font-weight:300;font-size:clamp(32px,4vw,46px);line-height:1.1;margin:0;}
.about-copy p {font-size:16.5px;line-height:1.7;color:var(--slate);margin:0 0 20px;}
.about-copy p:last-child {margin-bottom:0;}
.about-link {display:inline-block;margin-top:8px;font-family:'Barlow',monospace;font-size:13px;letter-spacing:0.04em;text-transform:uppercase;font-weight:600;color:var(--ink);text-decoration:none;border-bottom:2px solid transparent;transition:border-color .15s ease, color .15s ease;}
.about-link:hover {border-color:var(--spot);color:var(--spot);}
.logo-grid {display:grid;grid-template-columns:repeat(5,1fr);gap:36px;align-items:center;justify-items:center;filter:grayscale(1);opacity:0.65;}
.logo-grid img {filter:brightness(0);width:120px;}
.disclaimer {font-family:'Barlow',monospace;font-size:11px;color:var(--slate);text-align:center;margin-top:40px;line-height:1.6;max-width:65%;margin-left:auto;margin-right:auto;}
/* the process */
.process {max-width:1180px;margin:0 auto;padding:100px 40px;}
.process-head {max-width:600px;margin-bottom:60px;}
.process-head h2 {font-family:'Fraunces',serif;font-weight:300;font-size:clamp(30px,3.6vw,40px);line-height:1.15;margin:0;}
.process-head h2 em {font-style:italic;color:var(--spot);}
.steps {display:grid;grid-template-columns:repeat(3,1fr);gap:50px;}
.step .num {font-family:'Barlow',monospace;font-size:13px;color:var(--spot);font-weight:600;margin-bottom:16px;}
.step h2 {font-family:'Fraunces',serif;font-weight:300;font-size:22px;margin:0 0 12px;}
.step p {font-size:15px;line-height:1.6;color:var(--slate);margin:0;}
/* responsive */
@media (max-width:860px) {.hero {padding:70px 22px 60px;background-image:none;} .about {padding:70px 0;} .about-inner {padding:0 22px;grid-template-columns:1fr;gap:40px;} .logos {padding:40px 22px 0;} .process {padding:70px 22px;} .services-grid {grid-template-columns:1fr 1fr;} .service {border-right:1px solid var(--line);} .service:nth-child(2n) {border-right:none;} .service:nth-child(n+3) {border-top:1px solid var(--line);} .logo-grid {grid-template-columns:repeat(3,1fr);gap:26px;} .steps {grid-template-columns:1fr;gap:36px;}}