/* Scoped overrides only: unedited creator templates keep their own appearance. */
.cfn-added{display:flex;flex-direction:column;gap:12px;position:relative;box-sizing:border-box;padding:22px;margin:16px 0;color:inherit;text-decoration:none;background:var(--cfn-accent,#6b49d8);border-radius:18px;overflow:hidden;min-height:64px}.cfn-added img,.cfn-added video{width:100%;max-height:520px;object-fit:cover;border-radius:inherit}.cfn-added strong{font-size:1.1rem}.cfn-added p{margin:0;font-size:.9rem;line-height:1.6}.cfn-added.cfn-text{background:transparent}.cfn-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cfn-gallery img{aspect-ratio:1;object-fit:cover}.cfn-moved{max-width:100%;box-sizing:border-box}.cfn-moved:not(.cfn-social){flex-basis:100%;min-width:0}.cfn-description{display:block;position:relative;z-index:3;font-size:.85em;line-height:1.5}.cfn-media{display:block;width:100%;object-fit:cover}.cfn-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}.cfn-hero-custom{position:relative;isolation:isolate}.cfn-hero-custom>:not(.cfn-hero-media){z-index:1}.cfn-effect-hover{transition:filter .2s}.cfn-effect-hover:hover{filter:brightness(1.08)}.cfn-effect-glow{box-shadow:0 0 20px color-mix(in srgb,var(--cfn-accent,#8b5cf6) 45%,transparent)!important}.cfn-effect-lift{transition:translate .2s}.cfn-effect-lift:hover{translate:0 -4px}.cfn-effect-pulse{animation:cfn-soft-pulse 4s ease-in-out infinite}@keyframes cfn-soft-pulse{50%{filter:brightness(1.08)}}[data-cfn-selected]{outline:3px solid #9b7bea!important;outline-offset:4px!important}.cfn-age-overlay{position:fixed;inset:0;z-index:2147483647;background:#171321f2;display:grid;place-items:center;padding:24px;color:white;font-family:system-ui}.cfn-age-card{max-width:420px;text-align:center;padding:32px;border:1px solid #ffffff33;border-radius:22px;background:#282133}.cfn-age-card button{background:#8b5cf6;border:0;border-radius:10px;color:white;padding:14px 22px;cursor:pointer;font:inherit}.cfn-age-card a{display:block;color:#cbbcf1;margin:18px}
@media(prefers-reduced-motion:reduce){.cfn-effect-pulse{animation:none}.cfn-effect-hover,.cfn-effect-lift{transition:none}.cfn-effect-lift:hover{translate:none}}
@font-face{font-family:CFNInter;src:url('/fonts/inter.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:CFNPoppins;src:url('/fonts/poppins.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:CFNMontserrat;src:url('/fonts/montserrat.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
.cfn-override-title{display:block;position:relative;z-index:5;padding:12px;color:inherit;font-size:1rem;font-weight:650;text-align:inherit;background:inherit}
.cfn-added.cfn-social{display:inline-flex;align-items:center;justify-content:center;min-height:36px;width:44px;height:44px;padding:0;margin:6px;vertical-align:middle}.cfn-added.cfn-social svg{width:24px;height:24px}
.cfn-verified{display:inline-flex!important;align-items:center;justify-content:center;width:1.05em;height:1.05em;border-radius:50%;background:#169fe5!important;color:white!important;font:bold .65em system-ui;vertical-align:middle;line-height:1}.cfn-profile-picture{display:block;width:112px;height:112px;object-fit:cover;border-radius:50%;margin:20px auto}.cfn-page-background{position:fixed!important;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}.cfn-has-background>main,.cfn-has-background>#app{position:relative;z-index:1;background:transparent!important}.cfn-section-media{position:relative;isolation:isolate}.cfn-section-background{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;pointer-events:none}
.cfn-preview-drag{position:absolute!important;top:6px!important;left:6px!important;width:28px!important;height:28px!important;min-height:0!important;padding:0!important;margin:0!important;border:1px solid white!important;border-radius:7px!important;background:#7445d6!important;color:white!important;font:22px/1 system-ui!important;z-index:2147483646!important;cursor:grab;touch-action:none;opacity:0;pointer-events:auto;box-shadow:0 2px 8px #0004}.cfn-preview-editable:hover>.cfn-preview-drag,[data-cfn-selected]>.cfn-preview-drag,.cfn-preview-drag:focus{opacity:1}.cfn-preview-editable:has(>.cfn-preview-drag:active){outline:2px dashed #9b7bea}.cfn-drop-before{box-shadow:0 -5px 0 #9b7bea!important}.cfn-drop-after{box-shadow:0 5px 0 #9b7bea!important}
.cfn-social-group{display:flex;gap:inherit;align-items:center;flex-wrap:wrap;justify-content:inherit}.cfn-social-group> a{flex-shrink:0}.cfn-carousel{background:transparent;color:inherit;display:block;padding:12px;max-width:100%;overflow:hidden;box-sizing:border-box}.cfn-carousel-viewport{overflow:hidden;touch-action:pan-y;position:relative}.cfn-carousel-track{display:flex;gap:var(--cfn-slide-gap,12px);position:relative;transition:transform .25s ease}.cfn-carousel-slide{position:relative;flex:0 0 100%;min-width:0;box-sizing:border-box;display:block;color:inherit;text-decoration:none;overflow:hidden}.cfn-carousel-slide .cfn-slide-primary{display:block;width:100%;height:auto;max-height:650px;border-radius:inherit}.cfn-carousel[data-cfn-ratio=square] .cfn-slide-primary{aspect-ratio:1; height:100%;max-height:none}.cfn-carousel[data-cfn-ratio=portrait] .cfn-slide-primary{aspect-ratio:3/4;height:100%;max-height:none}.cfn-carousel[data-cfn-ratio=landscape] .cfn-slide-primary{aspect-ratio:16/9;height:100%;max-height:none}.cfn-carousel[data-cfn-layout=rounded] .cfn-carousel-viewport{border-radius:24px}.cfn-carousel[data-cfn-layout=edge]{padding:0}.cfn-carousel-controls{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px}.cfn-carousel-controls button{font:14px system-ui;background:#ffffff24;border:1px solid #a99ab255;color:inherit;padding:8px 12px;border-radius:20px;cursor:pointer}.cfn-carousel-controls button.active{color:#9b7bea;background:#9b7bea33}.cfn-carousel-slide>strong,.cfn-carousel-slide>p{display:block;padding:8px 12px;margin:0}.cfn-carousel .cfn-preview-drag{z-index:30!important}.cfn-profile-picture,video[data-cfn-avatar]{object-fit:cover} @media(prefers-reduced-motion:reduce){.cfn-carousel-track{transition:none}}

/* Crop windows clip only their own media, never the surrounding CTA or focus ring. */
.cfn-crop-frame{box-sizing:border-box;isolation:isolate;min-width:0}.cfn-crop-frame.cfn-page-background{position:fixed!important}.cfn-crop-frame>.cfn-crop-source{display:block!important}.cfn-gallery>.cfn-crop-frame{width:100%;aspect-ratio:1}.cfn-crop-frame[data-cfn-avatar]{max-width:100%}
:root{--cfn-space-xs:4px;--cfn-space-sm:8px;--cfn-space-md:16px;--cfn-space-lg:24px;--cfn-space-xl:32px}
.cfn-hover-safe{padding-top:var(--cfn-hover-padding,var(--cfn-space-sm))!important}.cfn-interactive-card:focus-visible{outline:3px solid currentColor;outline-offset:3px;z-index:2}.cfn-interactive-card:hover{z-index:2}.cfn-social-group>a:focus-visible{outline-offset:2px}.cfn-social-group{padding-block:4px;box-sizing:border-box}.cfn-gallery,.cfn-carousel,.cfn-social-group{min-width:0}.cfn-carousel-controls button:focus-visible{outline:2px solid currentColor;outline-offset:2px}

/* A visual card owns its bounds; media never contributes intrinsic flow size. */
.cfn-media-surface{position:relative!important;isolation:isolate;overflow:hidden!important;min-width:0;box-sizing:border-box}
.cfn-media-surface.cfn-added{min-height:180px;justify-content:flex-end}
.cfn-media-surface>.cfn-media-layer{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;overflow:hidden!important;border-radius:inherit;z-index:0!important;pointer-events:none}
.cfn-media-layer>.cfn-surface-source,.cfn-media-layer>.cfn-crop-frame,.cfn-media-layer .cfn-crop-source{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border-radius:0!important;aspect-ratio:auto!important;object-fit:var(--cfn-media-fit,cover)!important;object-position:var(--cfn-media-position,50% 50%)}
.cfn-media-surface>.cfn-media-overlay{position:absolute!important;inset:0;z-index:1!important;pointer-events:none;border-radius:inherit;background:linear-gradient(transparent 25%,rgba(0,0,0,.72))}
.cfn-media-surface[data-media-overlay=none]>.cfn-media-overlay{background:none}
.cfn-media-surface[data-media-overlay=light]>.cfn-media-overlay{background:#0002}
.cfn-media-surface[data-media-overlay=medium]>.cfn-media-overlay{background:#0006}
.cfn-media-surface[data-media-overlay=dark]>.cfn-media-overlay{background:#000a}
.cfn-media-surface[data-media-overlay=gradient-full]>.cfn-media-overlay{background:linear-gradient(#0006,#000a)}
.cfn-media-surface>:not(.cfn-media-layer):not(.cfn-media-overlay){z-index:2}
.cfn-media-surface>.cta-copy{flex:1;min-width:0}
.cfn-media-surface .cfn-override-title{z-index:3}
.cfn-media-surface:not([data-media-overlay=none]){color:#fff}
.cfn-media-contained>.cfn-media-layer{position:relative!important;inset:auto!important;min-height:120px;aspect-ratio:16/9;height:auto!important;flex:0 0 100%;width:100%!important}
.cfn-media-contained{display:flex!important;flex-wrap:wrap}
.cfn-media-contained>.cfn-media-overlay{display:none}
.cfn-gallery>img,.cfn-gallery>video,.cfn-gallery>.cfn-crop-frame{display:block!important;width:100%!important;height:auto!important;min-width:0;aspect-ratio:1!important;object-fit:var(--cfn-media-fit,cover);overflow:hidden;border-radius:inherit}
.cfn-carousel-slide.cfn-media-surface{aspect-ratio:var(--cfn-slide-ratio,3/4);padding:24px;display:flex;flex-direction:column;justify-content:flex-end;min-height:0}
.cfn-carousel[data-cfn-ratio=square]{--cfn-slide-ratio:1}
.cfn-carousel[data-cfn-ratio=landscape]{--cfn-slide-ratio:16/9}
.cfn-carousel-slide.cfn-media-surface>strong,.cfn-carousel-slide.cfn-media-surface>p{padding:4px 0}

.cfn-media-surface .cfn-replaced-placeholder{visibility:hidden!important}
.cfn-template-slot>.cfn-template-art{visibility:hidden!important}

/* Custom profile assets replace the template slot without adding flow height. */
.cfn-profile-slot{overflow:hidden!important;isolation:isolate}

.cfn-profile-slot>.cfn-profile-default{visibility:hidden!important}
.cfn-profile-slot:before,.cfn-profile-slot:after{visibility:hidden!important}
.cfn-profile-slot>.cfn-profile-slot-source,.cfn-profile-slot>.cfn-crop-frame{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;aspect-ratio:auto!important;object-fit:cover!important;border-radius:inherit!important;z-index:0}

/* A header is a group background: its flow box includes all nested blocks. */
.cfn-header-background{position:relative!important;isolation:isolate;overflow:hidden!important}
.cfn-header-background>.cfn-header-media-layer,.cfn-header-background>.cfn-header-media-shade{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden;pointer-events:none;border-radius:inherit;z-index:0!important}
.cfn-header-media-layer>.cfn-header-media,.cfn-header-media-layer>.cfn-crop-frame,.cfn-header-media-layer .cfn-crop-source{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important;margin:0!important;padding:0!important}
.cfn-header-background>.cfn-header-media-shade{z-index:1!important;background:linear-gradient(#0001 15%,#0005 50%,#000b 100%)}
.cfn-header-background>.cfn-header-content{z-index:2}
.cfn-header-background .cfn-header-default-media{visibility:hidden!important;pointer-events:none}
.cfn-header-background :is(.hero-copy,.hero-content,.profile-copy,.profile-content,.profile-info,.profile-intro){background:transparent!important}
.cfn-header-background :is([data-cfn-title],[data-cfn-subtitle]){text-shadow:none}
.cfn-header-nested{box-sizing:border-box;max-width:100%}
/* Shared media proportions; templates retain fonts, colors and decoration. */
.cfn-header-background>.cfn-header-media-shade{background:linear-gradient(to bottom,transparent 30%,color-mix(in srgb,var(--cfn-theme) 15%,transparent) 50%,var(--cfn-theme) var(--cfn-media-split,80%),var(--cfn-theme) 100%)!important}
.cfn-header-background :is([data-cfn-title],[data-cfn-subtitle]){text-shadow:none}
.cfn-header-background .cfn-group-children{width:100%}
.cfn-media-card>.cfn-media-layer{border-radius:0!important}
.cfn-media-card>.cfn-media-layer>.cfn-surface-source{width:100%!important;height:100%!important;max-width:none!important;object-fit:var(--cfn-media-fit,cover)!important}
.cfn-media-card>.cfn-theme-transition{position:absolute!important;inset:0!important;pointer-events:none;z-index:1;background:linear-gradient(to bottom,transparent 35%,color-mix(in srgb,var(--cfn-theme) 12%,transparent) 55%,var(--cfn-theme) var(--cfn-media-split,80%),var(--cfn-theme) 100%)}
.cfn-media-card>.cfn-card-copy{position:absolute!important;inset:auto 0 0!important;width:100%!important;min-height:20%;box-sizing:border-box;padding:14px 20px!important;display:flex!important;flex-direction:column;justify-content:center;gap:4px;z-index:3!important;background:transparent!important}
.cfn-card-copy :is([data-cfn-label],[data-cfn-support],.cfn-override-title,.cfn-description){position:static!important;inset:auto!important;margin:0!important;max-width:100%;color:inherit}
.cfn-card-copy :is(.arrow,.cta-arrow){position:absolute!important;right:16px!important;bottom:16px!important}
[data-cfn-content][hidden],[data-cfn-label][hidden],[data-cfn-support][hidden],[data-cfn-title][hidden],[data-cfn-subtitle][hidden]{display:none!important}
.cfn-group-children{min-width:0}

.cfn-media-card>.cfn-card-copy>.slide-caption{position:static!important;padding:0!important;min-height:0!important;width:100%;background:transparent!important}
.cfn-header-background::before,.cfn-header-background::after{display:none!important}
.cfn-header-background>[hidden]{display:none!important}
.cfn-media-card{display:block!important;min-height:120px}
.cfn-gallery-item{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:3/4;min-width:0;overflow:hidden;border-radius:16px;padding:12px;box-sizing:border-box}
.cfn-gallery-item>.cfn-slide-primary{width:100%;height:100%;object-fit:cover}

/* Header proportions affect the overlay only; native template flow sets its size. */
.cfn-header-background{overflow-anchor:none}
.cfn-header-background>.cfn-header-media-shade{background:linear-gradient(to bottom,transparent 35%,color-mix(in srgb,var(--cfn-theme) 12%,transparent) 62%,var(--cfn-theme) var(--cfn-media-split,80%),var(--cfn-theme) 100%)!important}
/* Universal primitives are opt-in; original creator markup keeps its design. */
.cfn-primitive{box-sizing:border-box;min-width:0;position:relative;isolation:isolate;max-width:100%;color:inherit;text-decoration:none;overflow-wrap:anywhere}
.cfn-layout-container{position:relative;isolation:isolate;min-width:0;padding:0;border:0;background:transparent;overflow:hidden}
.cfn-layout-container>.cfn-added{margin:0;min-width:0;max-width:100%}
.cfn-primitive.cfn-heading,.cfn-primitive.cfn-decoration{display:block;margin:0;padding:0;border:0;background:transparent;min-height:0}
.cfn-primitive.cfn-heading{font-size:36px;line-height:1.15}.cfn-decoration{font-size:40px;pointer-events:none}.cfn-preview-editable.cfn-decoration{pointer-events:auto}
.cfn-primitive.cfn-media{min-height:180px;padding:0;overflow:hidden}
.cfn-position-host{position:relative!important;isolation:isolate;overflow:hidden!important}
.cfn-section-background{position:absolute!important;inset:0;z-index:-1;pointer-events:none;overflow:hidden;border-radius:inherit}.cfn-section-background>img,.cfn-section-background>video{width:100%;height:100%;object-fit:cover}
.cfn-carousel-slide{flex-basis:var(--cfn-slide-width,100%)!important}
[data-cfn-locked=true]>.cfn-preview-drag{display:none!important}
.cfn-primitive [hidden]{display:none!important}

/* One native scroll surface for template sliders and newly authored carousels. */
[data-cfn-carousel-track]{position:relative;overflow-x:auto!important;transform:none!important;transition:none!important;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
[data-cfn-carousel-track]::-webkit-scrollbar{display:none}
[data-cfn-carousel-track]> *{scroll-snap-align:start}
.cfn-carousel-viewport:has([data-cfn-carousel-track]),.carousel-viewport:has([data-cfn-carousel-track]){touch-action:auto}
