.newsletter-form[data-astro-cid-drywyjjs]{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;position:relative}.newsletter-form[data-astro-cid-drywyjjs]>label[data-astro-cid-drywyjjs]{color:var(--fg3);letter-spacing:.28em;text-transform:uppercase;margin-bottom:14px;font-size:10.5px;display:block}.newsletter-field[data-astro-cid-drywyjjs]{gap:10px;display:flex}.newsletter-field[data-astro-cid-drywyjjs] input[data-astro-cid-drywyjjs]{border:1px solid var(--line2);min-width:0;color:var(--fg);font:400 14px/1.3 var(--sans);background:0 0;border-radius:10px;outline:none;flex:1;padding:13px 16px}.newsletter-field[data-astro-cid-drywyjjs] input[data-astro-cid-drywyjjs]::placeholder{color:var(--fg4)}.newsletter-field[data-astro-cid-drywyjjs] input[data-astro-cid-drywyjjs]:focus{border-color:var(--line3);background:var(--bg1)}.newsletter-field[data-astro-cid-drywyjjs] .btn[data-astro-cid-drywyjjs]{white-space:nowrap;justify-content:center}.newsletter-field[data-astro-cid-drywyjjs] .btn[data-astro-cid-drywyjjs]:disabled{cursor:wait;opacity:.72}.newsletter-note[data-astro-cid-drywyjjs],.newsletter-status[data-astro-cid-drywyjjs]{min-height:18px;color:var(--fg4);font-family:var(--mono);margin:12px 0 0;font-size:10.5px;line-height:1.6}.newsletter-note[data-astro-cid-drywyjjs] a[data-astro-cid-drywyjjs]{color:var(--fg3);border-bottom:1px solid var(--line2)}.newsletter-status[data-astro-cid-drywyjjs]{margin-top:2px}.newsletter-status[data-astro-cid-drywyjjs][data-state=success]{color:var(--moss)}.newsletter-status[data-astro-cid-drywyjjs][data-state=error]{color:var(--shu)}.newsletter-trap[data-astro-cid-drywyjjs]{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}@media (width<=560px){.newsletter-field[data-astro-cid-drywyjjs]{flex-direction:column}.newsletter-field[data-astro-cid-drywyjjs] .btn[data-astro-cid-drywyjjs]{width:100%}}.hero{min-height:calc(100svh - var(--above-hero,110px));height:calc(100dvh - var(--above-hero,110px));text-align:center;flex-direction:column;justify-content:center;padding:clamp(40px,6svh,72px) 0 clamp(32px,4.5svh,64px);display:flex;position:relative;overflow:hidden}.hero-eyebrow{letter-spacing:.32em;color:var(--fg3);text-transform:uppercase;font-size:10.5px}.hero-wordmark{letter-spacing:.32em;color:var(--fg3);font-size:10.5px;font-family:var(--sans);margin-top:clamp(6px,1svh,10px)}.hero-logo{width:clamp(244px,min(34vw,34svh),380px);height:auto;margin:clamp(10px,1.5svh,18px) auto 0;display:block}.hero-h1{font-family:var(--serif);letter-spacing:-.025em;text-wrap:balance;max-width:18ch;margin:clamp(18px,3svh,36px) auto 0;font-size:clamp(30px,min(5vw,5.5svh),56px);font-weight:400;line-height:1.15}.hero-h1 em{color:var(--fg2);font-style:italic}.hero-sub{color:var(--fg3);text-wrap:pretty;max-width:48ch;margin:clamp(10px,1.4svh,16px) auto 0;font-size:16.5px;line-height:1.6}.hero-actions{gap:10px;margin-top:clamp(14px,2.4svh,28px);display:inline-flex}.hero-foot{color:var(--fg4);font-size:11.5px;font-family:var(--mono);letter-spacing:.04em;margin-top:clamp(8px,1.4svh,16px)}.hero-foot a{color:var(--fg3);border-bottom:1px solid var(--line2);padding-bottom:1px}.hero-foot a:hover{color:var(--fg);border-color:var(--fg3)}.os-ribbon{border-bottom:1px solid var(--line);text-align:center;font-family:var(--mono);color:var(--fg3);letter-spacing:.08em;background:#e8e4d904;padding:10px 24px;font-size:11px;line-height:1.7}.os-ribbon .ji{font-family:var(--serif);color:var(--fg2);letter-spacing:0;margin-right:10px}.os-ribbon a{color:var(--fg);border-bottom:1px solid var(--line3);white-space:nowrap;margin:0 4px;padding-bottom:1px}.hero-bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-bg .glyph{font-family:var(--serif);color:var(--fg);opacity:.025;user-select:none;position:absolute}.section{border-top:1px solid var(--line);padding:120px 0}.section-eyebrow{letter-spacing:.32em;color:var(--fg3);text-transform:uppercase;align-items:center;gap:14px;font-size:10.5px;display:flex}.section-eyebrow:before{content:"";background:var(--line3);width:32px;height:1px}.section-title{font-family:var(--serif);letter-spacing:-.022em;text-wrap:balance;max-width:22ch;margin:16px 0 0;font-size:clamp(32px,4.4vw,48px);font-weight:400;line-height:1.18}.section-title .kanji{color:var(--fg3);margin-left:12px}.principles{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:0;margin-top:72px;display:grid}.principle{border-bottom:1px solid var(--line);border-right:1px solid var(--line);flex-direction:column;min-height:280px;padding:32px 28px 40px;display:flex}.principle:nth-child(4n){border-right:none}.principle .ji{font-family:var(--serif);color:var(--fg);letter-spacing:-.02em;margin-bottom:36px;font-size:56px;line-height:1}.principle .label{letter-spacing:.28em;color:var(--fg3);text-transform:uppercase;margin-bottom:14px;font-size:10.5px}.principle .heading{font-family:var(--serif);letter-spacing:-.01em;margin-bottom:12px;font-size:22px;line-height:1.3}.principle .body{color:var(--fg3);font-size:13.5px;line-height:1.6}.gallery{grid-template-columns:repeat(3,1fr);align-items:end;gap:32px;margin-top:88px;display:grid}.gallery-item{flex-direction:column;align-items:center;gap:22px;display:flex}.gallery-item .phone-img{width:270px;height:auto;display:block}.gallery-caption{text-align:center;max-width:28ch}.gallery-caption .num{font-family:var(--mono);color:var(--fg4);letter-spacing:.12em;font-size:11px}.gallery-caption .ttl{font-family:var(--serif);letter-spacing:-.01em;margin-top:8px;font-size:18px}.gallery-caption .desc{color:var(--fg3);margin-top:6px;font-size:13px;line-height:1.55}.hues{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(5,1fr);margin-top:72px;display:grid}.hue{border-right:1px solid var(--line);flex-direction:column;gap:18px;padding:36px 24px;display:flex}.hue:last-child{border-right:none}.hue .swatch{border-radius:4px;width:28px;height:28px}.hue .name{font-family:var(--serif);letter-spacing:-.01em;font-size:20px}.hue .name .ji{color:var(--fg3);margin-left:8px;font-size:16px}.hue .role{letter-spacing:.16em;color:var(--fg4);text-transform:uppercase;font-size:11px}.hue .desc{color:var(--fg3);margin-top:-6px;font-size:13px;line-height:1.55}.promise{grid-template-columns:1fr 1fr;align-items:start;gap:80px;margin-top:64px;display:grid}.promise-list{flex-direction:column;display:flex}.promise-row{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr;align-items:baseline;gap:20px;padding:22px 0;display:grid}.promise-row:first-child{border-top:1px solid var(--line)}.promise-row .num{font-family:var(--mono);color:var(--fg4);letter-spacing:.18em;font-size:11px}.promise-row .ttl{font-family:var(--serif);letter-spacing:-.01em;margin-bottom:6px;font-size:18px}.promise-row .desc{color:var(--fg3);font-size:13.5px;line-height:1.6}.promise-row .desc em{font-family:var(--serif);color:var(--fg2);font-style:italic}.access-details{color:var(--fg3);margin-top:14px;font-size:13px;line-height:1.65}.access-details summary{cursor:pointer;width:100%;color:var(--fg2);border:1px solid var(--line3);background:var(--bg1);justify-content:space-between;align-items:center;gap:18px;padding:11px 14px;list-style:none;transition:color .14s,border-color .14s,background .14s;display:flex}.access-details summary::-webkit-details-marker{display:none}.access-details summary:after{content:"+";color:var(--fg);font-family:var(--mono);font-size:16px;line-height:1}.access-details[open] summary:after{content:"−"}.access-details summary:hover{color:var(--fg);border-color:var(--fg3);background:var(--bg2)}.access-details[open] summary{margin-bottom:14px}.access-details ul{margin:12px 0;padding-left:18px}.access-details li+li{margin-top:5px}.access-details .legal-links{margin-top:14px}.access-details a{color:var(--fg)}.faq-list{margin-top:56px}.faq-item{margin-top:10px}.faq-item:first-child{margin-top:0}.faq-item summary{font-size:15.5px}.faq-item p{color:var(--fg3);max-width:68ch;margin:0;font-size:14.5px;line-height:1.7}.cta{text-align:center;border-top:1px solid var(--line);padding:160px 0}.cta .ji{font-family:var(--serif);letter-spacing:-.02em;color:var(--fg);margin-bottom:8px;font-size:clamp(72px,12vw,132px);line-height:1}.cta .lead{font-family:var(--serif);letter-spacing:-.022em;text-wrap:balance;max-width:18ch;margin:24px auto 0;font-size:clamp(28px,4vw,40px);line-height:1.25}.cta .sub{color:var(--fg3);max-width:44ch;margin-top:18px;margin-left:auto;margin-right:auto;font-size:15px;line-height:1.6}.store-row{gap:12px;margin-top:40px;display:inline-flex}.cta-community{color:var(--fg4);margin-top:24px;font-size:14px;line-height:1.6}.cta-community a{color:var(--fg3);text-underline-offset:3px;text-decoration:underline;transition:color .14s}.cta-community a:hover{color:var(--fg)}.store-btn{border:1px solid var(--line2);color:var(--fg);cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:13px 22px;transition:background .14s,border-color .14s;display:inline-flex}.store-btn:hover{background:var(--bg1);border-color:var(--line3)}.store-btn .lbl{white-space:nowrap;flex-direction:column;align-items:flex-start;line-height:1.1;display:flex}.store-btn .lbl .top{color:var(--fg3);letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;font-size:9.5px}.store-btn .lbl .bot{white-space:nowrap;margin-top:4px;font-size:15px}.wink{font-family:var(--serif);color:var(--fg2);font-style:italic;display:inline-block}@media (height<=820px) and (width>=901px){.hero-h1{max-width:28ch}.hero-h1 br{display:none}}@media (width<=900px){.section{padding:80px 0}.hero{padding:72px 0 64px}.hero-h1{font-size:clamp(30px,5.5vw,44px)}.principles{grid-template-columns:repeat(2,1fr)}.principle:nth-child(4n){border-right:1px solid var(--line)}.principle:nth-child(2n){border-right:none}.gallery{grid-template-columns:1fr;gap:64px}.gallery-item .phone-shell{margin-bottom:-90px;transform:scale(.85)}.hues{grid-template-columns:repeat(2,1fr)}.hue{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.hue:nth-child(2n){border-right:none}.promise{grid-template-columns:1fr;gap:32px}}@media (width<=720px){.hero{height:auto;min-height:0;padding:40px 0 56px;overflow:visible}.hero-logo{margin-top:20px}.hero-wordmark{margin-top:12px}.hero-sub{margin-top:20px}.hero-foot{margin-top:24px}.hero-h1{max-width:100%;margin-top:28px;padding:0 4px;font-size:clamp(26px,7vw,36px)}.hero-h1 br{display:none}.hero-sub{max-width:100%;padding:0 4px;font-size:14.5px}.hero-actions{flex-direction:column;gap:8px;width:100%;margin-top:32px;padding:0 4px;display:flex}.hero-actions .btn{justify-content:center;width:100%}.hero-foot{padding:0 8px;font-size:10.5px}.hero-bg .glyph{font-size:220px!important}.section{padding:56px 0}.section-eyebrow{letter-spacing:.24em;gap:10px;font-size:10px}.section-eyebrow:before{width:20px}.section-title{max-width:100%;font-size:clamp(24px,6.5vw,32px)}.principles{grid-template-columns:1fr;margin-top:32px}.principle,.principle:nth-child(2n),.principle:nth-child(4n){border-right:none}.principle{min-height:0;padding:24px 16px 28px}.principle .ji{margin-bottom:20px;font-size:40px}.principle .heading{font-size:19px}.gallery{gap:40px;margin-top:40px}.gallery-item .phone-shell{margin-bottom:-130px;transform:scale(.78)}.hues{grid-template-columns:1fr;margin-top:32px}.hue{padding:24px 16px;border-right:none!important}.promise{margin-top:32px}.promise-row{grid-template-columns:48px 1fr;gap:12px;padding:18px 0}.promise-row .num{font-size:10px}.promise-row .ttl{font-size:16px}.promise-row .desc{font-size:13px}.cta{padding:72px 0}.cta .sub{max-width:100%;padding:0 8px;font-size:14px}.store-row{flex-direction:column;align-items:stretch;gap:8px;width:100%;padding:0 4px}.store-btn{justify-content:center;width:100%}}
