.c2-welcome{position:relative;isolation:isolate;overflow:hidden;min-height:calc(100svh - 150px);padding:42px 24px 48px;display:grid;place-items:center;text-align:center;background:#fff}
.c2-welcome::before{content:"";position:absolute;z-index:-1;width:min(820px,115vw);aspect-ratio:1;left:50%;top:45%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#eee4fa 0%,#f8f4fc 39%,transparent 69%);pointer-events:none}
.c2-welcome-inner{width:100%;max-width:1200px;margin:auto}
.c2-welcome-logo{width:min(76vw,1020px);max-width:100%;margin:0 auto 30px}
.c2-welcome-mark{display:block;width:100%;height:auto;overflow:visible;transform:translate(var(--welcome-dx,0px),var(--welcome-dy,0px));transition:transform .32s cubic-bezier(.2,.7,.25,1)}
.c2-welcome h1{font:400 clamp(35px,4.8vw,61px)/1.08 var(--serif);letter-spacing:-.045em;color:#2b2440;margin:0 auto 20px;max-width:730px}
.c2-welcome h1 em{color:#7952ad}
.c2-welcome-copy{max-width:560px;margin:0 auto 22px;color:#665e72;font-size:17px;line-height:1.75}
.c2-welcome-stores{font-size:12px;color:#665e72;margin:17px 0 0}
.c2-welcome .eyebrow{font-size:10px;color:#7952ad;letter-spacing:.14em;margin:0 0 18px}
.c2-welcome-scroll{margin:20px 0 0;font-size:12px;color:#7952ad}
.cocon2 .c2-header{position:sticky;top:0;z-index:45;background:#ffffffed;backdrop-filter:blur(12px)}

.c2-hero#apercu{scroll-margin-top:105px}
.c2-hero h2{font-size:clamp(55px,5.7vw,78px);line-height:1.02;margin:18px 0 25px;letter-spacing:-.045em}
.c2-family-example{margin:30px 0;padding:27px;background:#f5effa;border:1px solid #e6daf1;border-radius:24px}
.c2-family-example h3{font:400 29px/1.2 var(--serif);margin:0 0 15px;color:#2b2440}
.c2-family-example dl{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:20px 0}
.c2-family-example dl>div{border-top:1px solid #d8c8e5;padding-top:13px}
.c2-family-example dt{font-weight:700;color:#563576;line-height:1.5}
.c2-family-example dd{margin:8px 0 0;color:#665e72;font-size:14px;line-height:1.7}
.c2-family-example p{margin:12px 0;font-size:15px;line-height:1.8}
.c2-stats-plans{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}
.c2-stats-plans>a{border:1px solid #76618e;border-radius:16px;padding:10px 14px;font-size:12px;color:inherit;text-decoration:none;line-height:1.7}
.c2-stats-plans strong{display:block;color:#e6d3ff}
.stats-plan-label{font-size:11px;font-weight:600;letter-spacing:.04em;color:#ded0f0;margin:0 0 12px}
.c2-host-contact{font-size:14px;line-height:1.8;color:#665e72}
@media(prefers-reduced-motion:no-preference){.c2-welcome-mark .arrival-seal{animation-duration:1400ms;animation-timing-function:cubic-bezier(.4,0,.2,1)}.c2-welcome-mark .arrival-word{animation-duration:1900ms;animation-delay:150ms;animation-timing-function:cubic-bezier(.4,0,.2,1)}.c2-welcome h1,.c2-welcome-copy,.c2-welcome .button,.c2-welcome-stores{animation:cocon-content-in .85s cubic-bezier(.19,.75,.25,1) .2s both}}
@media(max-width:760px){.c2-welcome{min-height:calc(100svh - 130px);padding:38px 24px}.c2-welcome-logo{margin-bottom:30px;width:82vw;max-width:400px}.c2-welcome h1{font-size:clamp(35px,8vw,48px)}.c2-welcome-copy{font-size:15px;max-width:400px}.c2-hero h2{font-size:clamp(43px,10vw,63px)}.c2-family-example{padding:22px}.c2-family-example dl{grid-template-columns:1fr;gap:15px}}
@media(prefers-reduced-motion:reduce){.c2-welcome-mark{transform:none;transition:none}}
