:root{--font-main:'Shippori Mincho',serif;--text-color:#e0e0e0;--bg-color:#111111;--accent-color:#c5a059}body{margin:0;padding:0;font-family:var(--font-main);color:var(--text-color);background-color:var(--bg-color);line-height:2.2;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block;background-color:transparent;border:none}h1,h2,h3{font-weight:700;margin-bottom:1.5rem;line-height:1.4;color:#fff}h2{border-bottom:1px solid var(--accent-color);display:inline-block;padding-bottom:10px}p{margin-bottom:2rem;font-size:1.1rem;text-align:justify}.container{max-width:1000px;margin:0 auto;padding:0 20px}.content-section{padding:80px 0;background-color:var(--bg-color)}#title-section{position:relative;width:100%;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;background:#000}#hero-video{position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;transform:translate(-50%,-50%);z-index:0;filter:brightness(.5)}.title-overlay{position:relative;z-index:1}.title-overlay h1{font-size:4rem;text-shadow:0 4px 15px rgba(0,0,0,1);margin:0;letter-spacing:.2em}.subtitle{font-size:1.5rem;color:#ccc;margin-top:10px;letter-spacing:.2em}.intro-logo{width:100%;max-width:100%;margin:0 auto;display:block}.intro-text p{font-size:1.1rem;font-weight:400;line-height:2.2;color:var(--accent-color);margin-bottom:2.5rem;text-align:justify}.drop-cap{float:left;font-size:5.5rem;line-height:.8;padding-top:5px;padding-right:15px;padding-bottom:0;color:var(--accent-color);font-family:var(--font-main)}.parallax-image-block{position:relative;width:100%;height:100vh;margin:80px 0;background-attachment:fixed;background-position:center;background-repeat:no-repeat;background-size:cover;display:flex;justify-content:flex-end;align-items:flex-end;overflow:hidden}.parallax-overlay{position:absolute;bottom:0;left:0;width:100%;height:60%;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);z-index:1}.parallax-image-block .caption-overlay{position:relative;z-index:2;margin:0 8% 8% 0;color:#fff;font-size:2.8rem;font-weight:700;text-shadow:0 4px 15px rgba(0,0,0,.8);text-align:right;font-family:var(--font-main);letter-spacing:.1em;line-height:1.4;writing-mode:horizontal-tb}.scrolly-container{display:flex;position:relative;max-width:1200px;margin:50px auto}.scrolly-text{width:45%;padding:10vh 5% 10vh 5%;z-index:10}.scrolly-step{margin-bottom:60vh;padding:30px;background:rgba(20,20,20,.85);border-left:4px solid var(--accent-color);box-shadow:0 10px 30px rgba(0,0,0,.5);opacity:1;color:#ddd;transition:all .3s ease}.scrolly-step.is-active{background:rgba(40,40,40,.95);color:#fff;transform:scale(1.02);border-left:4px solid #fff}.scrolly-image-wrapper{width:55%;height:100vh;position:sticky;top:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#000}.scrolly-image-wrapper img{width:100%;height:100%;object-fit:contain;transition:opacity .5s;opacity:.8}.scrolly-caption{position:absolute;bottom:20px;right:20px;background:rgba(0,0,0,.8);color:#fff;padding:5px 15px;font-size:.9rem;border:1px solid #555}.slideshow-container{max-width:900px;margin:40px auto;position:relative}.slide{display:none;position:relative;width:100%;aspect-ratio:16/9;background-color:#000}.slide.active-slide{display:block}.slide img{width:100%;height:100%;object-fit:contain}.next,.prev{cursor:pointer;position:absolute;top:50%;padding:16px;margin-top:-22px;color:#fff;font-weight:700;font-size:18px;background:rgba(0,0,0,.5);user-select:none;transition:.3s}.next{right:0}.next:hover,.prev:hover{background:var(--accent-color)}.dot{cursor:pointer;height:12px;width:12px;margin:0 5px;background-color:#555;border-radius:50%;display:inline-block;transition:background-color .3s ease}.dot.active-dot,.dot:hover{background-color:var(--accent-color)}.body-text-section-with-bg{position:relative;background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;padding:120px 0}.body-text-section-with-bg::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.8);z-index:1}.body-text-section-with-bg .container{position:relative;z-index:2}.body-text-section-with-bg p{color:#fff}.body-text-section-with-bg .credit-area{color:#fff;border-top:none}.body-drop-cap{float:left;font-size:6rem;line-height:.8;padding:10px 15px 0 0;color:var(--accent-color);font-family:var(--font-main);font-weight:700}.credit-area{text-align:center;margin-top:60px;border-top:1px solid #444;padding-top:30px;color:#888}.access-wrapper{display:flex;flex-wrap:wrap;gap:30px;border-top:1px solid #333;padding-top:40px}.access-info,.map-container{flex:1;min-width:300px}.access-list dt{float:left;width:8em;font-weight:700;color:var(--accent-color);clear:both}.access-list dd{margin-left:8em;margin-bottom:.5em;border-bottom:1px solid #333;padding-bottom:5px}.map-container iframe{border:0}.youtube-wrapper{position:relative;width:100%;padding-bottom:56.25%;margin-bottom:50px}.youtube-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}.banner-links{display:flex;gap:30px;justify-content:center;align-items:stretch}.link-card{flex:1;display:flex;flex-direction:column;max-width:480px;background-color:#1a1a1a;border:1px solid #333;border-radius:8px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;text-decoration:none!important}.link-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.5)}.link-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}.link-card-content{padding:20px;flex:1}.link-title{color:var(--accent-color);font-size:1.2rem;margin:0 0 10px 0;border-bottom:none;padding-bottom:0}.link-text{color:#ccc;font-size:.95rem;line-height:1.6;margin-bottom:0}@media (max-width:768px){.title-overlay h1{font-size:3rem}.scrolly-container{flex-direction:column-reverse}.scrolly-image-wrapper{width:100%;height:45vh;position:sticky;top:0;z-index:1}.scrolly-text{width:100%;padding:0 15px;position:relative;z-index:2}.scrolly-step{margin-bottom:70vh;background:rgba(30,30,30,.95)}.scrolly-step:last-child{margin-bottom:10vh}.parallax-image-block{height:80vh;background-attachment:scroll}.parallax-image-block .caption-overlay{font-size:2rem;margin:0 5% 5% 0}.body-text-section-with-bg{background-attachment:scroll}.slideshow-container .scrolly-caption{bottom:2px;right:10px;font-size:.8rem;padding:3px 10px}.access-list dt{float:none;width:auto}.access-list dd{margin-left:0;margin-bottom:1em;border-bottom:1px solid #333}.banner-links{flex-direction:column;align-items:center}.banner-links a{width:100%;max-width:100%}}