:root{--gold:#e2c98f;--ivory:#f6f0df;--muted:#b8c8b9;--line:#dfc89035}
body{background:#07140e}
em{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;font-style:italic;letter-spacing:0;text-transform:none}
.kicker,.eyebrow{letter-spacing:.27em}
.site-header{border-bottom-color:#f2dfaa2b;background:linear-gradient(180deg,#06110cdb,#06110c45)}
.site-header.is-scrolled{background:#07150ff5;border-bottom-color:#d9bd7d36}
.brand img{filter:drop-shadow(0 2px 7px #0009)}
.header-cta,.button,.form-submit{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.header-cta:hover,.button-primary:hover,.form-submit:hover{box-shadow:0 0 28px #d9bd7d3a;transform:translateY(-2px)}
.text-link{display:inline-flex;gap:14px;align-items:center;border-bottom:1px solid #d9bd7d7a;padding-bottom:7px}
.text-link span{margin-left:0;transition:transform .25s ease}.text-link:hover span{transform:translate(4px,-3px)}

/* A framed opening, followed by an illustrated editorial spread. */
.hero::after{content:"";position:absolute;z-index:1;inset:112px 3.6vw 45px;border-left:1px solid #e8d8aa3d;border-right:1px solid #e8d8aa3d;pointer-events:none}
.hero-content{padding-top:70px}
.hero h1{font-size:clamp(40px,4.5vw,74px);letter-spacing:.025em}
.hero h1 em{font-size:1.18em;color:#ecd39b;text-shadow:0 0 35px #cfaa5d5a}
.hero-lead{font-size:clamp(15px,1.22vw,19px);max-width:590px}
.hero-opening{border-top:1px solid #e1c98b6e;width:max-content;max-width:100%;margin:35px auto 0;padding-top:15px}
.opening-strip{background:linear-gradient(120deg,#1c392a,#0b2117 62%,#193827);box-shadow:inset 0 1px #efdbaf22,inset 0 -1px #efdbaf22}
.opening-strip>div:first-child strong{font-size:clamp(18px,1.7vw,25px)}
.countdown{gap:0;border:1px solid #d9bd7d32;background:#07180e94}
.countdown span{min-width:84px;padding:10px 13px;border-left:1px solid #d9bd7d32}
.countdown span:first-child{border-left:0}

.intro{max-width:none;display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(40px,6vw,110px);align-items:center;padding-top:clamp(90px,9vw,150px);padding-bottom:clamp(90px,9vw,150px);background:radial-gradient(ellipse at 12% 54%,#25452c6b,transparent 48%),#07170f}
.intro-editorial{max-width:540px;justify-self:end;padding-left:clamp(12px,3vw,50px)}
.intro-ornament{display:block;color:var(--gold);font-size:27px;line-height:1;margin:26px 0 5px}
.intro h2{font-size:clamp(42px,4.45vw,70px);line-height:1.12;margin:0 0 30px}
.intro h2 em{font-size:1.12em}
.intro-editorial>p:not(.kicker){color:var(--muted);font-size:15px;line-height:1.85;max-width:500px}
.intro-editorial>p.intro-lead{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(23px,2.2vw,31px);line-height:1.34;color:var(--ivory);margin-bottom:14px}
.intro-editorial .text-link{margin-top:23px}
.intro-facts{display:flex;flex-wrap:wrap;gap:12px;margin-top:57px;padding-top:18px;border-top:1px solid var(--line)}
.intro-facts span{font-size:9px;font-weight:700;letter-spacing:.17em;color:#bdbd9f}
.intro-facts span+span::before{content:"✦";color:var(--gold);margin-right:12px}
.intro-visual{position:relative;min-width:0;max-width:680px;height:clamp(480px,47vw,680px);margin:0;border:1px solid #d9bd7d5c;padding:10px;background:#10271b;box-shadow:30px 30px 0 #d9bd7d0c,0 24px 80px #0008}
.intro-visual::before,.intro-visual::after{content:"";position:absolute;width:45px;height:45px;border-color:var(--gold);z-index:2;pointer-events:none}
.intro-visual::before{top:-7px;left:-7px;border-top:1px solid;border-left:1px solid}.intro-visual::after{right:-7px;bottom:-7px;border-right:1px solid;border-bottom:1px solid}
.intro-visual img{width:100%;height:100%;object-fit:cover;object-position:64% center;display:block;filter:saturate(.84) contrast(1.05)}
.intro-visual figcaption{position:absolute;left:10px;right:10px;bottom:10px;display:flex;justify-content:space-between;gap:15px;padding:38px 20px 16px;background:linear-gradient(transparent,#06130bdf);font-size:10px;font-weight:700;letter-spacing:.2em;color:#eee3c4}

.experience{position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 0%,#29503a4d,transparent 50%),#081910}
.experience::before{content:"ELVEN";position:absolute;top:20px;right:-20px;font-family:Cinzel,serif;font-size:clamp(130px,23vw,380px);letter-spacing:.06em;color:#d9bd7d08;line-height:1;pointer-events:none}
.experience-top,.experience-grid,.experience-more{position:relative}
.experience-top{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:30px}
.experience-top .kicker{grid-column:1/-1;margin:0}
.experience-top h2{margin:0;font-size:clamp(41px,4.3vw,69px);line-height:1.13}
.experience-top>p:last-child{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(23px,2.2vw,32px);line-height:1.25;color:#e6dcc4;max-width:430px;margin:0 0 8px auto}
.experience-grid{grid-template-columns:1.16fr 1fr;grid-template-rows:repeat(2,minmax(250px,1fr));gap:15px;margin-top:58px}
.experience-card{min-height:0;padding:36px 39px;background:linear-gradient(145deg,#20402bde,#0b2015);border-color:#dbc5853e;box-shadow:inset 0 1px #ffffff0b}
.experience-card:first-child{grid-row:1/3;background:radial-gradient(circle at 80% 25%,#7b8a5266,transparent 39%),linear-gradient(155deg,#2b5039,#0a1c13);min-height:545px}
.experience-card::after{content:"";position:absolute;inset:11px;border:1px solid #dec58a1e;pointer-events:none}
.experience-card:hover{transform:translateY(-4px);border-color:#e2c98f9e;background:linear-gradient(145deg,#2e5339,#0b2015)}
.experience-card:first-child:hover{background:radial-gradient(circle at 80% 25%,#8b985e70,transparent 39%),linear-gradient(155deg,#355d43,#0a1c13)}
.experience-card h3{font-size:clamp(24px,2.1vw,33px);margin:0 0 8px}.experience-card p{max-width:490px;margin:0 0 23px}
.experience-card:first-child h3{font-size:clamp(36px,3.1vw,51px)}
.experience-card:first-child .card-symbol{font-size:110px;line-height:1;color:#e8d3a9a8}
.experience-card:not(:first-child) .card-symbol{font-size:41px;margin:10px 0 4px}
.card-number{font-size:10px}.card-link{color:#ead29a}
.experience-more{margin-top:45px}

.pvp-panel{min-height:675px}
.pvp-panel__art{background:linear-gradient(90deg,#06130cf7 0%,#06130ce8 27%,#06130c86 55%,#06130c12 100%),url('../img/elven/elven-guardian-official.jpg') center 44%/cover}
.pvp-panel::before{content:"";position:absolute;z-index:1;inset:28px;border:1px solid #d9bd7d30;pointer-events:none}
.pvp-panel__content{z-index:2;max-width:660px}
.pvp-panel h2{font-size:clamp(43px,4.4vw,70px);line-height:1.1}
.pvp-panel h2 em{font-size:1.15em}
.pvp-tags span{background:#06140bbd;backdrop-filter:blur(5px)}
.invitation{min-height:570px;background:linear-gradient(180deg,#06130ce8,#06130c81 48%,#06130cef),url('../img/elven/elven-sanctuary-official.jpg') center 51%/cover}
.invitation h2{font-size:clamp(43px,4vw,66px);line-height:1.14}
.faq{background:radial-gradient(ellipse at 12% 20%,#23483048,transparent 55%),#081910}
.faq-list details[open]{background:linear-gradient(90deg,#d9bd7d0c,transparent)}
.faq-list summary:hover{color:var(--gold)}

/* Interior pages share a language but use distinct scenes and crops. */
.features-hero{min-height:min(760px,88svh);background:linear-gradient(90deg,#06140ff8 0%,#06140fdf 34%,#06140f58 74%),url('../img/elven/elven-sanctuary-official.jpg') center 52%/cover;border-bottom:1px solid #d9bd7d43}
.features-hero::after{content:"";position:absolute;inset:115px 35px 35px;border:1px solid #e7d6a933;pointer-events:none}
.features-hero__inner{position:relative;z-index:1;max-width:720px}
.features-hero h1{font-size:clamp(50px,5.3vw,86px);line-height:1.08;margin:28px 0}
.features-hero h1 em{font-size:1.1em}
.features-hero__inner>p:not(.kicker){font-size:18px;max-width:570px}
.wiki-hero{background:linear-gradient(90deg,#06140ff7 0%,#06140fdc 42%,#06140f61 100%),url('../img/elven/elven-city-official.jpg') center 56%/cover}
.rules-hero{background:linear-gradient(90deg,#06140ff7 0%,#06140fd9 40%,#06140f54 100%),url('../img/elven/elven-guardian-official.jpg') center 44%/cover}
.support-hero{background:linear-gradient(90deg,#06140ff7 0%,#06140fd9 38%,#06140f4f 100%),url('../img/elven/elven-sanctuary-official.jpg') center 48%/cover}
.download-hero{background:linear-gradient(90deg,#06140ff7 0%,#06140fd9 40%,#06140f59 100%),url('../img/elven/elven-city-official.jpg') center 57%/cover}
.features-intro{position:relative;gap:8%;background:radial-gradient(ellipse at 80% 40%,#254a3161,transparent 44%),#07170f}
.features-intro::before{content:"✧";position:absolute;right:6%;top:18%;font-size:clamp(120px,15vw,260px);color:#d9bd7d0a;pointer-events:none}
.features-intro h2,.features-details h2,.features-split h2,.features-services h2,.features-cta h2{line-height:1.14}
.features-intro>div:last-child{position:relative;border-left-color:#d9bd7d88}
.features-details{background:radial-gradient(ellipse at 0% 40%,#27473352,transparent 45%),#0b2016}
.feature-row{position:relative;transition:background .3s ease,padding .3s ease;border-top-color:#d9bd7d3b}
.feature-row:hover{background:linear-gradient(90deg,#d9bd7d0e,transparent);padding-left:12px}
.feature-row h3{font-size:clamp(21px,2vw,28px)}
.feature-row span{font-family:"Cormorant Garamond",Georgia,serif;font-size:28px;font-weight:600;line-height:1}
.features-split{background:#07170f}
.features-split__cards article{position:relative;min-height:280px;background:linear-gradient(155deg,#29513b,#0b1d14);border-color:#d9bd7d55}
.features-split__cards article::after{content:"";position:absolute;inset:10px;border:1px solid #d9bd7d25;pointer-events:none}
.features-service-grid article{border-top:2px solid #d9bd7d8f}
.features-service-grid article>span{font-size:43px}
.features-cta{background:linear-gradient(#06130ce4,#06130cf0),url('../img/elven/elven-sanctuary-official.jpg') center 60%/cover}
.download-section{background:radial-gradient(ellipse at 100% 0%,#294a355e,transparent 50%),#071a11}
.download-grid article{position:relative;min-height:320px;background:linear-gradient(155deg,#2b4e39b5,#0b1c13);border-color:#d9bd7d6c;overflow:hidden}
.download-grid article::after{content:"✦";position:absolute;right:30px;top:18px;color:#d9bd7d18;font-size:145px;pointer-events:none}
.download-grid strong{background:#d9bd7d12}

.site-footer{position:relative;background:radial-gradient(ellipse at 10% 0%,#1b392654,transparent 52%),#050f0a;border-top:1px solid #d9bd7d54}
.site-footer::before{content:"✦";position:absolute;top:-14px;left:50%;transform:translateX(-50%);color:var(--gold);background:#07160e;padding:0 18px;font-size:21px}
.footer-brand img{width:150px;height:auto;max-width:100%;object-fit:contain}
.footer-main{padding-top:52px;padding-bottom:53px;align-items:start}
.footer-main p{font-family:"Cormorant Garamond",Georgia,serif;font-size:21px;color:#e8dfca}
.footer-main nav{max-width:650px;justify-content:flex-end;row-gap:17px}
.footer-main nav a{font-size:10px;color:#d2d9cb}
.social-preview span{border-radius:40px;padding:8px 12px}

@media(max-width:950px){
  .intro{grid-template-columns:1fr;gap:50px}.intro-editorial{justify-self:start;max-width:660px;padding-left:0}.intro-visual{width:100%;max-width:none;height:560px}
  .experience-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.experience-card:first-child{grid-row:auto;grid-column:1/-1;min-height:420px}
  .experience-top{grid-template-columns:1fr}.experience-top .kicker{grid-column:auto}.experience-top>p:last-child{margin:0}
  .pvp-panel__art{background-position:62% center}.features-hero{min-height:650px}
}
@media(max-width:620px){
  .hero::after{inset:82px 15px 20px}.hero h1{font-size:clamp(35px,8.6vw,49px)}.hero-content{padding-top:0}.hero-opening{width:auto;padding-top:11px}
  .opening-strip{gap:23px}.countdown{width:100%;grid-template-columns:repeat(4,minmax(0,1fr))}.countdown span{min-width:0;padding:9px 3px}.countdown strong{font-size:21px}
  .intro{padding:90px 23px}.intro h2{font-size:clamp(43px,10vw,58px)}.intro-ornament{margin-top:17px}.intro-facts{margin-top:36px}.intro-visual{height:420px;padding:7px;box-shadow:12px 12px 0 #d9bd7d10}.intro-visual figcaption{left:7px;right:7px;bottom:7px;font-size:8px;padding:32px 12px 12px}
  .experience-top{gap:14px}.experience-top h2{font-size:clamp(41px,10vw,53px)}.experience-grid{grid-template-columns:1fr;gap:12px;margin-top:36px}.experience-card:first-child{grid-column:auto;min-height:410px}.experience-card{min-height:260px;padding:28px}.experience-card:first-child .card-symbol{font-size:80px}.experience-card:not(:first-child) .card-symbol{font-size:38px}
  .pvp-panel{min-height:620px;align-items:flex-end}.pvp-panel__art{background:linear-gradient(0deg,#06130cf9 0%,#06130cc2 44%,#06130c16 100%),url('../img/elven/elven-guardian-official.jpg') 67% top/auto 100%}.pvp-panel::before{inset:14px}.pvp-panel__content{padding-bottom:32px}.pvp-panel h2{font-size:clamp(38px,9vw,52px)}
  .invitation{min-height:480px}.invitation h2{font-size:clamp(42px,10vw,54px)}
  .features-hero{min-height:650px;padding:140px 24px 75px;background-position:60% center}.features-hero::after{inset:88px 13px 17px}.features-hero h1{font-size:clamp(38px,9vw,52px)}.features-hero__inner>p:not(.kicker){font-size:15px}.feature-row:hover{padding-left:0}
  .features-split__cards article{min-height:215px}.download-grid article{min-height:270px}
  .footer-main{padding-top:45px}.footer-main nav{justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){.header-cta,.button,.form-submit,.text-link span,.feature-row,.experience-card{transition:none!important}}
