:root{--ink:#343023;--yellow:#ffda66;--pink:#ed86a4;--blue:#43afd0;--orange:#eb684b;--green:#66ad72;--paper:#fffef8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;font-size:16px;line-height:1.8}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #2178a3;outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.45}button{color:inherit}.skip{position:absolute;top:-100px;z-index:30;background:white;padding:10px}.skip:focus{top:0}.header{height:92px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);position:sticky;top:0;z-index:10;border-bottom:1px solid #34302314}.brand{display:flex;align-items:center;gap:13px;font-size:14px;font-weight:800;line-height:1.6;flex-shrink:0}.brand small{font-size:17px;display:block;letter-spacing:.05em}.brand-icon{position:relative;font-family:Georgia,serif;display:flex;align-items:center;justify-content:center;width:42px;height:47px;background:var(--yellow);border-radius:15px;font-size:39px;line-height:1}.brand-icon span{font-size:15px;color:#d54968;position:absolute;right:3px;bottom:5px}.header nav{display:flex;gap:32px;font-size:14px;font-weight:700}.header nav a{border-bottom:2px solid transparent}.header nav a:hover{border-color:var(--pink)}.nav-pill{background:var(--yellow);border-radius:30px;padding:10px 21px;font-size:14px;font-weight:700}.hero{background:var(--yellow);position:relative;overflow:hidden}.hero-inner{max-width:1360px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:30px;padding:70px 5% 50px;min-height:655px}.eyebrow{font-size:13px;font-weight:800;letter-spacing:.14em;margin-bottom:21px;line-height:1.7}.hero .eyebrow{font-size:12px;display:flex;align-items:center;gap:12px}.mini-heart{background:var(--paper);border-radius:50%;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;color:#e46886;font-size:17px}.hero-kicker{font-weight:700;font-size:16px;margin-bottom:18px}.hero h1{font-size:clamp(40px,4.7vw,69px);font-weight:900;line-height:1.38;letter-spacing:-.065em}.pink{color:#cf4f76}.blue{color:#1881a1}.hero-sub{font-weight:700;margin:24px 0 28px;line-height:1.9;font-size:16px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;border-radius:50px;padding:16px 26px;border:0;font-size:15px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button.dark{background:var(--ink);color:white}.button span{font-size:23px;line-height:1}.hero-note{display:flex;gap:15px;margin-top:22px;font-size:13px;font-weight:700}.hero-note span:before{content:'✳';margin-right:6px;color:#976022}.hero-visual{position:relative;transform:rotate(2deg);padding:15px 0}.hero-visual img{width:100%;height:auto;animation:bob 6s ease-in-out infinite}.round-label{position:absolute;right:-12px;top:-17px;background:var(--blue);color:#fff;width:114px;height:114px;border-radius:50%;z-index:1;text-align:center;font-size:12px;padding:17px;line-height:1.6;transform:rotate(9deg);box-shadow:4px 5px 0 #343023}.round-label b{font-size:17px;line-height:1.4;display:block}.visual-caption{display:block;background:var(--paper);padding:8px 24px;border-radius:40px;font-size:14px;font-weight:800;width:max-content;max-width:100%;margin:10px auto 0;transform:rotate(-4deg)}.hero-bottom{max-width:1225px;margin:auto;padding:20px 3%;border-top:1px solid #34302335;display:flex;justify-content:space-between;font-size:13px;font-weight:700;gap:20px}.scroll-label{font-size:10px;letter-spacing:.1em;display:flex;align-items:center;gap:12px}.scroll-label i{width:1px;height:27px;background:var(--ink)}.ribbon{background:var(--pink);padding:16px 0;overflow:hidden;border-block:1px solid var(--ink)}.ribbon>div{width:max-content;animation:marquee 38s linear infinite;word-spacing:18px;font-weight:800;font-size:18px;letter-spacing:.07em}.ribbon b{font-size:22px;margin:0 20px}.section{max-width:1240px;margin:auto;padding:95px 38px}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:45px}h2{font-size:36px;letter-spacing:-.055em;font-weight:900}.section-intro{font-size:15px;line-height:2.05;margin-bottom:6px}.browse-controls{display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap;align-items:center}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{background:transparent;border:1px solid #d9d7cc;border-radius:30px;padding:10px 18px;font-size:14px;font-weight:700;transition:.2s}.filters button:hover{border-color:var(--ink)}.filters button.active{color:white;background:var(--ink);border-color:var(--ink)}.filters button span{font-size:11px;margin-left:5px;opacity:.7}.search{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--ink);padding:8px 3px}.search>span{font-size:26px;line-height:1}.search input{border:0;background:transparent;width:190px;min-width:0;font-size:14px;padding:5px 0;color:var(--ink)}.list-meta{display:flex;justify-content:space-between;font-size:12px;color:#726e63;margin:26px 0 19px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{border:1px solid #dcd8c9;border-radius:18px;overflow:hidden;background:#fff;position:relative;transition:transform .22s,box-shadow .22s;text-align:left;padding:0;display:flex;flex-direction:column;min-width:0}.card:hover{transform:translateY(-6px);box-shadow:5px 7px 0 #343023}.card-head{background:#fff0df;min-height:100px;display:flex;align-items:center;justify-content:space-between;padding:14px 23px;border-bottom:1px solid #34302313}.card.life .card-head{background:#e7f1dc}.card.experience .card-head{background:#e0f3fa}.booth-number{font-family:Arial,sans-serif;font-size:51px;font-weight:900;line-height:1;color:#de6247;letter-spacing:-.05em}.life .booth-number{color:#438348}.experience .booth-number{color:#2187a8}.booth-number small{font-size:10px;letter-spacing:.13em;display:block;margin-bottom:6px}.category-tag{font-size:12px;line-height:1.5;background:#ffffffb0;border-radius:20px;padding:7px 12px;max-width:160px}.card-body{padding:24px;display:flex;flex-direction:column;flex:1;min-height:195px}.card h3{font-size:19px;letter-spacing:-.025em;margin-bottom:19px;overflow-wrap:anywhere}.product-label{font-size:11px;color:#80786a;letter-spacing:.03em;margin-bottom:4px}.product-name{font-size:14px;line-height:1.8;flex:1}.card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eeebe2;margin-top:22px;padding-top:14px;font-size:12px}.plus{font-family:Arial,sans-serif;display:grid;place-items:center;background:var(--yellow);width:26px;height:26px;border-radius:50%;font-size:20px}.empty{text-align:center;padding:70px 10px}.empty .button{margin-top:25px}.map-section{background:#e5f3f6;border-block:1px solid #34302324}.map-inner{display:grid;grid-template-columns:.85fr 1.5fr;align-items:center;gap:60px}.map-copy>p:not(.eyebrow){margin:24px 0;font-size:14px;line-height:2}.map-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin:24px 0;font-size:12px}.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{width:9px;height:9px;border-radius:50%}.food-dot{background:var(--orange)}.life-dot{background:var(--green)}.exp-dot{background:var(--blue)}.map-image{background:white;border:1px solid #343023;border-radius:15px;padding:15px;transform:rotate(1deg);box-shadow:7px 7px 0 #a5d7e5;transition:transform .2s}.map-image:hover{transform:rotate(0)}.map-image span{display:block;font-size:12px;padding-top:10px;font-weight:700}.small{font-size:12px!important}.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.event-card{border-radius:19px;padding:28px;position:relative;overflow:hidden}.stamp{background:#ffdf75}.stage{background:#f5b4c7}.truck{background:#b3dce9}.event-label{font-family:Arial,sans-serif;font-size:11px;letter-spacing:.08em;font-weight:700}.event-symbol{font-size:59px;line-height:1.5;margin:12px 0 4px}.event-card h3{font-size:21px;margin-bottom:13px;letter-spacing:-.04em}.event-card p{font-size:14px;line-height:1.9;min-height:80px}.event-time{border-top:1px solid #34302340;margin-top:22px;padding-top:18px;font-weight:800;font-size:17px;line-height:1.7}.event-time small{display:block;font-weight:400;font-size:11px;margin-top:9px}.timetable{display:grid;grid-template-columns:.85fr 1fr 1fr;gap:35px;margin-top:65px;padding-top:45px;border-top:1px solid #dcd8c9}.timetable h3{font-size:19px}.schedule-title{display:flex;gap:14px;align-items:center;font-size:18px;font-weight:800;border-bottom:3px solid var(--green);padding-bottom:10px}.schedule-title span{font-size:13px}.afternoon{border-color:var(--orange)}dl{margin-bottom:0}dl>div{display:grid;grid-template-columns:105px 1fr;gap:8px;font-size:12px;margin:13px 0;line-height:1.6}dt{font-weight:700}dd{margin:0}.guide{display:grid;grid-template-columns:.9fr 1.3fr;gap:70px;border-top:1px solid #dcd8c9}.guide>div>p:last-child{margin-top:20px;font-size:14px}.guide h2{font-size:31px}.accordions details{border-bottom:1px solid #d5d0c3}.accordions summary{list-style:none;cursor:pointer;font-weight:700;font-size:15px;padding:22px 0;display:flex;justify-content:space-between;gap:12px;align-items:center}.accordions summary::-webkit-details-marker{display:none}.accordions summary span{font-size:23px;color:#927531}.accordions details[open] summary span{transform:rotate(45deg)}.accordions details p{padding:0 20px 24px 0;font-size:14px;line-height:2}footer{background:var(--yellow);padding:65px max(5%,calc((100% - 1164px)/2)) 30px}.footer-title{font-size:50px;font-weight:900;line-height:1.45;letter-spacing:-.05em}.footer-title span{color:#ce5176;margin-left:12px}.footer-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-top:45px;border-top:1px solid #34302340;padding-top:25px;font-size:14px}.footer-row small{font-size:11px}.footer-row a{font-size:12px;border-bottom:1px solid var(--ink)}dialog{border:0;border-radius:24px;padding:45px;width:min(570px,calc(100% - 32px));color:var(--ink);max-height:90dvh;background:var(--paper);box-shadow:0 25px 90px #0003}dialog::backdrop{background:#28241799;backdrop-filter:blur(5px)}dialog .close{position:absolute;right:17px;top:15px;border:0;background:var(--yellow);border-radius:50%;width:36px;height:36px;line-height:1;font-size:28px}dialog h2{font-size:26px;margin:12px 0 22px;overflow-wrap:anywhere}.dialog-number{font-size:12px;font-weight:800;background:var(--yellow);border-radius:20px;padding:6px 15px;display:inline-block}.dialog-product{background:#f6efdb;border-radius:14px;padding:20px;margin:20px 0}.dialog-product p{font-size:17px;font-weight:700;line-height:1.7}.dialog-product small{font-size:12px;color:#716853}.source-panel{width:100%;border-radius:7px;margin:20px 0;border:1px solid #eee1cc}.coming{border-top:1px solid #ded9cd;padding-top:22px;margin-top:22px;font-size:14px}.coming b{display:block;margin-bottom:4px}.coming p{font-size:13px;color:#716b60}.dialog-map{display:block;margin-top:22px;text-align:center;background:var(--ink);color:white;padding:10px;border-radius:30px;font-size:14px}#map-dialog{width:min(1200px,calc(100% - 28px));padding:32px}#map-dialog h2{margin:0 0 10px}#map-dialog>p:not(.eyebrow){font-size:12px}.map-scroll{overflow:auto;margin-top:20px}.map-scroll img{width:100%;min-width:800px;max-width:none}body.modal-open{overflow:hidden}@keyframes bob{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-9px) rotate(1deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@media(min-width:1500px){.hero-inner{padding-inline:40px}}@media(max-width:1000px){.header{padding:0 25px}.header nav{gap:18px}.nav-pill{display:none}.hero-inner{gap:20px;padding:50px 35px;min-height:570px}.hero h1{font-size:48px}.hero-visual{padding-top:30px}.round-label{right:0;top:0;width:90px;height:90px;font-size:10px;padding:12px}.round-label b{font-size:14px}.cards{gap:15px}.card-body{padding:20px}.card h3{font-size:17px}.section{padding:75px 30px}.section-top{gap:25px}h2{font-size:31px}.map-inner{gap:35px;grid-template-columns:1fr 1.25fr}.event-card{padding:23px}.event-card h3{font-size:18px}.timetable{grid-template-columns:1fr 1fr;gap:25px}.timetable>div:first-child{grid-column:1/-1}.guide{gap:35px}.hero-bottom{padding-inline:35px}}@media(max-width:700px){html{scroll-padding-top:115px}.header{height:auto;min-height:95px;flex-wrap:wrap;padding:13px 20px 10px;gap:8px}.brand{font-size:11px;gap:8px}.brand small{font-size:14px}.brand-icon{height:35px;width:34px;font-size:30px;border-radius:10px}.brand-icon span{font-size:12px}.header nav{width:100%;justify-content:space-between;font-size:12px;gap:12px;padding-top:5px}.hero-inner{grid-template-columns:1fr;padding:36px 24px 25px;gap:24px;min-height:0}.hero .eyebrow{margin-bottom:18px;font-size:10px}.hero-kicker{font-size:13px;margin-bottom:14px}.hero h1{font-size:clamp(36px,9.8vw,60px);line-height:1.35}.hero-sub{font-size:13px;margin:17px 0 23px}.button{font-size:14px;padding:14px 23px}.hero-note{margin-top:17px;font-size:12px}.hero-visual{width:90%;max-width:470px;margin:auto;padding:5px 0}.hero-visual img{width:100%}.round-label{top:-8px;right:-9px}.visual-caption{font-size:12px;padding:7px 18px}.hero-bottom{padding:17px 24px;font-size:11px}.scroll-label{display:none}.ribbon{padding:12px 0}.ribbon>div{font-size:14px}.ribbon b{font-size:17px}.section{padding:60px 21px}.section-top{display:block;margin-bottom:30px}h2{font-size:30px}.eyebrow{font-size:11px;margin-bottom:14px}.section-intro{font-size:13px;margin-top:22px}.browse-controls{gap:18px}.filters{gap:7px}.filters button{padding:8px 12px;font-size:12px}.search{width:100%}.search input{width:100%;font-size:14px}.list-meta{font-size:10px;margin-top:20px;gap:15px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{border-radius:13px}.card-head{min-height:90px;padding:12px;align-items:flex-start;gap:6px;flex-direction:column}.booth-number{font-size:36px;display:flex;align-items:center;gap:8px}.booth-number small{font-size:8px;margin:0;letter-spacing:.02em}.category-tag{font-size:10px;padding:3px 8px;max-width:100%}.card-body{padding:16px 13px;min-height:218px}.card h3{font-size:15px;line-height:1.6;margin-bottom:14px}.product-label{font-size:10px}.product-name{font-size:14px;line-height:1.75}.card-bottom{font-size:10px;margin-top:16px;padding-top:11px;gap:3px}.plus{width:21px;height:21px;font-size:16px;flex-shrink:0}.card:hover{box-shadow:3px 4px 0 #343023;transform:translateY(-3px)}.map-inner{grid-template-columns:1fr;gap:30px}.map-copy>p:not(.eyebrow){font-size:13px;margin:18px 0}.map-image{padding:10px}.event-grid{grid-template-columns:1fr}.event-card{padding:26px;display:grid;grid-template-columns:1fr 55px;column-gap:10px}.event-label{grid-column:1}.event-symbol{grid-column:2;grid-row:1/4;margin:0;font-size:45px}.event-card h3{grid-column:1;font-size:21px;margin-top:15px}.event-card p{grid-column:1/-1;font-size:14px;min-height:0}.event-time{grid-column:1/-1;font-size:16px}.timetable{grid-template-columns:1fr;margin-top:40px;padding-top:30px}.timetable>div:first-child{grid-column:auto}dl>div{font-size:13px;grid-template-columns:110px 1fr}.guide{grid-template-columns:1fr;gap:22px}.guide h2{font-size:29px}.accordions summary{font-size:14px}.accordions details p{font-size:13px}footer{padding:44px 25px 25px}.footer-title{font-size:37px}.footer-row{display:block;font-size:12px;margin-top:30px}.footer-row a{display:inline-block;margin-top:20px}.footer-row small{font-size:10px}dialog{padding:50px 24px 28px}dialog h2{font-size:23px}.source-panel{margin-block:15px}#map-dialog{padding:45px 20px 25px}.map-scroll img{min-width:900px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* A playful, soft motion system. */
.motion-letter{display:inline-block;white-space:pre;transform-origin:50% 85%}.hero-copy,.hero-visual,.hero-bottom{position:relative;z-index:1}.park-motion{position:absolute;inset:0;pointer-events:none;z-index:0}.header{transition:box-shadow .35s,background .35s}.header.has-scrolled{box-shadow:0 5px 25px #3430230b;background:#fffef8f5}.reading-progress{position:absolute;left:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--pink),var(--yellow),var(--blue));width:100%;transform:scaleX(0);transform-origin:left}.round-label{animation:label-float 5s ease-in-out infinite;transition:border-radius .45s}.visual-caption{animation:caption-sway 6s ease-in-out infinite}.event-symbol{transform-origin:50% 75%;animation:icon-sway 4s ease-in-out infinite}.stage .event-symbol{animation-delay:-1.3s}.truck .event-symbol{animation-delay:-2.6s}.scroll-label i{transform-origin:top;animation:scroll-line 2s ease-in-out infinite}.plus{transition:transform .4s cubic-bezier(.34,1.56,.64,1),background .25s}.card-head{transition:background .3s}.card:hover .plus,.card:focus-visible .plus{transform:rotate(90deg) scale(1.15);background:var(--pink)}.filters button{transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .25s,color .25s}.filters button:active{transform:scale(.93)}.button,.nav-pill{transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s,border-radius .4s}.button:active{transform:scale(.96)}@media(hover:hover) and (pointer:fine){.button:hover,.nav-pill:hover{transform:translateY(-4px) rotate(-1deg);box-shadow:4px 5px 0 #34302326;border-radius:24px 35px 25px 32px}.round-label:hover{border-radius:38% 48% 36% 47%}.event-card:hover .event-symbol{animation-duration:1s}.hero h1:hover .motion-letter{animation:letter-wave .65s ease-in-out;animation-delay:calc(var(--char)*35ms)}}
@keyframes label-float{0%,100%{transform:translateY(0) rotate(9deg);border-radius:50% 47% 49% 46%}50%{transform:translateY(-9px) rotate(2deg);border-radius:43% 50% 45% 50%}}@keyframes caption-sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(-1deg) translateY(-4px)}}@keyframes icon-sway{0%,75%,100%{transform:rotate(0)}82%{transform:rotate(-9deg)}90%{transform:rotate(8deg)}95%{transform:rotate(-4deg)}}@keyframes scroll-line{0%,100%{transform:scaleY(.4);opacity:.4}50%{transform:scaleY(1);opacity:1}}@keyframes letter-wave{0%,100%{transform:translateY(0)}45%{transform:translateY(-8px) rotate(-4deg)}}@media(prefers-reduced-motion:reduce){.park-motion{display:none}.motion-letter{transform:none!important}.reading-progress{display:none}}

.map-image{padding:0;overflow:hidden;background:var(--yellow);border:0;border-radius:22px;box-shadow:7px 7px 0 #a5d7e5}.map-image img{width:100%;height:auto}.map-image>span{padding:12px 15px;background:var(--paper);font-size:14px}
.card-head.has-photo{position:relative;isolation:isolate;min-height:130px;overflow:hidden}.card-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;z-index:-1}.has-photo .booth-number{background:#fffef8ed;padding:8px 12px;border-radius:12px;font-size:42px}.has-photo .category-tag{background:#fffef8ed}.has-story{width:min(780px,calc(100% - 32px))}.maker-hero,.maker-staff{margin:24px 0 30px}.maker-hero img,.maker-staff img{width:100%;height:auto;border-radius:18px}.maker-section{margin:34px 0}.maker-section .eyebrow{font-size:11px;color:#8c6b30;margin-bottom:10px}.maker-section h3{font-size:24px;line-height:1.6;margin-bottom:16px}.maker-section>p:not(.eyebrow){font-size:16px;line-height:2}.maker-staff{background:#fff0db;border-radius:18px;overflow:hidden}.maker-staff img{border-radius:0}.maker-staff figcaption{font-size:13px;padding:12px 18px;line-height:1.8}.maker-products{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:23px}.maker-product{background:#f9efcf;border-radius:16px;padding:24px}.maker-product:nth-child(2){background:#e8f1de}.maker-product-index{font-size:12px;font-weight:800;letter-spacing:.13em;color:#806323}.maker-product h4{font-size:17px;line-height:1.7;margin:10px 0 13px}.maker-product p{font-size:14px;line-height:2}@media(max-width:700px){.card-head.has-photo{min-height:90px}.has-photo .booth-number{font-size:30px;padding:5px 8px}.has-story{padding:50px 20px 28px}.maker-section h3{font-size:21px}.maker-products{grid-template-columns:1fr}.maker-product{padding:21px}.maker-section>p:not(.eyebrow){font-size:15px}.maker-hero,.maker-staff{margin-block:20px}.maker-staff figcaption{font-size:12px}}
.maker-links{margin:30px 0;border-top:1px solid #ded9cd;padding-top:25px}.maker-links .eyebrow{margin-bottom:8px;font-size:11px;color:#8c6b30}.maker-links h3{font-size:19px;margin-bottom:17px}.website-links{display:grid;gap:11px}.website-links a{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #d8cfb9;border-radius:14px;padding:15px 18px;background:#fff4cc;font-size:14px;font-weight:700;line-height:1.7;overflow-wrap:anywhere;transition:background .25s,transform .25s}.website-links a:hover{background:var(--yellow);transform:translateY(-2px)}.external-symbol{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--paper);flex-shrink:0;font-size:20px}.website-note{font-size:12px;color:#716b60;margin-top:10px}

/* Manufacturer imagery */
.card-head.has-photo{min-height:245px;display:flex;align-items:flex-start;padding:14px;background:#fff7dc}.card-cover{inset:60px 12px 10px;width:calc(100% - 24px);height:175px;object-fit:contain;object-position:center;border-radius:12px;transition:transform .35s}.card:hover .card-cover{transform:scale(1.035)}.has-photo .booth-number{font-size:25px;padding:3px 8px;display:flex;align-items:center;gap:6px}.has-photo .booth-number small{font-size:8px}.has-photo .category-tag{font-size:10px}.maker-photo-section{margin:30px 0}.maker-photo-section h3{font-size:24px;margin:10px 0}.maker-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.maker-photo{margin:0;background:#fff2d8;border-radius:18px;overflow:hidden;min-width:0}.maker-photo.featured{grid-column:1/-1}.photo-frame{display:block;position:relative;width:100%;border:0;padding:14px;background:#fff8e8;cursor:default}.photo-frame img{display:block;width:100%;height:260px;object-fit:contain;transition:transform .3s}.featured .photo-frame img{height:auto;max-height:500px;object-fit:contain}.maker-photo figcaption{font-size:12px;line-height:1.8;padding:12px 16px}@media(max-width:700px){.card-head.has-photo{min-height:190px;padding:10px}.card-cover{inset:52px 8px 10px;width:calc(100% - 16px);height:128px}.has-photo .booth-number{font-size:21px}.has-photo .category-tag{font-size:8px}.maker-gallery{grid-template-columns:1fr}.maker-photo.featured{grid-column:auto}.photo-frame img{height:auto;max-height:450px}.maker-photo-section h3{font-size:21px}}

.round-label{width:124px;height:124px;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.round-label .welcome-line,.round-label .park-name-line{display:block;white-space:nowrap;word-break:keep-all;overflow-wrap:normal}.round-label b{line-height:1.4}@media(max-width:1000px){.round-label{width:104px;height:104px;padding:10px;gap:3px}.round-label b{font-size:14px}}

/* Keep manufacturer browsing still and immediately visible. */
#makers *,#makers *::before,#makers *::after{animation:none!important;transition:none!important}#makers .card:hover,#makers .card:focus-visible,#makers .card:hover .card-cover,#makers .card:hover .plus,#makers .card:focus-visible .plus,#makers .filters button:active{transform:none}#makers .card:hover{box-shadow:none}

.manufacturer-profile{padding:30px 0;border-top:1px solid #e6dcc5;scroll-margin-top:20px}.manufacturer-profile>.eyebrow{color:#8c6b30;font-size:11px;margin-bottom:10px}.manufacturer-name{font-size:25px;line-height:1.6;margin-bottom:22px}.manufacturer-introduction{font-size:16px;line-height:2;white-space:pre-line;margin:24px 0}.profile-main-photo{margin:22px 0}.profile-extra-photos{margin:26px 0}.manufacturer-note{background:#fff0d7;border-radius:14px;padding:14px 18px;font-size:14px;line-height:1.8}.products-heading{font-size:22px;line-height:1.6;margin:10px 0 20px}.manufacturer-profile .maker-product p{white-space:pre-line}.maker-jumps{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.maker-jumps button{border:1px solid #e4cf9b;border-radius:25px;padding:8px 15px;background:#ffe49e;font-weight:700;font-size:13px}.maker-jumps button:hover{background:#ffd875}@media(max-width:700px){.manufacturer-name{font-size:21px}.manufacturer-introduction{font-size:15px}.products-heading{font-size:19px}.manufacturer-profile{padding:24px 0}.maker-jumps button{font-size:12px}}

.card-head.has-illustration{aspect-ratio:3/2;min-height:0}.has-illustration .card-cover{object-fit:contain;object-position:center}

.card[data-booth="32"] .card-cover{object-position:center 65%;}

/* Consistent eco activity cards and upright manufacturing photo. */
#maker-17-0 .maker-product:nth-child(2){background:#f9efcf}
.rotated-photo{position:relative;width:100%;overflow:hidden}
.photo-frame .rotated-photo img{position:absolute;left:50%;top:50%;width:calc(100% * var(--photo-ratio));height:calc(100% / var(--photo-ratio));max-height:none;max-width:none;transform:translate(-50%,-50%) rotate(90deg);object-fit:contain}
