.home-page { position:relative; }
.hero { min-height: 610px; display:grid; grid-template-columns:1.08fr .92fr; align-items:center; gap:60px; position:relative; padding:70px clamp(24px,6vw,92px); overflow:hidden; border:1px solid rgba(255,255,255,.06); border-radius:34px; background:linear-gradient(145deg,rgba(25,23,21,.95),rgba(14,13,12,.94)); box-shadow:var(--shadow); }
.hero::before { content:""; position:absolute; inset:0; background:linear-gradient(110deg,rgba(183,169,145,.08),transparent 36%,rgba(157,193,234,.035)); pointer-events:none; }
.hero-copy { position:relative; z-index:2; }
.hero h1 { margin:14px 0 22px; max-width:760px; font-family:Georgia,"Times New Roman",serif; font-weight:500; font-size:clamp(58px,8vw,118px); line-height:.86; letter-spacing:-.055em; }
.hero h1 span { display:inline-block; background:var(--silver); background-size:200% 100%; -webkit-background-clip:text; background-clip:text; color:transparent; animation:metalText 4s linear infinite; }
.hero p { max-width:650px; color:var(--muted); font-size:19px; line-height:1.65; }
.hero-actions { display:flex; gap:12px; margin-top:30px; flex-wrap:wrap; }
.hero-mark { width:min(420px,34vw); aspect-ratio:1; justify-self:center; position:relative; z-index:2; display:grid; place-items:center; }
.hero-mark img { width:48%; height:48%; object-fit:contain; position:relative; z-index:3; filter:drop-shadow(0 20px 34px rgba(0,0,0,.45)); }
.hero-ring { position:absolute; border-radius:50%; }
.ring-gold { inset:0; padding:2px; background:var(--gold); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; animation:spin 18s linear infinite; }
.ring-silver { inset:13%; padding:1px; background:var(--silver); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; animation:spinReverse 13s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes spinReverse { to { transform:rotate(-360deg); } }
.hero-glow { position:absolute; border-radius:50%; filter:blur(42px); pointer-events:none; will-change:transform; opacity:.92; z-index:0; }
.hero-glow-one { width:330px; height:330px; right:10%; top:10%; background:rgba(251,185,205,.09); animation:heroDriftOne 22s ease-in-out infinite alternate; }
.hero-glow-two { width:260px; height:260px; right:2%; bottom:-6%; background:rgba(157,193,234,.09); animation:heroDriftTwo 26s ease-in-out infinite alternate; }
.hero-glow-three { width:190px; height:190px; left:4%; top:4%; background:rgba(205,160,72,.065); animation:heroDriftThree 24s ease-in-out infinite alternate; }
.hero-glow-four { width:130px; height:130px; left:44%; bottom:2%; background:rgba(157,193,234,.07); animation:heroDriftFour 19s ease-in-out infinite alternate; }
.hero-glow-five { width:230px; height:230px; left:30%; top:12%; background:rgba(251,185,205,.055); animation:heroDriftFive 29s ease-in-out infinite alternate; }
@keyframes heroDriftOne { from { transform:translate3d(0,0,0) scale(1); } to { transform:translate3d(-120px,110px,0) scale(1.12); } }
@keyframes heroDriftTwo { from { transform:translate3d(0,0,0) scale(1); } to { transform:translate3d(-190px,-120px,0) scale(.92); } }
@keyframes heroDriftThree { from { transform:translate3d(0,0,0) scale(.92); } to { transform:translate3d(150px,125px,0) scale(1.18); } }
@keyframes heroDriftFour { from { transform:translate3d(0,0,0) scale(1); } to { transform:translate3d(185px,-135px,0) scale(1.25); } }
@keyframes heroDriftFive { from { transform:translate3d(0,0,0) scale(1.05); } to { transform:translate3d(-95px,170px,0) scale(.88); } }
@media (prefers-reduced-motion:reduce) {
  .hero-glow { animation:none !important; }
}
.feature-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:14px; }
.feature-strip article { min-height:160px; padding:24px; background:rgba(20,19,18,.82); border:1px solid rgba(255,255,255,.06); border-radius:22px; transition:transform .24s ease,border-color .24s ease,background .24s ease; }
.feature-strip article:hover { transform:translateY(-4px); border-color:rgba(183,169,145,.26); background:#181614; }
.feature-strip h2 { margin:0 0 8px; font-family:Georgia,"Times New Roman",serif; font-weight:500; font-size:24px; }
.feature-strip p { margin:0; color:var(--muted); line-height:1.55; font-size:14px; }

.home-updates { margin-top:14px; }
.home-update { min-height:370px; display:grid; grid-template-columns:minmax(0,3fr) minmax(280px,2fr); gap:28px; align-items:stretch; padding:18px; border:1px solid rgba(255,255,255,.06); border-radius:26px; background:linear-gradient(135deg,rgba(22,20,19,.96),rgba(15,14,13,.96)); box-shadow:var(--shadow); overflow:hidden; }
.home-update-media { height:334px; min-height:334px; overflow:hidden; border:1px solid rgba(183,169,145,.24); border-radius:18px; background:linear-gradient(145deg,rgba(183,169,145,.055),rgba(157,193,234,.025)); position:relative; }
.home-update-media::after { content:""; position:absolute; inset:0; pointer-events:none; border-radius:inherit; box-shadow:inset 0 0 0 1px rgba(255,255,255,.025); }
.home-update-media img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
.home-update-content { min-width:0; padding:16px 18px 16px 0; display:flex; flex-direction:column; justify-content:flex-start; }
.home-update-content h2 { margin:0 0 24px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(30px,3.2vw,48px); line-height:1.05; font-weight:500; overflow-wrap:anywhere; }
.home-update-content p { margin:0; color:var(--muted); font-size:17px; line-height:1.72; white-space:pre-wrap; overflow-wrap:anywhere; }

.home-split { margin-top:14px; padding:46px 50px; border-radius:26px; display:flex; align-items:end; justify-content:space-between; gap:40px; background:linear-gradient(120deg,rgba(251,185,205,.055),rgba(157,193,234,.045)); border:1px solid rgba(255,255,255,.06); }
.home-split h2 { margin:9px 0 8px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(30px,4vw,48px); font-weight:500; }
.home-split p { margin:0; max-width:760px; color:var(--muted); line-height:1.7; }
