:root{--ink:#24334b;--blue:#356384;--paper:#fff6d9;--butter:#f7d65a;--coral:#d45a3a;--line:#bcb594}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4edcc;color:var(--ink);font-family:"Hiragino Maru Gothic ProN","Yu Gothic",sans-serif;line-height:1.7}a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.skip{position:absolute;top:-100px;left:12px;z-index:20;background:white;padding:9px}.skip:focus{top:8px}.demo{background:var(--ink);color:#fff8dc;padding:7px 20px;text-align:center;font-size:.7rem;letter-spacing:.03em}.mast{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:14px clamp(18px,4vw,65px);background:#fbf3d4;border-bottom:2px dashed var(--ink);gap:25px}.brand{text-decoration:none;font-size:1.8rem;font-weight:900;letter-spacing:-.09em;line-height:1}.brand>span{font-size:.55em;vertical-align:middle}.brand small{display:block;letter-spacing:.23em;font-family:Georgia,serif;font-size:.55rem;font-weight:400;margin-top:8px}.mast nav{display:flex;gap:25px;font-size:.8rem}.mast nav a{text-decoration:none;border-bottom:1px solid transparent}.mast nav a:hover{border-color:currentColor}.back{justify-self:end;font-size:.77rem;text-decoration:none;border-bottom:1px solid}.hero{position:relative;min-height:720px;display:grid;grid-template-columns:49% 51%;overflow:hidden;background:var(--butter)}.hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 59px,#24334b0d 60px 61px);pointer-events:none}.hero-type{z-index:2;position:relative;padding:clamp(75px,8vw,145px) 30px 95px clamp(25px,6vw,105px);align-self:center}.overline{font:700 .72rem/1.4 Georgia,serif;letter-spacing:.2em}.handnote{display:inline-block;margin:32px 0 0;color:var(--coral);font-family:"Hiragino Maru Gothic ProN",cursive;font-size:clamp(1.05rem,1.5vw,1.4rem);font-weight:800;transform:rotate(-4deg);border-bottom:2px wavy var(--coral)}.hero h1{font-size:clamp(3.5rem,6vw,7.3rem);line-height:1.16;letter-spacing:-.11em;margin:25px 0 30px;font-weight:900;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--coral);font-size:.88em}.hero-lead{max-width:460px;font-size:.96rem}.jump{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;margin-top:25px;padding:15px 20px;background:var(--ink);color:#fff6df;text-decoration:none;font-weight:800;min-width:235px}.jump:hover{background:var(--coral)}.hero-art{position:relative;z-index:1;min-height:620px;isolation:isolate}.hero-photo{position:absolute;inset:16% 9% 14% 5%;transform:rotate(6deg);box-shadow:24px 25px 0 #bd973d;overflow:hidden;clip-path:polygon(0 0,88% 0,100% 13%,100% 100%,10% 100%,0 88%)}.hero-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.07)}.fold{position:absolute;z-index:2;background:#fbefbf;box-shadow:0 10px 14px #754b2730}.fold-top{top:7%;right:8%;width:25%;height:31%;clip-path:polygon(0 0,100% 0,100% 100%);transform:rotate(6deg);transform-origin:top right;animation:unfold 2.4s ease both}.fold-side{bottom:7%;left:-1%;width:30%;height:24%;clip-path:polygon(0 0,100% 100%,0 100%);transform:rotate(6deg);animation:unfold 2.4s .2s ease both}.round-stamp{position:absolute;z-index:3;right:3%;bottom:12%;width:140px;height:140px;border-radius:50%;border:3px solid var(--ink);background:#f7d65ae8;display:grid;place-content:center;text-align:center;font:800 .77rem/1.4 Georgia,serif;letter-spacing:.13em;transform:rotate(14deg)}.paper-label{position:absolute;z-index:4;top:19%;left:0;background:var(--coral);color:white;padding:12px 25px;font:700 .69rem/1.55 Georgia,serif;letter-spacing:.12em;transform:rotate(-7deg)}.hero-squiggle{position:absolute;top:4%;left:15%;color:var(--coral);font-size:7rem;line-height:1;transform:rotate(25deg)}.hero-bottom{position:absolute;left:0;bottom:0;right:0;background:var(--ink);color:#fff7db;padding:12px;text-align:center;letter-spacing:.25em;font:700 .57rem Georgia,serif}.unwrap{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.4fr);gap:5vw;padding:clamp(75px,9vw,140px) clamp(22px,6vw,105px);background:#f4edcc}.unwrap-title h2,.shelf-title h2,.basket h2,.closing h2{font-weight:900;letter-spacing:-.08em;line-height:1.22}.unwrap-title h2{font-size:clamp(2.6rem,4vw,5.2rem);margin:40px 0}.unwrap-title h2 span{color:var(--coral)}.unwrap-title>p:last-child{max-width:320px}.fold-stage{min-width:0}.fold-tabs{display:flex;gap:5px}.fold-tabs button{border:2px solid var(--ink);border-bottom:0;background:#e8dcab;color:var(--ink);padding:11px 17px;cursor:pointer;font-size:.8rem;transform:skew(-6deg)}.fold-tabs button b{font:700 .7rem Georgia,serif;margin-right:7px}.fold-tabs button[aria-pressed=true]{background:var(--ink);color:white}.fold-scene{display:grid;grid-template-columns:54% 46%;min-height:400px;border:2px solid var(--ink);background:var(--paper);box-shadow:13px 13px 0 #d0bb7c;overflow:hidden}.scene-photo{overflow:hidden;clip-path:polygon(0 0,100% 0,89% 100%,0 100%)}.scene-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s,object-position .8s}.fold-scene[data-scene=morning] .scene-photo img{object-position:50% 40%}.fold-scene[data-scene=table] .scene-photo img{transform:scale(1.36);object-position:5% 80%}.fold-scene[data-scene=gift] .scene-photo img{transform:scale(1.45);object-position:90% 20%}.scene-copy{padding:clamp(22px,4vw,70px) clamp(18px,3vw,50px);align-self:center}.scene-copy span{font:700 .65rem Georgia,serif;letter-spacing:.17em;color:var(--coral)}.scene-copy h3{font-size:clamp(1.7rem,2.7vw,3rem);letter-spacing:-.06em;line-height:1.35;margin:25px 0}.scene-copy p{font-size:.86rem}.breads{background:#edf0dd;padding:clamp(70px,8vw,125px) clamp(20px,5vw,85px);position:relative}.breads:before{content:"";position:absolute;top:0;left:0;right:0;height:20px;background:repeating-linear-gradient(90deg,#f4edcc 0 16px,transparent 16px 32px)}.shelf-title{display:grid;grid-template-columns:1fr minmax(240px,.75fr);align-items:end;max-width:1300px;margin:auto;gap:0 35px}.shelf-title .overline{grid-column:1/-1}.shelf-title h2{font-size:clamp(3rem,5.5vw,6.5rem);margin:22px 0 0}.shelf-title>p:last-child{max-width:360px;font-size:.82rem}.filter{max-width:1300px;margin:50px auto 25px;display:flex;gap:8px;flex-wrap:wrap}.filter button{background:transparent;border:2px solid var(--ink);border-radius:0;padding:8px 18px;cursor:pointer;font-weight:800;font-size:.79rem}.filter button[aria-pressed=true]{background:var(--coral);color:#fff;border-color:var(--coral)}.bread-grid{max-width:1300px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,2vw,28px);align-items:start}.bread-grid article{min-width:0;background:#fff7db;box-shadow:6px 7px 0 #a5ad91;clip-path:polygon(0 0,100% 0,100% 96%,93% 100%,0 100%);transition:transform .25s}.bread-grid article:nth-child(2){margin-top:65px;transform:rotate(2deg)}.bread-grid article:nth-child(3){margin-top:18px;transform:rotate(-2deg)}.bread-grid article:nth-child(4){margin-top:90px;transform:rotate(1deg)}.bread-grid article[hidden]{display:none}.product-photo{height:230px;overflow:hidden;background:#e7d4a4}.product-photo img{width:100%;height:100%;object-fit:cover}.product-loaf img{object-position:89% 42%;transform:scale(1.5)}.product-roll img{object-position:31% 22%;transform:scale(1.7)}.product-croissant img{object-position:4% 80%;transform:scale(1.5)}.product-cinnamon img{object-position:64% 85%;transform:scale(1.5)}.product-copy{padding:20px}.product-copy>span{font:700 .65rem Georgia,serif;color:var(--coral);letter-spacing:.16em}.product-copy h3{font-size:1.3rem;letter-spacing:-.06em;line-height:1.35}.product-copy p{font-size:.78rem;min-height:65px}.product-copy>div{border-top:2px dashed var(--line);padding-top:12px;display:grid;gap:8px}.product-copy small{font-size:.75rem}.product-copy button{cursor:pointer;background:var(--ink);color:white;border:0;padding:10px;text-align:left;font-weight:700;font-size:.76rem}.product-copy button:hover{background:var(--coral)}.filter-count{max-width:1300px;margin:32px auto 0;font-size:.75rem}.basket{background:var(--blue);color:#fff6dc;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.88fr);gap:7vw;padding:clamp(80px,9vw,145px) clamp(22px,8vw,140px)}.basket h2{font-size:clamp(3.2rem,5vw,6rem);margin:30px 0}.basket-intro>p:not(.overline){max-width:440px;font-size:.9rem}.bread-doodle{display:flex;gap:25px;align-items:center;margin-top:60px;color:#f4d768;transform:rotate(-9deg)}.bread-doodle span{font-size:5rem}.bread-doodle strong{font:900 2.3rem/.95 Georgia,serif;letter-spacing:-.08em}.basket-paper{background:#fff8da;color:var(--ink);padding:clamp(23px,4vw,48px);box-shadow:18px 20px 0 #173956;align-self:start;min-height:490px;clip-path:polygon(0 0,100% 0,100% 97%,95% 100%,91% 97%,86% 100%,81% 97%,76% 100%,71% 97%,66% 100%,61% 97%,56% 100%,51% 97%,46% 100%,41% 97%,36% 100%,31% 97%,26% 100%,21% 97%,16% 100%,11% 97%,6% 100%,0 97%)}.paper-head{display:flex;justify-content:space-between;gap:10px;border-bottom:3px solid var(--ink);padding-bottom:12px;font:700 .65rem Georgia,serif;letter-spacing:.13em}.basket-paper h3{font-size:2rem;letter-spacing:-.05em}.basket-paper>p{font-size:.8rem}.basket-paper ul{list-style:none;padding:0;min-height:45px}.basket-paper li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--line);padding:9px 0;font-size:.82rem}.qty{display:flex;align-items:center;gap:8px;white-space:nowrap}.qty button{border:1px solid var(--ink);background:transparent;width:28px;height:28px;cursor:pointer;color:var(--ink)}.qty button:disabled{opacity:.3;cursor:not-allowed}.paper-total{display:flex;justify-content:space-between;border-top:2px solid var(--ink);padding-top:14px;margin-top:28px}.paper-total strong{font-size:1.7rem}.basket-paper #clear{background:transparent;border:0;border-bottom:1px solid;padding:7px 0;cursor:pointer;color:var(--ink)}.basket-paper #clear:disabled{opacity:.4;cursor:not-allowed}.paper-foot{border-top:1px dashed var(--line);margin-top:25px;padding-top:20px;font-size:.7rem!important}.closing{padding:clamp(85px,10vw,150px) 25px;text-align:center;background:var(--butter);background-image:radial-gradient(#fff8d670 1px,transparent 1px);background-size:18px 18px}.closing>p:first-child{font:700 .72rem Georgia,serif;letter-spacing:.2em}.closing h2{font-size:clamp(3rem,6vw,7rem);margin:30px auto}.closing>p:not(:first-child){max-width:600px;margin:0 auto 35px}.closing a{display:inline-block;background:var(--ink);color:white;padding:12px 23px;text-decoration:none;font-weight:700}footer{display:flex;justify-content:space-between;background:var(--ink);color:white;padding:24px clamp(20px,5vw,80px);font-size:.74rem}footer a{text-decoration:none;border-bottom:1px solid}@keyframes unfold{from{transform:rotate(6deg) scale(.6);opacity:0}to{transform:rotate(6deg) scale(1);opacity:1}}@media(max-width:1100px){.mast nav{display:none}.hero h1{font-size:clamp(3rem,5vw,5rem)}.bread-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bread-grid article:nth-child(n){margin-top:0;transform:none}.basket{gap:4vw}}@media(max-width:760px){.hero{display:flex;flex-direction:column;min-height:0}.hero-type{padding:60px 25px 50px}.hero-art{min-height:410px}.hero-bottom{position:relative}.hero h1{font-size:clamp(3rem,9vw,5rem)}.unwrap{display:block}.unwrap-title h2{margin:22px 0}.fold-stage{margin-top:45px}.fold-scene{min-height:310px}.shelf-title{display:block}.basket{grid-template-columns:1fr}.basket-paper{box-shadow:8px 8px 0 #173956;margin-right:8px}.bread-doodle{display:none}}@media(max-width:520px){.demo{font-size:.6rem}.brand{font-size:1.4rem}.brand small{font-size:.45rem}.back{font-size:.65rem}.hero h1{font-size:clamp(2.8rem,10vw,4rem)}.hero-art{min-height:310px}.round-stamp{width:95px;height:95px;font-size:.55rem}.paper-label{font-size:.5rem}.fold-tabs button{padding:8px;font-size:.68rem}.fold-scene{display:block}.scene-photo{height:190px;clip-path:none}.scene-copy{padding:18px}.scene-copy h3{margin:10px 0;font-size:1.5rem}.bread-grid{gap:9px}.product-photo{height:145px}.product-copy{padding:12px}.product-copy h3{font-size:1rem}.product-copy p{min-height:80px;font-size:.7rem}.product-copy button{font-size:.67rem;padding:8px}.basket-paper h3{font-size:1.5rem}footer{display:block}footer a{display:inline-block;margin-top:10px}}@media(max-width:380px){.hero h1{font-size:2.7rem}.bread-grid{grid-template-columns:1fr 1fr}.product-photo{height:130px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Japanese body copy: avoid stranded short endings at responsive widths. */
p:not(.handnote){text-wrap:pretty;line-break:strict}

/* Bakery wrapper: an open photo fold next to a large, plain industry title. */
.hero{grid-template-columns:41% 59%;min-height:690px;background:#f8e5a2}
.hero-type{align-self:end;padding:45px 20px 95px clamp(25px,5vw,82px)}
.hero h1{font-size:clamp(3.6rem,5.25vw,6.3rem);line-height:1.13;letter-spacing:-.085em;margin:18px 0 8px}
.hero h1 em{font-size:.84em}
.hero-phrase{font-weight:900;font-size:clamp(1rem,1.6vw,1.35rem);color:var(--coral);margin:8px 0 18px}
.hero .handnote{margin:12px 0 0;font-size:.95rem}
.hero-art{min-height:690px}
.hero-photo{inset:5% 4% 8% 2%;transform:rotate(2deg);box-shadow:13px 17px 0 #bd973d}
.fold-top{top:1%;right:1%;transform:rotate(2deg)}
.fold-side{bottom:7%;left:1%;width:18%;height:15%;transform:rotate(2deg)}
.round-stamp{width:112px;height:112px;right:2%;bottom:8%;font-size:.64rem}
.paper-label{top:10%;left:-1%;transform:rotate(-3deg)}
@media(max-width:960px){.hero{grid-template-columns:44% 56%}.hero-type{padding:32px 20px 90px 30px}.hero h1{font-size:clamp(3.2rem,5.1vw,4.8rem)}.hero-art{min-height:620px}}
@media(max-width:760px){.hero{display:flex;flex-direction:column;min-height:0}.hero-art{order:1;min-height:clamp(340px,78vw,540px)}.hero-type{order:2;align-self:stretch;padding:27px 25px 42px}.hero-bottom{order:3}.hero-photo{inset:5% 5% 7% 3%}.hero h1{font-size:clamp(3.3rem,10.5vw,5rem);margin:12px 0 6px}.hero .handnote{margin:8px 0 0}.hero-phrase{margin:8px 0}.hero-lead{margin:12px 0}.jump{margin-top:10px}.round-stamp{width:95px;height:95px}}
@media(max-width:520px){.hero-art{min-height:clamp(300px,82vw,400px)}.hero h1{font-size:clamp(3.2rem,11vw,4.4rem)}.hero-type{padding:25px 22px 36px}.hero-squiggle{font-size:4rem}.paper-label{font-size:.48rem;padding:8px 12px}}
