/* Opt-in, individually reviewed family pages. */
body[data-polish] .brand81,body[data-polish] .fs-brand small,body[data-polish] .pf-menu-apps strong small,body[data-polish] .fs-app-name small,body[data-polish] .polish-81{color:var(--fs-accent)!important}
body[data-polish] main>.polish-hero{background:var(--polish-hero)!important;background-image:none!important;color:var(--polish-hero-ink)!important;max-width:none!important;width:100%!important;padding-inline:var(--fs-inset)!important;box-sizing:border-box!important}
body[data-polish] .polish-hero :is(h1,h1 em,h1 span,h1 strong,.intro,.lead,.hero-copy>p,.family-new-copy>p,.eyebrow,.kicker){color:var(--polish-hero-ink)!important;-webkit-text-fill-color:var(--polish-hero-ink)!important;text-shadow:none!important}
body[data-polish] .polish-hero h1{-webkit-text-stroke:0!important;background:none!important}
body[data-product-page][data-polish] main .polish-button{min-height:48px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:14px!important;padding:14px 22px!important;border:1px solid currentColor!important;border-radius:28px!important;line-height:1.3!important;text-decoration:none!important;background:none!important;color:var(--polish-button-ink)!important;box-sizing:border-box!important;transition:background .2s,translate .2s!important}
body[data-product-page][data-polish] main .polish-button::before,body[data-product-page][data-polish] main .polish-button::after{content:none!important}
body[data-product-page][data-polish] main .polish-button svg{flex:none;width:20px!important;height:20px!important;color:inherit!important}
body[data-product-page][data-polish] main .polish-button-primary{background:var(--polish-button-bg)!important;color:var(--polish-button-fg)!important;border-color:var(--polish-button-bg)!important}
body[data-product-page][data-polish] main .polish-button:hover{translate:0 -2px}body[data-product-page][data-polish] main .polish-button:focus-visible{outline:2px solid currentColor;outline-offset:4px}
body[data-polish] .polish-card{transition:translate .25s,box-shadow .25s,border-color .25s!important}
body[data-polish] .polish-card:hover,body[data-polish] .polish-card:focus-within{translate:0 -5px;box-shadow:0 12px 26px #0002!important;border-color:var(--fs-accent)!important}
body[data-polish] .fs-live-seam{height:clamp(100px,10vw,155px)!important;border:0!important}
body[data-polish] main>section{border-top:0!important;border-bottom:0!important}
body[data-polish=janopulse] .pulse-marquee .pf-pulse-band .marquee-track{transform:translateX(var(--polish-band-x,0px))!important;top:0!important;height:100%!important;display:flex!important;align-items:center!important;animation:none!important}
body[data-polish] .polish-band-track{animation:none!important;transform:translateX(var(--polish-band-x,0px))!important;will-change:transform}
body[data-polish] .pf-motion-object,body[data-polish] .df-scene-orbit{animation:none!important;transition:filter .25s,translate .18s!important}
body[data-polish] .df-panel,body[data-polish] .pulse-object *{backface-visibility:hidden}
body[data-polish] .polish-language{font:600 12px system-ui!important;border:1px solid var(--fs-line)!important;background:var(--fs-bg)!important;color:var(--fs-ink)!important;border-radius:50%!important;width:44px!important;height:44px!important;padding:5px!important}
@media(prefers-reduced-motion:reduce){body[data-polish] .polish-card,body[data-product-page][data-polish] main .polish-button{transition:none!important;translate:none!important}}

body[data-polish]{--fs-accent:var(--polish-accent)!important}body[data-polish] .polish-hero .public-repository-link{color:var(--polish-hero-ink)!important;border-color:currentColor!important}

body[data-product-page][data-polish] main a.polish-button:not(.polish-button-primary){border-color:var(--polish-button-ink)!important}body[data-product-page][data-polish] main a.polish-button svg,body[data-product-page][data-polish] main a.polish-button svg *{color:inherit!important;stroke:currentColor!important}

body[data-polish] .df-window-grid b{color:var(--df-ink)!important;-webkit-text-fill-color:var(--df-ink)!important}body[data-polish] .df-window-bar span{color:var(--df-ink)!important}

body[data-polish] main{width:100%!important;max-width:none!important;padding-inline:0!important;margin-inline:0!important}body[data-polish=linqo] .polish-hero .bs-object{filter:brightness(.55) saturate(.8)!important}

body[data-polish] select.polish-language{appearance:auto!important;cursor:pointer!important}

@media(max-width:850px){body[data-polish=linqo] main>.polish-hero{display:flex!important;flex-direction:column!important;gap:24px!important;padding-block:50px!important}body[data-polish=linqo] .polish-hero>:is(h1,.intro,.eyebrow,.actions,.status){width:100%!important;max-width:none!important;grid-column:auto!important;grid-row:auto!important;margin:0!important}body[data-polish=linqo] .polish-hero h1{font-size:clamp(44px,12vw,70px)!important}body[data-polish=linqo] .polish-hero .brand-stage{position:relative!important;inset:auto!important;grid-column:auto!important;grid-row:auto!important;width:100%!important;height:320px!important;margin:0!important;order:6!important}body[data-polish=linqo] .polish-hero .route{order:7!important;max-width:100%!important}.polish-hero .actions{flex-wrap:wrap!important}}

body[data-polish] .polish-hero .polish-81{background:#10151b;border-radius:3px;padding:1px 3px;-webkit-text-fill-color:var(--fs-accent)!important}

body[data-polish] .bs-object.pf-motion-object{transform:rotateX(var(--family-rx,-12deg)) rotateY(var(--family-ry,-16deg))!important;animation:none!important}

@media(min-width:361px) and (max-width:430px){body[data-polish=fynnguard] .fs-brand{font-size:10.5px!important;gap:4px!important}body[data-polish=fynnguard] .fs-brand .fs-app-mark{width:22px!important;height:22px!important}}

/* 09.10: approved FYNNET/FYNNGUARD content cap; preserve all three references. */
body.fs-family[data-polish]:not([data-polish=fynnet]):not([data-polish=fynnguard]):not([data-polish=taktivo]){--content-inset:max(clamp(20px,5vw,96px),calc((100vw - 1520px)/2))}
body.fs-family[data-polish]:not([data-polish=fynnet]):not([data-polish=fynnguard]):not([data-polish=taktivo]) main>section:not(.app-directory){padding-inline:var(--content-inset)!important;box-sizing:border-box!important}
body.fs-family[data-polish]:not([data-polish=fynnet]):not([data-polish=fynnguard]):not([data-polish=taktivo]) main>section:has(>.wrap):not(.wrap){padding-inline:0!important}
body.fs-family[data-polish]:not([data-polish=fynnet]):not([data-polish=fynnguard]):not([data-polish=taktivo]) main>section:not(.wrap)>.wrap{width:calc(100% - 2*var(--content-inset))!important;max-width:1520px!important;margin-inline:auto!important;padding-inline:0!important;box-sizing:border-box!important}
/* Band overlays the actual section boundary: zero separate background/flow area. */
html body.fs-family[data-polish] main :is(.df-band-bridge,.jano-band-bridge,.pulse-marquee){position:relative!important;height:0!important;min-height:0!important;padding:0!important;margin:0!important;background:none!important;border:0!important;overflow:visible!important;z-index:4;--seam-band-height:clamp(88px,6vw,160px)}
html body.fs-family[data-polish] main :is(.df-band-bridge,.jano-band-bridge,.pulse-marquee)::before,html body.fs-family[data-polish] main :is(.df-band-bridge,.jano-band-bridge,.pulse-marquee)::after{content:none!important}
html body.fs-family[data-polish] main :is(.df-band-bridge,.jano-band-bridge,.pulse-marquee)>:is(.df-band,.jano-angled-band,.pf-pulse-band){position:absolute!important;top:calc(var(--seam-band-height)/-2)!important;height:var(--seam-band-height)!important;margin:0!important;width:104%!important;left:-2%!important;overflow:hidden!important}
html body.fs-family[data-polish] main :is(.df-band-track,.df-band-copy,.pf-pulse-band .marquee-track){height:var(--seam-band-height)!important;align-items:center!important}
html body.fs-family[data-polish] main .jano-band-bridge>.jano-angled-band{padding-block:0!important;display:flex!important;align-items:center!important}
/* Keep section text clear of the overlay, including the mobile upper edge. */
html body.fs-family[data-polish] main :is(.df-band-bridge,.jano-band-bridge,.pulse-marquee)+section{padding-top:max(80px,7vw)!important}

html:has(body[data-polish]),body.fs-family[data-polish]{overflow-x:clip!important}
