*, *:before, *:after { box-sizing:border-box; }
body { margin:0; background:#0b0805; color:#e9dcc2; font-family:Manrope,system-ui,sans-serif; overflow-x:clip; }
a { color:#e2b96a; text-decoration:none; }
a:hover { color:#f4d79a; }
img { display:block; }
button { font-family:inherit; }

.h-nav:hover { color:#f4d79a; }
.h-tel:hover { background:rgba(211,162,75,.22); color:#fbe6bb; border-color:#e2b96a; }
.h-cta:hover { transform:translateY(-3px); color:#2a1703; box-shadow:0 20px 42px rgba(190,138,50,.5); }
.h-card:hover { transform:translateY(-9px); border-color:#e2b96a; box-shadow:0 26px 46px rgba(0,0,0,.6); }
.h-btn:hover { transform:translateY(-2px); color:#2a1703; box-shadow:0 12px 26px rgba(190,138,50,.45); }
.h-rev:hover { transform:translateY(-7px); box-shadow:0 26px 44px rgba(0,0,0,.6); }
.h-gold:hover { transform:translateY(-3px); color:#2a1703; box-shadow:0 18px 38px rgba(190,138,50,.45); }
.h-ghost:hover { transform:translateY(-3px); border-color:#e2b96a; color:#fbe6bb; }
.h-contact:hover { transform:translateY(-4px); border-color:#e2b96a; color:#f4d79a; }
.h-top:hover { color:#f4d79a; }
.h-float:hover { transform:translateY(-3px); color:#fff; filter:brightness(1.08); }
.h-float-tt:hover { transform:translateY(-3px); color:#fff; filter:brightness(1.25); }
.h-v0:hover { transform:translate(-50%,-56%) rotate(-48deg) translateY(-30px); }
.h-v1:hover { transform:translate(-50%,-56%) rotate(-24deg) translateY(-30px); }
.h-v2:hover { transform:translate(-50%,-56%) translateY(-30px); }
.h-v3:hover { transform:translate(-50%,-56%) rotate(24deg) translateY(-30px); }
.h-v4:hover { transform:translate(-50%,-56%) rotate(48deg) translateY(-30px); }

@keyframes spinSlow { to { transform:rotate(360deg) } }
@keyframes floatSoft { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
@keyframes twinkle { 0%,100%{opacity:.15;transform:scale(.7) rotate(0)} 50%{opacity:1;transform:scale(1.35) rotate(20deg)} }
@keyframes shineSweep { 0%{background-position:220% 0;opacity:0} 12%{opacity:.55} 45%{background-position:-40% 0;opacity:0} 100%{background-position:-40% 0;opacity:0} }
@keyframes glowPulse { 0%,100%{box-shadow:0 0 0 0 rgba(211,162,75,.18),inset 0 0 14px rgba(211,162,75,.12)} 50%{box-shadow:0 0 0 12px rgba(211,162,75,.06),inset 0 0 22px rgba(211,162,75,.3),0 0 26px rgba(211,162,75,.35)} }
@keyframes revealFront { 0%,38%{opacity:1;transform:scale(1)} 47%,90%{opacity:0;transform:scale(1.03)} 99%,100%{opacity:1;transform:scale(1)} }
@keyframes revealBack { 0%,38%{opacity:0;transform:scale(.97)} 47%,90%{opacity:1;transform:scale(1)} 99%,100%{opacity:0;transform:scale(.97)} }
@keyframes flipCard { 0%,42%{transform:rotateY(0)} 58%,88%{transform:rotateY(180deg)} 100%{transform:rotateY(360deg)} }
@keyframes hugLeft { 0%,100%{transform:translateX(0) rotate(0)} 50%{transform:translateX(3.2px) rotate(7deg)} }
@keyframes hugRight { 0%,100%{transform:translateX(0) rotate(0)} 50%{transform:translateX(-3.2px) rotate(-7deg)} }
@keyframes flameGlow { 0%,100%{opacity:.35;transform:translateX(-50%) scale(1)} 50%{opacity:.8;transform:translateX(-50%) scale(1.25)} }
@keyframes flicker { 0%,100%{transform:translateX(-50%) scaleY(1) scaleX(1)} 25%{transform:translateX(-52%) scaleY(.88) scaleX(1.06)} 55%{transform:translateX(-48%) scaleY(1.12) scaleX(.94)} 80%{transform:translateX(-51%) scaleY(.95) scaleX(1.03)} }
@keyframes ember { 0%{transform:translate(0,0) scale(.9);opacity:0} 20%{opacity:.95} 100%{transform:translate(4px,-22px) scale(.4);opacity:0} }
@keyframes revealUp { from{opacity:0;transform:translateY(26px)} to{opacity:1;transform:none} }
@keyframes drift { 0%,100%{transform:translate3d(0,0,0)} 50%{transform:translate3d(140px,60px,0)} }
@keyframes coinSpin { 0%,60%{transform:rotateY(0)} 100%{transform:rotateY(360deg)} }
@keyframes fanLeft { 0%,12%{transform:rotate(0) translate(0,0)} 46%,74%{transform:rotate(-26deg) translate(-8px,2px)} 100%{transform:rotate(0) translate(0,0)} }
@keyframes fanRight { 0%,12%{transform:rotate(0) translate(0,0)} 46%,74%{transform:rotate(26deg) translate(8px,2px)} 100%{transform:rotate(0) translate(0,0)} }
@keyframes fanMid { 0%,12%{transform:translateY(0)} 46%,74%{transform:translateY(-5px)} 100%{transform:translateY(0)} }
@keyframes auraPulse { 0%{transform:scale(.7);opacity:.6} 70%,100%{transform:scale(1.35);opacity:0} }
@keyframes orbitDot { to { transform:rotate(360deg) } }
@keyframes shieldBeat { 0%,100%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(230,182,98,0))} 50%{transform:scale(1.08);filter:drop-shadow(0 0 10px rgba(230,182,98,.75))} }
@keyframes scanBeam { 0%,100%{transform:translateY(-13px);opacity:0} 15%{opacity:1} 50%{transform:translateY(13px);opacity:1} 65%{opacity:0} }
@keyframes mistSwirl { to { transform:rotate(360deg) } }
@keyframes orbGlow { 0%,100%{box-shadow:inset -4px -6px 12px rgba(0,0,0,.5),0 0 12px rgba(211,162,75,.3)} 50%{box-shadow:inset -4px -6px 12px rgba(0,0,0,.4),0 0 26px rgba(240,207,143,.7)} }
@keyframes swayFan { 0%,100%{transform:rotate(-3deg)} 50%{transform:rotate(3deg)} }
@keyframes sheenText { 0%{background-position:-180% 0} 100%{background-position:280% 0} }
@keyframes sandTop { 0%{transform:scaleY(1)} 88%,100%{transform:scaleY(.08)} }
@keyframes sandBottom { 0%{transform:scaleY(.08)} 88%,100%{transform:scaleY(1)} }
@keyframes sandStream { 0%,100%{opacity:.25} 50%{opacity:1} }
@keyframes glint { 0%{transform:translateX(-140%) skewX(-18deg);opacity:0} 20%{opacity:.9} 60%,100%{transform:translateX(160%) skewX(-18deg);opacity:0} }

@media (max-width:1160px) {
  [data-m="facts"] { grid-template-columns:repeat(2,minmax(0,1fr)) !important; row-gap:20px !important; }
}
@media (max-width:1060px) {
  [data-m="head"] { flex-wrap:nowrap !important; gap:12px !important; }
  [data-m="head-nav"] { flex:1 1 auto; min-width:0; justify-content:center; gap:13px !important; font-size:10px !important; letter-spacing:.08em !important; }
}
@media (max-width:900px) {
  [data-m="grid3"] { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:960px) {
  [data-m="steps"] { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  [data-m="arrow"] { display:none !important; }
}
@media (max-width:760px) {
  [data-m="sec"] { padding:56px 0 !important; }
  [data-m="hero"] { padding:120px 0 118px !important; min-height:88vh; display:flex; align-items:center; }
  [data-m="head-nav"] { display:none !important; }
  [data-m="head"] { justify-content:space-between; padding:10px 0 !important; }
  [data-m="hero-copy"] { text-align:left; }
  [data-m="hero-copy"] h1, [data-m="hero-copy"] p, [data-m="hero-copy"] > div { text-align:left !important; }
  [data-m="hero-copy"] p { margin-left:0 !important; margin-right:0 !important; max-width:280px !important; }
  [data-m="hero-copy"] > div, [data-m="hero-eyebrow"], [data-m="hero-sub"], [data-m="trust"] { justify-content:flex-start !important; text-align:left !important; }
  [data-m="srv-lead"] { font-size:16px !important; line-height:1.5 !important; }
  [data-m="cta-row"] { flex-direction:column; align-items:flex-start; justify-content:flex-start !important; }
  [data-m="cta-row"] > a { width:auto; justify-content:center; }
  [data-m="trust"] { justify-content:center; }
  [data-m="portrait-wrap"] { min-height:0 !important; }
  [data-m="hero-spacer"] { display:none !important; }
  [data-m="hero-photo"] { width:100% !important; background-position:64% center !important; -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.9),rgba(0,0,0,.9)) !important; mask-image:linear-gradient(180deg,rgba(0,0,0,.9),rgba(0,0,0,.9)) !important; }
  [data-m="portrait"] { width:min(100%,320px) !important; }
  [data-m="ring"] { display:none !important; }
  [data-m="grid3"] { grid-template-columns:1fr !important; }
  [data-m="fan-box"] { height:340px !important; transform:scale(.7); }
  [data-m="contacts"] { grid-template-columns:1fr !important; }
  [data-m="about-box"] { grid-template-columns:1fr !important; text-align:center; }
  [data-m="about-box"] p { margin-left:auto !important; margin-right:auto !important; }
  [data-m="about-box"] > div:last-child > div:first-child { justify-content:center; }
  [data-m="facts"] { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  [data-m="float"] { left:12px !important; right:12px; transform:none !important; }
  [data-m="float"] a { min-width:0 !important; flex:1; padding:0 8px !important; }
  footer { padding-bottom:92px !important; }
}
@media (max-width:560px) {
  [data-m="fan-box"] { height:290px !important; transform:scale(.54); }
  [data-m="steps"] { grid-template-columns:1fr !important; }
}
@media (prefers-reduced-motion:reduce) { *,*:before,*:after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } }
