:root{color:#473e35;font-synthesis:none;--primary:#40875e;--primary-dark:#326d4b;--accent:#e7a44d;--danger:#c8473d;--border:#e7e0d4;--muted:#766d63;--card:#fff;--background:#f8f5ed;--soft-green:#eaf3ec;--soft-orange:#fbefd9;--soft-red:#f7e7e3;--shadow:0 18px 60px #473e351a;--shadow-small:0 8px 24px #473e3514;--radius-large:32px;--radius-medium:22px;--radius-small:14px;--content-width:1120px;background:#f8f5ed;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(135deg, #e7a44d14, transparent 34%), linear-gradient(225deg, #40875e14, transparent 36%), var(--background);color:#473e35;margin:0;line-height:1.8}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}img,svg{max-width:100%;display:block}.container,.section>.section-heading,.section>.feature-grid{width:min(calc(100% - 40px), var(--content-width));margin-inline:auto}.site-header{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f8f5ede0;border-bottom:1px solid #e7e0d4bf;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:76px;display:flex}.brand{letter-spacing:0;align-items:center;gap:12px;font-weight:800;display:inline-flex}.brand-mark{background:var(--primary);color:#fff;width:44px;height:44px;box-shadow:var(--shadow-small);border-radius:16px;place-items:center;display:grid}.brand-name{font-size:1.2rem}.nav{color:var(--muted);align-items:center;gap:26px;font-size:.94rem;font-weight:700;display:flex}.nav a{transition:color .2s,transform .2s}.nav a:hover{color:var(--primary);transform:translateY(-1px)}.button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 22px;font-weight:800;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex;box-shadow:0 10px 24px #40875e38}.button:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 14px 30px #40875e47}.button-secondary{color:var(--primary-dark);border:1px solid var(--border);box-shadow:none;background:#fff}.button-secondary:hover{background:var(--soft-green);color:var(--primary-dark);box-shadow:none}.mobile-menu-button{width:44px;height:44px;color:var(--primary-dark);cursor:pointer;background:#fff;border:0;border-radius:14px;padding:0;display:none}.hero{padding:84px 0 76px}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:68px;display:grid}.eyebrow{background:var(--soft-green);color:var(--primary-dark);letter-spacing:0;border-radius:999px;align-items:center;gap:8px;padding:7px 14px;font-size:.84rem;font-weight:800;display:inline-flex}.hero h1{letter-spacing:0;margin:22px 0 18px;font-size:clamp(2.5rem,6vw,5.2rem);line-height:1.12}.hero-copy{max-width:650px;color:var(--muted);margin:0;font-size:clamp(1rem,2vw,1.16rem)}.hero-actions,.cta-row{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.hero-note{color:var(--muted);margin-top:18px;font-size:.86rem}.hero-visual{place-items:center;min-height:600px;display:grid;position:relative}.family-card{width:78%;min-height:310px;box-shadow:var(--shadow);background:linear-gradient(145deg,#f1e7d6,#fbf7ef);border:1px solid #fff;border-radius:38px;padding:26px;position:absolute;inset:18px 0 auto auto}.family-illustration{place-items:center;min-height:250px;display:grid}.phone{z-index:2;background:#473e35;border:8px solid #473e35;border-radius:42px;width:min(320px,80vw);margin-right:30%;padding:12px;position:relative;transform:rotate(-3deg);box-shadow:0 26px 80px #473e353d}.phone-screen{background:#f8f5ed;border-radius:30px;min-height:565px;overflow:hidden}.phone-top{justify-content:space-between;align-items:center;padding:24px 20px 18px;display:flex}.phone-greeting{color:var(--muted);font-size:.72rem}.phone-title{font-weight:900}.mini-avatar{background:var(--soft-orange);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.phone-content{padding:0 16px 18px}.phone-card{border:1px solid var(--border);background:#fff;border-radius:20px;margin-bottom:12px;padding:16px;box-shadow:0 6px 18px #473e350d}.phone-card-label{color:var(--primary);font-size:.72rem;font-weight:800}.phone-card h3{margin:5px 0 8px;font-size:1rem}.phone-card p{color:var(--muted);margin:0;font-size:.75rem;line-height:1.6}.recipe-row{align-items:center;gap:12px;display:flex}.recipe-icon{background:var(--soft-orange);border-radius:18px;flex:none;place-items:center;width:56px;height:56px;font-size:1.6rem;display:grid}.shopping-list{gap:10px;display:grid}.shopping-item{align-items:center;gap:9px;font-size:.8rem;display:flex}.check{border:1px solid var(--border);color:#fff;background:#fff;border-radius:7px;place-items:center;width:20px;height:20px;display:grid}.check.done{border-color:var(--primary);background:var(--primary)}.floating-badge{z-index:3;box-shadow:var(--shadow-small);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border:1px solid #fff;border-radius:18px;padding:12px 16px;font-size:.84rem;font-weight:800;position:absolute}.floating-badge.one{top:14%;left:3%}.floating-badge.two{bottom:14%;right:0}.section{padding:96px 0}.section-heading{text-align:center;max-width:760px;margin-bottom:48px}.section-heading h2{letter-spacing:0;margin:14px 0 12px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.3}.section-heading p{color:var(--muted);margin:0}.problem-grid,.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.problem-card,.feature-card{border:1px solid var(--border);border-radius:var(--radius-medium);min-height:220px;box-shadow:var(--shadow-small);background:#ffffffd1;padding:26px}.card-icon{background:var(--soft-orange);border-radius:17px;place-items:center;width:52px;height:52px;margin-bottom:20px;font-size:1.5rem;display:grid}.problem-card:nth-child(2) .card-icon,.feature-card:nth-child(2) .card-icon{background:var(--soft-green)}.problem-card:nth-child(3) .card-icon,.feature-card:nth-child(3) .card-icon{background:var(--soft-red)}.problem-card:nth-child(4) .card-icon,.feature-card:nth-child(4) .card-icon{background:#efe9f8}.problem-card h3,.feature-card h3{margin:0 0 8px;font-size:1.08rem}.problem-card p,.feature-card p{color:var(--muted);margin:0;font-size:.93rem}.flow-section{overflow:hidden}.flow-panel{border-radius:var(--radius-large);background:var(--primary-dark);color:#fff;box-shadow:var(--shadow);padding:54px}.flow-panel .section-heading{margin:0 auto 42px}.flow-panel .section-heading p{color:#ffffffb8}.flow-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.flow-item{background:#ffffff14;border:1px solid #ffffff29;border-radius:22px;padding:26px;position:relative}.flow-number{background:var(--accent);color:#473e35;border-radius:50%;place-items:center;width:34px;height:34px;margin-bottom:20px;font-weight:900;display:grid}.flow-item h3{margin:0 0 8px}.flow-item p{color:#ffffffb8;margin:0;font-size:.9rem}.feature-card{min-height:280px}.feature-card strong{color:var(--primary);margin-top:18px;font-size:.86rem;display:inline-block}.comparison{grid-template-columns:1fr 1fr;gap:24px;display:grid}.comparison-card{border:1px solid var(--border);box-shadow:var(--shadow-small);background:#fff;border-radius:28px;padding:34px}.comparison-card.highlighted{background:var(--soft-green);border-color:#40875e57}.comparison-card h3{margin:0 0 18px;font-size:1.35rem}.comparison-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.comparison-list li{align-items:flex-start;gap:12px;display:flex}.comparison-list span{width:24px;height:24px;color:var(--primary);background:#fff;border-radius:50%;flex:none;place-items:center;font-size:.78rem;font-weight:900;display:grid}.mission{padding:120px 0}.mission-card{box-shadow:var(--shadow);background:linear-gradient(145deg,#fff,#f5eee2);border:1px solid #fff;border-radius:40px;padding:72px;position:relative;overflow:hidden}.mission-copy{z-index:2;max-width:760px;position:relative}.mission-card h2{letter-spacing:0;margin:14px 0 24px;font-size:clamp(2.2rem,5vw,4rem);line-height:1.35}.mission-card p{color:var(--muted);margin:0 0 16px;font-size:1.05rem}.cta{padding:40px 0 110px}.cta-card{background:var(--primary);color:#fff;text-align:center;border-radius:36px;padding:72px 32px;box-shadow:0 26px 70px #40875e47}.cta-card h2{letter-spacing:0;margin:0 0 14px;font-size:clamp(2rem,5vw,3.7rem);line-height:1.3}.cta-card p{color:#ffffffc7;max-width:650px;margin:0 auto 30px}.cta-card .cta-row{justify-content:center;margin:0 0 20px}.cta-card .button{color:var(--primary-dark);box-shadow:none;background:#fff}.cta-card .button:hover{background:var(--soft-orange)}.cta-card .button-secondary{color:#fff;background:#ffffff24;border-color:#ffffff47}footer{border-top:1px solid var(--border);color:var(--muted);padding:28px 0 40px;font-size:.86rem}.footer-inner{justify-content:space-between;align-items:center;gap:24px;display:flex}.footer-links{flex-wrap:wrap;gap:18px;display:flex}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.directory{max-width:920px;margin:0 auto;padding:72px 20px}.directory h1{letter-spacing:0;margin:0;font-size:clamp(2.3rem,6vw,4.5rem);line-height:1.06}.directory>p:not(.eyebrow){color:var(--muted);font-size:1.1rem}.variant-list{gap:12px;margin-top:32px;display:grid}.variant-link{border:1px solid var(--border);box-shadow:var(--shadow-small);background:#fff;border-radius:16px;gap:4px;padding:18px;display:grid}.variant-link span{color:var(--primary);font-size:.86rem;font-weight:800}@media (width<=960px){.hero-grid{grid-template-columns:1fr}.hero-copy-wrap{text-align:center}.hero-copy{margin-inline:auto}.hero-actions{justify-content:center}.hero-visual{min-height:560px}.phone{margin-right:20%}.problem-grid,.feature-grid,.flow-list{grid-template-columns:repeat(2,minmax(0,1fr))}.nav{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:20px;flex-direction:column;align-items:stretch;padding:22px;display:none;position:fixed;inset:76px 20px auto}.nav.open{display:flex}.mobile-menu-button{place-items:center;display:grid}}@media (width<=680px){.container,.section>.section-heading,.section>.feature-grid{width:min(calc(100% - 28px), var(--content-width))}.hero{padding-top:54px}.hero h1{font-size:clamp(2.45rem,13vw,4rem)}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.hero-visual{min-height:520px}.family-card{width:92%;right:0}.phone{width:280px;margin-right:11%}.floating-badge.one{top:5%;left:0}.floating-badge.two{bottom:8%;right:0}.section{padding:76px 0}.problem-grid,.feature-grid,.flow-list,.comparison{grid-template-columns:1fr}.flow-panel,.mission-card{padding:36px 22px}.mission{padding:80px 0}.cta-card .cta-row{flex-direction:column}.cta-card .button{width:100%}.footer-inner{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
