:root{--ink:#44362b;--cream:#fffaf0;--yellow:#f6cf45;--orange:#ed7b3c;--moss:#687b56;--lilac:#d9d0e5;--line:#44362b;--hand:"Noto Sans JP",sans-serif;--title:"Shippori Mincho",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--hand);font-size:15px;line-height:1.85}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px clamp(20px,5vw,70px);color:var(--ink)}.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--title);font-size:18px;font-weight:600;letter-spacing:.05em}.brand-mark{display:grid;width:33px;height:33px;place-items:center;border:2px solid currentColor;border-radius:48% 52% 50% 45%;font-family:var(--title);font-size:17px;transform:rotate(-7deg)}.site-nav{display:flex;align-items:center;gap:24px;font-size:13px;font-weight:700;letter-spacing:.05em}.site-nav>a:not(.nav-shop){border-bottom:2px solid transparent}.site-nav>a:not(.nav-shop):hover{border-color:currentColor}.site-nav .nav-shop{padding:9px 14px;border:2px solid var(--ink);border-radius:99px;background:var(--cream);box-shadow:3px 3px 0 var(--ink);transition:transform .2s,box-shadow .2s}.site-nav .nav-shop:hover{box-shadow:0 0 0 var(--ink);transform:translate(3px,3px)}.menu-toggle{display:none}.hero{position:relative;min-height:720px;height:100svh;overflow:hidden;background:var(--yellow);background-image:radial-gradient(rgba(255,255,255,.4) 1px,transparent 1px);background-size:14px 14px}.hero:after{position:absolute;right:-100px;bottom:-125px;width:470px;height:310px;border:3px solid var(--ink);border-radius:56% 44% 49% 51%;background:var(--lilac);content:"";transform:rotate(-14deg)}.hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;height:100%;max-width:780px;padding:135px clamp(24px,11vw,168px) 80px}.eyebrow,.section-kicker{margin:0 0 10px;color:var(--orange);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero .eyebrow{display:inline-block;width:max-content;padding:4px 10px;border:2px solid var(--ink);border-radius:99px;background:var(--cream);color:var(--ink);transform:rotate(-3deg)}h1,h2,h3{margin:0;font-family:var(--title);font-weight:600;line-height:1.42}.hero h1{margin:18px 0 20px;font-size:clamp(42px,5.6vw,75px);letter-spacing:.04em;text-shadow:2px 2px 0 rgba(255,255,255,.55)}.hero-copy>p:not(.eyebrow){margin:0 0 31px;font-size:15px;font-weight:500;line-height:2.05}.button{display:inline-flex;width:max-content;align-items:center;gap:25px;padding:14px 20px;border:2px solid var(--ink);border-radius:7px;font-size:13px;font-weight:700;letter-spacing:.08em;box-shadow:5px 5px 0 var(--ink);transition:transform .2s,box-shadow .2s}.button:hover{box-shadow:1px 1px 0 var(--ink);transform:translate(4px,4px)}.button-dark{background:var(--ink);color:#fff}.button-light{background:var(--yellow);color:var(--ink)}.hero-stickers img{position:absolute;z-index:1;filter:drop-shadow(6px 7px 0 rgba(68,54,43,.17))}.hero-imori{right:clamp(5%,11vw,16%);bottom:10%;width:min(36vw,470px);transform:rotate(11deg)}.hero-kajika{right:3%;top:13%;width:min(21vw,270px);transform:rotate(-12deg)}.spark{position:absolute;z-index:3;color:var(--orange);font-size:55px;font-weight:700;line-height:1}.spark-one{top:23%;right:33%;transform:rotate(18deg)}.spark-two{right:6%;bottom:25%;font-size:36px;transform:rotate(-14deg)}.hero-ring{position:absolute;z-index:0;right:10%;bottom:5%;width:48vw;height:48vw;max-width:620px;max-height:620px;border:3px solid var(--ink);border-radius:49% 51% 43% 57%;opacity:.42;transform:rotate(-18deg)}.scroll-note{position:absolute;z-index:4;right:32px;bottom:27px;margin:0;font-size:10px;font-weight:700;letter-spacing:.13em;writing-mode:vertical-rl}.scroll-note:after{display:block;width:2px;height:48px;margin:9px auto 0;background:currentColor;content:""}.section-shell{width:min(1160px,calc(100% - 48px));margin-inline:auto}.intro{position:relative;padding:140px 0 130px;text-align:center}.intro:before{position:absolute;top:65px;left:11%;color:var(--orange);font-size:45px;content:"✳";transform:rotate(-12deg)}.intro h2,.section-heading h2,.craft h2,.shop-cta h2{font-size:clamp(30px,3.5vw,48px);letter-spacing:.04em}.intro-text{width:min(580px,100%);margin:28px auto 0;font-size:14px;line-height:2.15}.collection{padding-bottom:135px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:40px}.text-link{display:inline-flex;gap:12px;align-items:center;border-bottom:2px solid var(--ink);padding-bottom:3px;font-size:13px;font-weight:700;transition:transform .2s}.text-link:hover{transform:translateX(4px)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-card{position:relative;overflow:hidden;border:2px solid var(--ink);border-radius:18px;background:#fff;box-shadow:7px 7px 0 var(--ink)}.product-card>img{display:block;width:100%;height:295px;object-fit:contain;padding:27px;transition:transform .3s}.product-card:hover>img{transform:rotate(4deg) scale(1.08)}.card-imori{background:#f7cf54}.card-kajika{background:#d5dfc5}.card-yamori{background:#e3d8c7}.product-card-body{position:relative;padding:20px 23px 23px;border-top:2px solid var(--ink);background:var(--cream)}.product-number{position:absolute;top:-14px;right:17px;display:grid;width:34px;height:34px;place-items:center;margin:0;border:2px solid var(--ink);border-radius:50%;background:var(--orange);color:#fff;font-size:11px;font-weight:700;transform:rotate(11deg)}.product-card h3{font-size:24px}.product-card-body>p:not(.product-number){margin:4px 0 12px;font-size:12px;font-weight:500}.product-card a{border-bottom:2px solid var(--ink);font-size:12px;font-weight:700}.placeholder-note{margin:22px 0 0;font-size:12px;font-weight:600}.craft{position:relative;overflow:hidden;background:var(--moss);color:#fff}.craft:before{position:absolute;top:-100px;right:-80px;width:300px;height:300px;border:3px solid rgba(255,255,255,.55);border-radius:45% 55% 52% 48%;content:"";transform:rotate(20deg)}.craft:after{position:absolute;bottom:-55px;left:5%;color:rgba(255,255,255,.17);font-size:160px;content:"✦"}.craft-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:100px;padding:125px 0}.craft .section-kicker{color:var(--yellow)}.craft-copy>p:not(.section-kicker){max-width:500px;margin:26px 0 28px;font-size:14px}.craft .text-link{border-color:#fff}.craft-quote{align-self:center;padding:30px;border:2px solid #fff;border-radius:51% 49% 47% 53%;background:var(--orange);box-shadow:6px 6px 0 rgba(68,54,43,.4);transform:rotate(3deg)}.craft-quote span{display:none}.craft-quote p{margin:0;font-family:var(--title);font-size:24px;line-height:2;letter-spacing:.07em;text-align:center}.news{padding:130px 0}.coming-soon{padding:4px 11px;border:2px solid var(--ink);border-radius:99px;background:var(--lilac);font-size:12px;font-weight:700;letter-spacing:.08em}.news-list{border-top:2px solid var(--ink)}.news-list p{display:grid;grid-template-columns:145px 1fr;gap:20px;margin:0;padding:23px 0;border-bottom:2px solid var(--ink);font-size:13px;font-weight:500}.news-list time{color:var(--orange);font-weight:700;letter-spacing:.05em}.shop-cta{position:relative;display:grid;place-items:center;min-height:490px;padding:75px 24px;overflow:hidden;background:var(--lilac);background-image:radial-gradient(var(--cream) 1.4px,transparent 1.4px);background-size:17px 17px;text-align:center}.shop-cta:before,.shop-cta:after{position:absolute;border:3px solid var(--ink);content:""}.shop-cta:before{top:30px;left:-40px;width:180px;height:140px;border-radius:45% 55% 47% 53%;background:var(--yellow);transform:rotate(-15deg)}.shop-cta:after{right:8%;bottom:-25px;width:110px;height:110px;border-radius:50%;background:var(--orange)}.shop-cta>div{position:relative;z-index:1}.shop-cta h2{margin-bottom:17px}.shop-cta>div>p:not(.section-kicker){margin:0 0 28px;font-size:13px;font-weight:500}.shop-cta .button{margin:auto}.site-footer{display:grid;grid-template-columns:1fr auto;gap:30px;padding:48px clamp(24px,5vw,72px) 25px;background:var(--ink);color:#fff}.site-footer p{margin:10px 0 0;color:rgba(255,255,255,.68);font-size:12px}.footer-links{display:flex;align-items:start;gap:24px;font-size:12px;font-weight:700}.footer-links a{border-bottom:1px solid rgba(255,255,255,.7)}.site-footer small{grid-column:1/-1;color:rgba(255,255,255,.45);font-size:10px}@media (max-width:760px){.site-header{padding:19px 24px}.site-nav{position:absolute;top:74px;right:16px;display:none;width:225px;padding:20px;border:2px solid var(--ink);border-radius:14px;background:var(--cream);color:var(--ink);box-shadow:5px 5px 0 var(--ink)}.site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:15px}.site-nav .nav-shop{border-color:var(--ink);text-align:center}.menu-toggle{display:flex;width:42px;height:42px;flex-direction:column;justify-content:center;gap:7px;padding:0;border:2px solid var(--ink);border-radius:50%;background:var(--cream);color:var(--ink)}.menu-toggle span:not(.sr-only){width:19px;height:2px;margin-left:9px;background:currentColor}.hero{min-height:685px}.hero:after{right:-130px;bottom:-90px;width:390px}.hero-copy{justify-content:flex-start;padding:140px 24px 70px}.hero h1{margin-top:18px;font-size:40px}.hero-copy>p:not(.eyebrow){font-size:13px}.hero-imori{right:-7%;bottom:9%;width:72vw}.hero-kajika{right:5%;top:16%;width:38vw}.hero-ring{right:-12%;bottom:9%;width:75vw;height:75vw}.spark-one{top:34%;right:35%;font-size:37px}.spark-two{right:5%;bottom:13%;font-size:28px}.scroll-note{display:none}.intro{padding:95px 0 90px;text-align:left}.intro:before{top:45px;left:auto;right:7%;font-size:37px}.intro-text{margin-left:0}.section-heading{align-items:start;flex-direction:column;gap:15px}.product-grid{grid-template-columns:1fr;gap:24px}.product-card{display:grid;grid-template-columns:43% 57%;border-radius:14px}.product-card>img{height:100%;min-height:205px;padding:14px}.product-card-body{padding:21px 18px}.product-number{top:12px;right:10px}.product-card h3{font-size:21px}.craft-inner{grid-template-columns:1fr;gap:48px;padding:88px 0}.craft-quote{justify-self:start}.news{padding:88px 0}.news-list p{grid-template-columns:1fr;gap:3px}.shop-cta{min-height:430px}.site-footer{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}}
