@charset "UTF-8";
:root{--lime:#daef83;--purple:#4a3271;--cream:#faf5e9;--line:rgba(74,50,113,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--lime);color:var(--purple);font-family:Arial,"Yu Gothic",Meiryo,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #d76426;outline-offset:5px}img{display:block;width:100%;object-fit:cover}header{height:90px;padding:18px 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--purple);position:relative;z-index:5}.brand{font-family:Impact,"Arial Black",sans-serif;font-weight:900;font-size:28px;letter-spacing:-1px}.brand span{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:3px;margin-top:4px}nav{display:flex;gap:35px;align-items:center;font-size:13px;font-weight:bold}nav a:nth-child(2){border:1px solid;padding:12px 20px;border-radius:50px}.hero{height:min(820px,76vw);min-height:620px;position:relative;overflow:hidden}.hero-word{position:absolute;left:3%;top:25px;line-height:.83;font-family:Impact,"Arial Black",sans-serif;font-weight:900;font-size:clamp(110px,17vw,260px);letter-spacing:-.065em;z-index:2}.hero-photo{position:absolute;right:0;top:0;width:56%;height:84%;overflow:hidden}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,#4a327122)}.hero-photo img{height:100%;object-position:center}.hero-food{position:absolute;overflow:hidden;border:7px solid var(--cream);box-shadow:8px 12px 0 #4a327126;z-index:3;border-radius:50%;width:24%;aspect-ratio:1;animation:float 6s ease-in-out infinite}.hero-food img{height:100%;object-fit:cover;transform:scale(1.12)}.food-a{right:7%;top:13%;rotate:9deg}.food-b{right:28%;top:44%;width:22%;rotate:-12deg;animation-delay:-2s}.food-c{right:2%;top:63%;width:18%;rotate:12deg;animation-delay:-4s}.hero-badge{position:absolute;left:6%;top:49%;z-index:4;background:var(--purple);color:var(--lime);padding:30px 44px;border-radius:50%;rotate:-7deg;border:2px solid var(--lime)}.hero-badge p{font-size:12px}.hero-badge h1{font-size:clamp(27px,3.2vw,48px);line-height:1.4;margin:10px 0;letter-spacing:-.04em}.hero-badge a{display:flex;justify-content:space-between;border-top:1px solid;padding-top:12px;font-size:13px}.hero-note{position:absolute;left:5%;bottom:17px;font-weight:900;font-size:13px;letter-spacing:2px}.checker{height:24px;background:repeating-conic-gradient(var(--purple) 0% 25%,transparent 0% 50%) 0 / 48px 48px}.ticker{overflow:hidden;border-bottom:1px solid;padding:15px 0;font-weight:900;font-size:24px;white-space:nowrap}.ticker div{width:max-content;animation:marquee 24s linear infinite}.section{padding:90px 6%}.heading p,.eyebrow{font-size:11px;letter-spacing:2px;font-weight:bold}.heading h2{font-family:Impact,"Arial Black",sans-serif;letter-spacing:-.03em;font-size:clamp(50px,6vw,90px);line-height:1;margin:18px 0 35px}.heading h2 span{display:inline-block;font-family:"Yu Gothic",sans-serif;font-size:14px;letter-spacing:0;margin-left:30px;vertical-align:middle}.filters{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap}.filters button{border:1px solid var(--purple);background:transparent;color:var(--purple);border-radius:40px;padding:10px 26px;font-weight:bold}.filters .active{background:var(--purple);color:var(--lime)}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 22px}.product{padding:0;background:transparent;text-align:left;color:var(--purple);border:0}.product .photo{overflow:hidden;border-radius:10px 10px 0 0}.product img{aspect-ratio:1.3;transition:transform .4s}.product:hover img{transform:scale(1.06)}.product .caption{background:var(--purple);color:var(--lime);padding:20px;display:flex;justify-content:space-between;gap:10px}.caption h3{font-size:16px;margin:0 0 7px}.caption p{font-size:12px;margin:0;opacity:.8}.caption b{align-self:center;font-size:23px}.small{font-size:11px;line-height:1.9;margin-top:24px;opacity:.8}.builder{background:var(--purple);color:var(--lime)}.builder-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.build-visual{position:relative;padding:30px}.build-visual img{border-radius:50%;aspect-ratio:1;border:2px solid var(--lime)}.ring-text{font-weight:900;font-size:clamp(18px,2.4vw,35px);rotate:-8deg;position:relative;z-index:1}.sticker{background:var(--lime);color:var(--purple);border-radius:50%;padding:26px;position:absolute;right:0;bottom:0;rotate:10deg;font-weight:bold;font-size:23px}fieldset{border:0;padding:0;margin:0 0 30px}legend{font-weight:bold;margin-bottom:18px}legend b{display:inline-grid;place-items:center;background:var(--lime);color:var(--purple);border-radius:50%;height:30px;width:30px;margin-right:10px}.choices{display:flex;flex-wrap:wrap;gap:10px}.choices label{padding:12px 16px;border:1px solid #daef8370;border-radius:8px;cursor:pointer;font-size:13px}.choices label:has(input:checked){background:var(--lime);color:var(--purple)}input{accent-color:var(--purple);margin-right:8px}.build-result{border-top:1px solid;padding-top:20px}.build-result p{font-size:10px;letter-spacing:2px}.build-result h3{font-size:21px}.build-result strong{font-size:36px;margin-right:15px}.build-result span{font-size:11px}.shop{background:var(--cream);display:grid;grid-template-columns:1fr 1.5fr;gap:40px}.shop-title>p:first-child{font-size:11px;letter-spacing:2px}.shop-title h2{font-size:clamp(35px,5vw,70px);line-height:1.5;margin:35px 0;letter-spacing:-.06em}.shop-title p{font-size:13px;line-height:2}.shop-image{margin:0;rotate:2deg;align-self:center}.shop-image img{aspect-ratio:1.2}.shop-image figcaption{font-size:11px;font-weight:bold;letter-spacing:2px;margin-top:14px}.shop-bottom{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;padding:60px 10% 0}.shop-bottom img{aspect-ratio:1.2;border-radius:50% 50% 0 0}.shop-bottom h3{font-size:29px;line-height:1.6}.shop-bottom p{font-size:13px;line-height:1.9}.shop-bottom a{display:inline-block;border-bottom:1px solid;padding:15px 0;font-weight:bold;font-size:13px}.info{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line)}.info h2{font-family:Impact,"Arial Black",sans-serif;font-size:clamp(60px,7vw,110px);line-height:.95;letter-spacing:-.045em;margin:0}.info h2 span{font-family:Arial}.info h3{font-size:24px}dl{display:grid;grid-template-columns:95px 1fr;font-size:13px;line-height:1.8}dt,dd{margin:0;padding:13px 0;border-bottom:1px solid var(--line)}footer{border-top:1px solid;display:flex;justify-content:space-between;align-items:center;padding:35px 5%;gap:20px}footer span,footer>a:last-child{font-size:10px}dialog{border:0;padding:0;background:var(--cream);color:var(--purple);max-width:760px;width:90%;max-height:85svh;overflow:auto}dialog::backdrop{background:#201331bb}dialog>img{max-height:45svh;object-fit:cover}.dialog-copy{padding:25px 35px}.dialog-copy>p:first-child{font-size:11px;letter-spacing:2px}.dialog-copy h2{font-size:25px}.dialog-copy p{line-height:1.8}.dialog-copy strong{font-size:25px}#close-dialog{position:absolute;right:12px;top:12px;border:0;background:var(--purple);color:white;width:44px;height:44px;border-radius:50%;font-size:28px}@keyframes float{50%{transform:translateY(-13px)}}@keyframes marquee{to{transform:translateX(-50%)}}@media(max-width:700px){header{height:76px;padding:14px 5%}.brand{font-size:21px}.brand span{font-size:7px}nav{gap:13px;font-size:10px}nav a:nth-child(2){padding:8px 10px}nav a:last-child{display:none}.hero{min-height:0;height:730px}.hero-word{font-size:27vw;top:20px;left:5%;z-index:2}.hero-photo{width:75%;height:65%;top:170px;right:0}.hero-food{width:42%;border-width:4px}.food-a{top:235px;right:2%}.food-b{top:390px;right:35%;width:39%}.food-c{top:525px;right:1%;width:37%}.hero-badge{top:510px;left:3%;padding:19px 27px}.hero-badge h1{font-size:26px}.hero-badge p{font-size:9px}.hero-note{top:285px;bottom:auto;left:4%;font-size:9px;writing-mode:vertical-rl}.section{padding:60px 6%}.heading h2{font-size:48px}.heading h2 span{display:block;margin:18px 0 0;font-size:12px}.products{grid-template-columns:repeat(2,1fr);gap:18px 12px}.product .caption{padding:12px 10px}.caption h3{font-size:12px;line-height:1.5}.caption p{font-size:10px}.caption b{font-size:17px}.filters{gap:7px}.filters button{font-size:12px;padding:8px 16px}.builder-layout{grid-template-columns:1fr;gap:35px}.build-visual{padding:15px 35px}.ring-text{font-size:24px}.sticker{font-size:19px;padding:20px;right:10px}.shop{grid-template-columns:1fr;gap:25px}.shop-title h2{font-size:40px;margin:20px 0}.shop-title h2 br:nth-child(2){display:none}.shop-image{rotate:1deg}.shop-bottom{grid-template-columns:1fr;gap:25px;padding:30px 0 0}.shop-bottom img{width:80%}.shop-bottom>div{padding-left:15%}.shop-bottom h3{font-size:25px}.info{grid-template-columns:1fr;gap:25px}.info h2{font-size:65px}footer{flex-wrap:wrap}footer span{order:3;width:100%}.dialog-copy{padding:20px}.dialog-copy h2{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Final spacing and entrance refinements */
.hero-word{letter-spacing:-.025em;line-height:.94;font-weight:400}
.hero-food{animation:appear .8s both,float 6s .8s ease-in-out infinite}
.food-b{animation-delay:.2s,1s}.food-c{animation-delay:.4s,1.2s}
@keyframes appear{from{opacity:0;scale:.9}to{opacity:1;scale:1}}
@media(prefers-reduced-motion:reduce){.hero-food{animation:none}}
