*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--black:#0a0a0a;--white:#f5f0eb;--gold:#c8a96e;--gold-light:#e8ccaa;--accent:#e04e2f;--grey:#1a1a1a}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--white);font-family:'Raleway',sans-serif;font-weight:300;overflow-x:hidden}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:9000;opacity:.25}

@media(hover:hover){
  body{cursor:none}
  .cursor{width:12px;height:12px;background:var(--gold);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform .1s,background .2s;mix-blend-mode:difference}
  .cursor-ring{width:40px;height:40px;border:1px solid var(--gold);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:all .15s ease;opacity:.6}
}

/* ── WRAPPER ── */
.wrap{
  max-width: 700px;
  margin: 0 auto;
  width: 100%;
}

/* ── HERO ── */
.hero{
  min-height:100svh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  position:relative;
  overflow:hidden;
  padding:80px 24px 60px;
}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 130% 80% at 50% 50%,#1a1208 0%,#0a0a0a 70%)}
.hero-lines{position:absolute;inset:0;overflow:hidden}
.hero-lines span{position:absolute;display:block;background:linear-gradient(90deg,transparent,var(--gold),transparent);height:1px;width:100%;opacity:0;animation:lineSweep 6s ease-in-out infinite}
.hero-lines span:nth-child(1){top:20%;animation-delay:0s}
.hero-lines span:nth-child(2){top:50%;animation-delay:2s}
.hero-lines span:nth-child(3){top:80%;animation-delay:4s}
@keyframes lineSweep{0%{opacity:0;transform:translateX(-100%)}50%{opacity:.15}100%{opacity:0;transform:translateX(100%)}}
.hero-circle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,90vw);height:min(520px,90vw);border-radius:50%;border:1px solid rgba(200,169,110,.15);pointer-events:none;animation:circPulse 4s ease-in-out infinite}
.hero-circle::before{content:'';position:absolute;inset:36px;border-radius:50%;border:1px solid rgba(200,169,110,.08);animation:circPulse 4s ease-in-out 1s infinite reverse}
@keyframes circPulse{0%,100%{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}}
.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:600px}
.hero-tag{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:20px;opacity:0;animation:fadeUp .8s .2s forwards}
.hero-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(72px,20vw,120px);line-height:.88;letter-spacing:2px;margin-bottom:20px;opacity:0;animation:fadeUp .8s .4s forwards;text-align:center}
.hero-title .gold{color:var(--gold)}
.hero-title .outline{-webkit-text-stroke:1px var(--white);color:transparent}
.hero-sub{font-size:14px;line-height:1.9;color:rgba(245,240,235,.6);margin-bottom:36px;opacity:0;animation:fadeUp .8s .6s forwards;text-align:center}
.hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--gold);color:var(--black);padding:16px 48px;font-family:'Bebas Neue',sans-serif;font-size:18px;letter-spacing:3px;text-decoration:none;opacity:0;animation:fadeUp .8s .8s forwards;position:relative;overflow:hidden;width:100%;max-width:340px}
.hero-cta::before{content:'';position:absolute;inset:0;background:var(--accent);transform:translateX(-101%);transition:transform .4s ease}
.hero-cta:hover::before,.hero-cta:active::before{transform:translateX(0)}
.hero-cta span,.hero-cta .arr{position:relative;z-index:1}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

/* ── MARQUEE ── */
.marquee-wrap{background:var(--gold);padding:13px 0;overflow:hidden;display:flex}
.marquee-track{display:flex;gap:50px;animation:marquee 20s linear infinite;white-space:nowrap}
.marquee-track span{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:4px;color:var(--black)}
.marquee-dot{color:var(--accent)!important}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── SECTIONS ── */
section{padding:60px 20px;position:relative;text-align:center}
.section-label{font-size:10px;letter-spacing:5px;text-transform:uppercase;color:var(--gold);margin-bottom:12px;text-align:center}
.section-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(42px,12vw,72px);line-height:1;margin-bottom:36px;text-align:center}

/* ── PRICING ── */
.pricing-section{background:var(--grey)}
.pricing-grid{display:grid;grid-template-columns:1fr;gap:2px;margin-bottom:24px}
.price-card{background:var(--black);padding:28px 24px;position:relative;overflow:hidden;transition:background .3s;text-align:center}
.price-card::after{content:'';position:absolute;bottom:0;left:0;height:2px;width:0;background:var(--gold);transition:width .4s ease}
.price-card:hover::after,.price-card:active::after{width:100%}
.price-card:hover{background:#111}
.service{font-size:13px;color:rgba(245,240,235,.65);margin-bottom:12px;line-height:1.6}
.amount{font-family:'Bebas Neue',sans-serif;font-size:54px;color:var(--gold);line-height:1}
.currency{font-size:21px;vertical-align:super;margin-left:3px;color:var(--gold-light)}
.pricing-note{background:rgba(200,169,110,.08);border-top:2px solid var(--gold);padding:16px 20px;font-size:13px;color:rgba(245,240,235,.65);line-height:1.7;font-style:italic;text-align:center}

/* ── VALUES ── */
.values-section{background:var(--black)}
.values-grid{display:grid;grid-template-columns:1fr;gap:2px}
.value-item{background:var(--black);border:1px solid rgba(255,255,255,.06);padding:36px 20px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;transition:background .3s}
.value-item:hover{background:#0f0f0f}
.value-num{font-family:'Bebas Neue',sans-serif;font-size:40px;color:rgba(200,169,110,.2);line-height:1}
.value-name{font-family:'Bebas Neue',sans-serif;font-size:28px;letter-spacing:2px}
.value-desc{font-size:13px;color:rgba(245,240,235,.5);line-height:1.6;max-width:260px}

/* ── CONTACT ── */
.contact-section{background:var(--grey);overflow:hidden}
.contact-section::before{content:'KONTAKT';position:absolute;font-family:'Bebas Neue',sans-serif;font-size:42vw;color:rgba(200,169,110,.03);bottom:0;left:50%;transform:translateX(-50%);pointer-events:none;white-space:nowrap;line-height:1}
.contact-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center}
.contact-name{font-family:'Bebas Neue',sans-serif;font-size:clamp(36px,10vw,64px);line-height:1;margin-bottom:32px;text-align:center}
.contact-name .last{color:var(--gold);display:block}
.contact-list{width:100%;max-width:400px}
.contact-item{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.07);text-decoration:none;color:var(--white);transition:color .3s;text-align:center}
.contact-item:hover{color:var(--gold)}
.contact-icon{width:44px;height:44px;border:1px solid rgba(200,169,110,.3);display:flex;align-items:center;justify-content:center;font-size:18px;transition:background .3s,border-color .3s}
.contact-item:hover .contact-icon{background:var(--gold);border-color:var(--gold);color:var(--black)}
.contact-item-text small{display:block;font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(245,240,235,.4);margin-bottom:3px}
.contact-item-text strong{font-size:15px;font-weight:600}
.phone-cta{margin-top:40px;text-align:center}
.phone-cta .label{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.phone-big{font-family:'Bebas Neue',sans-serif;font-size:clamp(36px,12vw,72px);letter-spacing:4px;color:var(--white);text-decoration:none;display:block;position:relative;overflow:hidden}
.phone-big::after{content:attr(data-text);position:absolute;top:0;left:0;color:var(--gold);clip-path:inset(0 100% 0 0);transition:clip-path .6s ease}
.phone-big:hover::after{clip-path:inset(0 0% 0 0)}
.map-block{margin-top:40px;width:100%;max-width:400px}
.map-placeholder{background:#111;border:1px solid rgba(200,169,110,.1);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;gap:12px;color:rgba(245,240,235,.4);font-size:12px;letter-spacing:2px;text-transform:uppercase}
.map-pin{font-size:38px;animation:bounce 2s ease-in-out infinite}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* ── FOOTER ── */
footer{background:var(--black);padding:22px 20px;border-top:1px solid rgba(255,255,255,.06);font-size:11px;color:rgba(245,240,235,.3);letter-spacing:1px}
footer .wrap{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.footer-brand{font-family:'Bebas Neue',sans-serif;font-size:22px;letter-spacing:3px;color:var(--gold)}

/* ── REVEAL ── */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ── 2-COLUMN GRID ON WIDER SCREENS ── */
@media(min-width:600px){
  .pricing-grid{grid-template-columns:repeat(2,1fr)}
  .price-card-wide{grid-column:span 2}
  .values-grid{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:700px){
  footer .wrap{flex-direction:row;justify-content:space-between}
}



/* FOOTER */
footer { background: var(--black); padding: 32px 20px 28px; border-top: 1px solid rgba(255,255,255,.06); }
footer .wrap { display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; }

.footer-top { display: flex; flex-direction: column; align-items: center; gap: 6px; width: 100%; }
.footer-brand { font-family: 'Bebas Neue', sans-serif; font-size: 24px; letter-spacing: 3px; color: var(--gold); }
.footer-info { font-size: 11px; color: rgba(245,240,235,.3); letter-spacing: 1px; }

/* SOCIAL ICONS */
.social-links { display: flex; align-items: center; gap: 12px; }
.social-link {
  width: 40px; height: 40px;
  border: 1px solid rgba(200,169,110,.25);
  display: flex; align-items: center; justify-content: center;
  color: rgba(245,240,235,.4);
  text-decoration: none;
  transition: background .3s, border-color .3s, color .3s, transform .3s;
  position: relative;
  overflow: hidden;
}
.social-link::before {
  content: '';
  position: absolute; inset: 0;
  background: var(--gold);
  transform: translateY(100%);
  transition: transform .3s ease;
}
.social-link:hover::before { transform: translateY(0); }
.social-link:hover { border-color: var(--gold); color: var(--black); transform: translateY(-3px); }
.social-link svg { position: relative; z-index: 1; width: 16px; height: 16px; fill: currentColor; }

.footer-copy { font-size: 10px; color: rgba(245,240,235,.2); letter-spacing: 1px; }

/* Responsive */
@media (min-width: 700px) {
  footer .wrap { flex-direction: row; justify-content: space-between; align-items: center; gap: 16px; }
  .footer-top { align-items: flex-start; text-align: left; }
  .footer-copy { text-align: right; }
}








