/* ============================================================
   Schedra Labs — Design System v9
   Premium Minimal · Legora-inspired
   Black #1A1A1A · White #FFFFFF · Beige #F5F0EB
   ============================================================ */

/* ── Reset & Base ─── */
*,*::before,*::after{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}
html{
    scroll-behavior:smooth;
    scroll-padding-top:max(5.5rem, calc(68px + 12px + env(safe-area-inset-top, 0px)));
}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif!important;color:#3A3D4A;background:#fff;margin:0;padding:0}
h1,h2,h3,h4,h5,h6{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif!important}
::selection{background:rgba(26,26,26,.12);color:#1A1A1A}
[x-cloak]{display:none!important}
img{max-width:100%}
video,iframe{max-width:100%}
/* Flex/grid children must be allowed to shrink so layouts don’t force horizontal scroll */
.min-w-0{min-width:0!important}
.container{min-width:0}

/* ── Typography ─── */
.t-hero{font-size:clamp(2.5rem,5vw,3.7rem);font-weight:580;letter-spacing:-.018em;line-height:1.12;color:#1A1A1A}
.t-h2{font-size:clamp(1.85rem,3.2vw,2.55rem);font-weight:540;letter-spacing:-.012em;line-height:1.16;color:#1A1A1A}
.t-h3{font-size:1.12rem;font-weight:500;letter-spacing:-.004em;color:#1A1A1A;line-height:1.4}
.t-body{font-size:1.125rem;line-height:1.75;color:#6B7280}
.t-body-sm{font-size:.9375rem;line-height:1.65;color:#6B7280}
.t-caption{font-size:.8125rem;color:#9CA3AF}
.t-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.11em}

/* ── No gradient text — solid black only ─── */
.grad{color:#1A1A1A}

/* ── Buttons ─── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;font-weight:600;border-radius:14px;text-decoration:none!important;border:none;cursor:pointer;line-height:1;transition:all .3s cubic-bezier(.16,1,.3,1)}
.btn-lg{padding:16px 32px;font-size:15px}
.btn-md{padding:12px 24px;font-size:14px}
.btn-sm{padding:8px 18px;font-size:13px}
.btn-primary{color:#fff;background:#1A1A1A;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.btn-primary:hover{background:#333;box-shadow:0 8px 25px rgba(0,0,0,.15);transform:translateY(-2px)}
.btn-primary:active{transform:translateY(0)}
.btn-coral{color:#fff;background:#1A1A1A;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.btn-coral:hover{background:#333;box-shadow:0 8px 25px rgba(0,0,0,.15);transform:translateY(-2px)}
.btn-coral:active{transform:translateY(0)}
.btn-dark{color:#fff;background:#1A1A1A;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.btn-dark:hover{background:#333;box-shadow:0 8px 25px rgba(0,0,0,.15);transform:translateY(-2px)}
.btn-ghost{color:#3A3D4A;background:#fff;border:1.5px solid #E5E7EB;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.btn-ghost:hover{border-color:#D1D5DB;background:#FAFAFA;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.04)}
.btn-white{color:#1A1A1A;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.btn-white:hover{box-shadow:0 8px 25px rgba(0,0,0,.1);transform:translateY(-2px)}
.btn-outline-dark{color:#3A3D4A;background:transparent;border:1.5px solid #E5E7EB}
.btn-outline-dark:hover{border-color:#CBD5E1;background:#F8FAFC}
.btn-beige{color:#1A1A1A;background:#F5F0EB;border:1px solid #E8E2DB;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.btn-beige:hover{background:#EDE8E3;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.04)}

/* ── Header ─── */
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(255,255,255,.92);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.04);transition:all .4s cubic-bezier(.16,1,.3,1)}
.site-header.scrolled{box-shadow:0 1px 20px rgba(0,0,0,.04);background:rgba(255,255,255,.96)}
.site-header .container{overflow:visible}
@media (max-width:1023.98px){
    .site-header .container{
        max-width:100%;
        min-width:0;
    }
    .site-header__bar{
        min-width:0;
        gap:.35rem;
    }
}
/* Mobile nav drawer: scroll when menu is tall; respect safe area + dynamic viewport */
.site-header__drawer{
    max-height:calc(100vh - 5rem);
    max-height:min(70dvh,calc(100dvh - 4.5rem - env(safe-area-inset-bottom,0px)));
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
}
/* Desktop: 3-col bar so center nav never sits under Log in / Sign up (was absolute + clipped by overflow-x) */
@media (min-width:1024px){
    .site-header__bar{
        display:grid;
        grid-template-columns:auto minmax(0,1fr) auto;
        align-items:center;
        column-gap:clamp(.5rem,1.5vw,1.25rem);
        justify-items:stretch;
    }
    .site-header__bar > a:first-of-type{justify-self:start}
    .site-header__bar > nav{justify-self:center;max-width:100%;min-width:0}
    .site-header__bar > .header-actions{justify-self:end}
}
@media (min-width:1024px) and (max-width:1279px){
    .site-header .nav-link{padding:6px 8px;font-size:13px}
}
.nav-link{font-size:14px;font-weight:500;color:#6B7280;padding:6px 14px;border-radius:10px;text-decoration:none!important;transition:all .2s ease}
.nav-link:hover{color:#1A1A1A;background:rgba(0,0,0,.03)}

/* ── Header dropdown menus ─── */
.nav-dropdown{position:relative}
.nav-dropdown-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(4px);min-width:320px;background:#fff;border:1px solid #F0F0F0;border-radius:16px;padding:10px;box-shadow:0 16px 48px -8px rgba(0,0,0,.1),0 0 0 1px rgba(0,0,0,.02);opacity:0;visibility:hidden;transition:all .2s ease;z-index:60}
.nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.nav-dropdown-menu a{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;font-size:14px;font-weight:500;color:#3A3D4A;text-decoration:none!important;transition:all .15s ease}
.nav-dropdown-menu a:hover{background:#F5F0EB;color:#1A1A1A}
.nav-dropdown-menu a .dd-icon{width:32px;height:32px;border-radius:10px;background:#F5F0EB;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}
.nav-dropdown-menu a:hover .dd-icon{background:#EDE8E3}
.nav-dropdown-menu a .dd-label{font-weight:600;font-size:13px;color:#1A1A1A;display:block;white-space:nowrap}
.nav-dropdown-menu a .dd-desc{font-size:12px;color:#9CA3AF;display:block;margin-top:1px;white-space:nowrap}

/* ── Cards ─── */
.card{background:#fff;border:1px solid #F0F0F0;border-radius:20px;transition:all .4s cubic-bezier(.16,1,.3,1)}
.card:hover{border-color:#E5E5E5;box-shadow:0 20px 50px -12px rgba(0,0,0,.06);transform:translateY(-4px)}
.card-flat{background:#FAF8F6;border:1px solid transparent;border-radius:20px;transition:all .4s cubic-bezier(.16,1,.3,1)}
.card-flat:hover{background:#fff;border-color:#F0F0F0;box-shadow:0 12px 40px -8px rgba(0,0,0,.04)}

/* ── Pillar accents (beige-tinted) ─── */
.accent-coral{background:linear-gradient(180deg,rgba(245,240,235,.5) 0%,transparent 100%)}
.accent-coral:hover{border-color:#E8E2DB!important;box-shadow:0 20px 50px -12px rgba(0,0,0,.06)}
.accent-green{background:linear-gradient(180deg,rgba(245,240,235,.5) 0%,transparent 100%)}
.accent-green:hover{border-color:#E8E2DB!important;box-shadow:0 20px 50px -12px rgba(0,0,0,.06)}
.accent-violet{background:linear-gradient(180deg,rgba(245,240,235,.5) 0%,transparent 100%)}
.accent-violet:hover{border-color:#E8E2DB!important;box-shadow:0 20px 50px -12px rgba(0,0,0,.06)}

/* ── Tags / Badges ─── */
.tag{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.03em}
.tag-coral{background:#F5F0EB;color:#6B7280;border:1px solid #E8E2DB}
.tag-muted{background:#F5F5F5;color:#6B7280;border:1px solid #F0F0F0}
.tag-dark{background:#1A1A1A;color:#fff}
.tag-glass{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#3A3D4A;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px rgba(0,0,0,.04)}

/* ── Section utilities ─── */
.section{padding:6rem 0}
.section-lg{padding:8rem 0}
/* AI Tools: compact tool row (optional) */
.section-lg.section-lg--compact{padding:2rem 0 2.25rem!important}
@media(max-width:768px){
    .section-lg.section-lg--compact{padding:1.5rem 0 1.75rem!important}
}
/* AI Visibility: roomier block, pairs with Content Studio heading scale */
.section-lg.section-lg--ai-visibility{padding:4.5rem 0 5rem!important}
@media(max-width:768px){
    .section-lg.section-lg--ai-visibility{padding:3rem 0 3.5rem!important}
}
section#content-studio.section-after-ai-visibility{padding-top:4.5rem!important;padding-bottom:5.5rem!important}
@media(max-width:1024px){
    section#content-studio.section-after-ai-visibility{padding-bottom:4.5rem!important}
}
#content-studio .content-studio-block{width:100%}
/* AI Content Studio: header alignment + tool grid breathing room */
#content-studio .content-studio-header{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    align-items:center;
    column-gap:clamp(2rem,5vw,4.5rem);
    row-gap:1.5rem;
    width:100%;
    margin-bottom:clamp(2.75rem,5vw,4rem);
    padding-bottom:clamp(0.25rem,1vw,0.5rem);
}
#content-studio .content-studio-header > *{min-width:0}
@media(max-width:1023px){
    #content-studio .content-studio-header{grid-template-columns:1fr;align-items:start;margin-bottom:2.5rem}
}
#content-studio .content-studio-eyebrow{color:#1A1A1A;margin:0 0 .85rem}
#content-studio .content-studio-title{font-size:1.8rem;line-height:1.22;margin:0;font-weight:560}
#content-studio .content-studio-lede-wrap{display:flex;justify-content:flex-end}
@media(max-width:1023px){
    #content-studio .content-studio-lede-wrap{justify-content:flex-start}
}
#content-studio .content-studio-lede{
    font-size:1.03rem;
    line-height:1.75;
    color:#6b7280;
    margin:0;
    max-width:36rem;
    text-align:left;
}
@media(min-width:1024px){
    #content-studio .content-studio-lede{text-align:right}
}
@media(max-width:1023px){
    #content-studio .content-studio-lede{max-width:40rem}
}
#content-studio .content-studio-tools{
    display:grid;
    grid-template-columns:repeat(1,minmax(0,1fr));
    column-gap:clamp(1.75rem,4vw,2.75rem);
    row-gap:clamp(2.25rem,4vw,3.25rem);
    width:100%;
}
@media(min-width:640px){
    #content-studio .content-studio-tools{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(2rem,4vw,3rem);row-gap:clamp(2.5rem,4vw,3.5rem)}
}
@media(min-width:1024px){
    #content-studio .content-studio-tools{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(2.25rem,3.5vw,3.25rem);row-gap:clamp(3rem,5vw,4rem)}
}
#content-studio .content-studio-tool-item{padding-bottom:.35rem}
#content-studio .content-studio-tool-icon{
    width:38px;
    height:38px;
    border-radius:10px;
    background:#f4efea;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:1.15rem;
    flex-shrink:0;
}
#content-studio .content-studio-tool-heading{font-size:1.2rem;line-height:1.32;margin:0 0 .9rem;font-weight:600}
#content-studio .content-studio-tool-body{
    line-height:1.76;
    color:#80848f;
    font-size:.95rem;
    max-width:100%;
    margin:0;
}
.section-sm{padding:4rem 0}
.section-gray{background:#FAFAFA}
.section-beige{background:#F5F0EB}
.section-warm{background:linear-gradient(180deg,#FAF8F6 0%,#fff 100%)}

/* ── Balanced split intro (topic vs content) ─── */
.split-balance{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    align-items:start;
    column-gap:2.75rem;
    row-gap:1.1rem;
    width:100%;
    max-width:1080px;
    margin-left:auto;
    margin-right:auto;
}
.split-balance > *{min-width:0}
.split-balance > :first-child{
    max-width:none!important;
    width:100%;
}
.split-balance > :last-child{
    max-width:none!important;
    width:100%;
    justify-self:stretch;
}
.split-balance > :last-child .t-body,
.split-balance > :last-child p{
    margin:0;
    max-width:none;
    color:#6B7280;
}
.split-rhythm{
    column-gap:2.25rem;
    row-gap:1rem;
    margin-bottom:3.25rem;
}
.split-rhythm-lg{
    margin-bottom:4rem;
}
.split-rhythm-sm{
    margin-bottom:2rem;
}
.split-balanced{
    align-items:center;
}
.split-kicker-balance > :last-child{
    padding-top:1.35rem;
}
.split-balance > :first-child .t-h2,
.split-balance > :first-child .t-hero,
.split-balance > :first-child h1,
.split-balance > :first-child h2{
    margin:0 0 .7rem;
    line-height:1.14;
}
.split-balance > :first-child .t-label,
.split-balance > :first-child .tag{
    margin-bottom:.85rem !important;
}
.split-balance > :last-child .t-body{
    font-size:1.03rem;
    line-height:1.68;
}
.cta-rhythm .t-h2{
    margin-bottom:1rem !important;
}
.cta-rhythm .t-body{
    max-width:460px;
    margin:0 auto 2rem !important;
}

/* ── Guest marketing (not home): section title + card/grid share same left/right edge ─── */
.sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1080px"]:not(.grid):not(.product-el-frame):not(:has(> h2.text-center:first-child)):not(:has(> div.text-center:first-child)),
.sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1120px"]:not(.grid):not(.product-el-frame):not(:has(> h2.text-center:first-child)):not(:has(> div.text-center:first-child)),
.sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1100px"]:not(.grid):not(.product-el-frame):not(:has(> h2.text-center:first-child)):not(:has(> div.text-center:first-child)),
.sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1040px"]:not(.grid):not(.product-el-frame):not(:has(> h2.text-center:first-child)):not(:has(> div.text-center:first-child)),
.sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1080px"],
.sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1120px"],
.sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1040px"],
.sch-guest-align-rail .container.mx-auto > div.bento-grid.mx-auto[style*="1040px"]{
    padding-left:2.25rem;
    padding-right:2.25rem;
    box-sizing:border-box;
}
.sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm > :first-child,
.sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm-lg > :first-child,
.sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm-sm > :first-child{
    padding-left:2.25rem;
    box-sizing:border-box;
}
.sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm > :last-child,
.sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm-lg > :last-child,
.sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm-sm > :last-child{
    padding-right:2.25rem;
    box-sizing:border-box;
}
.sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1080px"]:not(.grid) > .grid > .card,
.sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1080px"] > .card,
.sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1120px"] > .card,
.sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1040px"] > .card{
    padding-left:0 !important;
    padding-right:0 !important;
}
.sch-rail-1080-marketing{
    max-width:1080px;
    margin-left:auto;
    margin-right:auto;
    width:100%;
    box-sizing:border-box;
    padding-left:2.25rem;
    padding-right:2.25rem;
}
.sch-rail-1080-marketing > .grid > .card{
    padding-left:0 !important;
    padding-right:0 !important;
}
@media (max-width:640px){
    .sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1080px"]:not(.grid):not(.product-el-frame):not(:has(> h2.text-center:first-child)):not(:has(> div.text-center:first-child)),
    .sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1120px"]:not(.grid):not(.product-el-frame):not(:has(> h2.text-center:first-child)):not(:has(> div.text-center:first-child)),
    .sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1100px"]:not(.grid):not(.product-el-frame):not(:has(> h2.text-center:first-child)):not(:has(> div.text-center:first-child)),
    .sch-guest-align-rail .container.mx-auto > div.mx-auto[style*="1040px"]:not(.grid):not(.product-el-frame):not(:has(> h2.text-center:first-child)):not(:has(> div.text-center:first-child)),
    .sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1080px"],
    .sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1120px"],
    .sch-guest-align-rail .container.mx-auto > div.grid.mx-auto[style*="1040px"],
    .sch-guest-align-rail .container.mx-auto > div.bento-grid.mx-auto[style*="1040px"]{
        padding-left:1rem;
        padding-right:1rem;
    }
    .sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm > :first-child,
    .sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm-lg > :first-child,
    .sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm-sm > :first-child{
        padding-left:1rem;
    }
    .sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm > :last-child,
    .sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm-lg > :last-child,
    .sch-guest-align-rail .container.mx-auto > .split-balance.split-rhythm-sm > :last-child{
        padding-right:1rem;
    }
    .sch-rail-1080-marketing{
        padding-left:1rem;
        padding-right:1rem;
    }
}

/* ── Hero — Clean beige, no orbs ─── */
.mesh-hero{
    position:relative;overflow:hidden;
    background:#F5F0EB;
}
/* Home hero: fluid vertical rhythm (replaces fixed rem padding on small screens) */
.mesh-hero--home{
    padding-top:clamp(5.75rem,18vw,12rem);
    padding-bottom:clamp(2.25rem,8vw,6rem);
}
@media (max-width:640px){
    .mesh-hero--home{
        padding-top:clamp(5.5rem,20vw,7.25rem);
        padding-bottom:clamp(1.75rem,7vw,3rem);
    }
}
.mesh-cta{
    position:relative;overflow:hidden;
    background:#F5F0EB;
}

/* ── Dashboard mockup ─── */
.mockup-frame{background:#fff;border:1px solid #E5E7EB;border-radius:20px;overflow:hidden;box-shadow:0 30px 80px -20px rgba(0,0,0,.08),0 4px 25px -4px rgba(0,0,0,.03)}
.mockup-frame:hover{box-shadow:0 40px 100px -20px rgba(0,0,0,.1),0 8px 30px -4px rgba(0,0,0,.04);transform:translateY(-4px);transition:all .6s cubic-bezier(.16,1,.3,1)}
.mockup-bar{display:flex;align-items:center;gap:6px;padding:12px 16px;background:#FAFAFA;border-bottom:1px solid #F0F0F0}
.mockup-dot{width:8px;height:8px;border-radius:50%}
.mockup-url{flex:1;margin:0 40px;height:26px;background:#F0F0F0;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#9CA3AF;font-weight:500}

/* ── Marquee (infinite scroll) ─── */
.marquee-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marquee-track{display:flex;gap:3rem;animation:marquee 30s linear infinite;width:max-content}
.marquee-track:hover{animation-play-state:paused}
.marquee-reverse{animation-direction:reverse}
.marquee-slow{animation-duration:45s}
.marquee-fast{animation-duration:20s}

/* ── Dark section (now uses near-black) ─── */
.section-dark{background:#111;position:relative;overflow:hidden}
.section-dark .t-h2{color:#fff}
.section-dark .t-body{color:rgba(255,255,255,.5)}
.section-dark .t-caption{color:rgba(255,255,255,.35)}

/* ── Grid pattern ─── */
.grid-pattern{position:absolute;inset:0;background-image:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
    background-size:60px 60px;pointer-events:none}

/* ── Testimonial ─── */
.testimonial-card{background:#fff;border:1px solid #F0F0F0;border-radius:20px;padding:2rem;transition:all .4s ease;flex-shrink:0;width:380px}
.testimonial-card:hover{box-shadow:0 16px 40px -8px rgba(0,0,0,.04);transform:translateY(-3px)}

/* ── Floating orb decorations (REMOVED — clean design) ─── */
.orb{display:none!important}

/* ── Bento grid ─── */
.bento-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(3,1fr)}
.bento-card{background:#fff;border:1px solid #F0F0F0;border-radius:20px;padding:2rem;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}
.bento-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(26,26,26,.1),transparent);opacity:0;transition:opacity .4s}
.bento-card:hover{border-color:#E5E5E5;box-shadow:0 20px 50px -12px rgba(0,0,0,.06);transform:translateY(-3px)}
.bento-card:hover::before{opacity:1}
.bento-lg{grid-column:span 2}
.bento-tall{grid-row:span 2}

/* ── Metric numbers ─── */
.metric-number{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;letter-spacing:-.04em;line-height:1;color:#1A1A1A}

/* ── Auth / login (Nova guest) ─── */
.login-left-panel-copy{text-align:left;width:100%}
.login-left-panel-copy-inner{margin-left:0;margin-right:auto}
.login-brand-heading{
    text-align:left;
    font-weight:800;
    letter-spacing:-.03em;
    line-height:1.15;
    color:#fff;
}
@media (min-width:1024px){
    .login-brand-heading{
        white-space:nowrap;
        font-size:clamp(1.5rem,1.2vw + 1.1rem,2rem);
    }
}
.login-feature-text{max-width:42ch}
.login-form-heading{text-align:left;margin-bottom:.375rem}
@media (min-width:768px){
    .login-form-heading{white-space:nowrap}
}

/* Guest auth: borders/accent when DaisyUI or load order strips utilities */
.actionForm input[type="text"],
.actionForm input[type="email"],
.actionForm input[type="password"]{
    box-sizing:border-box;
    border:1px solid #e5e7eb;
    background-color:#fff;
}
.actionForm input[type="checkbox"]{
    appearance:auto;
    -webkit-appearance:auto;
    accent-color:#1A1A1A;
    color-scheme:light;
    width:1rem;
    height:1rem;
    min-width:1rem;
    min-height:1rem;
    flex-shrink:0;
    cursor:pointer;
    border:1px solid #d1d5db;
    border-radius:4px;
    background-color:#fff;
}
.actionForm input:-webkit-autofill,
.actionForm input:-webkit-autofill:hover,
.actionForm input:-webkit-autofill:focus{
    -webkit-text-fill-color:#18181B;
    box-shadow:0 0 0 1000px #fff inset;
    transition:background-color 99999s ease-out 0s;
}

/* ── Footer ─── */
.site-footer{background:#FAFAFA;border-top:1px solid #F0F0F0}
.footer-link{font-size:14px;color:#6B7280;text-decoration:none!important;display:block;padding:5px 0;transition:all .2s}
.footer-link:hover{color:#1A1A1A;transform:translateX(2px)}

/* FAQ page — answer typography inside accordion */
.page-faqs .faq-page-answer p{
    margin:0 0 .75rem;
}
.page-faqs .faq-page-answer p:last-child{
    margin-bottom:0;
}
.page-faqs .faq-page-answer ul,
.page-faqs .faq-page-answer ol{
    margin:.5rem 0 .75rem 1.1rem;
    padding:0;
}

/* Guest dark footer — full-width column distribution (no dead space on the right) */
.footer-main-grid{
    display:grid;
    width:100%;
    padding:5rem 0 3.5rem;
    gap:2.5rem 1.25rem;
}
@media (max-width:767.98px){
    .footer-main-grid{
        grid-template-columns:1fr 1fr;
    }
    .footer-main-grid .footer-col-brand{
        grid-column:1 / -1;
    }
}
@media (min-width:768px){
    .footer-main-grid{
        grid-template-columns:minmax(200px,1.2fr) repeat(4,minmax(0,1fr));
        column-gap:clamp(1.5rem,3.5vw,2.75rem);
        row-gap:2.5rem;
    }
}
@media (min-width:1280px){
    .footer-main-grid{
        column-gap:clamp(2rem,4vw,3.25rem);
    }
}
/* Very narrow phones: single column link list (readable labels) */
@media (max-width:479.98px){
    .footer-main-grid{
        grid-template-columns:1fr;
        gap:2rem 0;
        padding:3.25rem 0 2.5rem;
    }
    .footer-main-grid .footer-col-brand{
        grid-column:1;
    }
}
.footer-bottom-bar{
    min-width:0;
}
@media (max-width:479.98px){
    .footer-bottom-bar{
        flex-direction:column;
        align-items:flex-start;
        gap:1rem;
    }
    .footer-bottom-bar__links{
        width:100%;
        justify-content:flex-start;
        flex-wrap:wrap;
        gap:1rem 1.5rem;
    }
}

/* Guest dark footer — aligned headings + single FAQ column */
.footer-grid .footer-col-heading{
    font-size: 12px;
    font-weight: 700;
    color: rgba(255,255,255,.5);
    margin: 0 0 1.25rem 0;
    padding: 0;
    text-transform: uppercase;
    letter-spacing: .08em;
    line-height: 1.25;
}
.footer-grid .footer-col-links{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
}
.footer-grid .footer-nav-link{
    display: block;
    font-size: .8125rem;
    color: rgba(255,255,255,.35);
    text-decoration: none;
    padding: 5px 0;
    transition: color .2s ease, padding-left .2s ease;
}
.footer-grid .footer-nav-link:hover{
    color: #fff;
    padding-left: 4px;
}

/* ── Step connector ─── */
.step-connector{position:relative}
.step-connector::after{content:'';position:absolute;top:28px;left:calc(50% + 28px);right:calc(-50% + 28px);height:2px;background:linear-gradient(90deg,#E8E2DB,#D4CDC5);z-index:0}
.step-connector:last-child::after{display:none}

/* ── Dotted separator (for use cases page) ─── */
.dotted-separator{border:none;border-top:2px dotted #E8E2DB;margin:3rem 0}

/* ── Use case card (ElevenLabs style) ─── */
.use-case-row{display:flex;gap:4rem;align-items:center;padding:4rem 0}
.use-case-row:nth-child(even){flex-direction:row-reverse}
.use-case-row .use-case-text{flex:1}
.use-case-row .use-case-image{flex:1;min-width:0}
/* Home “Built for every team” — same frame for every photo (intrinsic PNG sizes vary) */
.home-use-case-visual{
    width:100%;
    border-radius:20px;
    overflow:hidden;
    background:#F5F0EB;
    aspect-ratio:4/3;
    max-height:min(400px,56vw);
    position:relative;
}
.home-use-case-visual__img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
}
/* Use cases: framed 2×2 media (ElevenLabs-style chrome) */
.use-case-media-frame{
    background:linear-gradient(180deg,#eef0f4 0%,#e4e7ec 100%);
    border:1px solid #b8c0cc;
    border-radius:22px;
    padding:10px 12px;
    box-shadow:0 18px 52px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.65);
}
.use-case-media-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    align-items:stretch;
    width:100%;
}
/* One row of three (replaces 2×2 when using folder art sets) */
.use-case-media-grid--3{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
}
.use-case-media-grid--1{
    grid-template-columns:1fr;
    gap:0;
}
.use-case-media-grid--1 .use-case-grid-cell{
    aspect-ratio:auto;
    max-height:none;
}
/* Single portrait (investors): tighter crop for vertical photography */
.use-case-media-grid--1.use-case-media-grid--1-portrait .use-case-grid-cell{
    aspect-ratio:auto;
    max-height:none;
    max-width:min(100%,420px);
    margin-left:auto;
    margin-right:auto;
}
.use-case-grid-cell{
    border-radius:16px;
    overflow:hidden;
    aspect-ratio:1;
    border:1px solid rgba(15,23,42,.08);
    background:#f5f5f4;
}
.use-case-grid-cell img{
    width:100%;
    height:auto;
    object-fit:contain;
    display:block;
}
/* Mix: analytics-style tiles vs real-life photos (subtle chrome difference) */
.use-case-grid-cell--analytics{
    border-color:rgba(59,130,246,.28);
    box-shadow:inset 0 0 0 1px rgba(59,130,246,.08), 0 4px 14px rgba(15,23,42,.06);
    background:linear-gradient(180deg,#f8fafc 0%,#f1f5f9 100%);
}
.use-case-grid-cell--photo{
    border-color:rgba(15,23,42,.12);
    background:#fafaf9;
}

/* Use Cases page polish: better rhythm + controlled image height */
.use-cases-page .use-case-row{
    gap:clamp(1.75rem,4vw,3rem);
    padding:clamp(1.5rem,3vw,2.25rem) 0;
    align-items:center;
}
.use-cases-page .use-case-copy{
    max-width:520px;
}
.use-cases-page .use-case-title{
    font-size:clamp(1.25rem,1.1rem + .65vw,1.7rem)!important;
    line-height:1.24;
    letter-spacing:-.01em;
}
.use-cases-page .use-case-body{
    font-size:1rem;
    line-height:1.75;
    color:#6b7280;
    max-width:46ch;
}
.use-cases-page .use-case-image{
    display:flex;
    justify-content:center;
}
.use-cases-page .use-case-media-frame{
    width:100%;
    max-width:460px;
    margin-left:auto;
    margin-right:auto;
    padding:0;
    background:transparent;
}
.use-cases-page .use-case-grid-cell{
    display:block;
    background:transparent;
}
/* Same visual frame for every block (overrides .use-case-media-grid--1 { aspect-ratio:auto }) */
.use-cases-page .use-case-media-grid--1 .use-case-grid-cell,
.use-cases-page .use-case-media-grid--1.use-case-media-grid--1-portrait .use-case-grid-cell{
    aspect-ratio:4/3;
    max-width:none!important;
    margin-left:0;
    margin-right:0;
    position:relative;
    min-height:0;
    overflow:hidden;
}
.use-cases-page .use-case-grid-cell img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    max-height:none!important;
    object-fit:cover;
    object-position:center center;
    transform:none;
    display:block;
}
.use-cases-page .dotted-separator{
    margin:2rem 0;
    border-top:1px dashed #e5e7eb;
}

/* Product marketing: ElevenLabs-style outer frame (photo strips, hero shots) */
.product-el-frame{
    background:linear-gradient(180deg,#eef0f4 0%,#e4e7ec 100%);
    border:1px solid #b8c0cc;
    border-radius:28px;
    padding:16px;
    box-shadow:0 20px 56px rgba(15,23,42,.14), inset 0 1px 0 rgba(255,255,255,.75);
}
.product-marketing-strip-section .product-el-frame{margin-top:0}
/* Strip sits flush on section bg — no outer chrome/border */
.product-marketing-strip-section .product-el-frame{
    padding:0;
    border:none;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
/* Consumer Intelligence — larger strip, spaced tiles, no borders (slide feedback) */
.consumer-ci-strip-wrap.product-el-frame{
    max-width:min(1280px,100%);
    width:100%;
}
.product-photo-strip.product-photo-strip--consumer-ci{
    gap:clamp(14px,3vw,28px);
}
@media(min-width:768px){
    .product-photo-strip.product-photo-strip--consumer-ci{gap:clamp(18px,3.5vw,36px)}
}
.product-photo-strip--consumer-ci .product-photo-strip__shot{
    border:none;
    border-radius:20px;
    box-shadow:0 10px 28px rgba(15,23,42,.08);
}
.product-photo-strip{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    align-items:stretch;
    width:100%;
}
@media(min-width:768px){
    .product-photo-strip--4{grid-template-columns:repeat(4,minmax(0,1fr))}
    .product-photo-strip--3{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:10px;
    }
}
/* Fill each column: do not cap height — max-height made tiles ~225px wide inside wide grids */
.product-photo-strip__shot{
    border-radius:16px;
    overflow:hidden;
    border:1px solid rgba(15,23,42,.12);
    background:#f4f4f5;
    aspect-ratio:3/4;
    width:100%;
    min-width:0;
    min-height:0;
    align-self:stretch;
}
.product-photo-strip__shot--wide{aspect-ratio:4/3;max-height:min(280px,28vh)}
.product-photo-strip__shot img{width:100%;height:100%;object-fit:cover;display:block}

/* Mobile: stacked full-width image strips (single column — no 2-col + orphan third tile) */
@media (max-width: 767.98px) {
    .product-photo-strip {
        grid-template-columns: 1fr !important;
        gap: 14px;
    }
    .product-photo-strip.product-photo-strip--consumer-ci {
        gap: 14px;
    }
    .product-el-frame {
        padding: 12px !important;
        border-radius: 22px !important;
    }
    .product-marketing-strip-section .product-el-frame {
        padding: 0 !important;
    }
}

/* AI Tools: AI Visibility — two columns, top-aligned; right is photo only (no preview card) */
.ai-visibility-section{border-bottom:1px solid #f0f0f0}
.ai-visibility-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:2rem;
    align-items:start;
}
@media(min-width:1024px){
    .ai-visibility-grid{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        gap:2rem 2.75rem;
        align-items:start;
    }
}
.ai-visibility-copy{
    display:flex;
    flex-direction:column;
    gap:1.5rem;
}
.ai-visibility-copy__intro{flex:0 0 auto}
.ai-visibility-copy__intro .t-h3{
    font-size:clamp(1.375rem,2.2vw,1.75rem)!important;
    line-height:1.25;
    margin-bottom:.75rem;
}
.ai-visibility-copy__intro .t-body-sm{
    font-size:1rem;
    line-height:1.65;
}
.ai-visibility-copy__card{
    flex:0 1 auto;
    display:flex;
    flex-direction:column;
    min-height:0;
    padding:1.75rem;
    border:1px solid #F0F0F0;
    box-shadow:0 4px 24px rgba(17,24,39,.04);
    border-radius:16px;
    background:#fff;
}
.ai-visibility-copy__card.card:hover{
    transform:none;
    border-color:#F0F0F0;
    box-shadow:0 4px 24px rgba(17,24,39,.04);
}
.ai-visibility-copy__list{
    font-size:.9375rem;
    line-height:1.5;
    color:#374151;
}
.ai-visibility-dot{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#1A1A1A;
    margin-top:7px;
    flex-shrink:0;
}
.ai-visibility-copy__cta{
    margin-top:auto;
    padding-top:1.25rem;
}
.ai-visibility-aside{
    display:block;
    width:100%;
}
.ai-visibility-aside__frame{
    display:block;
    min-height:0;
}
.ai-visibility-photo{
    border-radius:18px;
    overflow:hidden;
    border:1px solid rgba(15,23,42,.1);
    background:#f4f4f5;
    aspect-ratio:4/3;
    max-height:min(380px,42vh);
    width:100%;
}
.ai-visibility-photo img{width:100%;height:100%;object-fit:cover;display:block;min-height:0}

.affiliate-hero-frame--strip{
    max-height:min(420px,52vh);
    min-height:200px;
}

/* Social product: infinite horizontal logo marquee (icons only) */
.social-logo-marquee{
    overflow:hidden;
    width:100%;
    padding:1.25rem 0;
    border-radius:18px;
    background:linear-gradient(180deg,#fafafa 0%,#fff 50%,#fafafa 100%);
    border:1px solid rgba(15,23,42,.08);
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 6%,#000 94%,transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0%,#000 6%,#000 94%,transparent 100%);
}
.social-logo-marquee__track{
    display:flex;
    width:max-content;
    animation:social-logo-marquee 42s linear infinite;
}
.social-logo-marquee__group{
    display:flex;
    flex-shrink:0;
    align-items:center;
    gap:clamp(1.75rem,4vw,3rem);
    padding:0 clamp(1rem,3vw,1.5rem);
}
.social-logo-marquee__icon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    width:3rem;
    height:3rem;
    border-radius:14px;
    background:#F5F0EB;
}
.social-logo-marquee__icon i{font-size:1.5rem;line-height:1}
.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(prefers-reduced-motion:reduce){
    .social-logo-marquee__track{
        animation:none;
        width:100%;
        max-width:100%;
        flex-wrap:wrap;
        justify-content:center;
        row-gap:1rem;
    }
    .social-logo-marquee__group[aria-hidden="true"]{display:none}
}
@keyframes social-logo-marquee{
    0%{transform:translateX(0)}
    100%{transform:translateX(-50%)}
}
.social-creative-strip{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    align-items:stretch;
    width:100%;
}
@media(min-width:768px){
    .social-creative-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
}
.social-creative-strip__cell{
    border-radius:18px;
    overflow:hidden;
    border:1px solid rgba(15,23,42,.1);
    aspect-ratio:4/3;
    background:#f4f4f5;
}
.social-creative-strip__cell img{width:100%;height:100%;object-fit:cover;display:block}

/* Global marketing image border cleanup */
.use-case-media-frame,
.product-el-frame,
.product-photo-strip__shot,
.use-case-grid-cell,
.ai-visibility-photo,
.social-creative-strip__cell{
    border:none !important;
    box-shadow:none !important;
}

@media(max-width:767.98px){
    .use-case-media-grid,
    .use-case-media-grid--3{
        grid-template-columns:1fr!important;
        gap:12px;
    }
    .use-case-media-frame{
        padding:10px!important;
        border-radius:20px!important;
    }
    .use-case-grid-cell{
        aspect-ratio:4/3;
        position:relative;
        overflow:hidden;
        border-radius:18px!important;
    }
    .use-case-grid-cell img{
        position:absolute;
        inset:0;
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center center;
    }
    .use-case-media-grid--1 .use-case-grid-cell,
    .use-case-media-grid--1.use-case-media-grid--1-portrait .use-case-grid-cell{
        aspect-ratio:auto;
        position:static;
        max-height:none;
    }
    .use-case-media-grid--1 .use-case-grid-cell img,
    .use-case-media-grid--1.use-case-media-grid--1-portrait .use-case-grid-cell img{
        position:static;
        width:100%;
        height:auto;
        object-fit:contain;
    }
    /* Use Cases page: keep one consistent tile size on small screens too */
    .use-cases-page .use-case-media-grid--1 .use-case-grid-cell,
    .use-cases-page .use-case-media-grid--1.use-case-media-grid--1-portrait .use-case-grid-cell{
        aspect-ratio:4/3!important;
        position:relative!important;
        max-height:none!important;
    }
    .use-cases-page .use-case-media-grid--1 .use-case-grid-cell img,
    .use-cases-page .use-case-media-grid--1.use-case-media-grid--1-portrait .use-case-grid-cell img{
        position:absolute!important;
        inset:0!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        object-position:center center!important;
    }
}

/* ── Indigo overrides (legacy) ─── */
.bg-indigo-600,.bg-indigo-700,.bg-indigo-500{background-color:#1A1A1A!important}
.bg-indigo-100,.bg-indigo-200,.bg-indigo-50{background-color:#F5F0EB!important}
.text-indigo-600,.text-indigo-500,.text-indigo-700{color:#1A1A1A!important}
.border-indigo-700,.border-indigo-600{border-color:#1A1A1A!important}
.hover\:bg-indigo-700:hover{background-color:#333!important}
.bg-blueGray-50{background-color:#FAF8F6!important}
.bg-green-100{background-color:#F5F0EB!important}
.text-green-600{color:#1A1A1A!important}
svg circle[fill="#4F46E5"]{fill:#1A1A1A!important}

/* ── Misc ─── */
.cookie-policy-bar .btn-accept{background:#1A1A1A!important;color:#fff!important;border-radius:12px}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#D1D5DB;border-radius:99px}
:focus-visible{outline:2px solid rgba(26,26,26,.2);outline-offset:2px}

/* ── Animations ─── */
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes float-slow{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(1deg)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes pulse-soft{0%,100%{opacity:1}50%{opacity:.4}}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes spin-slow{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes scale-in{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}

.animate-float{animation:float 6s ease-in-out infinite}
.animate-float-slow{animation:float-slow 8s ease-in-out infinite}
.animate-fadeUp{animation:fadeUp .7s cubic-bezier(.16,1,.3,1) both}
.animate-fadeIn{animation:fadeIn .6s ease both}
.animate-scale-in{animation:scale-in .5s cubic-bezier(.16,1,.3,1) both}
.animate-spin-slow{animation:spin-slow 20s linear infinite}

.delay-1{animation-delay:.05s}
.delay-2{animation-delay:.1s}
.delay-3{animation-delay:.15s}
.delay-4{animation-delay:.2s}
.delay-5{animation-delay:.25s}
.delay-6{animation-delay:.3s}
.delay-7{animation-delay:.35s}
.delay-8{animation-delay:.4s}

/* ── Affiliate page imagery (guest) ─── */
.affiliate-hero-media img,
.affiliate-hero-frame img,
.affiliate-split-media img,
.affiliate-banner-block img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.affiliate-banner-block{
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
}
.affiliate-banner-block .affiliate-banner-frame{
    width:100%;
}
.affiliate-banner-caption{
    display:block;
    width:100%;
    max-width:40rem;
    margin:1rem auto 0;
    padding:0 1rem;
    text-align:center;
    font-size:.9375rem;
    line-height:1.65;
    color:#9CA3AF;
}
.affiliate-team-band-inner{
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
}
.affiliate-team-band-inner .affiliate-hero-frame{
    width:100%;
}
.affiliate-team-band-caption{
    display:block;
    width:100%;
    max-width:36rem;
    margin:1rem auto 0;
    padding:0 1rem;
    text-align:center;
    font-size:.875rem;
    line-height:1.6;
    color:#9CA3AF;
}
.affiliate-hero-frame{
    border-radius:20px;
    border:1px solid #F0F0F0;
    overflow:hidden;
    box-shadow:0 20px 50px -12px rgba(15,23,42,.12);
    background:#F5F5F5;
    aspect-ratio:16/10;
    max-height:min(440px,70vh);
}
.affiliate-split-frame{
    border-radius:20px;
    border:1px solid #F0F0F0;
    overflow:hidden;
    box-shadow:0 16px 40px -8px rgba(0,0,0,.06);
    aspect-ratio:4/3;
    max-height:380px;
    background:#ECECEA;
}
.affiliate-banner-frame{
    border-radius:20px;
    border:1px solid #F0F0F0;
    overflow:hidden;
    box-shadow:0 12px 40px -8px rgba(15,23,42,.1);
    aspect-ratio:21/9;
    min-height:200px;
    max-height:420px;
    background:#111;
    margin-left:auto;
    margin-right:auto;
}
@media(max-width:1023px){
    .affiliate-hero-frame{max-height:none;aspect-ratio:16/11}
    .affiliate-banner-frame{aspect-ratio:16/10;max-height:320px}
}

/* ── Mobile visibility helpers ─── */
.hide-on-mobile{display:none!important}
@media(min-width:640px){.hide-on-mobile{display:flex!important;flex-direction:column!important}}
.show-on-mobile{display:block!important}
@media(min-width:640px){.show-on-mobile{display:none!important}}

/* Split headings + body: stack before “tablet landscape” width so copy isn’t squeezed */
@media(max-width:991.98px){
    .split-balance{
        grid-template-columns:1fr;
        row-gap:1rem;
    }
    .split-rhythm,
    .split-rhythm-lg{
        margin-bottom:2.25rem;
    }
    .split-rhythm-sm{
        margin-bottom:1.5rem;
    }
    .split-balance > :last-child{
        justify-self:start;
    }
    .split-kicker-balance > :last-child{
        padding-top:0;
    }
}

/* ── Responsive ─── */
@media(max-width:1024px){
    .bento-grid{grid-template-columns:repeat(2,1fr)}
    .bento-lg{grid-column:span 2}
    .use-case-row,.use-case-row:nth-child(even){flex-direction:column;gap:2rem}
    .nav-dropdown-menu{left:0;transform:translateX(0) translateY(4px)}
    .nav-dropdown:hover .nav-dropdown-menu{transform:translateX(0) translateY(0)}
}
@media(max-width:768px){
    .section{padding:3.5rem 0}
    .section-lg{padding:4rem 0}
    .section-sm{padding:2.5rem 0}
    .hero-mockup{display:none!important}
    .testimonial-card{width:min(320px,calc(100vw - 3rem));padding:1.5rem}
    .step-connector::after{display:none}
    .mesh-hero{padding-top:7rem!important;padding-bottom:2rem!important}
    .t-hero{font-size:clamp(2rem,8vw,3rem)!important}
    .t-h2{font-size:clamp(1.75rem,6vw,2.5rem)!important}
    .mockup-frame{border-radius:12px}
    /* Inner sections: moderate top rhythm. First section clears fixed ~68px header. */
    body > section{padding-top:4.5rem!important;padding-bottom:4rem!important}
    body > section.mesh-hero{padding-top:7rem!important;padding-bottom:2rem!important}
    body > section:first-of-type:not(.mesh-hero){padding-top:6.75rem!important}
}
/* About: hero — always left-aligned stack (tag → headline → intro) */
.page-about .about-page-hero{
    text-align:left!important;
    align-items:flex-start!important;
}
.page-about .about-page-hero .t-h2,
.page-about .about-page-hero .t-body{
    text-align:left!important;
    margin-left:0!important;
}
/* About: stats + team grids — single column on very narrow phones */
@media(max-width:479px){
    .page-about .grid.grid-cols-2{
        grid-template-columns:1fr!important;
    }
}

@media(max-width:640px){
    .hero-stats-grid{grid-template-columns:1fr 1fr!important}
    .bento-grid{grid-template-columns:1fr}
    .bento-lg{grid-column:span 1}
    .mesh-hero{padding-top:6rem!important;padding-bottom:1.25rem!important}
    .mesh-cta{padding:3rem 0!important}
    .section-dark{padding:3rem 0}
    .marquee-wrap{display:none}
    .metric-number{font-size:clamp(2rem,8vw,3rem)}
    .btn-lg{padding:14px 24px;font-size:14px}
    .container{
        padding-left:max(1rem, env(safe-area-inset-left))!important;
        padding-right:max(1rem, env(safe-area-inset-right))!important;
        max-width:100%;
        min-width:0;
    }
    body > section{padding-top:4rem!important;padding-bottom:3rem!important}
    body > section.mesh-hero{padding-top:6rem!important;padding-bottom:1.5rem!important}
    body > section:first-of-type:not(.mesh-hero){padding-top:6.25rem!important}
}

/* ── Integrations hub — AI agent connection cards ─── */
.int-agent-section{
    padding-top:3.5rem;
    padding-bottom:5rem;
    background:linear-gradient(180deg,#FAFAFA 0%,#FFFFFF 55%,#FAFAFA 100%);
    border-top:1px solid #F0F0F0;
    border-bottom:1px solid #F0F0F0;
}
.int-agent-section .int-agent-head{
    max-width:36rem;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:2.75rem;
    text-align:center;
}
/* CSS grid: equal-width columns, equal card heights per row, straight top edge */
.int-agent-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:1.25rem;
    max-width:1180px;
    margin:0 auto;
    align-items:stretch;
}
@media (min-width:640px){
    .int-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width:1024px){
    .int-agent-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}
.int-agent-card{
    position:relative;
    width:100%;
    max-width:none;
    min-height:100%;
    display:flex;
    flex-direction:column;
    padding:1.5rem 1.5rem 1.375rem;
    background:#fff;
    border:1px solid #ECECEE;
    border-radius:20px;
    box-shadow:0 1px 0 rgba(0,0,0,.04),0 12px 40px -24px rgba(0,0,0,.08);
    transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease;
    overflow:hidden;
}
.int-agent-card::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    right:0;
    height:3px;
    border-radius:20px 20px 0 0;
    opacity:.95;
}
.int-agent-card--mcp::before{background:linear-gradient(90deg,#6366F1,#818CF8);}
.int-agent-card--openclaw::before{background:linear-gradient(90deg,#059669,#10B981);}
.int-agent-card--teams::before{background:linear-gradient(90deg,#6264A7,#8B8CC7);}
.int-agent-card--schedra::before{background:linear-gradient(90deg,#D97706,#EA580C);}
.int-agent-card--rest::before{background:linear-gradient(90deg,#1A1A1A,#52525B);}
.int-agent-card:hover{
    border-color:#E0E0E4;
    box-shadow:0 20px 50px -20px rgba(0,0,0,.12);
    transform:translateY(-3px);
}
.int-agent-card__top{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:.75rem;
    margin-bottom:.875rem;
    flex-shrink:0;
}
.int-agent-card__icon{
    width:52px;
    height:52px;
    min-width:52px;
    min-height:52px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border:1px solid rgba(0,0,0,.06);
    box-shadow:0 2px 8px rgba(0,0,0,.04);
}
/* Normalize glyph size so icons align visually across the row */
.int-agent-card__icon > svg{
    width:24px!important;
    height:24px!important;
    flex-shrink:0;
    display:block;
}
.int-agent-card__icon > img{
    width:24px!important;
    height:24px!important;
    max-width:24px!important;
    max-height:24px!important;
    object-fit:contain!important;
    display:block;
}
.int-agent-card__icon > i[class*="fa-"]{
    font-size:1.375rem!important;
    line-height:1!important;
}
.int-agent-card--mcp .int-agent-card__icon{background:linear-gradient(145deg,rgba(99,102,241,.12),rgba(99,102,241,.06));border-color:rgba(99,102,241,.2);}
.int-agent-card--openclaw .int-agent-card__icon{background:linear-gradient(145deg,#059669,#047857);border-color:rgba(5,150,105,.35);box-shadow:0 4px 14px rgba(5,150,105,.25);}
.int-agent-card--teams .int-agent-card__icon{background:linear-gradient(145deg,rgba(98,100,167,.15),rgba(98,100,167,.08));border-color:rgba(98,100,167,.25);}
.int-agent-card--schedra .int-agent-card__icon{background:#F5F0EB;border-color:#E8E4DF;}
.int-agent-card--rest .int-agent-card__icon{background:linear-gradient(145deg,#F4F4F5,#ECECEE);border-color:#D4D4D8;}
.int-agent-card__title{
    font-size:.9375rem;
    font-weight:700;
    letter-spacing:-.02em;
    color:#1A1A1A;
    line-height:1.3;
    margin:0;
    text-align:center;
    max-width:100%;
    min-height:2.86em;
    display:flex;
    align-items:center;
    justify-content:center;
}
.int-agent-card__body{
    font-size:.8125rem;
    line-height:1.6;
    color:#6B7280;
    margin-bottom:1.125rem;
    flex:1;
    text-align:center;
}
.int-agent-card__cta{
    margin-top:auto;
    width:100%;
    justify-content:center;
    padding:10px 18px;
    font-size:13px;
    font-weight:600;
    border-radius:12px!important;
    color:#fff!important;
    background:#1A1A1A!important;
    border:none!important;
    box-shadow:0 2px 8px rgba(0,0,0,.08);
    text-decoration:none!important;
    transition:background .2s ease,transform .2s ease,box-shadow .2s ease;
}
.int-agent-card__cta:hover{
    background:#333!important;
    color:#fff!important;
    transform:translateY(-1px);
    box-shadow:0 8px 24px rgba(0,0,0,.12);
}
.int-agent-card__cta i{margin-left:.25rem;font-size:.7em;opacity:.9;}
@media (max-width:640px){
    .int-agent-card{max-width:100%;}
}

/* Integrations hub — category columns: headings + lead align with logo grid (cells were centered, looked inset) */
.integrations-category-card{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:1.125rem;
    padding:2rem;
    background:#fff;
    border-radius:20px;
    border:1px solid #F0F0F0;
}
@media (max-width:639.98px){
    .integrations-category-card__logos{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px 12px;
    }
}
.integrations-category-card__media{
    width:48px;
    height:48px;
    min-width:48px;
    min-height:48px;
    border-radius:14px;
    background:#F5F0EB;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}
.integrations-category-card__media svg{
    width:24px;
    height:24px;
    flex-shrink:0;
    color:#1A1A1A;
}
.integrations-category-card__title{
    font-size:1.25rem;
    font-weight:700;
    margin:0;
    line-height:1.3;
    letter-spacing:-.02em;
    color:#111827;
}
.integrations-category-card__lead{
    margin:0;
    font-size:.9375rem;
    line-height:1.65;
    color:#6B7280;
}
.integrations-category-card__logos{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px 10px;
    margin-top:.5rem;
}
.integrations-logo-cell{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    text-align:left;
    gap:6px;
    min-width:0;
}
.integrations-logo-cell__icon{
    width:34px;
    height:34px;
    min-width:34px;
    min-height:34px;
    border-radius:10px;
    background:#F5F0EB;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}
.integrations-logo-cell__label{
    font-size:10px;
    line-height:1.25;
    color:#6B7280;
    max-width:100%;
}

/* Integrations — "Why Integrate?" row: aligned icon row + title baseline */
.integrations-why-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:1.75rem 1.25rem;
    align-items:start;
}
@media (min-width:640px){
    .integrations-why-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width:1024px){
    .integrations-why-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}
.integrations-why-item{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    height:100%;
}
.integrations-why-item__icon{
    width:48px;
    height:48px;
    min-width:48px;
    min-height:48px;
    border-radius:12px;
    background:#F5F0EB;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:1rem;
    flex-shrink:0;
}
.integrations-why-item__icon svg{
    width:22px;
    height:22px;
    flex-shrink:0;
    display:block;
    color:#1A1A1A;
}
.integrations-why-item__title{
    font-size:1rem;
    font-weight:700;
    margin:0 0 .5rem;
    line-height:1.3;
    min-height:2.6em;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
}
.integrations-why-item__body{
    margin:0;
    font-size:.8125rem;
    line-height:1.6;
    color:#6B7280;
    flex:1;
}

/* Global no-border request (exclude form controls for usability) */
body *:not(input):not(select):not(textarea):not(option){
    border:none !important;
    box-shadow:none !important;
}

/* Integrations hub cards: restore borders/shadows removed by global rule above */
.int-agent-card{
    border:1px solid #ECECEE!important;
    box-shadow:0 1px 0 rgba(0,0,0,.04),0 12px 40px -24px rgba(0,0,0,.08)!important;
}
.int-agent-card:hover{
    border-color:#E0E0E4!important;
    box-shadow:0 20px 50px -20px rgba(0,0,0,.12)!important;
}
.int-agent-card__icon{
    border-style:solid!important;
    border-width:1px!important;
    box-shadow:0 2px 8px rgba(0,0,0,.04)!important;
}
.int-agent-card--mcp .int-agent-card__icon{border-color:rgba(99,102,241,.2)!important;}
.int-agent-card--openclaw .int-agent-card__icon{
    border-color:rgba(5,150,105,.35)!important;
    box-shadow:0 4px 14px rgba(5,150,105,.25)!important;
}
.int-agent-card--teams .int-agent-card__icon{border-color:rgba(98,100,167,.25)!important;}
.int-agent-card--schedra .int-agent-card__icon{border-color:#E8E4DF!important;}
.int-agent-card--rest .int-agent-card__icon{border-color:#D4D4D8!important;}
.int-agent-card__cta{
    box-shadow:0 2px 8px rgba(0,0,0,.08)!important;
}
.int-agent-card__cta:hover{
    box-shadow:0 8px 24px rgba(0,0,0,.12)!important;
}
.integrations-category-card{
    border:1px solid #F0F0F0!important;
    border-radius:20px!important;
    transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease!important;
}
.integrations-category-card:hover{
    border-color:#E5E5E5!important;
    box-shadow:0 20px 50px -12px rgba(0,0,0,.06)!important;
    transform:translateY(-4px);
}

/* Affiliate — brand assets dropdown (panel chrome restored after global border reset) */
.affiliate-assets-menu-panel{
    border:1px solid #e5e7eb!important;
    box-shadow:0 12px 40px -12px rgba(15,23,42,.15)!important;
}
a.affiliate-assets-menu__link{
    display:block;
    padding:.55rem 1rem;
    font-size:.8125rem;
    font-weight:600;
    color:#111827!important;
    text-decoration:none!important;
    line-height:1.35;
    border:none!important;
    border-bottom:1px solid #f3f4f6!important;
    box-shadow:none!important;
    transition:background .12s ease;
}
a.affiliate-assets-menu__link:last-child{
    border-bottom:none!important;
}
a.affiliate-assets-menu__link:hover{
    background:#f9fafb!important;
    color:#111827!important;
}

/* Global image surface cleanup: remove ash/gray fills now and for future image blocks */
img,
picture,
figure{
    background:transparent !important;
}
:where(div,section,article,a,span,figure,picture):has(> img){
    background:transparent !important;
}

/* Final border cleanup requested: AI Visibility + Use Cases + Affiliate split image */
#ai-visibility,
#ai-visibility .ai-visibility-section,
#ai-visibility .ai-visibility-copy__card,
#ai-visibility .ai-visibility-aside__frame,
#ai-visibility .ai-visibility-photo,
#ai-visibility .product-photo-strip__shot{
    border:none !important;
    box-shadow:none !important;
    outline:none !important;
    background:transparent !important;
}

.use-cases-page .use-case-media-frame,
.use-cases-page .use-case-grid-cell,
.use-cases-page .use-case-grid-cell--photo,
.use-cases-page .dotted-separator{
    border:none !important;
    box-shadow:none !important;
    outline:none !important;
    background:transparent !important;
}

/* Global image border reset (all pages, current + future) */
img,
picture,
figure,
svg image{
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    background:transparent !important;
}
.product-photo-strip__shot,
.home-use-case-visual,
.ai-visibility-photo,
.social-creative-strip__cell,
.use-case-grid-cell,
.use-case-media-frame,
.product-el-frame{
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    background:transparent !important;
}

/* Home AI Visibility alignment polish */
.home-ai-visibility .home-ai-visibility-head{
    align-items:start;
}
.home-ai-visibility .home-ai-visibility-row{
    align-items:stretch;
}
.home-ai-visibility .home-ai-visibility-card{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

/* Public pages: remove image borders/shadows everywhere */
body img,
body picture,
body figure,
body .product-photo-strip__shot,
body .home-use-case-visual,
body .use-case-media-frame,
body .use-case-grid-cell,
body .ai-visibility-photo,
body [class*="image"],
body [class*="media"]{
    border:none !important;
    outline:none !important;
    box-shadow:none !important;
    background:transparent !important;
}

/* Public pages: photo strip tiles — desktop uses capped height + contain; mobile stacks full-width with cover */
@media (min-width: 768px) {
    body .product-photo-strip__shot{
        aspect-ratio:4/3 !important;
        max-height:min(360px,50vh) !important;
        border-radius:18px !important;
        overflow:hidden !important;
    }
    body .product-photo-strip__shot img{
        width:100% !important;
        height:100% !important;
        object-fit:contain !important;
        object-position:center center !important;
        display:block !important;
    }
}
@media (max-width: 767.98px) {
    body .product-photo-strip__shot{
        aspect-ratio:4/3 !important;
        max-height:none !important;
        border-radius:20px !important;
        overflow:hidden !important;
    }
    body .product-photo-strip__shot img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
        object-position:center center !important;
        display:block !important;
    }
    body .product-marketing-strip-section .product-photo-strip.product-photo-strip--3 .product-photo-strip__shot{
        max-height:none !important;
    }
    #integrations-hub .home-integrations-strip .product-photo-strip__shot{
        max-height:none !important;
        aspect-ratio:4/3 !important;
    }
    #integrations-hub .home-integrations-strip .product-photo-strip__shot img{
        object-fit:cover !important;
    }
}
@media (min-width: 768px) {
    body .home-use-case-visual{
        aspect-ratio:4/3 !important;
        max-height:min(360px,50vh) !important;
    }
}
@media (max-width: 767.98px) {
    body .home-use-case-visual{
        aspect-ratio:4/3 !important;
        max-height:none !important;
    }
}

/* Home AI Visibility: tighten balance and vertical alignment */
.home-ai-visibility .home-ai-visibility-head{
    margin-bottom:1.25rem;
}
.home-ai-visibility .home-ai-visibility-head > :first-child,
.home-ai-visibility .home-ai-visibility-head > :last-child{
    align-self:start;
}
.home-ai-visibility .home-ai-visibility-row{
    margin-top:.25rem;
}
/* AI Visibility home: title sits closer to intro copy below */
#ai-visibility .home-ai-visibility-head{
    margin-bottom:0 !important;
}
#ai-visibility .home-ai-visibility-head.split-balance > :first-child .t-h2,
#ai-visibility .home-ai-visibility-head .t-h2{
    margin-bottom:0 !important;
}
#ai-visibility .home-ai-visibility-row{
    margin-top:0 !important;
}
.home-ai-visibility .home-ai-visibility-card{
    min-height:100%;
}

/* Home section width rhythm + AI Visibility balance */
.home-ai-visibility .home-ai-visibility-card{
    width:100%;
    max-width:540px;
    margin-right:auto;
}
.home-ai-visibility .home-ai-visibility-card__list{
    padding-left:1rem !important;
    line-height:1.85 !important;
}
.home-ai-visibility .home-ai-visibility-card__content{
    min-height:100%;
}
.home-ai-visibility .home-ai-visibility-card__action{
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
}
.home-ai-visibility .home-ai-visibility-card .btn,
.home-ai-visibility .home-ai-visibility-card__btn{
    align-self:flex-start;
    white-space:nowrap;
    min-width:140px;
    text-align:center;
}
.home-ai-visibility .home-ai-visibility-media{
    width:100%;
    max-width:540px;
    margin-left:auto;
    display:flex;
    align-items:stretch;
}
@media (min-width:1024px){
    #ai-visibility .home-ai-visibility-media{
        padding-right:2.25rem;
        box-sizing:border-box;
    }
}
.home-ai-visibility .home-ai-visibility-media img{
    transform:scale(1.08);
    transform-origin:center;
}
.home-ai-visibility .home-ai-visibility-row{
    column-gap:clamp(1.25rem,2.6vw,2rem);
    align-items:stretch !important;
}
#ai-visibility .home-ai-visibility-panel{
    width:100%;
    max-width:540px;
    margin-right:auto;
    padding-top:0;
    padding-bottom:.75rem;
    display:flex;
    align-items:center;
}
#ai-visibility .home-ai-visibility-panel__content{
    display:grid;
    grid-template-columns:1fr;
    gap:.75rem;
    align-items:start;
    /* Same 2.25rem as home “Three products” card copy + AI Visibility title */
    padding-left:2.25rem;
    box-sizing:border-box;
}
#ai-visibility .home-ai-visibility-intro{
    max-width:38rem;
    line-height:1.7;
}
#ai-visibility .home-ai-visibility-card__list{
    margin-top:.1rem !important;
    list-style:none;
    padding-left:0;
}
#ai-visibility .home-ai-visibility-card__list--bulleted{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:.25rem 1.25rem;
}
#ai-visibility .home-ai-visibility-card__list--bulleted li{
    display:flex;
    align-items:center;
    gap:.55rem;
    min-width:0;
}
#ai-visibility .home-ai-visibility-card__icon{
    width:32px;
    height:32px;
    min-width:32px;
    border-radius:10px;
    background:#F5F0EB;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    color:#1A1A1A;
}
#ai-visibility .home-ai-visibility-card__icon svg{
    width:15px;
    height:15px;
}
#ai-visibility .home-ai-visibility-card__action{
    padding-top:.1rem;
    align-self:start;
}
@media(max-width:768px){
    #ai-visibility .home-ai-visibility-card__list--bulleted{
        grid-template-columns:1fr;
    }
    #ai-visibility .home-ai-visibility-panel__content{
        grid-template-columns:1fr;
    }
    #ai-visibility .home-ai-visibility-panel{
        padding:0;
    }
}
#integrations-hub .grid,
#ai-tools .grid{
    max-width:1080px;
}

/* Home integrations strip: rounded image tiles like reference */
#integrations-hub .product-photo-strip__shot{
    border-radius:16px !important;
    overflow:hidden !important;
}
#integrations-hub .home-integrations-strip .product-photo-strip__shot{
    aspect-ratio:16/10 !important;
    max-height:220px !important;
    background:#eef1f4 !important;
}
#integrations-hub .home-integrations-strip .product-photo-strip__shot img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:16px !important;
    display:block !important;
}

/* Home integrations: match reference light-gray background + compact columns */
#integrations-hub.home-integrations-hub{
    background:#f2f2f2 !important;
}
/* One horizontal rail on home (no sch-guest-align-rail on /): title, photo strip, cards share same inset */
#integrations-hub.home-integrations-hub .home-integrations-hub__intro-title{
    max-width:400px;
    padding-left:2.25rem;
    box-sizing:border-box;
    text-align:left;
}
#integrations-hub.home-integrations-hub .home-integrations-hub__intro-lede{
    max-width:420px;
    padding-right:2.25rem;
    box-sizing:border-box;
    text-align:left;
}
#integrations-hub .home-integrations-strip.product-el-frame{
    padding:16px 2.25rem !important;
    box-sizing:border-box;
}
@media (max-width:640px){
    #integrations-hub.home-integrations-hub .home-integrations-hub__intro-title{
        padding-left:1rem;
    }
    #integrations-hub.home-integrations-hub .home-integrations-hub__intro-lede{
        padding-right:1rem;
    }
    #integrations-hub .home-integrations-strip.product-el-frame{
        padding:12px 1rem !important;
    }
}
#integrations-hub.home-integrations-hub .home-integrations-hub__card{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    padding:1.2rem 2.25rem !important;
}
@media (max-width:640px){
    #integrations-hub.home-integrations-hub .home-integrations-hub__card{
        padding:1.1rem 1rem !important;
    }
}
#integrations-hub.home-integrations-hub .home-integrations-hub__grid{
    align-items:start;
}
#integrations-hub.home-integrations-hub .home-integrations-hub__head-icon{
    background:#eceaea !important;
}
#integrations-hub.home-integrations-hub .home-integrations-hub__logos{
    row-gap:.6rem !important;
    column-gap:.5rem !important;
}
#integrations-hub.home-integrations-hub .home-integrations-hub__logo-icon{
    background:#eceaea !important;
}
#integrations-hub.home-integrations-hub .home-integrations-hub__logo-item span{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* Product strip consistency: rounded corners + same structure as decision page */
.product-marketing-strip-section .product-photo-strip.product-photo-strip--3{
    gap:clamp(14px,2.5vw,26px);
}
.product-marketing-strip-section .product-photo-strip.product-photo-strip--3 .product-photo-strip__shot{
    border-radius:20px !important;
    overflow:hidden !important;
    aspect-ratio:4/3 !important;
    background:transparent !important;
}
@media (min-width: 768px) {
    .product-marketing-strip-section .product-photo-strip.product-photo-strip--3 .product-photo-strip__shot{
        max-height:min(320px,40vh) !important;
    }
}
.product-marketing-strip-section .product-photo-strip.product-photo-strip--3 .product-photo-strip__shot img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}

/* Home use cases: 4-card structure (label, media, copy) — rail matches other home sections */
#home-use-cases .home-use-cases__header{
    max-width:1080px;
    margin:0 auto 2.1rem;
}
#home-use-cases .home-use-cases__grid{
    display:grid;
    grid-template-columns:repeat(1,minmax(0,1fr));
    gap:1.1rem;
    align-items:stretch;
    max-width:1080px;
    box-sizing:border-box;
}
@media(min-width:768px){
    #home-use-cases .home-use-cases__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:1.25rem;
    }
}
@media(min-width:1100px){
    #home-use-cases .home-use-cases__grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
        gap:1.2rem;
    }
}
#home-use-cases .home-use-cases__card{
    display:flex;
    flex-direction:column;
    gap:.7rem;
    height:100%;
    padding-left:2.25rem;
    padding-right:2.25rem;
    box-sizing:border-box;
}
#home-use-cases .home-use-cases__label{
    background:transparent !important;
    color:#1a1a1a;
    border-radius:10px;
    padding:.55rem 0;
    font-size:.96rem;
    font-weight:700;
    line-height:1.2;
    min-height:2.8rem;
    display:flex;
    align-items:center;
}
#home-use-cases .home-use-cases__media{
    border-radius:16px;
    overflow:hidden;
    aspect-ratio:4/5;
    background:#ececec;
}
#home-use-cases .home-use-cases__media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
#home-use-cases .home-use-cases__copy{
    background:transparent !important;
    color:#3f3f46;
    border-radius:10px;
    padding:.7rem 0;
    font-size:.92rem;
    line-height:1.45;
    margin:0;
    min-height:7.25rem;
    display:flex;
    align-items:flex-start;
}

/* Home AI tools: same width + rhythm as Integrations / Use Cases */
#ai-tools.home-ai-tools .home-ai-tools__head{
    align-items:center;
    margin-bottom:2rem;
}
#ai-tools.home-ai-tools .home-ai-tools__grid{
    width:100%;
    max-width:1080px !important;
    padding-left:2.25rem;
    padding-right:2.25rem;
    box-sizing:border-box;
    column-gap:1rem !important;
    row-gap:1.9rem !important;
}
@media (min-width: 640px) and (max-width: 1023.98px){
    #ai-tools.home-ai-tools .home-ai-tools__grid{
        column-gap:.55rem !important;
    }
}
#ai-tools.home-ai-tools .home-ai-tools__item{
    transition:opacity .18s ease;
}
#ai-tools.home-ai-tools .home-ai-tools__item:hover{
    opacity:.88;
}
#ai-tools.home-ai-tools{
    padding:5.75rem 0 !important;
}
@media (max-width:640px){
    #home-use-cases .home-use-cases__card{
        padding-left:1rem;
        padding-right:1rem;
    }
    #ai-tools.home-ai-tools .home-ai-tools__grid{
        padding-left:1rem;
        padding-right:1rem;
    }
}

/* AI Tools page — AI Visibility band (product-page style: split + full-width strip) */
.ai-visibility-page-band .ai-visibility-page-band__intro.split-rhythm{
    margin-bottom:0 !important;
}
.ai-visibility-page-band .product-marketing-strip-section.ai-visibility-tools-strip{
    border-top:1px solid rgba(0,0,0,.04);
}
.ai-visibility-page-band .ai-visibility-tools-features .ai-visibility-dot{
    flex-shrink:0;
}

/* AI Visibility product — hero photo: zoom + crop to hide bottom-right stock watermark */
.aiv-product-hero-frame .aiv-product-hero-crop{
    overflow:hidden;
    border-radius:18px;
    aspect-ratio:16/10;
    width:100%;
    min-height:0;
    background:#e8e4df;
}
.aiv-product-hero-frame .aiv-product-hero-img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:32% 38%;
    transform:scale(1.16);
    transform-origin:28% 32%;
}

/* AI Visibility product (/product/ai-visibility) — Core Capabilities sublists flush with title + lead */
.aiv-core-capabilities .aiv-core-cap-sublist{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:.42rem;
}
.aiv-core-capabilities .aiv-core-cap-sublist li{
    margin:0;
    padding:0;
}
.aiv-core-capabilities .aiv-core-capabilities__title{
    max-width:100%;
    padding-left:0;
    margin-left:0;
}

/* ── Auth (login / signup) — light, editorial + layered visual ─── */
body.auth-route{
    background:#f3f2ef!important;
    /* Fixed header ~68px + clear gap so titles/forms are not tight or clipped under the bar */
    padding-top:max(6.25rem,calc(72px + 2rem + env(safe-area-inset-top,0px)))!important;
}
/* Auth pages: room below fixed header + safe bottom so long signup forms are not visually cut off */
body.auth-route .auth-page{
    padding-bottom:max(4.5rem,calc(env(safe-area-inset-bottom,0px) + 3rem));
}
.auth-page{
    position:relative;
    padding:clamp(2.75rem,4vw,3.5rem) 0 4.5rem;
}
@media (min-width:1024px){
    .auth-page{
        padding:clamp(3.5rem,4vw,4.75rem) 0 5.5rem;
    }
    .auth-page--signup{
        padding:clamp(3.25rem,3.5vw,4.5rem) 0 5rem;
    }
}
.auth-page__inner{
    width:100%;
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    padding-left:1.25rem;
    padding-right:1.25rem;
}
@media (min-width:1024px){
    .auth-page__inner{
        padding-left:2rem;
        padding-right:2rem;
    }
}
.auth-page__grid{
    display:grid;
    grid-template-columns:1fr;
    align-items:center;
    gap:2.75rem;
}
@media (min-width:1024px){
    .auth-page__grid{
        grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);
        gap:3.5rem;
        align-items:center;
    }
}
.auth-page__column--form{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    max-width:440px;
    width:100%;
    margin-left:auto;
    margin-right:auto;
}
@media (min-width:1024px){
    .auth-page__column--form{
        margin-left:0;
        margin-right:0;
        max-width:none;
    }
}
.auth-page__intro{
    margin-bottom:1.75rem;
    width:100%;
    max-width:26rem;
}
.auth-page__title{
    font-family:Georgia,'Times New Roman',Times,ui-serif,serif!important;
    font-size:clamp(2.15rem,4.2vw,3.15rem);
    font-weight:400;
    letter-spacing:-.035em;
    line-height:1.08;
    color:#111827;
    margin:0;
    padding-top:.12em;
}
.auth-page__lead{
    font-size:1rem;
    line-height:1.65;
    color:#6b7280;
    margin:.85rem 0 0;
    max-width:22rem;
}
.auth-form-card{
    width:100%;
    max-width:400px;
    background:#fff;
    border:1px solid rgba(17,24,39,.08);
    border-radius:20px;
    box-shadow:
        0 1px 2px rgba(15,23,42,.04),
        0 24px 48px -12px rgba(15,23,42,.1);
    padding:1.75rem 1.5rem 1.65rem;
}
@media (min-width:640px){
    .auth-form-card{
        padding:2rem 1.85rem 1.85rem;
    }
}
.auth-form-card--wide{
    max-width:420px;
}
.auth-form-card__form{
    display:flex;
    flex-direction:column;
    gap:0;
}
.auth-btn-google{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.5rem;
    width:100%;
    padding:.7rem 1rem;
    font-size:.875rem;
    font-weight:600;
    color:#111827;
    text-decoration:none!important;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:12px;
    box-shadow:0 1px 2px rgba(15,23,42,.04);
    transition:background .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.auth-btn-google:hover{
    background:#fafafa;
    border-color:#d1d5db;
    box-shadow:0 4px 12px rgba(15,23,42,.06);
}
.auth-divider{
    display:flex;
    align-items:center;
    gap:1rem;
    margin:1.1rem 0 1.25rem;
    font-size:.65rem;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#9ca3af;
}
.auth-divider::before,
.auth-divider::after{
    content:'';
    flex:1;
    height:1px;
    background:linear-gradient(90deg,transparent,#e5e7eb 15%,#e5e7eb 85%,transparent);
}
.auth-field-group{
    margin-bottom:1rem;
}
.auth-label{
    display:block;
    font-size:.8125rem;
    font-weight:600;
    color:#374151;
    margin-bottom:.4rem;
    letter-spacing:.01em;
}
.auth-input,
.auth-select{
    display:block;
    width:100%;
    padding:.65rem .85rem;
    font-size:.875rem;
    line-height:1.45;
    color:#111827;
    background:#fafafa;
    border:1px solid #e5e7eb;
    border-radius:12px;
    outline:none;
    transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
    font-family:inherit;
}
.auth-input::placeholder{
    color:#9ca3af;
}
.auth-input:hover,
.auth-select:hover{
    border-color:#d1d5db;
}
.auth-input:focus,
.auth-select:focus{
    background:#fff;
    border-color:#111827;
    box-shadow:0 0 0 3px rgba(17,24,39,.08);
}
.auth-select{
    cursor:pointer;
    appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m19.5 8.25-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right .65rem center;
    background-size:1rem;
    padding-right:2.25rem;
}
.auth-captcha{
    margin:.25rem 0 .5rem;
}
.auth-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.75rem;
    flex-wrap:wrap;
    margin:.35rem 0 1rem;
}
.auth-check{
    display:inline-flex;
    align-items:flex-start;
    gap:.5rem;
    font-size:.8125rem;
    color:#6b7280;
    cursor:pointer;
    line-height:1.4;
}
.auth-check--block{
    display:flex;
    margin:.25rem 0 1rem;
}
.auth-check input{
    margin-top:.2rem;
    width:1rem;
    height:1rem;
    border-radius:4px;
    border:1px solid #d1d5db;
    accent-color:#111827;
    flex-shrink:0;
}
.auth-link{
    font-size:.8125rem;
    font-weight:600;
    color:#111827;
    text-decoration:none!important;
    border-bottom:1px solid transparent;
    transition:border-color .15s ease,color .15s ease;
}
.auth-link:hover{
    color:#000;
    border-bottom-color:#111827;
}
.auth-inline-link{
    font-weight:600;
    color:#111827;
    text-decoration:underline!important;
    text-underline-offset:2px;
}
.auth-inline-link:hover{
    color:#000;
}
.auth-msg-error:empty{
    display:none;
}
.auth-msg-error:not(:empty){
    margin:0 0 .75rem;
    font-size:.8125rem;
    color:#b91c1c;
}
.auth-btn-primary{
    width:100%;
    padding:.72rem 1rem;
    font-size:.875rem;
    font-weight:600;
    color:#fff;
    background:#111827;
    border:1px solid #111827;
    border-radius:12px;
    cursor:pointer;
    font-family:inherit;
    box-shadow:0 1px 2px rgba(15,23,42,.12);
    transition:background .2s ease,transform .15s ease,box-shadow .2s ease;
}
.auth-btn-primary:hover{
    background:#1f2937;
    border-color:#1f2937;
    box-shadow:0 4px 14px rgba(15,23,42,.18);
}
.auth-btn-primary:active{
    transform:translateY(1px);
}
.auth-footnote{
    text-align:center;
    font-size:.8125rem;
    color:#6b7280;
    margin:1.15rem 0 0;
}
.auth-footnote a{
    font-weight:600;
    color:#111827;
    text-decoration:none!important;
    border-bottom:1px solid #d1d5db;
    transition:border-color .15s ease,color .15s ease;
}
.auth-footnote a:hover{
    color:#000;
    border-bottom-color:#111827;
}

/* Auth marketing visual */
.auth-visual{
    position:relative;
    min-height:380px;
}
.auth-visual__ambient{
    position:absolute;
    inset:-8% -10% 20% -6%;
    background:radial-gradient(ellipse 80% 70% at 50% 40%,rgba(255,255,255,.95) 0%,transparent 65%),
        radial-gradient(ellipse 60% 50% at 80% 20%,rgba(245,240,235,.7) 0%,transparent 50%);
    pointer-events:none;
}
.auth-visual__grid{
    position:absolute;
    inset:0;
    opacity:.45;
    background-image:
        linear-gradient(to right,rgba(17,24,39,.07) 1px,transparent 1px),
        linear-gradient(to bottom,rgba(17,24,39,.07) 1px,transparent 1px);
    background-size:32px 32px;
    mask-image:radial-gradient(ellipse 75% 75% at 50% 45%,#000 20%,transparent 70%);
    -webkit-mask-image:radial-gradient(ellipse 75% 75% at 50% 45%,#000 20%,transparent 70%);
    pointer-events:none;
}
.auth-visual__stage{
    position:relative;
    width:100%;
    height:100%;
    min-height:380px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:1rem 0 2rem;
}
.auth-visual__hero{
    position:relative;
    z-index:2;
    margin:0;
    width:100%;
    max-width:min(100%,440px);
    border-radius:18px;
    overflow:hidden;
    border:1px solid rgba(17,24,39,.1);
    background:#fff;
    box-shadow:
        0 2px 4px rgba(15,23,42,.04),
        0 28px 56px -8px rgba(15,23,42,.16),
        0 0 0 1px rgba(255,255,255,.6) inset;
    transform:rotate(-1.5deg);
}
.auth-visual__hero img{
    display:block;
    width:100%;
    height:auto;
    vertical-align:middle;
}
.auth-visual__float{
    position:absolute;
    z-index:3;
    display:flex;
    align-items:center;
    gap:.65rem;
    padding:.55rem .85rem;
    background:rgba(255,255,255,.92);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
    border:1px solid rgba(17,24,39,.08);
    border-radius:14px;
    box-shadow:0 8px 24px rgba(15,23,42,.1);
    max-width:200px;
}
.auth-visual__float--tl{
    top:6%;
    left:0;
    transform:rotate(-2deg);
}
.auth-visual__float--tr{
    top:14%;
    right:0;
    transform:rotate(2deg);
}
.auth-visual__float--bl{
    bottom:10%;
    left:6%;
    transform:rotate(1deg);
}
@media (max-width:1100px){
    .auth-visual__float--tl{left:-2%;}
    .auth-visual__float--tr{right:-2%;}
}
.auth-visual__float-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:2rem;
    height:2rem;
    border-radius:10px;
    background:#f5f0eb;
    color:#374151;
    font-size:.85rem;
    flex-shrink:0;
}
.auth-visual__float-icon--violet{
    background:#ede9fe;
    color:#5b21b6;
}
.auth-visual__float-title{
    display:block;
    font-size:.75rem;
    font-weight:700;
    color:#111827;
    line-height:1.2;
}
.auth-visual__float-meta{
    display:block;
    font-size:.65rem;
    color:#6b7280;
    margin-top:1px;
    line-height:1.3;
}
.auth-visual__float-dot{
    width:.5rem;
    height:.5rem;
    border-radius:999px;
    background:#22c55e;
    box-shadow:0 0 0 3px rgba(34,197,94,.25);
    flex-shrink:0;
}
@media (prefers-reduced-motion:no-preference){
    .auth-visual__hero{
        animation:auth-visual-drift 14s ease-in-out infinite alternate;
    }
    .auth-visual__float--tl{animation:auth-float-a 9s ease-in-out infinite alternate;}
    .auth-visual__float--tr{animation:auth-float-b 11s ease-in-out infinite alternate;}
    .auth-visual__float--bl{animation:auth-float-a 10s ease-in-out infinite alternate-reverse;}
}
@keyframes auth-visual-drift{
    from{transform:rotate(-1.5deg) translateY(0);}
    to{transform:rotate(-1deg) translateY(-6px);}
}
@keyframes auth-float-a{
    from{transform:rotate(-2deg) translateY(0);}
    to{transform:rotate(-2deg) translateY(-5px);}
}
@keyframes auth-float-b{
    from{transform:rotate(2deg) translateY(0);}
    to{transform:rotate(2deg) translateY(-4px);}
}

/* Signup — plan picker */
.auth-form-card--signup-flow{
    max-width:min(100%,480px);
}
.auth-plan-fieldset{
    border:none;
    margin:0 0 .25rem;
    padding:0;
}
.auth-plan-legend{
    font-size:.8125rem;
    font-weight:700;
    color:#111827;
    margin:0 0 .35rem;
    padding:0;
}
.auth-plan-hint{
    font-size:.75rem;
    line-height:1.5;
    color:#6b7280;
    margin:0 0 1rem;
}
.auth-plan-empty{
    font-size:.8125rem;
    color:#b45309;
    margin:0;
}
.auth-plan-tabs{
    display:inline-flex;
    gap:4px;
    padding:4px;
    background:#e5e7eb;
    border-radius:999px;
    margin-bottom:1rem;
}
.auth-plan-tab{
    border:none;
    background:transparent;
    padding:.4rem 1rem;
    font-size:.8125rem;
    font-weight:600;
    color:#6b7280;
    border-radius:999px;
    cursor:pointer;
    font-family:inherit;
    transition:background .15s ease,color .15s ease;
}
.auth-plan-tab.is-active{
    background:#fff;
    color:#111827;
    box-shadow:0 1px 3px rgba(15,23,42,.1);
}
.auth-plan-panel[x-cloak]{
    display:none!important;
}
.auth-plan-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:.65rem;
}
@media (min-width:400px){
    .auth-plan-grid{
        grid-template-columns:1fr 1fr;
    }
}
.auth-plan-option{
    display:block;
    position:relative;
    cursor:pointer;
    margin:0;
}
.auth-plan-radio{
    position:absolute;
    opacity:0;
    width:1px;
    height:1px;
    pointer-events:none;
}
.auth-plan-option__body{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:.2rem;
    padding:.75rem .8rem;
    border:1px solid #e5e7eb;
    border-radius:14px;
    background:#fafafa;
    transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
    min-height:5.5rem;
}
.auth-plan-option:hover .auth-plan-option__body{
    border-color:#d1d5db;
    background:#fff;
}
.auth-plan-option:has(.auth-plan-radio:checked) .auth-plan-option__body{
    border-color:#111827;
    background:#fff;
    box-shadow:0 0 0 2px rgba(17,24,39,.08);
}
.auth-plan-option--featured .auth-plan-option__body{
    border-color:#e8e2db;
    background:linear-gradient(180deg,#faf8f6 0%,#fff 100%);
}
.auth-plan-option--featured:has(.auth-plan-radio:checked) .auth-plan-option__body{
    border-color:#111827;
}
.auth-plan-option__badge{
    font-size:.625rem;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:#6b7280;
    margin-bottom:.1rem;
}
.auth-plan-option__name{
    font-size:.875rem;
    font-weight:700;
    color:#111827;
    line-height:1.2;
}
.auth-plan-option__price{
    font-size:.9375rem;
    font-weight:600;
    color:#111827;
    margin-top:auto;
}
.auth-plan-option__unit{
    font-size:.7rem;
    font-weight:600;
    color:#6b7280;
    margin-left:2px;
}
.auth-plan-option__note{
    font-size:.65rem;
    color:#9ca3af;
    line-height:1.3;
}
.auth-signup-divider{
    height:1px;
    background:linear-gradient(90deg,transparent,#e5e7eb 12%,#e5e7eb 88%,transparent);
    margin:1.25rem 0 1.15rem;
}
.auth-section-label{
    font-size:.6875rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#9ca3af;
    margin:0 0 .85rem;
}
.auth-signup-back{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    margin:0 0 1.1rem;
    padding:0;
    border:none;
    background:none;
    font-size:.8125rem;
    font-weight:600;
    color:#6b7280;
    cursor:pointer;
    font-family:inherit;
    text-decoration:underline;
    text-underline-offset:2px;
}
.auth-signup-back:hover{
    color:#111827;
}
.auth-plan-error{
    font-size:.8125rem;
    font-weight:600;
    color:#b91c1c;
    margin:0 0 .75rem;
}

/* ── Blog detail: reading column + featured image (aligned, not full-bleed banner) ─ */
.sch-blog-article-inner{
    max-width:42rem;
    margin-left:auto;
    margin-right:auto;
}
.sch-blog-featured{
    margin:0 0 1.75rem;
    border-radius:14px;
    overflow:hidden;
    border:1px solid #ececec;
    background:#f9fafb;
}
.sch-blog-featured img{
    width:100%;
    height:auto;
    max-height:min(320px,42vh);
    object-fit:cover;
    display:block;
    vertical-align:middle;
}

/* ── Published blog article body (matches admin TinyMCE structure) ───────── */
.sch-blog-body{
    font-size:1rem;
    line-height:1.75;
    color:#374151;
    word-wrap:break-word;
    overflow-wrap:break-word;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
}
.sch-blog-body > *:first-child{ margin-top:0; }
.sch-blog-body h1{
    font-size:clamp(1.75rem,4vw,2.25rem);
    font-weight:700;
    color:#111827;
    margin:2rem 0 1rem;
    line-height:1.2;
    letter-spacing:-.02em;
}
.sch-blog-body h2{
    font-size:1.5rem;
    font-weight:700;
    color:#111827;
    margin:2rem 0 .75rem;
    line-height:1.3;
    letter-spacing:-.015em;
}
.sch-blog-body h3{
    font-size:1.25rem;
    font-weight:700;
    color:#111827;
    margin:1.75rem 0 .5rem;
    line-height:1.35;
}
.sch-blog-body h4{
    font-size:1.125rem;
    font-weight:700;
    color:#111827;
    margin:1.5rem 0 .5rem;
    line-height:1.4;
}
.sch-blog-body h5,.sch-blog-body h6{
    font-size:1rem;
    font-weight:700;
    color:#111827;
    margin:1.25rem 0 .4rem;
    line-height:1.45;
}
.sch-blog-body p{
    margin:0 0 1rem;
    color:#4b5563;
    line-height:1.75;
}
.sch-blog-body p:last-child{ margin-bottom:0; }
.sch-blog-body ul,.sch-blog-body ol{
    margin:0 0 1.25rem;
    padding-left:1.5rem;
    padding-inline-start:1.5rem;
    color:#4b5563;
    list-style-position:outside;
}
/* Tailwind preflight + some editors set list-style:none on ul/ol — restore markers */
.sch-blog-body ul{
    list-style-type:disc !important;
}
.sch-blog-body ol{
    list-style-type:decimal !important;
}
.sch-blog-body ul ul{
    list-style-type:circle !important;
}
.sch-blog-body ul ul ul{
    list-style-type:square !important;
}
.sch-blog-body ol ol{
    list-style-type:lower-alpha !important;
}
.sch-blog-body li{
    margin-bottom:.4rem;
    line-height:1.65;
}
.sch-blog-body li > p{ margin-bottom:.5rem; }
.sch-blog-body ul ul,.sch-blog-body ol ol,.sch-blog-body ul ol,.sch-blog-body ol ul{
    margin-bottom:.5rem;
    margin-top:.35rem;
}
.sch-blog-body blockquote{
    border-left:4px solid #111827;
    margin:1.5rem 0;
    padding:.75rem 0 .75rem 1.25rem;
    background:rgba(17,24,39,.03);
    border-radius:0 12px 12px 0;
    color:#6b7280;
    font-style:italic;
}
.sch-blog-body blockquote p{
    margin-bottom:.5rem;
    color:#4b5563;
}
.sch-blog-body blockquote p:last-child{ margin-bottom:0; }
.sch-blog-body a{
    color:#111827;
    font-weight:500;
    text-decoration:underline;
    text-underline-offset:2px;
}
.sch-blog-body a:hover{ color:#000; }
.sch-blog-body strong,.sch-blog-body b{ font-weight:700; color:#111827; }
.sch-blog-body em,.sch-blog-body i{ font-style:italic; }
.sch-blog-body u{ text-decoration:underline; }
.sch-blog-body s,.sch-blog-body strike{ text-decoration:line-through; }
.sch-blog-body sub,.sch-blog-body sup{ font-size:.75em; }
.sch-blog-body img{
    max-width:100%;
    height:auto;
    border-radius:12px;
    margin:1.25rem 0;
    display:block;
}
.sch-blog-body figure{ margin:1.5rem 0; }
.sch-blog-body figcaption{
    font-size:.875rem;
    color:#6b7280;
    margin-top:.5rem;
    text-align:center;
    line-height:1.5;
}
.sch-blog-body hr{
    border:0;
    border-top:1px solid #e5e7eb;
    margin:2rem 0;
}
.sch-blog-body table{
    width:100%;
    max-width:100%;
    border-collapse:collapse;
    margin:1.5rem 0;
    font-size:.9375rem;
    table-layout:auto;
}
.sch-blog-body th,.sch-blog-body td{
    border:1px solid #e5e7eb;
    padding:.5rem .75rem;
    text-align:left;
    vertical-align:top;
    color:#374151;
}
.sch-blog-body th{
    background:#f9fafb;
    font-weight:600;
    color:#111827;
}
.sch-blog-body pre,.sch-blog-body code{
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}
.sch-blog-body code{
    background:rgba(17,24,39,.06);
    padding:.12em .35em;
    border-radius:4px;
    font-size:.9em;
    color:#1e293b;
}
.sch-blog-body pre{
    background:#1e293b;
    color:#e2e8f0;
    padding:1rem 1.1rem;
    border-radius:10px;
    overflow-x:auto;
    margin:1.25rem 0;
    font-size:.875rem;
    line-height:1.6;
}
.sch-blog-body pre code{
    background:transparent;
    padding:0;
    color:inherit;
    font-size:inherit;
}
.sch-blog-body iframe{
    max-width:100%;
    margin:1.25rem 0;
    border-radius:8px;
}
.sch-blog-body video{ max-width:100%; height:auto; margin:1.25rem 0; border-radius:12px; }
.sch-blog-body .mce-preview-object,.sch-blog-body .mce-object-iframe{ max-width:100%; }
