:root{--ink:#233b33;--paper:#faf8f2;--green:#254e3f;--red:#963e36}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.7}button,a,input{ -webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #d69726;outline-offset:5px}.demo-bar{text-align:center;background:#e9ece6;font-size:12px;padding:6px 16px;color:#435449}header{max-width:1080px;margin:auto;padding:25px 36px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d8ddd1}.brand{font: bold 30px Georgia,serif;color:var(--ink);text-decoration:none;letter-spacing:-1.2px}.brand span{display:block;font:9px Arial,sans-serif;letter-spacing:1.3px;margin-top:6px}.header-note{font-size:12px;letter-spacing:1px}main{max-width:980px;padding:0 36px;margin:auto}.intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px;padding:32px 0}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 12px}h1{font-size:44px;font-weight:600;line-height:1.5;letter-spacing:.07em;margin:0}.lead{margin:15px 0 0}figure{margin:0;position:relative;height:225px;border-radius:3px;overflow:hidden;background:#ded5c4}figure img{height:100%;width:100%;object-fit:cover}figcaption{position:absolute;bottom:5px;right:10px;color:white;text-shadow:0 1px 5px #000;font-size:12px}.notice{border:1px solid #c98365;background:#fff1e6;display:flex;gap:18px;padding:18px 25px;border-radius:3px;color:#773329}.notice-icon{flex-shrink:0;border:1.7px solid currentColor;border-radius:50%;height:28px;width:28px;text-align:center;line-height:25px;font-weight:bold;margin-top:11px}.notice h2{margin:0;font-size:21px;line-height:1.7}.seven{font-size:32px;padding:0 3px}.notice p{font-size:18px;font-weight:700;margin:0 0 9px}.date-example{font-size:16px;color:#513c31}.date-example strong{background:#fff;padding:2px 8px;margin-left:3px}.notice small{font-size:12px;color:#785b4f;display:block;margin-top:6px}.choose{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:25px 0 35px}.option{--card:var(--green);background:var(--card);border:0;color:#fff;padding:23px 28px 0;cursor:pointer;border-radius:4px;display:flex;align-items:center;flex-direction:column;transition:transform .18s,box-shadow .18s;text-align:center}.option:hover{transform:translateY(-3px);box-shadow:0 8px 20px #263b3422}.shipping{--card:var(--red)}.option-top{display:flex;justify-content:space-between;width:100%;font-size:14px;color:#ffffffe0}.option-top>span{font-family:Georgia,serif;opacity:.6}.option svg{width:55px;height:55px;margin-top:14px}.option h2{font-size:32px;letter-spacing:.07em;margin:10px 0 1px;line-height:1.4}.option p{margin:5px 0 12px;font-size:15px}.pill{border:1px solid #ffffff70;padding:3px 14px;border-radius:2px;font-size:14px}.option-bottom{border-top:1px solid #ffffff40;width:100%;display:flex;justify-content:space-between;align-items:center;padding:15px 0;margin-top:24px;font-size:14px}.option-bottom>span{font-size:22px}.how{padding:22px 0 30px}.how>.eyebrow{font-size:10px;opacity:.7}.how h2{font-size:21px;margin:0 0 24px;font-weight:600}.how ol{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0;list-style:none;margin:0}.how li{display:flex;gap:12px;align-items:flex-start}.how li>span{font:24px Georgia,serif;color:#827449;border-bottom:1px solid #b5aa8f}.how b{font-size:15px}.how li p{font-size:13px;margin:5px 0;color:#5c685f}.product{border-top:1px solid #cdd3c8;border-bottom:1px solid #cdd3c8;margin:10px 0 50px}.product summary{cursor:pointer;display:flex;justify-content:space-between;padding:19px 0;font-size:16px;font-weight:600;list-style:none}.product summary::-webkit-details-marker{display:none}.product p{font-size:14px;margin:0 0 20px}footer{max-width:1080px;margin:auto;border-top:1px solid #d8ddd1;padding:25px 36px;display:flex;align-items:center;gap:20px;font-size:12px;color:#6a766c}.footer-brand{font:bold 22px Georgia,serif;color:var(--ink);margin-right:auto}footer a{color:inherit;font-size:12px}dialog{border:0;border-radius:8px;background:var(--paper);color:var(--ink);padding:36px;width:calc(100% - 32px);max-width:560px;max-height:90dvh;overflow-y:auto;box-shadow:0 25px 100px #0005}dialog::backdrop{background:#14251fcc;backdrop-filter:blur(3px)}.close{position:absolute;right:10px;top:6px;border:0;background:none;font-size:30px;width:44px;height:44px;color:var(--ink);cursor:pointer}dialog h2{font-size:27px;line-height:1.45;margin:12px 0 20px}dialog .modal-kicker{font-size:13px;font-weight:bold;letter-spacing:1px;margin:0}dialog .date-panel{padding:20px;text-align:center;background:#fff1e6;color:#773329;margin:15px 0}dialog .date-panel strong{display:block;font-size:29px}dialog .date-panel p{margin:2px 0;font-weight:bold}dialog p{font-size:16px}dialog .fine{font-size:13px;color:#617064}.check{display:flex;align-items:flex-start;gap:12px;padding:18px 0;cursor:pointer;font-weight:600;font-size:16px}.check input{width:22px;height:22px;flex-shrink:0;accent-color:var(--green);margin-top:3px}.proceed{padding:16px 20px;border:0;border-radius:3px;background:var(--green);color:white;width:100%;font-weight:bold;cursor:pointer}.proceed:disabled{background:#d6dbd4;color:#626d62;cursor:not-allowed}.shipping-action{background:var(--red)}.back{display:block;width:100%;border:0;background:none;color:var(--ink);padding:13px;cursor:pointer;text-decoration:underline}
@media(max-width:600px){header{padding:20px}.header-note{font-size:10px}.brand{font-size:27px}main{padding:0 18px}.intro{gap:15px;padding:25px 0;grid-template-columns:1.08fr .92fr}h1{font-size:29px;letter-spacing:.02em}.eyebrow{font-size:8px;letter-spacing:1px}.lead{font-size:14px;margin-top:12px}figure{height:164px}.notice{padding:14px 12px;gap:9px}.notice-icon{width:22px;height:22px;line-height:19px;margin-top:7px}.notice h2{font-size:17px}.seven{font-size:27px}.notice p{font-size:16px}.date-example{font-size:14px}.date-example strong{display:inline-block;margin:3px 0 0;padding:1px 4px}.choose{gap:12px;margin-top:18px}.option{padding:16px 12px 0}.option-top{font-size:12px}.option-top>span{display:none}.option h2{font-size:clamp(20px,5.8vw,30px);letter-spacing:0}.option svg{width:45px;height:45px}.option p{font-size:12px}.pill{font-size:12px;padding:3px 6px}.option-bottom{font-size:12px;gap:5px;margin-top:20px;line-height:1.5;text-align:left}.option-bottom>span{font-size:20px}.how{padding:0 0 25px}.how h2{font-size:18px}.how ol{grid-template-columns:1fr;gap:18px}.how li{gap:18px}.how b{font-size:16px}.how li p{font-size:14px;margin:0}.how li>span{min-width:24px;text-align:center}.product{margin-bottom:30px}footer{padding:22px 18px;gap:12px;flex-wrap:wrap}dialog{padding:32px 22px}.demo-bar{font-size:11px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media(max-width:340px){.choose{gap:8px}.option{padding-left:8px;padding-right:8px}.option h2{font-size:19px}.intro{grid-template-columns:1fr}figure{height:130px}}
/* Product photographs and small Nyako appearances */
body{overflow-x:clip}.intro{padding-top:65px}.hero-photo{position:relative;isolation:isolate}.hero-photo figure{position:relative;z-index:1;height:245px}.hero-photo figure img{object-position:50% 52%}.nyako{display:block;pointer-events:none;overflow:hidden;mix-blend-mode:multiply}.nyako img{position:absolute;max-width:none;height:auto}.hero-nyako{position:absolute;width:96px;height:84px;top:-53px;right:24px;z-index:0;transform:rotate(9deg)}.hero-nyako img{width:164px;left:-35px;top:-11px}.photo-story{position:relative;margin-top:24px;padding:30px 0 12px;border-top:1px solid #d8ddd1}.story-heading{padding-right:70px;margin-bottom:24px}.story-heading h2{font-size:25px;font-weight:500;letter-spacing:.04em;margin:0}.photo-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px}.photo-grid figure{height:180px}.photo-grid .plate-photo{grid-row:span 2;height:376px}.photo-grid img{display:block}.edge-nyako{position:absolute;right:-69px;top:40px;width:92px;height:85px;transform:rotate(-32deg);z-index:0}.edge-nyako img{width:180px;left:-46px;top:-24px}.gift-row{display:grid;grid-template-columns:1fr 1.3fr;gap:28px;align-items:center;margin-top:16px}.gift-row figure{height:220px}.gift-row p{font-size:18px;line-height:1.9}.gift-row small{display:block;font-size:13px;color:#617064;line-height:1.8;margin-top:12px}.cafe-photo{height:190px;overflow:hidden;margin:35px 0 24px;border-radius:3px}.cafe-photo img{width:100%;height:100%;object-fit:cover;object-position:center 42%}footer{position:relative;padding-right:105px;min-height:105px}.footer-nyako{position:absolute;width:76px;height:85px;right:22px;bottom:0}.footer-nyako img{width:113px;left:-18px;top:-8px}
@media(max-width:600px){.intro{padding-top:54px}.hero-photo figure{height:173px}.hero-nyako{transform:rotate(9deg) scale(.76);transform-origin:bottom right;right:9px;top:-65px}.photo-story{margin-top:16px;padding-top:26px}.story-heading h2{font-size:20px}.story-heading .eyebrow{font-size:9px}.photo-grid{gap:10px;grid-template-columns:1fr 1fr}.photo-grid .plate-photo{grid-column:1/-1;grid-row:auto;height:230px}.photo-grid figure{height:145px}.edge-nyako{right:-39px;top:22px;transform:rotate(-32deg) scale(.72)}.gift-row{gap:16px;grid-template-columns:1fr 1fr}.gift-row figure{height:158px}.gift-row p{font-size:15px}.gift-row small{font-size:12px}.cafe-photo{height:160px;margin-top:25px}footer{padding-right:100px}.footer-nyako{right:16px}.story-heading{padding-right:50px}}
/* Revised reading order and unclipped character layouts */
.reservation-heading{padding:24px 0 20px;border-top:1px solid #d8ddd1}.reservation-heading h2{font-size:28px;margin:0 0 8px}.reservation-heading p:last-child{margin:0}.gift-row{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.gift-row p{min-width:0;overflow-wrap:anywhere;line-break:strict;text-wrap:pretty}.how li>div{min-width:0}.story-heading{padding-right:100px}.edge-nyako{width:180px;height:180px;overflow:visible;right:calc((100% - 100vw)/2 - 86px);top:0;transform:rotate(-75deg);transform-origin:center;z-index:2}.edge-nyako img{position:static;display:block;width:100%;height:auto;max-width:100%}footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 24px;padding:28px 36px;align-items:center;min-height:160px}footer>.footer-brand{grid-column:1;grid-row:1;margin:0;align-self:end}footer>span:nth-child(2){grid-column:1;grid-row:2;align-self:start;overflow-wrap:anywhere;font-size:14px}.footer-nyako{position:static;grid-column:2;grid-row:1/3;width:125px;height:auto;overflow:visible;mix-blend-mode:normal}.footer-nyako img{position:static;display:block;width:100%;height:auto;max-width:100%}
@media(max-width:600px){.gift-row{grid-template-columns:1fr;gap:12px;margin-top:20px}.gift-row figure{height:auto;aspect-ratio:1.53}.gift-row p{font-size:18px;margin:0 0 10px}.gift-row small{font-size:14px;margin-top:8px;line-height:1.85}.story-heading{padding-right:65px}.story-heading h2{font-size:20px;line-height:1.8;word-break:normal;line-break:strict}.edge-nyako{width:160px;height:160px;right:calc((100% - 100vw)/2 - 77px);top:0;transform:rotate(-75deg)}footer{padding:24px 18px;gap:8px 12px;grid-template-columns:minmax(0,1fr) 104px}.footer-nyako{width:104px}.footer-brand{font-size:25px}footer>span:nth-child(2){font-size:13px;line-height:1.8}.reservation-heading h2{font-size:24px}.how h2{line-height:1.8}.product{margin-bottom:24px}}
/* Nyako beside the reservation heading; keep the full illustration visible. */
.reservation-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.reservation-copy{min-width:0}.reservation-nyako{display:block;width:150px;height:auto;flex-shrink:0;mix-blend-mode:normal}.reservation-copy>p:last-child{margin:0}.reservation-copy .eyebrow{margin-bottom:12px}
@media(max-width:600px){.reservation-heading{gap:8px}.reservation-nyako{width:90px}.reservation-copy h2{font-size:clamp(19px,5vw,24px);line-height:1.65}.reservation-copy>p:last-child{font-size:14px;line-height:1.8}}
.intro h1{letter-spacing:0;line-height:1.45}.hero-product-name{display:block;font-size:clamp(28px,3.6vw,44px);font-weight:600;letter-spacing:.025em;white-space:nowrap}.hero-booking-label{display:block;font-size:18px;font-weight:400;letter-spacing:.13em;margin-top:12px}.intro .lead{font-size:14px;margin-top:22px;color:#617064}
@media(max-width:600px){.intro{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:12px}.hero-product-name{font-size:clamp(22px,5.8vw,34px);letter-spacing:0}.hero-booking-label{font-size:15px;margin-top:10px;letter-spacing:.08em}.intro .lead{font-size:12px;margin-top:18px}}
@media(max-width:340px){.intro{grid-template-columns:1fr}.hero-product-name{font-size:30px}}
.brand{display:block;line-height:1}.brand-logo{display:block;width:210px;height:auto;max-width:100%}.footer-brand{width:190px;max-width:100%}.footer-brand .brand-logo{width:100%}
@media(max-width:600px){header .brand{max-width:58%}.brand-logo{width:180px}.footer-brand{width:165px}}
/* Preserve the complete collaboration logo, including both names and the cross. */
header .brand-logo{width:230px}.footer-brand{width:215px}.footer-brand .brand-logo{width:100%}
@media(max-width:600px){header .brand-logo{width:190px}.footer-brand{width:180px}}
.making{margin:36px 0}.making h2{font-size:24px;line-height:1.7;font-weight:500;margin:0 0 20px}.making-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:660px;margin:auto}.making-grid figure{height:auto;overflow:visible;background:transparent}.making-grid video{display:block;width:100%;height:auto;aspect-ratio:512/910;background:#211f1a;border-radius:4px;object-fit:contain}.making-grid figcaption{position:static;text-shadow:none;color:var(--ink);font-size:14px;text-align:center;margin-top:8px}
@media(max-width:600px){.making{margin:28px 0}.making h2{font-size:20px}.making-grid{gap:12px}}
.making-film{width:100%;max-width:960px;margin:0 auto}.making-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;border-radius:5px;background:#211f1a}
@media(max-width:600px){.making-film{max-width:340px}}

.option{text-decoration:none}

/* Shared reservation guide, immediately before the two booking buttons. */
.how{padding:30px 0 8px}.how ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}.how b{font-size:16px}.how li p{font-size:14px}.how li>span{flex-shrink:0;min-width:24px;text-align:center}.how li>div{overflow-wrap:anywhere}
@media(max-width:600px){.how{padding:26px 0 8px}.how ol{grid-template-columns:1fr;gap:20px}.how h2{margin-bottom:20px}}

/* Keep the new packaging and its tag visible. */
.photo-grid img[src="stollen-nyako-wrap.jpeg"]{object-position:center 75%}

/* Read reservation steps top to bottom at every screen size. */
.how ol{grid-template-columns:minmax(0,1fr);gap:24px}
.how li{align-items:flex-start}
.how li>span{flex-shrink:0}

/* Keep the artwork unchanged; make the registered mark a touch-friendly link. */
.footer-nyako{position:relative;right:auto;bottom:auto}
.nyako-test-link{position:absolute;left:73.6%;top:83.3%;width:44px;height:44px;transform:translate(-50%,-50%);pointer-events:auto;border-radius:50%;background:transparent}
.nyako-test-link:focus-visible{outline:2px solid var(--green);outline-offset:0}

.stollen-about{padding:32px 0;border-top:1px solid #d8ddd1}.stollen-about h2{font-size:24px;margin:0 0 20px}.stollen-about p{margin:12px 0}.stollen-about .stollen-price{font-size:26px;font-weight:600}.stollen-price span{display:inline-block;font-size:16px;font-weight:400}

.shipping-info{padding:28px 0;border-top:1px solid #d8ddd1;border-bottom:1px solid #d8ddd1;margin-bottom:30px}.shipping-info h2{font-size:21px;margin:0 0 18px;font-weight:600}.shipping-info p{margin:0;line-height:1.9}

/* Keep dates and lead-time phrases together on narrow screens. */
.keep-phrase{display:inline-block;white-space:nowrap}
.notice>div{min-width:0}
@media(max-width:600px){.notice-line{display:block}.notice h2{margin-bottom:8px}.notice .date-example{margin-top:12px}}

.ingredients-info{padding:28px 0;border-top:1px solid #d8ddd1}.ingredients-info h2{font-size:21px;margin:0 0 18px;font-weight:600}.ingredients-info p{margin:0;line-height:1.9;overflow-wrap:anywhere}

/* Contain the edge character at the viewport, including mobile Safari. */
html{overflow-x:hidden}
body{width:100%;overflow-x:hidden}
main{overflow-x:clip}

.option.unavailable{--card:#767b78;cursor:default}.option.unavailable:hover{transform:none;box-shadow:none}.option.unavailable .pill{white-space:normal}
