@font-face {
  font-family: Fredoka;
  src: url('/assets/fonts/fredoka-variable.woff2') format('woff2'),url('/assets/fonts/fredoka-variable.ttf') format('truetype');
  font-weight: 300 700;
  font-display: swap;
}
:root { --night: #0b101a; --mint-light: #b9f9dc; --lilac-light: #cec3ff; --dawn: #f7f8f2; }
h1,h2,h3 { font-weight: 600; }
.site-header { height: 84px; background: var(--night); color: #f7faf7; border-color: #ffffff12; }
.site-header .wordmark { font-family: Fredoka, var(--sans); font-weight: 600; font-size: 39px; letter-spacing: -1.8px; gap: 0; }
.site-header .wordmark-to { color: var(--mint-light); font-weight: 600; }
.wordmark-dot { color: #f4bde2; display: inline-block; transform-origin: center bottom; }
.playful-wordmark:hover .wordmark-dot { animation: hello-dot .65s ease; }
.site-header nav a { color: #bec7d1; font-size: 12px; }
.site-header nav a:hover,.site-header nav a[aria-current] { color: #fff; }
.site-header nav a[aria-current]::after { background: var(--mint-light); }
.site-header .header-contact { border-color: #ffffff35; border-radius: 99px; color: #fff; }
.site-header .header-contact:hover { background: var(--mint-light); color: var(--night); }
.launch-notice { background: #d9efe4; color: #254f42; font-size: 11px; line-height: 1.6; }
.launch-notice>.shell { display: flex; align-items: center; gap: 12px; min-height: 42px; padding-block: 10px; }
.launch-notice a { margin-left: auto; white-space: nowrap; border-bottom: 1px solid #38695560; }
.launch-notice .status-dot { width: 6px; height: 6px; }
.hero-playful { padding-top: 64px; color: #f6f9fa; background: var(--night); position: relative; overflow: hidden; isolation: isolate; }
.hero-playful::before { background: linear-gradient(180deg,#0b101ae6,#0b101af5),url('/assets/original/2025/10/background-1.jpg') center/cover; opacity: 1; }
.hero-lights { position: absolute; inset: 0; pointer-events: none; overflow: hidden; z-index: -1; }
.light-orb { position: absolute; border-radius: 50%; filter: blur(75px); opacity: .24; animation: grace-drift 13s ease-in-out infinite alternate; }
.orb-one { width: 550px; height: 550px; right: 5%; top: 10%; background: #259883; }
.orb-two { width: 430px; height: 430px; right: 29%; bottom: -230px; background: #8466bc; animation-delay: -5s; }
.hero-playful .hero-grid { grid-template-columns: 1fr 1fr; gap: 74px; position: relative; }
.hero-playful .hero-copy { padding-block: 15px 45px; }
.hero-playful .eyebrow { color: #add5c6; font-size: 10px; letter-spacing: .13em; }
.hero-playful .status-dot { background: var(--mint-light); box-shadow: 0 0 16px #b9f9dc70; }
.hero-playful .hero-copy h1 { font-size: clamp(58px,5.3vw,82px); line-height: 1.015; letter-spacing: -.068em; max-width: 730px; }
.hero-copy h1>span { display: block; }
.hero-light-text { color: var(--mint-light); }
.hero-lead { color: #e1e8ea; font-size: 19px; line-height: 1.5; letter-spacing: -.02em; margin-top: 28px; }
.hero-original { font-size: 12px; color: #aab9c1; line-height: 1.8; max-width: 440px; margin-top: 20px; }
.hero-actions { display: flex; align-items: center; gap: 28px; margin-top: 28px; flex-wrap: wrap; }
.hero-playful .hero-copy .button { margin-top: 0; }
.button-glow { color: #122f27; background: var(--mint-light); border-radius: 99px; box-shadow: 0 0 35px #b9f9dc10; font-weight: 600; }
.button-glow:hover { background: #e5fff1; box-shadow: 0 0 35px #b9f9dc30; }
.hero-actions>.text-link { color: #d3dfdf; font-size: 11px; gap: 18px; border-color: #b9f9dc50; }
.hero-launch { color: #92a7ad; font-size: 10px; max-width: 450px; margin-top: 23px; line-height: 1.7; }
.hero-launch strong { color: #cfe9df; }
.launch-star { color: #f4bde2; margin-right: 6px; }
.hero-product { height: 600px; position: relative; min-width: 0; }
.product-halo { position: absolute; width: 480px; height: 480px; border-radius: 50%; border: 1px solid #9ae7c926; top: 55px; left: 50%; transform: translateX(-50%); box-shadow: 0 0 90px #69d3a616,inset 0 0 100px #9ae7c90b; }
.product-halo::before { content: ''; position: absolute; inset: 32px; border: 1px dashed #d3ccff28; border-radius: 50%; }
.hero-phone { position: absolute; width: 255px; height: auto; filter: drop-shadow(0 25px 30px #0007); will-change: transform; }
.hero-phone-back { left: 8%; top: 75px; transform: rotate(-11deg); animation: phone-breathe-back 8s ease-in-out infinite; }
.hero-phone-front { left: 43%; top: 35px; transform: rotate(9deg); animation: phone-breathe-front 8s ease-in-out infinite; animation-delay: -4s; }
.floating-note { position: absolute; z-index: 3; border: 1px solid #ffffff22; border-radius: 99px; padding: 10px 16px; background: #1d3031ee; font-size: 11px; box-shadow: 0 12px 30px #0003; color: #e3f4e9; display: flex; gap: 9px; align-items: center; }
.note-top { top: 38px; left: 0; transform: rotate(-6deg); }
.note-top>span { font-size: 19px; color: var(--lilac-light); }
.note-bottom { bottom: 66px; right: 0; transform: rotate(5deg); }
.note-heart { color: #f6b2d7; font-size: 23px; line-height: 1; }
.hero-product-caption { position: absolute; bottom: 22px; left: 0; right: 0; text-align: center; color: #758e91; font-size: 8px; letter-spacing: .11em; }
.little-spark { position: absolute; color: #d6c8ff; font-size: 38px; opacity: .55; }
.spark-one { left: 49%; top: 60px; }
.spark-two { right: 4%; bottom: 170px; font-size: 19px; color: #b9f9dc; }
.hero-family { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 26px 0; border-top: 1px solid #ffffff15; color: #9eafb5; font-size: 11px; }
.hero-family>a { color: #dbe4e2; display: inline-flex; gap: 15px; align-items: center; }
.smile-mark { color: #f4bde2; font-size: 33px; line-height: .5; transform: rotate(-8deg); }
.diagnosis-section { background: linear-gradient(180deg,#0b101a 0%,#15182b 47%,#253741 72%,#c7d9d2 100%); color: #fff; padding-top: 95px; padding-bottom: 0; position: relative; }
.diagnosis-intro { text-align: center; }
.diagnosis-intro>.eyebrow { justify-content: center; color: #b5bfd4; font-size: 10px; }
.diagnosis-intro>h2 { font-size: clamp(43px,4.6vw,71px); letter-spacing: -.06em; line-height: 1.06; font-weight: 600; }
.soft-light { color: var(--lilac-light); }
.diagnosis-number { display: flex; justify-content: center; align-items: baseline; gap: 25px; font-size: clamp(125px,15vw,225px); line-height: 1; letter-spacing: -.08em; font-weight: 600; color: #e5fff0; margin-top: 42px; font-variant-numeric: tabular-nums; }
.diagnosis-unit { font-size: clamp(28px,3.9vw,57px); letter-spacing: -.055em; }
.diagnosis-explanation { color: #b1bfd2; font-size: 14px; line-height: 1.8; margin-top: 24px; }
.diagnosis-timeline { list-style: none; display: grid; grid-template-columns: repeat(4,1fr); padding: 0; margin: 70px 0 0; text-align: left; }
.diagnosis-timeline li { position: relative; border-top: 1px solid #bfd9ec44; padding: 29px 24px 0 0; }
.timeline-point { position: absolute; top: -5px; left: 0; width: 9px; height: 9px; background: #9cabd0; border-radius: 50%; box-shadow: 0 0 18px #bec6ff40; }
.diagnosis-timeline li:last-child .timeline-point { background: #b9f9dc; box-shadow: 0 0 25px #b9f9dc90; }
.diagnosis-timeline small { color: #abbccd; font-size: 8px; letter-spacing: .09em; }
.diagnosis-timeline h3 { margin-top: 15px; font-size: 30px; color: #f6f9ff; }
.diagnosis-timeline p { font-size: 12px; margin-top: 10px; color: #bbcad6; }
.diagnosis-source { color: #b9c7d2; font-size: 10px; line-height: 1.85; max-width: 850px; margin: 33px auto 0; }
.diagnosis-source a { color: #e1efe5; text-decoration: underline; text-underline-offset: 3px; }
.journey-dawn { max-width: 780px; margin: 80px auto 0; padding: 55px 0 75px; color: #173e38; }
.journey-dawn>span { font-size: 27px; display: inline-block; margin-bottom: 18px; }
.journey-dawn h3 { font-size: clamp(36px,4.2vw,60px); letter-spacing: -.055em; }
.journey-dawn>p { max-width: 570px; margin: 23px auto 0; font-size: 14px; line-height: 1.8; }
.journey-dawn .text-link { margin-top: 22px; }
.mobile-section { background-color: #edf4ec; background-image: linear-gradient(#edf4eced,#f5f6efe6),url('/assets/original/2025/10/background.jpg'); padding-top: 85px; }
.mobile-copy h2 { font-family: var(--sans); font-size: clamp(44px,4.2vw,65px); letter-spacing: -.06em; }
.mobile-copy h2 em { font-family: var(--sans); font-style: normal; color: #39866c; }
.mobile-visual .phone-orbit { background: linear-gradient(140deg,#d6cafa,#c3ead7); }
.screen-gallery img { transition: transform .35s; }
.screen-gallery img:hover { transform: translateY(-7px) rotate(2deg); }
.ecosystem-section { padding-top: 95px; }
.ecosystem-section h2 { font-family: var(--sans); letter-spacing: -.055em; }
.product-grid { gap: 25px; }
.product-card { border-radius: 23px; }
.product-card-top { padding-top: 24px; }
.product-art { height: 290px; }
.product-copy { min-height: 162px; }
.venture-status { display: block; font-size: 7px; letter-spacing: .09em; color: #587168; margin-top: 16px; }
.year-card { background: #e7e0d0; }
.year-art { margin-inline: 14px; }
.year-art img { width: 100%; height: 100%; object-fit: contain; border-radius: 12px; }
.rx-card { background: #e9e2f2; }
.data-card { background: #eee9df; }
.type-art>span { font-family: Fredoka,var(--sans); font-size: 95px; color: #7b6296; position: relative; }
.data-card .type-art>span { color: #587b6f; font-size: 69px; }
.type-spark { font-size: 29px; position: absolute; right: -28px; top: -5px; transform: rotate(10deg); }
.wealth-section { background: #111b1e; color: #f5f3e9; position: relative; }
.wealth-grid { display: grid; grid-template-columns: 1fr 1.2fr; align-items: center; gap: 75px; }
.wealth-copy .eyebrow { color: #beae83; font-size: 9px; }
.wealth-copy h2 { font-size: clamp(43px,4.3vw,63px); letter-spacing: -.055em; }
.gold-light { color: #e5bf80; }
.wealth-copy h3 { font-size: 25px; color: #e6d3ad; margin-top: 32px; }
.wealth-subtitle { font-size: 11px; color: #a5b5b1; margin-top: 8px; letter-spacing: .035em; }
.wealth-copy>p:not(.eyebrow):not(.wealth-subtitle):not(.wealth-disclosure) { font-size: 13px; color: #bcc8c6; line-height: 1.85; margin-top: 22px; }
.wealth-capabilities { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.wealth-capabilities span { border: 1px solid #c3ad723c; border-radius: 99px; padding: 6px 10px; font-size: 8px; color: #d9d2bd; }
.button-gold { background: #ebd2a2; color: #253330; border-radius: 99px; margin-top: 26px; }
.wealth-copy .wealth-disclosure { color: #8da29d; font-size: 9px; line-height: 1.75; margin-top: 17px; }
.wealth-art { margin: 0; }
.wealth-art img { width: 100%; height: auto; border-radius: 17px; box-shadow: 0 20px 70px #0004; border: 1px solid #ffffff17; }
.wealth-art figcaption { color: #8c9f99; font-size: 9px; line-height: 1.7; margin-top: 14px; padding-inline: 4px; }
.social-section { background: #f7f5f0; padding-top: 90px; }
.social-section .eyebrow { font-size: 9px; }
.social-section h2 { font-size: 49px; }
.social-card { background: #e3eee3; border-radius: 20px; }
.social-card:nth-child(3n+2) { background: #ebe4f0; }
.social-card:nth-child(3n+3) { background: #f3e8df; }
.ig-symbol { color: #5b7866; }
.vision-section { background: #e7ede9; }
.vision-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 85px; align-items: center; }
.vision-grid h2 { font-size: 47px; }
.vision-grid>div:first-child>p:not(.eyebrow) { color: var(--muted); font-size: 13px; margin-top: 25px; max-width: 440px; }
.vision-grid .text-link { margin-top: 24px; }
.vision-section .hero-media { padding-top: 0; }
.vision-section .hero-video-frame { height: auto; aspect-ratio: 16/9; }
.vision-section .hero-video-frame video { object-fit: contain; filter: none; }
.vision-section .brand-strip { margin-top: 48px; }
.ai-section { background: #183e38; }
.about-title .signature { color: #528367; }
.data-section { background: linear-gradient(105deg,#f4ece3,#e4efe8); }
.footer-wordmark { font-family: Fredoka,var(--sans); font-weight: 600; }
.footer-wordmark .wordmark-to { font-weight: 600; }
.is-revealed { animation: gentle-arrival .9s cubic-bezier(.2,.6,.2,1) both; }
@keyframes gentle-arrival { from { opacity: .15; transform: translateY(16px); filter: blur(5px); } to { opacity: 1; transform: translateY(0); filter: blur(0); } }
@keyframes grace-drift { from { transform: translate(-25px,0) scale(.9); } to { transform: translate(35px,-35px) scale(1.06); } }
@keyframes phone-breathe-back { 0%,100% { transform: translateY(0) rotate(-11deg); } 50% { transform: translateY(-9px) rotate(-9deg); } }
@keyframes phone-breathe-front { 0%,100% { transform: translateY(0) rotate(9deg); } 50% { transform: translateY(-10px) rotate(7deg); } }
@keyframes hello-dot { 0%,100% { transform: translateY(0); } 40% { transform: translateY(-9px) rotate(12deg); } 70% { transform: translateY(2px); } }
@media(min-width:1800px) {
  .hero-playful { padding-top: 80px; }
  .hero-playful .hero-copy h1 { font-size: 94px; }
  .hero-product { height: 690px; }
  .hero-phone { width: 290px; }
  .hero-phone-back { top: 90px; }
  .hero-phone-front { top: 48px; }
  .product-halo { width: 560px; height: 560px; top: 65px; }
  .note-bottom { bottom: 80px; }
}
@media(max-width:1100px) {
  .hero-playful .hero-grid { gap: 25px; }
  .hero-playful .hero-copy h1 { font-size: 63px; }
  .hero-product { height: 510px; }
  .hero-phone { width: 205px; }
  .hero-phone-back { left: 4%; top: 88px; }
  .hero-phone-front { left: 43%; top: 54px; }
  .product-halo { width: 370px; height: 370px; }
  .floating-note { font-size: 9px; padding: 9px 12px; }
  .note-top { top: 36px; }
  .note-bottom { bottom: 38px; }
  .hero-product-caption { bottom: 7px; font-size: 7px; }
  .hero-lead { font-size: 17px; }
  .hero-actions { gap: 17px; }
  .hero-actions .button { font-size: 12px; gap: 20px; }
  .wealth-grid { gap: 40px; }
  .product-art { height: 255px; }
  .vision-grid { gap: 45px; }
  .vision-grid h2 { font-size: 40px; }
}
@media(max-width:820px) {
  .site-header .wordmark { font-size: 34px; }
  .hero-playful .hero-copy h1 { font-size: 53px; }
  .hero-product { height: 455px; }
  .hero-phone { width: 168px; }
  .hero-phone-back { top: 93px; left: 0; }
  .hero-phone-front { top: 56px; left: 43%; }
  .product-halo { width: 310px; height: 310px; top: 80px; }
  .floating-note { padding: 8px 10px; font-size: 8px; }
  .note-bottom { bottom: 52px; }
  .hero-original { font-size: 11px; }
  .hero-lead { font-size: 15px; }
  .hero-launch { font-size: 9px; }
  .hero-family { font-size: 10px; gap: 15px; }
  .hero-family>a { gap: 9px; }
  .diagnosis-timeline small { font-size: 7px; }
  .diagnosis-timeline h3 { font-size: 25px; }
  .diagnosis-timeline p { font-size: 11px; }
  .wealth-grid { grid-template-columns: 1fr; gap: 40px; }
  .wealth-copy { max-width: 580px; }
  .wealth-art { max-width: 800px; }
  .product-art { height: 215px; }
  .product-copy { min-height: 190px; }
  .type-art>span { font-size: 73px; }
  .data-card .type-art>span { font-size: 50px; }
  .vision-grid h2 { font-size: 34px; }
}
@media(max-width:620px) {
  .site-header { height: 74px; }
  .site-header .wordmark { font-size: 34px; letter-spacing: -1.4px; }
  .site-header .menu-toggle { border-color: #ffffff30; border-radius: 50%; }
  .site-header .menu-toggle span { background: #e0f8ec; }
  .site-header nav { top: 73px; background: #111a23; border-color: #ffffff20; }
  .site-header nav a { font-size: 16px; }
  .launch-notice { font-size: 10px; }
  .launch-notice>.shell { gap: 9px; padding-block: 12px; }
  .launch-notice a { display: none; }
  .launch-notice .status-dot { flex-shrink: 0; }
  .hero-playful { padding-top: 36px; }
  .hero-playful .hero-grid { grid-template-columns: 1fr; gap: 0; }
  .hero-playful .hero-copy { padding: 0; }
  .hero-playful .hero-copy h1 { font-size: clamp(49px,12.6vw,73px); line-height: 1.03; }
  .hero-playful .hero-copy .eyebrow { font-size: 8px; margin-bottom: 23px; }
  .hero-lead { font-size: 17px; margin-top: 23px; }
  .hero-original { font-size: 11px; line-height: 1.8; margin-top: 18px; max-width: 410px; }
  .hero-actions { gap: 21px; margin-top: 24px; }
  .hero-actions>.text-link { font-size: 10px; gap: 10px; }
  .hero-actions .button { min-height: 49px; font-size: 11px; gap: 15px; padding: 12px 17px; }
  .hero-playful .hero-copy .button { margin-top: 0; }
  .hero-launch { font-size: 9px; margin-top: 17px; }
  .hero-product { height: 460px; max-width: 430px; width: 100%; margin: 25px auto 0; }
  .hero-phone { width: 183px; }
  .hero-phone-back { left: 6%; top: 80px; }
  .hero-phone-front { left: 43%; top: 40px; }
  .product-halo { width: 330px; height: 330px; top: 55px; }
  .note-top { top: 28px; left: 0; font-size: 9px; }
  .note-bottom { bottom: 42px; right: 0; font-size: 9px; }
  .hero-product-caption { bottom: 12px; font-size: 6px; }
  .hero-family { padding-block: 22px; flex-wrap: wrap; gap: 12px; font-size: 9px; }
  .hero-family>span:first-child { flex-basis: 100%; }
  .hero-family>a { font-size: 10px; }
  .hero-family .smile-mark { margin-left: auto; font-size: 27px; }
  .spark-one { left: auto; right: 7%; top: 240px; font-size: 25px; }
  .orb-one { width: 450px; height: 450px; right: -200px; top: 50%; }
  .orb-two { width: 300px; height: 300px; right: 20%; }
  .diagnosis-section { padding-top: 62px; }
  .diagnosis-intro>h2 { font-size: 39px; line-height: 1.08; }
  .diagnosis-intro>.eyebrow { font-size: 8px; }
  .diagnosis-number { font-size: 140px; gap: 12px; margin-top: 32px; }
  .diagnosis-unit { font-size: 29px; }
  .diagnosis-explanation { font-size: 11px; line-height: 1.8; margin-top: 20px; }
  .diagnosis-timeline { grid-template-columns: 1fr 1fr; gap: 35px 15px; margin-top: 45px; }
  .diagnosis-timeline li { padding: 25px 5px 0 0; }
  .diagnosis-timeline small { font-size: 6px; letter-spacing: .05em; }
  .diagnosis-timeline h3 { font-size: 26px; margin-top: 12px; }
  .diagnosis-timeline p { font-size: 10px; }
  .diagnosis-source { font-size: 8px; margin-top: 28px; }
  .journey-dawn { margin-top: 40px; padding: 50px 0 58px; }
  .journey-dawn h3 { font-size: 37px; }
  .journey-dawn>p { font-size: 12px; line-height: 1.9; }
  .journey-dawn .text-link { font-size: 11px; gap: 20px; }
  .mobile-section { padding-top: 60px; }
  .mobile-copy h2 { font-size: 43px; }
  .mobile-section .eyebrow { font-size: 8px; }
  .ecosystem-section { padding-top: 60px; }
  .ecosystem-section h2 { font-size: 40px; }
  .product-grid { gap: 18px; }
  .product-art { height: 235px; }
  .product-copy { min-height: 0; }
  .year-art { margin-inline: 8px; }
  .year-card .product-copy h3 { font-size: 22px; }
  .type-art>span { font-size: 70px; }
  .data-card .type-art>span { font-size: 48px; }
  .venture-status { font-size: 6px; letter-spacing: .06em; }
  .wealth-copy h2 { font-size: 43px; }
  .wealth-copy h3 { font-size: 24px; margin-top: 27px; }
  .wealth-copy .eyebrow { font-size: 8px; }
  .wealth-copy>p:not(.eyebrow):not(.wealth-subtitle):not(.wealth-disclosure) { font-size: 12px; }
  .wealth-copy .wealth-disclosure,.wealth-art figcaption { font-size: 8px; }
  .social-section { padding-top: 60px; }
  .social-section h2 { font-size: 39px; }
  .social-section .eyebrow { font-size: 7px; }
  .vision-grid { grid-template-columns: 1fr; gap: 30px; }
  .vision-grid h2 { font-size: 37px; }
  .vision-grid>div:first-child>p:not(.eyebrow) { font-size: 12px; }
  .vision-section .brand-strip { margin-top: 30px; }
}
@media(max-width:360px) {
  .hero-playful .hero-copy h1 { font-size: 45px; }
  .hero-actions { gap: 15px; }
  .hero-product { height: 410px; }
  .hero-phone { width: 157px; }
  .product-halo { width: 275px; height: 275px; }
  .diagnosis-number { font-size: 118px; }
  .diagnosis-unit { font-size: 25px; }
  .diagnosis-intro>h2 { font-size: 35px; }
}
@media(prefers-reduced-motion:reduce) {
  .light-orb,.hero-phone,.is-revealed,.wordmark-dot { animation: none !important; }
  .hero-phone-back { transform: rotate(-11deg); }
  .hero-phone-front { transform: rotate(9deg); }
  .screen-gallery img:hover { transform: none; }
}
