.niche-hero { background:#edf3fc; padding:34px 0 80px; }
.niche-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; font-size:13px; color:#64758d; margin-bottom:56px; }
.niche-breadcrumb a { color:#2457ff; }
.niche-hero-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:80px; align-items:center; }
.niche-hero h1 { font-size:clamp(38px,4.6vw,64px); max-width:700px; }
.niche-hero .niche-lead { font-size:23px; color:#2457ff; line-height:1.4; margin:26px 0 18px; letter-spacing:-.035em; }
.niche-hero-grid > div > p:last-of-type { font-size:16px; max-width:540px; }
.niche-actions { display:flex; flex-wrap:wrap; gap:14px 24px; align-items:center; margin-top:30px; }
.niche-actions .button { font-size:13px; gap:14px; }
.niche-brief { border-radius:16px; background:#fff; padding:34px; box-shadow:0 16px 40px #18325c0c; }
.niche-brief h2 { font-size:26px; line-height:1.25; letter-spacing:-.045em; }
.niche-brief > p { margin-top:16px; font-size:14px; }
.niche-brief ol { counter-reset:topics; padding:0; margin:28px 0; list-style:none; }
.niche-brief li { counter-increment:topics; display:flex; gap:16px; align-items:baseline; padding:16px 0; border-top:1px solid #e0e6ef; font-size:16px; line-height:1.45; }
.niche-brief li:before { content:counter(topics); color:#2457ff; font-size:12px; }
.niche-brief .niche-example-note { font-size:11px; color:#718098; }
.niche-delivery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; margin-bottom:30px; }
.niche-delivery-grid article { border-top:2px solid #2457ff; padding-top:24px; }
.niche-delivery-grid h3 { font-size:24px; margin-bottom:18px; }
.niche-delivery-grid p { font-size:15px; }
.niche-cases { background:#f5f7fb; }
.niche-guarantee > .wrap { display:flex; justify-content:space-between; align-items:center; gap:55px; }
.niche-guarantee h2 { font-size:clamp(30px,3.3vw,44px); }
.niche-guarantee p { max-width:600px; margin:24px 0 10px; }
.niche-guarantee .button { flex-shrink:0; font-size:13px; gap:16px; }
.niche-related { padding-top:0; }
.niche-related h2 { font-size:28px; margin-bottom:26px; }
.niche-related > .wrap > .text-link { margin-top:22px; }
.niche-directory { padding-top:40px; }
.niche-directory label { display:block; font-weight:600; margin-bottom:12px; }
#niche-search { width:100%; max-width:600px; border:1px solid #c9d3e3; padding:18px 20px; border-radius:8px; background:#fff; font:inherit; margin-bottom:22px; }
.niche-directory-group { margin-top:46px; }
.niche-directory-group h2 { font-size:29px; margin-bottom:22px; }
.niche-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.niche-tile { display:flex; align-items:center; justify-content:space-between; gap:20px; background:#f5f7fb; padding:22px; border:1px solid #e1e7f0; border-radius:8px; font-size:15px; transition:background .2s,color .2s; }
.niche-tile:hover { background:#eaf0ff; color:#2457ff; }
.niche-tile[hidden],.niche-directory-group[hidden] { display:none; }
@media(max-width:1000px) { .niche-hero-grid { gap:40px; } .niche-brief { padding:25px; } .niche-guarantee > .wrap { flex-direction:column; align-items:flex-start; } }
@media(max-width:760px) {
 .niche-hero { padding-bottom:45px; }
 .niche-breadcrumb { margin-bottom:32px; }
 .niche-hero-grid,.niche-case-grid,.niche-delivery-grid { grid-template-columns:1fr; gap:24px; }
 .niche-hero .niche-lead { font-size:21px; }
 .niche-hero h1 { font-size:40px; }
 .niche-brief { margin-top:14px; }
 .niche-case { min-height:240px; padding:26px; }
 .niche-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .niche-tile { padding:18px; font-size:13px; gap:8px; }
 .niche-actions .button { width:100%; }
}
@media(max-width:380px) { .niche-hero h1 { font-size:34px; } .niche-directory-grid { grid-template-columns:1fr; } .niche-guarantee .button { white-space:normal; } }
@media(prefers-reduced-motion:reduce) { .niche-case,.niche-tile { transition:none; } .niche-case:hover { transform:none; } }
.niche-hero-grid > * { min-width:0; }
.niche-hero h1 { overflow-wrap:break-word; hyphens:auto; }
.principal-niches { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
.principal-niche { display:flex;flex-direction:column;gap:24px;padding:36px;background:#f5f7fb;border:1px solid #e0e6ef;border-radius:12px;transition:background .2s; }
.principal-niche:hover { background:#eaf0ff; }
.principal-niche h2 { font-size:30px; }
.principal-niche p { flex:1;font-size:16px; }
.principal-niche > span { color:#2457ff;font-size:13px; }
@media(max-width:760px) { .principal-niches { grid-template-columns:1fr; } .principal-niche { padding:28px; } .niche-instagram iframe { height:605px; } }

/* Case videos: native horizontal scrolling, with a glimpse of the next card. */
.niche-cases .section-head { align-items:end;margin-bottom:28px; }
.niche-carousel { min-width:0; }
.niche-carousel-toolbar,.niche-carousel-bottom { display:flex;align-items:center;justify-content:space-between;gap:20px; }
.niche-carousel-toolbar { margin-bottom:24px; }
.niche-carousel-toolbar p { font-size:14px;color:#546175; }
.niche-carousel-controls { display:flex;gap:10px;flex-shrink:0; }
.niche-carousel-controls button { width:48px;height:48px;border:1px solid #cbd6e8;border-radius:50%;background:#fff;color:#142033;font-size:24px;line-height:1;cursor:pointer;transition:background .2s,color .2s; }
.niche-carousel-controls button:hover:not(:disabled) { background:#2457ff;color:#fff;border-color:#2457ff; }
.niche-carousel-controls button:disabled { opacity:.3;cursor:default; }
.niche-case-track { display:flex;align-items:stretch;gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 0 18px; }
.niche-case-track::-webkit-scrollbar { display:none; }
.niche-case-track:focus-visible { outline:2px solid #2457ff;outline-offset:6px;border-radius:12px; }
.niche-reel-card { flex:0 0 360px;min-width:0;scroll-snap-align:start;background:#fff;border:1px solid #dce3ee;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 24px #132c5510; }
.niche-reel-media { height:var(--case-media-height,620px);background:#fff;overflow:hidden; }
.niche-instagram { width:100%;height:var(--embed-height,620px);overflow:hidden; }
.niche-instagram iframe { display:block;border:0;width:100%;min-width:326px;height:620px;background:#fff;transform:scale(var(--embed-scale,1));transform-origin:top left; }
.niche-native-video { display:block;width:100%;height:100%;position:relative;border:0;padding:0;background:#101419;cursor:pointer; }
.niche-native-video>img { width:100%;height:100%;object-fit:cover; }
.niche-native-video .play { position:absolute;left:50%;top:50%;transform:translate(-50%,-50%); }
.niche-watch { position:absolute;bottom:26px;left:0;right:0;color:#fff;font-size:14px;text-shadow:0 1px 10px #000; }
.niche-reel-caption { padding:24px;display:flex;flex-direction:column;flex:1;border-top:1px solid #e5eaf3; }
.niche-reel-caption h3 { font-size:23px;line-height:1.2;letter-spacing:-.035em;margin:0 0 14px; }
.niche-reel-result { color:#2457ff;font-size:19px;line-height:1.4;letter-spacing:-.025em; }
.niche-reel-context { font-size:11px;line-height:1.5;margin-top:8px;color:#68758a; }
.niche-reel-description { font-size:14px;line-height:1.5;color:#68758a; }
.niche-reel-caption>a { display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:24px;font-size:13px;color:#2457ff; }
.niche-carousel-bottom { margin-top:12px;padding-top:18px;border-top:1px solid #d7e0ef;font-size:12px;color:#62718a; }
.niche-carousel-bottom [data-case-position] { white-space:nowrap;font-variant-numeric:tabular-nums; }
.niche-cases .source-note { margin-top:30px;max-width:850px; }
@media(min-width:1300px) { .niche-reel-card { flex-basis:390px; } }
@media(max-width:760px) {
 .niche-cases .section-head { margin-bottom:22px; }
 .niche-carousel-toolbar { gap:16px;margin-bottom:18px; }
 .niche-carousel-toolbar p { font-size:12px;max-width:190px; }
 .niche-carousel-controls button { width:44px;height:44px; }
 .niche-case-track { gap:16px;margin-right:-20px;padding-right:20px;scroll-padding-right:20px; }
 .niche-reel-card { flex-basis:calc(100% - 36px);border-radius:16px; }
 .niche-reel-caption { padding:20px; }
 .niche-reel-caption h3 { font-size:22px; }
 .niche-carousel-bottom { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) { .niche-carousel-controls button { transition:none; } }
