@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@500;600;700&display=swap";:root{color:#1e2d27;font-synthesis:none;text-rendering:optimizelegibility;background:#f6f3ed;font-family:Noto Sans JP,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#f6f3ed;min-width:320px;margin:0;font-size:clamp(.9375rem,1vw + .7rem,1.125rem);line-height:1.8;overflow-x:hidden}button,input{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #e46d47}h1,h2,h3,h4,.text-balance,.button,.header-cta,.header-nav a,.watch-link,.category-card strong,.empty-state h3{line-break:strict;overflow-wrap:break-word;text-wrap:balance;word-break:auto-phrase}p,.text-pretty,.category-description,.footer-bottom{line-break:strict;overflow-wrap:break-word;text-wrap:pretty;word-break:auto-phrase}.nb{overflow-wrap:normal;white-space:nowrap;display:inline-block}#guide,#catalog,#guide-videos{scroll-margin-top:106px}.site-shell{overflow:clip}.site-header{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f6f3edf0;border-bottom:1px solid #1e2d271f;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:84px;padding:15px clamp(24px,5.2vw,84px);display:grid;position:sticky;top:0;left:0;right:0}.brand{align-items:center;width:max-content;min-width:0;display:inline-flex}.brand-logo{width:140px;max-width:min(140px,30vw);height:auto;display:block}.brand-divider{background:#1e2d2759;width:1px;height:27px;margin:0 10px}.brand-sub{color:#526158;letter-spacing:.11em;font-family:DM Mono,monospace;font-size:8px;line-height:1.4}.header-nav{align-items:center;gap:clamp(16px,2.3vw,34px);display:flex}.header-nav a{color:#415148;white-space:nowrap;align-items:center;gap:3px;font-size:12px;display:inline-flex}.header-nav a:hover{color:#c25738}.header-cta{color:#fffdf8;white-space:nowrap;background:#c85d3c;justify-self:end;align-items:center;gap:6px;padding:13px 17px;font-size:12px;transition:background .2s,transform .2s;display:inline-flex}.header-cta:hover{background:#a9462c;transform:translateY(-2px)}.hero{background:#e9e4d8;align-items:center;min-height:min(720px,100vh - 84px);padding:clamp(78px,10vw,156px) clamp(24px,10.4vw,168px) clamp(70px,8vw,128px);display:flex;position:relative;overflow:hidden}.hero:before{background-image:var(--works-image);content:"";filter:saturate(.72)contrast(.92);opacity:.38;z-index:0;background-position:50% 57%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0;transform:scale(1.02)}.hero:after{content:"";z-index:0;background:linear-gradient(90deg,#f6f3edc4 0%,#f6f3ed8f 50%,#f6f3ed42 100%);position:absolute;inset:0}.hero-copy{z-index:1;max-width:710px;position:relative}.eyebrow{color:#bd5335;letter-spacing:.14em;margin:0 0 19px;font-family:DM Mono,monospace;font-size:10px;font-weight:500}h1,h2,h3,p{margin-top:0}h1{color:#1f3e34;letter-spacing:-.055em;margin-bottom:25px;font-family:Noto Serif JP,serif;font-size:clamp(2.25rem,4.5vw + .5rem,4.65rem);font-weight:600;line-height:1.34}.hero-lede{color:#354b41;letter-spacing:.018em;max-width:670px;margin-bottom:0;font-size:clamp(.9375rem,1vw + .7rem,1.125rem);line-height:2}.hero-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:35px;display:flex}.button{justify-content:center;align-items:center;gap:10px;padding:15px 20px;font-size:clamp(.8125rem,.45vw + .68rem,.9375rem);transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fffdf8;background:#234d40}.button-primary:hover{background:#16382e}.text-link{color:#314b40;border-bottom:1px solid #718278;align-items:center;gap:6px;padding-bottom:5px;font-size:clamp(.75rem,.35vw + .64rem,.875rem);display:inline-flex}.text-link:hover{color:#bd5335}.hero-works-link{color:#29463a;z-index:1;align-items:center;gap:8px;font-family:Noto Serif JP,serif;font-size:clamp(.75rem,.35vw + .66rem,.9rem);display:inline-flex;position:absolute;bottom:clamp(28px,4vw,54px);right:clamp(24px,5.4vw,88px)}.hero-works-kicker{color:#a34c33;letter-spacing:.12em;font-family:DM Mono,monospace;font-size:8px}.hero-works-link:hover{color:#bd5335}.intro-strip{color:#e9e9dd;background:#234d40;justify-content:space-between;align-items:center;gap:50px;padding:32px clamp(24px,10.4vw,168px);display:flex}.intro-strip>p{max-width:690px;margin:0;font-family:Noto Serif JP,serif;font-size:clamp(.8125rem,.45vw + .68rem,1rem);line-height:1.9}.intro-stats{white-space:nowrap;gap:31px;display:flex}.intro-stats span{color:#c3d0c6;letter-spacing:.1em;font-family:DM Mono,monospace;font-size:9px}.intro-stats strong{color:#f4eee1;margin-right:5px;font-size:24px;font-weight:400}.category-section,.catalog-section{padding:clamp(82px,9.4vw,150px) clamp(24px,10.4vw,168px)}.category-section{background:#f6f3ed}.section-heading,.catalog-heading{justify-content:space-between;align-items:end;gap:50px;margin-bottom:47px;display:flex}h2{color:#1f3e34;letter-spacing:-.045em;margin-bottom:0;font-family:Noto Serif JP,serif;font-size:clamp(1.75rem,3.4vw + .35rem,3.2rem);font-weight:600;line-height:1.42}.section-heading>p{color:#69736c;max-width:390px;margin:0 0 6px;font-size:clamp(.8125rem,.35vw + .7rem,.98rem);line-height:1.9}.category-grid{border-left:1px solid #cfd1c8;grid-template-columns:repeat(4,1fr);display:grid}.category-card{color:#20372e;text-align:left;background:0 0;border:1px solid #cfd1c8;border-top:0;border-left:0;flex-direction:column;min-height:315px;padding:24px 22px 20px;transition:background .25s,color .25s;display:flex;position:relative}.category-card:hover,.category-card.is-selected{color:#f7f3e9;background:#234d40}.category-number{color:#bd5335;letter-spacing:.1em;margin-bottom:51px;font-family:DM Mono,monospace;font-size:10px}.category-card:hover .category-number,.category-card.is-selected .category-number{color:#f5b49e}.category-kicker{color:#7e8c83;letter-spacing:.13em;margin-bottom:12px;font-family:DM Mono,monospace;font-size:8px}.category-card:hover .category-kicker,.category-card.is-selected .category-kicker{color:#bdcfc2}.category-card strong{letter-spacing:-.035em;font-family:Noto Serif JP,serif;font-size:clamp(1rem,1.1vw + .62rem,1.48rem);font-weight:600;line-height:1.55}.category-description{color:#6c766f;margin-top:12px;font-size:clamp(.6875rem,.25vw + .6rem,.78rem);line-height:1.8}.category-card:hover .category-description,.category-card.is-selected .category-description{color:#d3d8d1}.category-foot{letter-spacing:.08em;border-top:1px solid #384c4138;align-items:center;gap:5px;margin-top:auto;padding-top:13px;font-family:DM Mono,monospace;font-size:9px;display:flex}.category-foot b{font-size:17px;font-weight:400}.category-foot svg{margin-left:auto}.category-card:hover .category-foot,.category-card.is-selected .category-foot{border-top-color:#ffffff40}.catalog-section{background:#e7e0d3}.catalog-heading{margin-bottom:33px}.catalog-count{color:#607067;letter-spacing:.09em;margin:0 0 7px;font-family:DM Mono,monospace;font-size:11px}.catalog-count b{color:#bd5335;font-size:20px;font-weight:400}.catalog-controls{border-top:1px solid #bfc2b7;grid-template-columns:minmax(240px,.78fr) minmax(0,1.22fr);margin-bottom:20px;display:grid}.search-field{border-bottom:1px solid #bfc2b7;border-right:1px solid #bfc2b7;padding:21px 29px 24px 0}.search-field label,.filter-label{color:#55665c;letter-spacing:.1em;margin-bottom:12px;font-family:DM Mono,monospace;font-size:9px;display:block}.search-field>div{border-bottom:1px solid #496254;align-items:center;gap:10px;padding-bottom:10px;display:flex}.search-field svg{color:#bd5335;flex:none}.search-field input{color:#233c31;background:0 0;border:0;outline:none;width:100%;min-width:0;padding:0;font-family:Noto Serif JP,serif;font-size:clamp(.8125rem,.45vw + .68rem,.98rem)}.search-field input::placeholder{color:#7e867f;font-family:Noto Sans JP,sans-serif;font-size:clamp(.6875rem,.25vw + .61rem,.79rem)}.input-clear{color:#637269;background:0 0;border:0;align-items:center;padding:2px;display:inline-flex}.filter-panel{border-bottom:1px solid #bfc2b7;padding:21px 0 20px 29px}.filter-label{align-items:center;gap:6px;display:flex}.filter-label svg{color:#bd5335}.filter-label small{color:#808b83;letter-spacing:.07em;margin-left:3px;font-size:8px;font-weight:400}.filter-buttons,.tag-filter-buttons{flex-wrap:wrap;gap:7px;display:flex}.filter-buttons button,.tag-filter-buttons button{color:#42544a;background:0 0;border:1px solid #aeb7ad;padding:7px 10px;font-size:11px;transition:all .18s}.filter-buttons button:hover,.tag-filter-buttons button:hover{color:#234d40;border-color:#234d40}.filter-buttons button.is-active{color:#fffdf8;background:#234d40;border-color:#234d40}.tag-filter-label{margin-top:20px}.tag-filter-buttons button{border-color:#c3bdaf;border-radius:16px;padding:5px 10px}.tag-filter-buttons button.is-active{color:#fffaf5;background:#bd5335;border-color:#bd5335}.active-filter-bar{color:#59665f;justify-content:space-between;align-items:center;margin:4px 0 31px;font-size:11px;display:flex}.active-filter-bar button{color:#314c40;background:0 0;border:0;border-bottom:1px solid #6e7c72;align-items:center;gap:3px;padding:4px 0;font-size:11px;display:inline-flex}.video-results{outline:none}.video-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 25px;display:grid}.video-card{animation:.45s both card-enter;animation-delay:calc(var(--card-index) * 35ms);min-width:0}.thumbnail-link{aspect-ratio:16/9.2;background:#617468;display:block;position:relative;overflow:hidden}.thumbnail-link img{object-fit:cover;width:100%;height:100%;transition:transform .45s,filter .45s;display:block}.thumbnail-link:after{content:"";background:linear-gradient(#0000 50%,#0c1c1673);position:absolute;inset:0}.video-card:hover .thumbnail-link img{filter:saturate(.85);transform:scale(1.045)}.play-button{color:#bd5335;z-index:1;background:#fffdf8;border-radius:50%;justify-content:center;align-items:center;width:43px;height:43px;transition:transform .2s;display:flex;position:absolute;top:17px;left:17px}.video-card:hover .play-button{transform:scale(1.08)}.video-number{color:#fffdf8;letter-spacing:.12em;z-index:1;font-family:DM Mono,monospace;font-size:9px;position:absolute;bottom:13px;right:14px}.card-body{padding-top:17px}.card-category{color:#bd5335;letter-spacing:.12em;margin-bottom:9px;font-family:DM Mono,monospace;font-size:8px}.video-card h3{color:#273f34;letter-spacing:-.025em;margin-bottom:10px;font-family:Noto Serif JP,serif;font-size:clamp(.97rem,.8vw + .65rem,1.18rem);font-weight:600;line-height:1.62}.video-card h3 .nb,.video-summary .nb{margin-right:.05em}.video-summary{color:#6c756e;margin-bottom:13px;font-size:clamp(.7rem,.25vw + .62rem,.82rem);line-height:1.8}.tag-list{flex-wrap:wrap;gap:5px;margin-bottom:17px;display:flex}.tag{color:#66746b;font-size:9px;line-height:1.4}.tag:before{color:#bd5335;content:"#";margin-right:2px}.watch-link{color:#28483c;border-bottom:1px solid #9faa9f;align-items:center;gap:4px;padding-bottom:5px;font-size:11px;transition:color .2s,border-color .2s;display:inline-flex}.watch-link:hover{color:#bd5335;border-color:#bd5335}.load-more-wrap{justify-content:center;padding-top:57px;display:flex}.load-more{color:#2b4a3d;background:0 0;border:1px solid #718278;align-items:center;gap:12px;padding:14px 22px;font-size:clamp(.8125rem,.35vw + .68rem,.94rem);transition:background .2s,color .2s;display:inline-flex}.load-more:hover{color:#fffdf8;background:#234d40;border-color:#234d40}.empty-state{color:#5c6b61;text-align:center;background:#fffdf870;border:1px dashed #a7aca1;flex-direction:column;align-items:center;padding:67px 24px;display:flex}.empty-state svg{color:#bd5335;margin-bottom:14px}.empty-state h3{color:#334d41;margin-bottom:7px;font-family:Noto Serif JP,serif;font-size:clamp(1.1rem,1.3vw + .72rem,1.45rem);font-weight:600;line-height:1.5}.empty-state p{margin-bottom:21px;font-size:clamp(.75rem,.35vw + .65rem,.9rem)}.empty-state button{color:#fffdf8;background:#234d40;border:0;padding:11px 15px;font-size:12px}.conversion-section{color:#fffaf2;background:#bf583a;grid-template-columns:1fr 1fr;gap:50px;padding:clamp(65px,8.2vw,128px) clamp(24px,10.4vw,168px);display:grid;position:relative}.conversion-section:after{content:"";border:1px solid #fff9ee3d;border-radius:50%;width:46vw;height:46vw;position:absolute;bottom:-15vw;right:-9vw}.conversion-section .eyebrow{color:#f6c0ab}.conversion-section h2{color:#fffaf2;z-index:1;position:relative}.conversion-copy{z-index:1;align-self:end;max-width:520px;position:relative}.conversion-copy>p{margin-bottom:25px;font-size:clamp(.8125rem,.45vw + .68rem,1rem);line-height:1.95}.conversion-actions{flex-wrap:wrap;gap:10px;display:flex}.button-light{color:#a5482f;background:#fffaf2}.button-outline-light{color:#fffaf2;border:1px solid #fffaf2c7}.button-outline-light:hover{background:#fffaf221}.site-footer{color:#e7e8de;background:#1d3028;padding:40px clamp(24px,10.4vw,168px) 24px}.footer-top{justify-content:space-between;align-items:center;gap:32px;display:flex}.footer-logo-link{display:inline-flex}.footer-logo{filter:invert()brightness(2.7)grayscale();width:140px;height:auto;display:block}.footer-socials{align-items:center;gap:10px;display:flex}.social-link{color:#ecede3;border:1px solid #e8eee275;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .18s,color .18s,transform .18s;display:inline-flex}.social-link:hover{color:#1d3028;background:#f5eee2;transform:translateY(-2px)}.social-link svg{width:17px;height:17px}.footer-bottom{border-top:1px solid #e8eee233;justify-content:space-between;gap:24px;margin-top:29px;padding-top:16px;font-size:clamp(.625rem,.2vw + .57rem,.72rem);line-height:1.8;display:flex}.footer-bottom p{color:#c0c9bf;max-width:730px;margin:0}@keyframes card-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1050px){.site-header{grid-template-columns:1fr auto}.header-nav{display:none}.category-grid{grid-template-columns:repeat(2,1fr)}.category-card{min-height:246px}.category-number{margin-bottom:35px}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){#guide,#catalog,#guide-videos{scroll-margin-top:85px}.site-header{gap:8px;min-height:70px;padding:12px 18px}.brand-logo{width:108px;max-width:108px}.brand-divider{height:23px;margin:0 7px}.brand-sub{font-size:6.5px}.header-cta{padding:10px;font-size:10px}.hero{align-items:flex-start;min-height:616px;padding:67px 24px 105px}.hero:before{opacity:.46;background-position:62% 54%}.hero:after{background:linear-gradient(#f6f3edc7 0%,#f6f3ed94 60%,#f6f3ed59 100%)}h1{letter-spacing:-.045em;font-size:clamp(2.12rem,9.4vw,3.25rem);line-height:1.35}.hero-lede{font-size:clamp(.875rem,1vw + .64rem,1rem);line-height:1.95}.hero-actions{flex-direction:column;align-items:flex-start;gap:17px;margin-top:29px}.hero-actions .button{width:auto}.hero-works-link{flex-wrap:wrap;font-size:.74rem;bottom:31px;left:24px;right:24px}.hero-works-kicker{flex-basis:100%}.intro-strip{flex-direction:column;align-items:flex-start;gap:23px;padding:28px 24px}.intro-strip>p{font-size:.79rem}.intro-stats{gap:23px}.category-section,.catalog-section{padding:69px 24px}.section-heading,.catalog-heading{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:30px}h2{font-size:clamp(1.72rem,7.1vw,2.3rem)}.section-heading>p{font-size:.78rem}.category-grid{display:block}.category-card{min-height:202px;padding:21px 20px 18px}.category-number{margin-bottom:20px}.category-card strong{font-size:1.08rem}.catalog-controls{display:block}.search-field{border-right:0;padding:20px 0 23px}.filter-panel{padding:20px 0}.filter-buttons{gap:6px}.filter-buttons button{padding:7px 8px;font-size:10px}.active-filter-bar{margin-bottom:27px}.video-grid{grid-template-columns:1fr;gap:35px}.video-card h3{font-size:1.02rem}.video-summary{font-size:.76rem}.conversion-section{padding:63px 24px;display:block}.conversion-copy{margin-top:30px}.conversion-actions{display:grid}.conversion-actions .button{width:100%}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start}.footer-bottom{gap:8px}}
