.ecochi{--ec-prose:64ch;padding-bottom:clamp(56px,5.5vw,80px)}.ec-head{padding:56px 0 0}.ec-crumb a{color:var(--cyan);letter-spacing:.12em;text-transform:uppercase;margin:-15px 0;padding:15px 0;font-family:Inter,sans-serif;font-size:12px;font-weight:600;text-decoration:none;display:inline-block}.ec-head h1{max-width:1000px;margin-top:40px}@media (width<=1023px){.ec-head{padding:60px 0 0}.ec-head h1{margin-top:44px}}@media (width<=560px){.ec-head{padding:40px 0 0}.ec-head h1{margin-top:36px}}.ec-dek{color:var(--paper);max-width:820px;margin-top:32px;font-size:clamp(18px,1.7vw,22px);line-height:1.6}.ec-facts{margin-top:44px}.ec-facts-grid{grid-template-columns:repeat(4,1fr);gap:18px 24px;max-width:1040px;display:grid}.ec-facts h4{font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);font-size:10.5px;font-weight:600}.ec-facts p{margin-top:8px;font-size:16px}.ec-facts-scope{border-top:1px solid var(--line);max-width:820px;margin-top:24px;padding-top:22px}.ec-facts-scope p{color:var(--body);margin-top:6px;line-height:1.7}@media (width<=880px){.ec-facts-grid{grid-template-columns:1fr 1fr}}.ec-hero{aspect-ratio:1500/1016;background:var(--panel);margin:56px 0 0;overflow:hidden}.ec-hero-img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=1023px){.ec-hero{margin-top:46px}}@media (width<=560px){.ec-hero{margin-top:36px}}.ec-chapter{padding:120px 0 0}.ec-identity,.ec-book{padding-bottom:104px}.ec-book,.ec-place,.ec-seal,.ec-kit{border-top:1px solid var(--line);padding-top:44px}@media (width<=1023px){.ec-identity,.ec-book{padding-bottom:88px}.ec-book,.ec-place,.ec-seal,.ec-kit{padding-top:40px}}@media (width<=560px){.ec-identity,.ec-book{padding-bottom:72px}}.ec-rule{width:40px;height:2px;margin-bottom:22px;display:block}.ec-rule-cyan,.ec-rule-pink{background:color-mix(in srgb, var(--cyan) 58%, transparent)}.ec-chapter h2{letter-spacing:-.01em;text-wrap:balance;overflow-wrap:break-word;max-width:20ch;font-size:clamp(28px,2.9vw,44px);line-height:1.14}.ec-seq h2,.ec-place-copy h2,.ec-seal-copy h2,.ec-kit h2,.ec-close h2{max-width:760px}.ec-cyan{color:var(--cyan)}.ec-chapter p{color:var(--body);font-size:17px;line-height:1.8}@media (width<=880px){.ec-chapter{padding-top:96px}}.ec-start{padding:124px 0}.ec-start-grid{grid-template-columns:1fr;gap:40px;display:grid}.ec-h2-line{display:inline}@media (width>=768px){.ec-h2-line{display:block}}.ec-start-copy h2{text-wrap:balance;max-width:720px;margin-bottom:0;font-size:clamp(24px,1.9vw,30px);line-height:1.18}.ec-start-copy p{max-width:var(--ec-prose);margin-top:26px;font-size:17px;line-height:1.85}.ec-start-copy h2+p{margin-top:38px}.ec-boundary{border-top:1px solid var(--line);color:var(--dim);max-width:56ch;margin-top:26px;padding-top:22px;font-size:15px;line-height:1.7}.ec-start-media{display:block}.ec-start-fig{margin:0}@media (width>=1024px){.ec-start-grid{grid-template-columns:43% minmax(0,1fr);align-items:start;column-gap:clamp(72px,6vw,96px)}.ec-start-copy h2{margin-top:0}}@media (width<=1023px){.ec-start{padding:96px 0}}@media (width<=560px){.ec-start{padding:76px 0}}.ec-seq{padding-top:0}.ec-steps{grid-template-columns:1fr;gap:0;margin:60px 0 0;padding:0;list-style:none;display:grid;position:relative}.ec-steps:before{content:"";background:color-mix(in srgb, var(--cyan) 26%, var(--line));width:2px;margin:0;padding:0;position:absolute;top:10px;bottom:10px;left:6px}.ec-step{padding:0 0 44px 36px;position:relative}.ec-step:last-child{padding-bottom:0}.ec-dot{background:var(--ink);border:2px solid var(--cyan);border-radius:50%;width:14px;height:14px;position:absolute;top:6px;left:0}.ec-step-num{letter-spacing:.01em;color:var(--cyan);font-family:Sora,sans-serif;font-size:clamp(30px,3vw,44px);font-weight:800;line-height:1;display:block}.ec-step-name{color:var(--paper);font-size:20px;line-height:1.25;font-family:var(--font-sans);margin-top:12px;font-weight:600;display:block}.ec-step-phrase{color:var(--body);max-width:40ch;margin-top:10px;font-size:15px;line-height:1.6;display:block}@media (width>=900px){.ec-steps{grid-template-columns:repeat(4,1fr);gap:clamp(44px,4.5vw,72px)}.ec-steps:before{width:auto;height:2px;inset:7px 0 auto}.ec-step{padding:32px 0 0}.ec-dot{top:0}}.ec-sys-grid{grid-template-columns:1fr;gap:44px;display:grid}.ec-sys-left .ec-rule{margin-bottom:22px}.ec-sys-left h2{max-width:640px;font-size:clamp(27px,2.5vw,37px);line-height:1.14}.ec-sys-copy{max-width:640px;margin-top:22px}.ec-sys-copy p{color:var(--body);font-size:17px;line-height:1.8}.ec-sys-copy p+p{margin-top:22px}.ec-sys-media{grid-template-columns:1fr;gap:60px;display:grid}.ec-sys-media .ec-identity-fig,.ec-sys-media .ec-book-fig{margin:0}@media (width>=1200px){.ec-sys-grid{grid-template-columns:43% minmax(0,1fr);align-items:start;column-gap:clamp(72px,6vw,96px)}.ec-sys-media{gap:84px}}@media (width>=1200px) and (width<=1499.98px){.ec-start-grid,.ec-sys-grid{grid-template-columns:50% minmax(0,1fr);column-gap:clamp(44px,3.6vw,68px)}.ec-sys[data-cs-sticky] .ec-sys-left .ec-rule{margin-bottom:16px}.ec-sys[data-cs-sticky] .ec-sys-copy{margin-top:18px}.ec-sys[data-cs-sticky] .ec-sys-copy p+p{margin-top:16px}}@media (width>=1200px){.ec-sys-left.is-stuck{top:var(--stick-top,124px);align-self:start;position:sticky}}.ec-place-copy p{max-width:var(--ec-prose);margin-top:22px}.ec-place-media{margin-top:clamp(40px,4vw,60px);display:block}.ecochi cite{font-style:italic}.ec-seal-grid{grid-template-columns:1fr;align-items:center;gap:44px;display:grid}.ec-seal-copy p{max-width:52ch;margin-top:22px}.ec-seal-media{display:block}@media (width>=1024px){.ec-seal-grid{grid-template-columns:minmax(0,1fr) 40%;column-gap:clamp(56px,5vw,88px)}}.ec-kit-lede{max-width:64ch;margin-top:22px;font-size:17px;line-height:1.8}.ec-kit-lede+.ec-kit-lede{margin-top:20px}.ec-kit-media{grid-template-columns:1fr;gap:28px;margin-top:clamp(44px,4vw,64px);display:grid}.ec-kit-media .ec-kit-fig{margin:0}@media (width>=640px){.ec-kit-media{grid-template-columns:1fr 1fr}}@media (width>=900px){.ec-kit-media{grid-template-columns:repeat(3,1fr);gap:clamp(20px,2vw,28px)}}.ec-close{border-top:1px solid var(--line);padding-top:44px}.ec-close-copy{max-width:var(--ec-prose);margin-top:24px}.ec-close-copy+.ec-close-copy{margin-top:20px}@media (width<=1023px){.ec-close{padding-top:40px}}.ec-more{background:var(--ink-2);border-top:1px solid var(--line);padding:128px 0 136px}.ec-more-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);margin:0;font-family:Inter,sans-serif;font-size:11.5px;font-weight:600}.ec-more-h2{letter-spacing:-.01em;color:var(--paper);margin-top:18px;font-size:clamp(26px,2.6vw,36px);font-weight:700;line-height:1.14}.ec-more-row{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px;display:grid}.ec-more a{text-decoration:none;transition:transform .3s;display:block}.ec-more a:hover{transform:translateY(-3px)}.ec-more-img{aspect-ratio:4/3;border-radius:2px;margin-bottom:12px;position:relative;overflow:hidden}.ec-more-img-el{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ec-more h3{color:var(--paper);font-size:16.5px}@media (width<=880px){.ec-more-row{grid-template-columns:1fr}}@media (width<=1023px){.ec-more{padding:96px 0 104px}.ec-more-row{margin-top:44px}}@media (width<=560px){.ec-more{padding:80px 0 88px}.ec-more-row{margin-top:36px}}html.ecochi-motion .rv{opacity:0;transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1);transform:translateY(15px)}html.ecochi-motion .rv.in{opacity:1;transform:none}html.ecochi-motion .ec-rule.rv{transform-origin:0;transition:transform .65s cubic-bezier(.22,1,.36,1);transform:scaleX(0)}html.ecochi-motion .ec-rule.rv.in{transform:scaleX(1)}html.ecochi-motion .ec-step .ec-dot{opacity:.45;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .5s;transform:scale(.8)}html.ecochi-motion .ec-step.in .ec-dot{opacity:1;transform:scale(1)}@media (width>=900px){html.ecochi-motion .ec-steps:before{transform-origin:0;transition:transform .6s cubic-bezier(.22,1,.36,1);transform:scaleX(0)}html.ecochi-motion .ec-steps:has(.rv.in):before{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){html.ecochi-motion .rv{opacity:1;transition:none;transform:none}html.ecochi-motion .ec-rule.rv{transform:scaleX(1)}html.ecochi-motion .ec-steps:before{transform:none}html.ecochi-motion .ec-step .ec-dot{opacity:1;transform:scale(1)}}@media (width<=767px){h2:has(.ec-h2-line){font-size:clamp(21px,5.61vw,24px)}}
