/*
Theme Name: RidgeForge Ventures
Theme URI: https://ridgeforgeventures.example
Author: RidgeForge Ventures
Description: Private equity and venture finance firm. Deep slate #0E1520 with burnished gold #B8933A and warm ivory #F8F6F1. Cormorant Garamond + Inter. Authoritative editorial layouts for an Austin TX finance firm.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: ridgeforge
Tags: finance, private-equity, venture, gold, slate, austin, authoritative
*/
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&family=Inter:wght@300;400;500;600;700&display=swap');

:root {
  --rf-slate:   #0E1520;
  --rf-deep:    #08101A;
  --rf-dark:    #121C2A;
  --rf-card:    #172232;
  --rf-panel:   #1D2A3C;
  --rf-mid:     #243346;
  --rf-gold:    #B8933A;
  --rf-gold2:   #CEAA50;
  --rf-light:   #E4C97A;
  --rf-ivory:   #F8F6F1;
  --rf-cream:   #F2EFE8;
  --rf-warm:    #EAE6DC;
  --rf-sand:    #DEDAD0;
  --rf-text:    #1A1610;
  --rf-muted:   #64604E;
  --rf-silver:  #8A8878;
  --rf-line:    rgba(184,147,58,0.16);
  --font-d:     'Cormorant Garamond', serif;
  --font-b:     'Inter', sans-serif;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: var(--font-b); font-size: 16px; line-height: 1.75; color: var(--rf-text); background: var(--rf-ivory); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
ul { list-style: none; }
.wrap { max-width: 1280px; margin: 0 auto; padding: 0 52px; position: relative; z-index: 1; }

/* IMAGES — finance, Austin, executive */
.bg-austin { background: url("https://images.unsplash.com/photo-1531218150217-54595bc2b934?w=1600&q=95") center/cover no-repeat; }
.bg-boardroom { background: url("https://images.unsplash.com/photo-1568992687947-868a62a9f521?w=1600&q=95") center/cover no-repeat; }
.bg-handshake { background: url("https://images.unsplash.com/photo-1450101499163-c8848c66ca85?w=1600&q=95") center/cover no-repeat; }
.bg-data { background: url("https://images.unsplash.com/photo-1526628953301-3e589a6a8b74?w=1600&q=95") center/cover no-repeat; }
.bg-skyline { background: url("https://images.unsplash.com/photo-1504893524553-b855bce32c67?w=1600&q=95") center/cover no-repeat; }
.bg-exec { background: url("https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=1600&q=95") center/cover no-repeat; }
.bg-deal { background: url("https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?w=1600&q=95") center/cover no-repeat; }
.bg-growth { background: url("https://images.unsplash.com/photo-1590283603385-17ffb3a7f29f?w=1600&q=95") center/cover no-repeat; }
.bg-office { background: url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?w=1600&q=95") center/cover no-repeat; }
.bg-meeting { background: url("https://images.unsplash.com/photo-1556761175-5973dc0f32e7?w=1600&q=95") center/cover no-repeat; }
.bg-portfolio { background: url("https://images.unsplash.com/photo-1579532537598-459ecdaf39cc?w=1600&q=95") center/cover no-repeat; }
.bg-tech { background: url("https://images.unsplash.com/photo-1518770660439-4636190af475?w=1600&q=95") center/cover no-repeat; }

/* TOPBAR */
.topbar { background: var(--rf-deep); padding: 9px 52px; display: flex; justify-content: space-between; align-items: center; font-family: var(--font-b); font-size: 11px; font-weight: 500; letter-spacing: .13em; text-transform: uppercase; color: rgba(184,147,58,.38); }
.topbar a { color: var(--rf-gold); transition: opacity .2s; }
.topbar a:hover { opacity: .7; }

/* HEADER */
.site-header { background: rgba(14,21,32,.97); backdrop-filter: blur(22px); border-bottom: 1px solid var(--rf-line); position: sticky; top: 0; z-index: 100; }
.hdr { max-width: 1280px; margin: 0 auto; padding: 0 52px; height: 78px; display: flex; align-items: center; justify-content: space-between; }
.logo { display: flex; align-items: center; gap: 15px; }
.logo-mark { width: 44px; height: 44px; border: 1px solid var(--rf-gold); display: flex; align-items: center; justify-content: center; position: relative; flex-shrink: 0; }
.logo-mark::before { content: ''; position: absolute; inset: 5px; border: 1px solid rgba(184,147,58,.22); }
.logo-r { font-family: var(--font-d); font-size: 20px; font-style: italic; color: var(--rf-gold); position: relative; z-index: 1; }
.logo-name { font-family: var(--font-d); font-size: 18px; color: var(--rf-ivory); line-height: 1.1; letter-spacing: .005em; }
.logo-sub { font-family: var(--font-b); font-size: 9px; font-weight: 500; letter-spacing: .26em; text-transform: uppercase; color: rgba(184,147,58,.32); display: block; margin-top: 2px; }
.nav ul { display: flex; gap: 32px; }
.nav a { font-family: var(--font-b); font-size: 12px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: rgba(248,246,241,.38); transition: color .2s; }
.nav a:hover { color: var(--rf-gold); }
.btn { display: inline-block; padding: 11px 26px; font-family: var(--font-b); font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; cursor: pointer; border: none; transition: all .22s; }
.btn-gold { background: var(--rf-gold); color: var(--rf-deep); }
.btn-gold:hover { background: var(--rf-gold2); }
.btn-ghost { border: 1px solid rgba(184,147,58,.3); color: var(--rf-gold); background: transparent; }
.btn-ghost:hover { background: rgba(184,147,58,.07); }
.btn-slate { background: var(--rf-slate); color: var(--rf-ivory); }
.btn-slate:hover { background: var(--rf-dark); }
.btn-outline { border: 1px solid var(--rf-gold); color: var(--rf-text); background: transparent; }
.btn-outline:hover { background: var(--rf-gold); color: var(--rf-deep); }
.btn-lg { padding: 15px 38px; font-size: 12px; }

/* HERO */
.hero { min-height: 100vh; display: grid; grid-template-columns: 54% 46%; overflow: hidden; }
.hero-l { background: var(--rf-deep); padding: 160px 70px 100px 52px; display: flex; flex-direction: column; justify-content: center; position: relative; overflow: hidden; }
.hero-l::after { content: ''; position: absolute; bottom: -100px; left: -80px; width: 480px; height: 480px; background: radial-gradient(circle, rgba(29,42,60,.55) 0%, transparent 65%); pointer-events: none; }
.hero-r { position: relative; overflow: hidden; }
.hero-img { position: absolute; inset: 0; background-size: cover; background-position: center; transition: transform 9s ease; }
.hero-r:hover .hero-img { transform: scale(1.055); }
.hero-fade { position: absolute; inset: 0; background: linear-gradient(to right, rgba(8,16,26,.68) 0%, transparent 54%), linear-gradient(to top, rgba(8,16,26,.72) 0%, transparent 48%); }
.hero-card { position: absolute; bottom: 54px; left: -28px; background: var(--rf-ivory); padding: 26px 32px; z-index: 4; border-left: 5px solid var(--rf-gold); box-shadow: 0 10px 44px rgba(0,0,0,.38); }
.hc-n { font-family: var(--font-d); font-size: 50px; font-style: italic; color: var(--rf-slate); line-height: 1; }
.hc-l { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--rf-muted); margin-top: 6px; }
.hero-eye { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .3em; text-transform: uppercase; color: var(--rf-gold); margin-bottom: 28px; display: flex; align-items: center; gap: 18px; }
.hero-eye::before { content: ''; display: block; width: 42px; height: 1px; background: var(--rf-gold); flex-shrink: 0; }
.hero h1 { font-family: var(--font-d); font-size: clamp(48px, 6.5vw, 108px); line-height: .94; color: var(--rf-ivory); margin-bottom: 26px; letter-spacing: -.01em; }
.hero h1 em { font-style: italic; color: var(--rf-gold); }
.hero-sub { font-family: var(--font-b); font-size: 17px; line-height: 1.88; color: rgba(248,246,241,.5); max-width: 490px; margin-bottom: 44px; font-weight: 300; }
.hero-btns { display: flex; gap: 12px; margin-bottom: 62px; flex-wrap: wrap; }
.hero-stats { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--rf-line); padding-top: 34px; }
.hs-item { padding-right: 22px; border-right: 1px solid var(--rf-line); }
.hs-item:last-child { border-right: none; }
.hs-item:not(:first-child) { padding-left: 22px; }
.hs-n { font-family: var(--font-d); font-size: 46px; font-style: italic; color: var(--rf-gold); line-height: 1; margin-bottom: 5px; }
.hs-l { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: rgba(248,246,241,.24); }

/* SECTIONS */
.sec { padding: 108px 0; position: relative; z-index: 1; }
.sec-slate  { background: var(--rf-slate); color: var(--rf-ivory); }
.sec-dark   { background: var(--rf-dark);  color: var(--rf-ivory); }
.sec-card   { background: var(--rf-card);  color: var(--rf-ivory); }
.sec-gold   { background: var(--rf-gold); }
.sec-warm   { background: var(--rf-warm); }
.sec-sand   { background: var(--rf-sand); }

.eyebrow { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .28em; text-transform: uppercase; color: var(--rf-gold); margin-bottom: 16px; display: flex; align-items: center; gap: 14px; }
.eyebrow::before { content: ''; display: block; width: 26px; height: 1px; background: var(--rf-gold); flex-shrink: 0; }
.sec-slate .eyebrow, .sec-dark .eyebrow, .sec-card .eyebrow { color: var(--rf-gold2); }
.sec-slate .eyebrow::before, .sec-dark .eyebrow::before, .sec-card .eyebrow::before { background: var(--rf-gold2); }
.sec-gold .eyebrow { color: rgba(8,16,26,.5); }
.sec-gold .eyebrow::before { background: rgba(8,16,26,.3); }

.sec-title { font-family: var(--font-d); font-size: clamp(36px, 5vw, 78px); line-height: .96; margin-bottom: 20px; color: var(--rf-text); }
.sec-title em { font-style: italic; color: var(--rf-gold); }
.sec-slate .sec-title, .sec-dark .sec-title, .sec-card .sec-title { color: var(--rf-ivory); }
.sec-slate .sec-title em, .sec-dark .sec-title em, .sec-card .sec-title em { color: var(--rf-gold2); }
.sec-gold .sec-title { color: var(--rf-deep); }

.sec-lead { font-family: var(--font-b); font-size: 17px; line-height: 1.88; color: var(--rf-muted); max-width: 700px; font-weight: 300; }
.sec-slate .sec-lead, .sec-dark .sec-lead, .sec-card .sec-lead { color: rgba(248,246,241,.5); }
.sec-gold .sec-lead { color: rgba(8,16,26,.65); }

/* FOCUS GRID */
.focus-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; background: var(--rf-line); margin-top: 52px; }
.focus-card { background: var(--rf-card); padding: 50px 44px; position: relative; overflow: hidden; transition: background .3s; }
.focus-card::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--rf-gold), var(--rf-light)); transform: scaleX(0); transform-origin: left; transition: transform .42s; }
.focus-card:hover { background: var(--rf-panel); }
.focus-card:hover::after { transform: scaleX(1); }
.focus-num { font-family: var(--font-d); font-size: 84px; font-style: italic; color: rgba(184,147,58,.07); line-height: 1; position: absolute; top: 12px; right: 18px; }
.focus-card h3 { font-family: var(--font-d); font-size: 28px; color: var(--rf-ivory); margin-bottom: 13px; line-height: 1.15; position: relative; }
.focus-card p { font-family: var(--font-b); font-size: 14px; color: rgba(248,246,241,.5); line-height: 1.88; margin-bottom: 14px; font-weight: 300; position: relative; }
.focus-tag { font-family: var(--font-b); font-size: 11px; color: var(--rf-gold2); font-weight: 600; letter-spacing: .06em; position: relative; }

/* PORTFOLIO */
.port-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--rf-line); margin-top: 52px; }
.port-card { background: var(--rf-card); padding: 40px 34px; transition: background .28s; position: relative; overflow: hidden; }
.port-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: var(--rf-gold); transform: scaleX(0); transform-origin: left; transition: transform .38s; }
.port-card:hover { background: var(--rf-panel); }
.port-card:hover::before { transform: scaleX(1); }
.port-name { font-family: var(--font-d); font-size: 22px; color: var(--rf-ivory); margin-bottom: 6px; }
.port-sector { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--rf-gold); margin-bottom: 10px; }
.port-card p { font-family: var(--font-b); font-size: 13px; color: rgba(248,246,241,.46); line-height: 1.8; font-weight: 300; }
.port-stage { font-family: var(--font-b); font-size: 11px; color: rgba(248,246,241,.2); margin-top: 14px; font-weight: 600; }

/* STATS BAND */
.stats-band { background: var(--rf-gold); padding: 65px 0; }
.stats-row { display: grid; grid-template-columns: repeat(4,1fr); }
.stat-item { text-align: center; padding: 0 18px; border-right: 1px solid rgba(8,16,26,.14); }
.stat-item:last-child { border-right: none; }
.stat-n { font-family: var(--font-d); font-size: 62px; font-style: italic; color: var(--rf-deep); line-height: 1; margin-bottom: 8px; }
.stat-l { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: rgba(8,16,26,.46); }

/* SPLIT */
.split { display: grid; grid-template-columns: 1fr 1fr; }
.sp-img { position: relative; min-height: 520px; overflow: hidden; }
.sp-img-inner { position: absolute; inset: 0; background-size: cover; background-position: center; transition: transform 7s ease; }
.sp-img:hover .sp-img-inner { transform: scale(1.05); }
.sp-fade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(8,16,26,.88) 0%, rgba(8,16,26,.08) 54%); }
.sp-cap { position: absolute; bottom: 0; left: 0; right: 0; padding: 30px 42px; z-index: 2; }
.sp-cat { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--rf-gold); margin-bottom: 6px; }
.sp-title { font-family: var(--font-d); font-size: 20px; font-style: italic; color: #fff; line-height: 1.2; }
.sp-content { padding: 76px 68px; display: flex; flex-direction: column; justify-content: center; }

/* TEAM */
.team-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; margin-top: 52px; }
.team-card { overflow: hidden; border: 1px solid var(--rf-line); transition: border-color .28s; }
.team-card:hover { border-color: var(--rf-gold); }
.team-photo { height: 300px; overflow: hidden; }
.team-photo-inner { width: 100%; height: 100%; background-size: cover; background-position: center top; transition: transform .5s; }
.team-card:hover .team-photo-inner { transform: scale(1.055); }
.team-body { padding: 26px 22px; background: var(--rf-card); }
.team-name { font-family: var(--font-d); font-size: 22px; color: var(--rf-ivory); margin-bottom: 3px; }
.team-role { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--rf-gold); margin-bottom: 10px; }
.team-bio { font-family: var(--font-b); font-size: 13px; color: rgba(248,246,241,.46); line-height: 1.78; font-weight: 300; }

/* TESTIMONIALS */
.testi-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 20px; margin-top: 52px; }
.tst-card { background: #fff; padding: 44px 40px; border-top: 4px solid var(--rf-gold); }
.tst-mark { font-family: var(--font-d); font-size: 68px; font-style: italic; color: rgba(184,147,58,.08); line-height: .5; display: block; margin-bottom: 14px; }
.tst-text { font-family: var(--font-d); font-size: 19px; font-style: italic; color: var(--rf-text); line-height: 1.66; margin-bottom: 20px; }
.tst-name { font-family: var(--font-b); font-size: 12px; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; color: var(--rf-slate); }
.tst-co { font-family: var(--font-b); font-size: 12px; color: var(--rf-muted); margin-top: 3px; }

/* INSIGHTS */
.ins-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; margin-top: 52px; }
.ins-card { border-bottom: 3px solid rgba(184,147,58,.1); padding-bottom: 22px; transition: border-color .28s; }
.ins-card:hover { border-bottom-color: var(--rf-gold); }
.ins-img { height: 200px; overflow: hidden; margin-bottom: 18px; }
.ins-img-inner { width: 100%; height: 100%; background-size: cover; background-position: center; transition: transform .5s; }
.ins-card:hover .ins-img-inner { transform: scale(1.055); }
.ins-cat { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--rf-slate); margin-bottom: 8px; }
.ins-title { font-family: var(--font-d); font-size: 22px; color: var(--rf-text); margin-bottom: 8px; line-height: 1.2; }
.ins-text { font-family: var(--font-b); font-size: 13px; color: var(--rf-muted); line-height: 1.78; font-weight: 300; }

/* ROLES */
.roles { margin-top: 44px; }
.role-item { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: center; padding: 36px 0; border-bottom: 1px solid var(--rf-line); }
.role-item:first-child { border-top: 1px solid var(--rf-line); }
.sec-warm .role-item, .sec-sand .role-item { border-color: rgba(0,0,0,.07); }
.role-dept { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--rf-gold); margin-bottom: 6px; }
.role-title { font-family: var(--font-d); font-size: 23px; color: var(--rf-ivory); margin-bottom: 6px; }
.sec-warm .role-title, .sec-sand .role-title { color: var(--rf-text); }
.role-desc { font-family: var(--font-b); font-size: 13px; color: rgba(248,246,241,.46); max-width: 600px; line-height: 1.76; font-weight: 300; }
.sec-warm .role-desc, .sec-sand .role-desc { color: var(--rf-muted); }

/* CTA BAND */
.cta-band { background: var(--rf-deep); padding: 120px 0; text-align: center; position: relative; overflow: hidden; }
.cta-band::before { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 640px; height: 640px; background: radial-gradient(circle, rgba(29,42,60,.5) 0%, transparent 62%); pointer-events: none; }
.cta-band h2 { font-family: var(--font-d); font-size: clamp(50px, 8vw, 112px); color: var(--rf-ivory); line-height: .93; margin-bottom: 22px; position: relative; z-index: 1; }
.cta-band h2 em { font-style: italic; color: var(--rf-gold); }
.cta-band p { font-family: var(--font-b); font-size: 17px; color: rgba(248,246,241,.42); max-width: 520px; margin: 0 auto 46px; font-weight: 300; position: relative; z-index: 1; }
.cta-btns { display: flex; gap: 12px; justify-content: center; position: relative; z-index: 1; flex-wrap: wrap; }

/* CONTACT */
.contact-wrap { display: grid; grid-template-columns: 1fr 1.65fr; }
.cinfo { background: var(--rf-slate); padding: 76px 52px; }
.cform { background: var(--rf-card); padding: 76px 62px; }
.ci-label { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: rgba(184,147,58,.44); margin-bottom: 8px; }
.ci-block { margin-bottom: 26px; }
.ci-block p, .ci-block a { font-family: var(--font-d); font-size: 18px; font-style: italic; color: var(--rf-ivory); }
.ci-block a:hover { color: var(--rf-gold2); }
.form { display: flex; flex-direction: column; gap: 20px; }
.field label { display: block; font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: rgba(248,246,241,.26); margin-bottom: 8px; }
.field input, .field select, .field textarea { width: 100%; background: transparent; border: none; border-bottom: 1px solid var(--rf-line); padding: 12px 0; font-family: var(--font-d); font-size: 17px; font-style: italic; color: var(--rf-ivory); outline: none; transition: border-color .2s; }
.field input:focus, .field select:focus, .field textarea:focus { border-bottom-color: var(--rf-gold); }
.field select { font-style: normal; font-family: var(--font-b); font-size: 14px; }
.field select option { background: var(--rf-card); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }

/* FOOTER */
.site-footer { background: var(--rf-deep); color: var(--rf-ivory); border-top: 1px solid var(--rf-line); padding: 72px 0 28px; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 44px; margin-bottom: 48px; }
.footer-about p { font-family: var(--font-b); font-size: 13px; color: rgba(248,246,241,.26); max-width: 270px; margin-top: 13px; line-height: 1.86; font-weight: 300; }
.footer-col h4 { font-family: var(--font-b); font-size: 10px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--rf-gold); margin-bottom: 17px; }
.footer-col li { margin-bottom: 10px; }
.footer-col a { font-family: var(--font-b); font-size: 13px; color: rgba(248,246,241,.26); font-weight: 300; transition: color .2s; }
.footer-col a:hover { color: var(--rf-gold); }
.footer-disc { font-family: var(--font-b); font-size: 11px; color: rgba(248,246,241,.15); max-width: 270px; margin-top: 10px; line-height: 1.7; }
.footer-bottom { border-top: 1px solid var(--rf-line); padding-top: 24px; display: flex; justify-content: space-between; font-family: var(--font-b); font-size: 10px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; color: rgba(184,147,58,.15); }

@media (max-width: 1060px) {
  .hero { grid-template-columns: 1fr; }
  .hero-r { min-height: 420px; }
  .focus-grid, .port-grid, .team-grid, .testi-grid, .ins-grid { grid-template-columns: repeat(2,1fr); }
  .split { grid-template-columns: 1fr; }
  .sp-img { min-height: 380px; }
  .stats-row { grid-template-columns: repeat(2,1fr); gap: 0; }
  .contact-wrap { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 36px; }
}
@media (max-width: 640px) {
  .wrap { padding: 0 22px; }
  .topbar, .hdr { padding-left: 22px; padding-right: 22px; }
  .nav { display: none; }
  .focus-grid, .port-grid, .team-grid, .testi-grid, .ins-grid { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; }
  .cta-btns { flex-direction: column; align-items: center; }
  .footer-grid { grid-template-columns: 1fr; }
  .hero-l { padding: 120px 22px 80px; }
  .sp-content { padding: 52px 28px; }
}
