.school-romance{--sr-bg:#1d2015;--sr-bg-light:#2a2d1f;--sr-gold:#f7cf8e;--sr-gold-dim:rgba(247,207,142,0.4);--sr-cream:#ece7d7;--sr-cream-dim:rgba(236,231,215,0.7);--sr-accent:#c9a96e;--sr-dark:#141610;background-color:var(--sr-bg);background-image:repeating-linear-gradient(transparent,transparent 31px,rgba(247,207,142,.06) 0,rgba(247,207,142,.06) 32px);background-size:100% 32px;color:var(--sr-cream);font-family:var(--font-playfair),"Playfair Display",serif;scroll-behavior:smooth;overflow-x:hidden;min-height:100vh}.school-romance *{box-sizing:border-box;margin:0}.school-romance .sr-body{font-family:var(--font-lora),"Lora",serif;font-size:1.05rem;line-height:1.75;color:var(--sr-cream-dim)}.school-romance .sr-icon{width:18px;height:18px;flex-shrink:0;color:var(--sr-gold)}.school-romance .sr-reveal{transform:translateY(60px);opacity:0;transition:.8s ease}.school-romance .sr-reveal.active{transform:translateY(0);opacity:1}.school-romance .sr-divider{display:flex;align-items:center;justify-content:center;gap:1rem;margin:2rem 0}.school-romance .sr-divider-line{width:60px;height:1px;background:var(--sr-gold-dim)}.school-romance .sr-divider-diamond{width:8px;height:8px;background:var(--sr-gold);transform:rotate(45deg)}.school-romance .sr-nav{position:sticky;top:40px;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:linear-gradient(180deg,rgba(29,32,21,.95),transparent);transition:background .3s}.school-romance .sr-nav-logo{font-family:var(--font-playfair),"Playfair Display",serif;font-size:1.5rem;font-weight:700;color:var(--sr-gold);text-decoration:none;letter-spacing:.05em}.school-romance .sr-nav-links{display:flex;gap:2rem;list-style:none;padding:0}.school-romance .sr-nav-links a{font-family:var(--font-lora),"Lora",serif;font-size:.85rem;text-transform:uppercase;letter-spacing:.15em;color:var(--sr-cream-dim);text-decoration:none;transition:color .3s}.school-romance .sr-nav-links a:hover{color:var(--sr-gold)}.school-romance .sr-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.school-romance .sr-hero-bg{position:absolute;inset:0;background-size:cover;background-position:50%;filter:brightness(.35)}.school-romance .sr-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(29,32,21,.3) 0,rgba(29,32,21,.6) 60%,var(--sr-bg) 100%)}.school-romance .sr-hero-content{position:relative;z-index:2;padding:2rem}.school-romance .sr-yearbook-frame{position:relative;display:inline-block;margin-bottom:2rem;padding:10px;background:var(--sr-bg-light);border:2px solid var(--sr-gold-dim);box-shadow:0 4px 20px rgba(0,0,0,.3)}.school-romance .sr-yearbook-frame img{display:block;width:240px;height:300px;object-fit:cover}.school-romance .sr-tape{position:absolute;width:50px;height:20px;background:rgba(247,207,142,.25);backdrop-filter:blur(1px);z-index:3}.school-romance .sr-tape-tl{top:-8px;left:-12px;transform:rotate(-35deg)}.school-romance .sr-tape-tr{top:-8px;right:-12px;transform:rotate(35deg)}.school-romance .sr-tape-bl{bottom:-8px;left:-12px;transform:rotate(35deg)}.school-romance .sr-tape-br{bottom:-8px;right:-12px;transform:rotate(-35deg)}.school-romance .sr-hero-subtitle{font-family:var(--font-lora),"Lora",serif;font-size:.9rem;text-transform:uppercase;letter-spacing:.3em;color:var(--sr-gold);margin-bottom:1.5rem}.school-romance .sr-hero h1{font-family:var(--font-playfair),"Playfair Display",serif;font-size:clamp(3rem,8vw,7rem);font-weight:400;line-height:1.1;color:var(--sr-cream);margin-bottom:.5rem}.school-romance .sr-hero h1 .sr-amp{display:block;font-size:.4em;color:var(--sr-gold);margin:.3em 0;font-style:italic}.school-romance .sr-hero-date{font-family:var(--font-lora),"Lora",serif;font-size:1.1rem;color:var(--sr-cream-dim);letter-spacing:.1em;margin-top:1.5rem}.school-romance .sr-hero-location{font-family:var(--font-lora),"Lora",serif;font-size:.9rem;color:var(--sr-gold-dim);margin-top:.5rem}.school-romance .sr-scroll-hint{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:.5rem}.school-romance .sr-scroll-hint span{font-family:var(--font-lora),"Lora",serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:var(--sr-gold-dim)}.school-romance .sr-scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--sr-gold-dim),transparent);animation:sr-scroll-pulse 2s ease-in-out infinite}@keyframes sr-scroll-pulse{0%,to{opacity:.3}50%{opacity:1}}.school-romance .sr-section{padding:6rem 2rem;max-width:900px;margin:0 auto}.school-romance .sr-section-title{font-family:var(--font-playfair),"Playfair Display",serif;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:400;text-align:center;color:var(--sr-cream);margin-bottom:1rem}.school-romance .sr-story{background:var(--sr-bg-light)}.school-romance .sr-story .sr-letter-paper{position:relative;max-width:650px;margin:0 auto;padding:2rem 2.5rem;background:repeating-linear-gradient(transparent,transparent 31px,rgba(247,207,142,.12) 0,rgba(247,207,142,.12) 32px);border-left:3px solid rgba(247,207,142,.2)}.school-romance .sr-story-text{text-align:left;max-width:650px;margin:0 auto;font-size:1.1rem;line-height:2;white-space:pre-line;font-style:italic}.school-romance .sr-schedule{padding:6rem 2rem 4rem}.school-romance .sr-schedule .sr-section{padding-bottom:2rem}.school-romance .sr-schedule-list{display:flex;flex-direction:column;gap:2.5rem;max-width:700px;margin:0 auto}.school-romance .sr-schedule-card{background:var(--sr-bg-light);border:1px solid var(--sr-gold-dim);border-radius:6px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:row}.school-romance .sr-schedule-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.3)}.school-romance .sr-schedule-card-accent{width:36px;min-height:100%;background:linear-gradient(to bottom,var(--sr-gold),var(--sr-accent));flex-shrink:0;display:flex;align-items:stretch}.school-romance .sr-schedule-card-body{padding:2rem;flex:1}.school-romance .sr-schedule-time-badge{writing-mode:vertical-rl;text-orientation:mixed;display:flex;align-items:center;justify-content:center;height:100%;padding:1rem 0}.school-romance .sr-schedule-time-value{font-family:var(--font-playfair),"Playfair Display",serif;font-size:.85rem;font-weight:700;color:var(--sr-bg);letter-spacing:.1em;white-space:nowrap}.school-romance .sr-schedule-card-title{font-family:var(--font-playfair),"Playfair Display",serif;font-size:1.5rem;color:var(--sr-cream);margin-bottom:.4rem}.school-romance .sr-schedule-card-venue{font-family:var(--font-lora),"Lora",serif;font-size:1rem;color:var(--sr-gold);margin-bottom:1.25rem}.school-romance .sr-schedule-card-details{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.25rem}.school-romance .sr-schedule-card-detail{display:flex;align-items:center;gap:.7rem}.school-romance .sr-schedule-card-desc,.school-romance .sr-schedule-card-detail{font-family:var(--font-lora),"Lora",serif;font-size:.95rem;color:var(--sr-cream-dim)}.school-romance .sr-schedule-card-desc{line-height:1.7;border-top:1px solid var(--sr-gold-dim);padding-top:1rem;margin-bottom:1.25rem}.school-romance .sr-map-link{display:inline-block;margin-top:.75rem;font-family:var(--font-lora),"Lora",serif;font-size:.85rem;color:var(--sr-gold);text-decoration:none;border-bottom:1px solid var(--sr-gold-dim);padding-bottom:2px;transition:border-color .3s}.school-romance .sr-map-link:hover{border-color:var(--sr-gold)}.school-romance .sr-countdown{background:var(--sr-dark);text-align:center;padding:5rem 2rem}.school-romance .sr-countdown-title{font-family:var(--font-playfair),"Playfair Display",serif;font-size:1.5rem;color:var(--sr-cream);margin-bottom:2.5rem}.school-romance .sr-countdown-grid{display:flex;justify-content:center;gap:3rem}.school-romance .sr-countdown-unit{display:flex;flex-direction:column;align-items:center}.school-romance .sr-countdown-number{font-family:var(--font-playfair),"Playfair Display",serif;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:400;color:var(--sr-gold);line-height:1}.school-romance .sr-countdown-label{font-family:var(--font-lora),"Lora",serif;font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;color:var(--sr-cream-dim);margin-top:.5rem}.school-romance .sr-countdown-arrived{font-family:var(--font-playfair),"Playfair Display",serif;font-size:2rem;color:var(--sr-gold)}.school-romance .sr-gallery{padding:6rem 2rem;background:var(--sr-bg-light)}.school-romance .sr-gallery-masonry{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;max-width:1100px;margin:0 auto}.school-romance .sr-gallery-item{position:relative;overflow:hidden;aspect-ratio:1;cursor:pointer;border-radius:4px}.school-romance .sr-gallery-item.sr-gallery-featured{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.school-romance .sr-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.school-romance .sr-gallery-item:hover img{transform:scale(1.08)}.school-romance .sr-gallery-caption{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent);font-family:var(--font-lora),"Lora",serif;font-size:.85rem;color:var(--sr-cream);opacity:0;transition:opacity .3s ease}.school-romance .sr-gallery-item:hover .sr-gallery-caption{opacity:1}.school-romance .sr-gallery-empty{text-align:center;padding:4rem 2rem}.school-romance .sr-gallery-empty p{font-family:var(--font-lora),"Lora",serif;font-size:1.1rem;color:var(--sr-cream-dim);font-style:italic}.school-romance .sr-travel{padding:6rem 2rem}.school-romance .sr-travel .sr-section{padding-top:0;padding-bottom:2rem}.school-romance .sr-travel-intro{text-align:center;max-width:600px;margin:0 auto}.school-romance .sr-travel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.school-romance .sr-travel-card{background:var(--sr-bg-light);border:1px solid var(--sr-gold-dim);border-radius:6px;padding:2rem;text-align:center}.school-romance .sr-travel-card-title{font-family:var(--font-playfair),"Playfair Display",serif;font-size:1.2rem;color:var(--sr-gold);margin-bottom:.75rem}.school-romance .sr-travel-card-address{font-family:var(--font-lora),"Lora",serif;font-size:.9rem;color:var(--sr-cream-dim);line-height:1.6;margin-bottom:1rem}.school-romance .sr-travel-card-link{display:inline-block;font-family:var(--font-lora),"Lora",serif;font-size:.85rem;color:var(--sr-gold);text-decoration:none;border-bottom:1px solid var(--sr-gold-dim);padding-bottom:2px;transition:border-color .3s}.school-romance .sr-travel-card-link:hover{border-color:var(--sr-gold)}.school-romance .sr-faq{padding:6rem 2rem;background:var(--sr-bg-light)}.school-romance .sr-faq .sr-section{padding-bottom:2rem}.school-romance .sr-faq-list{max-width:750px;margin:0 auto;display:flex;flex-direction:column;gap:0}.school-romance .sr-faq-item{border-bottom:1px solid var(--sr-gold-dim);padding:1.5rem 0}.school-romance .sr-faq-item:first-child{padding-top:0}.school-romance .sr-faq-item:last-child{border-bottom:none}.school-romance .sr-faq-question{font-family:var(--font-playfair),"Playfair Display",serif;font-size:1.15rem;color:var(--sr-cream);margin-bottom:.75rem}.school-romance .sr-faq-answer{font-family:var(--font-lora),"Lora",serif;font-size:.95rem;color:var(--sr-cream-dim);line-height:1.7}.school-romance .sr-footer{text-align:center;padding:4rem 2rem 3rem}.school-romance .sr-footer-names{font-family:var(--font-playfair),"Playfair Display",serif;font-size:1.8rem;color:var(--sr-gold);margin-bottom:.5rem}.school-romance .sr-footer-copy{font-family:var(--font-lora),"Lora",serif;font-size:.8rem;color:var(--sr-cream-dim)}@media (max-width:768px){.school-romance .sr-nav-links{display:none}.school-romance .sr-section{padding:4rem 1.5rem}.school-romance .sr-schedule-list{gap:2rem}.school-romance .sr-schedule-card-body{padding:1.5rem}.school-romance .sr-gallery-masonry{grid-template-columns:repeat(2,1fr)}.school-romance .sr-gallery-item.sr-gallery-featured{grid-column:span 2;grid-row:span 1;aspect-ratio:16/9}.school-romance .sr-countdown-grid{gap:1.5rem}.school-romance .sr-travel-grid{grid-template-columns:1fr}}@media (max-width:480px){.school-romance .sr-gallery-masonry{grid-template-columns:1fr}.school-romance .sr-gallery-item.sr-gallery-featured{grid-column:span 1;aspect-ratio:16/9}.school-romance .sr-countdown-grid{gap:1rem}}