/* CyberGroup V6: isolated transparent mark, restrained gold polish, events. */
:root { --cg-gold:#c79338; --cg-gold-light:#f7d88c; --cg-ink:#11253a; }
.brand-shield-viewport { display:inline-flex; align-items:center; justify-content:center; background:transparent; overflow:visible; width:47px; height:49px; flex:none; }
.brand-shield-viewport img { position:static; display:block; width:100%; height:100%; max-width:100%; object-fit:contain; }
.site-header { box-shadow:0 4px 16px rgba(8,34,58,.035); }
.site-header:after { opacity:.7; background:linear-gradient(90deg,#d5aa51 0%,#eac879 28%,#0a72b5 67%,#079caa 100%); }
.navlinks>a[aria-current=page]:not(.btn) { color:#956018; }
.navlinks>a[aria-current=page]:not(.btn):after { background:linear-gradient(90deg,#be8732,#f0c975); height:3px; }
.navlinks>a:not(.btn):hover { color:#b48229; }

/* The three parts are transparent PNG layers, not clipped copies of a white JPEG. */
.v5-hero .hero-visual { width:100%; max-width:520px; filter:none; }
.cg-logo-scene { position:relative; aspect-ratio:1222/1287; width:100%; overflow:visible; isolation:isolate; perspective:1000px; }
.cg-logo-scene::before { content:""; position:absolute; z-index:0; width:78%; aspect-ratio:1; left:12%; top:8%; border-radius:50%; background:radial-gradient(circle,#fcf2de 0,#dbeefa91 47%,transparent 73%); filter:blur(22px); }
.cg-master { position:absolute; inset:0; z-index:5; overflow:hidden; clip-path:inset(0 0 33%); animation:cg-v7-show-master 22s linear infinite; }
.cg-master img { display:block; width:100%; height:100%; object-fit:fill; mix-blend-mode:multiply; }
.cg-piece { position:absolute; display:block; object-fit:fill; max-width:none; backface-visibility:visible; transform-origin:center center; will-change:transform; }
.cg-piece-shield { z-index:1; left:18%; top:3.5%; width:64%; height:63%; animation:cg-v7-shield 22s ease-in-out infinite,cg-v7-show-pieces 22s linear infinite; }
.cg-piece-g { z-index:2; left:36%; top:24%; width:37%; height:41%; animation:cg-v7-g 22s ease-in-out infinite,cg-v7-show-pieces 22s linear infinite; }
.cg-piece-c { z-index:3; left:22%; top:19%; width:40%; height:38%; animation:cg-v7-c 22s ease-in-out infinite,cg-v7-show-pieces 22s linear infinite; }
.cg-logo-type { position:absolute; z-index:6; inset:0; overflow:hidden; clip-path:inset(65% 0 0); }
.cg-logo-type img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:fill; mix-blend-mode:multiply; }
.cg-word-sweep { position:absolute; z-index:7; pointer-events:none; top:67.5%; left:3%; width:95%; height:13%; overflow:hidden; clip-path:inset(0 round 3px); }
.cg-word-sweep::after { content:""; position:absolute; inset:-10% -30%; background:linear-gradient(106deg,transparent 38%,#fff0 43%,#ffe5a4b3 50%,#ffffffc2 52%,#fff0 59%,transparent 65%); mix-blend-mode:screen; transform:translateX(-120%); opacity:0; animation:cg-v7-glint 22s ease-in-out infinite; }
.cg-logo-caption { position:absolute; left:12%; right:12%; bottom:3.3%; text-align:center; font-size:.76rem; font-weight:750; letter-spacing:.28em; color:#806431; opacity:.0; pointer-events:none; }
/* 2D rotations keep every cutout fully visible during the spin; only the
   switch between assembled logo and moving pieces is briefly crossfaded. */
@keyframes cg-v7-show-master { 0%,19.8%,100% { opacity:1; } 22%,69% { opacity:0; } 72% { opacity:1; } }
@keyframes cg-v7-show-pieces { 0%,19.8%,100% { opacity:0; } 22%,69% { opacity:1; } 72% { opacity:0; } }
@keyframes cg-v7-shield {
  0%,22% { transform:translate(0,0) rotate(0deg); }
  42% { transform:translate(0,-1.5%) rotate(145deg); }
  66%,100% { transform:translate(0,0) rotate(360deg); }
}
@keyframes cg-v7-c {
  0%,22% { transform:translate(0,0) rotate(0deg); }
  41% { transform:translate(-12%,-7%) rotate(-142deg); }
  66%,100% { transform:translate(0,0) rotate(-360deg); }
}
@keyframes cg-v7-g {
  0%,22% { transform:translate(0,0) rotate(0deg); }
  43% { transform:translate(12%,-5%) rotate(156deg); }
  66%,100% { transform:translate(0,0) rotate(360deg); }
}
@keyframes cg-v7-glint { 0%,71% { transform:translateX(-125%);opacity:0; } 76% { opacity:.93; } 85% { transform:translateX(115%);opacity:.93; } 87%,100% { opacity:0; } }

.v5-hero .hero-copy { padding-top:25px; }
.v5-hero h1 .hero-continuation { color:inherit; font:inherit; letter-spacing:inherit; }

/* Gold is now a visible accent, especially for the selected filter. */
.services-clean .filters .chip { background:#fff; border-color:#d8dfdf; color:#293d51; transition:background .18s,box-shadow .18s,border-color .18s,transform .18s; }
.services-clean .filters .chip:hover { border-color:#d2a450; transform:translateY(-1px); }
.services-clean .filters .chip[aria-pressed=true],
.content-tabs .chip[aria-pressed=true] { background:linear-gradient(113deg,#a46a20,#e2b460); color:#fff; border-color:#bc8837; box-shadow:0 6px 14px #bc88372b; }
.services-clean .service-card { border-top-color:#b88236; }
.services-clean .service-card:hover { border-color:#d1a55d; box-shadow:0 14px 33px #87602d23; }
.companies-clean .company-card-v4.gold { background:linear-gradient(148deg,#f7e1b6,#fff 48%); }
.companies-clean .company-card-v4.teal { background:linear-gradient(148deg,#bceddf,#fff 48%); }
.companies-clean .company-card-v4.blue { background:linear-gradient(148deg,#c5e2ff,#fff 48%); }
.companies-clean .company-card-v4 .btn:hover { box-shadow:0 8px 18px #173e601a; }
.editorial-grid .editorial-card { border-top-color:#bb8936; }

/* Kibernaptár feed with source attribution and clean date-led event cards. */
.events-page { min-height:75vh; background:radial-gradient(circle at 99% 0,#f6e6c5 0,transparent 37%),linear-gradient(180deg,#f8fafc,#fff 290px); padding:38px 0 85px; }
.events-topline { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; flex-wrap:wrap; margin-bottom:29px; }
.events-heading h1 { font-size:clamp(2.45rem,4vw,3.6rem); margin:11px 0 10px; letter-spacing:-.055em; color:#13263e; }
.events-heading p { color:#53677a; max-width:690px; line-height:1.72; margin:0; }
.events-source { align-self:center; display:inline-flex; align-items:center; gap:9px; padding:10px 15px; border-radius:100px; border:1px solid #e6d3a9; background:#fffaf0; color:#95651e; font-weight:750; font-size:.84rem; text-decoration:none; }
.events-source:hover { border-color:#bb8b34; background:#fff4dc; }
.events-toolbar { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:13px; border-block:1px solid #e3e8ed; padding:15px 0; margin:22px 0 28px; }
.events-toolbar strong { font-size:.91rem; color:#223951; }
.events-status { color:#6d7d8b; font-size:.8rem; }
.events-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:21px; }
.event-card { min-height:275px; padding:25px; background:#fff; border:1px solid #dce5eb; border-top:4px solid #ba8632; border-radius:16px; box-shadow:0 11px 25px #122c440b; display:flex; flex-direction:column; transition:transform .18s,box-shadow .18s; }
.event-card:hover { transform:translateY(-4px); box-shadow:0 20px 34px #122c4418; }
.event-date { display:flex; gap:13px; align-items:center; color:#95611a; font-weight:800; font-size:.8rem; margin-bottom:17px; }
.event-date .event-day { font-size:1.9rem; font-weight:850; color:#142d48; letter-spacing:-.04em; line-height:1; border-right:1px solid #e4c995; padding-right:12px; }
.event-date-full { display:block; font-size:.92rem; line-height:1.65; color:#815714; font-weight:800; letter-spacing:0; }
.event-category { color:#19719f; font-size:.73rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.event-card h2 { color:#1e3045; font-size:1.17rem; line-height:1.32; margin:11px 0 11px; letter-spacing:-.02em; }
.event-location { color:#526b7d; font-size:.85rem; line-height:1.65; margin:0 0 8px; }
.event-fee { display:inline-block; width:max-content; background:#edf7f7; color:#126e79; padding:4px 9px; border-radius:30px; font-size:.72rem; font-weight:750; margin-bottom:11px; }
.event-card a { margin-top:auto; color:#98651b; font-weight:800; font-size:.88rem; text-decoration:none; padding-top:16px; }
.event-card a:hover { text-decoration:underline; }
.events-disclaimer { color:#687789; line-height:1.62; font-size:.83rem; max-width:900px; margin-top:25px; }
.events-disclaimer a { color:#8c5c18; text-decoration:underline; text-underline-offset:2px; }
.events-empty { grid-column:1/-1; padding:30px; border:1px dashed #d8c293; border-radius:14px; background:#fffaf1; color:#596779; }
@media(max-width:1040px) { .events-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:800px) { .cg-logo-scene { width:min(100%,470px); margin:0 auto; } .events-page { padding-top:29px; } }
@media(max-width:600px) { .events-grid { grid-template-columns:1fr; } .events-topline { gap:12px; } .event-card { min-height:225px; } .brand-shield-viewport { width:37px; height:41px; } }
@media(prefers-reduced-motion:reduce) { .cg-master { animation:none!important; opacity:1!important; } .cg-piece { animation:none!important; opacity:0!important; transform:none!important; } .cg-word-sweep::after { animation:none!important; } .event-card,.services-clean .filters .chip { transition:none!important; } }
