.lead-box{margin:-30px 7vw 0;position:relative;z-index:4;background:#fff;box-shadow:0 24px 70px rgba(40,25,20,.12);display:grid;grid-template-columns:.75fr 1.25fr}.lead-intro{background:var(--wine);color:#fff;padding:48px}.lead-intro>span,.portfolio-head>span,.faq-head>span{text-transform:uppercase;letter-spacing:.2em;font-size:11px}.lead-intro h2{font-family:Italiana,serif;font-weight:400;font-size:48px;line-height:1;margin:.35em 0}.lead-intro p{font-size:14px;margin-bottom:0}#lead-form{padding:42px;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}#lead-form label{display:grid;gap:7px;font-size:12px;font-weight:600}#lead-form input,#lead-form select{appearance:none;width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;border-radius:0;padding:11px 2px;font:inherit;color:var(--ink)}#lead-form input:focus,#lead-form select:focus{outline:2px solid var(--rose);outline-offset:4px}#lead-form button{grid-column:1/-1;border:0;background:var(--ink);color:#fff;padding:17px 20px;font:600 13px "DM Sans",sans-serif;display:flex;justify-content:space-between;cursor:pointer}#lead-form small{grid-column:1/-1;color:#706861;font-size:10px}.proof-strip{padding:70px 7vw 20px;display:grid;grid-template-columns:repeat(4,1fr)}.proof-strip div{display:grid;gap:4px;border-left:1px solid var(--line);padding:4px 25px}.proof-strip strong{font-family:Italiana,serif;font-size:23px;font-weight:400}.proof-strip span{font-size:11px;color:#716963}.portfolio{background:var(--ink);color:#fff;padding:120px 7vw}.portfolio-head{display:grid;grid-template-columns:1fr 3fr;gap:30px;margin-bottom:60px}.portfolio-head>div{display:grid;grid-template-columns:2fr 1fr;gap:50px;align-items:end}.portfolio h2,.faq h2{font-family:Italiana,serif;font-weight:400;font-size:clamp(48px,6vw,88px);line-height:1;margin:0}.portfolio-head p{font-size:14px}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:12px}.portfolio-grid figure{margin:0;position:relative;overflow:hidden;background:#2b2220}.portfolio-grid .wide{grid-column:span 2;grid-row:span 2}.portfolio-grid figure:nth-child(2){grid-row:span 2}.portfolio-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.portfolio-grid figure:hover img{transform:scale(1.025)}.portfolio-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:35px 18px 14px;background:linear-gradient(transparent,rgba(0,0,0,.72));font-size:12px}.portfolio-cta{display:flex;justify-content:space-between;align-items:center;margin-top:40px;gap:20px}.portfolio-cta p{font-family:Italiana,serif;font-size:27px}.portfolio-cta .primary{background:#fff;color:var(--ink)}.faq{padding:120px 7vw;display:grid;grid-template-columns:1fr 1.4fr;gap:9vw;background:#fff}.faq-head h2{font-size:clamp(48px,5vw,72px);margin:.3em 0}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{font-family:Italiana,serif;font-size:24px;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.faq summary:after{content:"+";font-family:"DM Sans",sans-serif}.faq details[open] summary:after{content:"−"}.faq details p{font-size:14px;max-width:650px;color:#5f5752}.hero>p strong{font-weight:600}
@media(max-width:900px){.lead-box{grid-template-columns:1fr;margin:0}.lead-intro{padding:35px}.proof-strip{grid-template-columns:1fr 1fr;gap:25px}.portfolio-head,.portfolio-head>div,.faq{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-grid figure:nth-child(2){grid-row:span 1}.portfolio-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.lead-box{margin:0}.lead-intro{padding:30px 24px}.lead-intro h2{font-size:42px}#lead-form{padding:28px 24px;grid-template-columns:1fr}#lead-form button,#lead-form small{grid-column:auto}.proof-strip{grid-template-columns:1fr;padding:50px 6vw}.portfolio{padding:80px 6vw}.portfolio-head>div{gap:15px}.portfolio-grid{grid-template-columns:1fr;grid-auto-rows:330px}.portfolio-grid .wide{grid-column:span 1;grid-row:span 1}.portfolio-cta .primary{width:100%}.faq{padding:80px 6vw;gap:40px}}
