.about-page{background:var(--bg)}
.about-page .site-header{position:absolute}
.about-hero{position:relative;min-height:92svh;display:flex;align-items:flex-end;padding:130px clamp(1.3rem,8vw,8rem) 7rem;isolation:isolate;overflow:hidden}
.about-hero-media{position:absolute;inset:0;background:#16061f url('/assets/about-hero.png') center/cover no-repeat;z-index:-3}
.about-hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,1,12,.98) 0%,rgba(14,2,20,.8) 36%,rgba(20,3,27,.22) 72%),linear-gradient(90deg,rgba(12,2,17,.88),rgba(20,3,27,.25) 60%,rgba(9,1,12,.16));z-index:-2}
.about-hero-content{width:min(760px,72vw)}
.about-hero h1{font-size:clamp(1.25rem,2vw,1.65rem);margin:0 0 1rem;color:var(--lav)}
.about-hero h2,.about-heading h2,.story-card h2,.castle-standard h2,.about-location h2{font-size:clamp(2.25rem,5vw,4.7rem);line-height:1.16;letter-spacing:-.05em;margin:.2rem 0 1.4rem}
.about-hero-content>p:last-of-type{max-width:650px;color:#e5d8e8;font-size:1.06rem}
.about-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.8rem}
.about-section{padding:clamp(5rem,10vw,9rem) clamp(1.3rem,8vw,8rem)}
.about-heading{max-width:820px}
.about-heading>p:last-child{color:var(--muted);max-width:700px}
.philosophy{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,7vw,8rem);background:radial-gradient(circle at 15% 30%,rgba(166,60,255,.14),transparent 30%),#100416}
.prose{max-width:790px}
.prose p,.story-card>p:not(.eyebrow),.return-panel p,.about-location>div>p{font-size:1.02rem;color:var(--muted);margin:0 0 1.25rem;line-height:1.9}
.experience{background:linear-gradient(180deg,#16051d,#0d0312)}
.experience .prose{margin-top:2.2rem}
.occasion-list{list-style:none;padding:0;margin:2rem 0 0;display:flex;gap:.65rem;flex-wrap:wrap}
.occasion-list li{padding:.65rem 1rem;border:1px solid rgba(255,95,202,.28);border-radius:999px;background:rgba(255,255,255,.045);color:#f2e7f4}
.split-section{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:#0d0312}
.story-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:30px;padding:clamp(2rem,4vw,4rem);background:linear-gradient(145deg,rgba(48,13,61,.9),rgba(20,5,28,.98));box-shadow:var(--shadow)}
.story-card h2{font-size:clamp(2rem,3.7vw,3.4rem)}
.accent-card{border-color:rgba(255,95,202,.4);background:radial-gradient(circle at 90% 5%,rgba(255,47,164,.2),transparent 34%),linear-gradient(145deg,#280b34,#13051a)}
.return-section{background:radial-gradient(circle at 80% 30%,rgba(255,47,164,.15),transparent 30%),#13051a}
.return-panel{margin-top:2.2rem;max-width:900px;border-left:3px solid var(--pink-2);padding:clamp(1.5rem,4vw,3rem);background:rgba(255,255,255,.04);border-radius:0 24px 24px 0}
.return-panel small{display:block;margin-top:1.6rem;color:#bba8c1}
.support-section{background:#0d0312}
.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.5rem}
.support-grid article{padding:2rem 1.4rem;border:1px solid var(--line);border-radius:24px;background:linear-gradient(150deg,rgba(255,255,255,.07),rgba(255,255,255,.025))}
.support-grid span,.visit-steps>li>span{font-size:.76rem;color:var(--pink-2);font-weight:800;letter-spacing:.14em}
.support-grid h3,.visit-steps h3{font-size:1.22rem;margin:.7rem 0 .45rem}
.support-grid p,.visit-steps p{margin:0;color:var(--muted)}
.first-visit{background:linear-gradient(180deg,#0d0312,#16051d)}
.visit-steps{list-style:none;padding:0;margin:2.8rem 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.visit-steps li{padding:1.6rem;border-top:1px solid rgba(255,95,202,.4);background:rgba(255,255,255,.025)}
.about-location{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;align-items:center;background:#100416}
.about-location address{font-style:normal;font-size:1.12rem;color:#fff;margin:1.4rem 0}
.castle-standard{text-align:center;padding:clamp(6rem,12vw,10rem) 1.3rem;background:radial-gradient(circle at 50% 50%,rgba(255,47,164,.22),transparent 35%),linear-gradient(145deg,#1b0625,#0b020f)}
.castle-standard h2{margin-left:auto;margin-right:auto}
.standard-copy{max-width:780px;margin:0 auto;color:var(--muted);font-size:1.03rem;line-height:1.9}
.center-actions{justify-content:center}
.contact-note{color:var(--lav);margin-top:1.4rem;font-weight:600}
@media(max-width:900px){
  .philosophy,.about-location{grid-template-columns:1fr;gap:2.5rem}
  .split-section{grid-template-columns:1fr}
  .support-grid,.visit-steps{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .about-hero{min-height:860px;padding:390px 1.2rem 4rem;align-items:flex-end}
  .about-hero-media{background-size:100% auto;background-position:center 44px;background-repeat:no-repeat}
  .about-hero-overlay{background:linear-gradient(0deg,rgba(8,1,12,1) 0%,rgba(12,2,17,.96) 48%,rgba(16,3,22,.28) 78%,rgba(10,1,14,.08))}
  .about-hero-content{width:100%}
  .about-hero h1{font-size:1.08rem}
  .about-hero h2{font-size:2.35rem}
  .about-hero-content>p:last-of-type{font-size:.94rem}
  .about-actions{display:grid}
  .support-grid,.visit-steps{grid-template-columns:1fr}
  .about-section{padding:4.7rem 1.2rem}
  .story-card{padding:1.8rem 1.25rem;border-radius:22px}
  .about-location{gap:2rem}
  .castle-standard{padding:6rem 1.2rem}
}
