/* Integrations page */
.intg-hero { padding: clamp(7rem,12vw,10rem) clamp(1.5rem,4vw,2.5rem) clamp(3rem,5vw,5rem); background: #FFFFFF; }
.intg-hero-inner { max-width: 1280px; margin: 0 auto; text-align: center; }
.intg-hero h1 { font-family: 'Fraunces', serif; font-size: clamp(2.4rem, 5.2vw, 4.4rem); line-height: 1.04; letter-spacing: -0.02em; color: var(--navy); margin: 1rem 0 1.2rem; font-weight: 600; }
.intg-hero h1 em { font-style: italic; color: var(--teal-mid); font-weight: 500; }
.intg-hero p.lead { font-size: clamp(1.05rem,1.4vw,1.2rem); color: var(--gray-600); max-width: 720px; margin: 0 auto 2rem; line-height: 1.55; }
.intg-counts { display:flex; justify-content:center; gap:2.5rem; flex-wrap:wrap; margin-top:2rem; padding-top:2rem; border-top:1px solid var(--gray-200); }
.intg-count strong { display:block; font-family:'Fraunces',serif; font-size:2.4rem; font-weight:600; color:var(--navy); line-height:1; }
.intg-count span { display:block; margin-top:0.4rem; color:var(--gray-600); font-size:0.9rem; letter-spacing:0.04em; }

.intg-jump { padding: 1.5rem clamp(1.5rem, 4vw, 2.5rem); border-bottom: 1px solid var(--gray-200); position: sticky; top: 69px; z-index: 50; backdrop-filter: blur(8px); background: rgba(255,255,255,0.92); }
.intg-jump-inner { max-width: 1280px; margin: 0 auto; display: flex; gap: 0.6rem; flex-wrap: wrap; align-items: center; }
.intg-jump-label { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--gray-600); margin-right: 0.4rem; }
.intg-jump a { padding: 0.5rem 1rem; border-radius: 999px; background: white; border: 1px solid var(--gray-200); color: var(--navy); text-decoration: none; font-size: 0.88rem; font-weight: 500; transition: all 0.18s; }
.intg-jump a:hover { background: var(--teal); color: white; border-color: var(--teal); transform: translateY(-1px); }

.intg-cat { padding: clamp(3.5rem,5vw,5.5rem) clamp(1.5rem,4vw,2.5rem); border-bottom: 1px solid var(--gray-200); scroll-margin-top: 140px; }
.intg-cat:nth-child(even) { background: var(--gray-100); }
.intg-cat-inner { max-width: 1280px; margin: 0 auto; }
.intg-cat-head { display:grid; grid-template-columns: 1.3fr 1fr; gap:3rem; align-items:end; margin-bottom: 2.5rem; }
@media (max-width: 880px){ .intg-cat-head { grid-template-columns: 1fr; gap:1.4rem; } }
.intg-cat-head .left .eyebrow { font-size:0.8rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--teal-mid); font-weight:700; margin-bottom: 0.7rem; display: inline-block; }
.intg-cat-head h2 { font-family:'Fraunces',serif; font-size: clamp(2rem, 3.6vw, 2.8rem); font-weight:600; color:var(--navy); line-height:1.1; letter-spacing:-0.01em; }
.intg-cat-head h2 em { font-style: italic; color: var(--teal-mid); font-weight: 500; }
.intg-cat-head p { color:var(--gray-600); font-size:1rem; line-height:1.6; }

.intg-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); gap: 1.1rem; }
.intg-card { background: white; border:1px solid var(--gray-200); border-radius:14px; padding: 1.3rem 1.4rem; transition: all 0.2s; }
.intg-card:hover { transform: translateY(-3px); box-shadow: 0 16px 30px -16px rgba(15,23,42,0.14); border-color: var(--teal-light); }
.intg-card-logo { height:32px; margin-bottom: 1rem; display:flex; align-items:center; }
.intg-card-logo img { max-height: 32px; width: auto; }
.intg-card h4 { font-family:'DM Sans',sans-serif; font-size: 1rem; font-weight:700; color:var(--navy); margin-bottom: 0.4rem; }
.intg-card p { font-size: 0.86rem; color: var(--gray-600); line-height:1.5; }
.intg-card .intg-card-tags { display:flex; flex-wrap:wrap; gap:0.4rem; margin-top: 0.9rem; padding-top: 0.9rem; border-top: 1px dashed var(--gray-200); }
.intg-card .intg-card-tags span { font-size: 0.7rem; padding: 0.18rem 0.5rem; border-radius: 4px; background: var(--gray-100); color: var(--gray-600); font-weight: 500; }

.intg-cta-row { margin-top: 2.5rem; padding: 1.6rem 1.8rem; background: var(--navy); color: white; border-radius: 14px; display:flex; gap:1.4rem; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.intg-cta-row p { color: rgba(255,255,255,0.84); margin: 0; }
.intg-cta-row strong { color: white; font-family:'Fraunces',serif; font-weight:600; font-style: italic; }
.intg-cta-row a { white-space: nowrap; }

.intg-missing { padding: clamp(3rem,5vw,5rem) clamp(1.5rem,4vw,2.5rem); text-align:center; background: var(--navy); color: white; }
.intg-missing-inner { max-width: 720px; margin: 0 auto; }
.intg-missing h2 { font-family: 'Fraunces',serif; font-size: clamp(1.8rem, 3.2vw, 2.4rem); font-weight: 600; margin-bottom: 1rem; }
.intg-missing p { color: rgba(255,255,255,0.8); margin-bottom: 2rem; line-height:1.55; font-size: 1.05rem; }
