/* Sonic AI visitor-facing editorial product feature */
.sonic-page{overflow:hidden}
.sonic-hero{position:relative;padding:96px 0 76px;background:radial-gradient(ellipse at 75% 20%,rgba(53,157,149,.14),transparent 55%),linear-gradient(115deg,#06111a,#0a1926)}
.sonic-hero-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:50px}
.sonic-hero-copy h1{max-width:750px;font-size:clamp(42px,4.25vw,72px);line-height:1.08;letter-spacing:-.05em;margin:20px 0 24px}
.sonic-lead{font-size:clamp(16px,1.5vw,20px);line-height:1.7;color:#aec4d1;max-width:640px}
.sonic-kicker{display:flex;align-items:center;gap:12px;color:#71e9ce;letter-spacing:.13em;text-transform:uppercase;font-weight:800;font-size:12px}
.sonic-kicker-sep{color:#5a7281}.sonic-pulse{width:9px;height:9px;background:#6cf7ca;border-radius:50%;box-shadow:0 0 18px rgba(108,247,202,.7)}
.sonic-tags{display:flex;flex-wrap:wrap;gap:9px;margin:27px 0}.sonic-tags span{padding:9px 12px;border:1px solid #274b53;background:#102732;border-radius:100px;color:#c8e7ed;font-size:12px}
.sonic-buttons{display:flex;flex-wrap:wrap;gap:12px}.sonic-hero-photo{position:relative;margin:0;border:1px solid rgba(91,226,204,.16);border-radius:25px;overflow:hidden;box-shadow:0 36px 100px rgba(0,0,0,.37)}
.sonic-hero-photo img{display:block;width:100%;height:420px;object-fit:cover}.sonic-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,9,19,.55),transparent 55%);pointer-events:none}
.sonic-hero-photo figcaption{position:absolute;z-index:1;bottom:15px;left:20px;right:20px;font-size:11px;color:#e0edf3}
.sonic-summary-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.sonic-summary-layout h2{font-size:clamp(28px,3.2vw,46px)}.sonic-summary-layout>p{font-size:18px;color:#b5cbd6;line-height:1.75}
.sonic-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sonic-step{border:1px solid #254051;border-radius:18px;padding:28px 26px;background:linear-gradient(145deg,#102533,#0c1b27);min-height:235px}
.sonic-step>span{display:inline-block;color:#63ecc8;font-size:13px;letter-spacing:.12em;font-weight:800;margin-bottom:34px}.sonic-step h3{font-size:17px;font-weight:600;line-height:1.6;color:#eef7fa}
.sonic-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.sonic-detail-photo{border-radius:18px;overflow:hidden;border:1px solid #1c3945}.sonic-detail-photo img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.sonic-detail-copy h2,.sonic-info-columns h2{font-size:clamp(27px,2.6vw,38px);line-height:1.16}.sonic-detail-copy p,.sonic-info-columns p{color:#afc1cd;line-height:1.78;font-size:15px}
.sonic-info-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.sonic-risk-card,.sonic-reg-card{padding:clamp(25px,3.2vw,44px);border-radius:22px;border:1px solid #2b4652;background:#102330}.sonic-reg-card{background:linear-gradient(145deg,#252121,#14212b);border-color:#69514e}.sonic-icon{display:grid;place-items:center;width:39px;height:39px;font-weight:900;font-size:23px;background:#214b4a;border-radius:12px;margin-bottom:22px}.sonic-reg-card .sonic-icon{background:#634d43}
.sonic-source-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.sonic-source-links a{border:1px solid #4d5c60;padding:12px 14px;border-radius:12px;color:#eaf5f5;font-size:13px}
.sonic-questions h2{font-size:clamp(30px,3vw,44px)}.sonic-resources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sonic-resources a{display:flex;align-items:center;gap:14px;padding:22px;border:1px solid #274250;border-radius:14px;background:#0e2130;min-width:0}.sonic-resources a strong{flex:1}.sonic-resources a span{color:#69efca}.sonic-resources a i{font-style:normal;color:#6ff7cd}
@media(max-width:960px){.sonic-hero-layout,.sonic-detail-grid,.sonic-summary-layout{grid-template-columns:1fr;gap:24px}.sonic-hero{padding:65px 0}.sonic-hero-photo img{height:auto;aspect-ratio:16/9}.sonic-steps{grid-template-columns:1fr}.sonic-step{min-height:0}.sonic-info-columns{grid-template-columns:1fr}}
@media(max-width:650px){.sonic-hero{padding:50px 0}.sonic-hero-copy h1{font-size:clamp(35px,10.4vw,54px)}.sonic-hero-photo img{aspect-ratio:4/3}.sonic-buttons .btn{width:100%}.sonic-resources{grid-template-columns:1fr}.sonic-risk-card,.sonic-reg-card{padding:24px}.sonic-summary-layout>p{font-size:16px}}
