/* SEO inner pages — extends the existing Ghaim visual system */
.inner-page { background: #03090c; }
.inner-header .nav-links a { white-space: nowrap; }
.inner-hero { padding: 154px 0 86px; position: relative; overflow: hidden; background: radial-gradient(circle at 78% 22%, rgba(108,227,218,.09), transparent 26rem), radial-gradient(circle at 18% 82%, rgba(100,125,229,.08), transparent 24rem), #03090c; }
.inner-hero::after { content:""; position:absolute; inset:auto 0 0; height:1px; background:linear-gradient(90deg, transparent, rgba(108,227,218,.18), transparent); }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-bottom:26px; color:#6f8d92; font-size:11px; }
.breadcrumbs a:hover { color: var(--brand-soft); }
.breadcrumbs span[aria-hidden="true"] { color:#3d5b61; }
.inner-hero-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:72px; align-items:center; }
.inner-hero-copy h1 { margin:0 0 24px; font-size:clamp(50px,6vw,82px); line-height:.95; letter-spacing:-.06em; font-weight:650; max-width:890px; }
.inner-hero-copy .lede { margin:0; max-width:730px; color:var(--muted); font-size:18px; line-height:1.7; }
.inner-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.inner-hero-card { min-height:390px; border-radius:34px; padding:28px; position:relative; overflow:hidden; }
.inner-hero-card::before { content:""; position:absolute; width:330px; height:330px; border-radius:50%; right:-110px; top:-100px; background:radial-gradient(circle,rgba(108,227,218,.15),transparent 68%); }
.inner-hero-card::after { content:""; position:absolute; width:230px; height:230px; border-radius:50%; left:-80px; bottom:-110px; background:radial-gradient(circle,rgba(100,125,229,.13),transparent 70%); }
.hero-card-content { position:relative; z-index:2; height:100%; display:flex; flex-direction:column; }
.hero-card-kicker { text-transform:uppercase; letter-spacing:.13em; color:var(--brand-soft); font-size:10px; }
.hero-card-stat { margin:52px 0 12px; font-size:clamp(56px,7vw,94px); line-height:.82; letter-spacing:-.08em; font-weight:650; background:linear-gradient(180deg,#f7ffff,var(--brand)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero-card-stat small { display:block; margin-top:13px; font-size:14px; letter-spacing:.04em; color:#a5c0c4; -webkit-text-fill-color:#a5c0c4; }
.hero-card-copy { color:#8fa8ac; font-size:13px; line-height:1.7; max-width:420px; }
.hero-card-tags { margin-top:auto; display:flex; flex-wrap:wrap; gap:7px; padding-top:24px; }
.hero-card-tags span { padding:7px 9px; border:1px solid var(--line); border-radius:999px; color:#89a5aa; font-size:9px; }
.content-section { padding:96px 0; position:relative; }
.content-section.alt { background:#04141b; }
.content-section.deep { background:#061820; }
.content-heading { max-width:820px; margin-bottom:44px; }
.content-heading h2 { margin:0 0 16px; font-size:clamp(38px,4.8vw,62px); line-height:1; letter-spacing:-.05em; font-weight:620; }
.content-heading p { margin:0; max-width:760px; color:var(--muted); line-height:1.7; font-size:16px; }
.content-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.content-grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.seo-card { border:1px solid var(--line); border-radius:24px; padding:26px; background:rgba(255,255,255,.022); min-height:210px; }
.seo-card .num { display:inline-block; margin-bottom:32px; color:var(--brand); font-size:10px; letter-spacing:.12em; }
.seo-card h3 { margin:0 0 10px; font-size:22px; letter-spacing:-.035em; }
.seo-card p { margin:0; color:#8ea7ab; font-size:13px; line-height:1.68; }
.seo-card ul { margin:14px 0 0; padding-left:18px; color:#8ea7ab; font-size:13px; line-height:1.7; }
.detail-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:72px; align-items:start; }
.detail-sticky { position:sticky; top:112px; }
.detail-sticky h2 { font-size:clamp(38px,4vw,55px); letter-spacing:-.05em; line-height:1; margin:0 0 16px; }
.detail-sticky p { margin:0; color:var(--muted); line-height:1.7; font-size:14px; }
.detail-list { display:grid; gap:10px; }
.detail-item { border:1px solid var(--line); border-radius:20px; padding:21px 22px; background:rgba(255,255,255,.018); }
.detail-item h3 { margin:0 0 7px; font-size:18px; }
.detail-item p { margin:0; color:#88a2a7; line-height:1.65; font-size:13px; }
.keyword-strip { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:22px 0; background:rgba(108,227,218,.015); }
.keyword-strip .container { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.keyword-strip span { border:1px solid rgba(255,255,255,.07); border-radius:999px; padding:7px 10px; color:#78979c; font-size:10px; }
.faq-list { display:grid; gap:10px; max-width:920px; }
details.faq { border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.018); overflow:hidden; }
details.faq summary { cursor:pointer; list-style:none; padding:20px 22px; font-size:15px; font-weight:650; color:#dbe9ea; }
details.faq summary::-webkit-details-marker { display:none; }
details.faq summary::after { content:"+"; float:right; color:var(--brand); font-size:18px; font-weight:400; }
details.faq[open] summary::after { content:"–"; }
details.faq p { margin:0; padding:0 22px 20px; color:#8ba5aa; line-height:1.7; font-size:13px; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.related-card { display:flex; flex-direction:column; min-height:180px; padding:23px; border-radius:22px; border:1px solid var(--line); background:rgba(255,255,255,.02); transition:.25s ease; }
.related-card:hover { transform:translateY(-3px); border-color:var(--line-strong); background:rgba(108,227,218,.035); }
.related-card span { color:#66868c; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.related-card h3 { margin:28px 0 8px; font-size:20px; letter-spacing:-.03em; }
.related-card p { margin:0; color:#829ca1; font-size:12px; line-height:1.6; }
.related-card b { margin-top:auto; padding-top:18px; color:var(--brand-soft); font-size:11px; }
.page-cta { padding:90px 0; background:radial-gradient(circle at 78% 50%,rgba(108,227,218,.08),transparent 26rem),#061820; }
.page-cta-shell { border:1px solid var(--line); border-radius:34px; padding:44px; display:grid; grid-template-columns:1fr auto; gap:40px; align-items:center; background:linear-gradient(145deg,rgba(108,227,218,.035),rgba(255,255,255,.015)); }
.page-cta h2 { margin:0 0 10px; font-size:clamp(34px,4vw,52px); line-height:1; letter-spacing:-.05em; }
.page-cta p { margin:0; color:var(--muted); line-height:1.65; max-width:740px; }
.case-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.case-card { min-height:360px; border:1px solid var(--line); border-radius:28px; padding:28px; display:flex; flex-direction:column; position:relative; overflow:hidden; background:linear-gradient(150deg,rgba(13,53,63,.46),rgba(5,25,33,.60)); transition:.3s ease; }
.case-card::after { content:""; position:absolute; width:240px; height:240px; border-radius:50%; right:-90px; top:-100px; background:radial-gradient(circle,rgba(108,227,218,.12),transparent 67%); }
.case-card:hover { transform:translateY(-5px); border-color:var(--line-strong); }
.case-card > * { position:relative; z-index:1; }
.case-card .case-label { color:var(--brand-soft); font-size:9px; letter-spacing:.13em; text-transform:uppercase; }
.case-card h2, .case-card h3 { margin:48px 0 12px; font-size:30px; letter-spacing:-.045em; }
.case-card p { margin:0; max-width:540px; color:#8da6aa; line-height:1.65; font-size:13px; }
.case-card .case-meta { margin-top:auto; padding-top:24px; display:flex; flex-wrap:wrap; gap:7px; }
.case-card .case-meta span { border:1px solid var(--line); border-radius:999px; padding:6px 9px; color:#78969b; font-size:9px; }
.case-card .case-link { margin-top:18px; color:var(--brand-soft); font-size:12px; font-weight:650; }
.case-study-hero .inner-hero-card { min-height:330px; }
.case-results { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:28px; }
.case-result { border:1px solid var(--line); border-radius:18px; padding:18px; background:rgba(255,255,255,.02); }
.case-result strong { display:block; font-size:22px; letter-spacing:-.04em; margin-bottom:5px; }
.case-result span { color:#78969b; font-size:10px; line-height:1.5; }
.article-copy { max-width:900px; }
.article-copy h2 { margin:52px 0 16px; font-size:clamp(32px,4vw,48px); letter-spacing:-.045em; }
.article-copy h3 { margin:30px 0 10px; font-size:22px; letter-spacing:-.03em; }
.article-copy p { color:#9bb0b4; line-height:1.8; font-size:15px; }
.article-copy ul, .article-copy ol { color:#9bb0b4; line-height:1.8; font-size:15px; padding-left:22px; }
.article-copy li { margin-bottom:8px; }
.inline-service-links { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; }
.inline-service-links a { padding:8px 11px; border:1px solid var(--line); border-radius:999px; color:#93adb1; font-size:10px; }
.inline-service-links a:hover { border-color:var(--line-strong); color:var(--brand-soft); }
.source-note { margin-top:28px; padding:16px 18px; border-left:2px solid var(--brand); background:rgba(108,227,218,.025); color:#779398; font-size:11px; line-height:1.6; }
.source-note a { color:var(--brand-soft); text-decoration:underline; text-underline-offset:3px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

@media (max-width:1040px) {
  .inner-hero-grid, .detail-grid { grid-template-columns:1fr; gap:40px; }
  .detail-sticky { position:static; }
  .content-grid-3, .related-grid { grid-template-columns:repeat(2,1fr); }
  .case-grid { grid-template-columns:1fr; }
  .page-cta-shell { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .inner-hero { padding:126px 0 66px; }
  .inner-hero-copy h1 { font-size:clamp(44px,14vw,64px); }
  .inner-hero-copy .lede { font-size:16px; }
  .inner-hero-card { min-height:320px; padding:22px; }
  .content-section { padding:72px 0; }
  .content-grid-2, .content-grid-3, .related-grid, .case-results { grid-template-columns:1fr; }
  .page-cta { padding:72px 0; }
  .page-cta-shell { padding:28px 20px; border-radius:26px; }
  .case-card { min-height:320px; padding:22px; }
  .case-card h2, .case-card h3 { font-size:26px; }
}
