.woven-study{--ink:#ced2d1;--cream:#e6d8b2;min-height:100svh;background:#35444c;color:var(--ink);padding:0 clamp(18px,5vw,80px);overflow:clip}.woven-study a,.woven-study button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.woven-study button{font:inherit;cursor:pointer}.woven-study button:disabled{cursor:default;opacity:.3}.woven-study a:focus-visible,.woven-study button:focus-visible,.woven-study input:focus-visible{outline:2px solid currentColor;outline-offset:4px}.woven-header{max-width:1280px;margin:auto;justify-content:space-between;padding:26px 0;border-bottom:1px solid #ced2d126}.woven-header,.woven-logo{display:flex;align-items:center}.woven-logo{color:var(--ink);text-decoration:none;font-family:var(--font-heading),serif;font-size:36px;letter-spacing:-.07em;gap:22px}.woven-logo span{font:10px var(--font-body),sans-serif;letter-spacing:.13em}.woven-edition{font:9px Arial,sans-serif;letter-spacing:.16em;color:var(--cream)}.woven-intro{max-width:1080px;margin:64px auto 38px}.woven-kicker{font:9px Arial,sans-serif;letter-spacing:.23em;color:var(--cream);margin:0 0 20px}.woven-intro h1{font-family:var(--font-heading),serif;font-weight:400;font-size:clamp(38px,5vw,64px);line-height:1.45;letter-spacing:.06em;margin:0}.woven-intro h1 em{font-style:normal;color:var(--cream)}.woven-intro>p:last-child{font-size:12px;line-height:2.2;letter-spacing:.06em;margin:22px 0 0}.woven-gallery{max-width:1080px;margin:auto}.woven-selector{display:flex;gap:28px;margin:0 0 22px;border-bottom:1px solid #ced2d12b}.woven-selector button{position:relative;display:flex;align-items:center;gap:10px;background:none;border:0;padding:15px 0;color:#ced2d1ad;font-size:12px;white-space:nowrap;min-height:48px}.woven-selector button span{font:9px Arial,sans-serif;opacity:.65}.woven-selector button[aria-pressed=true]{color:var(--cream)}.woven-selector button:after{position:absolute;content:"";height:2px;bottom:-1px;left:0;right:0;background:var(--cream);transform:scaleX(0);transform-origin:left;transition:transform .3s}.woven-selector button[aria-pressed=true]:after{transform:scaleX(1)}.woven-exhibit{display:grid;grid-template-columns:1fr 1fr;background:#efeee8;box-shadow:0 28px 70px #14212740;border:1px solid #d1d5cc30;border-radius:3px}.woven-art,.woven-exhibit{min-height:590px;overflow:hidden}.woven-art{position:relative;background:#28383b;isolation:isolate;touch-action:pan-x pan-y pinch-zoom;user-select:none}.woven-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;transform:none;filter:none}.woven-art-shade{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#14232655,transparent 35%,#14232622 48%,#142326ed)}.woven-art-bottom,.woven-art-top{position:absolute;left:26px;right:26px;z-index:3;color:#fff5df;display:flex;justify-content:space-between;align-items:center}.woven-art-top{top:25px;font:8px Arial,sans-serif;letter-spacing:.16em}.woven-art-top>span:last-child{border:1px solid #fff5df60;padding:5px 7px;font-size:7px}.woven-art-bottom{bottom:23px;font-size:9px;letter-spacing:.04em}.woven-art-bottom>span:last-child{font-size:22px}.woven-brand{position:absolute;z-index:3;left:32px;right:25px;bottom:80px;color:#f7f0df}.woven-brand>p{font:8px Arial,sans-serif;letter-spacing:.2em}.woven-brand h2{font:400 clamp(35px,4vw,57px)/1.4 var(--font-heading),serif;letter-spacing:.09em;margin:8px 0 12px}.woven-brand>span{font-size:12px;letter-spacing:.12em}.woven-live{padding:28px 32px 24px;color:#30433f;display:flex;flex-direction:column;background:#f2f0e9}.woven-live-top{justify-content:space-between;gap:8px}.demo-badge,.woven-live-top{display:flex;align-items:center}.demo-badge{font-size:10px;letter-spacing:.08em;gap:7px}.demo-badge i{display:block;width:5px;height:5px;border-radius:50%;background:#527361;box-shadow:0 0 0 4px #52736112}.woven-navigation{display:flex;align-items:center;gap:12px;font:10px Arial,sans-serif;font-variant-numeric:tabular-nums}.woven-navigation i{font-style:normal;opacity:.5}.woven-navigation button{border:1px solid #35444c33;background:transparent;border-radius:50%;width:40px;height:40px;color:inherit;font-size:18px}.woven-demo-heading{margin:26px 0 20px}.woven-demo-heading h3{font:500 21px/1.65 var(--font-heading),serif;margin:0;letter-spacing:.03em}.woven-demo-heading p{font-size:11px;line-height:1.9;color:#61736a;margin:8px 0 0}.woven-demo-panels{flex:1;min-height:274px}.woven-demo-panels>div[hidden]{display:none}.demo-line{display:flex;justify-content:space-between;gap:8px;font-size:10px;line-height:1.6;margin-bottom:14px}.demo-line>span:last-child{color:#65736c;font-size:9px}.demo-options{display:flex;gap:7px;margin-bottom:10px}.demo-options button{flex:1;min-height:44px;border:1px solid #35444c29;border-radius:3px;padding:7px 4px;font-size:11px;color:#30433f;background:transparent;transition:background .18s,color .18s}.demo-options button[aria-pressed=true]{background:#354c42;color:#f3f0e8;border-color:#354c42}.time-options button{font-size:13px;font-variant-numeric:tabular-nums}.demo-feedback{min-height:75px;margin:14px 0 12px;border-left:2px solid #9bac9c;padding:8px 0 8px 12px}.demo-feedback b{display:block;font-size:11px;font-weight:500;line-height:1.8}.demo-feedback span{display:block;font-size:9px;color:#61736a;line-height:1.9;margin-top:3px}.demo-primary{display:flex;justify-content:space-between;align-items:center;width:100%;border:0;padding:13px 16px;background:#354c42;color:#f6efdf;font-size:11px!important;min-height:46px;border-radius:3px}.demo-primary span{font-size:17px}.recipe-count{font-size:10px;color:#65736c;margin:14px 0 5px}.recipe-result{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:13px 0;border-bottom:1px solid #30433f1c}.recipe-result b{display:block;font-weight:500;font-size:12px;line-height:1.6}.recipe-result span{display:block;font-size:9px;line-height:1.8;color:#65736c;margin-top:3px}.recipe-result>div:last-child{display:flex;align-items:center;gap:5px;flex-shrink:0}.recipe-result em{font:22px var(--font-heading),serif}.recipe-result em small{font-size:9px;margin-left:2px}.recipe-result button{font-size:23px;color:#6d735c;border:0;background:none;width:40px;height:44px}.recipe-result button[aria-pressed=true]{color:#ac655e}.demo-note{font-size:10px;color:#61736a;line-height:1.8;margin:14px 0 0;min-height:36px}.workflow-summary{display:flex;justify-content:space-between;align-items:baseline}.workflow-summary p{font-size:11px;margin:0}.workflow-summary b{font:32px/1.2 var(--font-heading),serif}.workflow-summary small{font-size:12px;margin-left:4px}.workflow-progress{height:4px;background:#30433f17;margin:12px 0}.workflow-progress>span{display:block;height:100%;background:#587862;transition:width .4s cubic-bezier(.2,.8,.2,1)}.workflow-tasks label{display:flex;align-items:center;gap:9px;min-height:44px;border-bottom:1px solid #30433f1c;cursor:pointer}.workflow-tasks input{accent-color:#42614d;width:18px;height:18px;flex-shrink:0;margin:0}.workflow-tasks label>span{font-size:11px}.workflow-tasks small{font-size:9px;color:#61736a;margin-left:auto}.workflow-tasks input:checked+span{color:#65736c;text-decoration:line-through}.woven-capabilities{border-top:1px solid #30433f22;padding-top:16px;margin-top:20px}.woven-capabilities>span{font-size:9px;color:#61736a}.woven-capabilities ul{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:8px 0 0;list-style:none}.woven-capabilities li{border:1px solid #30433f24;padding:4px 7px;font-size:9px;border-radius:2px}.woven-caption{font-size:10px;line-height:1.8;letter-spacing:.05em;margin:17px 0 0;color:var(--cream)}.woven-caption span{color:#ced2d1b3;margin-left:8px}.woven-footer{max-width:1080px;margin:60px auto 0;padding:35px 0 45px;border-top:1px solid #ced2d126}.woven-footer>p{font:400 clamp(16px,2vw,23px)/1.8 var(--font-heading),serif;letter-spacing:.06em}.woven-footer small{display:block;font-size:9px;line-height:2;color:#ced2d1ad}.woven-footer a{display:flex;align-items:center;justify-content:space-between;max-width:270px;color:var(--cream);text-decoration:none;font-size:12px;border-bottom:1px solid #e6d8b25c;padding:18px 0;margin-top:22px}@media(min-width:900px){.woven-intro{position:relative}.woven-intro>p:last-child{position:absolute;right:0;bottom:12px}}@media(max-width:700px){.woven-header{padding:20px 0}.woven-logo{font-size:30px}.woven-logo span{display:none}.woven-edition{font-size:7px}.woven-intro{margin:38px auto 26px}.woven-kicker{font-size:7px;margin-bottom:16px}.woven-intro h1{font-size:38px}.woven-intro>p:last-child{font-size:10px;margin-top:16px;line-height:2.1}.woven-desktop-break{display:none}.woven-selector{gap:0;justify-content:space-between;margin-bottom:16px}.woven-selector button{gap:7px;font-size:11px}.woven-selector button span{font-size:8px}.woven-exhibit{grid-template-columns:1fr;min-height:0}.woven-art{min-height:0;height:260px}.woven-art-top{top:17px;left:18px;right:18px}.woven-art-bottom{bottom:13px;left:18px;right:18px;font-size:8px}.woven-brand{left:20px;bottom:52px}.woven-brand h2{font-size:34px;margin:4px 0 7px}.woven-brand>p{font-size:7px}.woven-brand>span{font-size:10px}.woven-live{padding:18px 20px 22px}.woven-demo-heading{margin:18px 0}.woven-demo-heading h3{font-size:19px}.woven-demo-heading p{font-size:10px}.woven-demo-panels{min-height:274px}.woven-capabilities{margin-top:14px}.woven-caption{font-size:9px}.woven-caption span{margin-left:4px}.woven-footer{margin-top:42px}.woven-navigation{gap:10px}.woven-navigation button{width:44px;height:44px}}@media(max-width:359px){.woven-study{padding:0 14px}.woven-live{padding:17px 15px}.woven-art{height:230px}.woven-demo-heading h3{font-size:17px}.recipe-result b{font-size:11px}.recipe-result>div:last-child{gap:0}.recipe-result button{width:32px}}@media(prefers-reduced-motion:reduce){.woven-study *,.woven-study :after{animation:none!important;transition:none!important}.frame-reveal,.frame-reveal-edge{display:none}}.woven-art,.woven-exhibit{min-width:0}.woven-scroll{position:absolute;inset:0;z-index:4;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom;scrollbar-width:none;cursor:grab;scroll-behavior:auto}.woven-scroll::-webkit-scrollbar{display:none}.woven-scroll[data-dragging=true]{cursor:grabbing}.woven-scroll:focus-visible{outline:2px solid #e6d8b2;outline-offset:-5px}.woven-scroll-space{height:100%;pointer-events:none}.woven-scroll-progress{position:absolute;left:26px;right:26px;bottom:10px;z-index:5;display:flex;gap:5px;pointer-events:none}.woven-scroll-progress>span{height:2px;flex:1;background:#eee8dc40;overflow:hidden}.woven-scroll-progress i{display:block;height:100%;background:#eee8dc;transform-origin:left}@media(max-width:700px){.woven-scroll-progress{left:18px;right:18px;bottom:7px}}.woven-art{background:#26383e}.frame-window{position:absolute;inset:20px 20px 57px;overflow:hidden;background:#233438;border:1px solid #e6d8b252;box-shadow:0 0 0 5px #182b3033,0 8px 24px #101f2540;isolation:isolate}.frame-window .woven-photo{max-width:none}.frame-next-picture,.frame-reveal{position:absolute;inset:0}.frame-reveal{z-index:1;pointer-events:none}.frame-next-picture{background-size:cover;background-position:center 20%}.frame-reveal-edge{position:absolute;top:0;bottom:0;width:1px;z-index:2;background:#eee8dc8c;box-shadow:-7px 0 18px 3px #15282d55;pointer-events:none}.frame-window .woven-art-top{left:18px;right:18px;top:18px}.frame-window .woven-brand{left:24px;right:18px;bottom:30px}.woven-art>.woven-art-bottom{bottom:23px;left:22px;right:22px;color:#e6d8b2}@media(max-width:700px){.woven-art{height:312px}.frame-window{inset:13px 13px 47px}.frame-window .woven-art-top{left:13px;right:13px;top:13px}.frame-window .woven-brand{left:16px;right:13px;bottom:22px}.woven-art>.woven-art-bottom{left:16px;right:16px;bottom:17px}.woven-scroll-progress{bottom:8px}}@media(max-width:359px){.woven-art{height:282px}.frame-window{inset:11px 11px 45px}.frame-window .woven-brand h2{font-size:30px}}@media(prefers-reduced-motion:reduce){.frame-window .woven-photo{transform:none!important}}.woven-live{min-width:0;overflow:hidden}.demo-scene-viewport{display:grid;grid-template-columns:minmax(0,1fr);flex:1;min-width:0;overflow:clip}.demo-scene{grid-area:1/1;min-width:0;display:flex;flex-direction:column;background:#f2f0e9;transform:none}.demo-scene .woven-capabilities,.demo-scene .woven-demo-heading{flex-shrink:0}.demo-scene-viewport{margin-inline:-12px}.demo-scene{padding-inline:12px}.woven-gallery{--cream:var(--study-muted,#e6d8b2);--gallery-ink:var(--study-text,#ced2d1);width:100%;position:relative}.woven-gallery button{font-family:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.woven-gallery button:disabled{cursor:default;opacity:.3}.woven-gallery :is(button,input):focus-visible{outline:2px solid #42614d;outline-offset:3px}.woven-gallery .woven-live{color-scheme:light}.woven-gallery .woven-brand h2{font:400 clamp(35px,4vw,57px)/1.4 var(--font-heading),serif;letter-spacing:.09em}.woven-gallery .woven-demo-heading h3{font:500 21px/1.65 var(--font-heading),serif;letter-spacing:.03em}.woven-gallery .woven-selector{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.woven-gallery .woven-selector button{color:var(--gallery-ink);opacity:.7}.woven-gallery .woven-selector button[aria-pressed=true]{color:var(--cream);opacity:1}.woven-gallery .woven-selector button:focus-visible{outline-color:var(--cream)}.woven-invitation{font:400 21px/1.7 var(--font-heading),serif;color:var(--cream);margin:0 0 20px}.woven-invitation>span{display:block;font:12px/2 var(--font-body),sans-serif;color:var(--gallery-ink);margin-top:8px}.woven-disclaimer{font-size:10px;line-height:1.9;color:var(--gallery-ink);opacity:.8;margin:14px 0 0}.thread-space .woven-gallery{margin-top:40px}.thread-space[data-theme=light] .woven-gallery{--cream:#526b5e;--gallery-ink:#35444c}.thread-space[data-theme=light] .woven-caption span{color:#526b5e}.fortune-cards{display:flex;gap:10px}.fortune-cards button{flex:1;min-height:106px;border:1px solid #8e958360;border-radius:5px;background:repeating-linear-gradient(45deg,#e6dfce 0 1px,#eee9dd 1px 8px);color:#697563;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px}.fortune-cards button[aria-pressed=true]{background:#354c42;color:#f6efdf;border-color:#354c42}.fortune-cards button>span{font:30px Georgia,serif}.fortune-cards small{font-size:10px;letter-spacing:.12em}.fortune-reading{min-height:108px}.fortune-reading span{font-size:11px}.stay-rooms{display:grid;gap:6px}.stay-rooms button{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;background:transparent;color:#30433f;border:1px solid #35444c29;border-radius:3px;padding:9px 10px;min-height:57px}.stay-rooms button[aria-pressed=true]{border-color:#527361;background:#dfe6da}.stay-rooms b{font-size:11px;font-weight:500}.stay-rooms small{display:block;font-size:9px;line-height:1.7;color:#61736a}.stay-rooms button>span:last-child{font-size:13px;text-align:right;white-space:nowrap}.ryokan-demo .demo-feedback{margin-block:10px;min-height:65px}.local-place{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #30433f1c;padding:12px 0}.local-place b{font-size:12px;font-weight:500}.local-place small{display:block;font-size:9px;color:#61736a;margin-top:4px;line-height:1.6}.local-place p{font-size:10px;margin:6px 0 0;line-height:1.7}.local-place button{flex-shrink:0;min-width:48px;min-height:44px;border:1px solid #35444c29;border-radius:3px;color:#30433f;background:transparent;font-size:10px}.local-place button[aria-pressed=true]{background:#354c42;color:#f3f0e8}@media(min-width:701px){.thread-space .woven-gallery{width:min(1080px,88vw);max-width:none;left:50%;transform:translateX(-50%)}}@media(max-width:700px){.woven-gallery .woven-selector{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:16px;row-gap:0}.woven-gallery .woven-selector button{font-size:11px;gap:7px;min-height:48px}.woven-gallery .woven-brand h2{font-size:34px}.woven-gallery .woven-demo-heading h3{font-size:19px}.thread-space .woven-gallery{width:calc(100vw - 32px);max-width:none;left:50%;transform:translateX(-50%)}.woven-invitation{font-size:19px}.woven-invitation>span{font-size:11px}}@media(max-width:359px){.woven-gallery .woven-brand h2{font-size:30px}.woven-gallery .woven-demo-heading h3{font-size:17px}.woven-gallery .woven-selector{column-gap:10px}}@media(prefers-reduced-motion:reduce){.woven-gallery *,.woven-gallery :after{animation:none!important;transition:none!important}}.thread-space:has(.woven-gallery){overflow-x:clip}