@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(./cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(./cinzel-latin-600-normal-CH_LB4su.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(./cinzel-latin-700-normal-Dkw14w9r.woff2)format("woff2"),url(./cinzel-latin-700-normal-C-gK7hA8.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:300;src:url(./poppins-latin-300-normal-Dku2WoCh.woff2)format("woff2"),url(./poppins-latin-300-normal-DCNuMXUj.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(./poppins-latin-400-normal-cpxAROuN.woff2)format("woff2"),url(./poppins-latin-400-normal-BOb3E3N0.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(./poppins-latin-500-normal-C8OXljZJ.woff2)format("woff2"),url(./poppins-latin-500-normal-DGXqpDMm.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(./poppins-latin-600-normal-zEkxB9Mr.woff2)format("woff2"),url(./poppins-latin-600-normal-BJdTmd5m.woff)format("woff")}:root{--bg:#070605;--bg-2:#0e0b08;--gold:#d6a64a;--gold-hi:#f6dc94;--gold-lo:#8a6420;--red:#d8161b;--ink:#f3ead8;--muted:#b5a487;--line:#d6a64a47;--serif:"Cinzel", "Trajan Pro", Georgia, serif;--sans:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--gold-grad:linear-gradient(115deg, #8a6420 0%, #d6a64a 28%, #f6dc94 48%, #c8942f 66%, #8a6420 100%)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg stroke-linecap='round'%3E%3Cline x1='3' y1='4' x2='27' y2='28' stroke='%23f6dc94' stroke-width='2.4'/%3E%3Cline x1='9' y1='2' x2='29' y2='24' stroke='%23d6a64a' stroke-width='2.4'/%3E%3C/g%3E%3C/svg%3E") 2 2,auto;background-image:radial-gradient(70% 55% at 50% 38%,#24170b 0%,#140d0799 40%,#0000 75%),radial-gradient(60% 40% at 50% 110%,#d8161b29,#0000 70%);background-attachment:fixed;margin:0;font-weight:300;line-height:1.6;overflow-x:hidden}a,button,.tilt{cursor:pointer}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#scene{z-index:0;touch-action:pan-y;width:100%;height:100%;display:block;position:fixed;inset:0}.vignette{z-index:1;pointer-events:none;background:radial-gradient(85% 75% at 50% 45%,#0000 55%,#000000b8 100%);position:fixed;inset:0}main,.footer,.topbar{z-index:2;position:relative}#loader{z-index:50;background:var(--bg);color:var(--muted);letter-spacing:.2em;text-transform:uppercase;place-content:center;justify-items:center;gap:18px;font-size:13px;transition:opacity .8s,visibility .8s;display:grid;position:fixed;inset:0}#loader.out{opacity:0;visibility:hidden}.loader-ring{border:3px solid #d6a64a26;border-top-color:var(--gold);border-right-color:var(--red);border-radius:50%;width:64px;height:64px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.topbar{padding:max(18px, env(safe-area-inset-top)) clamp(16px, 4vw, 40px) 0;pointer-events:none;z-index:5;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.badge{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-hi);background:#0a08068c;border-radius:999px;align-items:center;gap:10px;padding:7px 14px 7px 12px;font-size:11px;display:inline-flex}.badge i{background:var(--red);border-radius:50%;width:8px;height:8px;animation:1.8s infinite pulse;box-shadow:0 0 #d8161bb3}@keyframes pulse{70%{box-shadow:0 0 0 9px #d8161b00}to{box-shadow:0 0 #d8161b00}}.topbar-kanji{letter-spacing:.35em;color:#d6a64a8c;font-size:13px}.hero{text-align:center;grid-template-rows:1fr auto auto;justify-items:center;min-height:100svh;padding:64px 16px 22px;display:grid}#logo-slot{aspect-ratio:1;align-self:center;width:min(62vh,92vw,640px);margin-bottom:-4vh;position:relative}.logo-fallback{object-fit:contain;width:100%;height:100%;display:none}body.no-webgl .logo-fallback{animation:6s ease-in-out infinite floaty;display:block}@keyframes floaty{50%{transform:translateY(-10px)rotate(-1deg)}}.hero-copy{text-shadow:0 2px 14px #000000f2,0 0 2px #000c;width:100%;max-width:760px}.sec-head,.closing-line{text-shadow:0 2px 14px #000000f2}.eyebrow{letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin:0 0 6px;font-size:12px;font-weight:500}.hero-title{font-family:var(--serif);letter-spacing:.02em;margin:0 0 22px;font-size:clamp(22px,3.6vw,38px);font-weight:600;line-height:1.15}.hero-title em{background:var(--gold-grad);color:#0000;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;font-style:normal;animation:5s linear infinite shimmer}@keyframes shimmer{to{background-position:-220% 0}}.countdown{justify-content:center;align-items:flex-start;gap:clamp(6px,1.6vw,16px);display:flex}.cd-box{border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#1e160cd9,#0a0806d9);border-radius:14px;flex-direction:column;align-items:center;min-width:clamp(64px,14vw,112px);padding:clamp(10px,1.6vw,16px) 6px clamp(8px,1.2vw,12px);display:flex;position:relative;overflow:hidden;box-shadow:0 18px 40px -18px #000000e6,inset 0 1px #f6dc941f}.cd-box:after{content:"";background:#0000008c;height:1px;position:absolute;top:50%;left:0;right:0}.cd-num{font-family:var(--serif);background:var(--gold-grad);color:#0000;font-variant-numeric:tabular-nums;transform-origin:50% 0;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;font-size:clamp(30px,6.4vw,60px);font-weight:700;line-height:1;display:block}.cd-roll{display:block}.cd-roll.flip{animation:.5s cubic-bezier(.2,.8,.2,1) flip}@keyframes flip{0%{opacity:.15;transform:translateY(-38%)scaleY(.6)}to{opacity:1;transform:none}}.cd-label{letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-top:8px;font-size:clamp(9px,1.4vw,11px)}.cd-sep{font-family:var(--serif);color:var(--red);padding-top:clamp(10px,1.6vw,18px);font-size:clamp(22px,4vw,40px);animation:1s steps(2,start) infinite blink}@keyframes blink{to{visibility:hidden}}.countdown-done{font-family:var(--serif);color:var(--gold-hi);font-size:20px}.progress{align-items:center;gap:14px;max-width:460px;margin:22px auto 0;display:flex}.progress-track{background:#d6a64a24;border-radius:6px;flex:1;height:6px;position:relative}.progress-fill{background:linear-gradient(90deg, var(--red), var(--gold), var(--gold-hi));border-radius:6px;width:0;height:100%;transition:width 1.4s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 14px #d6a64a80}.progress-chop{filter:drop-shadow(0 2px 4px #0009);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='15' r='8' fill='%23f4f1ea'/%3E%3Ccircle cx='13' cy='15' r='8' fill='none' stroke='%2313201a' stroke-width='2.4'/%3E%3Ccircle cx='13' cy='15' r='3.4' fill='%23ff7a45'/%3E%3C/svg%3E") 50%/contain no-repeat;width:26px;height:26px;margin:-13px 0 0 -6px;transition:left 1.4s cubic-bezier(.2,.8,.2,1);position:absolute;top:50%;left:0}.progress-label{color:var(--muted);white-space:nowrap;letter-spacing:.05em;font-size:12px}.progress-label span{color:var(--gold-hi);font-weight:500}.scroll-hint{color:var(--muted);letter-spacing:.24em;text-transform:uppercase;flex-direction:column;align-items:center;gap:8px;margin-top:26px;font-size:11px;text-decoration:none;display:inline-flex}.scroll-hint i{border:1.5px solid var(--line);border-radius:12px;width:22px;height:36px;position:relative}.scroll-hint i:after{content:"";background:var(--gold);border-radius:2px;width:4px;height:7px;margin-left:-2px;animation:1.8s ease-in-out infinite wheel;position:absolute;top:7px;left:50%}@keyframes wheel{60%{opacity:0;transform:translateY(10px)}to{opacity:0}}.scroll-hint:hover{color:var(--gold-hi)}.duo{grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(16px,4vw,48px);max-width:1080px;margin:12vh auto 0;padding:0 clamp(16px,4vw,40px);display:grid}.duo-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(160deg,#1a130bdb,#080705db);border-radius:20px;padding:36px 32px;position:relative;overflow:hidden}.duo-kanji{color:#d6a64a12;pointer-events:none;font-size:120px;font-weight:700;line-height:1;position:absolute;bottom:-28px;right:-6px}.duo-card h3{font-family:var(--serif);letter-spacing:.08em;color:var(--gold-hi);margin:0 0 10px;font-size:26px;font-weight:600}.duo-card p{color:var(--muted);margin:0;font-size:15px}.duo-amp{font-family:var(--serif);color:var(--red);text-shadow:0 0 30px #d8161b80;font-size:clamp(48px,7vw,84px)}.gallery-sec{max-width:1200px;margin:14vh auto 0;padding:0 clamp(16px,4vw,40px)}.sec-head{text-align:center;margin-bottom:40px}.sec-head h2{font-family:var(--serif);margin:0;font-size:clamp(26px,4.4vw,46px);font-weight:600;line-height:1.15}.sec-sub{color:var(--muted);margin:10px 0 0;font-size:14px}.gallery{grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;grid-auto-flow:dense;perspective:1000px;gap:18px;display:grid}.gallery .tall{grid-row:span 2}.gallery .wide{grid-column:span 2}.tilt{margin:0;position:relative}.tilt-inner{border:1px solid var(--line);width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateZ(0);will-change:transform;border-radius:18px;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .4s;position:relative;overflow:hidden;box-shadow:0 24px 50px -24px #000000f2}.tilt:hover .tilt-inner{transition:transform 80ms linear,box-shadow .4s;box-shadow:0 34px 70px -24px #000,0 0 0 1px #f6dc9473}.tilt img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block;transform:scale(1.08)}.tilt:hover img{transform:scale(1.14)}.glare{pointer-events:none;background:radial-gradient(circle at var(--gx,50%) var(--gy,50%), #ffecbe52, transparent 45%);opacity:0;mix-blend-mode:soft-light;transition:opacity .3s;position:absolute;inset:0}.tilt:hover .glare{opacity:1}.tilt figcaption{font-family:var(--serif);letter-spacing:.08em;color:var(--gold-hi);background:linear-gradient(#0000,#000000d9);padding:40px 16px 14px;font-size:15px;font-weight:600;position:absolute;bottom:0;left:0;right:0;transform:translateZ(40px)}.closing{text-align:center;margin:16vh auto 10vh;padding:0 16px}.closing-logo{filter:drop-shadow(0 10px 30px #d6a64a4d);width:150px;height:auto}.closing-line{font-family:var(--serif);margin:8px 0 24px;font-size:clamp(20px,3vw,28px)}.btn-gold{background:var(--gold-grad);color:#1a1208;letter-spacing:.14em;text-transform:uppercase;background-size:200% 100%;border-radius:999px;padding:13px 28px;font-size:13px;font-weight:600;text-decoration:none;transition:background-position .6s,transform .3s;display:inline-block;box-shadow:0 10px 30px -10px #d6a64ab3}.btn-gold:hover{background-position:100% 0;transform:translateY(-2px)}.footer{padding:22px clamp(16px, 4vw, 40px) max(22px, env(safe-area-inset-bottom));color:var(--muted);background:#050403e0;border-top:1px solid #d6a64a29;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;font-size:12.5px;display:flex}.credit{color:var(--muted);text-decoration:none;transition:color .3s}.credit strong{color:var(--gold-hi);font-weight:500}.credit:hover{color:var(--ink)}.lightbox{z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#040302f0;place-items:center;padding:50px 60px;display:grid;position:fixed;inset:0}.lightbox[hidden]{display:none}.lightbox img{border-radius:14px;max-width:100%;max-height:82vh;animation:.45s cubic-bezier(.2,.8,.2,1) lbIn;box-shadow:0 30px 80px #000c}@keyframes lbIn{0%{opacity:0;transform:perspective(900px)rotateY(-18deg)scale(.9)}}.lightbox p{font-family:var(--serif);color:var(--gold-hi);letter-spacing:.08em;margin:14px 0 0}.lb-close,.lb-nav{border:1px solid var(--line);color:var(--gold-hi);background:#140f09cc;border-radius:50%;place-items:center;width:46px;height:46px;font-size:26px;line-height:1;display:grid;position:absolute}.lb-close{top:16px;right:16px}.lb-prev{margin-top:-23px;top:50%;left:10px}.lb-next{margin-top:-23px;top:50%;right:10px}.lb-close:hover,.lb-nav:hover{border-color:var(--gold)}.reveal{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.2,.8,.2,1);transform:translateY(40px)}.reveal.in{opacity:1;transform:none}.gallery .reveal:nth-child(4n+2){transition-delay:80ms}.gallery .reveal:nth-child(4n+3){transition-delay:.16s}.gallery .reveal:nth-child(4n+4){transition-delay:.24s}@media (width<=900px){.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:190px}.duo{text-align:center;grid-template-columns:1fr}.duo-amp{line-height:.8}}@media (width<=560px){.hero{padding-top:58px}#logo-slot{width:min(46vh,94vw);margin-bottom:-2vh}.topbar-kanji{display:none}.gallery{grid-auto-rows:160px;gap:12px}.gallery .wide{grid-column:span 2}.cd-box{border-radius:12px;flex:1;min-width:0}.cd-sep{display:none}.countdown{gap:8px}.lightbox{padding:60px 12px}.lb-nav{margin:0;top:auto;bottom:18px}.lb-prev{left:calc(50% - 56px)}.lb-next{right:calc(50% - 56px)}.footer{text-align:center;justify-content:center}}@media (height<=700px) and (width>=561px){#logo-slot{width:min(52vh,92vw)}.hero-title{margin-bottom:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}.hero-title em,.cd-num{text-shadow:none}svg{fill:currentColor;flex:none;width:1.15em;height:1.15em}.topbar-call{pointer-events:auto;border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--gold-hi);letter-spacing:.06em;background:#0a080699;border-radius:999px;align-items:center;gap:8px;padding:7px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .3s,background .3s;display:inline-flex}.topbar-call:hover{border-color:var(--gold);background:#281c0ccc}.btn-gold,.btn-ghost{justify-content:center;align-items:center;gap:9px;display:inline-flex}.btn-ghost{border:1px solid var(--gold);color:var(--gold-hi);letter-spacing:.12em;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a08068c;border-radius:999px;padding:12px 24px;font-size:13px;font-weight:500;text-decoration:none;transition:background .3s,color .3s,transform .3s}.btn-ghost:hover{background:#d6a64a29;transform:translateY(-2px)}.hero-ctas{text-shadow:none;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;display:flex}.hero{padding-bottom:14px}.scroll-hint{margin-top:18px}#logo-slot{width:min(54vh,92vw,600px)}.contact-sec{max-width:1200px;margin:12vh auto 0;padding:0 clamp(16px,4vw,40px)}.contact-grid{grid-template-columns:1fr 1fr 1.15fr;align-items:stretch;gap:20px;display:grid}.contact-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(160deg,#1a130be6,#080705e6);border-radius:20px;flex-direction:column;align-items:flex-start;gap:12px;padding:30px 28px;display:flex;position:relative;overflow:hidden}.contact-card:before{content:"";background:linear-gradient(90deg, var(--red), var(--gold), transparent);height:3px;position:absolute;top:0;left:0;right:0}.cc-icon{border:1px solid var(--line);width:48px;height:48px;color:var(--gold-hi);background:#d6a64a1f;border-radius:14px;place-items:center;font-size:22px;display:grid}.contact-card h3{font-family:var(--serif);letter-spacing:.06em;color:var(--gold-hi);margin:4px 0 0;font-size:26px;font-weight:600}.contact-card h4{letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin:10px 0 0;font-size:11px;font-weight:500}.contact-card p{color:var(--muted);margin:0;font-size:14.5px}.cc-big{font-family:var(--serif);color:var(--ink);letter-spacing:.04em;font-size:clamp(30px,3.4vw,40px);font-weight:700;line-height:1.1;text-decoration:none}.cc-big:hover{color:var(--gold-hi)}.cc-note{color:var(--muted);margin-top:-8px;font-size:11.5px}.cc-actions{flex-direction:column;gap:10px;width:100%;margin-top:4px;display:flex}.cc-actions a{width:100%}.cc-small{padding-top:6px;margin-top:auto!important;font-size:13px!important}.cc-small strong{color:var(--gold-hi);font-weight:500}.cc-menus{gap:8px;width:100%;display:grid}.cc-menus a{color:var(--ink);background:#d6a64a12;border:1px solid #d6a64a2e;border-radius:12px;align-items:center;gap:10px;padding:11px 14px;font-size:14px;text-decoration:none;transition:border-color .3s,background .3s;display:flex}.cc-menus a svg{color:var(--gold)}.cc-menus small{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-left:auto;font-size:10.5px}.cc-menus a:hover{border-color:var(--gold);background:#d6a64a24}.contact-card address{color:var(--ink);font-size:15px;font-style:normal;line-height:1.55}.cc-map{aspect-ratio:16/10;border:1px solid var(--line);background:#15110b;border-radius:14px;width:100%;overflow:hidden}.cc-map iframe{filter:invert(.9)hue-rotate(180deg)saturate(.6)brightness(.95)contrast(.95);border:0;width:100%;height:100%;display:block}.cc-where .btn-ghost{width:100%}.cc-list{gap:8px;width:100%;margin:4px 0 0;padding:0;list-style:none;display:grid}.cc-list a{color:var(--ink);word-break:break-all;align-items:center;gap:10px;font-size:14px;text-decoration:none;display:flex}.cc-list a svg{color:var(--gold)}.cc-list a:hover{color:var(--gold-hi)}.closing .hero-ctas{margin-top:0}.foot-info{gap:4px;display:grid}.foot-info a{color:var(--gold-hi);text-decoration:none}.foot-links{align-items:center;gap:14px;display:flex}.foot-links a{color:var(--muted);font-size:18px;text-decoration:none;transition:color .3s;display:inline-flex}.foot-links a:hover{color:var(--gold-hi)}.foot-links .lr{border:1px solid #d6a64a40;border-radius:8px;padding:5px 10px;font-size:12px}.footer .credit{text-align:right;flex-basis:100%}@media (width<=1000px){.contact-grid{grid-template-columns:1fr 1fr}.cc-where{grid-column:span 2}}@media (width<=680px){.contact-grid{grid-template-columns:1fr}.cc-where{grid-column:auto}.contact-card{padding:26px 20px}.footer .credit{text-align:center}.foot-links{flex-wrap:wrap;justify-content:center}}@media (width<=560px){#logo-slot{width:min(42vh,92vw)}.topbar-call span{display:none}.topbar-call{padding:9px}.hero-ctas a{flex:100%}}section[id]{scroll-margin-top:80px}.cc-actions a{letter-spacing:.08em;padding-left:16px;padding-right:16px}
