:root{--red: #8B1A1A;--gold: #E8A020;--gold-light: #F5C060;--cream: #F5EFE0;--brown: #4A2C1A;--brown-light: #7A5C3A;--dark: #1A0F08;--dark2: #0e0804}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Crimson Pro,Georgia,serif;background:var(--dark);color:var(--cream);overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");opacity:.03;pointer-events:none;z-index:1000}*{cursor:none}.cursor{width:12px;height:12px;background:var(--gold);border-radius:50%;position:fixed;pointer-events:none;z-index:10001;transform:translate(-50%,-50%);transition:width .3s,height .3s;mix-blend-mode:difference}.cursor-ring{width:36px;height:36px;border:1.5px solid var(--gold);border-radius:50%;position:fixed;pointer-events:none;z-index:10000;transform:translate(-50%,-50%);transition:all .15s ease-out;opacity:.6}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden;padding:80px 40px 40px;text-align:center}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(139,26,26,.18) 0%,transparent 70%),radial-gradient(ellipse 50% 40% at 80% 80%,rgba(232,160,32,.08) 0%,transparent 60%),radial-gradient(ellipse 40% 50% at 20% 20%,rgba(139,26,26,.1) 0%,transparent 60%)}.hero-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(232,160,32,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(232,160,32,.04) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%);mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%)}.hero-eyebrow{font-family:Space Mono,monospace;font-size:11px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;margin-bottom:28px;opacity:0;animation:fadeUp .8s forwards .3s;display:flex;align-items:center;gap:16px}.hero-eyebrow:before,.hero-eyebrow:after{content:"";width:40px;height:1px;background:var(--gold);opacity:.5}.hero-title{font-family:Playfair Display,serif;font-size:clamp(52px,9vw,130px);font-weight:900;line-height:.92;letter-spacing:-3px;margin-bottom:24px;opacity:0;animation:fadeUp 1s forwards .5s}.hero-title .line1{display:block;color:var(--cream)}.hero-title .line2{display:block;color:var(--red);font-style:italic}.hero-title .line3{display:block;color:var(--gold)}.hero-subtitle{font-size:clamp(16px,2vw,22px);color:#f5efe099;font-style:italic;max-width:520px;line-height:1.5;margin-bottom:52px;opacity:0;animation:fadeUp .8s forwards .8s}.hero-meta{display:flex;gap:40px;align-items:center;justify-content:center;flex-wrap:wrap;opacity:0;animation:fadeUp .8s forwards 1s;margin-bottom:20px}.meta-item{text-align:center}.meta-label{font-family:Space Mono,monospace;font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:4px;opacity:.7}.meta-value{font-family:Playfair Display,serif;font-size:22px;font-weight:700;color:var(--cream);transition:all .4s}.meta-divider{width:1px;height:40px;background:#e8a0204d}.hero-scroll{position:absolute;bottom:32px;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;animation:fadeUp .8s forwards 1.4s}.scroll-line{width:1px;height:48px;background:linear-gradient(to bottom,var(--gold),transparent);animation:scrollPulse 2s ease-in-out infinite}.scroll-label{font-family:Space Mono,monospace;font-size:9px;letter-spacing:3px;color:var(--gold);opacity:.5;text-transform:uppercase}.timeline-section{background:var(--dark2);padding:70px 40px 80px;border-top:1px solid rgba(232,160,32,.08);border-bottom:1px solid rgba(232,160,32,.08)}.timeline-inner{max-width:1100px;margin:0 auto}.timeline-header{text-align:center;margin-bottom:52px}.timeline-tag{font-family:Space Mono,monospace;font-size:10px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:14px}.timeline-tag:before,.timeline-tag:after{content:"";width:30px;height:1px;background:var(--gold);opacity:.4}.timeline-title{font-family:Playfair Display,serif;font-size:clamp(28px,4vw,44px);font-weight:900;color:var(--cream)}.timeline-title em{color:var(--red);font-style:italic}.timeline-track{display:flex;align-items:flex-start;position:relative;padding:0 20px;overflow-x:auto;scrollbar-width:none}.timeline-track::-webkit-scrollbar{display:none}.timeline-line{position:absolute;top:20px;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,rgba(232,160,32,.25),transparent)}.timeline-item{display:flex;flex-direction:column;align-items:center;flex:1;min-width:160px;cursor:none;position:relative;z-index:1;padding:0 12px;transition:all .3s}.timeline-dot{width:40px;height:40px;border-radius:50%;background:#f5efe00f;border:2px solid rgba(245,239,224,.15);display:flex;align-items:center;justify-content:center;font-family:Space Mono,monospace;font-size:11px;font-weight:700;color:#f5efe066;transition:all .35s cubic-bezier(.23,1,.32,1);margin-bottom:12px}.timeline-item.active .timeline-dot{background:var(--red);border-color:var(--gold);color:var(--cream);box-shadow:0 0 0 6px #8b1a1a33,0 0 20px #e8a0204d}.timeline-item.future .timeline-dot{border-style:dashed;border-color:#f5efe01a}.timeline-item:hover:not(.future) .timeline-dot{background:#8b1a1a66;border-color:#e8a02080;color:var(--cream)}.timeline-date{font-family:Space Mono,monospace;font-size:12px;font-weight:700;color:var(--cream);margin-bottom:4px;text-align:center;transition:color .3s}.timeline-item.active .timeline-date{color:var(--gold)}.timeline-item.future .timeline-date{color:#f5efe040}.timeline-local{font-family:Crimson Pro,serif;font-size:13px;color:#f5efe066;text-align:center;font-style:italic}.timeline-item.active .timeline-local{color:#f5efe0b3}.timeline-item.future .timeline-local{color:#f5efe026}.timeline-badge{font-family:Space Mono,monospace;font-size:9px;letter-spacing:2px;text-transform:uppercase;padding:3px 8px;border-radius:2px;margin-top:8px}.timeline-item.active .timeline-badge{background:#e8a02026;border:1px solid rgba(232,160,32,.3);color:var(--gold)}.timeline-item.future .timeline-badge{background:#f5efe00a;border:1px solid rgba(245,239,224,.08);color:#f5efe033}.timeline-item:not(.active):not(.future) .timeline-badge{background:#8b1a1a26;border:1px solid rgba(139,26,26,.3);color:#f5efe080}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e0804d9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s ease}.modal-overlay.show{opacity:1;pointer-events:auto}.modal-content{position:relative;background:var(--dark);border:1px solid rgba(232,160,32,.3);border-radius:8px;max-width:90vw;max-height:90vh;box-shadow:0 24px 60px #000c,0 0 0 1px #e8a0201a;padding:30px;text-align:center;transform:translateY(20px) scale(.95);transition:transform .4s cubic-bezier(.23,1,.32,1);overflow-y:auto}.modal-overlay.show .modal-content{transform:translateY(0) scale(1)}.modal-close{position:absolute;top:15px;right:15px;background:transparent;border:none;color:var(--gold);font-size:28px;cursor:none;line-height:1;opacity:.6;transition:all .3s;padding:5px}.modal-close:hover{opacity:1;transform:scale(1.1)}.modal-body{display:flex;flex-direction:column;align-items:center;gap:24px}.modal-image{max-width:100%;max-height:60vh;object-fit:contain;border-radius:4px;border:1px solid rgba(245,239,224,.1)}.modal-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:var(--dark);text-decoration:none;font-family:Space Mono,monospace;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:16px 32px;border-radius:4px;transition:all .3s;cursor:none;box-shadow:0 4px 12px #e8a02033}.modal-btn:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 8px 20px #e8a02066}#dynamic-content{transition:opacity .3s ease}#dynamic-content.fading{opacity:0}.about-section{background:var(--cream);color:var(--dark);padding:100px 40px}.about-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-tag{font-family:Space Mono,monospace;font-size:10px;letter-spacing:4px;color:var(--red);text-transform:uppercase;margin-bottom:20px}.about-heading{font-family:Playfair Display,serif;font-size:clamp(32px,4vw,52px);font-weight:900;color:var(--red);line-height:1.1;margin-bottom:24px}.about-text{font-size:20px;line-height:1.7;color:var(--brown);margin-bottom:20px}.about-quote{border-left:3px solid var(--gold);padding-left:20px;font-style:italic;font-size:19px;color:var(--brown-light);margin-top:28px}.about-quote cite{display:block;font-size:13px;font-family:Space Mono,monospace;color:var(--red);letter-spacing:1px;margin-top:8px;font-style:normal}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.stat-card{background:var(--dark);color:var(--cream);padding:28px 24px;border-radius:4px;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--red),var(--gold))}.stat-number{font-family:Playfair Display,serif;font-size:48px;font-weight:900;color:var(--gold);line-height:1;margin-bottom:6px;transition:all .5s}.stat-label{font-family:Space Mono,monospace;font-size:10px;letter-spacing:2px;color:#f5efe080;text-transform:uppercase}.stat-card.accent{background:var(--red);grid-column:1 / -1}.stat-card.accent .stat-number{color:var(--gold-light);font-size:26px}.stat-card.accent .stat-label{color:#f5efe0b3;font-size:12px;letter-spacing:1px;line-height:1.6;text-transform:none}.instructor-section{padding:100px 40px;background:linear-gradient(to bottom,var(--dark),#200e06)}.instructor-inner{max-width:900px;margin:0 auto;text-align:center}.section-tag{font-family:Space Mono,monospace;font-size:10px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:14px}.section-tag:before,.section-tag:after{content:"";width:30px;height:1px;background:var(--gold);opacity:.4}.section-title{font-family:Playfair Display,serif;font-size:clamp(36px,5vw,64px);font-weight:900;line-height:1.05;color:var(--cream)}.section-title em{color:var(--red);font-style:italic}.instructor-card{background:#f5efe00a;border:1px solid rgba(232,160,32,.15);border-radius:8px;padding:56px 48px;position:relative;overflow:hidden;margin-top:48px}.instructor-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,transparent,var(--gold),transparent)}.instructor-name{font-family:Playfair Display,serif;font-size:48px;font-weight:900;color:var(--cream);margin-bottom:8px}.instructor-role{font-family:Space Mono,monospace;font-size:11px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:24px}.instructor-desc{font-size:19px;color:#f5efe0a6;line-height:1.7;max-width:540px;margin:0 auto 36px;font-style:italic}.project-link-btn{display:inline-flex;align-items:center;gap:10px;background:var(--red);color:var(--cream);text-decoration:none;font-family:Space Mono,monospace;font-size:12px;letter-spacing:2px;text-transform:uppercase;padding:14px 28px;border-radius:3px;transition:all .3s;border:1px solid transparent}.project-link-btn:hover{background:transparent;border-color:var(--gold);color:var(--gold)}.project-link-btn .arrow{transition:transform .3s}.project-link-btn:hover .arrow{transform:translate(4px)}.projects-section{padding:80px 40px 120px;background:var(--dark2)}.projects-inner{max-width:1300px;margin:0 auto}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:28px;margin-top:60px}.project-card{background:#f5efe008;border:1px solid rgba(245,239,224,.08);border-radius:6px;overflow:hidden;position:relative;transition:transform .4s cubic-bezier(.23,1,.32,1),border-color .3s,box-shadow .4s;cursor:none}.project-card:hover{transform:translateY(-8px);border-color:#e8a0204d;box-shadow:0 24px 60px #00000080}.project-preview{height:200px;background:var(--dark);position:relative;overflow:hidden}.project-preview-icon{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:64px;opacity:.12}.project-preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 40%,rgba(14,8,4,.8))}.project-body{padding:24px 28px}.project-number{font-family:Playfair Display,serif;font-size:11px;color:var(--gold);font-style:italic;margin-bottom:8px;opacity:.7}.project-team{font-family:Playfair Display,serif;font-size:24px;font-weight:700;color:var(--cream);margin-bottom:6px;line-height:1.2}.project-url{font-family:Space Mono,monospace;font-size:10px;color:#f5efe04d;letter-spacing:.5px;margin-bottom:20px;word-break:break-all}.project-footer{display:flex;align-items:center;justify-content:space-between}.project-tag{font-family:Space Mono,monospace;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);background:#e8a0201a;border:1px solid rgba(232,160,32,.2);padding:4px 10px;border-radius:2px}.project-visit{display:flex;align-items:center;gap:6px;color:var(--cream);text-decoration:none;font-family:Space Mono,monospace;font-size:10px;letter-spacing:1px;text-transform:uppercase;opacity:.5;transition:opacity .2s,color .2s}.project-visit:hover{opacity:1;color:var(--gold)}.empty-state{text-align:center;padding:80px 40px;grid-column:1 / -1}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.3}.empty-text{font-family:Playfair Display,serif;font-size:24px;color:#f5efe040;font-style:italic}.materials-section{background:var(--cream);padding:100px 40px}.materials-inner{max-width:1000px;margin:0 auto}.materials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px}.material-card{background:var(--dark);border-radius:6px;padding:36px 28px;display:flex;flex-direction:column;gap:16px;position:relative;overflow:hidden;transition:transform .3s}.material-card:hover{transform:translateY(-4px)}.material-card:before{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--red),var(--gold))}.material-icon{font-size:36px}.material-title{font-family:Playfair Display,serif;font-size:22px;font-weight:700;color:var(--cream)}.material-desc{font-size:15px;color:#f5efe080;font-style:italic;line-height:1.5;flex:1}.material-tag{font-family:Space Mono,monospace;font-size:9px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;opacity:.7}footer{background:var(--dark);border-top:1px solid rgba(232,160,32,.1);padding:60px 40px;text-align:center}.footer-title{font-family:Playfair Display,serif;font-size:28px;font-weight:700;color:var(--cream);margin-bottom:8px}.footer-sub{font-size:16px;color:#f5efe066;font-style:italic;margin-bottom:32px}.footer-meta{font-family:Space Mono,monospace;font-size:10px;letter-spacing:2px;color:#f5efe040;text-transform:uppercase}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollPulse{0%,to{opacity:.4}50%{opacity:1}}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s cubic-bezier(.23,1,.32,1)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}@media(max-width:768px){.about-inner{grid-template-columns:1fr;gap:48px}.materials-grid,.stats-grid{grid-template-columns:1fr}.stat-card.accent{grid-column:auto}.hero-meta{gap:20px}.meta-divider{display:none}.timeline-item{min-width:130px}}.material-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(232,160,32,.12)}.material-download-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:var(--gold);border-radius:3px;color:var(--dark);font-family:Space Mono,monospace;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;text-decoration:none;cursor:none;transition:all .25s ease;white-space:nowrap;flex-shrink:0}.material-download-btn:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 4px 12px #e8a02059}
